Jump to content

Ampliar número de productos por fila


manumyway

Recommended Posts

Pues lo dicho, aunque es más sencillo de lo que parece, ahora os diré porque.

 

Me baje una plantilla bastante básica pero me gusta, el tema es que esta plantilla tiene en la pagina de inicio 3 productos por fila, pero si entras dentro de cualquier categoria observas que en vez de los 3 productos solo hay 2, y donde se supone que hay un tercero, lo unico que observamos en un hueco vacio donde deberia de estar el tercer producto.

 

He estado Googleando bastante pero no doy con la solución. La historia esta en modificar el archivo product-list.tpl verdad? que parte debo modificar? Os dejo el codigo porque creo que el tema esta ahi, de hecho creo que esta en las primeras lineas verdad?. Si no fuese así comentarme por donde puedo mirar más please.

 

 

{if isset($products)}
<!-- Products list -->
<ul id="product_list" class="clear">
{foreach from=$products item=product name=products}
 <li class="ajax_block_product {if $smarty.foreach.products.first}first_item{elseif $smarty.foreach.products.last}last_item{/if} {if $smarty.foreach.products.index % 2}alternate_item{else}item{/if} clearfix">
  <div class="center_block">
	    <h3>{if isset($product.new) && $product.new == 1}<span class="new">{l s='New'}</span>{/if}<a href="{$product.link|escape:'htmlall':'UTF-8'}" title="{$product.name|escape:'htmlall':'UTF-8'}">{$product.name|truncate:35:'...'|escape:'htmlall':'UTF-8'}</a></h3>
   <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>

   <p class="product_desc"><a href="{$product.link|escape:'htmlall':'UTF-8'}" title="{$product.description_short|truncate:100:'...'|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 isset($product.online_only) && $product.online_only}<span class="online_only">{l s='Online only!'}</span>{/if}
   {if (!$PS_CATALOG_MODE AND ((isset($product.show_price) && $product.show_price) || (isset($product.available_for_order) && $product.available_for_order)))}
   <div>
 {if isset($product.show_price) && $product.show_price && !isset($restricted_country_mode)}<span class="price" style="display: inline;">{if !$priceDisplay}{convertPrice price=$product.price}{else}{convertPrice price=$product.price_tax_exc}{/if}</span><br />{/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}</span>{/if}
   </div>
   {/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="button ajax_add_to_cart_button exclusive" 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_view" href="{$product.link|escape:'htmlall':'UTF-8'}" title="{l s='View'}"></a><br />
   {if isset($comparator_max_item) && $comparator_max_item}
 <p class="compare"><input type="checkbox" onclick="checkForComparison({$comparator_max_item})" class="comparator" id="comparator_item_{$product.id_product}" value="{$product.id_product}" /> <label for="comparator_item_{$product.id_product}">{l s='Select to compare'}</label></p>
   {/if}   
  </div>
 </li>
{/foreach}
</ul>
<!-- /Products list -->
{/if}

<div class="clear"></div>

 

Gracias de antemano

Link to comment
Share on other sites

Pues lo dicho, aunque es más sencillo de lo que parece, ahora os diré porque.

 

Me baje una plantilla bastante básica pero me gusta, el tema es que esta plantilla tiene en la pagina de inicio 3 productos por fila, pero si entras dentro de cualquier categoria observas que en vez de los 3 productos solo hay 2, y donde se supone que hay un tercero, lo unico que observamos en un hueco vacio donde deberia de estar el tercer producto.

 

He estado Googleando bastante pero no doy con la solución. La historia esta en modificar el archivo product-list.tpl verdad? que parte debo modificar? Os dejo el codigo porque creo que el tema esta ahi, de hecho creo que esta en las primeras lineas verdad?. Si no fuese así comentarme por donde puedo mirar más please.

 

 

{if isset($products)}
<!-- Products list -->
<ul id="product_list" class="clear">
{foreach from=$products item=product name=products}
 <li class="ajax_block_product {if $smarty.foreach.products.first}first_item{elseif $smarty.foreach.products.last}last_item{/if} {if $smarty.foreach.products.index % 2}alternate_item{else}item{/if} clearfix">
  <div class="center_block">
		<h3>{if isset($product.new) && $product.new == 1}<span class="new">{l s='New'}</span>{/if}<a href="{$product.link|escape:'htmlall':'UTF-8'}" title="{$product.name|escape:'htmlall':'UTF-8'}">{$product.name|truncate:35:'...'|escape:'htmlall':'UTF-8'}</a></h3>
<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>

<p class="product_desc"><a href="{$product.link|escape:'htmlall':'UTF-8'}" title="{$product.description_short|truncate:100:'...'|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 isset($product.online_only) && $product.online_only}<span class="online_only">{l s='Online only!'}</span>{/if}
{if (!$PS_CATALOG_MODE AND ((isset($product.show_price) && $product.show_price) || (isset($product.available_for_order) && $product.available_for_order)))}
<div>
 {if isset($product.show_price) && $product.show_price && !isset($restricted_country_mode)}<span class="price" style="display: inline;">{if !$priceDisplay}{convertPrice price=$product.price}{else}{convertPrice price=$product.price_tax_exc}{/if}</span><br />{/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}</span>{/if}
</div>
{/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="button ajax_add_to_cart_button exclusive" 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_view" href="{$product.link|escape:'htmlall':'UTF-8'}" title="{l s='View'}"></a><br />
{if isset($comparator_max_item) && $comparator_max_item}
 <p class="compare"><input type="checkbox" onclick="checkForComparison({$comparator_max_item})" class="comparator" id="comparator_item_{$product.id_product}" value="{$product.id_product}" /> <label for="comparator_item_{$product.id_product}">{l s='Select to compare'}</label></p>
{/if}  
  </div>
 </li>
{/foreach}
</ul>
<!-- /Products list -->
{/if}

<div class="clear"></div>

 

Gracias de antemano

 

Pues lo dicho, aunque es más sencillo de lo que parece, ahora os diré porque.

 

Me baje una plantilla bastante básica pero me gusta, el tema es que esta plantilla tiene en la pagina de inicio 3 productos por fila, pero si entras dentro de cualquier categoria observas que en vez de los 3 productos solo hay 2, y donde se supone que hay un tercero, lo unico que observamos en un hueco vacio donde deberia de estar el tercer producto.

 

He estado Googleando bastante pero no doy con la solución. La historia esta en modificar el archivo product-list.tpl verdad? que parte debo modificar? Os dejo el codigo porque creo que el tema esta ahi, de hecho creo que esta en las primeras lineas verdad?. Si no fuese así comentarme por donde puedo mirar más please.

 

 

{if isset($products)}
<!-- Products list -->
<ul id="product_list" class="clear">
{foreach from=$products item=product name=products}
 <li class="ajax_block_product {if $smarty.foreach.products.first}first_item{elseif $smarty.foreach.products.last}last_item{/if} {if $smarty.foreach.products.index % 2}alternate_item{else}item{/if} clearfix">
  <div class="center_block">
		<h3>{if isset($product.new) && $product.new == 1}<span class="new">{l s='New'}</span>{/if}<a href="{$product.link|escape:'htmlall':'UTF-8'}" title="{$product.name|escape:'htmlall':'UTF-8'}">{$product.name|truncate:35:'...'|escape:'htmlall':'UTF-8'}</a></h3>
<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>

<p class="product_desc"><a href="{$product.link|escape:'htmlall':'UTF-8'}" title="{$product.description_short|truncate:100:'...'|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 isset($product.online_only) && $product.online_only}<span class="online_only">{l s='Online only!'}</span>{/if}
{if (!$PS_CATALOG_MODE AND ((isset($product.show_price) && $product.show_price) || (isset($product.available_for_order) && $product.available_for_order)))}
<div>
 {if isset($product.show_price) && $product.show_price && !isset($restricted_country_mode)}<span class="price" style="display: inline;">{if !$priceDisplay}{convertPrice price=$product.price}{else}{convertPrice price=$product.price_tax_exc}{/if}</span><br />{/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}</span>{/if}
</div>
{/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="button ajax_add_to_cart_button exclusive" 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_view" href="{$product.link|escape:'htmlall':'UTF-8'}" title="{l s='View'}"></a><br />
{if isset($comparator_max_item) && $comparator_max_item}
 <p class="compare"><input type="checkbox" onclick="checkForComparison({$comparator_max_item})" class="comparator" id="comparator_item_{$product.id_product}" value="{$product.id_product}" /> <label for="comparator_item_{$product.id_product}">{l s='Select to compare'}</label></p>
{/if}  
  </div>
 </li>
{/foreach}
</ul>
<!-- /Products list -->
{/if}

<div class="clear"></div>

 

Gracias de antemano

Hola,

Actualmente, como se te ven a ti los listados de los productos por categorias en tu plantilla? (en horizontal, o vertical ?)

Adjunta imagen para verlo.

Link to comment
Share on other sites

Bueno, al principio no entendi muy bien tu mensaje manumyway pero si se trata de hacer la columna (tal como ha comentado shacker) mas ancha para que quepan, mas elementos, tal como dice shacker, tienes que modificar la propiedad center_column, y si no me equivoco lo tienes que hacer en el global.css.

Link to comment
Share on other sites

Hola xicos, gracias por contestar a los dos, haber os comento que he estado haciendo pruebas, y el tema esq cuando amplio en ancho de la propiedad center_column, esta misma no cabe el la web y me la desplaza bajo de la pagina.

 

Creo que la solución es reducir la distancia entre productos, pues tienen demasiada separación entre si. Adjunto imagen.

error.png

 

Estoy ojeando el product_list.css, que propiedad tendría que reducir? Estoy mirandolo con el inspector de elementos pero la verdad esq no me aclaro muy bien.

 

Por si necesitais la dirección es: http://www.mywaypublicidad.com/tienda-online/29-todo-a-100

Link to comment
Share on other sites

Hola xicos, gracias por contestar a los dos, haber os comento que he estado haciendo pruebas, y el tema esq cuando amplio en ancho de la propiedad center_column, esta misma no cabe el la web y me la desplaza bajo de la pagina.

 

Creo que la solución es reducir la distancia entre productos, pues tienen demasiada separación entre si. Adjunto imagen.

error.png

 

Estoy ojeando el product_list.css, que propiedad tendría que reducir? Estoy mirandolo con el inspector de elementos pero la verdad esq no me aclaro muy bien.

 

Por si necesitais la dirección es: http://www.mywaypubl...e/29-todo-a-100

En el product-list.css de tu plantilla (css/product-list.css),

busca esto:

ul#product_list li {
background: none;
padding: 6px;
min-height: 130px;
height: auto;
float: left;
margin-bottom: 0.3em;
width: 242px;
height: 360px;
}

 

Y el width: le pones 234 depende 242 que es lo que tienes ahora.

 

Saludos

Link to comment
Share on other sites

Perfecto ""nadie"" =)

 

Como siempre!

 

Muchas gracias a los dos, ya se un poquito más que ayer, y menos que mañana ;)

 

Saludos!!!

:) Si has solucionado el tema, edita el titulo del tema, editando el primer post y añadiendo solucionado al titulo, esto ayudara a otros usuarios que busquen temas solucionados.

 

Un saludo

Link to comment
Share on other sites

Guest
This topic is now closed to further replies.
×
×
  • Create New...