Функции для получения текущего адреса. Drupal

Собрала функции для получения текущего адреса. Буду дополнять если что.

Получить алиас ноды (синоним ноды):

drupal_get_path_alias($path, $path_language = '').

Функция возвращает синоним, к внутреннему пути друпала.

Параметры:

$path Внутренний путь друпала.

$path_language Не обязательный код языка, для которого выполняется поиск.
Возвращаемое значение

Синоним пути, если был найден или исходный путь, если синоним не был найден.

 

Пример:

//получим путь к ноде (алиас)
$system_path = 'node/'.$node->nid;
$current_path = drupal_get_path_alias($system_path);

&nb
Читать

Модули Path, Pathauto и i18n Drupal

Столкнулась с ситуацией на мультиязычном сайте. Например, у нас есть 2 ноды:

русскоязычная нода /node/1  (имеет алиас /ru/razdel1/about)

англоязычная  нода /node/2  (имеет алиас /en/razdel1/about)

Так вот, при редактировании одной из нод безобразно портятся алиасы другой ноды.

Лечим:

патчим модули path и pathauto:

В файле ваш_сайт\modules\path\path.module меняем:

else if ($path && $alias) {

// Check for existing aliases.

if ($alias == drupal_get_path_alias($path, $language)) {

Читать