Да, знаю. Заголовок попахивает желтизной. Но я не шучу. Это абсолютная правда. В двух словах, проблема сводится к тому, что большинство страниц сайта, созданного на Joomla 3, никогда не будут проиндексированы поисковыми системами. Подробности далее.
Не стоит волноваться, если сайт уже сделан на Joomla 3. То, о чем пойдет речь ниже, просто гадкий баг, информация о котором добавлена в баг-трекер Joomla еще с первых версий Joomla 3. Устраняется он за пару минут. Но почему-то уже прошло большое обновление, а ошибка так и не исправлена. Но давайте по-порядку.
Существует такое понятие, как канонические URL. Вот как объясняет этот термин Google:
Что такое каноническая страница?
Каноническая страница – это рекомендуемый экземпляр из набора страниц с очень похожим содержанием.
Зачем нужно указывать каноническую страницу?
Часто сайты содержат несколько страниц, на которых перечислены одни и те же товары. Например, на одной странице продукты могут быть указаны в алфавитном порядке, а на других – упорядочены по цене или рейтингу. Примеры:
http://www.example.com/product.php?item=norvejskaya-ryba&trackingid=1234567&sort=alpha&sessionid=5678asfasdfasfd
http://www.example.com/product.php?item=norvejskaya-ryba&trackingid=1234567&sort=price&sessionid=5678asfasdfasfd
Если Google будет знать о том, что содержание этих страниц одинаково, то сможет добавить в результаты поиска только одну из них. Наши алгоритмы выбирают ту страницу, которая, по нашему мнению, лучше всего отвечает на запрос пользователя. Тем не менее, теперь пользователи могут указывать поисковым системам каноническую страницу, добавив элемент <link> с атрибутом rel="canonical" в раздел <head> неканонической версии страницы. Добавление этой ссылки и атрибута позволяет владельцам сайтов определять наборы идентичного содержания и сообщать Google: "Из всех страниц с идентичным содержанием эта является наиболее полезной. Установите для нее наивысший приоритет в результатах поиска".
Если объяснять простым языком, вы можете добавить странице A атрибут rel=canonical и ссылку на страницу Б. Тогда поисковые системы будут считать страницу А дублем страницы Б и никогда не добавят ее в индекс. Вы спросите: «Ну а при чем же тут Joomla 3?». Разработчики внедрили поддержку этого атрибута в SEF-плагин, но допустили ошибку, из-за которой все материалы категории автоматически становятся страницей А из нашего примера, а страницей B становится список материалов категории (или страница блога категории). Короче говоря, при включении SEF в Joomla 3, всем статьям категории присваивается атрибут rel=canonical. Финиш.
Единственным исключением являются материалы, связанные напрямую с пунктом меню. Т.е. пункт меню типа «Материал».
Ошибка актуальна для последней на сегодняшний день версии Joomla 3 – Joomla 3.0.3. Что будет дальше – не знаю. Надеюсь, разработчики исправят эту глупость. Пока исправляем самостоятельно.
Находим файл: plugins/system/sef/sef.php и комментируем в нем 51 строчку:
$doc->addHeadLink($link, 'canonical');
Google довольно быстро реагирует на исправление бага. Уже через пару недель страницы будут добавлены в индекс. С Яндексом все печальнее. Практика показала, что требуется 1.5 – 3 месяца, либо писать в поддержку.
В Joomla 3.1 проблема решена для категорий, но все еще присутствует для компонентов, перенаправляя их не совсем корректно(пример: теги).
В Joomla 3.4.x ошибка решена полностью.
вот так выглядит строка 53 Joomla 3.1.0 beta3
Ну до 3.5 ещё как до Китая раком, поэтому возьмём на заметку. :)
Не вижу ни чего страшного, напротив это плюс.
Да и на странице анонсов блога нет ни каким намеков на запрет индексирования...
Вот аналогичная тема на Joomlaforum:
http://joomlaforum.ru/index.php?topic=253973.0
На официальном форуме:
http://forum.joomla.org/viewtopic.php?f=712&t=758350
Ошибка в багтрекере:
http://joomlacode.org/gf/project/joomla/tracker/?action=TrackerItemEdit&tracker_item_id=29319
Спасибо за подсказку
Беру обратно свои слова, более старые страницы вообще не видны в поиске...
http://x-news.ru/hi-tech/8465-bag-v-sisteme-upravleniya-kontentom-joomla-3-0-3
Лучше сделать так: чтобы при очередном обновлении не исправлять глюк, нужно в шаблон index.php в самое начало вставить код:
И баг с canonical будет решен для Joomla 3
У меня после обновления она есть на главной (т.е. первая страница какой-л. категории), а если переходишь на другую (2,3, etc), то навигация пропадает.
В 3.3.6 присутствует баг ? чего-то сам разобраться не могу....
Во-де собака зарыта была :)
У меня такой случай.
Есть проиндексированная страница: https://site/old-page.html.
Была создана новая с идентичным содержанием: https://site/new-page.html и настроено перенаправление со старой old-page на новую new-page.
Нужно ли мне ставить rel="canonical" на новой странице или это лишнее, поскольку старая страница со временем из индекса все равно исчезнет?