WordPressのパスワード保護機能は本文(the_content)のみが対象で、記事のタイトルはそのまま表示されてしまいます。
今回はfunctions.phpを編集して、記事のタイトルもパスワード保護を掛けて非表示にする方法を紹介させていただきます。
パスワード保護されている投稿でタイトルも非表示にする
single.phpやarchive.php などのテーマファイルを開き、投稿コンテンツを表示する箇所を以下のような記述に変更します。
1 2 3 4 5 6 |
<?php if(!post_password_required( $post->ID )):?> <?php the_title(); ?> <?php the_content(); ?> <?php else:?> <?php echo get_the_password_form(); ?> <?php endif;?> |
1行目は、パスワード保護されていない記事、もしくは正しいパスワードが入力された場合の条件分岐です。
4行目は、パスワード保護されている記事の場合の条件分岐で、get_the_password_formでパスワード入力フォームを表示します。
コメント