Если robots.txt не помогает, то что делать?!Не смотря на то, что есть некие стандарты по роботсу и индексации, разные поисковые машины работают несколько по-разному.
Если для ПС Яндекс запрещающие инструкции в robots.txt это фактически закон, то ПС Google ведет себя по-другому. Думаю, ни для кого не секрет, что robots.txt для него носит лишь рекомендательный характер.
Справка из ПС Google. -
по robots.txtХотя Google не сканирует и не индексирует содержание страниц, заблокированных в файле robots.txt, URL, обнаруженные на других страницах в Интернете, по-прежнему могут добавляться в индекс.
-
по мета тегу <meta name="robots" content="noindex">Чтобы полностью исключить вероятность появления содержания страницы в индексе Google, даже если на нее ссылаются другие сайты, используйте метатег noindex. Если робот Googlebot начнет сканировать страницу, то обнаружит метатег noindex и не станет отображать ее в индексе.
При этом вы должны выбрать только один из способов - или роботс, или мета-тег. Если вы добавите мета тег на страницу, и при этом она закрыта в роботсе, но ее url уже есть в индексе, то эффекта не будет пока вы не откроете ее в robots.txt, в противном случае гуглбот не сможет просканировать содержание страницы и не увидит запрещающий мета-тег noindex, который как раз и приводит к полному выпадению документа из выдачи.
Управление индексацией контента в Joomla средствами мета-тега Теперь приведу пару примеров - каким образом можно добавлять этот мета-тег на дублирующие или просто нежелательные страницы в Joomla
1. в index.php шаблона после <head>, если вставить следующее
<?php if ($_SERVER['QUERY_STRING']):?>
<meta name="robots" content="noindex"/>
<?php endif; ?>
то это приведет к появлению мета-тега на страницах, типа site.ru/article?
bla_bla_bla (если после знака '?' не используются реальные параметры, допустим для страницы печати не сработает)
2. закрываем результаты поиска (иногда на такие страницы ставят ссылки)
<?php if ($option == 'com_search') : ?>
<meta name="robots" content="noindex"/>
<?php endif; ?>
*в начале нужно определить переменную
$option = JRequest::getVar('option', null);
впрочем, больше примеров переменных тут
http://joomlaforum.ru/index.php/topic,67278.0.html3. закрыть страницы печати или дубль документа, где на конце
?tmpl=component или
&print=1, можно через файл component.php (обычно есть во всех шаблонах Joomla или берете из папки system), прописав в нем также этот мета-тег в <head></head>
4. закрыть от индексации страницы пагинации,
в index.php в начале
$limit = JRequest::getVar('limitstart', 0);
в head
<?php if ($limit) : ?>
<meta name="robots" content="noindex"/>
<?php endif; ?>
В компонентах можно использовать API Joomla (также определив необходимые условия для вывода)
<?php $document->setMetaData( 'robots', 'noindex'); ?>
Также для самостоятельного изучения:
JRequest :: getVar,
$_SERVERhttp://docs.joomla.org/JDocument/setMetaDataВнимание! Все примеры приведены лишь в качестве примера альтернативных решений, а не инструкция к действию! Если вы не уверены в своих действиях и плохо понимаете о чем речь, настоятельно рекомендую обойтись настройками robots.txt!