Herland Posted June 10, 2013 Share Posted June 10, 2013 (edited) Hola, Pues el requerimiento del cliente era que los accesorios se dividieran en categorías. Hice la división, como me lo pidio, pero la página de producto carga muy lento. Voy a explicar el código en seudo lenguaje (esto es en la página de product.tpl) : for accesorios{ if (accesorios.referencia == "brazos"){ <h3>brazos</h3> item1 item2 .... } } for accesorios{ if (accesorios.referencia == "ruedas"){ <h3>ruedas</h3> item1 item2 .... } } ....... El código funciona perfectamente, pero se demora una eternidad en cargar! y esto no es viable para su página web. Habrá alguna otra manera de poder separa los accesorios elegantemente en categorías. Acá les dejo el link para que vean como se dividen en categorías: http://econosillas.cl/sillas-operativas/312-silla-bologna.html (se demorará mucho en cargar) Esta es parte real del código, el cual corresponde a una sola categoría. Tal vez sólo tenga que optimizar parte del código para que no se demore. Ayúdenme chicos, así tendremos código para separa los accesorios en categoria acá va: {counter start=0 skip=1 assign="cha"} {foreach from=$accessories item=accessory name=accessories_list} {counter} {if $cha==1} {counter start=1 skip=1 assign="cha"} </ul> <ul style="float:left;width:700px"> {/if} {assign var='accessoryLink' value=$link->getProductLink($accessory.id_product, $accessory.link_rewrite, $accessory.category)} {$referencia = explode(' ',trim($accessory.reference))} {if $referencia[0]=="Plastico"} <a style="visibility:hidden">{$delta++}</a> {if $delta==1}<li class="referencia_li"><span class="referencia">Plástico</span></li><br><br>{/if} <li class="ajax_block_product {if $smarty.foreach.accessories_list.first}first_item{elseif $smarty.foreach.accessories_list.last}last_item{else}item{/if} product_accessories_description accesorios_li"> <h5><!--a href="{$link->getPageLink('cart.php')}?qty={$cantProd}&id_product={$accessory.id_product|intval}&token={$static_token}&add"-->{$accessory.name|truncate:22:'...':true|escape:'htmlall':'UTF-8'}</a></h5> <div class="product_desc"> <!-- <a href="{$link->getPageLink('cart.php')}?qty={$cantProd}&id_product={$accessory.id_product|intval}&token={$static_token}&add" title="{$accessory.legend|escape:'htmlall':'UTF-8'}" class="product_image"><img src="{$link->getImageLink($accessory.link_rewrite, $accessory.id_image, 'medium')}" alt="{$accessory.legend|escape:'htmlall':'UTF-8'}" width="{$mediumSize.width}" height="{$mediumSize.height}" /></a> --> <!--<a href="{$link->getPageLink('cart.php')}?qty={$cantProd}&id_product={$accessory.id_product|intval}&token={$static_token}&add" class="product_description">{$accessory.description_short|strip_tags|truncate:70:'...'}</a> --> <img src="{$link->getImageLink($accessory.link_rewrite, $accessory.id_image, 'medium')}" alt="{$accessory.legend|escape:'htmlall':'UTF-8'}" width="{$mediumSize.width}" height="{$mediumSize.height}" /> <span class="product_description">{$accessory.description_short|strip_tags|truncate:70:'...'}</span> </div> <!--ACCESSORIES!! --> <p class="product_accessories_price"> <!-- <a class="button" href="{$accessoryLink|escape:'htmlall':'UTF-8'}" title="{l s='View'}">{l s='View'}</a> --> {if ($accessory.allow_oosp || $accessory.quantity > 0) AND $accessory.available_for_order AND !isset($restricted_country_mode) AND !$PS_CATALOG_MODE} <input type="checkbox" name="chkAcc" class="plastico" value="{$accessory.id_product|intval}" icost="{$accessory.price}" > {if $accessory.show_price AND !isset($restricted_country_mode) AND !$PS_CATALOG_MODE}<span class="price">{if $priceDisplay != 1}{displayWtPrice p=$accessory.price}{else}{displayWtPrice p=$accessory.price_tax_exc}{/if}</span>{/if} <br/> <!--<input id="quantity_acc_{$accessory.id_product|intval}" type="text" name="qty" class="text" value="{if isset($quantityBackup)}{$quantityBackup|intval}{else}{if $product->minimal_quantity > 1}{$product->minimal_quantity}{else}1{/if}{/if}" size="2" maxlength="3" {if $product->minimal_quantity > 1}onkeyup="checkMinimalQuantity({$product->minimal_quantity});"{/if} /> --> <br/> {*<button id="add_accesorio" class="exclusive button ajax_add_to_cart_button" onclick="javascript:addNewAccesorio({$accessory.id_product|intval})">Agregar</button>*} {*<a id="addAccesorio" class="exclusive button ajax_add_to_cart_button" onclick="javascript:addNewAccesorio({$accessory.id_product|intval})">Agregar</a>*} {else} <!--<span class="exclusive">{l s='Add to cart'}</span> <span class="availability">{if (isset($accessory.quantity_all_versions) && $accessory.quantity_all_versions > 0)}{l s='Product available with different options'}{else}{l s='Out of stock'}{/if}</span>--> <span class="availability">Agotado</span> {/if} </p> </li> {/if} {/foreach} Gracias Edited June 10, 2013 by Herland (see edit history) Link to comment Share on other sites More sharing options...
Recommended Posts