2022年1月4日

WordPressのパスワード保護でカスタムフィールドの表示も保護するための記述

WordPressの機能の中で以外と便利な「パスワード保護」の機能。記事の編集画面で公開状態を「パスワード保護」としてパスワードを設定するだけで、ページの閲覧にパスワードをかけることが出来る機能ですが、この機能、標準では「本文(post_content)」のみがパスワード保護対象のため、カスタムフィールドでページをカスタマイズしている場合、カスタムフィールドその他、「本文(post_content)」以外の内容がそのまま表示されてしまいます。

ここでは「本文(post_content)」以外もパスワード保護とする方法を書いていきます。

「post_password_required()」で条件分岐

WordPressでは「post_password_required」が true か false かでパスワード保護対象かどうかを出し分けできるようになっています。
カスタムフィールドを使用して表示をカスタマイズしている場合、何かしらテーマファイルを編集しているかと思いますので、該当箇所で以下のようにif文を書き、パスワード保護したい内容を記述することで、カスタムフィールドの内容もパスワード保護の対象とすることができます。

if( !post_password_required( $post->ID ) ) :
//パスワード保護したい内容はここに記述
endif;

以上、Wordpressのパスワード保護でカスタムフィールドの表示も保護するための記述でした。

コメントを残す

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