/ / Magento - списък с продукти в определена категория [дубликат] - magento, решетка, блок

Magento - списък на продуктите в определена категория [дубликат] - магнито, решетка, блок

Възможно дублиране:
Как да получите продукти от определена категория в електронната търговия magento

Искам да създам шаблон (.phtml файл), който показва мрежа от продукти (име, цена за описание, малко изображение с връзка) за Magento 1.7, подобно на блока по подразбиране "Нов продукт". Ето какво имам досега ...

<?php

$category=Mage::getModel("catalog/category")->load(4);
$category=$category->getProductCollection();
foreach($category->getAllIds() as $id)
{
$product=Mage::getModel("catalog/product")->load($id);
echo $product->getName()."<br/>";
echo $product->getUrl()."<br/>";
echo $product->getImageUrl()."<br/>";
echo $product->getImageDescription()."<br/><br/>";
}

Отговори:

0 за отговор № 1

Кодът ви има няколко грешки в него, позволете ми да ги подчертая:

  1. $category=$category->getProductCollection(); - това е много лоша практика. Определяте колекцията от продукти на променлива, която преди е била категория. Тя лесно се губи в такъв код. Моля, не забравяйте да използвате смислени конвенции за именуване на променливата си. Това би трябвало да бъде $productCollection=$category->getProductCollection();

  2. Вместо да прибирате колекцията, която сте избраливече имате, получавате набор от идентификационни номера и ги обхождате, зареждате обекти по време на всеки цикъл.Това ще доведе до изтичане на памет и много голямо време, докато кодът ви ще се изпълни. foreach изявлението трябва да бъде така: foreach ($productCollection as $product).

  3. Вие не сте задали въпрос тук. Казахте, че ще направите мрежа и ще публикувате кода си, но къде е проблемът?

  4. Ако искате да създадете продуктова решетка, моля, прегледайте как е направено в каталога Magento модул: блок Mage_Catalog_Block_Product_List и шаблон каталог / продукт / списък.phtml