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」でカスタムフィールドの値を出力する 東京新宿のホームページ制作会社イッティ