WordPressで記事抜粋のdescriptionと記事タグをkeywordsに自動挿入する方法

·

通常、ヘッダに入るmetaタグのdescriptionとkeywordsは全ページ共通のことが多いが、SEOに適したヘッダにするためには、各ページ毎に合わせたmetaタグでdescriptionとkeywordsを設定しておくのが好ましい。

WordPressのプラグイン、All in One SEO Packは各記事に対して個別のdescriptionとkeywordsを設定することができるが、WordPress PDA & iPhoneのような特殊なテンプレートでは反映されないケースが生じる。

そういった場合に対応し、descriptionには記事の抜粋、metaタグのkeywordsには記事で設定したタグが自動で入るようにする。

以下のコードを既存のメタタグ部分と差し替え、または挿入する。
なお、前半、descriptionの部分にある「160」は抜粋(カット)する文字数なので、160文字も必要ないという人は適宜変更してもらいたい。
また、キーワードに関してはgoogleは一切評価しないとも言われているが、SEO全体としてkeywordsもきちんと記載することが好ましいと考える。
下記のコードではタグに設定したものを半角カンマ区切りで書き出し、タグが未設定のものはデフォルトのキーワードを書き出す。

<meta name="description" content="<?php
$descrip = mb_substr(ereg_replace("(\r|\n|\r\n)","",strip_tags($post->post_content)),0,160)."...";
if(is_single()){echo $descrip;}else{bloginfo('description');}
?>" />
<meta name="keywords" content="<?php
$tags = get_the_tags();
if($tags){
$total = count($tags); $count = 1;
foreach($tags as $tag){
if($total == $count){echo $tag->name;}else{echo $tag->name . ', ';}
$count++;
}
}else{echo 'デフォルトのキーワード';}
?>" />