Тег canonical

Автор Anque, 23 августа 2016, 13:00:13

« назад - далее »

coder

#15
Цитата: grandlunge от 25 августа 2016, 12:57:29
Вставляем {if $page_name == 'product' && isset($product['id_category_default'])}
<link rel="canonical" href="{$link->getProductLink($product['id_category_default'])}" />
{/if}
верно?
разницы нет, по прежнему каноникал показывается соответствующий просматриваемой ссылке.
Тот код, что я написал, работает в контроллере товара. На других страницах будет другой код.
Главное что у товара есть 'id_category_default', поэтому можно всегда узнать эту категорию.
Для определения канонической ссылки эта переменная бесполезна.
Что касается вашего кода, то он неправильный, для getProductLink использут id товара, а не id категории.

Mr.Sen

В адмике в настройках SEO и URL включаете 301 редирект в Редирект на канонический (основной) URL.
Включаете чпу, в правилах чпу устанавливаете путь к странице товара
{id}-{rewrite}
Все запросы к одной странице будут редиректится на адрес site.ru/1-product.html.

grandlunge

Цитата: Миколас от 25 августа 2016, 13:01:08
Цитата: grandlunge от 25 августа 2016, 12:11:45
Цитата: Миколас от 25 августа 2016, 10:30:39
{if $page_name == 'product' && isset($product->id)}
<link rel="canonical" href="{$link->getProductLink($product->id)}" />

Так вот этот код и определит один url страницы товара по правилам чпу.
Загрузите этот код и посмотрите как он работает когда карточка отрабатывается одновременно по разным категориям
Загрузил, только на страницу товара. Везде один canonical. Зачем его добавлять на страницы категории? Робот переходит на страницы товара и определяет группу страниц и один предпочитаемый адрес.
толи я Вас не понимаю, то ли Вы меня:)
а кто говорил о том, что бы добавлять его на страницы категорий?!
1) добавлять же надо код этот в header.tpl?
2) код на сколько понял работает следующим образом - если это страница карточки товара, то загружается тег каноникал для этой станицы.
3) да все верно с роботом и определяет предпочитаемый адрес. Но товар может попасть в индекс и два раза - посредством прямой ссылки и через категорию.

А с этим кодом у меня канонический адрес получается разный. Может я что-то делаю не так. Не понимаю почему  у Вас везде один канонический.
У меня вот что - см. файл вложения

Миколас

У меня не отрывается страница
http://prestashop.ru/1.html
при обращении к такому адресу редирект на
http://prestashop.ru/tshirts/1.html
Правила чпу у меня созданы с учетом вложенности.

grandlunge

Цитата: Mr.Sen от 25 августа 2016, 13:26:13
В адмике в настройках SEO и URL включаете 301 редирект в Редирект на канонический (основной) URL.
Включаете чпу, в правилах чпу устанавливаете путь к странице товара
{id}-{rewrite}
Все запросы к одной странице будут редиректится на адрес site.ru/1-product.html.
это включено, почему-то не работает. Это уже другая проблема)
Так как много страниц уже попало в индекс то решил что проще и быстрее будет решить вопрос указанием канонического адреса

Миколас

Цитироватьда все верно с роботом и определяет предпочитаемый адрес. Но товар может попасть в индекс и два раза - посредством прямой ссылки и через категорию.
Переиндексирует со временем, не быстро, есть страниц много. Нужно только добавить канонические URL. В веб мастере проверь видимость сайта как поисковый робот его видит. Там сразу увидишь засчитывает  rel="canonical" или нет.

Миколас

Цитироватьэто включено, почему-то не работает. Это уже другая проблема)
Может у тебя nginx, тогда правила редиректа нужно самому добавлять в конфигурацию сайта.

grandlunge

Цитата: Mr.Sen от 25 августа 2016, 13:26:13
В адмике в настройках SEO и URL включаете 301 редирект в Редирект на канонический (основной) URL.
Включаете чпу, в правилах чпу устанавливаете путь к странице товара
{id}-{rewrite}
Все запросы к одной странице будут редиректится на адрес site.ru/1-product.html.
Цитата: Миколас от 25 августа 2016, 13:50:07
У меня не отрывается страница
http://prestashop.ru/1.html
при обращении к такому адресу редирект на
http://prestashop.ru/tshirts/1.html
Правила чпу у меня созданы с учетом вложенности.
Цитата: Миколас от 25 августа 2016, 13:54:51
Цитироватьэто включено, почему-то не работает. Это уже другая проблема)
Может у тебя nginx, тогда правила редиректа нужно самому добавлять в конфигурацию сайта.
я вижу, что у вас по разному настроен редирект. А как правильней? 301 редирект на "site.ru/1-product.html" или на главную категорию "tshirts/1.html" ?
да, все верно у меня nginx... теперь понятно почему раньше работал редирект и теперь нет... из-за этого у меня теперь куча дубляжа в выдаче.
вот и думаю как оптимальнее решить...
спасибо всем за ответы и помощь!!

grandlunge

Наверное самое правильное в моем случае настроить 301 редирект по схеме со всех дубляжей на site.ru/parent-categoru/pruduct.html
и канонический адрес настроить по такой же схеме? сталкивался кто как оперативней? слышал что куча настроенного 301 редиректа тоже отрицательно сказывается - робот медленно обрабатывает ресурс.