0

我们想要创建一个显示两个特定节点的页面。

第一个节点将是本地化的内容(用户语言的文章节点)。该页面将至少有 5 种不同的语言版本。

第二个节点将是用户可以提交以“签署”文档的 Webform 节点。它将是语言中立的。

最初我认为我可以拥有一个 Webform 节点,然后将其翻译成适当的语言。但我发现 Webform 节点的“翻译”版本实际上是一个全新的节点——这意味着一个全新的 Webform。如果您考虑 Drupal 如何处理多语言内容,这是有道理的——每个翻译都是一个单独的节点。

但是对于我们的 webform,我们不想将提交分成 10 多个不同的 webform 提交集。每个“签名”的人都将他们的签名放入同一个数据“箱”中。

我可以想到两种可能的解决方案:

  1. 创建一个将显示两个节点的页面:“文章”节点的本地化版本(根据用户的语言选择进行选择)和网络表单。

  2. 创建多个 Webform 节点(每种语言一个),然后创建一个 MySQL 视图,将所有用户提交合并到一组记录中。这将使我们能够轻松地提取数据。

我不确定2是否可能。我假设我必须选择 1。但是,到目前为止,我为实现这一目标所做的努力也没有结果!我怎样才能做到这一点?

-乔什

4

1 回答 1

0

我认为 1 是非常简单和可能的解决方案。您可以创建 webform 节点并将正文字段设置为 php 代码(为此您需要启用 php 过滤器)。并放入正文中:

<?php
$nid = NODE_ID;
$node = node_load($nid); 
$node_view = node_view($node, 'full'); 
print drupal_render($node_view);
?>

只需将 NODE_ID 替换为多语言节点的 nid 即可。

于 2013-03-20T04:52:55.033 回答