Сайт на друпал 7. В настройках главная страница '/node/1', страница имеет алиас '/main'. На главной ('/') и '/node/1' в башке появляются ссылки на страницу '/main', т.к. он считается основным документом (каноническим):
Результат в яндексе "Внимание! Главная страница сайта исключена из индекса: Документ не является каноническим." - помечено красным, наверно это не очень хорошо.
Исправляем заменой '/main' на '/' через hook_html_head_alter:
<?php
function mythemename_html_head_alter(&$head_elements) {
$fronturl = url(variable_get('site_frontpage'));
foreach (
$head_elements as &$element) {
if (isset($element['#attributes']['rel']) && $element['#attributes']['rel'] == 'canonical' && $element['#attributes']['href'] == $fronturl) {
$element['#attributes']["href"] = url();
}
}
}
?>
Обратиться напрямую к элементу с сcылкой ($head_elements["drupal_add_html_head_link:canonical:;"]) не получается (М.б. кто знает почему?), отсюда цикл.