出于某种原因,我需要一个类别中的所有产品,包括非销售产品。但我不确定这是否是 magento 没有显示它的唯一情况。
目前,我正在退回所有有库存且有价格等的产品,就像普通产品一样。
收藏不是捡起非卖品或没有给出价格的产品。这是我们创建的一种不同类型的产品,其中价格不是快照中的强制性选项。
现在我想要收集这两种产品。目前我只得到显示价格的那个,底部一个。
我试过了
<?php
class Ubt_Featured_Block_Featured extends
Mage_Core_Block_Template {
private $_itemPerPage = 2;
private $_category_id = 4;
public function allProducts() {
$category = Mage::getModel('catalog/category')->load($this->_category_id);
$_collections = $category->getProductCollection();
$_productCollection = $this->getCollection($_collections); // calling the function that have been created in block page.
return $_productCollection;
}
public function totalPages() {
$category = Mage::getModel('catalog/category')->load(4);
$_collections_count = $category->getProductCollection()->count();
return $number_of_pages = $_collections_count / $this->_itemPerPage;
}
public function getCollection($collection = 'null') {
if ($collection != 'null') {
$collection->addWebsiteFilter();
$collection->addUrlRewrite($this->_category_id);
$collection->addMinimalPrice()->addFinalPrice()->addTaxPercents();
Mage::getSingleton('catalog/product_visibility')
->addVisibleInCatalogFilterToCollection($collection);
Mage::getSingleton('catalog/product_status')
->addVisibleFilterToCollection($collection);
$collection->addAttributeToSelect(array('entity_id', 'sku', 'name', 'short_description',
'description', 'price', 'thumbnail', 'image', 'url_path', 'type_of'), 'inner')
->addAttributeToFilter('is_saleable', array('like' => '0')) ;
$collection->setCurPage(1);
$collection->setPageSize($this->_itemPerPage);
return $collection;
}
}
}
它没有显示任何使用它的东西。空白页。
但是,如果我从 getCollection() 方法中删除 ->addAttributeToFilter('is_saleable', array('like' => '0')) ,那么我会得到包含一个产品的普通集合。var_dump 下面。
array
'entity_id' => string '1' (length=1)
'entity_type_id' => string '4' (length=1)
'attribute_set_id' => string '4' (length=1)
'type_id' => string 'simple' (length=6)
'sku' => string 'q' (length=1)
'has_options' => string '0' (length=1)
'required_options' => string '0' (length=1)
'created_at' => string '2013-03-05 22:00:39' (length=19)
'updated_at' => string '2013-04-29 01:29:30' (length=19)
'cat_index_position' => string '0' (length=1)
'grant_catalog_category_view' => string '-1' (length=2)
'grant_catalog_product_price' => string '-1' (length=2)
'grant_checkout_items' => string '-1' (length=2)
'price' => string '22.0000' (length=7)
'tax_class_id' => string '2' (length=1)
'final_price' => string '22.0000' (length=7)
'minimal_price' => string '22.0000' (length=7)
'min_price' => string '22.0000' (length=7)
'max_price' => string '22.0000' (length=7)
'tier_price' => null
'name' => string 'Prod 01' (length=7)
'short_description' => string 'q' (length=1)
'description' => string 'q' (length=1)
'thumbnail' => string '/h/a/hands.jpg' (length=14)
'image' => string '/h/a/hands.jpg' (length=14)
'url_path' => string 'prod-01.html' (length=12)
'type_of' => null
'request_path' => string 'sub-cat-01/prod-01.html' (length=23)
'is_salable' => string '1' (length=1)
'stock_item' =>
object(Varien_Object)[546]
protected '_data' =>
array
'is_in_stock' => string '1' (length=1)
protected '_hasDataChanges' => boolean false
protected '_origData' => null
protected '_idFieldName' => null
protected '_isDeleted' => boolean false
protected '_oldFieldsMap' =>
array
empty
protected '_syncFieldsMap' =>
array
empty
'tax_percent' => float 10
'category_ids' =>
array
0 => string '2' (length=1)
1 => string '3' (length=1)
2 => string '4' (length=1)
'event' => boolean false
请建议。谢谢
不同之处在于该产品类型没有任何价格输入选项,因此人们无法将其添加到购物车并且没有价格显示。它就像一个 cms 页面一样。当我们在产品列表页面中单击它时,它会进入没有添加到购物车选项的产品页面。这是在产品列表中起作用的。
但我试图在主页上调用这些产品,所有其他产品都在显示,但不是这个。
----config.xml
<?xml version="1.0"?>
<config>
<modules>
<Rik_ReferralProduct>
<version>0.1.0</version>
</Rik_ReferralProduct>
</modules>
<global>
<models>
<referralproduct>
<class>Rik_ReferralProduct_Model</class>
</referralproduct>
</models>
<catalog>
<product>
<type>
<referralproduct translate="label" module="catalog">
<label>Referral Product</label>
<model>referralproduct/product_type_referral</model>
<is_qty>1</is_qty>
<index_data_retreiver>referralproduct/catalogIndex_data_referral</index_data_retreiver>
<composite>0</composite>
</referralproduct>
</type>
</product>
</catalog>
<blocks>
<adminhtml>
<rewrite>
<catalog_product_edit_tabs>Rik_ReferralProduct_Block_Adminhtml_Catalog_Product_Edit_Tabs</catalog_product_edit_tabs>
</rewrite>
</adminhtml>
</blocks>
</global>
<!--<adminhtml>-->
<!--<layout>-->
<!--<updates>-->
<!--<referralproduct>-->
<!--<file>referral.xml</file>-->
<!--</referralproduct>-->
<!--</updates>-->
<!--</layout>-->
<!--</adminhtml>-->
</config>