記事数が100件を超えてくると、すべての記事を網羅して表示することが難しくなってきます。

また、表示の重さや、表示の煩雑さを考えても、
できるだけ表示している記事数は減らしたほうがいいと考えています。

 

サイトを見てくださるユーザーの方も、
関係ない記事までずらーーっとリストアップされていたら

げんなりしちゃいますよね・・

 

でも、自分が読みたかった記事と関連性の高い記事がちょろっとリストアップされていたら

次のページを見てくださる可能性もあります。

 

そこで、弊社テンプレートでは記事の関連性を強化してみました。

 

トップページよりも記事に着地する

Googleは、検索したワードにより近いページを検索結果に返してくれます。

例えば、「アメブロ 写真 回転」で検索をすると、僕のブログ記事が1位に出てきます。

スクリーンショット 2015-12-06 2.40.50

ブログに写真を投稿したら、向きが変わる時の対処法 
※正確な結果を得るためログアウトした状態で検索しています

 

そして、何気にその記事が2番目に多く検索されていたりします。

直帰率と滞在時間が短いので、イメージとは違うのかもですが(汗

スクリーンショット 2015-12-06 2.35.47

このサイトのトップページへのアクセスって、8番目なんです。

つまり、お客様の多くは、下層ページから閲覧を開始しているということになります。

 

これは、サロンのホームページでも同じことが起こっているはずです。

トップページよりも、お客様の目的にあったページのほうが見られています。

 

弊社の場合、非常に離脱率が高いです。

それは、着地したページに、関連ページの表示が無かったからだという仮説を立てました。

そこで、関連ページを強化してみました。

 

検索したページと同じカテゴリの記事をリストアップ

スクリーンショット 2015-12-06 2.24.13

例えば、「WordPress」というカテゴリに属している記事を表示したら、

その横には、同じカテゴリの記事をリストアップするようにしています。

 

こちらは、「カテゴリごと」に5件ずつリストアップするようにしました。

「WordPress」や「サロン集客」など、複数に属している場合は、それぞれ5件ずつということになります。

 

検索したページと同じカテゴリの記事をさらに表示

スクリーンショット 2015-12-06 2.23.59

また、ページの下には、「含まれているカテゴリすべて」で6件表示するようにしました。

つまり、「WordPress」や「サロン集客」など、複数に属している場合は、
それら全体のうちの6件ということになります。

この6件は、ランダムに表示されています。

 

「Similar Posts」などのプラグインを使おうかと思ったのですが、

不具合を起こした時に修復ができないと考え、テンプレートベースのランダム表示にしました。

 

また、この結果はご報告できればと思います。

 

 

 

 

WordPressで、記事と同じカテゴリをリストアップする

。。。。念のため、カテゴリで絞り込むタグを書いておきます。


global $post_type;
$category_slug = $post_type.'_category';
$post_category = wp_get_object_terms($post->ID, $category_slug);
$term_id = array();
foreach($post_category as $category):
  array_push( $term_id, $category -> slug);
endforeach ;
 

$post_type というあらかじめ設定した変数で、カスタム投稿タイプの種類を取得し、そのカテゴリを取得

投稿が属しているカテゴリを$post_categoryに代入

$term_id に、slugの配列を入れる


$args = array(
 'post_type' => $post_type,
  'post__not_in' => array($post -> ID),
  'posts_per_page'=> 6,
  'orderby' => 'rand',
  'tax_query' => array(
            array(
                'taxonomy' => $category_slug,
                'field' => 'slug',
                'terms' => $term_id,
                ),
            ),
);
query_posts( $args );

これで、クエリに渡しています。

参考までに。