WordPress实现前台提交表单

WordPress实现前台提交表单

在WordPress中实现前台提交表单,你可以使用内置的wp_insert_post函数来创建一个简单的表单,并将表单的数据存储到WordPress的posts表中。以下是一个简单的例子:

  1. 首先,在functions.php中添加一个简单的表单处理函数:
function my_custom_form_handler() {
    if (isset($_POST['my_custom_form_submit'])) {
        // 验证和处理表单数据
        $title = sanitize_text_field($_POST['my_custom_form_title']);
        $content = sanitize_text_field($_POST['my_custom_form_content']);
 
        // 插入新的帖子
        $new_post = array(
            'post_title' => $title,
            'post_content' => $content,
            'post_status' => 'publish',
            'post_author' => get_current_user_id(),
            'post_type' => 'post',
        );
 
        // 插入帖子并获取新帖子的ID
        $post_id = wp_insert_post($new_post);
 
        // 可以添加其他逻辑,例如重定向或显示成功消息
        if (!is_wp_error($post_id)) {
            // 重定向到新帖子页面或者显示成功消息
        }
    }
}
add_action('init', 'my_custom_form_handler');

在你的前台模板文件中添加一个简单的表单:

<form method="post" action="">
    <label for="my_custom_form_title">标题:</label>
    <input type="text" id="my_custom_form_title" name="my_custom_form_title" />
 
    <label for="my_custom_form_content">内容:</label>
    <textarea id="my_custom_form_content" name="my_custom_form_content"></textarea>
 
    <input type="submit" name="my_custom_form_submit" value="提交" />
</form>

确保你的表单的action属性为空或者指向当前页面,这样提交表单时可以正确处理表单数据。

这个简单的例子展示了如何在WordPress中创建一个前台表单并将数据存储为一篇新的帖子。在实际应用中,你可能需要添加额外的安全性检查,例如防止跨站请求伪造(CSRF)攻击,以及其他验证机制来确保用户输入的数据是有效的。

总结:这个就是在前台快速发稿一样。