我正在运行Drupal 6,我正在使用PHP进行块可见性。
<?php
$city = arg(0);
$page = arg(1);
if ($city == 'tampa' && $page != 'art'){
return 'TRUE';
}
else{
return FALSE;
}
?>
我遇到了这段代码的问题,所以我决定插入:
<?php print arg(0).arg(1); ?>
在我的page.tpl.php中。我发现在我的一些页面上,当URL实际上是'tampa'时,arg(0)显示'node',当然,arg(1)显示节点ID。
但是,在其他页面上,例如我的日历,arg(0)实际上显示的是'tampa'而不是'node'。
我过去经常使用这个,并且从未遇到过这个问题。有没有理由为什么Drupal在某些页面上无视我的别名?如果是这样,我该如何解决?
答案 0 :(得分:1)
我没有得到任何回复,但我做了一个黑客。
$path = 'node' . "/" . $node->nid;
drupal_get_path_alias($path);
从那里我可以使用PHP字符串解析函数来获取实际的别名。