Magento的侧边栏定制(Magento Sidebar Customization)

2019-09-28 01:45发布

我有一个Magento的网站,该网站的香港专业教育学院定制rightside栏静态块的罚款。

它显示,因为它应该在除了产品页面中的所有页面。

这是不是需要编辑在布局XML文件,Magento的控制面板内或内的其他设计文件?

谢谢!

更新:

问题是,全球右侧栏显示的是一切都理所应当,但是在产品页面仍然显示旧版本,无需赔偿。

Answer 1:

你只需要在产品视图XML更新添加到您的local.xml中布局文件(或创建一个)。 该文件将位于:

/app/design/frontend/your_package/your_theme/layout/local.xml

你会需要的XML的一个删节的版本是:

<?xml version="1.0"?>
<layout version="0.1.0">

<!-- Layout Handle for Product View Page -->
<catalog_product_view>

    <!-- Reference Pointing to Right Sidebar -->
    <reference name="right">

        <!-- Enter All Right Sidebar Layout Updates Here -->

    </reference>

</catalog_product_view>

</layout>

如果你还有你的改名右边栏的东西,改变上面你改变了它的引用名称。 下面是一些快速参考,以显示你可以通过local.xml中安排的内容:


移动或删除块

    <reference name="right">

        <!-- Removes Block By Name -->
        <remove name="name_of_removed_block"/>

        <!-- Insert Moved Block (Must Unset First, See Left Reference) -->
        <action method="insert">
            <blockName>name_of_unset_block</blockName>
            <siblingName>name_of_adjacent_block</siblingName>
            <after>1</after> <!-- 0 = Before / 1 = After Sibling Block -->
        </action>

    </reference>

    <reference name="left">

        <!-- Unset Block By Name, Can Be Inserted Elsewhere As Above -->
        <action method="unsetChild">
            <name>name_of_unset_block</name>
        </action>

    </reference>



添加一块从一个模板文件

    <!-- Blocks Left and Right Automatically Load All Child Html -->
    <reference name="right">

        <!-- Load New Block From Template File -->
        <block type="core/template" name="new_block_name" template="page/html/newblock.phtml" after="adjacent_block_name" />

    </reference>

    <!-- Some Blocks (Like Header) Require Child Html to be Called After Set in XML -->
    <reference name="header">

        <!-- Adding a Block Below Won't Be Enough To Add Our Template File Here -->
        <block type="core/template" name="new_header_block" template="page/html/headerblock.phtml" />

    </reference>


不添加将立即显示所有块,有时你需要到父块的模板文件中去添加子块,你想。 在上面的例子中,我使用的“报头”块,对于任何实际加入我不得不直接编辑一个.phtml文件。 (除非你改变你的header.phtml只使用$这 - >直到最底层的(“”);因为没有块名称表明的Magento应该载入所有子html块。)

在这种情况下,我们将不得不做出改变,以header.phtml,并在该文件(/app/design/frontend/your_package/your_theme/page/html/header.phtml)的地方,你将需要添加:

<?php echo $this->getChildHtml('new_header_block'); ?>

在这里您将看到您的块加入到头部。

这应该让你在正确的方向开始。 确认没有您页/产品/类别在他们的记录上,可能会影响在前面显示的内容,以及后端的任何自定义布局的XML。



文章来源: Magento Sidebar Customization