2016-07-14 21 views
0

マーケティング情報を追跡するために、GoogleのウェブサイトのURLにかなり簡単なカスタムパラメータを追加し始めました。例として、www.example.com?campaign = facebook & device = mobileがあります。WordPressのURLパラメータとしてカスタム変数を渡す方法

問題は、これらのカスタムパラメータがWordPressによって1つのページから次のページにプッシュされるのをブロックするという問題です。私は、(1)アプリケーションが記入されるまでこれらのパラメータを保存するためのクッキーを追加するか、(2)これらを認識させるWordPressサイトのPHPにいくつかのコードを追加するそれらをプッシュスルーすることができます。私は#2の方が簡単だと思いますが、私は本当に分かりません。

私はこのコードが見つかりました:

function add_query_vars_filter($vars){ 
    $vars[] = "campaign"; 
    return $vars; 
} 
add_filter('query_vars', 'add_query_vars_filter'); 

をしかし、それは動作していないようです。コードを誤って書き込んだり、間違った場所に置いたり、間違ったことをすべて使っているかどうかはわかりません。私はWordPressサイトのfunctions.phpファイルに入れました。どんな助けでも大歓迎です!

答えて

0

私は間違いなくオプション1に行き、ページが読み込まれるとすぐにクッキーを設定します。あなたは、ウェブサイト上のすべてのリンクの周りにあなたの後に続くクエリ文字列変数を望んでいません。

まず、$ _GETリクエストを確認し、設定されている場合はクッキーを保存します。

if (isset($_GET['campaign']){ 
    setcookie("campaign", $_GET['campaign'], time()+3600); /* expire in 1 hour */ 
} 

次に、Cookieが設定されているかどうかを確認し、それに応じてビジネスロジックを編集します。

if(isset($_COOKIE['campaign'])) { 
echo "Welcome back it looks like you came from the '" . $_COOKIE['campaign'] . "' campaign!"; 
} 

希望します。

+0

ありがとうございました!このコードをどこに追加しますか? header.php、functions.php、index.phpまたは他の場所? – Amanda

関連する問題