отслеживание аналитики с помощью веб-сайта php
Недавно я изменил формат своего веб-сайта на php (а не html), т.Е. Я переименовал все свои HTML-страницы с расширением .php и исправил ссылки в своем файле .htaccess.
Мне нужно отслеживать мои новые php-страницы с помощью Google analytics, поэтому я создал отдельный php-файл, содержащий фрагмент кода javascript от Google. Я разместил его в корне своего веб-сайта и связал с ним каждый из моих тегов php с помощью этого кода после тега <body>
:
<?php include_once("analyticstracking.php") ?>
Моя проблема в том, что это только похоже, работает с моим index.php страница. Все мои другие страницы не могут найти analyticstracking.php
(в Dreamweaver написано "аналитический анализ.php' отсутствует на локальном диске. Получить")
Если я изменю ссылку (добавив "/") на:
<?php include_once("/analyticstracking.php") ?>
Затем все мои страницы могут найти файл, но google analytics, похоже, не отслеживает мою активность.
Я использую "Аналитику в реальном времени", чтобы проверить это.
Вот мой URL-адрес www.brp-architects.com . (В настоящее время используется
<?php include_once("/analyticstracking.php") ?>
Как этот код, с помощью "/" позволяет всем моим страницам находить мой php-файл кода отслеживания).
Вся причина, по которой я это делаю, заключается в том, что я могу использовать фрагмент кода PHP для получения IP-адресов посетителей моего сайта, используя 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") ?>
2 answers
Если это работает на index.php , затем analyticstracking.php сценарий в порядке.
Причиной этого может быть то, как вы включаете это в другие сценарии.
Просто убедитесь, что путь к этому сценарию правильный в других сценариях.
Чтобы быть уверенным, включите вот так:
include($_SERVER['DOCUMENT_ROOT'].'PATH-TO-SCRIPT/analyticstracking.php');
Вы можете решить эту проблему многими способами. Во-первых, вы можете изменить переменную include_path http://il.php.net/manual/en/ini.core.php#ini.include-path
Во-вторых, вы можете инициализировать свою собственную глобальную переменную в index.php с помощью getcwd()