どうも、最近WordPressの改修が楽しい@kuronamaです。
WordPressの関連記事表示
1年くらい前までこのBlogでWordPressの投稿に対して内部の関連記事表示を自動的に表示してくれる「Yet Another Related Posts Plugin(略してYARPP)」というプラグインを使っていた。
WordPress ? Yet Another Related Posts Plugin ≪ WordPress Plugins
Yet Another Related Posts Plugin …
なのだがBlogへのアクセス数が落ちた際に色々調査した過程で、関連記事表示がSEO的に逆効果になる場合があるという記事を見つけてから使用を控えていた。まぁ使用を控えても結局アクセス数は据え置きだったため、多分アクセス数の現象の原因はドメインと検索サイトの関係なんだろうなぁという結論に至り、去年の年末に独自ドメインに移行した。
基本的にGoogleなんかは関連のあるページへのリンクを評価するみたいなことを聞いたことがあるが、逆に全く関係ないリンクはむしろマイナス効果らしい。YARPPのような自動ツールだと、精度によっては逆効果になることも有りうるのかも。
ただYARPPのマイナス面について書いた記事も見当たらないので、試しにもう一度を使ってみることにした。
今回利用したYARPPのバージョンは4.0.5。
参考にした記事からバージョンが上がっており、独自形式の適用方法が少し変わっていた。
設定画面で、3種類の出力形式が選択できてそのうち“PHP”を選ぶと、現在利用しているテーマの下に5個の設定ファイルが生成される。
テーマの編集からファイルを見ると下の方にYARPP~みたいなものが増えているはず。
PHPで指定できるファイルがそれぞれ5つくらい生成されているので、自分で利用したいコードでそれらのいずれかを書き換えて、YARPPの設定で[PHP]-[変更したファイル名]を選択すれば簡単に適用できる。
画像付き表示
せっかくだから画像付きで表示できると見た目も良いよね、ということで以下の記事を参考にさせて頂き設定してみた。
関連記事プラグインYARPPをカスタマイズしてLinkWithin風にする | ごりゅご.com
おかげでかなり見栄え良く表示できたんだけど一点問題が。
画像の表示にはアイキャッチ画像を使っているんだけど、アイキャッチが無い記事の場合は表示が崩れてしまった。
というわけで分からないなりにPHPを修正してみた。
以下のようにサムネイルのIF文でELSEを追加して、サムネイルを使うかわりにサーバーにアップロードしたノーイメージ画像を直接指定してみた。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 | <?php if(have_posts()):?> <h3>関連のありそうな記事はこちら</h3> <div class="related-post"> <?php while(have_posts()) : the_post(); ?> <?php if(has_post_thumbnail()):?> <div class="related-entry"><a href="<?php the_permalink() ?>"rel="bookmark"title="<?php the_title_attribute(); ?>"><?php the_post_thumbnail("thumbnail"); ?><?php the_title(); ?></a></div> <?php else: ?> <div class="related-entry"><a href="<?php the_permalink() ?>"rel="bookmark"title="<?php the_title_attribute(); ?>"><img src="■画像のURL■" alt="noImage" width="300" height="300" class="alignnone size-full wp-image-5427" /><?php the_title(); ?></a></div> <?php endif; ?> <?php endwhile; ?> </div> <?php else: ?> <h3>関連のありそうな記事はありません</h3> <?php endif; ?> |
まとめ
おかげでこのように綺麗に表示できるようになった。
とりあえず対処療法的になんとかできたけど、WordPress使い続けるためにはPHP勉強した方が良さそうだなぁ…。
「WordPressの画像付き関連記事表示でNoImage対応してみた」の記事を書きました – http://t.co/mDwlGz4yNG