我正在尋找在Magento(1.7)網站上爲通訊訂閱設置Google Analytics目標。表單指向'newsletter/subscriber/new /'。 A)此網址是否會在Google Analytics中用作目標網址? B)我在哪裏可以找到Magento結構中的這個文件夾?爲Magento時事通訊設置Google Analytics目標
我想知道是否可以檢查遺傳代碼是否已添加到此通訊/訂閱者/新/文件夾中指向的任何頁面,因此它將被跟蹤?
我正在尋找在Magento(1.7)網站上爲通訊訂閱設置Google Analytics目標。表單指向'newsletter/subscriber/new /'。 A)此網址是否會在Google Analytics中用作目標網址? B)我在哪裏可以找到Magento結構中的這個文件夾?爲Magento時事通訊設置Google Analytics目標
我想知道是否可以檢查遺傳代碼是否已添加到此通訊/訂閱者/新/文件夾中指向的任何頁面,因此它將被跟蹤?
對於B來說,答案是,有這個沒有具體的文件夾: 的URL newsletter/subscriber/new/
引用的方法newAction()
,您可以通過檢查URL找到:第一個元素newsletter
指通訊模件(Mage/Newsletter
) ,第二個元素subscriber
指的是此模塊中的控制器Mage/Newsletter/controllers/SubscriberController.php
),第三個元素指的是此控制器中的操作newAction()
。 裏面newAction()
方法是定義一個重定向:$this->_redirectReferer();
此方法_redirectReferer()
從類Mage_Core_Controller_Varien_Action
繼承:
protected function _redirectReferer($defaultUrl=null)
{
$refererUrl = $this->_getRefererUrl();
if (empty($refererUrl)) {
$refererUrl = empty($defaultUrl) ? Mage::getBaseUrl() : $defaultUrl;
}
$this->getResponse()->setRedirect($refererUrl);
return $this;
}
所以,通過訂閱通訊,newAction()
被調用的方法,該方法在結束重定向到在referer中給出的頁面,這是您開始訂閱的頁面。給定一個基本的Magento安裝,新聞訂閱塊的前端模板是app/design/frontend/base/default/newsletter/subscription.phtml
。
我不知道Google Analytic Goals是如何設置的,但這可能會幫助您作爲起點。
看看@_trackPageview(opt_pageURL)
然後在你的通訊模板,你可以做這樣的事情
<script type="text/javascript">
//<![CDATA[
var newsletterSubscriberFormDetail = new VarienForm('newsletter-validate-detail');
newsletterSubscriberFormDetail.submit = function(button, url) {
if (this.validator.validate()) {
_gaq.push(['_trackPageview', '/newsletter/subscriber/successful']);
var form = this.form;
var oldUrl = form.action;
if (url) {
form.action = url;
}
var e = null;
try {
this.form.submit();
} catch (e) {
}
this.form.action = oldUrl;
if (e) {
throw e;
}
}
}.bind(newsletterSubscriberFormDetail);
//]]>
</script>
然後創建你的目標網址爲「/通訊/用戶/成功」;
你也只是這一行添加到該按鈕的onclick /提交事件,但該數據被驗證
_gaq.push(['_trackPageview', '/newsletter/subscriber/successful']);
感謝在此之前,這意味着,通訊/用戶/新這是不準確的,因爲它/不行。訂閱區塊是前端/ em0021/default/template/newsletter/subscribe.phtml。我只是想知道,如果添加此路徑足以顯示訂閱是否成功,就如您在訂閱框中輸入電子郵件地址時不會離開實際頁面一樣,則只會在頁面頂部顯示一條消息,感謝您的訂閱。'對於GA目標,您指定一個「謝謝」頁面作爲目的地,以證明它已成功。也許我會嘗試在GA目標中添加這個.phtml頁面,看看會發生什麼。 – zalia 2013-05-12 13:09:10
如果您需要重定向到特殊頁面,您可以在這裏找到一個簡單的解決方案,只需在訂閱表單中添加一些代碼即可:http://www.drewgillson.com/blog/magento-redirect-page-newsletter-subscription/ 。對於一般使用Magentos重定向方法,這可能會有所幫助:http://blog.chapagain.com.np/magento-redirect-functions/,但爲此,我認爲你將不得不在自定義模塊中重寫'SubscriberController.php' ,所以第一個解決方案更容易.. – 2013-05-12 13:22:36
感謝您的建議。目前不想重定向,但可能做到這一點,這最後一件事情是行不通的:我已經設置第二個目標與一個事件(而不是URL目標)與行動:/通訊/訂戶/新/。我將不得不看看他們中的一個是否會返回一些結果,如果他們工作,會在這裏發佈。 – zalia 2013-05-12 13:48:38