このページの本文へ移動

blog

program

【SEOを考慮したWordPressサイト構築】2/3 STEP2 ブログURLの設定方法

WordPressサイトのURL設定方法のSTEP2です。
今回は、ブログ(投稿)各ページURLの設定方法をご紹介します。
※WordPressはver4.1.1で検証しています。

STEP1のおさらい

サイトマップとテンプレートファイル

今回は「投稿」を使用して構築する、「スタッフブログ」各ページURLをキレイに設定する方法です。

ブログ(投稿)のデフォルトURL

STEP1の記事でパーマリンク設定をカスタム構造「/%category%/%postname%/」にしましたが、この設定の場合、ブログ(投稿)各ページのURLはこのようになります。

ここで問題となるのは、カテゴリーページと記事ページのURLです。

スタッフブログページなので共通で最初に/blog/と入れたいですね。
そして、カテゴリーページは/カテゴリー名/の前に余計な/category/が入っているので取ってしまいましょう。

設定方法

実は両方とも、前回も使用した「パーマリンク設定」で簡単に設定できます。

まずは、共通で/blog/を入れる方法。
これは「カスタム構造」を「/blog/%category%/%postname%/」に変更するだけです。

そして、カテゴリーページの/category/を取る方法。
これは「オプション」の「カテゴリーベース」に「.(半角のドット)」を入れるだけです。

これで、スタッフブログ各ページのURLは下記のようになります。うんキレイ。

上記の設定でカテゴリーページが404エラーになる場合

サイドカラムなどにwp_list_categoriesでカテゴリー一覧を表示させている場合、上記の設定をすると、出力されるURLは”http://example.com/カテゴリー名/”になるので、カテゴリーページが404エラーになります
get_categoriesなどを使いましょう。

<h2>カテゴリー一覧</h2>
<ul>
<?php
$cats = get_categories('pad_counts=1');
foreach($cats as $cat):
?>
	<li><a href="/blog/<?php echo $cat->slug; ?>/"><?php echo $cat->name; ?> (<?php echo $cat->count; ?>)</a></li>
<?php endforeach; ?>
</ul>

プラグインを使用する場合

上記の方法以外にもURLから/category/を削除する方法はいくつかありますが、一番有名なのはプラグイン「WP No Category Base」を使用する方法でしょうか。

しかし、カスタム構造を「/blog/%category%/%postname%/」にした上でこのプラグインを使用した場合、
“http://example.com/blog/カテゴリー名/”と”http://example.com/カテゴリー名/”の両方でカテゴリーページにアクセスできるようになってしまいます。
「WP No Category Base」を使用する場合はリダイレクト設定等で対応するようにしてくださいね。

まとめ

次回はカスタム投稿タイプを使用した「よくあるご質問」の各ページをキレイなURLにする方法を説明します。

【SEOを考慮したWordPressサイト構築】