【Yoast SEO】titleタグを変更して出力する方法|wpseo_title
WordPressのプラグイン『Yoast SEO』はSEOの設定を手軽に行える有名なプラグイン。
今回はその『Yoast SEO』を使用しているサイトで、プラグイン独自のフィルターフックwpseo_titleを使用し、titleタグを変更するソースコードの例となります。
【Yoast SEO】titleタグを変更する例
今回の例では、『Yoast SEO』を使用しているサイトで、関数を作成して変更した投稿タイトルを、投稿ページのtitleタグ内にも適用させます。
作成し投稿のタイトルを変更
まず、投稿タイトルを変更する関数を作成します。
例として作成する関数では、投稿ページにタグスラッグ「book」又は「wordpress」が設定されている場合に、そのページの投稿タイトルを変更します。
以下、ソースコードの例となりfunctions.phpに記述します。
function my_get_the_title( ){
$title = get_the_title();
if ( has_tag( 'book' )) {
return '【書籍紹介】' . $title ;
} elseif ( has_tag( 'wordpress' )) {
return '【WordPress】' . $title ;
}
return $title;
};
上記ソースコードについては、以下のリンク先を参考にしてみてください。
wpseo_titleで投稿ページのtitleタグを変更
次に、上記関数で変更した投稿タイトルを、フィルターフックwpseo_titleを使いtitleタグ内に出力します。
以下がソースコードの例となり、functions.phpに記述します。
例では、投稿ページの場合に、上記で作成した関数で出力する「投稿タイトル」と「サイト名」を|で区切り、titleタグ内に出力します。
function my_wpseo_title($title) {
if (is_single()) {
return my_get_the_title().'|'.get_bloginfo();
}
return $title;
}
add_filter('wpseo_title', 'my_wpseo_title');
フィルターフックwpseo_titleについて
フィルターフックwpseo_titleのコールバック関数では、Yoast SEOで設定できるtitleタグを扱えるため、指定したページのtitleタグを追加・変更することができます。
また、管理画面のYoast SEOのメニューからtitleタグを設定した場合でも、フィルターフックwpseo_titleを使用して追加・変更したtitleタグが優先されます。
【Yoast SEO】meta descriptionタグを変更する場合
また、『Yoast SEO』では、meta descriptionタグを変更するフィルターフックもあります。詳しくは以下のリンク先を参考にしてみてください。