Кажется, это единственная тема, которую я смог найти по этой проблеме. Наличие автоматически сгенерированных путей таксономии / терминов в Drupal для пользователей и Google для поиска и индексации не всегда желательно. Так как же скрыть или отключить эти пути?
В дополнение к добавлению таксономии / term / в robots.txt, я попробовал решение Брайана для сброса $ items ['taxonomy / term /%'], и оно работает.
ОДНАКО, есть большая GOTCHA, о которой нужно знать - если вы используете расширенные форумы, RSS-каналы для категорий форумов перестают работать. Это плохо.
Я предполагаю, что Форумы используют таксономические термины Vocab для категорий форумов, и кажется, что RSS-канал использует массив $ items ['taxonomy / term /%'] для генерации канала.
Мое альтернативное решение:
Я уже использую Модуль изменения URL , чтобы определить custom_url_rewrite_inbound (), поэтому я просто добавил это условие:
//If path is taxonomy/term/% we force 404
if (preg_match("/^taxonomy\/term\/([0-9]+)(\/.*)?$/i", $path)) {
header("HTTP/1.0 404 Not Found");
die();
}
Чтобы использовать стандартную обработку 404 в Drupal, я добавил:
require_once './includes/bootstrap.inc';
и заменил заголовок («HTTP / 1.0 404 Not Found») на:
drupal_bootstrap(DRUPAL_BOOTSTRAP_FULL);
drupal_not_found();
Теперь мой сайт успешно отправляет любой запрос на таксономию / термин /%, И RSS-каналы все еще работают. Надеюсь, это поможет кому-то другому, имеющему эту проблему.