WordPressのテーマでカスタムヘッダーのプレビューはいらなくなった

WordPressのテーマを4.2対応していて気がついた。
ダッシュボードの[外観]メニュー[ヘッダー]をクリックすると、以前はカスタムヘッダーの設定画面が表示されていた。今ではテーマカスタマイザーが表示されるようになっている。いつのころからか、カスタムヘッダーのプレビュー画面がいらなくなったのだろうか?

カスタムヘッダー

カスタムヘッダー機能を持つテーマでは、ヘッダーの画像やヘッダーテキストの色や表示の有無を変更することができる。
» カスタムヘッダー – WordPress Codex 日本語版

以前、カスタムヘッダーには次のような設定画面があった。

カスタムヘッダーの設定画面
カスタムヘッダーの設定画面(〜4.0)

この画面でヘッダー画像をアップロードしたり、テキストの色を変更したり、非表示にしたりする。機能はWordPress本体で提供されている。テーマにカスタムヘッダーを取り入れる場合は、この画面にも対応する必要があった。
※4.1以降この画面はない

テーマカスタマイザー

テーマカスタマイザーは3.4からの機能である。テーマ設定はじめサイトのタイトル、ウィジェットなどプレビューしながら変更できるのが特徴で、テーマごとに独自の項目を追加することも可能だ。
» テーマカスタマイズ API – WordPress Codex 日本語版

テーマカスタマイザー
テーマカスタマイザー(3.4〜)

左側で設定を変更すると、右側にリアルタイムでプレビューしてくれる。そのうち、いろいろなことがここでできるようになるんだろう?という予感はあった。

カスタムヘッダーの設定画面は、こちらのテーマカスタマイザーと設定項目が重複しながらしばらく共存していたものの、いつしか姿を消した。4.1以降は [外観]メニュー[ヘッダー]をクリックすると、直接テーマカスタマイザーが表示される。

デフォルトテーマに見る変更

カスタムヘッダーの設定画面がなくなったということは…テーマでカスタムヘッダーのプレビューに対応しなくてよくなったということか?
デフォルトテーマで確認してみた。

twentyfourteen

3.8〜4.0までのデフォルトテーマtwentyfourteen
functions.php
twentyfourteen_custom_header_setup()内

twentyfifteen

4.1〜のデフォルトテーマ twentyfifteen
twentyfifteen_custom_header_setup()内

twentyfifteenでは、カスタムヘッダーのプレビューに必要だった2つのオプションが消えている。

  • admin-head-callback
    カスタムヘッダー設定画面のためのCSSを書くコールバック関数
  • admin-preview-callback
    カスタムヘッダー設定画面のためのHTMLを書くコールバック関数

これらのコールバック関数の内容は、フロントに表示される wp-head-callback と似た内容だった。wp-head-callbackに統合されたと思えばよいのか。

プレビュー用のCSSは?

カスタムヘッダーで独自のstyleを利用している場合がある。
たとえば、style.css内で日本語フォントのメイリオやGoogleフォントなど指定している場合だ。このときカスタムヘッダーのプレビュー用にもCSSファイルの読み込みが必要だった。さきほどのadmin-head-callbackに書いておけば?と思うかもしれないが、functions.phpに全角文字を書くとテーマレビューではじかれるため別途読み込んでいた。

これまではadmin_enqueue_scripts というフックを利用して、日本語フォントのためのCSSファイルを読み込んでいた。カスタムヘッダーのプレビュー廃止とともに、これもいらなくなった。

すこしスッキリ

業務用や個人のテーマではあまり必要ないと思われるカスタムヘッダーだろう。公式ディレクトリのテーマではあったほうがよい機能なのだ。そのためにプレビュー用のCSSやHTMLを書いたり…似たコードが散在していた。もういらないんだ。
ありがとうテーマカスタマイザー!!

コメントを残す

メールアドレスが公開されることはありません。