Отслеживание поддоменов IFrame с помощью Google Analytics - PullRequest
2 голосов
/ 17 января 2012

У меня есть сайт, который я создал для компании, в которой я работаю.Этот сайт находится на поддомене и размещается в виде iframe на сайте розничной торговли другой компании, поскольку мы предлагаем услуги в соответствии с ними.Есть ли хороший способ отследить это с помощью Google Analytics?Я никогда раньше не отслеживал субдомен, не говоря уже о iframe.

Я создал тестовую учетную запись аналитики и добавил домен верхнего уровня, но я только размещаю код отслеживания на страницах субдомена.на котором я создал сайт.Это даже даст мне какую-нибудь информацию?и если эта часть работает, точна ли информация из настроек iframe?Я знаю, с точки зрения дизайна, iframe как бы выключен в своем собственном мире в мире, но есть ли у кого-нибудь опыт, как Google видит такой сайт?

Я искал на форумах и в других местах.Я мог бы подумать, и у них есть немного информации о поддоменах, практически ничего о фреймах и ничего, что объединяет их.У меня нет доступа к добавлению кода отслеживания на розничный сайт компании-партнера.

Ответы [ 2 ]

4 голосов
/ 17 января 2012

Если размещенный на сайте iframe контент не находится в том же домене, что и родительская страница (что я собираюсь предположить, не исходя из контекста вашего вопроса), то Google сообщит имя страницы как URL-адрес iframe, а не родительская страница.

В коде GA есть способ переопределить имя страницы по умолчанию, однако в этом случае невозможно получить родительский URL-адрес, поскольку это считается межсайтовым скриптингом (XSS).

Единственный способ получить информацию о родительской странице в этом случае для тех, кто имеет контроль над родительской страницей, имеющей тег iframe, передать родительский URL-адрес в iframe, добавив параметр строки запроса в iframe src = Атрибут «...» (то же самое относится и к любой другой информации, которую вы хотите передать на страницу iframe). Затем вы можете написать некоторый javascript для извлечения этих значений из URL и извлекать все, что вы хотите, включая переопределение сообщаемого по умолчанию имени страницы (что вы должны сделать, установив необязательный 2-й параметр для вызова _trackPageview).

Если содержимое iframe находится в том же домене (даже если оно является поддоменом родительской страницы), вы можете получить доступ к свойствам родительской страницы, используя parent.window.whwhat вместо window.whither.

1 голос
/ 17 января 2012

Ну, насколько я понимаю, у вас есть страница, которая будет вставлена ​​в iframe на вторую страницу, но нам нужно знать, является ли страница, на которой будет размещен iframe, тем же доменом, что и вызывающая страница:

  • Если страница, вызываемая iframe в том же домене, что и вызывающая страница:

В этом случае вы можете вставить блок JavaScript Google Analytics, как и iframe на главной странице, так и у нас есть данные измерений с основного сайта, iframe.

  • Если страница, которая вызывает iframe, принадлежит другому домену:

Некоторые из измеренных функций представлены в рамках сайта. Эти iframes указывают домен, например, site.com.br. Всякий раз, когда страница в одном домене имеет фрейм в другом домене, запрещает куки-файлы браузера, которые хранятся в Iframe, что в данном случае может помешать измерению.

Cookies - это не что иное, как небольшие текстовые файлы, которые сохраняются вашим браузером на компьютере. Большинство наших файлов cookie являются сеансовыми файлами cookie, которые автоматически удаляются с вашего жесткого диска при закрытии окна. Постоянные файлы cookie также используются веб-сайтами для облегчения идентификации вашего компьютера при следующем посещении сайта. В вашем браузере может быть выполнена деактивация файлов cookie, однако это исключит все функции, доступные на сайте.

Для разрешения записи файлов cookie следует добавить заголовки P3P на HTTP-сервере, который обслуживает страницы. Этот заголовок не вызывает изменений в режиме отображения или работе страниц. Просто попросите ваш браузер разрешить запись файлов cookie третьих сторон, однако, он играет большую роль в Internet Explorer. Если вы не установили, вы можете получать данные из других браузеров (Google Chrome, Firefox, Opera и т. Д.), Но Internet Explorer по-прежнему широко использует массовое население.

Представьте, что у нас есть четыре разных домена:

www.site1.com
www.site2.com
www.site3.com
www.site4.com

Эти четыре страницы получат тег iframe:

На странице anuncio.php должен быть заголовок вызова p3p для принятия сторонних файлов cookie.

Чтобы добавить заголовок p3p, используйте код ниже (должен быть добавлен ко всем страницам, которые принадлежат одному домену)

ASP.Net

HttpContext.Current.Response.AddHeader ("p3p", "CP = \" "PSA CONE NOI ONL OUR BUS \" "")

PHP

header ('P3P: CP = "NOI PSA CONE ONL OUR BUS"');

1043 * JSP *

response.setHeader ("P3P", "CP =" NOI PSA CONE ONL OUR BUS '")

ColdFusion

<cfheader name="P3P" value="CP='PSA CONo OUR ONL NOI BUS'" />

Я надеюсь, что помог:)

...