Jump to content

Edit History

Manu-41

Manu-41

17 hours ago, Shonen said:

Tu as essayé de mettre en application quelque chose ? Dans l'idée de ce que je t'ai donné, j'ai fait le test d'implémentation sur un thème natif Presta 1.6 mais après à toi de tout styliser.

fichier /themes/tontheme/product-list.tpl



	{assign var='compteur' value=1}
	<!-- Products list -->
	<ul{if isset($id) && $id} id="{$id}"{else} id="product_list"{/if} class="product_list grid row{if isset($class) && $class} {$class}{/if}">
	{foreach from=$products item=product name=products}
		{math equation="(total%perLine)" total=$smarty.foreach.products.total perLine=$nbItemsPerLine assign=totModulo}
		{math equation="(total%perLineT)" total=$smarty.foreach.products.total perLineT=$nbItemsPerLineTablet assign=totModuloTablet}
		{math equation="(total%perLineT)" total=$smarty.foreach.products.total perLineT=$nbItemsPerLineMobile assign=totModuloMobile}
		{if $totModulo == 0}{assign var='totModulo' value=$nbItemsPerLine}{/if}
		{if $totModuloTablet == 0}{assign var='totModuloTablet' value=$nbItemsPerLineTablet}{/if}
		{if $totModuloMobile == 0}{assign var='totModuloMobile' value=$nbItemsPerLineMobile}{/if}

		{if $compteur == 4}
			<li class="col-xs-12 col-sm-6 col-md-4 new-block" style="border:1px solid red; height:400px;">
				Mon nouveau bloc.
			</li>
		{/if}
		{assign var='compteur' value=$compteur+1}
		<li class="ajax_block_product{if $page_name == 'index' || $page_name == 'product'} col-xs-12 col-sm-4 col-md-3{else} col-xs-12 col-sm-6 col-md-4{/if}{if $smarty.foreach.products.iteration%$nbItemsPerLine == 0} last-in-line{elseif $smarty.foreach.products.iteration%$nbItemsPerLine == 1} first-in-line{/if}{if $smarty.foreach.products.iteration > ($smarty.foreach.products.total - $totModulo)} last-line{/if}{if $smarty.foreach.products.iteration%$nbItemsPerLineTablet == 0} last-item-of-tablet-line{elseif $smarty.foreach.products.iteration%$nbItemsPerLineTablet == 1} first-item-of-tablet-line{/if}{if $smarty.foreach.products.iteration%$nbItemsPerLineMobile == 0} last-item-of-mobile-line{elseif $smarty.foreach.products.iteration%$nbItemsPerLineMobile == 1} first-item-of-mobile-line{/if}{if $smarty.foreach.products.iteration > ($smarty.foreach.products.total - $totModuloMobile)} last-mobile-line{/if}">

Et ici j'ai 1 seul bloc qui va apparaître après le 3e produit.

Mais en effet va falloir que tu blinde de style pour que ça rentre selon ton thème.

Bonjour,

j'ai testé, ca fonctionne et ça place bien le bloc.

{if $compteur == 4}
			<li class="col-xs-12 col-sm-6 col-md-4 new-block" style="border:1px solid red; height:400px;">
				Mon nouveau bloc.
			</li>
		{/if}
		{assign var='compteur' value=$compteur+1}
		

Juste un souci, le bloc est bien en position 5 (4 produit avant et 2 produit après), mais les autres produits sont décalés et laissent une zone blanche  de 2 produits en dessous du bloc.

testé avec le thème d'origine de ps 1.6

Merci pour ton aide 😉

 

Manu-41

Manu-41

17 hours ago, Shonen said:

Tu as essayé de mettre en application quelque chose ? Dans l'idée de ce que je t'ai donné, j'ai fait le test d'implémentation sur un thème natif Presta 1.6 mais après à toi de tout styliser.

fichier /themes/tontheme/product-list.tpl


	{assign var='compteur' value=1}
	<!-- Products list -->
	<ul{if isset($id) && $id} id="{$id}"{else} id="product_list"{/if} class="product_list grid row{if isset($class) && $class} {$class}{/if}">
	{foreach from=$products item=product name=products}
		{math equation="(total%perLine)" total=$smarty.foreach.products.total perLine=$nbItemsPerLine assign=totModulo}
		{math equation="(total%perLineT)" total=$smarty.foreach.products.total perLineT=$nbItemsPerLineTablet assign=totModuloTablet}
		{math equation="(total%perLineT)" total=$smarty.foreach.products.total perLineT=$nbItemsPerLineMobile assign=totModuloMobile}
		{if $totModulo == 0}{assign var='totModulo' value=$nbItemsPerLine}{/if}
		{if $totModuloTablet == 0}{assign var='totModuloTablet' value=$nbItemsPerLineTablet}{/if}
		{if $totModuloMobile == 0}{assign var='totModuloMobile' value=$nbItemsPerLineMobile}{/if}

		{if $compteur == 4}
			<li class="col-xs-12 col-sm-6 col-md-4 new-block" style="border:1px solid red; height:400px;">
				Mon nouveau bloc.
			</li>
		{/if}
		{assign var='compteur' value=$compteur+1}
		<li class="ajax_block_product{if $page_name == 'index' || $page_name == 'product'} col-xs-12 col-sm-4 col-md-3{else} col-xs-12 col-sm-6 col-md-4{/if}{if $smarty.foreach.products.iteration%$nbItemsPerLine == 0} last-in-line{elseif $smarty.foreach.products.iteration%$nbItemsPerLine == 1} first-in-line{/if}{if $smarty.foreach.products.iteration > ($smarty.foreach.products.total - $totModulo)} last-line{/if}{if $smarty.foreach.products.iteration%$nbItemsPerLineTablet == 0} last-item-of-tablet-line{elseif $smarty.foreach.products.iteration%$nbItemsPerLineTablet == 1} first-item-of-tablet-line{/if}{if $smarty.foreach.products.iteration%$nbItemsPerLineMobile == 0} last-item-of-mobile-line{elseif $smarty.foreach.products.iteration%$nbItemsPerLineMobile == 1} first-item-of-mobile-line{/if}{if $smarty.foreach.products.iteration > ($smarty.foreach.products.total - $totModuloMobile)} last-mobile-line{/if}">

Et ici j'ai 1 seul bloc qui va apparaître après le 3e produit.

Mais en effet va falloir que tu blinde de style pour que ça rentre selon ton thème.

Bonjour,

j'ai testé, ca fonctionne et ça place bien le bloc.

{if $compteur == 4}
			<li class="col-xs-12 col-sm-6 col-md-4 new-block" style="border:1px solid red; height:400px;">
				Mon nouveau bloc.
			</li>
		{/if}
		{assign var='compteur' value=$compteur+1}
		

Juste un souci, le bloc est bien en position 5 (4 produit avant et 2 produit après), mais les autres produits sont décalés et laissent une zone blanche  de 2 produits en dessous du bloc.

Merci pour ton aide 😉

 

×
×
  • Create New...