AForms — Form Builder For Price Calculator & Cost Estimation
Wordpressのプラグイン。フォームを作成できる。
フォームに入力されたデータを扱ったカスタマイズ
下記のフィルターを利用することで取り扱いが可能な模様。
- Hooks (Actions and Filters) | WordPress's form builder plugin: AForms
特に、aforms_compose_report_mail
フィルターを使用して、フォーム送信後にカスタム処理を追加することが可能。本来通知メールのカスタマイズを行うためのものだが、別の用途にも使用できる。
具体的にはWordPressテーマのfunctions.php
ファイルに下記のようなコードを追加することで処理の追加が可能。下記の例はForm, Order, Mailのそれぞれのオブジェクトの中身を表示しメールで送信する処理。
add_filter('aforms_compose_report_mail', 'custom_form_processing', 10, 3);
function custom_form_processing($mail, $form, $order) {
// デバッグ情報を作成
$debug_info = "<h2>Form Object</h2><pre>" . print_r($form, true) . "</pre>";
$debug_info .= "<h2>Order Object</h2><pre>" . print_r($order, true) . "</pre>";
$debug_info .= "<h2>Mail Object</h2><pre>" . print_r($mail, true) . "</pre>";
// 管理者メールアドレスを取得
$admin_email = get_option('admin_email');
// デバッグメールを送信
wp_mail($admin_email, 'AForms Debug Information', $debug_info, array('Content-Type: text/html; charset=UTF-8'));
return $mail;
}