WordPress:add_theme_support( ‘title-tag’ ); 使用時にタイトルからキャッチフレーズを削除したりセパレータを変更する方法

WordPress:add_theme_support( ‘title-tag’ ); 使用時にタイトルからキャッチフレーズを削除したりセパレータを変更する方法

WordPres 4.1以降、functions.phpadd_theme_support( 'title-tag' );と記述するだけで簡単にタイトルを出力してくれるようになりましたが、その出力内容を変更する方法です。
内容を変更といってもがっつりと変えるのではなく、具体的にはサイト名とともに表示されるキャッチフレーズを削除したり、デフォルトでは「-」となっているセパレータを任意のものにするといった簡易的な変更です。

add_theme_support( 'title-tag' ); を使用する

これまでタイトルタグを出力されるようにしたい場合は、例えばheader.phpなどに書かれているhead内にwp_title()を記述するなどしていましたが、4.1以降はこのようなタグをhead内に書かずにfunctions.phpへ下記のように記述することでタイトルが出力されるようになりました。

functions.php

function setup_theme() {
  add_theme_support( 'title-tag' );
}
add_action( 'after_setup_theme', 'setup_theme' );

出力されるものも基本的にはよく見かけるパターンですし特に問題あるわけでもないのですが、例えばTOPページではサイト名だけ表示されればいいのにキャッチフレーズが表示されたり、あとはセパレータを「-」ではなく他のものにしたいといったことが多いので、そういった部分を任意の形に変更していきます。

タイトルからキャッチフレーズを削除する

デフォルトのタイトル表示ではTOPページのタイトルが「サイト名 – キャッチフレーズ」というようにキャッチフレーズ付きで表示されます。
このキャッチフレーズの表示は必要ないのであれば、functions.phpへ下記のように記述することで削除できます。

functions.php

function remove_tagline($title) {
  if ( isset($title['tagline']) ) {
    unset( $title['tagline'] );
  }
  return $title;
}
add_filter( 'document_title_parts', 'remove_tagline' );

セパレータを任意のものに変更する

デフォルトのタイトル表示ではセパレータに「-」が使用されていますが、これを任意のものに変更する方法です。
変更する場合はfunctions.phpへ下記のように記述し、下記はサンプルとして「-」となっているものを「|」に変更するものになります。

functions.php

function custom_title_separator($sep) {
  $sep = '|';
  return $sep;
}
add_filter( 'document_title_separator', 'custom_title_separator' );

Close the search window,
please press close button or esc key.