假设我有两种内容类型,Proposals和Actions。 Proposal将包含多个Actions,但Actions也应该独立可见。每个都包含几个文本字段和链接。
提案和操作都应该是节点吗?我该怎么做呢?
答案 0 :(得分:3)
本身在drupal中没有父/子关系。您可以使用CCK的节点参考和一些创意视图来构建此类内容。
答案 1 :(得分:2)
有很多方法可以做到这一点,就像Drupal中的大多数事情一样,但如果是我,我会这样做:
编辑:是的,他们都应该是节点。
如果您使用此方法,那么一旦设置完毕,您将需要进入提案并选择您希望“包含”(即链接到)的操作。
然后打印出来,你会想要一些类似于
的代码<?php
$actions = $node->field_name_of_your_actions_link_field;
foreach($actions as $action){
$anAction = node_load($action[nid]);
$output .= $anAction->the_bit_you_need_to_get[0][content];
}
?>
当然变量名称会有所不同,但希望这会指向正确的方向
答案 2 :(得分:0)
尝试使用视图块显示。您需要为视图创建一个块显示,以显示所有(或您需要多少)与相应Proposal节点关联的Actions节点(您需要将视图参数设置为类似:Nid - 提供默认参数 - 节点ID来自URL)。然后将此块附加到代表您的提案页面的页面。
答案 3 :(得分:0)
您是否查看了模块视图?它非常强大,几乎可以显示任何内容。
如果您确实使用了视图,那么您将执行与此类似的操作:两种内容类型,以及将操作与提案绑定的分类词汇表(因此,将术语引用字段放在操作内容类型上)。
然后,您将创建一个页面视图,该视图将按内容类型提议进行过滤。您可以添加提案中的所有字段,并对它们进行排序并执行css以使其显示您想要的效果。
然后,您将拥有另一个视图,这次是一个块,这将列出您的Actions,以便您按该内容类型进行过滤。然后,您将添加上下文过滤器以获取已加载的节点的分类。在提案页面上显示此块后,它应显示其操作的链接。
我认为这基本上涵盖了它,如果你遇到任何让我知道的事情,实际上这样做有点难以解释。
观点很棒。这有点令人生畏,但一旦你掌握它很容易使用。如果您已经知道这一点我很抱歉,我错过了您的要求。