【问题标题】:Wordpress wp_redirect Function ErrorWordpress wp_redirect 函数错误
【发布时间】:2018-01-08 03:25:04
【问题描述】:

使用 wp_redirect 函数时出现以下错误;

警告:无法修改标头信息 - 标头已由 C:\xampp\htdocs\xx\wp-includes 中的(输出开始于 C:\xampp\htdocs\xx\wp-includes\formatting.php:5103)发送\pluggable.php 在第 1216 行

代码;

     <?php

        if (preg_match('#' . basename(__FILE__) . '#', $_SERVER['PHP_SELF'])){
            die('You are not allowed to call this page directly.');
        }

        if(!is_admin ()){ exit(); }

        $op = $_GET['op'];
        $id = $_GET['id'];

    if($op=="delete" and $id)
      {
         global $wpdb;

          if($wpdb->delete('my_table',array('id'=>$id)))
             {

               if(wp_redirect(admin_url('admin.php?my_plugin?result=successful'))){
                    exit();
             }
     }
     else
      {
        if(wp_redirect(admin_url('admin.php?my_plugin?result=unsuccessful'))){
                    exit();
      }
    }
 }

?>

WP 版本:4.9.1

我该如何解决?谢谢。

【问题讨论】:

  • 您是否在重定向上方打印或回显?
  • 是的,我做到了。当我也尝试正常的 header 命令时,我得到了同样的错误。
  • 不打印任何高于重定向的内容
  • 我试过了。我遇到了同样的错误。
  • 你能发布你的完整代码吗?

标签: php wordpress plugins


【解决方案1】:

请在代码中检查以下两点。

1) 关闭 php ?> 标签后检查多余的空格,- ttp://prntscr.com/hxh3i7 ,如果找到则将其删除。

2) 在调用 wp_redirect() 之前检查您是否正在向浏览器发送数据,如果是,则在发送任何内容之前移动您的代码。

如果以下 2 点对您没有帮助,请分享您的整个代码。

【讨论】:

  • 我已经尝试过这些方法。这些都是代码。谢谢你的帮助。
猜你喜欢
  • 2016-10-21
  • 2018-04-16
  • 1970-01-01
  • 2017-01-11
  • 1970-01-01
  • 2017-05-07
  • 2016-03-19
  • 2015-06-14
  • 1970-01-01
相关资源
最近更新 更多