私は自分のウェブサイトでWooCommerceを使用しています。カスタムログインとサインアップページを作成しました。標準のmy-account
ログインページを表示する代わりに、新しいユーザーはカスタムログインページに移動します。ユーザーがリンクをクリックすると、カスタム登録ページにリンクします。「リセットパスワード」のURLを変更するwooocommerce
これらのページはどちらも問題なく動作します。この問題は、パスワードセクションを失ったを作成したときに発生します。もともとユーザーはmy-account/lost-password
になっていましたが、カスタムページを作成したいので、新しいパスワードページを作成する必要がありました。
このページは正しく動作しています。ユーザーがユーザー名またはパスワードを入力してボタンをクリックすると、パスワードをリセットできるページに移動するためにクリックする必要があるURLリンクが電子メールに送信されます。これは私が問題を抱えているところです。
当初のユーザーはmy-account
ページになりましたが、これを避けるために、ユーザーは自分のカスタムページを使用する必要があります。
ユーザーがに行く必要がURLを指定したメール内のコードはそうのようなものです:私は私のカスタムページをポイントし、ユーザーが自分のパスワードをリセットできるようにするために上記のURLを取得するにはどうすればよい
<a class="link" href="<?php echo esc_url(add_query_arg(array('key' => $reset_key, 'login' => rawurlencode($user_login)), wc_get_endpoint_url('lost-password', '', wc_get_page_permalink('myaccount')))); ?>"><?php _e('Click here to reset your password', 'woocommerce'); ?></a>
。彼らはそれをリセットしたとき、それはユーザーのパスワードを更新しませんでした
<a class="link" href="<?php echo esc_url(add_query_arg(array('key' => $reset_key, 'login' => rawurlencode($user_login)), get_page_link(1839))) ; ?>"><?php _e('Click here to reset your password', 'woocommerce'); ?></a>
しかし:私は自分のページに私を指示するURLを取得するために管理しましたが、それを変更します。
UPDATE この問題は私のカスタムフォームに渡されていない$reset_key
と$user_login
に何かあるようです。使用している場合:使用している場合
<a class="link" href="<?php echo esc_url(add_query_arg(array('key' => $reset_key, 'login' => rawurlencode($user_login)), wc_get_endpoint_url('lost-password', '', wc_get_page_permalink('myaccount')))); ?>">
しかし、$reset_key
と$user_login
の値を持っている私のフォーム上の隠し入力は、あります
<a class="link" href="<?php echo esc_url(add_query_arg(array('key' => $reset_key, 'login' => rawurlencode($user_login)), wc_get_endpoint_url('lost-password', '', wc_get_page_permalink('myaccount')))); ?>"><?php _e('Click here to reset your password', 'woocommerce'); ?></a>
これらの隠し入力は値を持ちません。
これらのパラメータをカスタムフォームに渡して、非表示の入力を埋め込み、ユーザーのパスワードを更新する方法はありますか?