【问题标题】:Magento 1.9 Show Newest Products in FooterMagento 1.9 在页脚显示最新产品
【发布时间】:2014-10-13 13:07:06
【问题描述】:

编辑:事实证明,下面的解决方案实际上是正确的。事实证明,我的 vagrant box 没有安装 php5-gd,因此 magento 无法执行图像处理,但 PHP 没有显示错误说它没有安装。所以一定要安装 php5-gd :P

美好的一天!

我目前正在开发一个基于 Magento 1.9 的电子商务网站,我基本上是在进行的过程中逐渐掌握它。我目前正在采用静态设计并将其转换为 Magento 主题。

我试图在商店的页脚区域显示商店中 6 种最新产品的图片(带有链接),但我发现的教程和问题对我不起作用。

我基本上已经从静态模板中取出页脚并将其粘贴到我的主题 footer.phtml 文件中。该设计要求在 html 中像这样显示六张图像(如果这有意义?)

<div class="medium-6 large-3 columns newlyAdded">
    <div class="footerHat"></div>
    <h3> Newly Added</h3>
    <div class="row">
        <ul class="small-block-grid-3">
            <li><img src="./images/footer-image-1.jpg" alt="footer image"></li>
            <li><img src="./images/footer-image-2.jpg" alt="footer image"></li>
            <li><img src="./images/footer-image-3.jpg" alt="footer image"></li>
        </ul>
    </div>
    <p></p>
    <div class="row">
        <ul class="small-block-grid-3">
            <li><img src="./images/footer-image-4.jpg" alt="footer image"></li>
            <li><img src="./images/footer-image-5.jpg" alt="footer image"></li>
            <li><img src="./images/footer-image-6.jpg" alt="footer image"></li>
        </ul>
    </div>
</div>

我最初的想法是将它粘贴到一个静态块中,然后从 Magento 的模型中循环一些东西,但我不确定这是否是最好的方法。

任何帮助将不胜感激,当然我会提供尽可能多的信息:)

谢谢

编辑:额外信息

page.xml 文件中的页脚相关内容:

<block type="page/html_footer" name="footer" as="footer" template="page/html/footer.phtml">
    <block type="page/html_wrapper" name="bottom.container" as="bottomContainer" translate="label">
        <label>Page Footer</label>
        <action method="setElementClass"><value>bottom-container</value></action>
    </block>
    <block type="page/switch" name="store_switcher" as="store_switcher" template="page/switch/stores.phtml"/>
    <block type="page/template_links" name="footer_links" as="footer_links" template="page/template/links.phtml"/>
</block>

<block type="core/text_list" name="before_body_end" as="before_body_end" translate="label">
    <label>Page Bottom</label>
    <block type="page/html_cookieNotice" name="global_cookie_notice" as ="global_cookie_notice" template="page/html/cookienotice.phtml" before="-" />
</block>

<reference name="footer">
    <block type="catalog/product_new" name="home.catalog.product.new" alias="product_new" template="catalog/product/new.phtml">
        <action method="setProductsCount"><count>4</count></action>
    </block>
</reference>

footer.phtml 文件(默认 magento 版本)

<div class="footer-container">
    <div class="footer">
        <?php echo $this->getChildHtml() ?>
        <p class="bugs"><?php echo $this->__('Help Us to Keep Magento Healthy') ?> - <a href="http://www.magentocommerce.com/bug-tracking" onclick="this.target='_blank'"><strong><?php echo $this->__('Report All Bugs') ?></strong></a> <?php echo $this->__('(ver. %s)', Mage::getVersion()) ?></p>
        <address><?php echo $this->getCopyright() ?></address>
    </div>
</div>

custom_page.xml:

<?xml version="1.0"?>
<layout>
    <custom_layout translate="label">
        <label>Custom layout</label>
        <reference name="root">
            <action method="setTemplate"><template>page/custom_layout.phtml</template></action>
            <action method="setIsHandle"><applied>1</applied></action>
        </reference>
    </custom_layout>
</layout>

【问题讨论】:

    标签: php html css magento e-commerce


    【解决方案1】:

    Magento 已经具备此功能,您可以使用以下代码在页脚/要显示的任何位置显示新产品

    <reference name="footer">
    <block type="catalog/product_new" name="home.catalog.product.new" alias="product_new" template="catalog/product/new.phtml" after="cms_page">
    <action method="setProductsCount"><count>4</count></action>
    </block>
    </reference>
    

    注意我认为您已经遵循 Magento 的主题化方式并具有“引用页脚”,如果您愿意,您可以将块代码放在任何引用调用中,并可以直接在您的页脚中调用它.phtml。

    如果您想设置布局样式,请在“app/design/frontend/{themepackage}/{themename}”中创建“app/design/frontend/base/default/template/catalog/product/new.phtml”的副本/template/catalog/product/new.phtml”并修改布局。

    如果您有任何疑问,请随时发表评论!希望这会有所帮助!

    【讨论】:

    • 嗨达拉姆,感谢您的超级快速回复。据我所知,我正在使用主题化页脚的参考方式(从默认模板复制 footer.phtml)。当我尝试这样做但它使页脚消失时,我在参考块和 page.xml 的默认 page/html_footer 块中尝试了它,我得到了相同的结果。如果我发布 footer.phtml 文件和其他一些文件会有帮助吗?感谢您的帮助!
    • 您能否从代码中删除 [after="cms_page"] 并在您的 Magento 根目录的 index.php 中尝试一次添加以下内容以进行调试 ini_set('display_errors',1); error_reporting(E_ALL);
    • 嗨。我试过了,我仍然得到相同的结果,页脚消失了,我没有收到任何错误。我可以提供更多有用的信息吗?谢谢
    • 是的,请为您保存块代码的主题提供footer.phtml 文件和local.xml 文件。嘿顺便说一句 - 您必须确保您的“新日期”设置正确的产品很少。
    • 我认为我在这方面取得了一些进展。我拉回了旧页脚并添加了 XML 和新产品正在显示。一定是我错过了对 Magento 主题中某些内容的调用。我会继续环顾四周,并将我的发现发布给其他人。谢谢。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-01-11
    • 1970-01-01
    • 1970-01-01
    • 2017-05-29
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多