我添加了一个自定义页面模板,从数据库中提取可用作业的列表。
显示作业的页面称为jobs
.
我正在使用Ninja forms
在名为apply.php
, 其中包含职务申请的字段。
现在,对于jobs页面上提供的每个职务,我希望它是一个链接,用户可以单击该链接进行申请,并重定向到apply.php
, 在那里,我可以获取作业id并将其保存在apply.php
.
这样,当我保存申请人的提交时,我可以将其与他们申请的工作一起保存。
我已经添加了链接,如下所示:
?page_id=18&jid=2
其中18是申请页面的id,我在该页面上有忍者表单。
但是如何从查询字符串中获取jid并将其用于忍者表单字段?
SO网友:Eric Allen
看起来你可以使用ninja_forms_display_init
填充字段的操作。
要从上面提到的URL获取作业ID,可以使用$_GET
大堆
调整文档页面中的代码,类似这样的内容应该可以实现您想要的:
function wpse_158000_populate_field($form_id) {
global $ninja_forms_loading;
$job_id_field = 3; //put the id for your hidden field here
//Change the value that a field is pre-populated with.
$ninja_forms_loading->update_field_value($job_id_field, $_GET[\'jid\']);
}
add_action(\'ninja_forms_display_init\', \'wpse_158000_populate_field\');
他们的
documentation 列出了许多其他可以关联的操作。
如果您喜欢使用更干净的URL,那么您可能希望挂接到rewrite_rules_array
然后你可以有一个更像http://www.example.com/apply/2 其中2是他们正在申请的工作的ID,apply是您的申请页面的slug。
您还可以进一步推动这一点,并为该作业使用slug,而不是为更好的URL使用ID,然后通过slug获取该作业的ID,并将该ID添加到隐藏字段的值中。