Hiển thị hạn chế sản phẩm ở trang chủ(homepage) in Magento

Thảo luận trong 'Các lỗi thường gặp' bắt đầu bởi nguyengiang4n, 17 Tháng chín 2012.

  1. nguyengiang4n

    nguyengiang4n Member

    Hi các bạn và a Hải,
    Thường thì trong trang chủ (homepage) magento theme nào đó sẽ mặc định hiển thị sản phẩm theo catalog (trong admin, mình chọn show mặc định là 8sp, thì ở catalog sẽ show 8sp)
    Bây giờ,muốn ở catalog show 8sp (tùy chỉnh trong admin panel), nhưng ở trang chủ là 4sp thì sửa câu lệnh ở đâu

    (Để show sp ra trang chủ thì theo cú pháp sau : {{block type="catalog/product_list" column_count="4" image_size="160" template="catalog/product/home-limit.phtml" category_id="40"}})

    Cảm ơn các bạn
    P/s : Đã tìm ra vấn đề và chỉnh ok, các bạn có thể theo cách sau (vào catalog.xml ở base hoặc trong theme)

    Bài viết khác cùng chuyên mục:

    jollyvnpt thích bài này.
  2. nguyengiang4n

    nguyengiang4n Member

    Re: Hiển thị hạn chế sản phẩm ở trang chủ(homepage) in Magen

    <?xml version="1.0"?>
    <!--
    /**
    * Magento
    *
    * NOTICE OF LICENSE
    *
    * This source file is subject to the Academic Free License (AFL 3.0)
    * that is bundled with this package in the file LICENSE_AFL.txt.
    * It is also available through the world-wide-web at this URL:
    * http://opensource.org/licenses/afl-3.0.php
    * If you did not receive a copy of the license and are unable to
    * obtain it through the world-wide-web, please send an email
    * to license@magentocommerce.com so we can send you a copy immediately.
    *
    * DISCLAIMER
    *
    * Do not edit or add to this file if you wish to upgrade Magento to newer
    * versions in the future. If you wish to customize Magento for your
    * needs please refer to http://www.magentocommerce.com for more information.
    *
    * @category design_default
    * @package Mage
    * @copyright Copyright (c) 2008 Irubin Consulting Inc. DBA Varien (http://www.varien.com)
    * @license http://opensource.org/licenses/afl-3.0.php Academic Free License (AFL 3.0)
    */

    Supported layout update handles (action):
    - catalog_product_gallery
    - catalog_product_compare_index

    Supported layout update handles (special):
    - default
    - catalog_category_default
    - catalog_category_layered
    - catalog_product_view

    -->
    <layout version="0.1.0">

    <!--
    Default layout, loads most of the pages
    -->

    <default>
    <!-- Mage_Catalog -->
    <reference name="top.menu">
    <block type="catalog/navigation" name="catalog.topnav" template="catalog/navigation/top.phtml"></block>
    <block type="checkout/cart_sidebar" name="cart_menu" template="checkout/cart/top_cart.phtml"/>
    </reference>
    <reference name="left">
    <block type="catalog/navigation" name="catalog.vertnav" template="catalog/navigation/vert_nav.phtml" before="currency" />
    <block type="core/template" name="left.permanent.callout" after="-" template="callouts/left_col.phtml">
    <action method="setImgSrc"><src>images/media/col_left_callout.jpg</src></action>
    <action method="setImgAlt" translate="alt" module="catalog"><alt>Did you know? Our customer service is available 24/7</alt></action>
    </block>
    <block type="wishlist/customer_sidebar" name="wishlist_sidebar" as="wishlist" after="-" template="wishlist/sidebar.phtml"/>
    <block type="core/template" after="wishlist" name="catalog.compare.sidebar" template="catalog/product/compare/sidebar.phtml"/>
    </reference>
    <reference name="right">
    <!--<block type="core/template" name="right.permanent.callout" after="-" template="callouts/left_col.phtml">
    <action method="setImgSrc"><src>images/media/col_right_callout.jpg</src></action>
    <action method="setImgAlt" translate="alt" module="catalog"><alt>back to school</alt></action>
    </block>-->
    </reference>
    <reference name="footer_links">
    <action method="addLink" translate="label title" module="catalog" ifconfig="catalog/seo/site_map"><label>Site Map</label><url helper="catalog/map/getCategoryUrl" /><title>Site Map</title></action>
    </reference>
    </default>


    <!--
    Category default layout
    -->

    <catalog_category_default>
    <reference name="root">
    <action method="setTemplate"><template>page/2columns-left.phtml</template></action>
    </reference>
    <reference name="left">
    <block type="catalog/navigation" name="catalog.leftnav" after="catalog.vertnav" template="catalog/navigation/left.phtml"/>
    </reference>
    <reference name="content">
    <block type="catalog/category_view" name="category.products" template="catalog/category/view.phtml">
    <block type="catalog/product_list" name="product_list" template="catalog/product/list.phtml">
    <block type="catalog/product_list_toolbar" name="product_list_toolbar" template="catalog/product/list/toolbar.phtml">
    <block type="page/html_pager" name="product_list_toolbar_pager"/>
    <!-- The following code shows how to set your own pager increments -->
    <action method="setDefaultListPerPage"><limit>10</limit></action>
    <action method="setDefaultGridPerPage"><limit>48</limit></action>
    <action method="addPagerLimit"><mode>list</mode><limit>10</limit></action>
    <action method="addPagerLimit"><mode>list</mode><limit>20</limit></action>
    <action method="addPagerLimit"><mode>list</mode><limit>30</limit></action>
    <action method="addPagerLimit" translate="label"><mode>list</mode><limit>all</limit><label>All</label></action>
    <action method="addPagerLimit"><mode>grid</mode><limit>48</limit></action>
    <action method="addPagerLimit"><mode>grid</mode><limit>80</limit></action>
    <action method="addPagerLimit"><mode>grid</mode><limit>120</limit></action>
    <action method="addPagerLimit" translate="label"><mode>grid</mode><limit>all</limit><label>All</label></action>
    </block>
    <action method="setToolbarBlockName"><name>product_list_toolbar</name></action>
    </block>
    </block>
    </reference>
    </catalog_category_default>

    <!--
    Category layered navigation layout
    -->

    <catalog_category_layered>
    <reference name="root">
    <action method="setTemplate"><template>page/2columns-left.phtml</template></action>
    </reference>
    <reference name="left">
    <block type="catalog/layer_view" name="catalog.leftnav" after="catalog.vertnav" template="catalog/layer/view.phtml"/>
    </reference>
    <reference name="content">
    <block type="catalog/category_view" name="category.products" template="catalog/category/view.phtml">
    <block type="catalog/product_list" name="product_list" template="catalog/product/list.phtml">
    <block type="catalog/product_list_toolbar" name="product_list_toolbar" template="catalog/product/list/toolbar.phtml">
    <block type="page/html_pager" name="product_list_toolbar_pager"/>
    <!-- The following code shows how to set your own pager increments -->
    <action method="setDefaultListPerPage"><limit>10</limit></action>
    <action method="setDefaultGridPerPage"><limit>48</limit></action>
    <action method="addPagerLimit"><mode>list</mode><limit>10</limit></action>
    <action method="addPagerLimit"><mode>list</mode><limit>20</limit></action>
    <action method="addPagerLimit"><mode>list</mode><limit>30</limit></action>
    <action method="addPagerLimit" translate="label"><mode>list</mode><limit>all</limit><label>All</label></action>
    <action method="addPagerLimit"><mode>grid</mode><limit>48</limit></action>
    <action method="addPagerLimit"><mode>grid</mode><limit>80</limit></action>
    <action method="addPagerLimit"><mode>grid</mode><limit>120</limit></action>
    <action method="addPagerLimit" translate="label"><mode>grid</mode><limit>all</limit><label>All</label></action>
    </block>
    <action method="setToolbarBlockName"><name>product_list_toolbar</name></action>
    </block>
    </block>
    </reference>
    </catalog_category_layered>

    <catalog_category_layered_nochildren>
    <remove name="right.reports.product.viewed" />
    <reference name="left">
    <!--<block type="reports/product_viewed" before="right.permanent.callout" name="left.reports.product.viewed" template="reports/product_viewed.phtml" />-->
    </reference>
    </catalog_category_layered_nochildren>

    <!--
    Customer account
    -->
    <customer_account>
    <reference name="left">
    <remove name="cart_sidebar" />
    <remove name="catalog.compare.sidebar" />
    </reference>
    </customer_account>

    <!--
    Compare products page
    -->

    <catalog_product_compare_index>
    <!-- Mage_Catalog -->
    <reference name="root">
    <action method="setTemplate"><template>page/one-column.phtml</template></action>
    </reference>
    <reference name="head">
    <action method="addJs"><script>scriptaculous/scriptaculous.js</script></action>
    <action method="addJs"><script>varien/product.js</script></action>
    </reference>
    <reference name="content">
    <block type="catalog/product_compare_list" name="catalog.compare.list" template="catalog/product/compare/list.phtml"/>
    </reference>
    </catalog_product_compare_index>

    <customer_account_index>

    <reference name="left">
    <action method="unsetChild"><name>catalog_compare_sidebar</name></action>
    </reference>
    </customer_account_index>

    <!--
    Product view
    -->

    <catalog_product_view translate="label">
    <label>Catalog Product View (Any)</label>
    <!-- Mage_Catalog -->
    <reference name="root">
    <action method="setTemplate"><template>page/2columns-right.phtml</template></action>
    </reference>
    <reference name="head">
    <action method="addJs"><script>varien/product.js</script></action>

    <action method="addItem"><type>js_css</type><name>calendar/calendar-win2k-1.css</name><params/><!--<if/><condition>can_load_calendar_js</condition>--></action>
    <action method="addItem"><type>js</type><name>calendar/calendar.js</name><!--<params/><if/><condition>can_load_calendar_js</condition>--></action>
    <action method="addItem"><type>js</type><name>calendar/calendar-setup.js</name><!--<params/><if/><condition>can_load_calendar_js</condition>--></action>
    </reference>
    <reference name="content">
    <block type="catalog/product_view" name="product.info" template="catalog/product/view.phtml">
    <!--
    <action method="addReviewSummaryTemplate"><type>default</type><template>review/helper/summary.phtml</template></action>
    <action method="addReviewSummaryTemplate"><type>short</type><template>review/helper/summary_short.phtml</template></action>
    <action method="addReviewSummaryTemplate"><type>...</type><template>...</template></action>
    -->
    <block type="catalog/product_view_media" name="product.info.media" as="media" template="catalog/product/view/media.phtml"/>
    <block type="core/text_list" name="alert.urls" as="alert_urls" translate="label">
    <label>Alert Urls</label>
    </block>

    <action method="setTierPriceTemplate"><template>catalog/product/view/tierprices.phtml</template></action>

    <block type="catalog/product_list_upsell" name="product.info.upsell" as="upsell_products" template="catalog/product/list/upsell.phtml">
    <action method="setColumnCount"><columns>4</columns></action>
    <action method="setItemLimit"><type>upsell</type><limit>4</limit></action>
    </block>

    <block type="catalog/product_view_additional" name="product.info.additional" as="product_additional_data" />
    <block type="catalog/product_view_description" name="product.description" as="description" template="catalog/product/view/description.phtml">
    <action method="addToParentGroup"><group>detailed_info</group></action>
    </block>
    <block type="catalog/product_view_attributes" name="product.attributes" as="additional" template="catalog/product/view/attributes.phtml">
    <action method="addToParentGroup"><group>detailed_info</group></action>
    </block>
    <block type="catalog/product_view" name="product.info.addto" as="addto" template="catalog/product/view/addto.phtml"/>
    <block type="catalog/product_view" name="product.info.addtocart" as="addtocart" template="catalog/product/view/addtocart.phtml"/>

    <block type="core/text_list" name="product.info.extrahint" as="extrahint" translate="label">
    <label>Product View Extra Hint</label>
    </block>

    <block type="catalog/product_view" name="product.info.options.wrapper" as="product_options_wrapper" template="catalog/product/view/options/wrapper.phtml" translate="label">
    <label>Info Column Options Wrapper</label>
    <block type="core/template" name="options_js" template="catalog/product/view/options/js.phtml"/>
    <block type="catalog/product_view_options" name="product.info.options" as="product_options" template="catalog/product/view/options.phtml">
    <action method="addOptionRenderer"><type>text</type><block>catalog/product_view_options_type_text</block><template>catalog/product/view/options/type/text.phtml</template></action>
    <action method="addOptionRenderer"><type>file</type><block>catalog/product_view_options_type_file</block><template>catalog/product/view/options/type/file.phtml</template></action>
    <action method="addOptionRenderer"><type>select</type><block>catalog/product_view_options_type_select</block><template>catalog/product/view/options/type/select.phtml</template></action>
    <action method="addOptionRenderer"><type>date</type><block>catalog/product_view_options_type_date</block><template>catalog/product/view/options/type/date.phtml</template></action>
    </block>
    <block type="core/html_calendar" name="html_calendar" as="html_calendar" template="page/js/calendar.phtml"/>
    </block>
    <block type="catalog/product_view" name="product.info.options.wrapper.bottom" as="product_options_wrapper_bottom" template="catalog/product/view/options/wrapper/bottom.phtml" translate="label">
    <label>Bottom Block Options Wrapper</label>
    <action method="insert"><block>product.tierprices</block></action>
    <block type="catalog/product_view" name="product.clone_prices" as="prices" template="catalog/product/view/price_clone.phtml"/>
    <action method="append"><block>product.info.addtocart</block></action>
    </block>

    <block type="core/template_facade" name="product.info.container1" as="container1">
    <action method="setDataByKey"><key>alias_in_layout</key><value>container1</value></action>
    <action method="setDataByKeyFromRegistry"><key>options_container</key><key_in_registry>product</key_in_registry></action>
    <action method="append"><block>product.info.options.wrapper</block></action>
    <action method="append"><block>product.info.options.wrapper.bottom</block></action>
    </block>
    <block type="core/template_facade" name="product.info.container2" as="container2">
    <action method="setDataByKey"><key>alias_in_layout</key><value>container2</value></action>
    <action method="setDataByKeyFromRegistry"><key>options_container</key><key_in_registry>product</key_in_registry></action>
    <action method="append"><block>product.info.options.wrapper</block></action>
    <action method="append"><block>product.info.options.wrapper.bottom</block></action>
    </block>
    <action method="unsetCallChild"><child>container1</child><call>ifEquals</call><if>0</if><key>alias_in_layout</key><key>options_container</key></action>
    <action method="unsetCallChild"><child>container2</child><call>ifEquals</call><if>0</if><key>alias_in_layout</key><key>options_container</key></action>
    </block>
    </reference>
    <reference name="right">
    <block type="catalog/product_list_related" name="catalog.product.related" before="-" template="catalog/product/list/related.phtml"/>
    </reference>
    </catalog_product_view>

    <!--
    Additional block dependant on product type
    -->
    <PRODUCT_TYPE_simple translate="label" module="catalog">
    <label>Catalog Product View (Simple)</label>
    <reference name="product.info">
    <block type="catalog/product_view_type_simple" name="product.info.simple" as="product_type_data" template="catalog/product/view/type/default.phtml">
    <block type="core/text_list" name="product.info.simple.extra" as="product_type_data_extra" translate="label">
    <label>Product Extra Info</label>
    </block>
    </block>
    </reference>
    </PRODUCT_TYPE_simple>
    <PRODUCT_TYPE_configurable translate="label" module="catalog">
    <label>Catalog Product View (Configurable)</label>
    <reference name="product.info">
    <block type="catalog/product_view_type_configurable" name="product.info.configurable" as="product_type_data" template="catalog/product/view/type/default.phtml">
    <block type="core/text_list" name="product.info.configurable.extra" as="product_type_data_extra" translate="label">
    <label>Product Extra Info</label>
    </block>
    </block>
    </reference>
    <reference name="product.info.options.wrapper">
    <block type="catalog/product_view_type_configurable" name="product.info.options.configurable" as="options_configurable" before="-" template="catalog/product/view/type/options/configurable.phtml"/>
    </reference>
    </PRODUCT_TYPE_configurable>
    <PRODUCT_TYPE_grouped translate="label" module="catalog">
    <label>Catalog Product View (Grouped)</label>
    <reference name="product.info">
    <block type="catalog/product_view_type_grouped" name="product.info.grouped" as="product_type_data" template="catalog/product/view/type/grouped.phtml">
    <block type="core/text_list" name="product.info.grouped.extra" as="product_type_data_extra" translate="label">
    <label>Product Extra Info</label>
    </block>
    </block>
    </reference>
    </PRODUCT_TYPE_grouped>
    <PRODUCT_TYPE_virtual translate="label" module="catalog">
    <label>Catalog Product View (Virtual)</label>
    <reference name="product.info">
    <block type="catalog/product_view_type_virtual" name="product.info.virtual" as="product_type_data" template="catalog/product/view/type/default.phtml">
    <block type="core/text_list" name="product.info.virtual.extra" as="product_type_data_extra" translate="label">
    <label>Product Extra Info</label>
    </block>
    </block>
    </reference>
    </PRODUCT_TYPE_virtual>



    <!--
    Product send to friend
    -->

    <catalog_product_send translate="label">
    <label>Catalog Product Email to a Friend</label>
    <!-- Mage_Catalog -->
    <reference name="root">
    <action method="setTemplate"><template>page/2columns-right.phtml</template></action>
    </reference>
    <reference name="head">
    <action method="addJs"><script>varien/product.js</script></action>
    </reference>
    <reference name="content">
    <block type="catalog/product_send" name="product.send" template="catalog/product/send.phtml">
    </block>
    </reference>
    </catalog_product_send>

    <!--
    Product additional images gallery popup
    -->

    <catalog_product_gallery translate="label">
    <label>Catalog Product Image Gallery Popup</label>
    <!-- Mage_Catalog -->
    <reference name="root">
    <action method="setTemplate"><template>page/popup.phtml</template></action>
    </reference>
    <reference name="content">
    <block type="catalog/product_gallery" name="catalog_product_gallery" template="catalog/product/gallery.phtml"/>
    </reference>
    </catalog_product_gallery>

    <!--
    SEO Site Map
    -->

    <catalog_seo_sitemap translate="label">
    <label>Catalog Seo Sitemap (Common)</label>
    <remove name="right"/>
    <remove name="left"/>

    <reference name="root">
    <action method="setTemplate"><template>page/1column.phtml</template></action>
    </reference>
    <reference name="content">
    <block type="page/template_container" name="seo.sitemap.container" template="catalog/seo/sitemap/container.phtml">
    <block type="page/template_links" name="seo.sitemap.links" as="links" template="page/template/links.phtml"/>
    <block type="page/html_pager" name="seo.sitemap.pager.top" as="pager_top" template="page/html/pager.phtml"/>
    <block type="page/html_pager" name="seo.sitemap.pager.bottom" as="pager_bottom" template="page/html/pager.phtml"/>
    </block>
    </reference>
    </catalog_seo_sitemap>

    <catalog_seo_sitemap_category translate="label">
    <label>Catalog Seo Sitemap (Category List)</label>
    <update handle="catalog_seo_sitemap" />
    <reference name="seo.sitemap.container">
    <action method="setTitle" translate="title" module="catalog"><title>Categories</title></action>
    <block type="catalog/seo_sitemap_category" name="seo.sitemap.sitemap" as="sitemap" after="pager_top" template="catalog/seo/sitemap.phtml">
    <action method="bindPager"><pager>seo.sitemap.pager.top</pager></action>
    <action method="bindPager"><pager>seo.sitemap.pager.bottom</pager></action>
    <action method="setItemsTitle" translate="title" module="catalog"><title>categories</title></action>
    </block>
    </reference>
    <reference name="seo.sitemap.links">
    <action method="addLink" translate="label title" module="catalog"><label>Products Sitemap</label><url helper="catalog/map/getProductUrl"/><title>Products Sitemap</title></action>
    </reference>
    </catalog_seo_sitemap_category>

    <catalog_seo_sitemap_category_tree translate="label">
    <label>Catalog Seo Sitemap (Category Tree)</label>
    <reference name="seo.sitemap.container">
    <remove name="seo.sitemap.pager.top" />
    <remove name="seo.sitemap.pager.bottom" />
    <block type="catalog/seo_sitemap_tree_pager" name="seo.sitemap.tree.pager.top" as="pager_top" template="page/html/pager.phtml"/>
    <block type="catalog/seo_sitemap_tree_pager" name="seo.sitemap.tree.pager.bottom" as="pager_bottom" template="page/html/pager.phtml"/>
    <remove name="seo.sitemap.sitemap" />
    <block type="catalog/seo_sitemap_tree_category" name="seo.sitemap.sitemap_tree" as="sitemap" after="pager_top" template="catalog/seo/tree.phtml">
    <action method="bindPager"><pager>seo.sitemap.tree.pager.top</pager></action>
    <action method="bindPager"><pager>seo.sitemap.tree.pager.bottom</pager></action>
    </block>
    </reference>
    </catalog_seo_sitemap_category_tree>

    <catalog_seo_sitemap_product translate="label">
    <label>Catalog Seo Sitemap (Product List)</label>
    <update handle="catalog_seo_sitemap" />
    <reference name="seo.sitemap.container">
    <action method="setTitle" translate="title" module="catalog"><title>Products</title></action>
    <block type="catalog/seo_sitemap_product" name="seo.sitemap.sitemap" as="sitemap" after="pager_top" template="catalog/seo/sitemap.phtml">
    <action method="bindPager"><pager>seo.sitemap.pager.top</pager></action>
    <action method="bindPager"><pager>seo.sitemap.pager.bottom</pager></action>
    <action method="setItemsTitle" translate="title" module="catalog"><title>products</title></action>
    </block>
    </reference>
    <reference name="seo.sitemap.links">
    <action method="addLink" translate="label title" module="catalog"><label>Categories Sitemap</label><url helper="catalog/map/getCategoryUrl"/><title>Categories Sitemap</title></action>
    </reference>
    </catalog_seo_sitemap_product>


    <!--
    Catalog search terms block
    -->

    <catalog_seo_searchterm_popular translate="label">
    <label>Catalog Seo Popular Search Terms</label>
    <remove name="right"/>
    <remove name="left"/>
    <reference name="root">
    <action method="setTemplate"><template>page/1column.phtml</template></action>
    </reference>
    <reference name="content">
    <block type="catalog/seo_searchterm" name="seo.searchterm" template="catalog/seo/searchterm.phtml"/>
    </reference>
    </catalog_seo_searchterm_popular>

    </layout>
  3. jollyvnpt

    jollyvnpt New Member

    Bạn nào đã làm được hướng dẫn mình cụ thể được không, mình đang quan tâm vấn đề này.
  4. admin

    admin Mai Văn Hải Staff Member

    1. Để hiển thị sản phẩm ngài trang chủ, bạn làm như hướng dẫn trên là ok
    1. Để chỉnh số sản phẩm, bạn mở file home-limit.phtml (hoặc list-home.phtml) thêm code sau:
    Mã:
    <?php $counter++ ; if($counter==4){break;} ; endforeach ?>
    jollyvnpt thích bài này.
  5. jollyvnpt

    jollyvnpt New Member

    mình đã show được sản phẩm ra trang chủ bằng cách chèn code:

    {{block type="catalog/product_list" column_count="4" image_size="120" template="catalog/product/list.phtml" category_id="8"}}

    mình đang dùng magento 1.7.0.2 mình không tìm thấy file home-limit.phtml (hoặc list-home.phtml). File này có sẵn trên magento hay phải viết thêm hả bạn, nếu phải viết thêm thì bạn cho mình file này với. Thanks bạn nhiều
  6. le0.tk21

    le0.tk21 New Member

    Duplicate file list.phtml rồi rename bạn :D

Chia sẻ trang này