wordpress - 如何将CSRF添加到wordpress中手动创建的表单?

标签 wordpress csrf

这是我第一次尝试在 WordPress 中编写自定义插件,当然有一种方法可以将 CSRF 标签添加到 WordPress 中的表单并检查服务器内部表单的有效性。问题是我该怎么办?

最佳答案

如果您使用的是 Wordpress 2.0.4 或更高版本,您可以使用 wp_nonce_fieldwp_verify_nonce字段来验证。 Wordpress 文档有一些 examples (我在下面发布了)。

在您的表格中:

<form method="post">
   <!-- some inputs here ... -->
   <?php wp_nonce_field('name_of_my_action','name_of_nonce_field'); ?>
</form>

在您的处理操作中:
<?php
if ( empty($_POST) || !wp_verify_nonce($_POST['name_of_nonce_field'],'name_of_my_action') )
{
   print 'Sorry, your nonce did not verify.';
   exit;
}
else
{
   // process form data
}

关于wordpress - 如何将CSRF添加到wordpress中手动创建的表单?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11658853/

相关文章:

html - Wordpress 子菜单链接到页面的一部分

flask - wtforms,CSRF, flask ,FieldList

ajax - 如何使用 express.js 在 Ajax 调用中实现 CSRF 保护(寻找完整示例)?

webforms - 加密 token 模式 CSRF 保护是否不受 BREACH 攻击的影响?

带有 Docker-Compose 和 AWS RDS MySQL 数据库的 AWS EC2 上的 WordPress

php - 使用设置 API 时,WordPress 是否会转义数据以防止 SQL 注入(inject)?

Django:禁止(未设置CSRF cookie。)

Tomcat 7.0.0 CSRF 过滤器阻止部署 war 文件

wordpress - 停止 wordpress 搜索显示自定义帖子类型

php - "Something is wrong with the XAMPP installation :-("是什么意思?