私はWordpressで参照登録システムを作成しようとしています。アイデアは、ユーザーがwp-login.php?action = register&ref = 12345を含むリンクをクリックするということです。
私は 'register_form'アクションフックに夢中になっていて、参照番号の隠し入力を追加しています。登録時には、その参照番号を使用して必要なことをすべて実行します。
この問題は、ユーザーが登録フォームで問題を起こしたときに発生します。問題は、登録フォームのaction属性に、refパラメータなしで "wp-login.php?action = register"と表示されている場所に移動することです。そのアクション属性を変更する方法を探しています。 wp-login.phpファイルを調べたところ、フィルタがないようです。
私はいつもJavaScriptがあることを知っていますが、これを行うための別のワードプレスの方法はありますか?
あなたはregister_form_validation
フック(あなたがすでに使っているのと同じフックかもしれません。それらがどこでバリデーションをするのかわからない)にフックして次のようなものを追加することができるはずです。
function my_register_validation() {
if(isset($_GET['ref'])){
header('Location: http://www.example.com/wp-login?action=register&ref=$_GET[ref]');
}
add_filter(' my_register_validation', 'register_form');
私はそれが上のコードがテストされていない正しい考えであると思います、しかし私はそれがあなたを正しい軌道に乗せると思います。
あなたはそれを秘密のフォーム値に追加していると言ったので、代わりに$_POST['secret_value']
を使うことができるかもしれません。