簡體   English   中英

Omniture跟蹤和jQuery

[英]Omniture tracking and jQuery

我一直在創建一些網站,這些網站的內容是通過jQuery和CSS調用#div容器來提取的。 有誰知道在創建這些類型的一頁網站時使用Omniture Site Catalyst跟蹤代碼的方法嗎? 可能?

以前,我一直在通過將以下由軟件提供的難以理解的代碼插入來將Omniture與更傳統的html站點一起使用。 在哪種情況下,它似乎都可以跟蹤所有.html頁面。

       <!-- SiteCatalyst Code version: H.17.
Copyright 1997-2008 Omniture, Inc. More info available at
http://www.omniture.com -->
<script language="JavaScript" type="text/javascript" src="http://www.urlofsite.com/js/s_code.js"></script>
<script language="JavaScript" type="text/javascript"><!--
/************* DO NOT ALTER ANYTHING BELOW THIS LINE ! **************/
var s_code=s.t();if(s_code)document.write(s_code)//--></script>
<script language="JavaScript" type="text/javascript"><!--
if(navigator.appVersion.indexOf('MSIE')>=0)document.write(unescape('%3C')+'\!-'+'-')
//--></script><noscript><a href="http://www.omniture.com" title="Web Analytics"><img
src="http://code.urlofsite.com/b/ss/ranhrollup/1/H.17--NS/0"
height="1" width="1" border="0" alt="" /></a></noscript><!--/DO NOT REMOVE/-->

<!-- End SiteCatalyst code version: H.17. -->
</body>
</html>

無論如何,是否有辦法將其分解,並使用將跟蹤代碼應用於特定#div# if語句創建幾行Javascript?

更新:

我與一位專家交談,他說您可以在onClick事件中添加其他st()調用,以便將您希望跟蹤的任何內容添加為其他頁面視圖。 例如,您為“ Books”鏈接設置了以下click事件處理程序

$('a.manned-flight').click(function() {
  $('html, body').animate({
  scrollTop: 1250
}, 1000, function() {
  parallaxScroll(); // Callback is required for iOS
});
  return false;
});

您可以向該函數添加跟蹤代碼,以指定其他pageName,並發送另一個“頁面視圖”圖像請求,如下所示:

$('a.manned-flight').click(function() {
  s.pageName = "www.urlofwebsite.com:Books";
  s.t();
  $('html, body').animate({
    scrollTop: 1250
  }, 1000, function() {
    parallaxScroll(); // Callback is required for iOS
  });
  return false;
});

但是,隨着網站的規模以及我必須定義的內容區域的數量,這似乎是一種不切實際的方法,並且在代碼方面有些笨拙。 無論如何,使用Javascript數組可以做到這一點嗎?

許多個月前,我不得不為Web CMS系統設置Omniture的分析工具,特別是我們公司的產品和購物車組件。 該代碼包含在我們網站模板的每個頁面(即包含文件)中。 假設您的站點不是完全靜態的站點,則可以執行相同的操作,將代碼放入.js文件,模板,包含文件,母版頁,視圖(無論您使用哪種方法在整個站點范圍內重用)。 如果我沒記錯的話,Omniture堅決要求在結束body標簽之前准確輸入代碼。 代碼到位后,編寫一些javascript將值分配給特定變量,以用於在Omniture代碼中設置適當的值。 例如,如果您的頁面偶然創建了一個漂亮的SEO標題,則可以從標題中提取值以用於Omniture頁面名稱。 這只是一個例子。

另一方面,如果您的站點是靜態站點,則選擇起來並不容易。 如果您可以控制div的生成方式,那么情況會更好。 我的意思是,如果您可以按常規方式將數據返回給div,則可以使用javascript或自己喜歡的javascript庫(例如jQuery)為Omniture變量生成適當的信息。 更進一步,如果您完全控制了HTML的生成方式,則可以添加一個特定的類來注意這一點,例如a.manned-flight的示例。 但是,我會為所有類型的點擊尋找更通用的東西。

就像我說的那樣,如果您可以控制要渲染的數據,那么從渲染的HTML中提取數據將變得更加容易。 否則,將很難提供Omniture所需的有意義的信息。 希望這可以幫助。

由於缺乏對您的問題的了解,這就是我的想法。 假設您的數據采用標准格式,例如下面的示例。

<div class="product-item">
    <input class='item-title' type='hidden' value='Book Title #1 Specific Page Name'/>
    <input class='other-stuff-for-analytics' type='hidden' value='More stuff here'/>
    <h3>Book Title #1</h3>
    <p>Description of Book Title #1 and some junk...</p>
</div>
<div class="product-item">
    <input class='item-title' type='hidden' value='Book Title #2 Specific Page Name'/>
    <input class='other-stuff-for-analytics' type='hidden' value='More stuff here'/>
    <h3>Book Title #2</h3>
    <p>Description of Book Title #2 and some junk...</p>
</div>
<div class="product-item">
    <input class='item-title' type='hidden' value='Book Title #3 Specific Page Name'/>
    <input class='other-stuff-for-analytics' type='hidden' value='More stuff here'/>
    <h3>Book Title #3</h3>
    <p>Description of Book Title #3 and some junk...</p>
</div>

<!-- The code below could be in your template/include file/master page/view/ .js file -->
<script>
    $('div.product-item').click(function () {
        var analyticsPageName = "";
        /* Possibly pull the value from hidden input  */
        analyticsPageName = $(this).children('input.item-title').val();

        /* OR Pull the information from the block of HTML that has the page title */
        analyticsPageName = $(this).children('h3').text();

        // ---OR---
        //whatever else you need to do to scrape your HTML
        //to get the information to plug into a variable

        s.pageName = analyticsPageName;
        s.t();
        $('html, body').animate({
            scrollTop: 1250
        }, 1000, function () {
            parallaxScroll(); // Callback is required for iOS
        });
        return false;
    });
</script>

我認為Jquery有一個名為jquery.address的插件庫,該庫實現了對基於JQuery的操作的自動跟蹤。 如果該庫是本地配置的Google Analytics(分析) ,但在過去我還添加了Omniture SiteCatalyst代碼。

你可以試試看。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM