WordPress:authorページを一括リダイレクト
AMPの公式イメージ利用方法とガイドライン【画像ダウンロード】
【MAC】スクリーンショットの保存フォルダを変更・JPGファイルにする
MAMPでMySQLが起動しない時の解決方法
AMP化と一緒にHTTPSにすることにした:設定方法
@ 2016 fwary

サーチコンソールでエラーになる:hentryやauthorを解消する

先日googleサーチコンソールに新しくサイトを登録しました。うまく登録できたのは良かったのですが、エラーが400件くらい出てびっくりしたので、解決方法を探し、メモすることにしました。今回のエラーは、「マークアップ:microfomats.org」と書いてあるのですが、なんのことなのかさっぱり分かりません。構造化データは、ウェブマスターツール->サーチコンソール->ダッシュボード->検索での見え方->構造化データ で見ることができます。このエラーの詳細を確認すると、

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

この3つがエラーとして表示されます。参考サイトによると、インデックスされないほどの重要なエラーというものではなく、構造化データのエラーが検索順位を落とすということもないようなので、一安心です。ただ、ちゃんとしておいた方が、googleにちゃんとしてると認識されるのは確かなので、設定しておくことにします。
 

suponserd link


hentryとは

hentryというエラーの内容だったので、調べてみたところ、hentryとは、「microfomats.org」の行なっている構造化の宣言で、htmlのクラスに決まったクラス名を設定することで認識しくてれるようです。hentryのことを「ヘントリー」かと思って調べてましたが、「Headline entry」の省略のことのようです。「h1」(Heading Size 1)などと同じですね。
そもそも今回のエラーは、自作のテーマだから好きなようにクラス名を指定したことが原因かもしれません。WordPress公式テーマではentry-titleやathorなどはhentryのエラーが出ないように設定されていると思います。なので一般的なクラス名に変更するということにもなりますし、早速設定することにします。
 

entry-titleを設定する

single.phpの記事タイトルのクラスに、entry-titleクラスをつけます。


変更前
<h1 class="post-title"><?php the_title(); ?></h1>

 


変更後
<h1 class="post-title entry-title"><?php the_title(); ?></h1>

わたしの場合は、single.phpの記事タイトルはh1になっていて、すでにpost-titleというクラスをつけてCSSがついているので、面倒なので、entry-titleを追加しました。
 

updated を設定する

同様に、投稿日も設定します。


投稿日:<span class="entry-date date published"><?php the_time('Y年n月j日') ;?></span>

更新日:<span class="updated"><?php esc_html(the_modified_date()); ?></span>

投稿日を表示しているなら、the_time()の囲まれている部分のクラスにpublishedを追加します。
更新日を表示しているなら、the_modified_date()の囲まれている部分のクラスにupdatedを追加します。
 

author を設定する

今まで投稿者を表示するようにはしていなかったのですが、今回を機にニックネームを表示させることにします。googleの検索アルゴリズムには、個人情報の表示がサイトの信頼性を上げるとなっていました。大事なようでしたので、hcard(=vcard)という投稿者を表す表示はしておきたいなと思います。
今回は、投稿日、更新日の横に出します。

<span class="vcard author">運営者<?php the_author_posts_link(); ?></span>

the_author_posts_link()で、サイトの運営者ページ(author.php)へのリンクと一緒にニックネーム名が表示されます。わたしの場合、更新日の横に「kiina」と出ていると思います。ニックネームは、管理画面からユーザーから変更できます。表示される運営者は、初期設定で、管理者になっている名前です。author.phpファイルがテーマ内に設定されていない場合は、index.phpに飛ばされるなど、決まりがあるようなので、詳しくは、WordPressドキュメントを確認してください。

sharing is caring