[WordPress]非公開ブログの設定

もくじ

  • 前置き
  • 未ログインの場合はログイン画面にリダイレクトする
  • 画像へのURLアクセスをブロック
  • 検索エンジンのクローラーを制御
  • 参考ページ

前置き

プラグインを使う方法や、ベーシック認証を導入する方法なども試しましたが、WordPressのiOSアプリからログイン出来なくなるデメリットがあったので
今回紹介する方法に落ち着きました。

wp-blog-header.phpにコードを追加するので、WordPressのバージョンアップで上書きされる可能性があります。
WordPressのバージョンアップは開発環境で事前確認した上で実行した方がいいです。
特に、現バージョンで実装されている自動更新機能はオフにした方がいいでしょう。

その他もろもろ全て、自己責任でお願いします。

こちらのエントリーで構築したローカル開発環境のWordPressに設定します。

[ローカル開発環境 #05]WordPressでブログを作成しよう
ローカル開発環境の構築:もくじ ローカルサーバーを導入しよう ローカルサーバーの設定をしよう Web開発環境を構築しよう Web...

バージョンは、4.3(執筆時の最新版)です。

事前に、検索エンジンにサイトをインデックスさせないように設定しておきましょう。
ダッシュボード > 設定 > 表示設定 > 検索エンジンがサイトをインデックスしないようにするを、アンチェックにします。

未ログインの場合はログイン画面にリダイレクトする

ルートディレクトにある wp-blog-header.php に赤字を記述します。

if ( !isset($wp_did_header) ) {

    $wp_did_header = true;

    require_once( dirname(__FILE__) . '/wp-load.php' );

    if (!is_user_logged_in()){
        auth_redirect();
    }

    wp();

    require_once( ABSPATH . WPINC . '/template-loader.php' );

}

画像へのURLアクセスをブロック

ルートディレクトリ/wp-content/uploadsに、.htaccessを作成し以下の内容を記述します。

# BEGIN WordPress

SetEnvIf Referer "^http://blog\.example\.com" ref01
order deny,allow
deny from all
allow from env=ref01

# END WordPress

検索エンジンのクローラーを制御

ルートディレクトリに、robots.txtを作成し以下の内容を記述します。

User-agent: * 
Disallow: /

設定のテスト

テスト様に画像をアップロードして記事を更新しました。

SS 2015-08-22 14.48.58

ログアウトして、http://blog.example.comにアクセスします。

SS 2015-08-22 21.10.41

ログイン画面が表示されました。

画像もURLをアドレスバーにコピペしてアクセスしてみます。

SS 2015-08-22 21.10.53

HTTP 403エラーが発生して画像にアクセスできません。

参考ページ

スポンサーリンク
レクタングル(大)
レクタングル(大)

コメントをどうぞ

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

CAPTCHA


次のHTML タグと属性が使えます: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <s> <strike> <strong>