システムにテスト ユーザーを作成し ( login を呼び出しましょうmy_test_user
)、トークンの URL をチェックするアクション フックを追加してこれを処理init
しました。トークンが見つかった場合は、テスト ユーザーとしてログインしてから、残りのページ。十分に長くてランダムである限り、トークンとして好きなものを使用できますが、これはまともなジェネレーターです。SSL経由でこれを使用する必要があることに注意してください(ただし、パスワードを使用してログインする必要があります).
セキュリティの観点から、コード内または定数としてテスト ユーザーをハード コーディングすることをお勧めしwp-config.php
ます。これが侵害された場合、ハッカーが任意のユーザーとしてログインできないようにするため、テスト ユーザーのアクセス許可を制限する必要があります。おそらく、値に基づいて機能を有効/無効にwp_option
し、テスト時にのみ有効にする別のトークン/キーを検討することもできます。
に追加するとfunctions.php
、ツールで が追加された任意の URL を使用し?login_token=YOUR_LOGIN_TOKEN
て、 として表示できますmy_test_user
。
function auto_login() {
$login_token = isset( $_GET['login_token'] )? $_GET['login_token'] : false;
// get a UUID from http://www.uuidgenerator.net/
if ( $login_token == 'ac88dc0e-72a8-4a22-abc0-fb5b5396c0ac' ){
// The test user we want to log in
$user_login = 'my_test_user';
// Get the user info
$user = get_user_by( 'login', $user_login );
// Log the test user in automatically
wp_set_current_user( $user->ID, $user_login );
wp_set_auth_cookie( $user->ID );
do_action( 'wp_login', $user_login );
}
}
// Set with a priority of 1 so that it runs ASAP
add_action( 'init', 'auto_login', 1 );