私のウェブサイトへの着信トラフィックが検索エンジンに応じて情報を追加するように、php を使用しています。$_SESSION['kw'] を設定しています。まだ設定されていない場合は、それが seo であることを知らせ、検索語を追加します。
if (isset($result['q']))
$_SESSION['kw'] = 'seo-'.str_replace('\\"',"X",$result['q']);
elseif (isset($result['p']))
$_SESSION['kw'] = 'seo-'.$result['p'];
else {some other stuff}
q は google、msn、ask がクエリに使用するもので、p は yahoo 用です。これにより、着信トラフィックのほとんどがカバーされます。わかりましたので、参照ページが yahoo の場合は Y、google の場合は G、msn M などを追加するように少し変更したいと思います。
私は試した:
if (isset($result['q'])& strstr($_SERVER['HTTP_REFERER'],'google'))
$_SESSION['kw'] = 'seo-G-'.str_replace('\\"',"X",$result['q']);
elseif (isset($result['q'])& !strstr($_SERVER['HTTP_REFERER'],'google'))
$_SESSION['kw'] = 'seo-M-'.str_replace('\\"',"X",$result['q']);
elseif (isset($result['p']))
$_SESSION['kw'] = 'seo-Y-'.$result['p'];
else {some other stuff}
しかし、最初の IF を真にすることはできません。ask.com から来た場合、「seo-M が追加されました」と表示されますが、Google から来た場合でも、追加することはできません。フォーマットが間違っているだけですか?