あなたのページはリッチリザルトに対応していますか?
①エラーに気づく。
ドタバタだった最近、自分のサイトをGoogle Search Consoleに登録したまま放ったらかしていました。
エラーが届いています。どれ、見てみましょう。
なんぞこれ。
②リッチリザルトテストもしてみる。
別角度から、Google提供の「リッチリザルトテスト」もしておきましょう。
https://search.google.com/test/rich-results
なんぞこれ。
③場所と原因を特定する。
どうやら、WordPressのwp_footer()がnullを吐いている模様。
くっそ、そりゃ解析不能な構造化データだよ! どこでそんな自動出力しちゃってるんだよ! どのプラグインだよ! と、コードを追いかけましたが、コア部分をいじるの怖いし、アップデートで無駄になりそう……
wp_head()から不要なコードを削除する方法は色々出ていますが
wp_headの不要なコードを削除する方法をまとめました
https://satoyan419.com/post/how-to-edit-wp_head/[WP]wp_head()の出力内容から不要な情報を削除するカスタマイズ
https://www.webantena.net/wordpress/wp-head-remove-action/WordPressの関数「wp_head」の出力内容をアクションフックで制御する
https://helog.jp/wordpress/wp_head/
そもそも「<script type="application/ld+json">」👈特定すら出来ないし。
④力技を思いつく。
あ、そうだ、出力されるHTMLをキャッチして上書きしてしまえばいいじゃない。
④-1.「バッファリング→変換」関数を追加する。
functions.php内に、以下の関数を追加します。function wp_footer_update() {
// バッファリング開始
ob_start();
// wp_footer出力
wp_footer();
// バッファの内容を取得
$footer = ob_get_contents();
// バッファリング終了
ob_end_clean();
// 変換(不要なコードを削除したり置換したり)
$footer = str_replace(変更前のコード, 変更後のコード, $footer);
// 変換後の内容を出力
echo $footer;
}
④-2.出力関数を変更する。
footer.php内の「wp_footer()」の記述を「wp_footer_update()」に更新します。
⑤リッチリザルトになる。
バッチリ~👌
めちゃくちゃ力技ですが、勝手に自動出力されるコードで行き詰まっている方には、とても有用な力技ではないでしょうか。ぜひ流用してくださいね✋
こちらからは以上です!
0 コメント