我有 3 个问题,我的正常谷歌搜索工作没有回答。我是一名内部前端 Web 开发人员,过去两周一直在尝试学习 Magento。我也是在 Stack Overflow 上发帖的新手,所以让我知道这些是否会更好地发布为单独的问题或其他内容。
1. 布局 - 使每个页面都使用相同的布局
所以我的大部分页面都使用我的 2columns-left 布局,但不是全部。我在我的 local.xml 中有一些设置,还有一些我只是直接在 .phtml 页面中硬编码。我原以为以下代码会使所有页面使用相同的布局:
<reference name="root">
<action method="setTemplate"><template>page/2columns-left.phtml</template></action>
<action method="setIsHandle">
<applied>1</applied>
</action>
</reference>
当我在网站上工作时,我通常看不到很多页面,它们都使用默认的 Magento 布局,例如启用 /cookies 的页面或评论页面。如果您想在整个站点上使用相同的布局,而不是在 local.xml 中为每个页面设置这样的块,那么统一所有页面的最佳做法是什么?
2. 联系我们表格 - 点击提交按钮不起作用
我正在编辑 CMS>Pages 下的联系我们页面,我想我可能错过了我的表单操作指向的文件。表格出现了,但没有提交。
这是我在联系我们 CMS 页面上的内容:
{{block type='core/template' name='contactForm' form_action="/contacts/index/post/" template='contacts/form.phtml'}}
这是单击提交按钮后出现的错误:
Not Found
The requested URL /contacts/index/post/ was not found on this server.
我已经完成了配置设置,我认为这些是正确的,但也许我还有其他事情要做。
3. 产品评论 - 获得“总体”评级以显示
在您登录并添加评论后,我的产品页面上显示了使用 form.phtml 的评论 div,但未显示评级。我显然不满足控制是否应显示评级的 if 语句的条件。下面是我相信它被抓住的 if 语句:
<?php if( $this->getRatings() && $this->getRatings()->getSize()): ?>
我不确定如何满足这些条件。
4. 重新排列块 - 使用 local.xml 重新排列块的去向
在我开始养成坏习惯之前,我想确保我从一开始就使用最佳实践。我通常只是进入模板文件并手动移动内容出现在 phtml 中的位置,但我听说最好在 XML 中进行这些更改。我似乎无法弄清楚的一个特殊问题是一个看似简单的问题:如何使“继续结帐”按钮移动到购物车的底部?
我正在尝试取消设置它,然后在其他块之后重新设置它。我什至无法让 unsetChild 部分工作。这是我来自 local.xml 的代码:
<reference name="content">
<action method="unsetChild">
<name>checkout.cart.top_methods</name>
</action>
</reference>
我认为这不起作用的原因是因为在 checkout.xml 中它是孩子的孩子。这是 checkout.xml 的一般流程:
<checkout_cart_index>
<reference name="content">
<block name="checkout.cart">
**<block name="checkout.cart.top_methods">**
有任何想法吗?非常感谢,对这篇文章的长度感到抱歉!