我开发了一个自定义插件,当我以管理员身份登录时,一切正常。
我的插件从插件创建的自定义表单中收集详细信息。提交表单后,它会向admin-post.php
发送POST请求。这在登录时工作正常。
当我退出并以普通用户身份使用网站时,表单提交只会加载一个空白页。
这是我的代码:
add_action('admin_post_loan_app_form', function() {
if(!isset($_POST['app_number']) || empty($_POST['app_number']))
{
redirectToFormWithError(ERROR_EMPTY_APP_NUMBER);
}
$_SESSION['lnloans']['app_number'] = $_POST['app_number'];
$_SESSION['lnloans']['page'] = LOAN_DETAILS_FORM;
redirectToForm();
});
如何允许任何人发送帖子请求而不仅仅是管理员?
答案 0 :(得分:0)
确保您使用admin_post_nopriv_*
作为your post action?因为that is what you need to do to作为未经身份验证的用户发布。即:
add_action('admin_post_nopriv_loan_app_form', function() { […]
作为辅助解决方案,如果可能,请考虑使用XML-RPC WordPress API发布数据。