MW WP Form
MW WP Form

「MW WP Form」で管理者宛メールのみに遷移元のページタイトルを表示させる方法

あまり、需要がないかもしれませんが、あったので備忘録として書いておきます。
あるサイトでMW WP Formを使ってお問い合わせフォームを作成していたのですが、お問い合わせで入力された内容を読んでみても、何に対するお問い合わせか分からないお問い合わせがありました。お問い合わせしてきた方に聞けばわかるのですが、お問い合わせの前に見ていたページタイトルが分かれば、メールの内容で分からなくても、何に対するお問い合わせかが、予測が付くのではないのかということです。でも、フォームのフォーマットは現状のままにしたい、から管理者宛メールだけに、ページタイトルを表示したいという要望でした。

MW WP Form のURL引数を有効にするを使う

「URL引数を有効にする」を使うと、遷移元のタイトルやメタデータをお問い合わせフォームに渡すことが可能です。下記サイトを参考にしました。

まず、MW WP FormをWordPressにインストールして有効化します。その後、メールフォームを作成(詳細な作成方法は割愛します。)したら、右下の方にある [URL引数を有効にする] にチェックを入れてください。

URL引数を有効にするにチェック

お問い合わせ先ページへのリンク作成

[URL引数を有効にする] にチェックを入れて、フォームを更新したらテーマファイルに、お問い合わせ先へのリンクを作成します。この時、URL引数を取得できるように、コードを作成します。

お問い合わせのリンクアドレスに?post_id=<?php echo $post->ID; ?>を追加します。これで、お問い合わせリンクの完成です。

管理者宛メールにページタイトルが表示されるように設定

これで、{post_title} を管理者宛メール設定に記載すれば、管理者宛メールに遷移元のページタイトルが表示されると思い早速やってみると…
管理者宛メールにはまだ、遷移元ページタイトルが表示されていませんorz

なので、hiddenフィールドを使い、一度フォームにページタイトルの値を渡すことにしました。
[フォームタグを追加]の左にある、プルダウンメニューから、[hiddenフィールド] を選択します。

hiddenフィールド

[hiddenフィールド] を作成したら下記のようなコードが挿入されます。

この部分に value="{post_title}"を追加して、遷移元ページタイトルを値を渡します。

mwform_hidden-** の ** 部分は[hiddenフィールド] 作成時に自動で割り振られます。適時置き換えてください。

管理者宛メールへの設定

ここまでできたら、管理者宛メール設定に先程作成した[hiddenフィールド] のname値を入力します。

管理者宛メール設定

これで、管理者宛メールに遷移元のページタイトルが表示されるようになります。
もっとうまい方法があるかも…

なかなかニッチな内容ですが誰かの参考になれば幸いです。


JunJunWeb.Netの新着情報を受け取るには
SNSアカウントをフォローすると便利