コラム
column
2023.02.08
カスタムフィールドでMW WP Formも自由自在!MW WP Formの送信内容にカスタムフィールドの内容を出力する方法
お久しぶりです。少し遅くなりましたが新年あけましておめでとうございます。
本日のブログですが、最近ありました案件でワードプレスでカスタムフィールドの内容をFormの送信内容に含めるというものがありました。
そこで調べていたらわかりやすい記事がありましたので、それをもとに簡単に設定出来るコードを作ってみました。
▼参考外部リンク(URLにパラメータをつけずにMW WP Formを埋め込んだページのタイトルを取得する)
https://www.netimpact.co.jp/diary/23011/
設定方法
【MW WP Form側のショートコードの設定】
【MW WP Form側のショートコードの設定】
[mwform_text name="input-test01"]
[mwform_hidden name="Formの使用されているnameを入力"]
//hiddenで設定するとページには内容が表示されませんが情報は取得出来ているのでこちらのほうが使い勝手はいいかもしれません。
【function.php側のコードの設定】
function my_mwform_value( $value, $name ) {
global $post;
$post_id = $post->ID;
if ( $name === 'input-test01' ) {
$getitem_name = get_field('test01',$post_id);
return $getitem_name;
}
if ( $name === 'Formの使用されているnameを入力' ) {
$getitem_name = get_field('カスタムフィールドの使用されているフィールド名を入力',$post_id);
return $getitem_name;
}
return $value;
}
add_filter( 'mwform_value_mw-wp-form-***', 'my_mwform_value', 10, 2 ); //***にフォーム識別子の数字を入力
この設定の利点
ページ毎にフォームを作成する機会がある場合にうまく設定できればMW WP Form側の設定を省略することができます。
下記のようなイメージになります。
例)ページ内にカスタムフィールドで会社情報を掲載 その情報をMW WP Form側の自動返信メールの本文にも表示したい。
ページ設定
[mwform_hidden name="会社情報"]
自動返信メール本文設定
会社情報:{会社情報}
注意点
あくまでinputの中にカスタムフィールドの中身を出力するので、書き換えが可能になってしまいます。
使い道には気を付けてください。
書き換え可能なので、重要な情報、書き換えられたくない情報はまた別の方法で出力することを検討してください。
ちなみにhiddenフィールドにしておけばある程度知識のある人でない限り弄れないため、そちらでの設定のほうが使い勝手もがいいかもしれません。