WordPress Popular Postsをカスタマイズする

WordPress Popular Postsをカスタマイズする機会があったので。
かなりカスタマイズできて面白いです。うちのブログでもやりたいです。

こちらのサイトさんを参考にさせていただきました。
人気記事を表示する「WordPress Popular Posts」でカスタムフィールドの値を出力する 東京新宿のホームページ制作会社イッティ
 
 
functions.php

function my_custom_single_popular_post( $post_html, $p, $instance ){
//サムネイル取得
$thumbnail_id = get_post_thumbnail_id( $p->id);
//サムネイル表示サイズ
$thumbnail_img = wp_get_attachment_image_src( $thumbnail_id, 'medium' );
$custom_id= $p->id;
//記事日付
$custom_date= get_the_date( 'Y.n.j',$p->id );
$output = '
<li>
<a href="' . get_the_permalink($p->id) . '" class="ranking-link">
<div class="ranking-box clearfix">
<div class="ranking-left">
<img src="' . $thumbnail_img[0] . '" title="' . esc_attr($p->title) . '" class="cover-img">
</div>
<div class="ranking-right">
<p class="ranking-txt-day">' . $custom_date . '</p>
<h4 class="ranking-txt-ttl">'. $p->title . '</h4>
</div>
</div>
</a>
</li>
';
return $output;
}
add_filter( 'wpp_post', 'my_custom_single_popular_post', 10, 3 );

index.php

<div class="ranking-wrap">
  <!-- weekly -->
  <div id="ranking-weekly" class="ranking">
    <h3 class="ranking-ttl">weekly</h3>
    <?php
    //化けたのでエンコード
      ini_set( "default_charset", "UTF-8" );
      ini_set( "mbstring.http_output", "" );

    if (function_exists('wpp_get_mostpopular')) {
      $arg = array (
        'range' => 'weekly',
        'limit' => '5',
        'post_type' => 'post'
      );
         wpp_get_mostpopular($arg);
    }?>

  </div>
  <!-- monthly -->
  <div id="ranking-monthly" class="ranking">
    <h3 class="ranking-ttl">monthly</h3>
    <?php
    if (function_exists('wpp_get_mostpopular')) {
      $arg = array (
        'range' => 'monthly',
        'limit' => '5',
        'post_type' => 'post'
      );
         wpp_get_mostpopular($arg);
    }?>
  </div>
</div>

本番サーバーで化けたのでエンコードしました。

ini_set( "default_charset", "UTF-8" );
ini_set( "mbstring.http_output", "" );

参考サイト

人気記事を表示する「WordPress Popular Posts」でカスタムフィールドの値を出力する 東京新宿のホームページ制作会社イッティ

  • コーダーのための計算機