WordPressプラグイン「MW WP Form」でハマったログ

2016.08.22

WordPressのプラグイン「MW WP Form」のアクションフックについて、調査に時間がかかったので備忘録です。

前提

今回、プラグイン「MW WP Form」で作られたお問い合わせフォームの機能追加を依頼されました。お問合せを実行すると「問合せ実行者」「管理者」にメールが送信されます。

やりたいこと

メールの送信完了後、お問合せフォームの入力情報を外部のサービスへ登録したい、との依頼でした。
※MW WP Formの標準機能では対応できないサービスです。

対応方法

MW WP Formのアクションフックを利用することにしました。
以下、参考にしたサイトです
プラグイン API/アクションフック一覧
MW WP Form 公式マニュアル

アクションフックは使うタイミング別で数種類用意されているようですが、今回はメール送信後に処理をしたいので以下を使用します。

  • mwform_after_send_mw-wp-form-xxx

実装方法

MW WP Formの公式マニュアルを参考にfunctions.phpへ関数を追加します。

// wp-content/themes/テンプレート名/functions.php
function my_mwform_after_send( $Data ) {
// 処理を記入
}
add_action( 'mwform_after_send_mw-wp-form-xxx', 'my_mwform_after_send' );

以上で完成です。基本的にはこれだけでOK、好きな処理を関数の中に書いていけば動いてくれます。

以下、私のハマったログ。

入力フォームのデータどうやって取るの

引き数 $Data の中に入力情報が詰まっています。取得方法は以下の通り。

// フォームキーを取りたい場合
$Data->get_form_key();
// 入力内容を取りたい場合
$Data->gets();

xxxに何を記入して良いか分からない

add_action( 'mwform_after_send_mw-wp-form-xxx', 'my_mwform_after_send' );

xxxは「mwform_after_send_mw-wp-form-xxx」の末尾3文字のことです。
何を記入してあげれば良いのか困惑しましたが、ここにはフォームキーを入力すればOKでした。管理画面の以下からフォームキーを確認できます。
form

おわりに

以上、悩んだ箇所でした。マニュアルは日本語で内容もしっかり書かれているので悩んだら読みましょう。読み飛ばし、読み忘れ、確認漏れが今回のハマりの主な原因です。

今回はじめてアクションフックの存在を知りましたが、とっても便利ですね!ちょっと感激しました。時間がなくて機能を理解しきれなかったので、「詳しく調べて理解する」を課題にしたいと思います。

関連する記事

CATEGORY

ARCHIVE

NEW