WordPress <title>タグをfunctions.phpに1行加えるだけで自動で出力させる

PR

WordPress ではこれまでheadタグ内にHTMLでtitleタグを記入しその中をbloginfo()のWordpress関数を使ってタイトルを表示していますが、Wordpress 4.1 からは、headタグに記入しなくても functions.php に1行加えるだけでtitleタグが挿入されるようになっています

こちらをつかえば、シンプルなコードになります。

 

 

これまでのtitleタグとテーマサーポートによるtitleタグ

これまでは以下のようにタイトルタグを生成していました(headタグ内)

<title><?php wp_title( '|', true, 'right' );bloginfo('name'); ?></title>

 

WordPress 4.1移行で使える方法(functions.php内)

add_theme_support( 'title-tag' );

 

 

add_theme_support( ‘title-tag’ ) を使った方法では、タイトルは

  • サイト名 – キャッチフレーズ
  • ページ名 – サイト名
  • カテゴリ名 – サイト名

このような形式で出力されますので、上のこれまで使ってきた方法と同じ表現になる。

 

add_theme_support( ‘title-tag’ ) でのセパレートの変更

functions.php に短い1行を追加するだけで簡単にheadにtitleタグを出力できるようになるのですが、セパレートの変更を行いたい場合は以下のようになります(Wordpress 4.4以降のみ利用可)

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

セパレートを変更する場合にはこれをfunctions.phpに追加する必要がある、returnのところが区切り文字になる。区切り文字を決めたい場合は、従来の方法の方がシンプルで短いコードとなる。

 

デフォルトの区切りでよくて、詳細はSEOプラグイン等を使って変更するなどであれば 新たに利用できるようになっているfunctions.phpでの記入が楽。

逆にSEOプラグインも使わなくて、区切りを個別に決めておきたい場合従来の方法がよさ気です。

今後、従来の方法が利用ができなくなるのかはわかりませんが、add_theme_support( ‘title-tag’ )の実行内部ではwp_title()が使われているようなので、wp_title()が廃止とは行かないのではないかと思っています。

 

PR

COMMENT

コメントを残す

PR

9ineBBの管理人が運営するサイト

WDG WEB DESIGN GALLERY ウェブデザインギャラリー