本ブログ「プログラミングのメモ日記」は移転しました
プログラミングのメモ日記の移転先はこちら

2014年05月05日

「updated、authorがありません」エラーの解決方法

WordPressのブログをGoogleウェブマスターツールで確認してみると、hentryという構造化データにエラーが発生していました。そしてエラーの詳細が次のようなものです。

  • author がありません
  • updated がありません

実のところ、hentryという言葉はこのとき初めて知ったもので、何が何やらちんぷんかんぷんの状態でした。まずはhentryというものが何なのか調べてみました。

どうやらhentryというのは、HTMLのデータ構造に意味を持たせるためのフォーマットのようです。「これは記事のタイトルですよ」、「この日付は更新日時を表してますよ」といったように、コンテンツの内容を明確化して、色々なアプリやWEBサービスからそのページを扱いやすくするためのルールといったところです。

そして、私が使用しているWordpressのテーマには「hentryのデータ構造を持っていますよ」という宣言がされていたようですが、実際には必須の項目が抜けて落ちていてhentryとしては不完全だったみたいです。そしてその不足しているデータ項目がUpdatedとAuthorの2つだったというわけです。

解決方法は二種類あり、一つはhentryの宣言を消してしまうという方法です。それについては次のサイトに詳しく記されています。


ウェブマスターツールで構造化データエラー、hentry関連、updated、authorがありませんに前向きに対応

そしてもう一つの解決策は、足りない構造を補うという方法です。今回はこちらに挑戦してみました。

不足してい項目は、最終更新日時を記述するUpdatedと、記事の執筆者を記述するAuthorの2つです。それではエラー原因であるこれらの項目を補足していきましょう。


参考サイト:HOW TO FIX STRUCTURED DATA ERRORS SHOWING IN GOOGLE WEBMASTER TOOLS

項目を追加するためには、WordPressテーマのテンプレートを編集する必要があります。編集対象は、ウェブマスターツールにてエラーが出ているページが参照しているテンプレートです。index.php 、single.php、page.phpなどが含まれていると思います。

まずは、次のコードを任意の場所に挿入してupdatedの項目を追加します。

最終更新日:<time class="updated" datetime="<?php the_modified_date('Y-m-d') ?>" ><?php the_modified_date('') ?></time>

テーマによっては、最初から更新日時を記載している可能性があります。その場合は差し替えてるか、要素にクラスを追加してください。そうではない場合は記事タイトルの下や末尾に追記しておけば無難かもしれません。

続いてautherを追加します。

<span class="author vcard post-author"><span class="fn"><?php the_author(); ?></span></span>

もし既に執筆者に関する記述がある場合は、その要素のクラスに 「author vcard post-author」を追加してをに書き換えてください。

以上で完了です。私自信はこれでエラーはなくなりましたが、これが本当に正しい方法だったのかはわかりません。決して保証された解決方法ではありませんで、実際に試される場合はリスクがあることをご了承の上でお願いします。

posted by プログラミングのメモする人 at 23:42 | SEO | このブログの読者になる | 更新情報をチェックする
×

この広告は1年以上新しい記事の投稿がないブログに表示されております。