WordPress

WordPressで特定のページにBasic認証をかける方法

記事内に商品プロモーションを含む場合があります

WebページにIDとパスワードを設定するBasic認証は、通常「.htaccess」と「.htpasswd」の2つのファイルを使って設定します。

しかし、その方法はWordPressの固定ページでは使えません。

この記事では、WordPressの特定の固定ページに対して、テーマファイルを編集する方法で、Basic認証によるアクセス制限をかける方法を解説します。

WordPressの特定のページにBasic認証をかける手順

WordPressの特定のページにBasic認証を書ける手順は以下の通りです。

WordPressの特定のページにBasic認証をかける手順
  1. functions.phpにコードを追加する
  2. header.phpにコードを追加する
  3. 認証に使うIDとパスワードを設定する

順番に見ていきましょう。

functions.phpにコードを追加する

functions.phpに次のコードを追加します。

function basic_auth($auth_list,$realm="Restricted Area",$failed_text="認証に失敗しました"){
  if (isset($_SERVER['PHP_AUTH_USER']) and isset($auth_list[$_SERVER['PHP_AUTH_USER']])){
  if ($auth_list[$_SERVER['PHP_AUTH_USER']] == $_SERVER['PHP_AUTH_PW']){
  return $_SERVER['PHP_AUTH_USER'];
  }
  }
  header('WWW-Authenticate: Basic realm="'.$realm.'"');
  header('HTTP/1.0 401 Unauthorized');
  header('Content-type: text/html; charset='.mb_internal_encoding());
  die($failed_text);
}

よくわからないと思いますが、これをそのままfunctions.phpに追加すればOKです。

header.phpにコードを追加する

header.phpに次のコードを追加します。

以下のコードは header.php の先頭に追加してください。

<?php
if(!is_home()):
if(is_page('1111')) : 
$userArray = array(
  "admin" => "password"
);
basic_auth($userArray);
endif;
endif;
?>

ここで、is_page()関数の引数の数字に、固定ページのIDを入力します。

上のコードでは「1111」となっている部分です。

固定ページのIDの調べ方

固定ページのIDを調べるには、WordPress管理画面の固定ページを開きます。

IDを調べたい固定ページのタイトルにマスウカーソルを持ってきます。

ブラウザのステータスバーに固定ページの投稿を表示させるリンクが表示されます。

このURLの文字列の「post=XXX」の「XXX」の部分がその固定ページのIDです。上の画像の例では「91」の箇所です。

使用しているテーマによっては、固定ページ一覧のカラムに「ID」が表示されているかもしれません。その場合は表示されている数値をそのまま使うと良いでしょう。

認証に使うIDとパスワードを設定する

最後に認証に使うIDとパスワードを設定します。

さきほど編集した「header.php」内の

“admin” => “password”

の部分が、IDとパスワードの組み合わせに対応しています。

動作確認してみよう

ここまで出来たら、さっそく動作確認してみましょう。Basic認証を設定した固定ページにブラウザでアクセスします。

このような「ユーザー名」と「パスワード」を入力する画面が表示されていたらBasic認証の設定が成功しています。

===

コレカラウェブではWebライティングのお仕事を承っております。豊富な実務経験や国家資格を生かして、SEOに強い完全オリジナルな文章を作成いたします。公式noteにてポートフォリオを掲載していますので、こちらも併せてご覧ください。ご相談・ご依頼はお問い合わせページからお願いいたします!

「いいね!」と思ったら、クリックお願いいたします<m(__)m>
にほんブログ村 小遣いブログ Webライター・ブログライターへ にほんブログ村 IT技術ブログ SEO・SEMへ にほんブログ村 小遣いブログ ブログアフィリエイトへ
ABOUT ME
らぐち
コレカラブログ管理人のらぐちです。コレカラウェブという屋号でフリーランスとして、Webライティング・SEOコンサルティング・メディア運営・障害者支援のお仕事を一貫して承ってきました。このブログではコレカラウェブのお仕事で得たノウハウやテクニックを詳しく紹介しています。

COMMENT

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

CAPTCHA