のウェブマスターツールズによると、ブログ内で同じタイトル<title>を重複して使用するのは、問題だそうです。
そこで、WordPressのブログで、全てのページが違うタイトルになるコードを考えてみました。
出発地点
最初は、こちらを参考にしました。プラグインを使わずに、ブログ名を後ろに表示できるようになります。ここから出発です。
» wordpressのタイトルを表示形式を変更[to-R]
<title><?php wp_title(”);
if(wp_title(”, false)) echo ‘ – ‘;
bloginfo(‘name’); ?><title>
月別アーカイブ
まず、月別アーカイブのタイトルを改善します。初期状態のwp_title()では「2008 1 月 – 東京税理士ブログ」と表示されますが、これはかっこ悪いので、年をつけて月を詰めてみました。
echo get_the_time(‘Y年n月’);
ページ番号を追加
最初の問題点に戻ります。どこのページのタイトルが重複しているのかというと、ホーム、カテゴリー別、月別の2ページ目以降が同じタイトルで重複しています。 ちなみにページ表示は、Pagebar1.3というプラグインを使用しています。
ここで、都合がいいことに、$pagedという関数をみつけました。1ページ目では何も表示せず、2ページ目以降ではページ番号を表示してくれます。
検索ページ
気がつきにくいのですが、ブログ内検索ページもタイトルが同じなので、変更しておきます。タイトルに検索キーワードを表示させてみました。
完成コード
最終的に以下のコードになりました。どのように表示されるのかは、このブログであちらこちらのページを表示してお確かめください。
<title><?php if(is_month()): echo get_the_time(‘Y年n月’);
elseif(is_search()): echo ‘\”.$s.’\’の検索結果’;
else: wp_title(”); endif;
if(wp_title(”, false)) echo ‘ ‘.$paged.’ – ‘;
bloginfo(‘name’); if(is_home()) echo ‘ ‘.$paged ?></title>
今のところ、問題はありませんが、検索エンジンのインデックスが全て書き換わるまで時間がかかるようです。
修正
(2009-6-22)
WordPress2.8にした頃に、気がついたら検索結果のタイトルがおかしかったので、書き直しました。
以下の記事も参考になります。
» WordPressでページタイトルを全て異なった表記にする p15.jp 版
CreativeCommons Attribution-NonCommercial License, Tyler Batty
揚羽蝶 2008-01-09 18:43
あけましておめでとうございます。
あたしも税理士の資格はもっているのですがいまだに風来坊な生活をしています(笑)
タイトルについてとても勉強になりました。色々なプラグインを入れて試してますがどれがいいのかさっぱりです。
もう少し勉強してみたいと思います。
長谷川 俊樹 2008-01-10 10:04
あけましておめでとうございます。このブログは生活感がなくて、挨拶などせずに、正月から記事を書いていました。
半年ほどWordPressをあれこれいじり続け、プラグインの選択は落ち着いてきました。楽しくないと続かないですよね。ここで覚えれば、一生役に立つと思って勉強してます。
長谷川 俊樹 2008-01-30 09:12
半月ほどして、Googleのウェブマスターツールズに「サイトのタイトルタグに関する問題は検出されませんでした。」と表示されるようになりました。
Wordpressでページごとにtitleタグとmetaタグ(descripion,keywords)を自動化 | デジカメスナップ 2010-09-09 20:08
[…] ◆WordPressで全てのページを違うタイトルにする ◆WordPress で、各ページごとにmeta name=”description” を自動に設置する方法(記述) […]
WordPress でタイトル要素の重複を回避する:トイレのうず/ぼやき 2010-10-30 17:11
[…] タグ内の出力を改変。 →東京税理士ブログ:WordPressで全てのページを違うタイトルにする […]
長谷川 俊樹 2010-10-30 20:06
いつの間にか<code>で複数行を囲えなくなっていました。昔のWordPressなら問題なかったのですが。中に;が入っていたからかな。対策として<blockquote>で囲み直しました。