この記事にはプロモーションが含まれています。

【WordPress】パスワード保護ページで任意のコンテンツを保護する

【WordPress】パスワード保護ページで任意のコンテンツを保護する

WordPressでは簡単にページ単位でパスワード保護設定をすることが可能です。

これにより、パスワードを知らない人しかそのページのコンテンツを閲覧できないよう制限することができます。

しかし、この「パスワード保護機能」で実際にパスワード保護されるのは、the_content()で出力される部分、つまり「本文」の内容だけです。

実案件では、「本文」以外の部分をパスワード保護したいことも多々あります。

ケケンタ

この記事ではWordPressのパスワード保護機能を使用して任意のコンテンツを保護する方法についてご紹介します。

目次

Web制作を仕事にしたいなら

こちらの記事で

Web制作コース独学プラン

についてご紹介しています。

 ̄ ̄ ̄

「仕事が忙しい」、「すぐに欲しい商品がある」という方、必見のサービス

 Amazon Prime 

by Amazon

日時指定便が「無料」で使えるので不在で商品を受け取れないという心配が無くなる

最短で注文した「翌日」に商品が届くので欲しいものがすぐ手に入る 
※ご注文の時間帯やお住まいの地域によります。

Amazonプライムの無料体験は「何度でも」利用可能

Amazonプライムの無料体験を何度も利用する方法

  • Amazonのカート画面で表示される「Amazon Primeの無料体験の案内」をクリック
  • 会員の自動更新を解除しておく=期限が来たら自動解約
  • 1~3ヶ月ぐらいするとAmazonのカート画面再度無料体験の案内が表示される

商品をカートに入れ、カート画面に行ったときに「無料体験の案内」が表示されていれば
1ヶ月間の無料体験を受け取ることが可能です。

ケケンタ

僕自身、過去に少なくとも3回は無料体験を利用しています。

※条件は不明ですが、解約後に一定期間が経過すると、再び「Amazon Prime無料体験の案内」が表示され、再度利用することが可能です。

パスワード保護機能の基本的な使用方法

前提として、WordPressの保護機能の基本的な使用方法をご説明します。

STEP
投稿・固定ページ編集画面の「表示状態」部分をクリック

投稿・固定ページ編集画面の右側メニューにある「表示状態」部分をクリックします。

編集ページの「表示状態」部分をクリックする
STEP
「パスワード保護」を選択する

次に「パスワード保護」を選択します。

「パスワード保護」をクリックする
STEP
任意のパスワードを設定する

最後に、表示された入力フォームに任意のパスワードを設定します。

任意のパスワードを入力する
ケケンタ

WordPressではたったこれだけで任意のページに保護設定をすることが可能です。

パスワード保護されたページの様子

パスワード保護されたページの様子

パスワード保護されたページで任意のコンテンツを保護する方法

上記の方法で、任意のページにパスワード保護設定をすることができました。

しかし前述したように、これだけではパスワード保護されるのはthe_content()で出力される「本文」の部分だけです。

例えば、テンプレートファイルを編集してカスタムフィールドを出力している場合、その出力部分はパスワード保護されず、そのままページ上に表示されてしまいます。

ケケンタ

もしカスタムフィールドなどthe_content()以外のコンテンツ部分をパスワード保護したい場合、そのページのテンプレートファイル内で以下のように記述します。

<?php

if( !post_password_required() ) {
/*
 *パスワード保護したい内容をここに記述
 *※パスワード保護が解除されているとき(パスワードが入力されたあと)はif文内の処理が実行されます。
 */
}

?>

post_password_required()は、そのページがパスワード保護されているかどうかを判定してくれます。

このように書くことで

  • パスワード保護中=パスワード未入力状態ならif文内のコンテンツは出力されない
  • パスワード保護解除=パスワード入力済みならif文内のコンテンツが出力される

という形で制御できます。

パスワード保護されているページは
パスワード入力前だと「保護されている」という扱いになり、
パスワード入力後だと「保護されていない」という扱いになる。

まとめ

ケケンタ

以上がWordPressでパスワード保護機能を使用して任意のコンテンツを保護する方法でした。

WordPressのパスワード保護機能は簡単に使用できて便利ですが、カスタムフィールドのように「本文」とは別で出力が必要なコンテンツに対しては別途対応が必要です。

今回ご紹介したコードを利用すれば簡単に任意のコンテンツを保護できるので、ぜひご活用ください。

それでは、最後までご覧いただきありがとうございました。

よかったらシェアしてね!
  • URLをコピーしました!
  • URLをコピーしました!

コメント

コメントする

CAPTCHA


目次