5

最近、Webサイトの形式を(htmlではなく)phpに変更しました。つまり、すべてのHTMLページの名前を.php拡張子に変更し、.htaccessファイルのリンクを修正しました。

Googleアナリティクスを使用して新しいphpページを追跡する必要があるため、Googleのjavascriptスニペットを含む別のphpファイルを作成しました。<body>私はそれを私のウェブサイトのルートに配置し、タグの後に次のコードを使用して、各phpタグをそれにリンクしました。

<?php include_once("analyticstracking.php") ?>

私の問題は、これが私のindex.phpページでのみ機能しているように見えることです。他のすべてのページが見つかりませんanalyticstracking.php(Dreamweaverでは、「'analyticstracking.php'はローカルディスクにありません。取得してください」と表示されます)

リンクを(「/」を追加して)変更すると、次のようになります。

<?php include_once("/analyticstracking.php") ?>

その後、すべてのページでファイルを見つけることができますが、Googleアナリティクスは私のアクティビティを追跡していないようです。

これをテストするために「Analytics-RealTime」を使用しています。

これが私のURLwww.brp-architects.comです。(現在使用中

<?php include_once("/analyticstracking.php") ?>

このコードに「/」を付けると、すべてのページでトラッキングコードのphpファイルを見つけることができます)。

私がこれを行っている理由は、PHPコードのスニペットを使用して、プロキシサーバーのIPの背後にあるWebサイト訪問者のIPアドレスを取得できるようにするためです。

<?
if (getenv(HTTP_X_FORWARDED_FOR)) {
    $ip_address = getenv(HTTP_X_FORWARDED_FOR);
} else {
    $ip_address = getenv(REMOTE_ADDR);
}

?>

ご回答ありがとうございます!

これが、analyticstracking.phpファイルからの私の追跡スニペットです。

<script type="text/javascript">

var _gaq = _gaq || [];
  _gaq.push(['_setAccount', 'UA-5434990-2']);
  _gaq.push(['_trackPageview']);
  setTimeout('_gaq.push([\'_trackEvent\', \'NoBounce\', \'Over 30 seconds\'])',30000);

(function() {
    var ga = document.createElement('script'); ga.type = 'text/javascript'; ga.async = true;
    ga.src = ('https:' == document.location.protocol ? 'https://ssl' : 'http://www') + '.google-analytics.com/ga.js';
    var s = document.getElementsByTagName('script')[0]; s.parentNode.insertBefore(ga, s);
  })();

</script>

私のトラッキングコードへのリンクは、開始ボディタグのすぐ下にあります。

<?php include_once("/analyticstracking.php") ?>
4

2 に答える 2

4

index.phpで動作する場合、analyticstracking.phpスクリプトは問題ありません。

これを引き起こす可能性があるのは、これを他のスクリプトに含める方法です。

そのスクリプトのパスが他のスクリプトで正しいことを確認してください。
必ず次のように含めてください:

include($_SERVER['DOCUMENT_ROOT'].'PATH-TO-SCRIPT/analyticstracking.php');
于 2012-07-10T10:23:23.897 に答える
0

これはさまざまな方法で解決できます。まず、include_path 変数 http://il.php.net/manual/en/ini.core.php#ini.include-pathを変更できます。

次に、 getcwd()を使用して index.php で独自のグローバル変数を初期化することができます。

于 2012-07-10T10:22:03.727 に答える