This is an old revision of the document!


Customizing PrestaShop v1.6 for use with LSCWP

The following widgets and features require further customization before they can be used with LSCPS:

  • Viewed Products Block
  • Compare Products Feature

The use of the Viewed Products Block module is not recommended as it is not cache friendly. Disable it in the Modules List area.

If you are using the Compare Product feature, you will need to define an ESI block around it in order for it to work properly with LSCPS.

Open the appropriate template file in an editor. The default template is located at themes/default-bootstrap/product-compare.tpl but if you have a custom theme, it will be under that theme's folder.

Locate the following text: {count($compared_products)}.

Anywhere this text appears, surround it with LiteSpeed ESI hooks like so:

{hook h="litespeedEsiBegin" m="lsc_compareproduct" field="comparedcount"}{count($compared_products)}{hook h="litespeedEsiEnd"}

Note: You must be careful not to add extra spaces or line breaks in between!

This is the default template after the substitutions have been made. Your template should look similar:

{if $comparator_max_item}
	<form method="post" action="{$link->getPageLink('products-comparison')|escape:'html':'UTF-8'}" class="compare-form">
		<button type="submit" class="btn btn-default button button-medium bt_compare bt_compare{if isset($paginationId)}_{$paginationId}{/if}" disabled="disabled">
<span>{l s='Compare'} (<strong class="total-compare-val">{hook h="litespeedEsiBegin" m="lsc_compareproduct" field="comparedcount"}{count($compared_products)}{hook h="litespeedEsiEnd"}</strong>)<i class="icon-chevron-right right"></i></span>
		</button>
		<input type="hidden" name="compare_product_count" class="compare_product_count"
               value="{hook h="litespeedEsiBegin" m="lsc_compareproduct" field="comparedcount"}{count($compared_products)}{hook h="litespeedEsiEnd"}" />
		<input type="hidden" name="compare_product_list" class="compare_product_list" value="" />
	</form>
	{if !isset($paginationId) || $paginationId == ''}
		{addJsDefL name=min_item}{l s='Please select at least one product' js=1}{/addJsDefL}
		{addJsDefL name=max_item}{l s='You cannot add more than %d product(s) to the product comparison' sprintf=$comparator_max_item js=1}{/addJsDefL}
		{addJsDef comparator_max_item=$comparator_max_item}
		{addJsDef comparedProductsIds=$compared_products}
	{/if}
{/if}
{addJsDef comparedProductsIds=$compared_products}

You'll notice that {count($compared_products)} appeared twice, and was surrounded with the ESI hooks both times.

  • Admin
  • Last modified: 2017/10/02 19:22
  • by Lauren Song