【发布时间】:2011-05-01 18:02:01
【问题描述】:
我想分解 Drupal 6 中的 url 变量,以便在 $base_url 和路径的其余部分之间放置一个目录名称。关于如何做到这一点的任何想法?
谢谢, 简
【问题讨论】:
标签: php url variables drupal-6
我想分解 Drupal 6 中的 url 变量,以便在 $base_url 和路径的其余部分之间放置一个目录名称。关于如何做到这一点的任何想法?
谢谢, 简
【问题讨论】:
标签: php url variables drupal-6
嗯,听起来您已经知道 $base_url,所以您需要的部分是内部路径,您可以使用$path = arg(); 检索它。
但是,我不知道您希望通过这样做来实现什么。假设你有一个这样的drupal URL:
http://www.example.com/node/76
这实际上是 THIS url 的别名:
http://www.example.com/index.php?q=node/76
node/76部分是内部drupal路径,根文件夹中的.htaccess文件删掉了index.php?q=位以获得更简洁的url。
所以如果你像这样构造一个 URL:
http://www.example.com/directory/node/76
它实际上会指向:
http://www.example.com/index.php?q=directory/node/76
然后会失败,因为 Drupal 会尝试将 directory/node/76 视为内部 Drupal 路径,但找不到它——因此您会收到 404 错误。
你想做什么?
【讨论】:
example.com/print/42 这样的url(42 = 节点ID)。您要自定义的页面上内容的外观是怎样的?通常,这可以通过将 print.tpl.php 从 modules/print 复制到您的主题目录并编辑它来处理,而无需直接更改底层变量。要自行修改打印友好链接,请使用您自己的主题函数覆盖 theme_print_format_link()。