Liner Note

情報(ユーザー中心デザイン・ユーザビリティ)と技術(ウェブプログラミング・ウェブサービス)についてのメモ書き

要約:WordPressで動的にmetaタグを生成する方法について

SEOといっても、サイトマップXMLの作成やStrictなマークアップくらいしか思い浮かばないlevaです。

もう1つ、metaタグによるSEOなんかも有名でしたっけね。昔からスパマーの餌食になって死亡宣言がとやかく言われているmetaタグですけど、Googleにもその中身を要旨としてよく拾ってもらっているので、一応ちゃんと設定してます。

(例)

Google検索結果

metaタグの詳しい説明は神崎さんの解説に譲るとして、とりあえずmetaタグでname属性にkeywordsを設定している場合はページのキーワード、descriptionを設定している場合はページ内容の簡単な説明を書くことになります*1

で、自作スキンの中で、metaタグを生成している部分のコードをちょっと書いておきます。ちょっと変えれば、WordPress以外でも使えるでしょうね。

PHPソースコード (header.php)
<? if (is_home()){ // フロントページの場合 ?>
<meta name="keywords" content="情報デザイン,ユーザビリティ,ユーザインターフェイス,インフォメーションアーキテクチャ,Information Design,UI,IA" />
<meta name="description" content="<? bloginfo('description'); ?>" />
<? } elseif (is_single()){ // 単独記事ページの場合?>
<meta name="keywords" content="<? echo getCatList(); ?>" />
<?    if ($post->post_excerpt){ ?>
<meta name="description" content="<? echo $post->post_excerpt; ?>" />
<? } else{
$summary = strip_tags($post->post_content);
$summary = str_replace("\n", "", $summary);
$summary = mb_substr($summary, 0, 60). ""; ?>
<meta name="description" content="<? echo $summary; ?>" />
<? } ?>
<? } ?>

metaタグを付けるのは上記のように一番見られると思われるフロントページ(=ホームページ)と単独記事ページのみです。

前者について、「キーワード」は手動で設定し、「説明」についてはWordPress側の要旨を自動で流用してます。

後者については、「キーワード」はgetCatListという関数をfunctions.phpから呼び出して、キーワードを取得しています、これについては後述。

「説明」については、post_excerpt(管理画面で抜粋 (オプション)って書いてあるヤツですね)を設定している場合はその内容を、していない場合は投稿の先頭60文字をテキストオンリーで流し込みます。しかし、この処理はちょっと重いのが難点。DBに枠を設けるなり、キャッシュするなりしないと、レスポンスにちょっと影響でちゃいますね。

で、さっきのgetCatListメソッドですが、こんな感じです。

PHPソースコード (functions.php)
function getCatList(){
    foreach(get_the_category() as $categories_array){
        $list_of_cats .= $categories_array->cat_name.",";
    }
    $list_of_cats = substr($list_of_cats, 0, -1);
 
    return $list_of_cats;
}

ところで、SEOの役目って検索で上位にくるかどうかなんてより、Googleの検索結果が見やすくなるとか要旨があって見通しが良くなるとかそういうコツコツとしたユーザビリティの向上にこそあるんじゃないかなと思うところ、お客さんはGoogleじゃないわけですし。

  1. 私も最初間違えていたんですが、keywordではなく、keywordsです。[戻る]
キーワード:

似たもの記事

読者の皆さんの反応サイト内コメントの更新情報(RSSフィード)

読者のコメント

0

ブックマークコメント

0

他サイトの関連記事

0

読者のコメント

コメントはまだ寄せられていません

はてなブックマークでつけられたコメント

他サイトの関連記事

トラックバックはまだ寄せられていません


トラックバックとは
この記事に言及したサイトをこちらに掲載する仕組みをトラックバックと言います。ここでは、このサイトに頂いたトラックバックを一覧表示しています。
トラックバックしてくださる方へ
この記事への言及がない記事など、トラックバック受信方針に沿っていないものは、読者にお見せしても仕方ないこともあり削除させていただいることをご了承ください。
トラックバックを受け取るためのURI

コメント書き込みフォーム

  • メールアドレスはウェブ上で公開したり、連絡以外で使うことはありません
  • コメントを公開したくないが、作者に連絡を取りたい場合は メールで連絡してください
  • 本文中にHTMLコードは使用できません(URLはそのままお書きください)