2017.09.12
WordPress
WordPressタイトルタグの「保護中」表示を編集するフィルターフック

WordPressは任意の記事にパスワード保護をかけることが可能で、保護した記事のタイトルには文頭に「保護中」と自動で追記されます。例えばこの表示を「会員限定記事」と編集したい場合、フィルターフックで編集することができます。今回はそのコードを紹介します。
「保護中」を任意のテキストに変更する
フィルターフックはfunction.phpに追記することで機能します。下記は「保護中」を「会員限定記事」と変更する際のコードです。
function edit_protected_word () {
return '会員限定記事:%s';
}
add_filter('protected_title_format','edit_protected_word');
%sとはphpの型指定子です。引数の出力されるフォーマットを指定することができ、%sの場合は文字列として引数を扱うことを意味しています。
「保護中」にhtmlタグを設定する
pやspanを使って「保護中」をあしらいたいときに利用します。「保護中」だけ赤文字にしたりしたい場合に利用できます。
以下は「保護中」をspanで囲み、class="password-txt"を設定した例です。
function addtag_protected_word () {
return '<span class="password-txt">保護中</span> : %s';
}
add_filter('protected_title_format','addtag_protected_word');
「非公開」表示も編集可能
記事の公開設定を「非公開」にした際のタイトル表示も編集できます。記述は上記のフィルターフック中のフィルター部分protected_title_formatをprivate_title_formatに変更するだけです。
下記は「非公開」を「PRIVATE」に変更した例です。
function edit_private_word () {
return 'PRIVATE:%s';
}
add_filter('private_title_format','edit_private_word');
タイトル表示はクライアントからの要望やデザイン上の都合で編集したいときがあるポイントだと思います。必要になった際はご利用下さい。





