Amazon みたいな星評価プラグイン “Shortcode Star Rating” を 無料テーマ「Simplicity」に設置


毎月読んだ本のデータベースをローカル環境のWPで作っているのですが、Amazon の星評価レビューのように視覚的な評価があると、後で見たときに参考になるなと思っていました。数が少ないうちは手打ちで「★★★☆☆」のような感じでやってたのですけれど、良いプラグインが見つかったので、その使い方とテーマでの設定をメモ。

プラグインの作者さんは日本のかたらしく、公式サイトでの説明もわかりやすいです。

「Shortcode Star Rating」

  • ショートコードに数字を入れるだけ
  • 星の色も変更可能
  • 0.5区切りで星半分も表示
  • カスタムフィールドと合わせて使えば色んな所に表示可能

このプラグインだと、カスタムフィールドにショートコードを書き込めば、投稿記事以外にも(サイドバーの最近の記事一覧の下とか、トップページ記事一覧のタイトルしたとか)簡単に表示できます。
感謝。

今回参考にしたサイト

ショートコードで星が付け放題なWordPressプラグインを公開しました
http://www.modshrink.com/2014/03/26/215204

WPループの基本
http://www.webcyou.com/?p=3297

レビュー記事を分かり易く!星評価をWordPressに実装するなら「Shortcode Star Rating」プラグインがおすすめ
http://room9.jp/2014/04/03/070000/

WordPressのカスタムフィールドでショートコードを使う
http://kachibito.net/wordpress/using-shortcode-with-cf.html


インストール

ダッシュボード > プラグイン > 新規追加で “Shortcode Star Rating” を検索

shortcode_star_rating最終更新:2年前となっていますが バージョン4.5.2 で動作します。
(WP3.8 以下だと動作しません)

設定

ダッシュボード > 設定 > Shortcode Star Rating

setting-ssr設定の中はいたってシンプルで、星の色とサイズが指定できます。

setting-ssr2

 


使い方1 投稿記事の中に表示する

投稿記事の作成時に、ビジュアルではなくテキストで作成すると

setting-ssr3[Star Rating] というボタンが追加されています。
ボタンを押すと

5.0

上記のようなショートコードが入力されます。

ここに星の数を記入して、例えば 5.0 と記入すれば・・・

setting-ssr-star

こんな感じで表示されます。
星の数は5段階で0.5刻みに指定できます。

テーマもいじらず、本文の中にショートコードを書き込めば表示できるので、これが一番お手軽です。


使い方2 テーマ内の好きな場所に表示する

Shortcode Star Rating 投稿記事の本文内でも使用できますが、テーマの中(ループ内)の好きな場所に設置して表示することができます。

<?php echo apply_filters('the_content', get_post_meta($post->ID, 'star', true)); //Shortcode Star Rating ?>

このコードをテンプレート内に記述することで、カスタムフィールドで呼び出すことができます。
(後でわからなくなるので //Shortcode Star Right とコメントを入れてます)

まずはテーマ内に設置します。

無料テーマ Simplicity2.0 の中での使用例

表示する場所:シングルページのタイトル下

ssr-use-cases1-1編集するファイル:entry-body.php

<pre class="lang:default mark:7 decode:true ">  &lt;header&gt;
    &lt;h1 class="entry-title"&gt;
      &lt;?php if ( !is_single() ) echo '&lt;a href="'.get_permalink().'"&gt;'; //投稿ページ以外ではタイトルにリンクを貼る?&gt;
      &lt;?php the_title(); //投稿のタイトル?&gt;
      &lt;?php if ( !is_single() ) echo '&lt;/a&gt;'; //投稿ページ以外ではタイトルにリンクを貼る?&gt;
    &lt;/h1&gt;
<?php echo apply_filters('the_content', get_post_meta($post->ID, 'star', true)); //Shortcode Star Rating ?>
</pre>

</h1>で検索して18行目辺りに出てくる。


表示する場所::本文の一番最後

ssr-use-cases2編集するファイル:entry-body.php

<pre class="lang:default mark:8 decode:true">  &lt;div id="the-content" class="entry-content"&gt;
  &lt;?php //記事本文の表示
    the_content( get_theme_text_read_more() ); //デフォルト:続きを読む?&gt;
  &lt;/div&gt;

  &lt;footer&gt;
    &lt;?php if ( is_single() ) get_template_part('pager-page-links');//ページリンクのページャー?&gt;
<?php echo apply_filters('the_content', get_post_meta($post->ID, 'star', true)); //Shortcode Star Rating ?>
    &lt;?php //投稿本文下ウイジェット
    if ( is_single() &amp;&amp; is_active_sidebar( 'widget-under-article' ) ): ?&gt;
      &lt;?php dynamic_sidebar( 'widget-under-article' ); ?&gt;
    &lt;?php endif; ?&gt;</pre>

<div id=”the-content” で検索してくると70行目辺に出てくる。


表示する場所:トップページのエントリーカード

ダッシュボード > カスタマイズ > レイアウト(全体・リスト)> 一覧リストのスタイル
で設定できるトップページの記事リストの中に星を表示します。

ssr-use-cases3編集するファイル:entry-card.php

  <?php //エントリーカードのコンテンツ部分を呼び出す
  get_template_part('entry-card-content') ?>
<?php echo apply_filters('the_content', get_post_meta($post->ID, 'star', true)); //Shortcode Star Rating ?>
</article>

ファイルの一番最後の部分にある </article> の上に追加。
一覧のスタイルを変更してもちゃんと表示される。


表示する場所:関連記事の一覧

関連記事は「タイトル」「抜粋」「続き」の順で並んでいるけれど、今回は「続き」の上に星を入れてみる。

  1. タイトル
  2. 抜粋
  3. 星 (ココ)
  4. 続き

ssr-use-cases4編集するファイル;related-entries.php

        </header>
        <p class="related-entry-snippet">
       <?php echo get_the_custom_excerpt( $post->post_content, get_excerpt_length() ) . ''; //カスタマイズで指定した文字の長さだけ本文抜粋?></p>
<?php echo apply_filters('the_content', get_post_meta($post->ID, 'star', true)); //Shortcode Star Rating ?>
        <?php if ( get_theme_text_read_entry() ): //「記事を読む」のようなテキストが設定されている時 ?>
        <footer>

26行目辺り </header> と <footer> にはさまれている所に追加。


表示する場所:サイドバーの新着記事のタイトル下

ssr-use-cases5編集するファイル:new-entries.php

  <div class="new-entry-content">
    <a href="<?php the_permalink(); ?>" class="new-entry-title" title="<?php the_title(); ?>"><?php the_title();?></a>
  </div><!-- /.new-entry-content -->

<?php echo apply_filters('the_content', get_post_meta($post->ID, 'star', true)); //Shortcode Star Rating ?>

</li><!-- /.new-entry -->

リスト終了 </li> の真上29行目辺りに追加。


使い方:カスタムフィールドを使って呼び出す

ssr-use-cases6テーマに細工をしても呼び出さないことには使えません。カスタムフィールドでショートコードを登録してテーマに反映させます。

投稿画面にあるカスタムフィールドに「名前」を入れる
名前:star(任意の名前)

その横にショートコードを挿入
5.0

ここで好きな数字1~5を書き込む

もし、投稿画面でカスタムフィールドが表示されていない場合は、投稿画面上にある
[表示オプション] > カスタムフィールド
にチェックを入れること
これで全て完了。

 

スポンサーリンク

タイトルとURLをコピーしました