
WordPress の SEO 対策で定番の Yoast SEO。非常に便利なプラグインですが、出力されるタイトルタグやパンくずリストを、もう少し柔軟に調整したいと思うことがあります。
この記事では、Yoast SEO が出力するタイトルやパンくずリストを、フィルターフックを使って自在にカスタマイズする方法をご紹介します。
タイトルをカスタマイズ
Yoast SEO が出力する<title>
タグを、独自のロジックで変更したい場合には、wpseo_title
フィルターを使用します。例えば、特定のカスタム投稿タイプの時だけタイトルを変える場合は、functions.php
に以下のように記述します。Open Graph の meta タグも書き換える場合は、wpseo_opengraph_title
フィルターにも同じ関数をフックします。
function custom_wpseo_title($title) {
// カスタム投稿タイプ product の個別記事ページの場合
if (is_singular('product')) {
$title = single_post_title() . 'の製品詳細';
}
return $title;
}
add_filter('wpseo_title', 'custom_wpseo_title');
add_filter('wpseo_opengraph_title', 'custom_wpseo_title'); // og:title も同じように書き換え
他にも、色々な条件分岐を組み合わせることで、柔軟な調整が可能です。
パンくずリストをカスタマイズ
Yoast SEO のパンくずリストは、yoast_breadcrumb()
で出力されますが、そのリンク構成を変更したいときにはwpseo_breadcrumb_links
フィルターを使用します。
function custom_breadcrumb_links($links) {
// カスタム投稿タイプ product の個別記事ページの場合
if (is_singular('product')) {
$custom_link = array(
'url' => home_url('/product/'),
'text' => '製品一覧',
);
// 投稿タイトルの直前に挿入(最後から2番目の位置)
array_splice($links, count($links) - 1, 0, array($custom_link));
}
return $links;
}
add_filter('wpseo_breadcrumb_links', 'custom_breadcrumb_links');
このように、パンくずの中身も自在にコントロールできます。URL の構造とパンくずリストの構造が異なる場合、このフィルターを使用して合わせることで、SEO の観点でも非常に有効です。
終わりに
Yoast SEO はプラグインとして非常に高機能ですが、そのままでは痒いところに手が届かない場面もあります。しかし、こうしたフィルターフックを活用することで、テーマに合わせたSEO最適化が可能になります。
自分のサイト構造に合ったタイトル・パンくずを出力し、検索エンジンにもユーザーにも優しいページを作っていきましょう!