Seo-фильтр

Seo-фильтр для Shop-Script

Оптимизация фильтра магазина под поисковые запросы

5 оценок

Ваш отзыв
Установок
80+
Разработчик
Поддержка

Плагин для своей корректной работы требует внесение изменений в тему дизайна.

Расмотрим данные изменения на примере темы дизайна Default 3.0

Шаблон category.html - шаблон, в котором находится форма Аякс-фильтра. В зависимости от темы дизайна необходимая форма фильтра может находиться в другом шабллоне, например, sidebar.html и пр.

  1. Добавление кода:

    {if class_exists('shopFilterHelper')}
        {*Получение текущего фильтра*}
        {$filter = shopFilterHelper::getCurrentFilter()}

        {if $filter}
            {*Получение адреса формы фильтров*}
            {$filter_category = $wa->shop->category($filter.category_id)}
            {$filters_form_url = $wa->shop->categoryUrl($filter_category)}

        {/if}
    {/if}

    {*В данном поле хранится Meta Title, который будет подставляться в заголовок окна браузера*}
    <input type="hidden" name="filter-plugin-meta-title" value="{$filter.meta_title|default:$filter.name|default:$category.meta_title|default:$category.name}" />

  2. Замена кода:

    Исходный код:

    <form class="filters-form-wrapper" method="get" action="{$wa->currentUrl(0,1)}" data-loading="{$wa_parent_theme_url}img/loading16.gif">


    Новый код:

    {*Изменение адреса формы фильтров*}
    <form class="filters-form-wrapper" method="get" action="{$filters_form_url|default:$wa->currentUrl(0,1)}" data-loading="{$wa_parent_theme_url}img/loading16.gif">

  3. Замена кода:

    Исходный код:

    <p>{$category.description}</p>


    Новый код:

    {*Задается класс для описания категории*}
    <div class="category-description">{$category.description}</div>

Шаблон default.shop.js - шаблон, в котором находится код отвечающий за работу Аякс-фильтра. В зависимости от темы дизайна необходимая форма фильтра может находиться в другом шабллоне.

  1. Замена кода:

    Исходный код:

    var url = '?' + params.join('&');


    Новый код:

    /*Используется адрес из формы фильтров*/
    var url = f.attr('action') + '?' + params.join('&');

  2. Замена кода:

    Исходный код:

    $.get(url+'&_=_', function(html) {


    Новый код:

    /*Добавление дополнительных переменных textStatus, jqXHR*/
    $.get(url+'&_=_', function(html, textStatus, jqXHR) {

  3. Замена кода:

    Исходный код:

    var tmp = $('<div></div>').html(html);


    Новый код:

    var tmp = $('<div></div>').html(html);

    /*Обновление названия категории*/
    $('h1.category-name').html(tmp.find('h1.category-name').html());

    /*Обновление описания категории*/
    $('.category-description').html(tmp.find('.category-description').html());

    /*Обновление заголовка страницы, который выводится на вкладке браузера*/
    $('title').text(tmp.find('[name=filter-plugin-meta-title]').val());

  4. Замена кода:

    Исходный код:

    window.history.pushState({}, '', url);


    Новый код:

    /*Установка текущего адреса страницы в строке браузера*/
    window.history.pushState({}, '', jqXHR.getResponseHeader('X-Current-Url'));

При возникновении проблем с самостоятельной настройкой рекомендуем обратиться за помощью к квалифицированному программисту. В рамках бесплатной технической поддержки данная настройка не осуществляются.

Можем Вам предложить выполнение платной настройки ориентировочная стоимость составит от 1000руб. за внесение изменений в одну тему дизайна.