WordPressでカテゴリーページ(アーカイブページ)に固定ページを表示する方法

October 11, 2014

WordPressでカテゴリーページ(アーカイブページ)に固定ページを表示する方法をご紹介する。

今回の案件は、

「カテゴリー分けされた大量の投稿があり、各カテゴリーページをSEO最適化させるたい」

というケースだった。

各カテゴリーページには商品の一覧が表示されるためSEO効果も高いのではないか

という事から始まっている。

仮にワインに置き換えて、概要を説明すると

下の表のような構造でサイトが設計されている。

階層 概要 file 対策キーワード
トップ index.php ワイン
大カテゴリー 赤ワインアーカイブ category.php 赤ワイン
小カテゴリー 産地別 category.php 産地名
商品ページ 各商品ページ single.php

各カテゴリーページには商品の一覧が表示されるが

ページ最適化のために、各カテゴリー毎の商品一覧の上に

ユニークなコンテンツを表示させたい。

もちろん条件分岐で挿入する事が可能だが、

カテゴリー数が多いためスマートな方法を探していた。

通常、こういう場合は「固定ページをランディングページとして作成し

ページ内に商品一覧を表示させる」のが一般的なようだが

そうするとどうしても商品ページのパンクズリストのリンク先が

対策ページではないカテゴリーページへリンクされてしまう。

それで、今回はどうしても

「アーカイブページに固定ページを表示させる」という形を模索する事にした。

プラグインを使用する

さて、固定ページということで考えていたが、プラグインと連動する事で

実現可能と判明したので、こちらの方法を解説する。

カテゴリースラッグを英語で作成

まずはカテゴリースラッグを英語表記で管理画面から登録する。

大カテゴリー 赤ワイン redwine

小カテゴリー  ―フランス産  redwinn-france

といった具合だ。

プラグインGlobal Content Blocksを使う

言わずと知れた有名プラグインだが

Global Content Blocksでブロックを作成し

カテゴリーページで表示させたい内容を入れる。

この時に、Custom shortcode stringをスラッグ名と同名にしておく

テンプレートにコードを追加

次にカテゴリーページのテンプレート内の

表示させたい場所に下記のコードを挿入。

<?php $cat_info = get_category( $cat ); ?>
<?php echo do_shortcode('[contentblock id=' .$cat_info->slug. ']'); ?>

 これで、redwineのアーカイブページには

Global Content Blocksで作成したコンテンツが表示され、

その下に商品一覧も表示される。

さらにアーカイブページを使用しているので

パンクズリストとも最適化されている。

関連プラグイン

Global Content Blocks

Breadcrumb NavXT

RELATED POSTS