Breadcrumb NavXTを【JSON-LD】変更して【RDFa 】を削除する

パンクズリスト

Breadcrumb NavXTという結構有名なWPのパンクズプラグイン使用してますが、デフォルトだと構造化データが【RDFa】構文なので【JSON-LD】に変更してみました。

参考ページはこちら
※基本的にこのページの内容と同じですが若干詰まった部分もあったのでメモ程度に残しています。

functions.phpに下記のコードを記述

add_action('wp_head', 'my_json_ld_breadcrumb_trail', 10);
function my_json_ld_breadcrumb_trail()
{
    if (function_exists('bcn_display_json_ld'))
    {
        printf('<script type="application/ld+json">%s</script>', bcn_display_json_ld(true));
    }
}

参考ページからの変更点として、if分の中のbcn_display_json_ldの後ろの()を削除しています。
function_existsは関数が定義済みかをチェックするためのもので、引数はstringを受け入れるはずなので()はおそらく不要だと思います。

RDFa構文のほうを削除する

このままだとJSON-LDとRDFaが重複してしまうのでRDFaのほうを削除しておきます。
この部分web上にあまり情報がなく迷ったのですが、JSON-LDとRDFaが重複するのはあまりよくないと思いますので念のため削除しておきます。

削除方法は簡単でWordPressの管理画面にログイン後、
「設定」→「Breadcrumb NavXT 設定」→「HTMLが記述されている各テンプレート」から
RDFa構文(metaとか)を削除すればOKです。

header.phpを編集

あとはいつも通り下記の関数をパンクズリストを表示させたいところ(header.phpとか)に記述してあげれば大丈夫です。

<div class="breadcrumbs">
		<?php if(function_exists('bcn_display'))
		{
			bcn_display();
		}?>
	</div>

まとめ

実際に案件でJSON-LDに変更してほしいとご要望があったため対応策を探してみました。

この記事が少しでもお役に立てば幸いです!

Akira

Akira

未経験から制作会社に入社し3年ほど技術周りをやってます。最近はJamstackに興味があってこのサイトもShifterというサービスを使用してJamstack化しています。

特集記事

TOP