只有几个星期使用Drupal的工作后,我想出了一个反复出现的问题,我真的没有一个最佳的解决方案,所以我希望有人在这里也许能够提供一些最佳实践指针。

我有我的node.tpl.php,其被填充,显示从类型region的两个不同CCK字段的内容块内的node_reference。显示一个节点时能正常工作。问题出现时我需要使用一个view

举例来说,可以说我有一个消息列表,并且单个新闻项视图。当我显示了单条新闻,我可以使用这个消息的节点node_reference场参考任何资料,我想在我的侧边栏,但是当在新闻列表查看我想单独参考节点。什么是解决这个最佳做法?

我有一些想法,但没有看起来合乎逻辑的选择,你会怎么办?

有帮助吗?

解决方案 2

看完我的问题,我意识到,这是非常不好解释,所以我会再次尝试,并告诉我如何解决它之后。

<强>问题结果 在正常的“页面”(仅显示一个节点时),我有一个侧边栏显示类似的横幅,这要么是随机的东西,或者我可以选择一个或多个应始终显示在侧边栏。这被显示在单个节点时,使用CCK node_reference字段迎刃而解。使用显示多个节点查看时,例如新闻列表的问题是 -

<强>解决方案结果 在我的情况,我可以通过创建我的默认页面内容类型附加字段解决这个问题。这些领域被称为viewdisplayarguments。在我tpl.php我再嵌入到新闻列表页面里面查看,让我们把它叫做新闻。这样,我获得了很大的灵活性,而且也有助于新闻页面知道它位于菜单结构。

<强>最终评论结果 我还没有发现,如果有做这样的任何缺点或危险,但如果有,请随时与我分享他们:)

其他提示

我你的问题的理解是,你不想块显示视图页面上,并要与节点内嵌显示块的信息。

第一部分是容易的,可以修改块的可见性设置到您有视图中的路径上的显示不出来。

第二部分将取决于你如何设置你的看法。如果您使用的字段,你可以简单地添加字段的node_reference,他们应该显示。如果您使用的是节点视图,你将不得不重写模板,创建一个显示该节点的参考场的模板。

如果您想进一步的解释,请发表评论,我可以澄清

我往往希望创建自己的模块,其中创建块和直接引用数据库。然后,我把面板内的块,这似乎是对我来说更灵活比使用意见和CCK领域等...

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top