WordPressブログに表示される関連記事は、同一のカテゴリやタグから記事が表示されます。CFilteringは訪問者の行動から記事間の関連度を統計的に計算し、その値によって「関連度が高い」として関連記事に記事を表示させてくれるプラグインです。
WordPressテーマ「Simplicity2」ではお世話になっていましたが、このたび「Cocoon」に変更しましたため、このテーマでもCFilteringが使えるようにしたいと思います。
プラグインの導入
CFilteringは現在公開されておらず、ダウンロードすることができませんが、GPLv2ライセンスとされていますのでここで再配布させて頂きたいと思います。ただし、プラグイン作者からの要望や状況によって再配布は予告無しで中止する場合があります。
インストール
既にCFIlteringを導入されている方はそのままで問題ありません。
新しく導入される方は、下記どちらか一方の方法でインストールしてください。
- プラグイン新規追加のページからプラグインのアップロードを利用してzipファイルをアップロードする
- FTPクライアントなどを利用して、…\wp-content\pluginフォルダに放り込む
function.phpに追記
本題に入ります。CFilteringをCocoonで使うために、以下のコードをfunction.phpに追記してください。Simplicity2など他のテーマのときに追記していた方はその部分を削除した上で追記してください。
//CFiltering add_action('get_template_part_tmp/related-list', function () { if (function_exists('cf_get_posts')) { $posts = cf_get_posts(); if (count($posts) > 0) { $pre_get_posts = function ($query) use (&$pre_get_posts, $posts) { $num = $query->query_vars['posts_per_page']; $query->set('p', -1); $the_posts = function () use (&$the_posts, $posts, $num) { remove_action('the_posts', $the_posts); return array_slice($posts, 0, $num); }; add_action('the_posts', $the_posts); remove_action('pre_get_posts', $pre_get_posts); }; add_action('pre_get_posts', $pre_get_posts); return; } } });
function.phpへの追記は、Cocoon子テーマフォルダのファイルを直接編集してアップロードするか、WordPress管理画面の 外観 > テーマの編集 > テーマのための関数(function.php) を開いて追記してください。
動作確認
以前からCFilteringを利用されていた方はそのときのデータによって関連記事が表示されますが、新規で導入された方は十分なデータが集まるまでの間、CFilteringによる関連記事の選出がされないので注意してください。
ほか、CFilteringプラグインについては解説記事がいくつかネットに転がっていますので、Google先生に訊いてみてください。
以上です。お疲れ様でした。
コメント