首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何将当前视图名称传递到我的Google Analytics元素?

如何将当前视图名称传递到我的Google Analytics元素?
EN

Stack Overflow用户
提问于 2013-05-08 16:42:58
回答 1查看 233关注 0票数 0

我在一个Cake多页排序过程中设置GA。一个要求是,“URL”推送应该包括一个表示自定义_trackPageview路径的变量,这取决于过程的当前步骤(即_gaq.push(['_trackPageview', '/dsl/shop/availability/$url_addendum']);

我确实将GA JS代码片段设置为一个蛋糕元素google_analytics.ctp:

代码语言:javascript
复制
<?php
$gaCode = Configure::read('xxx.ga.tracking_code');

if (!isset($url_addendum))
    $url_addendum = '';

if ($gaCode) {
$googleAnalytics = <<<EOD
<script type="text/javascript">

  var _gaq = _gaq || [];
  _gaq.push(['_setAccount', '$gaCode']);
  _gaq.push(['_trackPageview', '/xxx/shop/availability/$url_addendum']);
  _gaq.push(['_gat._anonymizeIp']);
  _gaq.push(['_setDomainName', 'xxx']);

  (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>
EOD;
echo $googleAnalytics;
}
?>

订单流程是使用布局shop.ctp显示的,我在其中将echo $this->element('google_analytics');添加到了页眉部分。当然,这可以很好地工作。

我现在的问题是,我需要使用自定义的$url_addendum参数来触发_trackPageView,分别针对订单流程的每个视图/步骤。但不会产生页面视图的副本,也不会调用每个视图的主体内的整个GA元素。

所以我猜问题是:有没有一种方法可以把GA元素调用留在布局的头部(自然应该是imho),并在不使用_trackEvent的情况下调用自定义_trackPageviews?

有没有一种方法可以将视图名称向上传递到布局,以便以echo $this->element('google_analytics', array('url_addendum' => 'currentview'));的形式调用form?

EN

回答 1

Stack Overflow用户

发布于 2013-05-09 00:37:07

从CakePHP透视图中,您可以在视图模板中访问以下内容:

控制器(例如PostsController)

代码语言:javascript
复制
echo $this->request->params['controller'];

操作(例如索引)

代码语言:javascript
复制
echo $this->request->params['action'];

视图(例如,默认情况下,索引视图与相应的操作同名)

代码语言:javascript
复制
echo $this->view;

URL (例如,帖子/添加)

代码语言:javascript
复制
echo $this->request->url;

您可以选择其中哪些值适合您的使用,但我认为没有理由不能将这些值中的一个或多个直接回显到您的JavaScript代码片段中。

我希望这能帮到你!

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/16436207

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档