【コピペでOK】WordPress Popular Posts をカスタマイズする

Popular Posts便利ですよね。人気記事を自動で取得してくれるプラグインです。当サイトでも使用しています。

ただ get_postsで記事を取得出来ないのが欠点で、サイトごとにアレンジするのはとても大変です。

get_postsで記事を取得するには、meta_keyを追加・設定しないといけなく、プラグインを直接書き換えるのは大変です。なので今回は無理やりquery_postsで取得できるようにします。

query_postsでランキングを取得する流れ

  1. Popular Postsのショートコード(wpp)で人気記事毎のurlを取得
  2. 人気記事毎のurlから投稿IDを取得
  3. 取得した投稿IDの配列をquery_postsのパラメータとして指定する。

作成したコード

function.phpに以下を追加

使い方

get_popular_argsでquery_postsのパラメータを取得出来ます。

引数として、集計期間と表示する件数が指定出来ます。

集計期間で指定できる引数は以下の通りです。

引数 集計期間
daily 1日
weekly 週間
monthly 月間
all 全期間

引数を何も指定しない場合はデフォルトで週間人気記事を8件取得するようになっています。

当サイトでは

スマホ版のレイアウトで使用しています。一応パソコンでも見る事が出来ます。(レイアウトは違いますが)

人気記事

簡単に人気記事を取得する事が可能で、Popular_Postsのレイアウトに影響されず、自分のテーマのレイアウトで記事を取得する事が出来ます。(やったー)

余談

get_postsで人気記事を取得出来るWP-PostViewsはとても便利ですが、全期間の人気記事しか取得できないのはナンセンスです。Popular_Postsがget_postsに対応してくれればいいのに。

参考

$shortcode = '[[wpp'; $atts = ' post_html="{url}," wpp_start="" ...

いつもお世話になっております。

The following two tabs change content below.

オーカワ

大学4年生。ロボット勉強中!!
オーカワのページ 連絡先: okawa@routecompass.net