How To Add New Arrivals Page to Your Magento Store
- Overview
- What are New Products In Magento?
- How To Add "New Arrivals" Page If Original Magento Layered Navigation Is Used
- How To Add "New Arrivals" Page If SEO Layered Navigation Plus Extension Is Used
- Important Notes
- How To Find Category ID
- How To Create New Arrivals Page For Custom Attribute
- How To Add Products Created During Last X Days
- How To Exclude Products From Specific Subcategory
Overview
Automatically updated "New Arrivals" page can be created using the extension.
- The page can show new products or all the store or for specified category.
- Product list for the page will be updated automatically, depending on product settings.
- "New Arrivals" page can be created either original Magento Layered Navigation or SEO Layered Navigation Plus extension by MANAdev is used.
- You can add all products created during last X days.
What are New Products In Magento?
Product in Magento can be set as new in following way:
How To Add "New Arrivals" Page If Original Magento Layered Navigation Is Used
Create a CMS page on which you will place a list of new products. To do it go to menu
CMS-> Pages
and pressAdd New Page
in Magento Admin Panel.Fill in the fields as usual, specifying page title, URL key and content.
In
Design tab->Page Layout
add the following layout instructions intoLayout Update XML
area:
<reference name="content">
<!-- this block when present on page removes all non-new products -->
<block type="manapro_productcollections/new" name="product_filter">
<action method="setCategoryId"><category_id>3</category_id></action>
</block>
<!-- add category products to content column -->
<block type="catalog/product_list" name="product_list" after="product_filter"
template="catalog/product/list.phtml">
<action method="setCategoryId"><category_id>3</category_id></action>
<block type="core/text_list" name="product_list.name.after" as="name.after" />
<block type="core/text_list" name="product_list.after" as="after" />
<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"/>
</block>
<action method="addColumnCountLayoutDepend"><layout>empty</layout>
<count>6</count>
</action>
<action method="addColumnCountLayoutDepend">
<layout>one_column</layout>
<count>5</count>
</action>
<action method="addColumnCountLayoutDepend">
<layout>two_columns_left</layout>
<count>4</count>
</action>
<action method="addColumnCountLayoutDepend">
<layout>two_columns_right</layout>
<count>4</count>
</action>
<action method="addColumnCountLayoutDepend">
<layout>three_columns</layout>
<count>3</count>
</action>
<action method="setToolbarBlockName">
<name>product_list_toolbar</name>
</action>
</block>
</reference>
<!-- add layered navigation to left column -->
<reference name="left">
<block type="catalog/layer_view" name="catalog.leftnav" after="currency" template="catalog/layer/view.phtml" before="-">
<block type="core/text_list" name="catalog.leftnav.state.renderers" as="state_renderers" />
</block>
</reference>
- Read Important Notes and do modifications if you need.
How To Add "New Arrivals" Page If SEO Layered Navigation Plus Extension Is Used
Create a CMS page on which you will place a list of new products. To do it go to menu
CMS-> Pages
and pressAdd New Page
in Magento Admin Panel.Fill in the fields as usual, specifying page title, URL key and content.
In
Design tab->Page Layout
add the following layout instructions intoLayout Update XML
area:
<update handle="cms_page_layered" />
<!-- add category products to content column -->
<reference name="cms.products">
<block type="catalog/product_list" name="product_list"
template="catalog/product/list.phtml">
<action method="setCategoryId"><category_id>3</category_id></action>
<block type="core/text_list" name="product_list.name.after" as="name.after" />
<block type="core/text_list" name="product_list.after" as="after" />
<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"/>
</block>
<action method="addColumnCountLayoutDepend">
<layout>empty</layout>
<count>6</count>
</action>
<action method="addColumnCountLayoutDepend">
<layout>one_column</layout>
<count>5</count>
</action>
<action method="addColumnCountLayoutDepend">
<layout>two_columns_left</layout>
<count>4</count>
</action>
<action method="addColumnCountLayoutDepend">
<layout>two_columns_right</layout>
<count>4</count>
</action>
<action method="addColumnCountLayoutDepend">
<layout>three_columns</layout>
<count>3</count>
</action>
<action method="setToolbarBlockName"><name>product_list_toolbar</name></action>
</block>
</reference>
<reference name="before_body_end">
<block type="mana_filters/layer" name="mana_layer" as="mana_layer" before="-">
<action method="setCategoryId"><category_id>3</category_id></action>
</block>
<!-- this block when present on page removes all non-new products -->
<block type="manapro_productcollections/new" name="product_filter">
<action method="setCategoryId"><category_id>3</category_id></action>
</block>
</reference>
- Read Important Notes and do modifications if you need.
- Read How To Create New Arrivals Page For Custom Attribute and do modifications if you need.
Important Notes
- All XML instructions above adds product list to content area of the page, layered navigation block to left column and remove all products with regular products from the list.
- Make sure 2 column layout is selected in
Design tab->Page Layout->Layout
. In case you prefer right column instead of left column, change<reference name="left">
to<reference name="right">
. If you do not need layered navigation remove<reference name="left"> ... </reference>
. - Also insert ID of root category in
<category_id>3</category_id>
(3 times). Check How To Find Category ID in order to define root category ID of your store. - Open root category or other needed category of your store through Catalog->Manage Categories. Make sure that Is Anchor=Yes on Display Settings tab (only needed if you want layered navigation to work).
In case you use our layered navigation extension from SEO Layered Navigation Plus series, you may also specify any category ID - in this case additional category filter will be applied. You still have to make sure that specified category is set to Is Anchor = Yes.
How To Find Category ID
If "New Arrivals" page should contain new products for all the store it is necessary to find root category ID before configuration. It can be done in two steps.
In case the page should show product for any other category, you need to perform only second step.
First, find store root category name. Here you can find instruction how to do it.
Second step is to define ID of root or other category. Here you can find instruction how to do it.
How To Create New Arrivals Page For Custom Attribute
If SEO Layered Navigation Plus extension by MANAdev is used you can also easily apply new product filter and custom attribute filter on one page.
Below is an example of "New Red" products page layout.
Please note that instead of one block named "product_filter"
<block type="manapro_productcollections/new" name="product_filter">
<action method="setCategoryId"><category_id>3</category_id></action>
</block>
you should insert 2 blocks and name them "product_filter1" and "product_filter2":
<block type="manapro_productcollections/new" name="product_filter1">
<action method="setCategoryId"><category_id>3</category_id></action>
</block>
<block type="manapro_productcollections/filtered" name="product_filter2">
<action method="setCategoryId"><category_id>3</category_id></action>
<action method="addFilter">
<attribute_code>color</attribute_code>
<option>Red</option>
</action>
</block>
How To Add Products Created During Last X Days
If SEO Layered Navigation Plus extension by MANAdev is used you can add all products created during last X days by adding the following line, specifying number of days into <value>
field:
<action method="setDaysProductsAreNew"><value>30</value></action>
like in example:
<block type="manapro_productcollections/new" name="product_filter">
<action method="setCategoryId"><category_id>3</category_id></action>
<action method="setDaysProductsAreNew"><value>30</value></action>
</block>
You can even remove products explicitly specified as new in product settings by adding the following line:
<action method="setIgnoreNewProducts"><value>1</value></action>
like in example:
<block type="manapro_productcollections/new" name="product_filter">
<action method="setCategoryId"><category_id>3</category_id></action>
<action method="setDaysProductsAreNew"><value>30</value></action>
<action method="setIgnoreNewProducts"><value>1</value></action>
</block>
How To Exclude Products From Specific Subcategory
If products from specific child category should not be shown on "New Arrivals" page, you can exclude them by placing block:
<block type="mana_page/categoryFilter" name="category_exclusion_filter">
<action method="setCategoryId"><category_id>2</category_id></action>
<action method="exclude"><excluded_category_id>18</excluded_category_id></action>
</block>
It will work either original Magento Layered Navigation or or SEO Layered Navigation Plus extension by MANAdev is used.