7 полезных функций Drupal API которые должен знать каждый!

В этой заметке мы рассмотрим 7 функций Drupal API которые очень помогают при разработке сайтов на Drupal 7.

check_plain($text) - перекодирует спецсимволы в HTML сущности.

Параметры:

  • $text - строка для преобразования

Возвращаемое значение: обработанная строка для отображения как HTML.

Эту функцию можно использовать для обработки всевозможных данных поступающих на сайт из разных источников: пользовательский ввод, импорт данных с другого сайта, твиттера и т.д.

t($string, array $args = array(), array $options = array()) - переводит строку на выбранный пользователем язык.

Параметры:

  • $string - строка для перевода
  • $args - ассоциативный массив значений подстановочных шаблонов(placeholders)
  • $options - ассоциативный массив дополнительных опций, содержит две возможные опции: langcode - явное указание кода языка на который нужно перевести строку, context - позволяет задать контекст перевода.

Возвращаемое значение: переведенная строка.

Пример использования функции t():

t('Good afternoon, @first_name @last_name. ', array('@first_name' => 'Игорь', '@last_name' => 'Иванов'));
//Вернет 'Добрый день Игорь Иванов.'

Бывает три типа подстановочных шаблонов:

  • !name - значение подставляется без образботки
  • @name - значение обрабатывается функцией check_plain, все HTML тэги выерзаются.
  • %name - значение обрабатывается функцией theme_placeholder (тоже что check_plain, но результат заворачивается в тэг <em>)

format_plural($count, $singular, $plural, array $args = array(), array $options = array()) - формирует строку содержащую количественное значение.

Параметры:

  • $count - количественное значение
  • $singular - строка которая будет использована в случае если $count == 1
  • $plural - строка которая будет использована в случае если $count > 1
  • $args - ассоциативный массив значений подстановочных шаблонов(placeholders)
  • $options - тоже что и в функции t()

Возвращаемое значение: Строка переведенная с помощью функции t(), в зависимости от параметра $count выбирается строка которая будет использоваться для перевода.

Пример использования:

$comment_count = 1;
format_plural($comment_count, '1 комментарий', '@count комментариев');
//Вернет '1 комментарий'
 
$comment_count = 5;
format_plural($comment_count, '1 комментарий', '@count комментариев');
//Вернет '5 комментариев'

drupal_get_title() - возвращает текущее значение заголовка страницы

Эту функцию можно использовать в сочетании с drupal_set_title() для обработки текущего заголовка и установки нового.

drupal_set_title($title = NULL, $output = CHECK_PLAIN) - устанавливает заголовок страници

Параметры:

  • $title - строка которая будет использована как заголовок страници
  • $output - флаг который определяет будет ли $title обработан функцией check_plain().

Возвращаемое значение:Обновленный заголовок страници.

url($path = NULL, array $options = array()) - формирует внутренний или внешний URL

Параметры:

  • $path - внутренний относительный или внешний абсолютный путь
  • $options - ассоциативный массив опций:

    • query- массив передаваемых параметров типа ключ/значение
    • fragment - якорь элемента на странице
    • absolute - флаг (по умолчанию FALSE) если установлен в TRUE то url будет определен как абсолютный.
    • alias - флаг (по умолчанию FALSE) если установлен в TRUE то путь будет расценен как алиас (при этом не будет совершен поиск алиаса в базе данных что ускорит работу)
    • external - флаг, если утсановлен в TURE url будет расценен как внешний.
    • language - языковой объект определяющий язык для поиска алиаса выбранного языка
    • https - флаг, если установлен в TRUE то путь будет иметь https протокол, если в FALSE то http.
    • base_url - значение для замены стандартного базового пути
    • prefix - языковой префикс пути

Возвращаемое значение: Сформированный URL.

drupal_goto($path = '', array $options = array(), $http_response_code = 302) - производит редирект пользователя на другую страницу.

Параметры:

  • $path - относительный или абсолютный путь на который будет произведен редирект.
  • $options - список опций как в функции url()
  • $http_response_code - код статус код

Поделись с друзьями:

Комментарии