wordpress Async-upload.php 将我转移到登录页面

1 ajax wordpress asynchronous file-upload wordpress-login

我在前端使用 wp media upload 来上传图像,但是当我从前端上传图像并上传时出现无法上传的错误,我看到当 ajax 调用它时注销'async-upload.php'我并转移到 wp 仪表板登录页面

Mas*_*son 5

如果您已经尝试禁用所有插件、修改角色功能以及将建议的行添加到 .htaccess 文件中,则以下操作对我有用。转到/wp-admin/admin.php。找到显示以下内容的行:

    auth_redirect();
Run Code Online (Sandbox Code Playgroud)

并将其替换为:

    if (!defined("DOING_AJAX"))
        auth_redirect();
Run Code Online (Sandbox Code Playgroud)

这个解决方案对我有用,但请注意,当您更新 WordPress 版本时,这些更改很可能会被覆盖。

编辑:在一些 WordPress 更新之后,我不得不改变解决这个问题的方式,而不是包含 /wp-admin/admin.php,我必须将文件复制到异步上传中。

我还必须进入 ajax-actions.php 并在文件顶部包含以下行:

    require_once(ABSPATH . 'wp-admin/includes/image.php');
    require_once(ABSPATH . 'wp-admin/includes/file.php');
    require_once(ABSPATH . 'wp-admin/includes/media.php');
Run Code Online (Sandbox Code Playgroud)