/************************************************************
* 特定のIPアドレスだけログイン状態を無制限にする
* (無制限を許可するIPアドレス一覧を使用)
************************************************************/
add_filter( ‘auth_cookie_expiration’, function( $seconds, $user_id, $remember ) {
// 🔵【無制限を許可するIPアドレス一覧】←ここを編集してください
$unlimited_ips = array(
‘111.222.4.555’, // 自宅のグローバルIPなど
// ‘111.222.333.444’, // 追加したいIPがある場合
);
// 現在アクセスしているIPアドレス
$current_ip = $_SERVER[‘REMOTE_ADDR’] ?? ”;
// 無制限IPに該当する場合 → 有効期限を50年に延長
if ( in_array( $current_ip, $unlimited_ips, true ) ) {
return YEAR_IN_SECONDS * 50; // ←50年=実質無制限
}
// それ以外のIPはWordPress標準の有効期限
return $seconds;
}, 10, 3 );
/************************************************************
* 無制限IPからログインする場合のみ「ログイン状態を保存する」を強制ON
************************************************************/
add_filter( ‘wp_authenticate_user’, function( $user ) {
// 🔵【無制限を許可するIPアドレス一覧】(上と同じIPを指定)
$unlimited_ips = array(
‘111.222.4.555’,
// ‘111.222.333.444’, // 追加したいIPがある場合
);
$current_ip = $_SERVER[‘REMOTE_ADDR’] ?? ”;
if ( in_array( $current_ip, $unlimited_ips, true ) ) {
$_POST[‘rememberme’] = 1; // ログイン状態を保持(Remember me)
}
return $user;
});