Drupal 7节点引用“查询”

时间:2013-09-29 22:29:29

标签: php drupal drupal-7 drupal-modules drupal-theming

我有一个名为services_list_page的内容类型,用于创建登录页面,然后人们可以使用内容类型service_details导航到子页面。这些页面之间的关系仅由菜单定义,当前没有其他位置。

Program Service (services_list_page)
-- Cat1: (not a page, just a category type thing in menu)
  -- child 1 (service_details)
  -- child 2 (service_details)
-- Cat2
  -- child 3
  -- child4
  -- and so on..

我需要让这些子页面不仅在菜单中列出,而且还在列表(ul li)中的内容中动态地每个子页面“类别”列出一个列表。我已经覆盖了这些内容类型的节点模板文件。使用模块或模板文件中的某些代码来动态提取此数据的最佳方法是什么?

2 个答案:

答案 0 :(得分:1)

您可以在hook_menu()中定义自定义页面 并打印任何内容和指向您想要的子节点的链接。

这里有一个例子(斯洛伐克),我是如何做到的,它是一份报纸档案 http://hnonline.sk/archiv http://hnonline.sk/archiv/2013/10/3

如果您需要更多帮助,请询问

答案 1 :(得分:0)

找到一个简单的解决方案 所以起初我找到了一种方法,但它很麻烦,当左侧导航子菜单更新时,页面菜单没有更新。然后我找到了菜单块模块。

  • 安装菜单块模块https://drupal.org/project/Menu_Block
  • 添加新菜单块,根据需要进行配置。起始等级设为第二级
  • 将以下代码添加到模板文件以调用菜单块

当您在阻止页面上单击配置菜单块时,您可以从URL获取数字,此处为1,因此admin / structure / block / manage / menu_block / 1 / configure变为:

$block = module_invoke('menu_block', 'block_view', '1');
print render($block['content']);
  • 可选通过创建模板文件“menu-block-wrapper - 1.tpl.php”为菜单创建模板。您可以通过循环遍历名为$ content
  • 的数组来获取菜单数据