块中的Drupal 6相对链接

时间:2012-05-10 12:14:15

标签: drupal drupal-6

我创建了一个包含指向另一个页面的链接的块。该块位于所有页面的页脚中。

<a href="terms_and_conditions">Terms and Conditions</a>

这适用于网址为...

的网页
http://mywebs.localhost/site1/page1

链接正确解析为:

http://mywebs.localhost/site1/terms_and_conditions

(其中'page1'是'URL路径设置'中的值,即使用'paths'模块为/ node / 56创建别名)

但是当我进入一个属于ubercart模块的页面时......

http://mywebs.localhost/site1/cart/checkout

块中的链接错误地解析为...

http://mywebs.localhost/site1/cart/terms_and_conditions

显然,如果我使用完整的绝对链接,我可以让它工作,但我希望它在我上传到远程主机时无需更改所有内容。

有很多关于相对路径的文档和问题。但据我所知,它与页面内容部分中的链接有关。任何人都可以指出我正确的方向。

2 个答案:

答案 0 :(得分:2)

为什么不只是<a href="/terms_and_conditions">Terms and Conditions</a>?尝试在路径前加上斜杠。

只是阅读评论,抱歉,我看到允许PHP输入的其他方式 <?php print l('Terms and Conditions', 'terms_and_conditions'); ?>

但是,如果没有php输入,你可以使用http://drupal.org/project/shortcode,它允许使用url将标记转换为完整的链接,就像在WordPress中一样。

答案 1 :(得分:0)

您应该使用url()功能或$base_url来生成链接

<a href="<?php echo url('terms_and_conditions'); ?>">Terms and Conditions</a>

<a href="<?php global $base_url; echo $base_url; ?>/terms_and_conditions">Terms and Conditions</a>