【カスタム投稿タイプ】記事タイトルに独自のプレースホルダーを設定する方法

WordPress

WordPressの投稿タイトル入力欄には、「タイトルを追加」という定形のプレースホルダーが設定されています。

エンドユーザーによっては、ここの表記を分かりやすく変えてほしいという要望が上がることがあったので、カスタマイズ手順を残しておきます。

WordPress標準の投稿タイトル

標準のWordPressではプレースホルダーに「タイトルを追加」の文言が設定されています。

投稿でも固定ページでも共通。

Gutenbergの投稿タイトル
Gutenbergの投稿タイトル

投稿と固定ページのプレースホルダーを変更する

投稿タイトルのプレースホルダー

「投稿」と「固定ページ」でプレースホルダーの文言を使い分けることができます。

function.phpに以下のコードを追加するだけ。
もちろん条件分岐を増やせば「カスタム投稿タイプ」のプレースホルダーも変更できます。

function my_custom_post_placeholder($title, $post) {
  if ('post' == $post->post_type) {
    $title = 'ブログの記事タイトルを入力';
  } elseif ('page' == $post->post_type) {
    $title = '固定ページのタイトルを入力';
  } elseif ('news' == $post->post_type) {
    $title = 'ここにニュース見出しを入力';
  }
  return $title;
}
add_filter('enter_title_here', 'my_custom_post_placeholder', 10, 2);

 

カスタム投稿タイプのプレースホルダーを変更する

上で書いたように、「投稿」や「固定ページ」の並びで「カスタム投稿タイプ」も記述することができますが、カスタム投稿タイプだけのプレースホルダーを変更したいならもっと簡潔に記述することもできますよ。

カスタム投稿タイプを追加する関数「register_post_type」のlabels配列に「’enter_title_here’」を追加するだけ。

register_post_type( 'news', array(
  'labels' => array(
    'name' => 'ニュース',
    /* labelsパラメータ省略 */
    'enter_title_here' => 'ここにニュース見出しを入力',
  ),
  /* argsパラメータ省略 */
));

カスタム投稿タイプの初期設定を列挙する箇所で一緒に記述できるので、メンテナンス性という意味ではこちらに記述したほうが便利ですね。

 

WordPress

Posted by そら