私は 新しいテーマカスタマイザ を使ってきました。デモテーマのカスタマイザ(ログインせずに)カスタマイザは次の場所にあります。
..wp-admin/customize.php
。
そのため、どういうわけかこのURLへのオープンアクセスを許可するが、バックエンドでは他には何もできないでしょう。おそらくこれにはセキュリティ上の問題があると思いますが、他の人が同じ考えを持っているかもしれないので、これを安全に行うことが可能な場合は、ここで議論が行われると思いました。
だから質問は:管理者の単一のページへのオープンアクセスを許可するための安全な方法はありますか?
ただのアイデア:
$creds = array(
'user_login' => 'guest_user',
'user_password' => 'guest_user_plain_password'
);
$user = wp_signon( $creds, false );
if ( is_wp_error( $user ) )
echo $user->get_error_message();
else
wp_redirect( 'your_absolute_admin_url' ); exit;
add_action( 'init', 'check_guest_user' );
function check_guest_user() {
// Only when in backend and the guest user is logged in
if ( is_admin() && user_id = get_current_user_id() ) {
// Block other pages then custom.php
global $pagenow;
if ( 'customize' != $pagenow )
exit();
}
}
// replace user_id with the user ID of 'Guest'
このスクリプトの唯一の問題は、複数のユーザーがカスタマイザを試しているときです。ユーザーごとにカスタマイズ設定を保存すると、作業が非常に困難になります。
ただし、アカウントを登録しなくても特定のページにアクセスできるようにするのがソリューションです。