如何处理自定义表格提交?

时间:2017-08-14 作者:beginner

我创建了一个主题,在该主题中,页脚中有一个自定义表单,前端很好,但我不知道如何在WordPress中处理表单提交的后端。

我的意思是我可以创造一个handle_form.php 在简单的网站上,或者在同一个页面上处理表单,但WordPress中最好的是什么,我无法更改表单的布局,所以我认为插件不会有帮助。

我应该在页脚处处理表单吗。php或其他更好的解决方案

谢谢

2 个回复
SO网友:Rick Hellewell

虽然您可以创建自己的代码来处理表单提交,但假设您的表单是联系人类型的表单(您的问题不清楚),我的解决方案是使用联系人表单插件,如联系人表单7。它将创建可以将数据邮寄给您的表单,并且使用简单。例如,如果您想将表单数据存储在数据库表中,则可以使用它的“挂钩”。关于如何做到这一点,这里还有其他问题(包括答案)。

SO网友:Johansson

您可以创建一个REST路由并通过该路由处理表单。第一步是注册路由。为此,请在主题的functions.php 文件:

add_action( \'rest_api_init\', function () {
    register_rest_route( \'beginner\', \'/submit_form/\', array(
            \'methods\' => \'POST\',
            \'callback\' => \'process_my_form\'
    ) );
});
现在您更改表单的action 指向此的URL:

www.example.com/wp-json/beginner/submit_form
确保将方法设置为POST

现在,您可以创建回调函数并处理表单。以下是一个示例:

function process_my_form( \\WP_REST_Request $request ){
    // Now you have access to your form\'s values, for
    // example, you can use $username = $request[\'user\'];
}
给你。

结束

相关推荐

Link Forms on Wordpress

在我们的Wordpress网站上,我们有一个由一系列(单选按钮式)问题组成的表单。根据用户对特定问题的回答,我们希望向用户显示不同的表单。也就是说,我们希望将多个表单链接到一个主表单。这可能吗?如果是这样的话,有人能解释一下如何做到这一点,或者给我指一些可能有用的资源吗?我对Wordpress很陌生。