- 2010-04-06 (火) 10:47
- 技術メモ
こんにちは。ごぶさたしておりました。販促格さんこと堺です。
Google Analytics のキーワード解析を見ているとcontact form 7 で携帯でリダイレクトする方法を探して訪問してくる方が多いようなので、その方法をご紹介します。
携帯でリダイレクトする方法は…
$_SERVER["REQUEST_URI"] = "/request-send";
と、REQUEST_URI を飛ばしたいURIに書き換えるだけ。これだけです。
拍子抜けしました?
ただ、これをどのタイミングでやるか、どこに記述するかですが、
contact form 7 にはいくつかアクションフックが用意されており、
そのうちの一つにメール送信直前のフック wpcf7_before_send_mail があります。
メール送信直前ということは、入力チェックもOKであとは「ありがとうございました」のメールを送る段階。
つまり、サンキューページへ飛ばすタイミングにはちょうどいい。
なので、自作のプラグインなどに以下のように追記すればOK。
add_action( 'wpcf7_before_send_mail', 'my_conversion' );
function as_conversion( $cf7 )
{
// 申し込みフォームIDによって飛ばすページを振り分けたいならIDをチェック
if( $cf7->id == 1 )
{
$_SERVER["REQUEST_URI"] = "/request-send";
}
}
申し込みフォームIDは contact form 7 のタグが [contact-form 1 "フォーム"] となっていればIDは1です。
タグ: php, wordpress, カスタマイズ
大変参考になりました。ありがとうございます。
関数名と追加しているactionがas_conversionとmy_conversionで違うのはtypoでしょうか?
タイプミスです。ご報告ありがごうございます。