0

我包括一个网络表格,如果用户对这份工作感兴趣,他们将在工作列表页面上填写该表格。职位列表页面本身是根据职位搜索的结果从自定义模块创建的,我包括这样的网络表单:

render(node_view(node_load(363), 'full', NULL));

其中 363 是网络表单 ID。所以我试图弄清楚如何至少将工作编号传递到网络表单中。我知道我可以编辑网络表单以包含一个隐藏字段,我可以在其中从 %get[key] 之类的 URL 中获取值,但我使用的是干净的 URL,因此我在 URL 中没有特定的键,例如 www.example.com/ jobs?job_number=1234 我可以在哪里获取“job_number”。我的实际 URL 如下所示:http ://www.example.com/job-board/view/41904所以我需要在我的网络表单中获取 41904。我怎样才能做到这一点?我可以在我的网络表单隐藏字段中使用特殊标记,还是在我的自定义模块中以某种方式将工作编号传递给网络表单,当我去工作详细信息页面上显示它时?

4

2 回答 2

0

您可以使用 arg(); 获取所有参数;

尝试

echo "<pre>";
print_r(arg());
echo "</pre>";

在你的情况下,你可以通过echo arg(2);

于 2013-10-30T10:08:04.507 回答
0

好的,所以我想出了这个。所以看起来就像在我调用我的网络表单之前,我实际上可以设置一个 $_GET 参数,它将传递给网络表单。所以我在我的自定义模块中这样做了:

// send job_number to webform via $_GET
$_GET['job_number'] = $job_number;
render(node_view(node_load(363), 'full', NULL));

现在在我的网络表单中,我添加了一个隐藏表单字段,其中 %get[job_number] 作为默认值,这很有效。

于 2013-10-29T23:10:13.813 回答