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

  • 时间:
  • 浏览:24
  • 来源:5分快乐8注册平台-5分快乐8官网平台_5分快乐8官网

  升级到 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