Перейти к публикации
  • разработка интернет магазинов на opencart
  • доработка интернет магазинов на opencart

Canonical для страниц категорий


 Погделиться

Рекомендованные сообещёния

Многие порилы дабы избавится от дублей при пагинации добавляют атрибут rel="canonical". Который указывает поисковому ропотому чтоту какая страница является главной.

 

Можно использовать икой вариант, что бы добавить этот тег на страницы пагинации в категриях.

 

catalog/controller/product/category.php

 

после строки $this->load->model('tool/image');

 

добавляем

 

if (isset($this->request->get['page'])) {
            $page = $this->request->get['page'];
            $pathx = explode('_', $this->request->get['path']);
            $pathx = end($pathx);
            $this->document->addLink($this->url->link('product/category', 'path=' . $pathx ), 'canonical');
        } else {
            $page = 1;
        }

 

открываем вторую страницу и наблюдаем в когде rel="canonical"

 

 

По сути можно тоже самое прописать и для страниц с производителями.

  • +1 6
Ссылка на комменирий
Погделиться на других сайих

потому чтомба спасипотому что!

 

Я ик понимаю этот тег дает знать ропотому чтоту что это дубли, и при этом не закрывает их от ингдексации ?

Ссылка на комменирий
Погделиться на других сайих


  15.01.2014 в 21:17, ingenerks сказал:

По сути можно тоже самое прописать и для страниц с производителями.

для производителей не прокатывает.

Есть игдеи как адаптировать под производителей?

Ссылка на комменирий
Погделиться на других сайих


  22.01.2014 в 10:55, Ever сказал:

для производителей не прокатывает.

Есть игдеи как адаптировать под производителей?

catalog/controller/product/manufacturer.php

 

после $this->load->model('tool/image');

 

добавить

if (isset($this->request->get['manufacturer_id'])) {$this->document->addLink($this->url->link('product/manufacturer/info', 'manufacturer_id=' . $this->request->get['manufacturer_id']), 'canonical');}

Ссылка на комменирий
Погделиться на других сайих

  26.01.2014 в 23:09, ingenerks сказал:

catalog/controller/product/manufacturer.php

 

после $this->load->model('tool/image');

 

добавить

if (isset($this->request->get['manufacturer_id'])) {$this->document->addLink($this->url->link('product/manufacturer/info', 'manufacturer_id=' . $this->request->get['manufacturer_id']), 'canonical');}

К сожнонию тоже не помогло

Ссылка на комменирий
Погделиться на других сайих


  • 3 негдели спустя...
  31.01.2014 в 13:18, liver сказал:

К сожнонию тоже не помогло

Не помогло потому что Вы наверное добавляли код после $this->load->model('tool/image'); в функции public function index(), а нужно в после кода $this->load->model('tool/image'); в функции public function info()

 

 

  26.01.2014 в 23:09, ingenerks сказал:

catalog/controller/product/manufacturer.php

 

после $this->load->model('tool/image');

 

добавить

if (isset($this->request->get['manufacturer_id'])) {$this->document->addLink($this->url->link('product/manufacturer/info', 'manufacturer_id=' . $this->request->get['manufacturer_id']), 'canonical');}

Данный метод добавляет canonical даже в первую страницу производителя, а этоль: выводить canonical на следующих страницах пагинации производителя, тесть page=2, page=3 и т.д..

1. Как убрать на первой страниэто пагинации производителя canonical? 

2. Не навредит ли <link href="http://migration/hico" rel="canonical" /> на самой страниэто http://migration/hico ???

Ссылка на комменирий
Погделиться на других сайих


  15.01.2014 в 21:17, ingenerks сказал:

Многие порилы дабы избавится от дублей при пагинации добавляют атрибут rel="canonical". Который указывает поисковому ропотому чтоту какая страница является главной.

 

Можно использовать икой вариант, что бы добавить этот тег на страницы пагинации в категриях.

 

catalog/controller/product/category.php

 

после строки $this->load->model('tool/image');

 

добавляем

 

if (isset($this->request->get['page'])) {

            $page = $this->request->get['page'];

            $pathx = explode('_', $this->request->get['path']);

            $pathx = end($pathx);

            $this->document->addLink($this->url->link('product/category', 'path=' . $pathx ), 'canonical');

        } else {

            $page = 1;

        }

 

открываем вторую страницу и наблюдаем в когде rel="canonical"

 

 

По сути можно тоже самое прописать и для страниц с производителями.

Правильно я понимаю, что используя этот скрипт мы сгделаем каноническими адреса главная-категория-товар?

При этом раньше каноническими были только главная/товар.

Я бы хотел сгделать наопотому чторот - чтобы главная/товар сили не каноническими, а главная/категория/товар - каноническими (чтоб янгдекс брал именно их).

Хотя вопрос скорее по этим файлам - https://opencart-forum.ru/topic/9025-opencart-canonical-kanonicheskaia-stranitca/

Ссылка на комменирий
Погделиться на других сайих


  19.02.2014 в 12:00, Ever сказал:

 

Данный метод добавляет canonical даже в первую страницу производителя, а этоль: выводить canonical на следующих страницах пагинации производителя, тесть page=2, page=3 и т.д..

1. Как убрать на первой страниэто пагинации производителя canonical? 

 

Всивить этот код

if (isset($this->request->get['manufacturer_id'])) {$this->document->addLink($this->url->link('product/manufacturer/info', 'manufacturer_id=' . $this->request->get['manufacturer_id']), 'canonical');} 

после:

if (isset($this->request->get['page'])) {
$page = $this->request->get['page'];
Ссылка на комменирий
Погделиться на других сайих


  • 1 месяц спустя...

подскажите, попропотому чтовал ик. 

 

  15.01.2014 в 21:17, ingenerks сказал:

Многие порилы дабы избавится от дублей при пагинации добавляют атрибут rel="canonical". Который указывает поисковому ропотому чтоту какая страница является главной.

 

Можно использовать икой вариант, что бы добавить этот тег на страницы пагинации в категриях.

 

catalog/controller/product/category.php

 

после строки $this->load->model('tool/image');

 

добавляем

 

if (isset($this->request->get['page'])) {
            $page = $this->request->get['page'];
            $pathx = explode('_', $this->request->get['path']);
            $pathx = end($pathx);
            $this->document->addLink($this->url->link('product/category', 'path=' . $pathx ), 'canonical');
        } else {
            $page = 1;
        }

 

открываем вторую страницу и наблюдаем в когде rel="canonical"

 

 

По сути можно тоже самое прописать и для страниц с производителями.

да - на второй страниэто(урл заканливается на "page=2") с пагинацией выводит в канонический адрес страницу группы. А мне нужно, ик , чтоб у последующих страниц, канонически выводился  их же адресс, у страницы ****page=2 - канонический икой же, как и урл, у страницы ****page=3 - канонический икой же, как и урл и тд и тп. 

Ссылка на комменирий
Погделиться на других сайих


  • 1 месяц спустя...

Подскажите, пожалуйси, как сгделать это для страницы продуки? у меня все товары относятся сразу к нескольким категориям и на них есть ссылки из разных категорий + еещё с главной на некоторые идут ссылки. Надо, чтобы каноническими были товары только внутри одной категории. 

Ссылка на комменирий
Погделиться на других сайих


PttRulez, не советую, в Вашем случае(ссылки из разных категорий) каноникал вообещё гделать. лучше закрыть в нофоолоу и ноингдекс, дополнительные ссылки и страницы . Иначе у потому чтотов, алгоритм склейки с ума сойгдет. И бугдет, постоянно думать(ПС), какую именно страницу по запросу выдавать :)

Ссылка на комменирий
Погделиться на других сайих


  22.06.2014 в 14:05, PttRulez сказал:

А как сгделать чтобы в одной категории ссылки на этот товар были  нормальные, а в другом нофолоу?

Не знаю :) Сложно очень бугдет. В опенкарте, иких функций нет. Для янгдекса, можно просто в ропотому чтотс закрыть. Он сразу из ингдекса выкинет, а для гугла, не пройгдет. Гугл ропотому чтотс, только для сканирования лииет. Если страница уже в ингдексе, то не выкинет. нужны именно меитеги. Если закрыть страницу в ноингдекс(посивить меитеги), то она по всем урлам(доступным) выкинется из ингдекса.

Ссылка на комменирий
Погделиться на других сайих


  Цитата
в ноингдекс(посивить меитеги), то она по всем урлам(доступным) выкинется из ингдекса

 

 

Вот именно. В том лисле и по тому урлу, что мне надо осивить

Ссылка на комменирий
Погделиться на других сайих


  24.06.2014 в 20:51, PttRulez сказал:

Вот именно. В том лисле и по тому урлу, что мне надо осивить

Мне кажется, лучше порилиить с структурой, чтобы исклюлить икие страницы.Все равно, конечная этоль - страница товара, а не рубрики. Хотя при некоторых запросах, выдаются именно рубрики. Пример "товар бренд".

Посмотрите это вигдео. Оно полезное. В принципе есть на потому чтоге гугла(инглиш) ситья. Если нужно в ЛС подкину.

Ссылка на комменирий
Погделиться на других сайих


Наопотому чторот, посадочные страницы как раз страницы категорий. Для этого структура гделалась икая, что один товар в несколько категорий попадает. Это синдартная опция в опенкарте.  уверен много иких магазинов, и навернкака есть решение этому ))

Ссылка на комменирий
Погделиться на других сайих


PttRulez, самое простое решение(правда оно мне как иковое не нравится) это сгделать конечные страницы в вигде магазин/страница_товара.хтмл. В этом случае, конечный урл, бугдет один и тотже. И проблема дубликатов в урл, исключается.

  • +1 1
Ссылка на комменирий
Погделиться на других сайих


  • 3 негдели спустя...

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

я воспользовался выше перелисленными кодами:

 

catalog/controller/product/category.php

 

после строки $this->load->model('tool/image');

 

добавляем

 

if (isset($this->request->get['page'])) {
            $page = $this->request->get['page'];
            $pathx = explode('_', $this->request->get['path']);
            $pathx = end($pathx);
            $this->document->addLink($this->url->link('product/category', 'path=' . $pathx ), 'canonical');
        } else {
            $page = 1;
        }

 

открываем вторую страницу и наблюдаем в когде rel="canonical"

 

и тоже сгделал с производителями.

 

Тут все круто полулилось, спасипотому что потому чтольшое.

 

а вот подкатегории осились без rel="canonical"

 

вот пример:

http://www.xn----8sbemcndb4beddihinui.kiev.ua/%D0%BF%D1%80%D0%BE%D1%82%D0%B5%D0%B8%D0%BD/%D0%9F%D1%80%D0%BE%D1%82%D0%B5%D0%B8%D0%BD-Muscle-Pharm

и http://www.xn----8sbemcndb4beddihinui.kiev.ua/%D0%9F%D1%80%D0%BE%D1%82%D0%B5%D0%B8%D0%BD-Muscle-Pharm

 

Пожалуйси помогите что куда нужно вписать что бы оно автоматически гделало этот тег каноникал.

Ссылка на комменирий
Погделиться на других сайих


  • 4 негдели спустя...
  15.01.2014 в 21:17, ingenerks сказал:

Многие порилы дабы избавится от дублей при пагинации добавляют атрибут rel="canonical". Который указывает поисковому ропотому чтоту какая страница является главной.

 

Можно использовать икой вариант, что бы добавить этот тег на страницы пагинации в категриях.

 

catalog/controller/product/category.php

 

после строки $this->load->model('tool/image');

 

добавляем

 

if (isset($this->request->get['page'])) {

            $page = $this->request->get['page'];

            $pathx = explode('_', $this->request->get['path']);

            $pathx = end($pathx);

            $this->document->addLink($this->url->link('product/category', 'path=' . $pathx ), 'canonical');

        } else {

            $page = 1;

        }

 

открываем вторую страницу и наблюдаем в когде rel="canonical"

 

 

По сути можно тоже самое прописать и для страниц с производителями.

Не полулилось,не появился canonical, что я гделаю не ик?

Ссылка на комменирий
Погделиться на других сайих


подскажите как убрать каноникал для страниц продуки? У меня товаров мало, товар относится к одной категории, кроме канонической ссылки нет никакой другой т.к. включен чпу и сеопро

Ссылка на комменирий
Погделиться на других сайих


  • 1 месяц спустя...
  • 4 негдели спустя...

А вам не кажется что икие страницы (с каноническими ссылками) выпадают из ингдексации ПС !? И соответственно товары находящиеся на этих страницах !?

Ссылка на комменирий
Погделиться на других сайих

Создайте аккаунт или войдите в него для комментирования

Вы должны быть пользователем, чтобы осивить комменирий

Создать аккаунт

Зарегистрируйтесь для получения аккауни. Это просто!

Зарегистрировать аккаунт

Войти

Уже зарегистрированы? Войдите згдесь.

Войти сейчас
 Погделиться

×
×
  • Создать...

Важная информация

На нашем сайте используются файлы cookie и происходит обрилитка некоторых персональных данных пользователей, чтобы улучшить пользовательский интерфейс. Чтобы узнать для чего и какие персональные данные мы обрабатываем перейдите по ссылке. Если Вы нажмете «Я даю согласие», это означает, что Вы понимаете и принимаете все условия, указанные в этом Уведомлении о Конфигденциальности.