Wie nicht verkäufliches Produkt in die Produkt-Kollektion
Aus irgendeinem Grund muss ich alle Produkte in der Sammlung von Kategorien, einschließlich Produkt nicht für den Verkauf. Aber ich bin nicht wirklich sicher, ob das der einzige Fall ist, ist magento nicht angezeigt.
Im moment bin ich immer alle zurückgegebenen Produkte, die auf Lager sind und der Preis etc., wie normale Produkte.
Sammlung ist nicht Kommissionierung von Produkten, die nicht für den Verkauf oder die haben keine Preis gegeben. Es ist eine andere Art von Produkt, das wir erstellt haben, wo Preis ist keine zwingende option, wie in der Momentaufnahme.
Nun möchte ich diese beiden Produkte in der Sammlung.
Im moment bin ich nur immer das eine mit dem Preis gezeigt, unten.
Versuchte ich
<?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;
}
}
}
es zeigt nichts an. leere Seite.
Aber wenn ich die entfernen ->addAttributeToFilter('is_saleable', array('like' => '0')) von getCollection () - Methode dann bekomm ich den normalen Kollektion mit einem Produkt.
var_dump unten.
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
Bitte vorschlagen. Danke
Hier ist der Unterschied, dieses Produkt geben Sie nicht keine Möglichkeit, Preis-Eingang, so dass die Menschen können nicht fügen Sie es in den Warenkorb und kein Preis angezeigt. Es ist genau dasselbe wie eine cms-Seite. wenn wir auf Sie in der product-listing Seite, die es braucht, um die Produkt-Seite mit kein hinzufügen zum Warenkorb option. Dieser arbeitet in der Produkt-Auflistung und all das.
Aber ich versuche, rufen Sie diese Produkt auf der homepage und allen anderen zeigen, aber nicht diese.
----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>
->addAttributeToFilter('is_saleable', array('gteq' => '0'))
, die bekommen alle Produkte, die mit verkäufliche als auch non-saleableHabe ich versucht hat nicht funktioniert
InformationsquelleAutor Ricky Sharma | 2013-04-29
Du musst angemeldet sein, um einen Kommentar abzugeben.
Es kommt heraus, dass das problem war mit mein 'innere' Wort in meiner Methode. nach dem entfernen habe ich alle meine Produkte in meiner Sammlung.
InformationsquelleAutor Ricky Sharma
Magento überprüfen, ob Produkt - ( Inventur-Bestand), unabhängig von der Menge, wenn { product[stock_data][is_in_stock] } ist wahr, das wird verkaufsfähigen Produkt, wenn es falsch es nicht verkäuflich ist ( unabhängig der Menge )
===========================
Hinzufügen dieser Codezeile, bevor Ihr Produkt Sammlung
============================
Wird Ihnen sagen, die Katalog-Produkt-Modell isAvailabe Methode zu überspringen isSalable prüfen Sie in der Methode unter
Magento überprüfen, ob Produkt - ( Inventur-Bestand), unabhängig von der Menge, wenn { product[stock_data][is_in_stock] } ist wahr, das wird verkaufsfähigen Produkt, wenn es falsch es nicht verkäuflich ist ( unabhängig der Menge )
Nein, dass ist nicht der Fall. Ich habe bearbeitet die Frage, überprüfen Sie bitte. Dank
können Sie fügen Sie den neuen Produkt-Typ Modell ?
Ive Hinzugefügt config.xml
InformationsquelleAutor Meabed