Drupal 将块放置在节点内(将块放置在节点内容的特定元素之间)

Drupal 将块放置在节点内(将块放置在节点内容的特定元素之间),drupal,block,drupal-nodes,Drupal,Block,Drupal Nodes,基本上我创建了一个webform并将其作为一个块启用,现在我想将该块放在一个特定的节点中。我可以通过将其放置在“内容”区域并定义特定节点来实现,但它显示在内容的末尾。现在如何在内容中的特定元素之间移动它 该节点使用的页面类型为….tpl.php,其他5个节点也使用该类型,因此我无法更改代码 要将其可视化,请执行以下操作: [内容] -描述文本- -视频列表- [内容结束] 我需要把我的网络表单放在文本和视频列表之间。有什么办法吗?对于Drupal 7来说,在内容中显示块的内容的一种方法是启用PH

基本上我创建了一个webform并将其作为一个块启用,现在我想将该块放在一个特定的节点中。我可以通过将其放置在“内容”区域并定义特定节点来实现,但它显示在内容的末尾。现在如何在内容中的特定元素之间移动它

该节点使用的页面类型为….tpl.php,其他5个节点也使用该类型,因此我无法更改代码

要将其可视化,请执行以下操作:

[内容]

-描述文本-

-视频列表-

[内容结束]


我需要把我的网络表单放在文本和视频列表之间。有什么办法吗?

对于Drupal 7来说,在内容中显示块的内容的一种方法是启用PHP过滤模块。然后编辑您的节点,切换到PHP代码文本格式并添加此代码

 <?php
     $block = module_invoke('block', 'block_view', '1');
     print render($block['content']);
 ?>

其中“1”是编辑块时在URL中找到的块id,请确保包含PHP标记


有关放置块的更多信息,请参见本页。

您可以选择许多道路,但既然您说您正在考虑模板文件:为什么不使用特定于节点的模板,因为
是一种节点类型

假设您在node/123上,那么您可以使用名为
node--123.tpl.php的模板
(请参阅)并将块嵌入到此处

或者,您可以通过在自定义模块中提供可重用令牌,并将其与常用模块相结合。但是如果您只需要触摸一个节点,那么这可能会有点过头。

您可以使用该模块将webforms作为字段添加到节点中

基本上,您创建一个视图并选择“eva字段”选项,然后确保该视图仅选择您想要的webforms,并将其与节点关联(eva模块文档中的示例比我提供的要好得多)

将其添加为字段后,可以将其放置在节点中的任何位置


还有一个模块可以帮助您。

谢谢您的回答,但不幸的是,尽管启用了PHP筛选模块,但我放在节点中的PHP代码无法工作。说到drupal,我是一个不速之客,所以我想我会制作一个新的节点tpl。谢谢!我曾考虑创建一个新的节点模板,但我认为可能还有另一种方法。最后,我使用一个节点--[nid].tpl.php将内容分解为元素,并将表单插入到特定位置。对我来说,这是最快最简单的方法。