我的模块需要一些额外的输入,所以我更改了结算phtml来执行此操作。 在mymodule.xml中:
<checkout_onepage_index>
<remove name="right"/>
<reference name="checkout.onepage.billing">
<action method="setTemplate"><template>workspace/mymodule/persistent/checkout/onepage/billing.phtml</template></action>
</reference>
</checkout_onepage_index>
删除标记工作正常,但操作不会设置我的模块的新模板。 我尝试使用de same指令更改persistent.xml并且工作正常。 我的代码出了什么问题?
编辑:config.xml
<?xml version="1.0" encoding="UTF-8"?>
<config>
<modules>
<Xpd_Evolucardgateway>
<version>1.1.6</version>
</Xpd_Evolucardgateway>
</modules>
<global>
<models>
<evolucardgateway>
<class>Xpd_Evolucardgateway_Model</class>
</evolucardgateway>
</models>
<resources>
<evolucardgateway_setup>
<setup>
<module>Xpd_Evolucardgateway</module>
</setup>
<connection>
<use>core_setup</use>
</connection>
</evolucardgateway_setup>
<evolucardgateway_write>
<use>core_write</use>
</evolucardgateway_write>
<evolucardgateway_read>
<use>core_read</use>
</evolucardgateway_read>
</resources>
<blocks>
<evolucardgateway>
<class>Xpd_Evolucardgateway_Block</class>
</evolucardgateway>
</blocks>
<helpers>
<evolucardgateway>
<class>Xpd_Evolucardgateway_Helper</class>
</evolucardgateway>
</helpers>
<sales>
<quote>
<totals>
<encargo>
<class>evolucardgateway/total_encargo</class>
<after>subtotal, tax</after>
<before>grand_total</before>
</encargo>
</totals>
</quote>
</sales>
<fieldsets>
<sales_convert_quote_address>
<base_encargo>
<to_order>*</to_order>
</base_encargo>
<encargo>
<to_order>*</to_order>
</encargo>
</sales_convert_quote_address>
<sales_convert_order>
<base_encargo>
<to_invoice>*</to_invoice>
<to_shipment>*</to_shipment>
<to_cm>*</to_cm>
</base_encargo>
<encargo>
<to_invoice>*</to_invoice>
<to_shipment>*</to_shipment>
<to_cm>*</to_cm>
</encargo>
</sales_convert_order>
</fieldsets>
<evolucardgateway>
<cc>
<types>
<visa>
<code>visa</code>
<name>Visa</name>
<order>0</order>
</visa>
<mastercard>
<code>mastercard</code>
<name>MasterCard</name>
<order>20</order>
</mastercard>
<amex>
<code>amex</code>
<name>American Express</name>
<order>30</order>
</amex>
<diners>
<code>diners</code>
<name>Diners Club</name>
<order>40</order>
</diners>
<elo>
<code>elo</code>
<name>ELO</name>
<order>50</order>
</elo>
</types>
</cc>
</evolucardgateway>
</global>
<frontend>
<translate>
<modules>
<Xpd_Evolucardgateway>
<files>
<default>Xpd_Evolucardgateway.csv</default>
</files>
</Xpd_Evolucardgateway>
</modules>
</translate>
<routers>
<evolucardgateway>
<use>standard</use>
<args>
<module>Xpd_Evolucardgateway</module>
<frontName>evolucardgateway</frontName>
</args>
</evolucardgateway>
</routers>
<layout>
<updates>
<evolucardgateway>
<file>evolucardgateway.xml</file>
</evolucardgateway>
</updates>
</layout>
</frontend>
<default>
<payment>
<evolucardgateway>
<active>1</active>
<model>evolucardgateway/standard</model>
<title>Evolucard</title>
<mostrar_parcelamento>1</mostrar_parcelamento>
<cctypes>visa,mastercard,elo,amex,diners</cctypes>
<environment>0</environment>
<allowspecific>0</allowspecific>
<useccv>1</useccv>
</evolucardgateway>
</payment>
</default>
</config>
答案 0 :(得分:1)
我删除了之前的回答,因为我误解了这个问题并误解了代码。
可能的问题是您的模块的操作指令正在进行评估,但之前正在评估Mage_Persistent
模块的布局更新XML文件。因此,您对_template
属性的更改将被覆盖。
要解决此问题,请在Mage_Persistent
模块的配置文件后加载模块的配置文件。结果是您的模块的布局更新文件将添加到布局更新文件列表 persistent.xml 之后。这完全 <depends />
节点的目的:
<?xml version="1.0"?>
<config>
<modules>
<Your_Module>
<active>true</active>
<codePool>local</codePool>
<depends>
<Mage_Persistent />
</depends>
</Your_Module>
</modules>
</config>