我需要在成功页面的头标记上呈现一个特殊脚本。
我创建了这个文件 luisvalenciaaffiliatecj.xml 路径:/app/design/frontend/base/default/layout/luisvalenciaaffiliatecj.xml
<?xml version="1.0"?>
<layout version="0.0.1">
<checkout_onepage_success>
<reference name="head">
<block type="core/template" name="cj_udo" template="cj/udo.phtml" />
</reference>
</checkout_onepage_success>
</layout>
我的config.xml(参见布局更新部分)
这是社区下的文件夹结构 http://screencast.com/t/WGEobN5ocjJE
<?xml version="1.0" encoding="UTF-8"?>
<config>
<modules>
<Luisvalencia_Affiliate>
<version>0.0.1</version>
</Luisvalencia_Affiliate>
</modules>
<layout>
<updates>
<luisvalencia_affiliate>
<file>luisvalenciaaffiliate.xml</file>
</luisvalencia_affiliate>
</updates>
</layout>
<global>
<models>
<luisvalencia_affiliate>
<class>Luisvalencia_Affiliate_Model</class>
</luisvalencia_affiliate>
</models>
<helpers>
<affiliate>
<class>Luisvalencia_Affiliate_Helper</class>
</affiliate>
</helpers>
</global>
<frontend>
<events>
<controller_action_predispatch>
<observers>
<luisvalencia_affiliate>
<class>luisvalencia_affiliate/observer</class>
<method>captureReferral</method>
<type>singleton</type>
</luisvalencia_affiliate>
</observers>
</controller_action_predispatch>
</events>
</frontend>
</config>
我没有在日志上看到任何错误,但是代码没有被执行,因为我看不到我应该在head标签上呈现的标签。
答案 0 :(得分:2)
&LT;布局&GT;部分应在&lt; frontend&gt;下。所以你的config.xml应该是这样的:
<?xml version="1.0" encoding="UTF-8"?>
<config>
<modules>
<Luisvalencia_Affiliate>
<version>0.0.1</version>
</Luisvalencia_Affiliate>
</modules>
<global>
<models>
<luisvalencia_affiliate>
<class>Luisvalencia_Affiliate_Model</class>
</luisvalencia_affiliate>
</models>
<helpers>
<affiliate>
<class>Luisvalencia_Affiliate_Helper</class>
</affiliate>
</helpers>
</global>
<frontend>
<layout>
<updates>
<luisvalencia_affiliate>
<file>luisvalenciaaffiliate.xml</file>
</luisvalencia_affiliate>
</updates>
</layout>
<events>
<controller_action_predispatch>
<observers>
<luisvalencia_affiliate>
<class>luisvalencia_affiliate/observer</class>
<method>captureReferral</method>
<type>singleton</type>
</luisvalencia_affiliate>
</observers>
</controller_action_predispatch>
</events>
</frontend>
</config>
在head.phtml
中的echo $this->getChildHtml('cj_udo');
中添加此代码