WordPress에 WooCommerce(WooCommerce)をインストールしてショッピングモールを運営している場合は、顧客に自分のアカウント(My Account)ページからログイン/ログアウトさせることができます。 [マイアカウント]ページで会員登録したり、ログインした後に移動するページを指定したい場合は、プラグインを使用するか、簡単なコードを追加できます。
WooCommerce マイアカウントページで登録が可能にする
WooCommerceのマイアカウントページで会員登録を有効にするには WordPress 管理者ページで WooCommerce(WooCommerce) > 設定(Settings)に移動し、 アカウントと個人情報(Accounts & Privacy) タブをクリックします。
アカウントの作成 (Account creation) セクションの「顧客は「マイアカウント」ページでアカウントを作成できます(Allow customers to create an account on the "My account" page)「オプションを確認してください。
![WooCommerce マイアカウントページで登録が可能にする](https://www.thewordcracker.com/wp-content/uploads/2022/07/Allow-Customers-to-register.jpg)
変更を保存して自分のアカウントページを更新すると、ログインしていないユーザー(ゲストユーザー)が自分のアカウントページにアクセスしようとすると、下の図に示すようにログインフォームと会員登録フォームが表示されます。
![WooCommerce マイアカウントページログイン/会員登録画面](https://www.thewordcracker.com/wp-content/uploads/2022/07/My-Account-1030x510.jpg)
ログイン/会員登録ページのデザインはテーマごとに少しずつ異なります。 上の写真は WooCommerce 専用テーマである Flatsomeが提供するログイン(マイアカウント)モーダルウィンドウに表示されるマイアカウントページのレイアウトを表示します。
エレメンタープロ(Elementor プロ)を使用している場合は、自分のアカウントページを好きなようにカスタマイズできます。
WooCommerceドラゴンプラグインとして有名なYITHで販売 YITH WooCommerce Customize My Account Page プラグインを使用して自分のアカウントページをカスタマイズすることもできます。
カスタムコードを使用して WooCommerce 会員登録/ログイン後にリダイレクトページを設定する
[マイアカウント]ページに表示されるログイン/会員登録フォームを入力した後、[送信]ボタンをクリックしたときにユーザーが移動するページを指定できます。
WooCommerce 会員登録後にリダイレクトされるページを指定する
WooCommerceの[マイアカウント]ページに表示される会員登録フォームにEメールアドレスを入力した後 会員登録 ボタンを押した後に移動するページを指定したい場合は、次のコードをテーマの関数ファイル(チャイルドテーマを作成してタスク)に追加するだけです。
// After registration, logout the user and redirect to a specific page
// 회원가입 후 ユーザー를 로그아웃시키고 특정 페이지로 리디렉션시키기
function custom_registration_redirect() {
wp_logout();
return home_url('/your-new-page');
}
add_action('woocommerce_registration_redirect', 'custom_registration_redirect', 2);
上記のコードはStackoverflowドキュメント(Woocommerce redirect after registration)を参照しました。 このコードはうまく動作することを確認しました。
FTPに接続してコードを追加してください。 FTPの接続方法がわからない場合は、ホスティング会社にお問い合わせください。 Bluehost などcPanel環境を提供するWebホスティングサービスを利用する場合は、cPanel内で新規ftpアカウントを作成してアクセスできます。
WooCommerce ログイン後にリダイレクトされるページを指定する
WooCommerceの[マイアカウント]ページに表示されるログインフォームにユーザー名(メールアドレス)とパスワードを入力します。 ログイン ボタンを押した後に移動するページを指定したい場合は、次のコードをテーマの関数ファイル(同様にチャイルドテーマを作成して作業)に追加するだけです。
// After login, redirect to a specific page
add_filter( 'woocommerce_login_redirect', 'woocommerce_customer_login_redirect', 9999, 2 );
function woocommerce_customer_login_redirect( $redirect, $user ) {
if ( wc_user_has_role( $user, 'customer' ) ) {
$redirect = get_home_url(); // 홈페이지, homepage
//$redirect = wc_get_page_permalink( 'shop' ); // 상점 페이지, shop page
//$redirect = '/custom_url'; // 동일 사이트 내의 커스텀 URL, custom URL same site
//$redirect = 'https://custom.url'; // 다른 사이트의 커스텀 URL, custom URL other site
//$redirect = add_query_arg( 'password-reset', 'true', wc_get_page_permalink( 'myaccount' ) ); // 커스텀 내 계정 탭, custom My Account tab
}
return $redirect;
}
上記のコードはテストしませんでした。 期待どおりに機能しない場合は、以下のコメントでお知らせください。 WooCommerce/WordPress バージョンで動作するコードがあるかどうかを見てみましょう。
プラグインを使用して WooCommerce ログイン/会員登録/ログアウト時にリダイレクトページを設定する
FTPに接続してコードを追加するのが面倒または難しいと感じた場合は、プラグインを使用して WooCommerce ログイン/会員登録/ログアウト時に移動するページを指定できます。
WooCommerce 公式ホームで販売するRedirect After Login、Registration & Logoutプラグインを使用してログイン後、リダイレクト/会員登録後、リダイレクト/ログアウト後にリダイレクトURLを設定することが可能です。
詳細と使用方法は WooCommerce 公共のホームで適切なプラグインページを参照してください。
しかし、この単純な機能のために有料プラグインを購入することはあまりお勧めできません。
このようにしてテーマがアップデートになってコードが飛んでいくと誰が責任でしょう?
定期的にバックアップしてテーマファイルを変更する場合は、チャイルドテーマをインストールしてチャイルドテーマで修正してください。
チャイルドテーマを作成して作業すると、テーマが更新されてもコードは消えません。
そして Cafe24の場合、過去7日以内にサイトをロールバックできます。
クラウドウェイズは約2週間、 ファーストコメット、ケミクラウド などのホスティングも商品によって1週間~4週間以内の期間に復元できます。
こんにちは現在クラウドウェイでワープを作成していますが、トラフィックが1度ありませんが、費用が6万ウォンを超えて決済されました。 お願いします~~
こんにちは、ワープ初心者。 どの設定を変更したいですか?
参考までに、Amazon AWS、Vultrなどのサービスは、サイト規模が大きく、訪問者の多くの場合に適している可能性があります。
サイトを作成し始める場合は、高価なホスティング会社を利用する必要はありません。 「海外ホスティング Cloudways vs. Amazon AWS vs. Vultr vs. 一般ウェブホスティング」に関する次の記事を参照してください。
https://avada.tistory.com/2660