先日から、schema.orgについてご紹介しています。
本日は、もう少し踏み込んで、WordPressにschema.orgを実装するにはどうしたらいいのか?
そして、きっちり構造化データでマークアップできているのか?
チェックする方法があります。
今日はその辺のお話です。
プラグインを使わずに実装する
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を指定するだけで簡単にチェックができます。
プラグインを使う場合
プラグインを使って実装する場合は、「All In One Schema.org Rich Snippets」が有名です。
プラグインを有効にすると、投稿に設定項目が追加されます。
Configuer Rich Snippetの項目から、下記のいずれかを選び必要事項を入力していけば出来上がります。
- Item Review
- Event
- People
- Product
- Recipe
- Software Application
- Video
- Article
ただ、毎回これをチョイスして入力するのは、ストレスが溜まりますね。
もっと画期的なプラグインが出れば、プラグインでの実装もありな気がしますが・・・