経由サイトをお知らせメールに表示したい
どうも。だいぶ更新が遅れてしまいました。
ファイルをダウンロードする際に、ユーザーにメールアドレスを入力してもらい、
その後ダウンロードサイトに移動するという流れのなかで、ユーザーがどのサイトから来たのかを知りたかった。
サイトの分だけメールフォームを作成するのもあとあとのメンテナンスが大変なので、
下記のような流れにしました。
サイトC.jpはWordpressの固定ページ。固定ページにはPHPは直接記入することができない。
そのため、使用しているテーマのfunction.phpにショートコードを作成して固定ページ内に挿入することにした。
サイトA.netの【banner】
<a href=”http://サイトA.net/?page_id=xxxxx&from=site_a” target=”_blank”><img src=”バナーのURL” /></a>
サイトB.comの【banner】
<a href=”http://サイトB.com/?page_id=xxxxx&from=site_b” target=”_blank”><img src=”バナーのURL” /></a>
サイトC.jp(固定ページ)の【ダウンロードページへ】ボタン
<a href=”https://サイトC.jp/mailform.php?from=[param name=’from’]” target=”_blank”><img src=”ボタン画像のURL” /></a>
function.php
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 |
if ( ! function_exists( 'get_param_val' ) ) : function get_param_val($atts2) { // デフォルトの配列 $atts1 = array( // デフォルト値の設定(ここではデフォルトは値なし) "name" => "" ); // デフォルトの配列に引数で受け取った配列をマージ extract(shortcode_atts($atts1, $atts2)); // パラメータの値を取得 $val = (isset($_GET[$name]) && $_GET[$name] != "") ? $_GET[$name] : ""; // エスケープ処理 $val = htmlspecialchars($val, ENT_QUOTES); // $valを戻り値として設定(ショートコードの値となる) return $val; } endif; // ショートコード[param]にget_param_val関数をセット add_shortcode("param", "get_param_val"); |
メール送信用.php
メール本文に ‘経由サイト:’. $_GET[‘from’].; を挿入。
以上で、ダウンロード通知メールにてどのサイト経由かがわかるようになりました!!
↓↓大変参考にさせていただいたサイト↓↓
WordPressの記事内にURLのパラメータ値を[ショートコード]で取得して表示させる方法
http://mae.chab.in/archives/2521
[wordpress] テーマ内で新しい関数を使う場合は、function_existsを使おう
http://xxxx7.com/2014/05/16/100042
リンク元(参照元)のURLで条件分岐をする方法
http://nangoku-ski-club.sakura.ne.jp/wordpress/?p=5468