WordPressの<title>タグの出力をカスタマイズする方法です。
このタグはSEO的にも重要なタグです。正しく設定しましょう。
◆ 安全にfunctions.phpをカスタマイズする方法
functions.phpの修正に不安がある人は以下を参考にしてください。
functions.phpを直接修正するのは不具合時の対処やテーマ更新時に大変ですよね。それでも手間を減らす方法もあり、ここで紹介する方法と以下の記事の内容でそこそこ安全に改造できます。 拡張用のfunctions.phpを新規作成する 最初にカスタマイズ用のコードを記述するためのphpファイルを作成します。配置するディレクトリとファイル名は好みで大丈夫です。とりあえず、ここではfunctions.phpと同じディレクトリにextend-functions.phpとして作成し...
コードを追加する
functions.phpとかに以下のコードを追加します。
// Titleタグの出力を有効化
add_action('after_setup_theme', function () {
add_theme_support('title-tag');
});
// Titleタグのセパレーター文字を変更
add_action('document_title_separator', function ($separator) {
$separator = '|';
return $separator;
});
// Titleタグから不要な項目を削除
add_action('document_title_parts', function ($title) {
unset($title['site']);
unset($title['tagline']);
unset($title['page']);
return $title;
});
ただし、この内容だと僕のサイトと同じになります。
より好みの内容に変更したい場合、後述を参考に改造してください。
仕組み
<title>タグの出力を有効化
最初にこれ。これでWordPress側が自動的に<title>タグを出力してくれます。
<head>内に直でタグを書いてると2重に出力されるので気をつけましょう。
// Titleタグの出力を有効化
add_action('after_setup_theme', function () {
add_theme_support('title-tag');
});
<title>タグのセパレーター文字を変更
次にこれ。サイト名とページ名の間の文字。いわゆるセパレーター的な文字を変更します。
ちなみに標準は'-'が使われてます。何か嫌なので'|'にしてます。
// Titleタグのセパレーター文字を変更
add_action('document_title_separator', function ($separator) {
$separator = '|';
return $separator;
});
<title>タグから不要な項目を削除
最後にこれ。出力される項目から不要な部分を消します。
// Titleタグから不要な項目を削除
add_action('document_title_parts', function ($title) {
unset($title['site']);
unset($title['tagline']);
unset($title['page']);
return $title;
});
引数の$titleは配列です。そこから不要な項目をunsetで消します。
とりあえず、普通に使いそうな項目はこの辺。他は自分で調べて。
title | ページのタイトル |
site | サイト名 |
tagline | キャッチフレーズ(設定に記述するやつ) |
page | ページ番号(分割ページの場合) |
Tips作り込めばページごとに任意の文字列を出力するような使い方も可能。
あとがき

古来は<head>内に直書きしてたらしいが昨今は違うらしい。

古いテーマだと記述が違ったりするよ。
この記事は参考になりましたか?
コメント