我对Javascript有点了解,我还不是程序员。
我创建了一个Ninja Forms
用于我的Wordpress网站。当用户填写表单的4个字段并按 Submit 时,我需要这些数据始终显示在前端(在html中创建的4个特定位置),最后一个显示提交了对上一个的覆盖。
Ninja像这样将数据保存在wp_postmeta中:
**meta_key** **meta_value**
_field_12 (the first of the values I want appear in frontend)
_field_13 (the second one)
_field_14 (the third one)
_field_15 (the fourth one)
_form_id 1 (always the same value)
_seq_num 3 (increase 1 every time Submit is pressed)
我该怎么办? 我知道没有PHP知识超出了我的范围,但是,有人可以给我一些窍门吗?有插件吗?
请帮助
答案 0 :(得分:1)
您有几种选择:
创建一个自定义的Ninja Forms Action。显然,这将需要大量的编程技能,了解Ninja Forms的工作原理等。优点是,您可以将数据存储在首选的位置和格式(例如,在wp_options表中)。
修复该问题。您可能可以在模板中执行以下操作:
。
$form_id = 3;
$submissions = Ninja_Forms()->form( $form_id )->get_subs();
if ( is_array( $submissions ) && count( $submissions ) > 0 ) {
// Get first element of array; latest submission
$latest_submission = reset( $submissions );
// Returns array with all submission values
$all_fields = $latest_submission->get_field_values();
print_r( $all_fields );
// To get/display single value
$single_field = $latest_submission->get_field_value( 'firstname_1531139833971' );
echo $single_field;
}
如果不确定表单ID,请检查简码中列出的ID(“忍者表单->仪表板,然后是简码”列)。例如。 [ninja_form id = 3] id = 3 是您的form_id。
获取方法 get_field_value 的键的最简单方法是print_r所有提交值并检查哪一个是提交值,否则,单击以编辑表单,选择要编辑的字段,展开管理部分,您应该查看该字段的密钥。
选项#1应该是解决此问题的首选方法,如果打算继续使用选项#2,请确保首先检查功能Ninja_Forms(),否则如果禁用/未加载/禁用了Ninja Forms,则会出现致命错误等