我使用的是Wordpress和Framework Gantry 5,我通过JS将自定义html表单添加为现有容器中的innerHTML。
我希望将此表单值提交到WordPress管理设置中定义的电子邮件地址。我有什么办法可以实现?
答案 0 :(得分:1)
这取决于表单动作,如果表单动作在wordpress中调用一个函数(例如在function.php中),则可以选择电子邮件地址
get_option('admin_email')
并使用它发送帖子数据。
如果表单操作调用了wordpress外部的函数,则可以将电子邮件添加为表单中的隐藏字段
<input type="hidden" id="email" name="email" value="<?php echo get_option('admin_email'); ?>">
并在$ _POST对象中获取值。
由于您是通过javascript添加表单的,因此可以在使用jQuery提交表单之前,通过javascript添加隐藏字段(您也可以在普通js中进行此操作)。 如果您直接在php中直接内嵌打印脚本
$("#yourFormID").submit( function(eventObj) {
$("<input />").attr("type", "hidden")
.attr("name", "email")
.attr("value", "<?php echo get_option('admin_email'); ?>" )
.appendTo("#form");
return true;
});
如果将脚本放在js文件中,则可以使用php在外部打印隐藏字段,然后使用jquery(或香草)选择值
<input type="hidden" id="email" name="email" value="<?php echo get_option('admin_email'); ?>">
$("#yourFormID").submit( function(eventObj) {
$("<input />").attr("type", "hidden")
.attr("name", "email")
.attr("value", $('#email').val() )
.appendTo("#form");
return true;
});