Pregunta

Estoy usando los módulos de productos personalizados de Milople que crean un tipo de producto personalizado llamado "Producto personalizado MILOPLE" y necesito mostrar una lista de estos productos en un ID de categoría.He intentado usar este código:

$cat_id = 3;
$category = Mage::getModel('catalog/category')->load($cat_id);
$collection = $category->getProductCollection()->addAttributeToSort('position');
Mage::getModel('catalog/layer')->prepareProductCollection($collection);

y funciona en forma todos los tipos de productos predeterminados que vienen con magento, excepto los personalizados.

¿Fue útil?

Solución

Si es un nuevo tipo de producto, intente filtrarlo en la colección:

   $collection = $category->getProductCollection()->addAttributeToSort('position')
->addAttributeToFilter('type_id', array('eq' => 'Milople Personalized Product'));

Espero que esto sea lo que quieres.

Editar:

Intenta esto:

$category = new Mage_Catalog_Model_Category(); 
$category->load(3); //this is category id 
$collection =
$category->getProductCollection()->addAttributeToFilter('type_id',
array('eq' => 'Milople Personalized Product'));

Otros consejos

ABAJO EL CÓDIGO ES EXPORTAR TODO EL PRODUCTO POR CATEGORÍA EN CSV.

<?php 
set_time_limit(0);
ini_set("memory_limit",-1);
ini_set('max_execution_time','1800000000');

require_once '../app/Mage.php';
Mage::app(); 

$category = Mage::getModel('catalog/category');
$tree = $category->getTreeModel();
$tree->load();

$ids = $tree->getCollection()->getAllIds();
$fp = fopen('category-product-export.csv', 'w');
$field = array('Product SKU','Category Name'); 
fputcsv($fp, $field);

$_productCollection = Mage::getModel('catalog/product')
                        ->getCollection()
                        ->addAttributeToSelect('*')
                        ->addFieldToFilter('visibility', Mage_Catalog_Model_Product_Visibility::VISIBILITY_BOTH)
                        ->load();

foreach ($_productCollection as $_product){
   $cats = $_product->getCategoryIds();
   $cnt = 0;
   $catName = '';
    foreach($cats as $id) {
        $category->load($id);
        $root = 'Root Catalog';
            $isRoot = strtolower($root);
            $categoryName = strtolower($category->getName());
            if($categoryName == $isRoot){
                continue;
            }
        $categories[$id]['name'] = $category->getName();
        $categories[$id]['path'] = $category->getPath();

        $path = explode('/', $categories[$id]['path']);
        $len = count($path);
        $string = '';
        if($id > 2){
            foreach ($path as $k=>$pathId)
            {
                $separator = '';
                if($pathId > 2){
                    $category->load($pathId);
                    if($k != $len-1){ $separator = ' || ';}
                    $string.= $category->getName() . $separator;
                }

            }
            if($cnt > 0) {
                $catName.= ','.$string;
            } else {
                $catName = $string;
            }

            $cnt++;
        }
    }
    //echo $catName;
    $field = array($_product->getSku(),$catName); 
    fputcsv($fp, $field);   

} 

?>
<a href="category-product-export.csv">Download</a>

Licenciado bajo: CC-BY-SA con atribución
No afiliado a magento.stackexchange
scroll top