WordPressで現在のページのタイトルを表示する、wp_title関数は、日本語環境で使用すると年月日アーカイブがおかしな表記になる不具合があります。 他にも、添付ファイル・タグのページも、なんのコンテンツなのかというのがわかりにくく、いまひとつ不親切です。

年月日アーカイブ => 2013 3月 13
タグ => [タグ名]
添付ファイル => [ファイル名]

これを、日本語に対応した表記に修正するスニペットをご紹介します。

使用中のテーマの「functions.php」に以下のコードを追加してください。

function WS_wp_date_title($title, $sep, $seplocation) {
  if(is_year()) {
    $title = 'アーカイブ: ' . get_query_var('year') . '年';
  } else if(is_month()) {
    $title = 'アーカイブ: ' . get_query_var('year') . '年' . get_query_var('monthnum') . '月';
  } else if(is_day()) {
    $title = 'アーカイブ: ' . get_query_var('year') . '年' . get_query_var('monthnum') . '月' . get_query_var('day') . '日';
  } else if(is_attachment()){
    $title = '添付ファイル: ' . $title;
  } else if(is_tag()) {
    $title = 'タグ: ' . $title;
  }
  if(!empty($sep)){
    if($seplocation == 'right'){
      $title .= $sep;
    } else {
      $title = $sep . $title;
    }
  }
  return $title;
}
add_filter('wp_title', 'WS_wp_date_title', 10, 3);

追加後は、以下のように出力されるようになります。

年月日アーカイブ => アーカイブ: 2013年3月13日
タグ => タグ: [タグ名]
添付ファイル => 添付ファイル: [ファイル名]

関連ページ