目标:发送一封包含从节点生成的URL列表的电子邮件。
在我的自定义模块中,我已经成功获取了用户想要的节点ID,现在我想要获取每个节点的URL并将其放入我的电子邮件中。
我搜索了数据库并使用了谷歌,但似乎找不到正确的解决方案。
看起来我们需要构造像这样的URL:
<?php
global $base_url;
$link=$base_url."// few more parameters
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);
获取nid的绝对路径
url('node/' . $node->id(), ["absolute" => TRUE]);
node/3
。 - Yuseferi使用
$node_url;
它将为您提供当前节点的网址
drupal_lookup_path()
并不总是直接可用的,应该使用url()
代替。 - William Turrell