Купил тему, в папке с ней есть папка modules, которая видимо меняет представления для моделей. После установки темы стал криво работать блок многоуровневой навигации: ползунок прайса не отображается (точнее отображается, но только после выбора любого другого фильтра) и невозможно перейти на вторую (и последующие) страницы с результатами фильтрации - ошибка 404. Вот код из theme/modules/blocklayered/blocklayred.tpl:
Код:
{*
* 2007-2011 PrestaShop
*
* NOTICE OF LICENSE
*
* This source file is subject to the Academic Free License (AFL 3.0)
* that is bundled with this package in the file LICENSE.txt.
* It is also available through the world-wide-web at this URL:
* http://opensource.org/licenses/afl-3.0.php
* If you did not receive a copy of the license and are unable to
* obtain it through the world-wide-web, please send an email
* to license@prestashop.com so we can send you a copy immediately.
*
* DISCLAIMER
*
* Do not edit or add to this file if you wish to upgrade PrestaShop to newer
* versions in the future. If you wish to customize PrestaShop for your
* needs please refer to http://www.prestashop.com for more information.
*
* @author PrestaShop SA <contact@prestashop.com>
* @copyright 2007-2011 PrestaShop SA
* @version Release: $Revision: 8290 $
* @license http://opensource.org/licenses/afl-3.0.php Academic Free License (AFL 3.0)
* International Registred Trademark & Property of PrestaShop SA
*}
<!-- Block layered navigation module -->
{if $nbr_filterBlocks != 0}
<div id="layered_block_left" class="block">
<h4>{l s='Catalog' mod='blocklayered'}</h4>
<div class="block_content">
<form action="#" id="layered_form">
<div>
{if isset($selected_filters) && $n_filters > 0}
<div id="enabled_filters">
<span class="layered_subtitle">{l s='Enabled filters:' mod='blocklayered'}</span>
<ul>
{foreach from=$selected_filters key=filter_type item=filter_values}
{foreach from=$filter_values item=filter_value name=f_values}
{foreach from=$filters item=filter}
{if $filter.type == $filter_type && isset($filter.values)}
{if isset($filter.slider) && $smarty.foreach.f_values.first}
<li>
- {$filter.name|escape:html:'UTF-8'}{l s=':'}
{$filter.values[0]|escape:html:'UTF-8'}{$filter.unit|escape:html:'UTF-8'} -
{$filter.values[1]|escape:html:'UTF-8'}{$filter.unit|escape:html:'UTF-8'}
</li>
{else}
{foreach from=$filter.values key=id_value item=value}
{if $id_value == $filter_value}
<li>
<a href="#" class="del" rel="layered_{$filter.type_lite}_{$id_value}" title="{l s='Cancel' mod='blocklayered'}">x</a>
- {$filter.name|escape:html:'UTF-8'}{l s=':'} {$value.name|escape:html:'UTF-8'}
</li>
{/if}
{/foreach}
{/if}
{/if}
{/foreach}
{/foreach}
{/foreach}
</ul>
</div>
{/if}
{foreach from=$filters item=filter}
{if isset($filter.values)}
<div class="clearfix blockfilter">
<span class="layered_close"><a href="#" rel="layered_{$filter.type}_{$filter.id_key}">x</a></span>
<span class="layered_subtitle">{$filter.name|escape:html:'UTF-8'}</span>
<ul id="layered_{$filter.type}_{$filter.id_key}">
{if !isset($filter.slider)}
{foreach from=$filter.values key=id_value item=value}
<li class="nomargin">
{if isset($filter.is_color_group) && $filter.is_color_group}
<input type="button" name="layered_{$filter.type_lite}_{$id_value}" rel="{$id_value}_{$filter.id_key}" id="layered_attribute_{$id_value}" {if !$value.nbr} value="X" disabled="disabled"{/if} style="background: {if isset($value.color)}{$value.color}{else}#CCC{/if}; margin-left: 0; width: 16px; height: 16px; padding:0; border: 1px solid {if isset($value.checked) && $value.checked}red{else}#666{/if};" />
{if isset($value.checked) && $value.checked}<input type="hidden" name="layered_{$filter.type_lite}_{$id_value}" value="{$id_value}" />{/if}
{else}
<input type="checkbox" class="checkbox" name="layered_{$filter.type_lite}_{$id_value}" id="layered_{$filter.type_lite}{if $id_value || $filter.type == 'quantity'}_{$id_value}{/if}" value="{$id_value}{if $filter.id_key}_{$filter.id_key}{/if}"{if isset($value.checked)} checked="checked"{/if}{if !$value.nbr} disabled="disabled"{/if} />
{/if}
<label for="layered_{$filter.type_lite}_{$id_value}"{if !$value.nbr} class="disabled"{else}{if isset($filter.is_color_group) && $filter.is_color_group} name="layered_{$filter.type_lite}_{$id_value}" class="layered_color" rel="{$id_value}_{$filter.id_key}"{/if}{/if}>{$value.name|escape:html:'UTF-8'}{if $layered_show_qties}<span> ({$value.nbr})</span>{/if}</label>
</li>
{/foreach}
{else}
<label for="{$filter.type}">{l s='Range:'}</label> <span id="layered_{$filter.type}_range"></span>
<div style="margin: 6px 0 6px 6px; width: 93%;">
<div style="margin-top:5px;" class="layered_slider" id="layered_{$filter.type}_slider"></div>
</div>
<script type="text/javascript">
unit = '{$filter.unit}';
{literal}
$(document).ready(function()
{
$('#layered_{/literal}{$filter.type}{literal}_slider').slider({
range: true,
min: {/literal}{$filter.min}{literal},
max: {/literal}{$filter.max}{literal},
values: [ {/literal}{$filter.values[0]}{literal}, {/literal}{$filter.values[1]}{literal}],
slide: function( event, ui ) {
$('#layered_{/literal}{$filter.type}{literal}_range').html(ui.values[ 0 ] + unit + ' - ' + ui.values[ 1 ] + unit);
},
stop: function () {
reloadContent();
}
});
$('#layered_{/literal}{$filter.type}{literal}_range').html($('#layered_{/literal}{$filter.type}{literal}_slider').slider('values', 0 ) +unit+
' - ' + $('#layered_{/literal}{$filter.type}{literal}_slider').slider('values', 1 )+unit );
});
{/literal}
</script>
<!--
<script type="text/javascript">
unit = '{$filter.unit}';
type = '{$filter.type}';
max = '{$filter.max}';
min = '{$filter.min}';
values = [{$filter.values[0]}, {$filter.values[1]}];
{literal}
$(document).ready(function()
{
initSlider(type, min, max, values, unit);
});
{/literal}
</script>
-->
{/if}
</ul>
</div>
{/if}
{/foreach}
</div>
<input type="hidden" name="id_category_layered" value="{$id_category_layered}" />
{foreach from=$filters item=filter}
{if $filter.type_lite == 'id_attribute_group' && isset($filter.is_color_group) && $filter.is_color_group}
{foreach from=$filter.values key=id_value item=value}
{if isset($value.checked)}
<input type="hidden" name="layered_id_attribute_group_{$id_value}" value="{$id_value}_{$filter.id_key}" />
{/if}
{/foreach}
{/if}
{/foreach}
</form>
</div>
<div id="layered_ajax_loader" style="display: none;">
<p style="margin: 20px 0; text-align: center;"><img src="{$img_ps_dir}loader.gif" alt="" /><br />{l s='Loading...' mod='blocklayered'}</p>
</div>
</div>
{else}
<div id="layered_block_left" class="block">
<div class="block_content">
<form action="#" id="layered_form">
<input type="hidden" name="id_category_layered" value="{$id_category_layered}" />
</form>
</div>
<div id="layered_ajax_loader" style="display: none;">
<p style="margin: 20px 0; text-align: center;"><img src="{$img_ps_dir}loader.gif" alt="" /><br />{l s='Loading...' mod='blocklayered'}</p>
</div>
</div>
{/if}
<!-- /Block layered navigation module -->
Беда в том, что без этого файла работает на ура, но выглядит уж очень криво... Пугает то, что в оригинальном blacklayered.tpl 239 строк кода, а в файле с темой 160... еще обидно, что сапорт студии, которая продает эти темы был отзывчив, пока не получил деньги (хоть и копейки - 19$), с проблемами этой кривой темы приходится самому бороться...