※当サイトではアフィリエイト広告を利用しています

その他

ランキングにシェア数を追加!「SNS Count Cache」と「WordPress Popular Posts」で実現する

真剣にSNS対応するために!シェアの総計を追加

Google検索と同様にSNSに力を入れることも多くなりました。

SNSの講師依頼も来ていることから真剣に力を入れます。

Facebook + Twitter + Pocketの合計を記載するようにしました。

「SNS Count Cache」と「WordPress Popular Posts」で実現

今回は、「SNS Count Cache」と「WordPress Popular Posts」で実現できました。

index.phpのランキング表示部分

ポイントは、13行目のところで、合計を入れるところに印をつけます。なぜか日本語だと「WordPress Popular Posts」が正常に動作しないため「ZZZ」など適当な文字で良いでしょう。

<?php
 $wpp = array (
 'range' => 'daily', /*集計期間の設定(daily,weekly,monthly)*/
 'limit' => 10, /*表示数はmax5記事*/
 'post_type' => 'post', /*投稿のみ指定(固定ページを除外)*/
 'title_length' => '99', /*タイトル文字数上限*/
 'stats_comments' => '0', /*コメント数は非表示*/
 'stats_views' => '1', /*閲覧数を表示させる*/
 'thumbnail_width' => '75', /*画像のwidth(px)*/
 'thumbnail_height' => '50', /*画像のheight(px)*/
 'wpp_start' => '<ol class="wpp-list">',
 'wpp_end' => '</ol>',
 'post_html' => '<li class="wpp-li"><div class="ranking-box"><span class="ranking"></span></div>{thumb}{title}ZZZ</li>', /*表示されるhtmlの設定(サムネイル、記事タイトル、の順で表示)*/
); ?>
<?php wpp_get_mostpopular($wpp); ?>

 function.phpの総数追加部分

ここでのポイントは、文字列置換関数で入れ替えているとこです。


//シェア数の表示
function popular_post(){
  echo wpp_get_mostpopular($args);
}
 
function custom_single_popular_post( $content, $p, $instance ){
  $thumb_id = get_post_thumbnail_id( $p->id ); //アイキャッチのID取得
  $img = wp_get_attachment_image_src( $thumb_id, 'tmb' ); //アイキャッチ取得
	$scc = scc_get_share_total( array( 'post_id' => $p->id ) );
	$replaceText = str_replace("ZZZ", '<span class="gnsShare"><span style="color:red">&hearts;</span>'.$scc.'</span>', $content);
  return $replaceText;
}
add_filter( 'wpp_post', 'custom_single_popular_post', 10, 3 );

まとめ:総数を表示してモチベーションを上げよう

もっと簡単にできると良いのですが、まだ面倒です。

技術力のある方だけ実施してください。

 

-その他
-