我需要向Magento模板添加跟踪代码,非常简单,但是当用户注册时我在确认页面上需要它,但是当它发生时,他被重定向到索引页面,就像任何登录用户一样。
我认为通过覆盖帐户控制器来添加一个步骤,因为没有这样的配置(或者我无法找到它),但即使它只是一个方法覆盖confirmAction来处理重定向,它也不会看起来是最好的方式,因为这个重定向会根据几件事情多次调用并添加会话消息。
有什么想法吗?
答案 0 :(得分:0)
我知道你能做到这一点的唯一真正方法就是挂钩controller_action_postdispatch_customer_account_createPost
事件。如果您不知道如何操作,请查看this Wiki page。
在你的观察者中,做这样的事情:
// Store a simple boolean that flags this user as just having registered
Mage::getSingleton('core/session')->setUserJustRegistered(true);
然后,在任何页脚模板中,执行以下操作:
<?php if (Mage::getSingleton('core/session')->getUserJustRegistered()): ?>
<!-- INSERT TRACKING CODE HERE -->
<?php Mage::getSingleton('core/session')->setUserJustRegistered(null); ?>
<?php endif; ?>
请注意,我们会将会话变量重置为null
,以便您的跟踪代码不会在每个页面上触发。