tutorial pricing plataforma español php magento

php - pricing - magento tutorial



Magento: Mostrar lista de subcategorías (7)

¿Qué tal si solo enumeras las categorías que pertenecen al elemento actual? No todas las categorías en la página.

Pero en un árbol como vista.

CATEGORIE - sub cat 1 CATEGORIE 2 - sub cat 1 - sub sub cat 1

BR Cveto

Estoy construyendo una tienda de Magento y quiero poder mostrar una lista de categorías y tener cada enlace de categoría en su propia página.

Tengo una categoría ''Marcas'' con una ID de 42 y quiero mostrar una lista de las subcategorías y asegurarme de que cada una se vincule con la clave URL designada en el CMS.

¿Alguien ha tenido la experiencia de hacer esto con Magento?

Gracias.


Después de crear un bloque estático, puede obtener cualquier lista de las subcategorías mediante este script:

$_helper = Mage::helper(''catalog/category''); $_category = Mage::getModel(''catalog/category'')->load(5); $_subcategories = $_category->getChildrenCategories(); if (count($_subcategories) <= 0) { return; } $count = 0; foreach($_subcategories as $_category) { $category = Mage::getModel(''catalog/category'')->load($_category->getId()); $ret->{"object_".$count} ->url = $_helper->getCategoryUrl($_category); $ret->{"object_".$count} ->name = $_category->getName(); $ret->{"object_".$count} ->id = $_category->getId(); $ret->{"object_".$count} ->image = $category->getImageUrl(); $count++; } return $ret; } $list = list_subcategories(5); echo "<pre>"; print_r($list); echo "</pre>"; ?>


Después de ver todas las soluciones en el sitio de magento, encontré que la solución de wookiehangover anterior funcionó y tardó unos 8 segundos en implementarse.

crea una UL que puedes diseñar Gracias.


Esta pregunta requiere una respuesta larga. Te señalaré los lugares correctos.

1) La mejor solución es usar la extensión gratuita. No lo he intentado, pero se adaptará al propósito. Tendrá que hacer un poco de CSS para lograr la apariencia correcta.

http://www.magentocommerce.com/extension/1562/magento-easy-catalog-images Demo: http://extension01.templates-master.com/gb/electronics.html

2) No confío en los módulos, ya que puede ser difícil actualizar si el proveedor decide dejar de apoyarlo. He utilizado la información del siguiente hilo del foro para crear sitios de visualización. Eche un vistazo ... Puede que no sea sencillo. Es posible que tenga que hacer algunas copias de los archivos centrales en el directorio local.

http://www.magentocommerce.com/boards/viewthread/3770/P30/

Espero que esto sea de ayuda para ti :)


Hice este pequeño video sobre cómo creo bloques de listas de categorías personalizadas con Magento. Estoy seguro de que hay mejores formas de lograr esto o incluso algo que podría haber hecho mejor, pero es solo mi método. Solo lo creé con la esperanza de que ayude a explicar algunas cosas a algunas personas.

Bloque de la lista de categorías personalizadas de Magento

¡Gracias!


Si desea mostrar las categorías y subcategorías de nivel superior, U puede hacerlo así ..

<?php $_helper = Mage::helper(''catalog/category'') ?> <?php $_categories = $_helper->getStoreCategories() ?> <?php $currentCategory = Mage::registry(''current_category'') ?> <?php if (count($_categories) > 0): ?> <ul> <?php foreach($_categories as $_category): ?> <li> <a href="<?php echo $_helper->getCategoryUrl($_category) ?>"> <?php echo $_category->getName() ?> </a> <?php $_category = Mage::getModel(''catalog/category'')->load($_category->getId()) ?> <?php $_subcategories = $_category->getChildrenCategories() ?> <?php if (count($_subcategories) > 0): ?> <ul> <?php foreach($_subcategories as $_subcategory): ?> <li> <a href="<?php echo $_helper->getCategoryUrl($_subcategory) ?>"> <?php echo $_subcategory->getName() ?> </a> </li> <?php endforeach; ?> </ul> <?php endif; ?> </li> <?php endforeach; ?> </ul> <?php endif; ?>

Para mostrar categorías de nivel superior y categorías de categorías actuales, puede hacer ...

<?php $_helper = Mage::helper(''catalog/category'') ?> <?php $_categories = $_helper->getStoreCategories() ?> <?php $currentCategory = Mage::registry(''current_category'') ?> <?php if (count($_categories) > 0): ?> <ul> <?php foreach($_categories as $_category): ?> <li> <a href="<?php echo $_helper->getCategoryUrl($_category) ?>"> <?php echo $_category->getName() ?> </a> <?php if ($currentCategory && $currentCategory->getId() == $_category->getId()): ?> <?php $_category = Mage::getModel(''catalog/category'')->load($_category->getId()) ?> <?php $_subcategories = $_category->getChildrenCategories() ?> <?php if (count($_subcategories) > 0): ?> <ul> <?php foreach($_subcategories as $_subcategory): ?> <li> <a href="<?php echo $_helper->getCategoryUrl($_subcategory) ?>"> <?php echo $_subcategory->getName() ?> </a> </li> <?php endforeach; ?> </ul> <?php endif; ?> <?php endif; ?> </li> <?php endforeach; ?> </ul> <?php endif; ?>


Si te sientes cómodo editando tu tema, este fragmento de código te mostrará una lista de todas las subcategorías de la categoría actual (de la sesión, por lo que debería funcionar en cualquier parte de tu tema). Normalmente uso esto en app / design / frontend / default / theme_name /template/catalog/category/view.phtml

<?php $_category = $this->getCurrentCategory(); $collection = Mage::getModel(''catalog/category'')->getCategories($_category->entity_id); $helper = Mage::helper(''catalog/category''); ?> <ul> <?php foreach ($collection as $cat):?> <?php if($_category->getIsActive()):?> <?php $cur_category = Mage::getModel(''catalog/category'')->load($cat->getId()); $_img = $cur_category->getImageUrl(); ?> <li> <a href="<?php echo $helper->getCategoryUrl($cat);?>"> <img src="<?php echo $_img?>" title="<?php echo $cat->getName();?>"/> <cite><?php echo $cat->getName();?></cite> </a> </li> <?php endif?> <?php endforeach;?> </ul>