WordPressでパスワード保護がうまくできないとき

WordPressにはパスワード保護という記事や固定ページごとに、パスワードのみの簡易な制御をすることができる便利な機能があります。
ところが、パスワード保護の設定をしたのに、うまく制御できない(=隠れずに表示されてしまう)ことがあります。
それは、パスワード保護が「記事本文」にしかからないからです。
うまくいかない!と思ったら、ぜひ次のことを確認してみてください。

1.パスワード保護の機能とは?

まず、WordPressのパスワード保護について。
投稿ページや固定ページにパスワードをかけて閲覧を制限する機能のことです。

この機能の基本的な設定方法は、以下の記事で説明しています。

⇒投稿ページや固定ページにパスワードをかける(WordPress)

 

2.パスワード保護は「記事本文」だけ

パスワード保護の設定を終えてプレビューで確認したときに、うまく制御ができないことがあります。
例えば、パスワードの画面は出るけれど、その下に画面が出てしまっているとき。

なぜこのようなことが起こるかというと、パスワード保護で保護されるのは「記事本文」部分だけだからなのです。
投稿記事編集画面で入力した部分、テンプレートでいうと

<?php the_content(); ?>

の部分のみになります。
それ以外の部分(=テンプレートで制御されている部分)については、保護の対象から外れてしまうのです

もし上記のような現象が起こってい待った場合は、まずパスワード保護をしたい部分が「投稿記事本文」に書かれているかどうか確認してください。
カスタムフィールドで作成した記事は、基本的にテンプレート上でPHPを使ってデータを呼び出しているので、残念ながらパスワード保護をかけることはできません
テンプレートで制御されている部分についてはphpでデータの呼び出しをしていない場合は、本文に直接HTMLを記述することで回避することもできますが、そのままコピペするだけだとレイアウトが崩れますので微調整が必要です。

 

3.カスタムフィールドやテンプレート部分には別のパスワード制御を

では、カスタムフィールドで作成したページやテンプレートで作成した部分について保護したい場合は、どうしたらいいでしょうか?
この場合は、WordPressの「パスワード保護」は使用できませんので、別のパスワード制御を使用するしかありません
たとえばBasic認証でしたら、ページを表示する前にIDとパスワードを求めるウインドウが出てきますので、制御することができます。

またサーバによっては独自のパスワード制御機能がある場合もありますので、WordPressを置いているサーバを確認してみてください。

 

WordPressでパスワード保護がうまくできないとき” に対して1件のコメントがあります。

コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です