2

AFAIK,DotNetNuke 网站会自动生成您的 Google Analytics 跟踪代码。

最近,如果您希望使用人口统计等新功能,Google 建议更改您需要使用的跟踪代码(为此)。知道如何自定义 DotNetNuke 生成的 GA 代码吗?

我查看了 DNN 数据库,发现那里不存在 GA 代码或 UA。还没有运气检查语言编辑器。

4

3 回答 3

7

在网站根目录 (httpdocs) 中编辑 SiteAnalytics.config 似乎是正确的解决方案。

/Config/SiteAnalytics.config 中的 GA 代码不会影响页面中呈现的内容。正如 Chris 在下面提到的,这可能是为每个新门户生成的内容。

于 2013-10-20T09:06:22.290 回答
3

请注意,我使用的是 DNN 7

你用的是什么版本?

这是我的根 SiteAnalytics.config 文件中的所有内容:

<?xml version="1.0" encoding="utf-8" ?>
<AnalyticsEngineConfig>
    <Engines>
        <AnalyticsEngine>
            <EngineType>DotNetNuke.Services.Analytics.GoogleAnalyticsEngine, DotNetNuke</EngineType>
            <ElementId>Head</ElementId>
            <InjectTop>False</InjectTop>
            <ScriptTemplate>
                <![CDATA[     

                <script type="text/javascript">

                      (function(i,s,o,g,r,a,m){i['GoogleAnalyticsObject']=r;i[r]=i[r]||function(){
                      (i[r].q=i[r].q||[]).push(arguments)},i[r].l=1*new Date();a=s.createElement(o),
                      m=s.getElementsByTagName(o)[0];a.async=1;a.src=g;m.parentNode.insertBefore(a,m)
                      })(window,document,'script','//www.google-analytics.com/analytics.js','ga');

                      ga('create', '[TRACKING_ID]');
                      ga('send', 'pageview');

                </script>

          ]]>
            </ScriptTemplate>
        </AnalyticsEngine>
    </Engines>
</AnalyticsEngineConfig>

粘贴并上传到您的 ftp。确保您正在测试的网站在该网站的谷歌分析设置中设置了谷歌跟踪 ID,否则此代码将不会显示。

于 2013-10-25T15:23:21.087 回答
2

对于 DNN 9.x:

那里有一些指南,但它们不是完全最新的,所以下面我编译了更完整的步骤。

https://blog.bayareasearchengineacademy.org/web-analytics/how-to-install-and-configure-google-tag-manager-in-dotnetnuke-dnn/

http://www.dnnsoftware.com/community-blog/cid/155268/using-google-tag-manager-with-dnn

以上两者都在正文中插入了 Google 跟踪代码管理器脚本和 noscript 代码。这并不理想。Google 想要在 HEAD 中使用 script 标签,在 BODY 中使用 noscript 标签。

他们的指南也没有描述如何更新隐藏在 DNN Community 9.x 安装中的 Tracking_ID。这是如何做到这一切的。

  1. 按照 Google 的说明设置您的帐户和容器。https://support.google.com/tagmanager/answer/6103696?hl=en&ref_topic=3441530

  2. 使用上述链接中的“添加、更新和发布标签”部分设置一个新的“标签”并选择“通用分析”的“标签类型”。在“谷歌分析设置”下拉列表中选择“新变量”并输入您要跟踪的网站的谷歌分析“跟踪 ID”。给“标签”一个“所有页面”的“触发器”。

  3. 保存所有内容并命名您的变量并标记“Universal Analytics Variable”和“Universal Analytics Tag”之类的内容。

  4. 您现在应该回到您的 Google 跟踪代码管理器“工作区”的主页。查看右上角并单击类似于“JTF-F9CBJA”的工作区 ID。复制代码并注意说明。

  5. 通过 FTP 转到您的 DNN 安装并找到位于您网站根目录中的“SiteAnalytics.config”。编辑 SiteAnalytics.config 使其类似于下面的第一个示例代码。请注意,我创建了 XML 以在 HEAD 顶部插入“script”标签,在 BODY 中插入“noscript”标签。

  6. 现在转到 DNN 门户的根目录。默认根位于“/portals/0”。如果您有多个门户,则需要针对每个门户遵循这些说明。

  7. 找到文件 GoogleAnalytics.config。查找值为“TrackingId”的“SettingName”节点。将其下方的“SettingValue”更改为您的 Google Tag Assistant“工作区 ID”(来自您在上面保存的代码)。如果您的 GoogleAnalytics.config 中没有这些节点,请从下面的第二个代码示例中复制。保存文件。

  8. 重新加载您更新的网站。检查源代码是否在 HEAD 中插入了“script”代码,在 BODY 中是否插入了“noscript”代码。

  9. 如果您使用的是 Chrome,请从商店安装“Tag Assistant”扩展程序并使用它来验证您页面上的代码是否正常工作。

  10. 请注意,默认情况下,DNN 不会为管理员插入 GA 代码,除非您选中“Track for Administrators”框。我个人选中该框,以便我的跟踪代码管理器正确显示代码。默认情况下,Google Analytics 会过滤掉已知的管理员,所以我觉得它不安全。

代码示例 1 - SiteAnalytics.config

<?xml version="1.0" encoding="utf-8" ?>
<AnalyticsEngineConfig>
<Engines>
    <AnalyticsEngine>
        <EngineType>DotNetNuke.Services.Analytics.GoogleAnalyticsEngine, DotNetNuke</EngineType>
        <ElementId>Head</ElementId>
        <InjectTop>True</InjectTop>
        <ScriptTemplate>
            <![CDATA[     

                <!-- Google Tag Manager -->
                <script>(function(w,d,s,l,i){w[l]=w[l]||[];w[l].push({'gtm.start':
                new Date().getTime(),event:'gtm.js'});var f=d.getElementsByTagName(s)[0],
                j=d.createElement(s),dl=l!='dataLayer'?'&l='+l:'';j.async=true;j.src=
                'https://www.googletagmanager.com/gtm.js?id='+i+dl;f.parentNode.insertBefore(j,f);
                })(window,document,'script','dataLayer','[TRACKING_ID]');</script>
                <!-- End Google Tag Manager -->        

            ]]>
        </ScriptTemplate>
    </AnalyticsEngine>
    <AnalyticsEngine>
        <EngineType>DotNetNuke.Services.Analytics.GoogleAnalyticsEngine, DotNetNuke</EngineType>
        <ElementId>Body</ElementId>
        <InjectTop>False</InjectTop>
        <ScriptTemplate>
            <![CDATA[     

                <!-- Google Tag Manager (noscript) -->
                <noscript><iframe src="https://www.googletagmanager.com/ns.html?id=[TRACKING_ID]"
                height="0" width="0" style="display:none;visibility:hidden"></iframe></noscript>
                <!-- End Google Tag Manager (noscript) -->     

            ]]>
        </ScriptTemplate>
    </AnalyticsEngine>
</Engines>
</AnalyticsEngineConfig>

代码示例 2 - GoogleAnalytics.config

<?xml version="1.0" encoding="utf-8"?>
<AnalyticsConfig xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema">
  <Settings>
    <AnalyticsSetting>
      <SettingName>TrackingId</SettingName>
      <SettingValue>ENTER YOUR WORKSPACE ID HERE</SettingValue>
    </AnalyticsSetting>
    <AnalyticsSetting>
      <SettingName>UrlParameter</SettingName>
      <SettingValue />
    </AnalyticsSetting>
  </Settings>
</AnalyticsConfig>

*最后:这一切都需要一些严肃的技术工作,因此使用这些说明需要您自担风险。

于 2017-08-04T17:35:12.923 回答