WordPressでカスタム投稿タイプに合わせて『抜粋』のラベルを変更する方法

ウェブ制作

1. はじめに

WordPressのカスタム投稿タイプを使っていると、「抜粋」フィールドのラベルがわかりにくいと感じることがあります。特にこのフィールドを description として利用している場合、その関連性をユーザーに伝えるためにラベルを変更したいというニーズが出てくるかもしれません。この記事では、複数のカスタム投稿タイプに対応した「抜粋」のラベルの変更方法について解説します。

2. カスタム投稿タイプで「抜粋」のラベルを変更する

カスタム投稿タイプごとに「抜粋」フィールドのラベルを変更するには、WordPressの gettext フィルターを使います。このフィルターは、WordPressの特定のテキストを置き換えるために使用されます。以下のコードをテーマの functions.php に追加してください。

3. コードの説明

以下のコードは、指定したカスタム投稿タイプに対して「抜粋」のラベルを変更します。

function modify_excerpt_label( $translated ) {
    $post_types = ['custom_post_type1', 'custom_post_type2']; // ここに複数のカスタム投稿タイプを追加

    if ( $translated === '抜粋' && is_admin() && in_array(get_post_type(), $post_types) ) {
        $translated = '変更したい文言';
    }

    return $translated;
}
add_filter( 'gettext', 'modify_excerpt_label' );

4. カスタマイズ手順

  • $post_types 配列に、ラベルを変更したいカスタム投稿タイプのスラッグを追加します。例:'news''blog' など。
  • 変更したい文言 の部分に、新しく表示させたいラベルを指定します。例:'抜粋(descriptionの設定)'

5. コードの動作について

  • gettext フィルターを使って、管理画面に表示される「抜粋」のラベルを変更しています。
  • in_array(get_post_type(), $post_types) で、現在の投稿タイプが指定したカスタム投稿タイプのいずれかであるかを確認します。
  • is_admin() を使って、管理画面でのみラベルを変更するようにしています。

6. 注意点

  • この方法では、WordPressの管理画面全体で使われる「抜粋」というテキストを変更しますが、投稿タイプを特定する条件を追加しているため、特定のカスタム投稿タイプに限定して変更が適用されます。
  • 他のプラグインやテーマが同じ gettext フィルターを使っている場合、競合する可能性があります。その際はフィルターフックの優先順位(第3引数)を調整してみてください。

7. まとめ

今回の方法を使うことで、カスタム投稿タイプに合わせて「抜粋」フィールドのラベルを柔軟に変更できます。特にSEOや説明文の設定に使っている場合、ユーザーにその意図を伝えるためにラベルのカスタマイズは有用です。

タイトルとURLをコピーしました