Автор Тема: Канонические ссылки и редирект 301  (Прочитано 1108 раз)

14 Январь 2017, 15:47:37
  • Новичок
  • *
  • Сообщений: 5
  • Репутация: +0/-0
  • Сообщество PrestaShop
    • Просмотр профиля
Добрый день. Клиент хочет видеть красивые ссылки для брендов. Для этого я сделал ссылки /category/fabricant-adidas ( это алиас ссылки /category/?selected_filters=fabricant-adidas ). Но если я включаю 301 редирект в разделе СЕО ( а включать надо потому-что много дублей иначе), то меня всегда редиректит на некрасивую ссылку (/category/?selected_filters=fabricant-adidas). Как мне сделать так, чтобы ссылки с selected_filters не редиректились? я знаю что это приведет к дублям этих страниц, но тут я выкручусь через каноникал. Подскажите, кто сталкивался плз.
14 Январь 2017, 17:10:04
Ответ #1
  • Партнер
  • Ветеран
  • ****
  • Сообщений: 22816
  • Репутация: +17143/-1
  • Разработка веб-сайтов и веб-программирование
    • Просмотр профиля
Включите ЧПУ в Настройки / SEO и URL.
Создайте производителей (бренды).
В robots.txt закройте индексацию ссылок со знаком "#".
У вас будут красивые ссылки брендов и не будет дублей.
Интернет-магазин под ключ.
Какой выбрать движок для интернет магазина ?
Какой движок лучше ?
Magento или Prestashop ?
Решение всех Ваших вопросов в создании Интернет-магазина.
14 Январь 2017, 17:30:17
Ответ #2
  • Новичок
  • *
  • Сообщений: 5
  • Репутация: +0/-0
  • Сообщество PrestaShop
    • Просмотр профиля
Включите ЧПУ в Настройки / SEO и URL.
Создайте производителей (бренды).
В robots.txt закройте индексацию ссылок со знаком "#".
У вас будут красивые ссылки брендов и не будет дублей.

Извините, но складывается впечатление, что вы не читали мой пост.
ЧПУ включено, 301 редирект включен.
Речь вообще не шла про ссылки с #
Речь идет о том что при включенном редиректе 301 заходя по ссылке /category/fabricant-adidas я имею редирект на /category/?selected_filters=fabricant-adidas
Я лишь хочу узнать можно ли добавить исключения в 301 редирект (например ссылки с $_GET['selected_filters'])

А по поводу дублей то без включения редиректа 301 в сео разделе они будут по любому (например при 2 категориях на одном товаре и тд).
14 Январь 2017, 17:40:01
Ответ #3
  • Ветеран
  • *****
  • Сообщений: 3419
  • Репутация: +79/-6
  • Сообщество PrestaShop
    • Просмотр профиля
Если у тебя включено чпу, то "selected_filters=..." не должно показывать в url.
Выбранные фильтры показывает после решетки
http://prestashop.ru/4-adidas#/color-black
14 Январь 2017, 17:48:15
Ответ #4
  • Ветеран
  • *****
  • Сообщений: 16670
  • Репутация: +14630/-5
  • Сообщество PrestaShop
    • Просмотр профиля
Версия prestashop какая? Модуль фильтров стандарный?
14 Январь 2017, 18:22:45
Ответ #5
  • Новичок
  • *
  • Сообщений: 5
  • Репутация: +0/-0
  • Сообщество PrestaShop
    • Просмотр профиля
Если у тебя включено чпу, то "selected_filters=..." не должно показывать в url.
Выбранные фильтры показывает после решетки
http://prestashop.ru/4-adidas#/color-black

Это происходит если вы выбираете фильтры на странице, если же вы хотите сделать ссылку на этого производителя из меню такая ссылка работать не будет с другой страницы.

Поэтому в опциях СЕО URLs "Route to category which has the "selected_filter" attribute for the "Layered Navigation" (blocklayered) module" у меня  {id}-{rewrite:/}{selected_filters}

Версия prestashop какая? Модуль фильтров стандарный?
1.6.1.8
модуль стандартный
15 Январь 2017, 13:40:58
Ответ #6
  • Ветеран
  • *****
  • Сообщений: 3419
  • Репутация: +79/-6
  • Сообщество PrestaShop
    • Просмотр профиля
1. Ссылка из меню делатся без фильтров, так как у каждого производителя есть своя страница
http://prestashop.ru/4-adidas/
http://prestashop.ru/5-puma/
... 

2. Для "Маршрут к категории, имеющей атрибут ""selected_filter" для модуля "Блок навигационных фильтров"
{id}-{rewrite}{/:selected_filters}стандарное правило чпу. По этому правилу выбранные фидьтры отделяются решеткой.
При таком правиле чпу фильтры блокируются от индексации в robots.txt.
Если хочешь индексировать выбранные фильры как отдельные страницы, то нужно менять чпу. Присали не раз. Ищи темы про robots.txt и карту сайта.
16 Январь 2017, 00:44:52
Ответ #7
  • Новичок
  • *
  • Сообщений: 5
  • Репутация: +0/-0
  • Сообщество PrestaShop
    • Просмотр профиля
1. Ссылка из меню делатся без фильтров, так как у каждого производителя есть своя страница
http://prestashop.ru/4-adidas/
http://prestashop.ru/5-puma/
... 

2. Для "Маршрут к категории, имеющей атрибут ""selected_filter" для модуля "Блок навигационных фильтров"
{id}-{rewrite}{/:selected_filters}стандарное правило чпу. По этому правилу выбранные фидьтры отделяются решеткой.
При таком правиле чпу фильтры блокируются от индексации в robots.txt.
Если хочешь индексировать выбранные фильры как отдельные страницы, то нужно менять чпу. Присали не раз. Ищи темы про robots.txt и карту сайта.


И я бы смог согласиться с пунктом 1, если бы prestashop позволял фильтры на странице производителя. Именно поэтому ссылки у меня на страницу с выбранным фильтром. Вот пример ссылки
http://www.stylos-montres.fr/14-montres/fabricant-bell_ross

По поводу 2 - посмотрите внимательнее - правило, которое я указал не стандартное.


16 Январь 2017, 14:00:15
Ответ #8
  • Новичок
  • *
  • Сообщений: 5
  • Репутация: +0/-0
  • Сообщество PrestaShop
    • Просмотр профиля
Может кому пригодится - метод лежит в classes/controllers/fontController
наследуем класс и переопределяем метод
   
protected function canonicalRedirection($canonical_url = '')
    {
         if(!isset($_GET['selected_filters']))
            parent::canonicalRedirection($canonical_url);
    }