0 Пользователей и 1 Гость просматривают эту тему.
  • 9 Ответов
  • 3164 Просмотров
*

Ravilka

  • Осваиваюсь на форуме
  • 33
  • 4
Создал сайт на V2, сайт уже индексируется, но yandexe мне запретил нужные старницы:

Цитировать
Информация: страницы намеренно запрещены к индексированию или не должны индексироваться.   
Документ не является каноническим (В коде документа в тэге link содержится параметр rel="canonical", указывающий на другой (канонический) документ. Вместо данного документа проиндексирован канонический.) - 48


URL

/catalog/aksessuary/описание_заказа

22.04.2012   22.04.2012   
/catalog/aksessuary/ajur1.html - нужная страница товара

23.04.2012   23.04.2012   
/catalog/aksessuary/SEF_по,заказ

22.04.2012   22.04.2012   
/catalog/aksessuary/SEF_по,название_категории

23.04.2012   23.04.2012   
/catalog/aksessuary/SEF_по,название_производителя

22.04.2012   22.04.2012   
/catalog/bruki/описание_заказа

22.04.2012   22.04.2012   
/catalog/bruki/bruki-1.html - нужная страница товара

23.04.2012   23.04.2012   
/catalog/bruki/SEF_по,артикул

22.04.2012   22.04.2012   
/catalog/bruki/SEF_по,заказ

22.04.2012   22.04.2012   
/catalog/bruki/SEF_по,название_категории

23.04.2012   23.04.2012   
/catalog/bruki/SEF_по,название_производителя

22.04.2012   22.04.2012   
/catalog/classics/производитель/-2012-04-18-06-33-28_

23.04.2012   23.04.2012   
/catalog/classics/forreman-cl2.html - нужная страница товара

23.04.2012   23.04.2012   
/catalog/classics/marko-feretto-cl1.html - нужная страница товара

и тд

На каждой странице есть тэг rel="canonical" - который ненужные страницы исключает из поисковика, так вот он есть и в нужных страницах.
Если кто знает, помогите убрать с нужных страниц!

Все разобрался, проиндексировались неправильные ссылки. Добавил в путь id товара, посмотрим что будет.

Кстати нашел плагин для Virtuьфке 1.1.9 http://extensions.joomla.org/extensions/extension-specific/virtuemart-extensions/virtuemart-administration/16280, но он вставляет только в страницу товара, а в категории нет.
« Последнее редактирование: 11.08.2012, 23:48:02 от ELLE »
*

nadim

  • Захожу иногда
  • 24
  • 0
И как решился вопрос, что-то тут решения нет ?
У меня такая ситуация в каждой карточке товара присутствует rel="canonical" на эту же страницу - поэтому Яндекс неиндексирует - как избавиться от этого? Версия VirtueMart 2.0.10 (обновил до 2.0.14 тоже самое).
*

jouser

  • Осваиваюсь на форуме
  • 125
  • 9
Сам ищу ответ, пока никак. Там вся фишка в том что в каноникал на страницах товара ссылка на эту же страницу. Получается бесконечный цикл. И вобще каноникал в VirtueMart это просто дебилизм. Есть категория, которая разбита на страницы по 10 товаров на каждой. Но если открыть вторую или третью страницу этой категории то каноникал будет указывать на первую, а ведь это абсолютно разные страницы! Кароч надо вырубать эту шнягу вобще, а все что нужно прописывать ручками.
« Последнее редактирование: 22.11.2012, 14:02:04 от jouser »
*

jouser

  • Осваиваюсь на форуме
  • 125
  • 9
В общем кому надо отключить каноникал
на странице товара:
в файле \components\com_virtuemart\views\productdetails\view.html.php комментируем строки (где-то 202-ая)
if ($format == 'html') {
       // Set Canonic link
       $document->addHeadLink(JRoute::_($product->canonical, true, -1), 'canonical', 'rel', '');
   }
на странице категории:
\components\com_virtuemart\views\category\view.html.php (129-я строка) то же самое:
if ($format == 'html') {
         $document->addHeadLink( JRoute::_('index.php?option=com_virtuemart&view=category&virtuemart_category_id='.$categoryId), 'canonical', 'rel', '' );
      }
*

zoolman

  • Новичок
  • 1
  • 0
В общем кому надо отключить каноникал
на странице товара:
в файле \components\com_virtuemart\views\productdetails\view.html.php комментируем строки (где-то 202-ая)
if ($format == 'html') {
       // Set Canonic link
       $document->addHeadLink(JRoute::_($product->canonical, true, -1), 'canonical', 'rel', '');
   }
на странице категории:
\components\com_virtuemart\views\category\view.html.php (129-я строка) то же самое:
if ($format == 'html') {
         $document->addHeadLink( JRoute::_('index.php?option=com_virtuemart&view=category&virtuemart_category_id='.$categoryId), 'canonical', 'rel', '' );
      }
jouser, Искал решение этой проблемы около месяца, .... мучительно. 
Зарегистрировался только для того, чтобы поблагодарить Вас, очень помогла Ваша рекомендация. Удалил эти строки и теперь каноникал "отстал" ... Спасибо Вам большое.
*

ChaosHead

  • Профи
  • 4747
  • 398
Улыбнуло) Почитайте что такое тег canonica. Все, с чем вы боритесь сделано правильно.
*

jouser

  • Осваиваюсь на форуме
  • 125
  • 9
Улыбнуло) Почитайте что такое тег canonica. Все, с чем вы боритесь сделано правильно.
на странице товара - да, правильно, а на странице категрии нет - т.к. тег запрещает к индексации страницы пагинации, то есть из всех страниц категории индексироваться будет только первая. Чем это правильно?
*

SolopoV

  • Завсегдатай
  • 476
  • 12
  • зеленею...
Покурив мануалы про "canonical", прихожу к выводу, что данное решение не совсем верно. За основу взято: https://support.google.com/webmasters/answer/139066?rd=1

Имеем: Joomla 3.3.6 + Virt 3.0.2

При добавлении одного товара в родительскую и дочернюю категории получаем:

Товар в дочерней категории:

Код
<base href="http://www.mysite.ru/shop/girl/windbreaker/vetrovochnaya-kurtka-neisse-1-detail.html" />
<meta name="title" content="Ветровочная куртка" />
<title>Ветровки : Ветровочная куртка </title>
<link href="http://www.mysite.ru/shop/girl/windbreaker/vetrovochnaya-kurtka-neisse-1-detail.html?limit=int" rel="canonical" />
<link href="/shop/girl/vetrovochnaya-kurtka-neisse-1-detail.html" rel="canonical" />

В родительской категори этот же товар:

Код
<base href="http://www.mysite.ru/shop/girl/vetrovochnaya-kurtka-neisse-1-detail.html" />
<meta name="title" content="Ветровочная куртка" />
<title>Ветровки : Ветровочная куртка</title>
<link href="http://www.mysite.ru/shop/girl/vetrovochnaya-kurtka-neisse-1-detail.html?limit=int" rel="canonical" />
<link href="/shop/girl/vetrovochnaya-kurtka-neisse-1-detail.html" rel="canonical" />

Насколько я понял, ?limit=int" rel="canonical", рождается в Joomla. И он нам нафиг не нужен.

Убираем его в файле плагина (sef.php):
Код
//$doc->addHeadLink(htmlspecialchars($link), 'canonical');

Теперь получаем нормальный rel="canonical", указывающий на основную страницу:

Код
<link href="/shop/girl/vetrovochnaya-kurtka-neisse-1-detail.html" rel="canonical" />

Вот код одного товара в двух категориях:

Код
 
<base href="http://www.mysite.ru/shop/girl/vetrovochnaya-kurtka-neisse-1-detail.html" />
<meta name="title" content="Ветровочная куртка" />
<title>Ветровки : Ветровочная куртка</title>
<link href="/shop/girl/vetrovochnaya-kurtka-neisse-1-detail.html" rel="canonical" />

Код
 
<base href="http://www.mysite.ru/shop/girl/windbreaker/vetrovochnaya-kurtka-neisse-1-detail.html" />
<meta name="title" content="Ветровочная куртка" />
<title>Ветровки : Ветровочная куртка</title>
<link href="/shop/girl/vetrovochnaya-kurtka-neisse-1-detail.html" rel="canonical" />


Но по совету Google важно использовать абсолютные, а не относительные пути.

Формирование кода происходит в указанном файле: \components\com_virtuemart\views\productdetails\view.html.php

Если кто то поможет сделать абсолютный путь - буду крайне признателен.

Код
$document->addHeadLink($product->canonical, 'canonical', 'rel', '');
« Последнее редактирование: 03.02.2015, 00:05:42 от SolopoV »
*

SolopoV

  • Завсегдатай
  • 476
  • 12
  • зеленею...
Не знаю... Зря, теме поставлена админом метка "Решена".

Для карточки товара:

Код
// Set Canonic link
$namedonen = 'http://ваш домен';
if($isCustomVariant !==false and !empty($isCustomVariant->usecanonical) and !empty($product->product_parent_id)){
$parent = $product_model ->getProduct($product->product_parent_id);
$document->addHeadLink($namedonen .  JRoute::_($parent->canonical), 'canonical', 'rel', '');
} else {
$document->addHeadLink($namedonen .  JRoute::_($product->canonical), 'canonical', 'rel', '');
}

Для категории:
Код
			//$link = 'index.php?option=com_virtuemart&view=category';
//if($categoryId!==-1){
// $link .= '&virtuemart_category_id='.$categoryId;
//}
//if($manId!==-1){
// $link .= '&virtuemart_manufacturer_id='.$manId;
//}
$namedonen = 'http://ваш домен';
//$domain  = $this->params->get('domain');

$link = 'index.php?option=com_virtuemart&view=category';
if(($categoryId!==-1)&&($categoryId!=0)){
$link .= '&virtuemart_category_id='.$categoryId;
}
if(($manId!==-1)&&($manId!=0)){
$link .= '&virtuemart_manufacturer_id='.$manId;
}


$document->addHeadLink($namedonen . JRoute::_($link, FALSE), 'canonical', 'rel', '' );


Может кто красивей вытащит название домена?
*

bgg87

  • Осваиваюсь на форуме
  • 149
  • 2
  • Истина где-то рядом...
Не знаю... Зря, теме поставлена админом метка "Решена".
---
Может кто красивей вытащит название домена?

+1

Тоже интересует данное решение!
А ещё было бы отлично если каноническая ссылка не ссылался на себя же.
Т.е. если зайти в любую категорию VirtueMart, например:
http://site.ru/cat
будет следующее:
Код
<link href="/cat" rel="canonical" />
Бен, ай нид хелп!
Информационный портал
Чтобы оставить сообщение,
Вам необходимо Войти или Зарегистрироваться
 

VirtueMart 3.0.18 Ошибка при переходах com_virtuemart_file_not_found

Автор zapa

Ответов: 0
Просмотров: 11
Последний ответ 23.09.2017, 19:24:37
от zapa
Ошибка 1054 Unknown column 'Array' in 'where clause'

Автор borro

Ответов: 9
Просмотров: 584
Последний ответ 22.09.2017, 17:01:16
от SolopoV
Пустая белая страница при нажатии на вкладку "Товары" в панели VirtueMart

Автор Adrian1111

Ответов: 4
Просмотров: 34
Последний ответ 18.09.2017, 15:10:31
от Adrian1111
Ошибка "Таблица product_customfields не поддерживается."

Автор Paha_web

Ответов: 3
Просмотров: 42
Последний ответ 06.09.2017, 12:37:05
от robert
Показать в карточке товара родственные товары из той же категории - плагины? модули? Хоть что-нибудь

Автор Adrian1111

Ответов: 2
Просмотров: 110
Последний ответ 23.08.2017, 14:04:33
от Liss