0

マーケティング ソースを追跡するために、かなり単純なカスタム パラメータを Web サイトの URL に追加し始めました。たとえば、www.example.com?campaign=facebook&device=mobile などです。

問題は、WordPress がこれらのカスタム パラメータを 1 つのページから次のページにプッシュするのをブロックしていることです。(1.) アプリケーションが入力されるまでこれらのパラメータを保存する Cookie を追加するか、(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ファイルに入れました。どんな助けでも大歓迎です!

4

1 に答える 1

0

間違いなくオプション 1 を使用し、ページが読み込まれるとすぐに Cookie を設定します。Web サイトのすべてのリンクをたどるクエリ文字列変数は必要ありません。

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

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!";
}  

お役に立てれば。

于 2016-07-14T04:40:58.300 に答える