Получение URL-адреса узла в Drupal 7
Цель: отправить электронное письмо со списком URL-адресов, созданных на узлах.
В моем пользовательском модуле мне удалось получить идентификатор узла, который хочет пользователь, и теперь я хочу получить URL каждого узла, чтобы вставить его в мою электронную почту.
Я искал БД и использовал Google, но я не могу найти правильное решение.
Кажется, нам нужно сконструировать URL примерно так:
<?php
global $base_url;
$link=$base_url."// few more parameters
5 ответов
Решение
Вы можете использовать url()
функция:
$options = array('absolute' => TRUE);
$nid = 1; // Node ID
$url = url('node/' . $nid, $options);
Это даст вам абсолютный путь (то есть с http://example.com/ перед ним), с URL-псевдонимом пути к странице узла.
Вы также можете попробовать drupal_lookup_path('alias',"node/".$node->nid)
,
Также вы можете получить его по
$path=drupal_get_path_alias('node/'.$nid);
Вы также можете использовать функцию l().
l(t('Link text'), 'node/123', array('options' => array('absolute' => TRUE)));