Drupal 7 如何从多语言网站的id中获取节点路径?
我有一个节点,带有nid。i、 e.78,它使用法语(主要语言为英语),因此它的本地名称为:Drupal 7 如何从多语言网站的id中获取节点路径?,drupal-7,Drupal 7,我有一个节点,带有nid。i、 e.78,它使用法语(主要语言为英语),因此它的本地名称为: fr/node/78 或者只是 node/78 ? 该页面还有一些别名,即“hello”,因此其相对路径为: /fr/hello 我怎样才能得到相对路径 是的,我知道: $alias = drupal_get_path_alias('node/78'); 应该给我我的网页别名,但它不工作,可能是因为不同的语言?!?或者应该是: $alias = drupal_get_path_alias('fr
fr/node/78
或者只是
node/78
?
该页面还有一些别名,即“hello”,因此其相对路径为:
/fr/hello
我怎样才能得到相对路径
是的,我知道:
$alias = drupal_get_path_alias('node/78');
应该给我我的网页别名,但它不工作,可能是因为不同的语言?!?或者应该是:
$alias = drupal_get_path_alias('fr/node/78');
我两个都试过了,但都没用?!?我不敢相信没有简单的函数可用,它将节点id作为参数并返回SEO(带别名)页面路径
请帮忙。如果我有nid,在多语言网站上获取节点seo路径的最简单方法是什么?我终于找到了。如果其他人为此而挣扎:
// Returns root relative path
function get_node_url_ml ($nid, $language){
$defaultLanguage = language_default();
$local_path = 'node/' . $nid;
$url = drupal_lookup_path('alias', $local_path, $language);
if (!$url) $url = 'node/' . $nid;
if ($language != $defaultLanguage->language) $url = $language.'/'.$url;
return '/'.$url;
}