magento首页调用最新产品

这个需要我们自己添加一个block块供我们调用,可参考new products的block类,建立文件app/code/core/Mage/Catalog/Block/Product/Special.php

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

21

22

23

24

25

26

27

28

29

30

31

32

33

34

35

36

<?php

class Mage_Catalog_Block_Product_Special extends Mage_Catalog_Block_Product_Abstract

{

protected $_productsCount= null;

const DEFAULT_PRODUCTS_COUNT = 5;

protected function _beforeToHtml()

{

$todayDate = Mage::app()->getLocale()->date()->toString(Varien_Date::DATETIME_INTERNAL_FORMAT);

$collection = Mage::getResourceModel(‘catalog/product_collection‘);

Mage::getSingleton(‘catalog/product_status‘)->addVisibleFilterToCollection($collection);

Mage::getSingleton(‘catalog/product_visibility‘)->addVisibleInCatalogFilterToCollection($collection);

$collection = $this->_addProductAttributesAndPrices($collection)

->addStoreFilter()

->addAttributeToFilter(‘special_from_date‘,array(‘date‘=> true,‘to‘=>$todayDate))

->addAttributeToFilter(‘special_to_date‘,array(‘or‘=>array(0=>array(‘date‘=> true,‘from‘=>$todayDate),1=>array(‘is‘=>new Zend_Db_Expr(‘null‘)))),‘left‘)

->addAttributeToSort(‘special_from_date‘,‘desc‘)

->setPageSize($this->getProductsCount())

->setCurPage(1);

$this->setProductCollection($collection);

return parent::_beforeToHtml();

}

public function setProductsCount($count)

{

$this->_productsCount = $count;

return $this;

}

public function getProductsCount()

{

if(null === $this->_productsCount)

{

$this->_productsCount = self::DEFAULT_PRODUCTS_COUNT;

}

return $this->_productsCount;

}

}

复制app/design/frontend/base/default/template/catalog/product/new.phtml到app/design/frontend/theme/default/template/catalog/product/special.phtml,修改为相应标题和产品显示数量
在后台首页的CMS Page模块添加调用代码:

1

2

3

4

5

6

7

8

9

10

11

12

13

<block type="catalog/product_special" name="home.catalog.product.special" alias="product_special" template="catalog/product/special.phtml" after="cms_page">

<action method="addPriceBlockType">

<type>bundle</type>

<block>bundle/catalog_product_price</block>

<template>bundle/catalog/product/price.phtml</template>

</action>

<action method="setColumnCount">

<count>4</count>

</action>

<action method="setProductsCount">

<count>4</count>

</action>

</block>

当然要想显示特价产品,在产品管理处还是要设置的,进入产品管理的Prices栏,Special Price和Special Price From Date都要设置,那么前台就会显示特价产品。

时间: 2024-10-28 11:04:00

magento首页调用最新产品的相关文章

ecshop教程之首页完美调用最新评论

第一步:建立一个名为index_comments.lbi的库文件放到模板下面的library文件夹下 第二步:把新建立的库文件在index.dwt中调用           我的是把最新评论放到了销售排行下面那么就是把 <!-- #BeginLibraryItem "/library/index_comments.lbi" --> <!-- #EndLibraryItem -->加入到<!-- #BeginLibraryItem "/librar

如何更改/删除magento首页产品/广告图片等模块信息

如何更改/删除magento首页产品/广告图片等模块信息,如果只是修改一些简单的地方,例如已经存在 的左右栏目里面的图片内容等,是很简单的,直接在后台就可以修改的,具体如下: 如何删除magento首页不需要的信息. 首先登陆后台.CMS=>Manage Pages=>选择edite page=>Home page=>选择custom design. 然后选择相应的模板,选择相应的列数, 编辑里面的内容. <reference name=”content”> <b

帝国cms调用最新文章 利用文字调用标签phomenews

最近建站时,朋友要求在头部用帝国cms调用最新文章,当时想了用灵动标签调用,但需要设置一个具体的栏目id,这样就不是调用全站的最新文章了,后面查看了一下标签说明,想到了文字调用标签phomenews. 文字调用标签 (phomenews)格式为:[phomenews]栏目ID/专题ID,显示条数,标题截取数,是否显示时间,操作类型,是否显示栏目名,'时间格式化',附加SQL条件,显示排序[/phomenews],本身也是要设置栏目id的,这时我们想到了通过调用数据表的方式, 因为很多栏目都是文章

织梦模板调用最新文章标签、推荐内容标签、热门文章标签、栏目标签

织梦模板调用最新文章标签.推荐内容标签.热门文章标签.栏目标签 <div> <!--最新文档-->    {dede:arclist row=10 titlelen=42}    <li><a href="[field:arcurl/]">[field:title/]</a></li>    {/dede:arclist}    <!--//最新文档--></div> 推荐内容标签调用:&l

ecshop首页调用指定商品分类下的商品品牌列表

转之--http://www.16css.com/ecshop/735.html 通过二次开发可以实现ECSHOP首页调用指定分类下的品牌列表. 第一步: 打开根目录下的index.php 在最后面 ?> 前面加入以下代码: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 /** * 获得某个分类下的品牌 列表 * * @access  public * @param   int     $cat * @return 

怎么在首页调用dede子栏目

{dede:channelartlist typeid='栏目ID' row='条数'} <div class="list"> <li><a href="{dede:field name='typeurl'/}">{dede:field name='typename'/}</a></li> <ul> {dede:sql sql='Select * from dede_arctype where

GET标签实现首页调用全站热门文章

今天用PHPCMS做一项目时,需要实现在首页调用全站文章的需求,但是PHPCMS没有现成的标签可以拿来用,看了下默认的首页模板,有这么一段代码: {pc:content action="hits" catid="6" num="10" order="views DESC"} {loop $data $r} <li><a href="{$r[url]}" target="_blan

dedecms首页调用栏目内容和单页内容的方法

常用的需要调到首页来的单页内容,比如企业简介.联系我们等等内容,我们在首页可能都要进行体现.通过常规的方式,包括查阅dede官方论坛资料,都找不到比较合适的答案.今天我们就提供两种方式进行调用. 我们知道,单页内容的模板调用标签是 {dede:field.content/} ,经过试验,在首页使用 {dede:channelartlist } {dede:field.content/} {/dede:channelartlist } 进行调用,即可顺利的调出相关的数据. 但是我们发现,这种调用只

ecshop首页调用指定分类下面的精品商品

1.首先在index.php页面加上这段代码: function index_get_cat_id_goods_best_list($cat_id, $num){    $sql = 'Select g.goods_id, g.goods_name, g.goods_name_style, g.market_price, g.shop_price, g.promote_price, ' .                "promote_start_date, promote_end_date,