概要
WordPressの開発において、`wp_redirect()`関数を使用してログイン後やフォーム送信後にユーザーを特定のページにリダイレクトする方法を紹介します。
ユースケース
ユーザーがログインした後に特定のダッシュボードページにリダイレクトさせたい場合や、フォーム送信後に「送信完了」ページにリダイレクトさせたい場合など、ユーザーエクスペリエンスを向上させるためにこのスニペットが必要です。
前提条件
特別なプラグインや設定は必要ありませんが、このコードはWordPressのテーマやプラグイン内で使用することを想定しています。
サンプルコード
// ログイン後にダッシュボードにリダイレクトする例
function custom_login_redirect( $redirect_to, $request, $user ) {
return home_url('/dashboard');
}
add_filter( 'login_redirect', 'custom_login_redirect', 10, 3 );
解説
- `login_redirect` フィルターを使用して、ログイン後のリダイレクト先をカスタマイズできます。
- `custom_login_redirect` 関数内で、`home_url('/dashboard')` を返すことで、ログイン後にダッシュボードページにリダイレクトします。
ベストプラクティス
- リダイレクト先のURLはセキュアであることを確認し、ユーザーエクスペリエンスを向上させるために適切なページにリダイレクトするようにします。
- フォーム送信後のリダイレクトも同様に、ユーザーが期待するページに適切にリダイレクトするように実装します。