Избавляемся от дублей PrestaShop, пагинация и сортировка

Тема в разделе "PrestaShop", создана пользователем novoselov, 29 июн 2014.

Информация :
Приветствую гость, обрати внимание! Темы которые закреплены в разделах, в скором времени будут откреплены. Правила раздела PrestaShop

(Не актуальные темы) Каталоги:Модули PrestaShop 1.7Модули PrestaShop 1.5 - 1.6Шаблоны PrestaShop 1.7Шаблоны PrestaShop 1.5 - 1.6
(Не актуальные темы) Поиск / Запросы:Модули PrestaShop 1.7Модули PrestaShop 1.5 - 1.6Шаблоны PrestaShop 1.7Шаблоны PrestaShop 1.5 - 1.6
Полезная информация:Поддержка и помощь c PrestaShopУбираем ПрестаТраст, стучалки и прочую рекламуСовместные покупки модулей и шаблоновПеревод Prestashop и модулей
Модераторы: trace
  1. MockoB

    MockoB Создатель

    Регистр.:
    24 дек 2016
    Сообщения:
    23
    Симпатии:
    51
    Thanks is it fine like that:
    Код:
            {if $page_name == 'index'}
            <link rel="canonical" href="{$base_dir_ssl}" />
            {elseif $page_name == 'product'}
            <link rel="canonical" href="{$request_uri}" />
            {elseif $page_name == 'module-prestablog-blog'}
            <link rel="canonical" href="{$request_uri}" />
            {elseif $page_name == 'category'}
            <link rel="canonical" href="{$request_uri}" />
            {else}
            <link rel="canonical"
            href="/{$request_uri|substr:1|regex_replace:'/\/(.*)/':''|regex_replace:'/\?(.*)/':''}/" />
            {/if}
    
    I added quotes to the index also, is it correct like that?

    And it is working perfectly fine with or without the quotes also.
     
  2. cepera_007

    cepera_007

    Регистр.:
    28 янв 2007
    Сообщения:
    210
    Симпатии:
    183
    {$request_uri} - the variable will show the entire URL.
    Example page url: https://site.com/categoryID_category-name.html?p=5
    $request_uri = /categoryID_category-name.html?p=5 --> and it is not canonical url
    Use $request_uri isn't correct. I do not know the correct way to show canonical url :(
     
  3. MockoB

    MockoB Создатель

    Регистр.:
    24 дек 2016
    Сообщения:
    23
    Симпатии:
    51
    It is for all pages I don't need canonical tag, like cms pages, order page, etc.

    Basically I need canonical tag for all those pages which have pagination, to avoid duplicate content.
    I added additionally the prestablog module by using {$page_name} to view its name, because it was using the request_uri and was pointing always to the /blog URL, avoid indexing of all other blog pages.

    I don't know if I'm missing something ... maybe I am.
     
  4. Vadimuch

    Vadimuch Постоялец

    Регистр.:
    4 мар 2013
    Сообщения:
    79
    Симпатии:
    50
    А не подскажите как скрыть показ описания категории на страницах КРОМЕ первой, когда еще и применяется blocklayered (для Prestashop 1.6.1.20)??)

    Для страниц без blocklayered - все просто:
    {if $p == 1}
    <div class="rte">{$category->description}</div>
    {/if}

    А вот как обойти динамическое формирование страницы с blocklayered и его урлом с #/page-2
    Думаю как бы подвязать вывод описания к пагинации из pagination.tpl... но пока ничего не получается((

    Нашел решение под старые версии... но скорее всего для Prestashop 1.6.1.20 оно не заработает((

    Подскажите пожалуйста, может вы с такой проблемой сталкивались?)
    Спасибо.
     
  5. _sashok

    _sashok PrestaShop Expert

    Регистр.:
    15 июл 2011
    Сообщения:
    2.057
    Симпатии:
    3.410
    #/page-2 - это не проблема
    там и должно быть описание - так как это для юзеров

    а для роботов выше указанных хак работает - так как роботы вторую страницу видят как ?p=2 и т.п.
     
    Vadimuch нравится это.
  6. AlexDmitrych

    AlexDmitrych Постоялец

    Регистр.:
    6 мар 2014
    Сообщения:
    61
    Симпатии:
    67
    Модуль SEO Fields вроде как решает вопрос с rel="canonical"
     

    Вложения:

    • gmseofields.zip
      Размер файла:
      26,2 КБ
      Просмотров:
      48
    Kolfg, filimda, Prester и 4 другим нравится это.
  7. oparinsv29

    oparinsv29 Писатель

    Регистр.:
    30 авг 2018
    Сообщения:
    6
    Симпатии:
    2
    Что то непонятно как он работает и как его настраивать
     
  8. cepera_007

    cepera_007

    Регистр.:
    28 янв 2007
    Сообщения:
    210
    Симпатии:
    183
    Модуль добавляет в html-код теги rel="canonical" и rel="next" / rel="prev" на страничках пагинации.
    Модуль не имеет настроек, после его установки он сам уже начинает выполнять свою работу
     
    Kolfg нравится это.