BLOGブログ
2023/03/27
IPアドレスアクセス制限を functions.php で設定する
ユーザー権限によってIPアドレスによるアクセス制限をかけてほしいという依頼がありました。
.htaccessに記述する方法ですと、管理画面にアクセスできるIPアドレスを制限することは可能ですが、アカウントの権限で分岐することはできません。
IPアドレスアクセス制限を functions.php で設定することで、特定のアカウント権限の方が管理画面にアクセスしようとしたら指定のIPアドレスでないとアクセスできないなどの細かい設定が可能になります。
add_action('init', 'access_restriction');
function access_restriction() {
$ip_list = array(
'○○○.○○.○○.○○' //許可したいIPアドレス
);
if (is_admin()) {
if (current_user_can('publish_article') || current_user_can('article_editor')) {
if(in_array($_SERVER["REMOTE_ADDR"], $ip_list, TRUE)) {
return;
}
wp_die('アクセスできません', 'アクセスエラー', array('responce' => 403));
}
}
}
※権限「publish_article」「article_editor」は、プラグイン『User Role Editor』で新たなユーザー権限を作りました。
CONTACTお問い合わせ
サービスに関するお問い合わせやお見積もり・ご相談などお気軽にご相談ください。