在Drupal 7中获取节点的URL

Vis*_*ani 37 php drupal drupal-7

目标:发送包含从节点生成的URL列表的电子邮件.

在我的自定义模块中,我设法获得用户想要的节点ID,我现在想要获取每个节点的URL以放入我的电子邮件中.

我搜索数据库并使用谷歌,但我似乎无法找到正确的解决方案.

看来我们需要构建这样的URL:

<?php
global $base_url;
$link=$base_url."// few more parameters 
Run Code Online (Sandbox Code Playgroud)

Cli*_*ive 86

你可以使用这个url()功能:

$options = array('absolute' => TRUE);
$nid = 1; // Node ID
$url = url('node/' . $nid, $options);
Run Code Online (Sandbox Code Playgroud)

这将为您提供绝对路径(即在其前面的http://example.com/),以及到节点页面的URL别名路径.


sco*_*elf 15

你也可以试试drupal_lookup_path('alias',"node/".$node->nid).

  • 这种方法有问题吗?这似乎比批准的答案更有用,也不那么明显. (3认同)

Yus*_*sef 7

你也可以得到它

   $path=drupal_get_path_alias('node/'.$nid);
Run Code Online (Sandbox Code Playgroud)