Категория:
Опубликовано:

Программно изменить title страницы

Tg title

Если стандартный Title страницы не устраивает, и нет желания устанавливать дополнительные модули - поменяем его вручную.

Для этого понадобится немного кода.

Изменения производятся в файле template.php Вашей темы.

После внесения изменений (!обязательно) чистим кеш.

Рассмотрим несколько вариантов:

Меняем Title главной страницы

Вариант с хуком template_preprocess_html

/**
 * HTML preprocessing
 */
function ИМЯ_ТЕМЫ_preprocess_html(&$vars) {
  if ($vars['is_front']) {
    $vars['head_title'] =  t('Frontpage title'));
  }
}

Не забываем изменить ИМЯ_ТЕМЫ на машинное имя используемой темы.

Title страницы пропускаем через функцию t(), для правильного отображения на мультиязычных сайтах. Поэтому после внесения изменений нужно будет добавить перевод для новой строки. Сделать это можно на странице admin/config/regional/translate/translate.

Вариант с хуком template_preprocess_page

/**
 * Override or insert variables into the page template.
 */
function ИМЯ_ТЕМЫ_preprocess_page(&$vars) {
  if ($vars['is_front']) {
    drupal_set_title(t('Frontpage title'));
  }
}

Меняем Title нескольких страниц

Обратимся к уже известному нам template_preprocess_html и переберем нужные нам страницы оператором switch:

/**
 * Override or insert variables into the page template.
 */
function corporate_preprocess_html(&$vars) {
  switch (current_path()) {
	case 'путь1':
	  $vars['head_title'] = t('Заголовок1');
	  break;
	case 'путь2':
	  $vars['head_title'] = t('Заголовок2');
	  break;
	case 'путь3':
	  $vars['head_title'] = t('Заголовок3');
	  break;
  }
}

Добавляем нужные нам страницы. Меняем "путь1", "путь2", "путь3" на пути страниц, и "Заголовок1", "Заголовок2", "Заголовок3" на Title страниц соответственно.

Можно проверять путь с помощью следующих функций Drupal:

  • current_path() - функция возвращает путь текущей страницы, без синонима даже если существует синоним;
  • request_path() - функция возвращает путь текущей страницы, отображаемый в адресной строке браузера.

P.S. Для автоматизации этих задач есть SEO-модули Page Title и Metatag.

Если у Вас возникли вопросы, замечания, предложения или просто благодарность - пишите в комментариях.
Делитесь полезными материалами в социальных сетях.
Добавить комментарий