WordPressの管理画面とログイン画面にBasic認証を適用する.htaccessの記述

wp-login.php と wp-admin ディレクトリ以下を制限する。ただし、wp-admin/admin-ajax.php は 、プラグインで Ajax を利用する場合にアクセスされる可能性があり、除外する必要がある。

# BEGIN WordPress
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /
RewriteRule ^index\.php$ - [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /index.php [L]
</IfModule>

# END WordPress

AuthUserFile	/path/to/.htpasswd
AuthName	"Input Your Name And Password"
AuthType	Basic

<Files wp-login.php>
require	valid-user
</Files>

<FilesMatch "\/?wp-admin">
require	valid-user
</FilesMatch>

<Files wp-admin/admin-ajax.php>
Satisfy any
order allow,deny
allow from all
</Files>

あ、マルチサイトは試してないからね