robertomagan Posted May 12, 2016 Share Posted May 12, 2016 Hola a tod@s! Gracias por la ayuda desinteresada que prestáis con este foro Mi pregunta es simple (aunque no sé si sencilla de resolver): ¿cómo puedo obtener el árbol de categorías con sus nombres e IDs asociados? Es decir algo tal que así: 2 Inicio |-- 22 Subcategoría_1 |-- 23 Subcategoría_2 |-- 233 Subsubcategoría_21 |-- etc. dónde el número inicial se corresponde con el ID de la categoría. Muchas gracias de antemano! Saludos, Roberto. Link to comment Share on other sites More sharing options...
ventura Posted May 13, 2016 Share Posted May 13, 2016 Creando esta variable $this->context->smarty->assign('categoriesTree', Category::getRootCategory()->recurseLiteCategTree(0)) tienes acceso a toda la informacion del arbol de categorias. Luego ya la estructura, algo si <div class="col-xs-12 col-sm-6"> <div class="categTree box"> <h3 class="page-subheading">{l s='Categories'}</h3> <div class="tree_top"> <a href="{$base_dir_ssl}" title="{$categoriesTree.name|escape:'html':'UTF-8'}"></a> </div> <ul class="tree"> {if isset($categoriesTree.children)} {foreach $categoriesTree.children as $child} {if $child@last} {include file="$tpl_dir./category-tree-branch.tpl" node=$child last='true'} {else} {include file="$tpl_dir./category-tree-branch.tpl" node=$child} {/if} {/foreach} {/if} </ul> </div> </div> Y finalmente para añadir el id delante del nombre de la categoria, en themes/tu_tema/category-tree-branch.tpl En la parte del enlace hara falta añadir la parte en color rojo <a href="{$node.link|escape:'html':'UTF-8'}" {if isset($currentCategoryId) && $node.id == $currentCategoryId}class="selected"{/if} title="{$node.desc|escape:'html':'UTF-8'}">{$node.id} {$node.name|escape:'html':'UTF-8'}</a> 1 Link to comment Share on other sites More sharing options...
robertomagan Posted May 13, 2016 Author Share Posted May 13, 2016 Hola ventura! Gracias por contestar tan rápido, aunque me temo que no entiendo mucho. El código y los pasos que muestras creo que se tienen que integrar en algún módulo prestashop verdad? o es posible ejecutarlos directamente? Saludos, Roberto. Link to comment Share on other sites More sharing options...
ventura Posted May 13, 2016 Share Posted May 13, 2016 Depende un poco de donde o como quieres mostrarlo. Si es en una pagina cms te haria falta añadir la variable que accede al contenido del arbol en el function init del CmsController.php y luego acceder al array desde el cms.tpl. Tambien con un modulo podrias accerlo Link to comment Share on other sites More sharing options...
Recommended Posts
Create an account or sign in to comment
You need to be a member in order to leave a comment
Create an account
Sign up for a new account in our community. It's easy!
Register a new accountSign in
Already have an account? Sign in here.
Sign In Now