WordPress サイト名とページタイトルの出力

  Code Tips minimum Theme

前回の「WordPress サイトの情報を表示 bloginfo()」では <meta charset="" /> の文字エンコードの指定を bloginfo() 関数を使って出力しました。

今回は <head> のなかの <title> タグに、テンプレートタグを使用してサイト名とページのタイトルを表示させてみます。

 

サイト名の出力 bloginfo()

サイト名の出力は bloginfo() 関数の引数に 'name' を渡すことで「ブログ名( 一般設定 – サイトのタイトル)」を出力できます。

<title><?php bloginfo('name'); ?></title>

出力は

<title>サイト名</title>

となります。

 

ページタイトルの出力 wp_title()

ページタイトルの出力は wp_title() を使って出力します。

現在のページのタイトルを表示または取得します。

デフォルトではページタイトルの前にセパレーターを表示するので、ブログタイトルの後にページタイトルが続きます。これだと Web ブラウザーのほとんどのタブにブログタイトルが表示されてしまうので、ユーザーが見るページタイトルとしては適切ではありません。

ブログタイトルをページタイトルの後(または「右」)に表示するのは SEO にとっても有効です。しかしタブをサポートするほとんどのブラウザーにとって右にブログタイトルを表示するのは常識といってよいでしょう。そうするには $seplocation パラメータを使って 'right' を指定します。これは WordPress 2.5 で行われた変更で、テーマの後方互換性のために重要です。

WordPress Codex : テンプレートタグ/wp title

wp_title( $sep, $display, $seplocation )

 

パラメータ
引数 説明
$sep
文字列
オプション
ページタイトルに含める項目の区切り文字
初期値:'&raquo;'
$display
真偽値
オプション
タイトルを表示する true か、PHP 文字列として使えるようにタイトルの値を返す false
初期値:true
$seplocation
文字列
オプション
$sep 文字列を表示する位置。'right' ならタイトルの右(後)に、そうでなければ左(前)に $sep を表示する。
初期値:'(空)'$sep を左(前)に表示。

 

戻り値
文字列 取得した文字列。表示した時は null。
$sep 文字列をデフォルトの文字列の先頭または末尾へ追加して全体の値を返します。
条件(表示しているページ) 内容
ひとつの投稿/固定ページ 投稿/ページのタイトル
日付ベースのアーカイブ 日付(例:”2006″, “2006 – January”)
カテゴリー カテゴリー名
著者ページ ユーザの公開名

 

wp_title() を使ってページタイトルを出力してみます。

<title><?php wp_title(); ?></title>

出力は

<title>&raquo; ページタイトル</title>

となります。

 

サイト名とページのタイトルの表示

bloginfo('name') と wp_title() を組み合わせて「サイト名とページのタイトル」を表示させてみます。

<title><?php bloginfo('name'); ?> <?php wp_title(); ?></title>

出力は

<title>サイト名 >> ページタイトル</title>

となります。

 

サイト名とページタイトルの区切り文字に「|」を使用する場合
<title><?php bloginfo('name'); ?><?php wp_title(' | '); ?></title>

出力は

<title>サイト名 | ページタイトル</title>

となります。

 

投稿タイトルを先にする場合

投稿タイトルを先にする場合、区切り文字をページタイトルの右に出力する引数 ’right’ を加えます。

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

出力は

<title>ページタイトル | サイト名</title>

となります。

 

ディスクリプションの出力を追加する場合

サイト名とページタイトルの後にディスクリプションを出力する場合は  | <?php bloginfo('description'); ?> を追加します。

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

出力は

<title>ページタイトル | サイト名 | サイトの説明</title>

となります。

 

Code Tips minimum Theme

【index.php】

><!DOCTYPE html>
<html <?php language_attributes(); ?>>
<head>
  <meta charset="<?php bloginfo( 'charset' ); ?>">
  <title><?php wp_title('|', true, 'right'); ?><?php  bloginfo('name'); ?></title>
</head>
<body>
  <h1>Hello World!</h1>
  <p>Simple Theme</p>
</body>
</html>