XavRov Posted October 4, 2012 Share Posted October 4, 2012 (edited) hola, necesito poder cambiar la vista de presentación de productos por defecto que me sale dentro de una categoría. Actualmente los cuando accedes a una categoría los productos se ven uno al dado de otro en grupos de 3 y yo lo que quiero que es por defecto aparezcan en lista una debajo de otro "product view list". He estado mirando el código pero no se ni donde, que debo de cambiar. Alguien que me pueda ayudar??? Edited October 5, 2012 by XavRov (see edit history) Link to comment Share on other sites More sharing options...
nadie Posted October 4, 2012 Share Posted October 4, 2012 hola, necesito poder cambiar la vista de presentación de productos por defecto que me sale dentro de una categoría. Actualmente los cuando accedes a una categoría los productos se ven uno al dado de otro en grupos de 3 y yo lo que quiero que es por defecto aparezcan en lista una debajo de otro "product view list". He estado mirando el código pero no se ni donde, que debo de cambiar. Alguien que me pueda ayudar??? ¿Url de tu tienda, para darte la mejor solución? Link to comment Share on other sites More sharing options...
nadie Posted October 4, 2012 Share Posted October 4, 2012 ¿Has probado este modulo gratuito: http://www.prestashop.com/forums/topic/141303-free-prestashop-module-products-in-categories-as-list-or-grid-using-jquery/ ? Link to comment Share on other sites More sharing options...
XavRov Posted October 4, 2012 Author Share Posted October 4, 2012 www.prosegtar.com Link to comment Share on other sites More sharing options...
XavRov Posted October 5, 2012 Author Share Posted October 5, 2012 no tengo claro que este módulo solucione lo que yo quiero Link to comment Share on other sites More sharing options...
nadie Posted October 5, 2012 Share Posted October 5, 2012 Hola. ¿Si pulsas en el icono, que te señalo en la siguiente imagen, no se te muestra ya en list? Link to comment Share on other sites More sharing options...
nadie Posted October 5, 2012 Share Posted October 5, 2012 (Ya entiendo... lo que quieres hacer, tu plantilla ya tiene integrada la funcionalidad del grid y el list por defecto, y quieres mostrar el list por defecto y actualmente se te muestra el grid por defecto)Prueba esto...A ver si tenemos suerte...En el fichero: /themes/theme329/product-sort.tpl Busca esto: <ul class="product_view"> <li id="product_view_grid" class="current"></li> <li id="product_view_list"></li> </ul> Y dejalo asi: <ul class="product_view"> <li id="product_view_list" class="current" ></li> <li id="product_view_grid" ></li> </ul> Despues en el fichero: /themes/theme329/product-list.tpl Busca esto: {if isset($products)} <div id="product_list_grid" class="box"> <ul> {foreach from=$products item=product name=products} <li class="ajax_block_product bordercolor"> <a href="{$product.link|escape:'htmlall':'UTF-8'}" class="product_img_link" title="{$product.name|escape:'htmlall':'UTF-8'}"><img src="{$link->getImageLink($product.link_rewrite, $product.id_image, 'home')}" alt="{$product.legend|escape:'htmlall':'UTF-8'}" {if isset($homeSize)} width="{$homeSize.width}" height="{$homeSize.height}"{/if} /></a> <h3><a class="product_link" href="{$product.link|escape:'htmlall':'UTF-8'}" title="{$product.name|escape:'htmlall':'UTF-8'}">{$product.name|truncate:25:'...'|escape:'htmlall':'UTF-8'}</a></h3> {if (!$PS_CATALOG_MODE AND ((isset($product.show_price) && $product.show_price) || (isset($product.available_for_order) && $product.available_for_order)))} {if isset($product.show_price) && $product.show_price && !isset($restricted_country_mode)}<span class="price">{if !$priceDisplay}{convertPrice price=$product.price}{else}{convertPrice price=$product.price_tax_exc}{/if}</span>{/if} {/if} </li> {/foreach} </ul> </div> <div id="product_list_list" class="bordercolor box visible"> <ul class="bordercolor"> {foreach from=$products item=product name=products} <li class="ajax_block_product bordercolor"> <a href="{$product.link|escape:'htmlall':'UTF-8'}" class="product_img_link" title="{$product.name|escape:'htmlall':'UTF-8'}"><img src="{$link->getImageLink($product.link_rewrite, $product.id_image, 'home')}" alt="{$product.legend|escape:'htmlall':'UTF-8'}" {if isset($homeSize)} width="{$homeSize.width}" height="{$homeSize.height}"{/if} /></a> <div class="center_block"> <div class="product_flags"> {if isset($product.new) && $product.new == 1}<span class="new">{l s='New'}</span>{/if} {if isset($product.available_for_order) && $product.available_for_order && !isset($restricted_country_mode)}{if ($product.allow_oosp || $product.quantity > 0)}<span class="availability bordercolor">{l s='Available'}{elseif (isset($product.quantity_all_versions) && $product.quantity_all_versions > 0)}<span class="bordercolor">{l s='Product available with different options'}</span>{else}<span class="bordercolor">{l s='Out of stock'}</span>{/if}</span>{/if} {if isset($product.online_only) && $product.online_only}<span class="online_only bordercolor">{l s='Online only!'}</span>{/if} </div> <h3><a class="product_link" href="{$product.link|escape:'htmlall':'UTF-8'}" title="{$product.name|escape:'htmlall':'UTF-8'}">{$product.name}</a></h3> <p class="product_desc"><a class="product_descr" href="{$product.link|escape:'htmlall':'UTF-8'}" title="{$product.description_short|truncate:360:'...'|strip_tags:'UTF-8'|escape:'htmlall':'UTF-8'}">{$product.description_short|truncate:400:'...'|strip_tags:'UTF-8'}</a></p> </div> <div class="right_block"> {if isset($product.on_sale) && $product.on_sale && isset($product.show_price) && $product.show_price && !$PS_CATALOG_MODE}<span class="on_sale">{l s='On sale!'}</span> {elseif isset($product.reduction) && $product.reduction && isset($product.show_price) && $product.show_price && !$PS_CATALOG_MODE}<span class="discount">{l s='Reduced price!'}</span> {/if} {if (!$PS_CATALOG_MODE AND ((isset($product.show_price) && $product.show_price) || (isset($product.available_for_order) && $product.available_for_order)))} {if isset($product.show_price) && $product.show_price && !isset($restricted_country_mode)}<span class="price">{if !$priceDisplay}{convertPrice price=$product.price}{else}{convertPrice price=$product.price_tax_exc}{/if}</span>{/if} {/if} {if ($product.id_product_attribute == 0 || (isset($add_prod_display) && ($add_prod_display == 1))) && $product.available_for_order && !isset($restricted_country_mode) && $product.minimal_quantity <= 1 && $product.customizable != 2 && !$PS_CATALOG_MODE} {if ($product.allow_oosp || $product.quantity > 0)} <a class="exclusive ajax_add_to_cart_button" rel="ajax_id_product_{$product.id_product|intval}" href="{$link->getPageLink('cart.php')}?add&id_product={$product.id_product|intval}{if isset($static_token)}&token={$static_token}{/if}" title="{l s='Add to cart'}">{l s='Add to cart'}</a> {else} <span class="exclusive">{l s='Add to cart'}</span> {/if} {/if} <a class="button" href="{$product.link|escape:'htmlall':'UTF-8'}" title="{l s='View'}">{l s='View'}</a> {if isset($comparator_max_item) && $comparator_max_item} <p class="compare checkbox"><input type="checkbox" class="comparator" id="comparator_item_{$product.id_product}" value="comparator_item_{$product.id_product}" {if isset($compareProducts) && in_array($product.id_product, $compareProducts)}checked{/if}/> <label for="comparator_item_{$product.id_product}">{l s='Select to compare'}</label></p> {/if} </div> </li> {/foreach} </ul> {if $comparator_max_item} <script type="text/javascript"> // <![CDATA[ var min_item = '{l s='Please select at least one product.' js=1}'; var max_item = "{l s='You cannot add more than' js=1} {$comparator_max_item} {l s='product(s) in the product comparator' js=1}"; //]]> </script> <form class="product_compare" method="get" action="{$link->getPageLink('products-comparison.php')}" onsubmit="true"> <input type="submit" class="button" value="{l s='Compare'}" /> <input type="hidden" name="compare_product_list" class="compare_product_list" value="" /> </form> {/if} </div> {/if} y dejalo asi: {if isset($products)} <div id="product_list_list" class="bordercolor box visible"> <ul class="bordercolor"> {foreach from=$products item=product name=products} <li class="ajax_block_product bordercolor"> <a href="{$product.link|escape:'htmlall':'UTF-8'}" class="product_img_link" title="{$product.name|escape:'htmlall':'UTF-8'}"><img src="{$link->getImageLink($product.link_rewrite, $product.id_image, 'home')}" alt="{$product.legend|escape:'htmlall':'UTF-8'}" {if isset($homeSize)} width="{$homeSize.width}" height="{$homeSize.height}"{/if} /></a> <div class="center_block"> <div class="product_flags"> {if isset($product.new) && $product.new == 1}<span class="new">{l s='New'}</span>{/if} {if isset($product.available_for_order) && $product.available_for_order && !isset($restricted_country_mode)}{if ($product.allow_oosp || $product.quantity > 0)}<span class="availability bordercolor">{l s='Available'}{elseif (isset($product.quantity_all_versions) && $product.quantity_all_versions > 0)}<span class="bordercolor">{l s='Product available with different options'}</span>{else}<span class="bordercolor">{l s='Out of stock'}</span>{/if}</span>{/if} {if isset($product.online_only) && $product.online_only}<span class="online_only bordercolor">{l s='Online only!'}</span>{/if} </div> <h3><a class="product_link" href="{$product.link|escape:'htmlall':'UTF-8'}" title="{$product.name|escape:'htmlall':'UTF-8'}">{$product.name}</a></h3> <p class="product_desc"><a class="product_descr" href="{$product.link|escape:'htmlall':'UTF-8'}" title="{$product.description_short|truncate:360:'...'|strip_tags:'UTF-8'|escape:'htmlall':'UTF-8'}">{$product.description_short|truncate:400:'...'|strip_tags:'UTF-8'}</a></p> </div> <div class="right_block"> {if isset($product.on_sale) && $product.on_sale && isset($product.show_price) && $product.show_price && !$PS_CATALOG_MODE}<span class="on_sale">{l s='On sale!'}</span> {elseif isset($product.reduction) && $product.reduction && isset($product.show_price) && $product.show_price && !$PS_CATALOG_MODE}<span class="discount">{l s='Reduced price!'}</span> {/if} {if (!$PS_CATALOG_MODE AND ((isset($product.show_price) && $product.show_price) || (isset($product.available_for_order) && $product.available_for_order)))} {if isset($product.show_price) && $product.show_price && !isset($restricted_country_mode)}<span class="price">{if !$priceDisplay}{convertPrice price=$product.price}{else}{convertPrice price=$product.price_tax_exc}{/if}</span>{/if} {/if} {if ($product.id_product_attribute == 0 || (isset($add_prod_display) && ($add_prod_display == 1))) && $product.available_for_order && !isset($restricted_country_mode) && $product.minimal_quantity <= 1 && $product.customizable != 2 && !$PS_CATALOG_MODE} {if ($product.allow_oosp || $product.quantity > 0)} <a class="exclusive ajax_add_to_cart_button" rel="ajax_id_product_{$product.id_product|intval}" href="{$link->getPageLink('cart.php')}?add&id_product={$product.id_product|intval}{if isset($static_token)}&token={$static_token}{/if}" title="{l s='Add to cart'}">{l s='Add to cart'}</a> {else} <span class="exclusive">{l s='Add to cart'}</span> {/if} {/if} <a class="button" href="{$product.link|escape:'htmlall':'UTF-8'}" title="{l s='View'}">{l s='View'}</a> {if isset($comparator_max_item) && $comparator_max_item} <p class="compare checkbox"><input type="checkbox" class="comparator" id="comparator_item_{$product.id_product}" value="comparator_item_{$product.id_product}" {if isset($compareProducts) && in_array($product.id_product, $compareProducts)}checked{/if}/> <label for="comparator_item_{$product.id_product}">{l s='Select to compare'}</label></p> {/if} </div> </li> {/foreach} </ul> {if $comparator_max_item} <script type="text/javascript"> // <![CDATA[ var min_item = '{l s='Please select at least one product.' js=1}'; var max_item = "{l s='You cannot add more than' js=1} {$comparator_max_item} {l s='product(s) in the product comparator' js=1}"; //]]> </script> <form class="product_compare" method="get" action="{$link->getPageLink('products-comparison.php')}" onsubmit="true"> <input type="submit" class="button" value="{l s='Compare'}" /> <input type="hidden" name="compare_product_list" class="compare_product_list" value="" /> </form> {/if} </div> <div id="product_list_grid" class="box"> <ul> {foreach from=$products item=product name=products} <li class="ajax_block_product bordercolor"> <a href="{$product.link|escape:'htmlall':'UTF-8'}" class="product_img_link" title="{$product.name|escape:'htmlall':'UTF-8'}"><img src="{$link->getImageLink($product.link_rewrite, $product.id_image, 'home')}" alt="{$product.legend|escape:'htmlall':'UTF-8'}" {if isset($homeSize)} width="{$homeSize.width}" height="{$homeSize.height}"{/if} /></a> <h3><a class="product_link" href="{$product.link|escape:'htmlall':'UTF-8'}" title="{$product.name|escape:'htmlall':'UTF-8'}">{$product.name|truncate:25:'...'|escape:'htmlall':'UTF-8'}</a></h3> {if (!$PS_CATALOG_MODE AND ((isset($product.show_price) && $product.show_price) || (isset($product.available_for_order) && $product.available_for_order)))} {if isset($product.show_price) && $product.show_price && !isset($restricted_country_mode)}<span class="price">{if !$priceDisplay}{convertPrice price=$product.price}{else}{convertPrice price=$product.price_tax_exc}{/if}</span>{/if} {/if} </li> {/foreach} </ul> </div> {/if} No se te olvide una vez realizado los cambios, ir a la pestaña Preferencias -> Rendimiento y señalar Forzar Compilación -> SI, para que se apliquen los cambios.(Aunque creo, que vas a tener que modificar algún js.. no creo que funcione lo que te he comentado) Link to comment Share on other sites More sharing options...
XavRov Posted October 5, 2012 Author Share Posted October 5, 2012 (edited) creo que no ha funcionado, de hecho lo confirmo no ha funcionado. Edited October 5, 2012 by XavRov (see edit history) Link to comment Share on other sites More sharing options...
nadie Posted October 5, 2012 Share Posted October 5, 2012 creo que no ha funcionado, de hecho lo confirmo no ha funcionado. Lo suponía. ¿Me puedes enviar acceso ftp por privado, para que pueda verlo de forma detenida? Link to comment Share on other sites More sharing options...
XavRov Posted October 5, 2012 Author Share Posted October 5, 2012 Si, por supuesto. El correo es... Link to comment Share on other sites More sharing options...
nadie Posted October 5, 2012 Share Posted October 5, 2012 Si, por supuesto. El correo es... Simplemente ve a mi perfil: http://www.prestashop.com/forums/index.php?/user/123440-nadie/ y donde dice "Enviar Privado", me envías los datos por hay. Un Saludo, Link to comment Share on other sites More sharing options...
nadie Posted October 5, 2012 Share Posted October 5, 2012 Ya lo tienes arreglado o al menos eso creo, en el product-list.tpl te cambio el orden de los elementos ) Ahora ya se te ve por defecto los producto en lista, no como antes que por defecto se te veían en grid. PD: Limpia cache y cookies de tu navegador si no vieras los cambios.. Link to comment Share on other sites More sharing options...
nadie Posted October 5, 2012 Share Posted October 5, 2012 ¿Te quedaste durmiendo......? Pues entonces mañana me cuentas ) Link to comment Share on other sites More sharing options...
XavRov Posted October 5, 2012 Author Share Posted October 5, 2012 perdona pero el cuerpo ya no aguantaba y a las 7:00 hay que estar en pie. Está perfecto ahora si se muestra como yo quiero. Como siempre, muchas gracias eres una gran ayuda. Link to comment Share on other sites More sharing options...
nadie Posted October 5, 2012 Share Posted October 5, 2012 perdona pero el cuerpo ya no aguantaba y a las 7:00 hay que estar en pie. Está perfecto ahora si se muestra como yo quiero. Como siempre, muchas gracias eres una gran ayuda. Un placer ayudarte y servirte! Un saludo y recuerda que estaremos en el foro, para guiarte por este mundo oscuro y tenebroso. --- Mensaje editado: PD: Por cierto, usas una plantilla de template monster, por lo que al final, en la misma web de template monster lo tienes explicado: http://www.templatemonster.com/help/es/prestashop-how-to-change-default-products-listing-view.html Link to comment Share on other sites More sharing options...
javimetal Posted October 14, 2012 Share Posted October 14, 2012 Hola, A mi me pasa lo contrario, por defecto quiero mostrar en grid y no en list. He estado mirando product-list.tpl, ya que dices que ahí es donde cambiaste el orden de los elementos.... pero por más que intento entender lo que pone no logro dar con la clave... Me podrías decir un poco por donde hay que tocar? Gracias! ----> Código del product-list.tpl {if isset($products)} <!-- Products list --> <ul id="product_list" class="clear"> {foreach from=$products item=product name=products} <li class="ajax_block_product bordercolor item-{$smarty.foreach.products.iteration}"> <a href="{$product.link|escape:'htmlall':'UTF-8'}" class="product_img_link" title="{$product.name|escape:'htmlall':'UTF-8'}"><img src="{$link->getImageLink($product.link_rewrite, $product.id_image, 'home-list')}" alt="{$product.legend|escape:'htmlall':'UTF-8'}" /></a> <div class="center_block"> <div class="product_flags"> {if isset($product.new) && $product.new == 1}<span class="new">{l s='New'}</span>{/if} {if isset($product.available_for_order) && $product.available_for_order && !isset($restricted_country_mode)}<span class="availability">{if ($product.allow_oosp || $product.quantity > 0)}{l s='Available'}{elseif (isset($product.quantity_all_versions) && $product.quantity_all_versions > 0)}{l s='Product available with different options'}{else}{l s='Out of stock'}{/if}{if isset($product.online_only) && $product.online_only} ({l s='Online only!'}){/if}</span>{/if} </div> <h3><a class="product_link" href="{$product.link|escape:'htmlall':'UTF-8'}" title="{$product.name|escape:'htmlall':'UTF-8'}">{$product.name|truncate:50:'...'|escape:'htmlall':'UTF-8'}</a></h3> <p class="product_desc"><a class="product_descr" href="{$product.link|escape:'htmlall':'UTF-8'}" title="{$product.description_short|truncate:360:'...'|strip_tags:'UTF-8'|escape:'htmlall':'UTF-8'}">{$product.description_short|truncate:350:'...'|strip_tags:'UTF-8'}</a></p> <p class="product_desc_grid"><a class="product_descr" href="{$product.link|escape:'htmlall':'UTF-8'}" title="{$product.description_short|truncate:360:'...'|strip_tags:'UTF-8'|escape:'htmlall':'UTF-8'}">{$product.description_short|truncate:100:'...'|strip_tags:'UTF-8'}</a></p> </div> <div class="right_block"> {if isset($product.on_sale) && $product.on_sale && isset($product.show_price) && $product.show_price && !$PS_CATALOG_MODE}<span class="on_sale">{l s='On sale!'}</span> {elseif isset($product.reduction) && $product.reduction && isset($product.show_price) && $product.show_price && !$PS_CATALOG_MODE}<span class="discount">{l s='Reduced price!'}</span> {/if} {if (!$PS_CATALOG_MODE AND ((isset($product.show_price) && $product.show_price) || (isset($product.available_for_order) && $product.available_for_order)))} {if isset($product.show_price) && $product.show_price && !isset($restricted_country_mode)}<span class="price">{if !$priceDisplay}{convertPrice price=$product.price}{else}{convertPrice price=$product.price_tax_exc}{/if}</span>{/if} {/if} {if isset($comparator_max_item) && $comparator_max_item} <p class="compare checkbox"><input type="checkbox" class="comparator" id="comparator_item_{$product.id_product}" value="comparator_item_{$product.id_product}" {if isset($compareProducts) && in_array($product.id_product, $compareProducts)}checked{/if}/> <label for="comparator_item_{$product.id_product}">{l s='Select to compare'}</label></p> {/if} {if ($product.id_product_attribute == 0 || (isset($add_prod_display) && ($add_prod_display == 1))) && $product.available_for_order && !isset($restricted_country_mode) && $product.minimal_quantity <= 1 && $product.customizable != 2 && !$PS_CATALOG_MODE} {if ($product.allow_oosp || $product.quantity > 0)} <a class="exclusive ajax_add_to_cart_button" rel="ajax_id_product_{$product.id_product|intval}" href="{$link->getPageLink('cart.php')}?add&id_product={$product.id_product|intval}{if isset($static_token)}&token={$static_token}{/if}" title="{l s='Add to cart'}"><span>{l s='Add to cart'}</span></a> {else} <span class="exclusive">{l s='Add to cart'}</span> {/if} {/if} <a class="button" href="{$product.link|escape:'htmlall':'UTF-8'}" title="{l s='View'}">{l s='View'}</a> </div> </li> {/foreach} </ul> <!-- /Products list --> {/if} Link to comment Share on other sites More sharing options...
nadie Posted October 14, 2012 Share Posted October 14, 2012 Evita abrir temas solucionados, Abre un nuevo tema en el foro con tu duda, exponiendo la url de tu web, y todos los detalles, esto ayudara a mantener una mayor organización en el foro. PD: En este caso concreto iba integrado el grid y el list en la plantilla de template monster sin necesidad de ningún modulo adicional, por eso te comento que abras un tema nuevo para tu duda. Si en tu caso usas este modulo: http://www.prestashop.com/forums/topic/141303-free-prestashop-module-products-in-categories-as-list-or-grid-using-jquery-for-ps13-and-ps14/ edita el fichero Cookie.php que te puedes descargar con el modulo. Link to comment Share on other sites More sharing options...
Recommended Posts