WordPressサイトでtitleタグを作るときに使われる関数としてwp_titleが有名でした。たとえば、header.phpを開くと次のようなコードを見かけました。以下はWordPress 4.0の時代に付属していたTwenty Fourteenの例です。

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

最近のテーマにはwp_titleがない場合も

ところが最近のWordPressテーマではheader.phpを開いてもwp_title関数を見かけません。それどころか、titleタグを作っている部分が見当たらない場合があります。たとえば、Twenty Sixteen 1.3のheader.phpは次のようになっています。

<head>
	<meta charset="<?php bloginfo( 'charset' ); ?>">
	<meta name="viewport" content="width=device-width, initial-scale=1">
	<link rel="profile" href="http://gmpg.org/xfn/11">
	<?php if ( is_singular() && pings_open( get_queried_object() ) ) : ?>
	<link rel="pingback" href="<?php bloginfo( 'pingback_url' ); ?>">
	<?php endif; ?>
	<?php wp_head(); ?>
</head>

titleタグの自動生成

これは、functions.phpにadd_theme_support( 'title-tag' );と書くことでtitleタグが自動生成されるためです。Twenty Sixteen 1.3ではfunctions.phpの65行目あたりに次のように記述されています。

add_theme_support( 'title-tag' );

これにより、header.phpなどで明示的にtitleタグを組み立てる必要がありません。

titleタグは自動生成される

titleタグは自動生成される

試しに「add_theme_support( 'title-tag' );」をコメントにすると、titleタグが作成されません。

titleタグの出力がうまくいかない

titleタグの出力がうまくいかない

まとめ

最近のWordPressテーマでは、titleタグを作成する際にheader.phpでwp_titleを呼び出す代わりにfunctions.phpで「add_theme_support( 'title-tag' );」と記述してtitleタグの自動生成を使っています。テーマを自作するときの参考にしてください。

スポンサーリンク

こちらもどうぞ

こちらも参考にしてください

関連記事

MySQL

phpMyAdmin

PHPサンプルコード

PHP全般

PHP関数

WordPress

エラーメッセージ

PHPの基礎が身に付いたかチェック!

PHP「直す力」養成ドリル
スポンサーリンク