2014年10月11日土曜日

Webmaster Toolで構造化エラーが出た。

うちのサイトのアクセス数が、激減しています。

ピークの三分の一です。

何事>o<;?!。

調べていくうちに、Google先生がお怒りであるということが分りました。

ん?

何怒ってるの?

GoogleのWebmaster Toolって有りますよね。

「サイトのダッシュボード」の左メニュー欄に「検索のデザイン(i)」って有ります。

「(i)」・・・・このしるしが今回のトラブルを引き起こしていますよというサイン。

なんでこんな分りづらい出方すんだよ!(怒)

まあ、その先に行きましょう。

この「検索のデザイン」はネストになっていて、何で怒っているのか?は

ネストの「構造化データ」をクリックすると以下のような画面が出てきます。




えらーが発生したアイテム・・・・・924 !!!!

全アイテム数・・・・・・・・・・・・・・・・963 (ムムム)ほぼ全部ジャン

こんなの全部つぶすの?

ん。



どんなお怒りなのでしょうか。


エラーの出ている欄をクリックすると・・・・



構造化データ>hentry(マークアップ:microgormats.org)

updatedがありません
entry-titleがありません

怒っています。

怒られた私には、身に覚えの無いことなので困惑。

でもこのエラーを認知してから、サイトのアクセス数が激減しています。

これではいけないので対処するために、Google先生にお尋ねすると

結構いろんな情報が出てきます。

んで、どう対処するか自分のテーマに合う事例を貪る。

方法は2つ。

1)怒られているupdatedをマークアップする。
2)hentryというものが出すものを消し去る。

自分のテーマはどっちが可能か?調べたところ、2)しかできそうにないことが判明。

他の方の情報によると、「post_class()」が出力するhentryクラスが原因とのこと。


対処は、『「post_class()」が出力するhentryクラスを抜く』のがうちにはベストと判断



function remove_hentry( $classes ) {
    $classes = array_diff($classes, array('hentry'));
    return $classes;
}

add_filter('post_class', 'remove_hentry');

上記を追加して解決!


思いきや・・・・

新たなエラーが出ました。

If this markup is about a person, at least 2 of the following fields are needed: organization, location, or role. 

たぶん、上の記述を追加したために出たものと推測。

では、どうする?

僕にできるのは、Googleにきくだけ。

結論は、Googleがサポートしないmicroformat2の表記に変えてエラーを回避する方法。

該当箇所は、vcardとfnということを突き止める。

vcard  → h-card   
fn        →   p-name

に書き換えて save

エラーが出るかチェックしたら、解消しました

めでたしめでたし。

でも時間かかったよ。