質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.50%
WordPress

WordPressは、PHPで開発されているオープンソースのブログソフトウェアです。データベース管理システムにはMySQLを用いています。フリーのブログソフトウェアの中では最も人気が高く、PHPとHTMLを使って簡単にテンプレートをカスタマイズすることができます。

PHP

PHPは、Webサイト構築に特化して開発されたプログラミング言語です。大きな特徴のひとつは、HTMLに直接プログラムを埋め込むことができるという点です。PHPを用いることで、HTMLを動的コンテンツとして出力できます。HTMLがそのままブラウザに表示されるのに対し、PHPプログラムはサーバ側で実行された結果がブラウザに表示されるため、PHPスクリプトは「サーバサイドスクリプト」と呼ばれています。

Q&A

解決済

1回答

3316閲覧

wordpress 新規登録時の拡張方法はありますか?

blossan

総合スコア154

WordPress

WordPressは、PHPで開発されているオープンソースのブログソフトウェアです。データベース管理システムにはMySQLを用いています。フリーのブログソフトウェアの中では最も人気が高く、PHPとHTMLを使って簡単にテンプレートをカスタマイズすることができます。

PHP

PHPは、Webサイト構築に特化して開発されたプログラミング言語です。大きな特徴のひとつは、HTMLに直接プログラムを埋め込むことができるという点です。PHPを用いることで、HTMLを動的コンテンツとして出力できます。HTMLがそのままブラウザに表示されるのに対し、PHPプログラムはサーバ側で実行された結果がブラウザに表示されるため、PHPスクリプトは「サーバサイドスクリプト」と呼ばれています。

0グッド

0クリップ

投稿2016/12/28 01:06

御世話になります。

現在 wordpress で会員制のサイトを構築しています。
ログイン機能実装のため、「WP-Members: Membership Framework」というプラグインを実装しています。
イメージ説明

ユーザ登録時のバリテーション機能として、こちらで予めデーターベースに登録した番号を、ユーザに入力し一致したら、登録を許可するものを実現したいと考えてます。

ユーザの新規登録情報の追加が、「WP-Members: Membership Framework」で簡単に出来ました。その後の拡張をどのように進めればよいか悩んでいます。

プラグインのphpを直接編集するのは難しく危ないと考え、functions.php に add filter で追加処理が出来ればと考えています。

この場合、add filter でバリテーションを設定し、データベースでの登録あるいは不許可として、エラーメッセージを表示できるでしょうか?

別の方法で、同様の内容が出来ればどのような方法でも構いません。
よろしくお願いします。

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

guest

回答1

0

ベストアンサー

wpmem_pre_register_dataアクションフックが使えるのではないでしょうか。
このアクションにバリデーションを行う関数をフックすればいけそうな気がします。

PHP

1 2 /** 3 * Fires before any insertion/emails. 4 * 5 * This action is the final step in pre registering a user. This 6 * can be used for attaching custom validation to the registration 7 * process. It cannot be used for changing any user registration 8 * data. Use the wpmem_register_data filter for that. 9 * 10 * @since 2.7.2 11 * 12 * @param array $fields The user's submitted registration data. 13 */ 14 do_action( 'wpmem_pre_register_data', $fields );

参考URL

PHP

1add_action( 'wpmem_pre_register_data', 'my_reg_hook' ); 2 3function my_reg_hook( $fields ) 4{ 5 // this example just outputs what is in the $fields 6 // array so you can see what's in it, then it quits. 7 echo "<pre>"; print_r( $fields ); echo "</pre>"; 8 exit(); 9 10 // in a real, working use of this action, you can 11 // do whatever you need to do with registration 12 // data before it is inserted. If that includes 13 // validation, you can stop registration and return 14 // an error message to the user by globalizing 15 // $wpmem_themsg and giving it your error message: 16 17 // global $wpmem_themsg; 18 // $wpmem_themsg = 'your error message...'; 19}

投稿2016/12/28 08:18

退会済みユーザー

退会済みユーザー

総合スコア0

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

blossan

2016/12/29 00:33

追加するためのアクションを教えて頂きありがとうございます。
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.50%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問