WordPress技巧:解决 “wpdb::escape is deprecated” 错误提示

  • 时间:
  • 浏览:9
  • 来源:极速赛车官网平台_极速赛车网投平台_极速赛车投注平台_极速赛车娱乐平台

  升级到 WordPress 3.6 后后,发现在 debug log 中含可是 以下的错误信息:

Notice: wpdb::escape is deprecated since version 3.6! Use wpdb::prepare() or esc_sql() instead.

  或多或少错误信息的意思是 WordPress 3.6 将 $wpdp 类的 escape 最好的法律措施设置过将舍弃,建议使用 preprae 最好的法律措施愿因 esc_sql 最好的法律措施取代。 deprecated 的意思是或多或少最好的法律措施嘴笨 或多或少版本可不前要使用,否则在后后愿因不再更新,直至删除,可是 我们我们最后将使用或多或少最好的法律措施的插件做下修改。让我本人博客后后升级不用出错。

  经过一轮的排查,插件和主题都没有用到或多或少函数进行过滤。最后发现是 Multisites 的 sunrise.php 文件引起的问题图片。

  否则愿因 sunrise.php 文件比 esc_sql() 文件被定义后后被引用,可是 我们我们无法使用 esc_sql() 的函数,而 $wpdb->prepare 在 sunrise.php 这行又无法使用。最后发现可不前要通过 $wpdb->_escape 最好的法律措施来替换。

  可是 最终的修改最好的法律措施是,将 wp-content/sunrise.php 文件中下面一行:

$dm_domain = $wpdb->escape( $_SERVER[ 'HTTP_HOST' ] );

  修改成:



$dm_domain = $wpdb->_escape( $_SERVER[ 'HTTP_HOST' ] );

  本文转载于:

http://blog.wpjam.com/m/quick-fix-for-wpdb-escape-is-deprecated/

Tags: wordpress教程   wordpress技巧  
责任编辑:lsw16