如何在DRUPAL 6中直接将节点链接到其文件内容?

时间:2015-10-29 07:18:45

标签: php drupal drupal-6 drupal-nodes

我有一个名为" Products"单击时显示"产品"创建的所有节点。内容类型。每个"产品" node有一个附加文件的文件附件字段。

如果我点击"产品"节点,它按预期将我带到节点,我可以看到节点上的所有字段,包括PDF字段:

enter image description here

我想将鼠标悬停在"产品"菜单链接,然后看到不同的产品作为菜单中的下拉菜单,当点击产品时,我希望它不要去节点,而是打开附加到节点的PDF所以而不是显示例如/ product / african-decor ...它必须转到附加到节点的产品/ african_decor.pdf:

enter image description here

2 个答案:

答案 0 :(得分:4)

有几种方法可以实现。

您可以使用Menu Token模块,该模块允许您使用菜单路径中的各个字段。构建令牌模式时,您可能需要使用[site-url]令牌创建绝对URL。

同时确保勾选uses tokens复选框。

这种方式稍微不那么优雅。

假设您不想实际访问产品内容类型并始终下载PDF,则可以覆盖product内容类型的模板并重定向到PDF网址。

您需要创建

node--product.tpl.php

替换内容
header("Location: " . $pdf_field);

// $pdf_field might be $node->field_pdf[0]['value'];

答案 1 :(得分:1)

您可以使用自定义模块实现hook_taxonomy_menu_path,并根据与该术语关联的节点覆盖基础。在回调中,返回节点中附件的路径。

  • 鉴于每个术语只有一个节点
  • 鉴于每个节点只有一个附件