先日から、schema.orgについてご紹介しています。

本日は、もう少し踏み込んで、WordPressにschema.orgを実装するにはどうしたらいいのか?

そして、きっちり構造化データでマークアップできているのか?
チェックする方法があります。

今日はその辺のお話です。 title

プラグインを使わずに実装する

WordPressにはプラグインと呼ばれる機能を追加するものがあるので、それを使ってもいいです。

しかしプラグインを、大量に使うことで動きが悪くなったりします。

プラグインに頼らずにできるところは、頼らずにいきたいですね。

プラグインを使わない場合は、下記のコードをfunctions.phpに貼るだけです。

// JSON-LD
add_action(‘wp_head’,’insert_json_ld’);
function insert_json_ld (){
if (is_single()) {
if (have_posts()) : while (have_posts()) : the_post();
$context = ‘http://schema.org’;
$type = ‘Article’;
$name = get_the_title();
$authorType = ‘Person’;
$authorName = get_the_author();
$dataPublished = get_the_date(‘Y-n-j’);
$thumbnail_id = get_post_thumbnail_id($post->ID);
$image = wp_get_attachment_image_src( $thumbnail_id, ‘full’ );
$imageurl = $image[0];
$category_info = get_the_category();
$articleSection = $category_info[0]->name;
$articleBody = get_the_content();
$url = get_permalink();
$publisherType = ‘Organization’;
$publisherName = get_bloginfo(‘name’);

$json= ”
\”@context\” : \”{$context}\”,
\”@type\” : \”{$type}\”,
\”name\” : \”{$name}\”,
\”author\” : {
\”@type\” : \”{$authorType}\”,
\”name\” : \”{$authorName}\”
},
\”datePublished\” : \”{$dataPublished}\”,
\”image\” : \”{$imageurl}\”,
\”articleSection\” : \”{$articleSection}\”,
\”url\” : \”{$url}\”,
\”publisher\” : {
\”@type\” : \”{$publisherType}\”,
\”name\” : \”{$publisherName}\”
}
“;
echo ‘<script type=”application/ld+json”>{‘.$json.’}</script>’;
endwhile; endif;
rewind_posts();
}
}

functions.phpの一番下に貼り付けて保存すれば、それで完了です。

構造化データテストツール

上記のコードを入れた後は、チェック。

Googleが用意している「構造化データテストツール」を使えばURLを指定するだけで簡単にチェックができます。

スクリーンショット 2016-08-15 12.34.49

プラグインを使う場合

プラグインを使って実装する場合は、「All In One Schema.org Rich Snippets」が有名です。

プラグインを有効にすると、投稿に設定項目が追加されます。

FireShot-Capture-32-WordPress-›-All-In-One-Schema.org-Rich_-https___wordpress.org_plugins_all-

Configuer Rich Snippetの項目から、下記のいずれかを選び必要事項を入力していけば出来上がります。

  • Item Review
  • Event
  • People
  • Product
  • Recipe
  • Software Application
  • Video
  • Article

ただ、毎回これをチョイスして入力するのは、ストレスが溜まりますね。

もっと画期的なプラグインが出れば、プラグインでの実装もありな気がしますが・・・