cocoonフック調査~title_parts_customの使い方と活用例
タナビーの高梨です。
WordPressのテーマ「Cocoon」には、テーマ改変なしでデザインや動作を拡張できる豊富なアクション・フィルターフックが用意されています。
分かる範囲で内容を調査したのでブログにまとめていこうと思います。
今回は<title>タグの内容を変更できるフィルターフック
👉title_parts_custom
です
フックの概要
| フック名 | 発火タイミング |
|---|---|
| title_parts_custom | 全てのページ描画時 |
発火条件
ページ描画時に無条件に1回発火します。
投稿ページ・固定ページ・アーカイブ・トップページなど、ページ種別に関係なく呼び出されます。
使いどころ
・全ページの <title> を統一したい場合
・特定の投稿タイプ・固定ページ・アーカイブだけタイトルを変更したい場合
・条件分岐を用いて SEO 用に動的なタイトルを生成したい場合
Cocoon 独自のタイトル生成ロジックの 最終段階に介入できる フックなので、タイトル制御に関してはかなり自由度が高いです。
引数
$title:(array)タイトル情報(title:タイトル、site:サイト名、tagline:キャッチフレーズ)
apply_filters呼び出し元のソースコード
lib/seo.php
return apply_filters('title_parts_custom', $title);
カスタマイズコード例
一律で全てのタイトルを「modified title」に変更する例です。
function customize_title_parts_custom ( $title ) {
$title['title'] = 'modified title';
return $title;
}
add_filter('title_parts_custom', 'customize_title_parts_custom' );
注意点
・無条件で発火するため、条件分岐を入れないと全ページに影響する
・site や tagline を消してしまうと、SEO的に不利になる可能性がある
・他の SEO プラグインと併用している場合、タイトルの競合に注意が必要
まとめ
・title_parts_custom は タグの内容を最終的に変更できるフィルターフック
・全ページ・特定ページのみなど、条件分岐による柔軟な制御が可能
・SEO 調整や独自タイトル生成に使える実用性の高いフック
・無条件発火のため、影響範囲を意識した実装が必須