wp_title() は、WordPress サイトのページごとのタイトルを取得または出力するためのテンプレートタグです。一般的に、HTML の <title> タグの中で使用され、SEO の観点からも重要な要素となります。
機能の説明
wp_title() は、現在のページのタイトルを動的に取得し、カスタマイズした形式で出力するテンプレートタグです。これにより、ページごとに異なるタイトルを設定でき、テーマの <head> 部分で主に使用されます。
wp_title();このテンプレートタグは、デフォルトではサイト名を含まず、タイトルのみを取得・出力します。オプションを使うことで、タイトルの前後に文字列を追加したり、分離記号を設定することができます。
オプションを使ったシンプルなコード例
wp_title( '|', true, 'right' );上記のコードは、ページタイトルの後に「|」で区切り、次にサイト名を表示する設定をしています。
使い方の解説
wp_title() は、通常はテーマの header.php 内で使用され、HTML <title> タグの中に挿入されます。デフォルトでは単にページのタイトルだけを出力しますが、引数を指定して出力フォーマットをカスタマイズできます。
引数
- $sep
-
(区切り文字列)タイトルと他の要素を区切るための文字列(例:
"|","—")。 - $display
-
(表示方法)デフォルトでは
trueでタイトルを直接出力しますが、falseにすると値を返すだけで出力しません。 - $seplocation
-
(区切り文字の位置)
"right"か"left"を指定し、区切り文字の位置を制御します。
使用例
<head>
<title>
<?php
wp_title( '|', true, 'right' );
bloginfo( 'name' );
?>
</title>
</head>上記の例では、まず wp_title() を使ってページごとのタイトルを表示し、その後 bloginfo('name') でサイトの名前を表示します。タイトルとサイト名の間には | の区切り文字が入ります。
一緒に使うことが多い関連タグ
bloginfo()
bloginfo() は、サイトの基本情報(サイト名、URL など)を取得するためのテンプレートタグです。wp_title() と併用して、サイト名や他の情報をタイトルに含める際に使います。
<head>
<title>
<?php
wp_title( '|', true, 'right' );
bloginfo( 'name' );
?>
</title>
</head>この例では、wp_title() でページタイトルを出力し、bloginfo('name') でサイト名を表示します。| で両者を区切り、SEO に配慮したページタイトルを生成します。
追加情報を取得したい場合
wp_title() だけではなく、wp_get_document_title() を使うと WordPress が自動的に生成したタイトルを取得できます。この方法は、WordPress 4.4 以降推奨されています。
wp_get_document_title()で取得できる情報
<title><?php echo wp_get_document_title(); ?></title>wp_get_document_title() は、WordPress がページごとに自動で生成するタイトルを取得する関数です。wp_title() よりも柔軟な対応ができ、テーマカスタマイズの際に使用することが推奨されています。
想定されるトラブル
ページタイトルが正しく表示されない
wp_title() がテーマやプラグインの影響で正しく動作していない可能性があります。
解決方法
wp_title() の代わりに、wp_get_document_title() を使用すると、WordPress 標準のタイトル生成機能を利用できます。
<title><?php echo wp_get_document_title(); ?></title>Q&A
まとめ
wp_title()は、WordPress サイトのページごとのタイトルをカスタマイズし、SEO 効果を高めるためのテンプレートタグです。ただし、WordPress 4.4 以降では wp_get_document_title() が推奨されており、最新のテーマ開発ではそちらを使用することを考慮するべきです。
コメント