当你点击“注册”时,Magento在Onepage结账的URL中添加“@ister”

时间:2012-08-08 02:52:12

标签: magento checkout magento-1.7

我一直使用magento 1.5。在那里,当我在Onepage结帐的第一步中点击REGISTER时,该页面会自动打开表格进行注册而无需重新加载。

现在我正在研究magento 1.7上的一家商店,我意识到它运作不佳。当我进入Onepage结帐并点击REGISTER时,Magento重新加载页面,加载表单并在URL中添加“& register”,例如:www.domain.com/checkout/onepage/&register。

我已经尝试了几种方法来禁用重新加载和这个“& register”..我想保持这个页面像magento 1.5 ..我还看到Magento 1.7中的其他商店没有这个问题。任何人都可以帮助我吗?

1 个答案:

答案 0 :(得分:3)

它是持久模块的原因(自Magento 1.6起)

查看模板文件:

app/design/frontend/[base/default]/[default/yourTheme]/template/persistent/checkout/onepage/login.phtml

这行代码:

<?php if ($this->getQuote()->isAllowedGuestCheckout()): ?>
    <button id="onepage-guest-register-button" type="button" class="button" onclick="checkout.setMethod();"><span><span><?php echo $this->__('Continue') ?></span></span></button>
<?php else: ?>
    <form action="<?php echo $this->getUrl('persistent/index/saveMethod'); ?>">
        <button id="onepage-guest-register-button" type="submit" class="button"><span><span><?php echo $this->__('Register') ?></span></span></button>
    </form>
<?php endif; ?>

查看表单操作 - &gt;它是重新加载页面的原因

它如何更改模板?

app/design/frontend/[base/default]/[default/yourTheme]/layout/persistent.xml

这行代码:

<checkout_onepage_index>
    <reference name="checkout.onepage.login">
        <action method="setTemplate"><template>persistent/checkout/onepage/login.phtml</template></action>
        <block type="persistent/form_remember" name="persistent.remember.me" template="persistent/remember_me.phtml" />
    </reference>
    <reference name="checkout.onepage.billing">
        <action method="setTemplate"><template>persistent/checkout/onepage/billing.phtml</template></action>
        <block type="persistent/form_remember" name="persistent.remember.me" template="persistent/remember_me.phtml" />
        <block type="core/template" name="persistent.remember.me.tooltip" template="persistent/remember_me_tooltip.phtml" />
    </reference>
</checkout_onepage_index>

如果您没有使用持久性模块,可以通过更改app / etc / modules / Mage_Persistent.xml <active>false</active>

来禁用它。

看起来该模块已经整齐地创建,所以如果你禁用它就不会破坏任何东西虽然我不太确定

其他方法是更改​​模板,将该行代码更改为:

<button type="button" class="button" onclick="checkout.setMethod();"><span><span><?php echo ($this->getQuote()->isAllowedGuestCheckout() ? $this->__('Continue') : $this->__('Register')) ?></span></span></button>