我将WordPress更新到最新版本3.6,我收到了关于wpdb :: prepare()的警告。
主题的滑块插件存在问题。我不知道如何编辑$ wpdb->准备这个文件,使其适用于新的WP版本。
<?php $item_count = 0; foreach ($sliders as $key => $slider){ $cur_slider_id = $key+1; $item_count = $wpdb->get_var($wpdb->prepare("SELECT count(c_id) FROM ". $item_table ." WHERE s_id = '". $cur_slider_id ."'")); ?>
$count_filter = $wpdb->get_var($wpdb->prepare("SELECT count(id) FROM ". $item_table ." WHERE c_id REGEXP '(^".$d.",)|(,".$d."$)|(,".$d.",)|^".$d."$'"));
$item_count = $wpdb->get_var($wpdb->prepare("SELECT count(c_id) FROM ". $item_table ." WHERE c_id RLIKE '^".$h."$' OR c_id RLIKE ',".$h."$' OR c_id RLIKE '^".$h.",' OR c_id RLIKE ',".$h.",' " ));
我有这三行包含$ wpdb-&gt; prepare(),请帮忙知道如何将其更改为WP 3.6接受它的方式?
谢谢,
答案 0 :(得分:1)
当我在wp-config.php文件中浏览此代码时,我感到非常高兴。警告信息未再次显示。
@ini_set('display_errors', 0);
答案 1 :(得分:0)
$ item_table定义在哪里?也许打印它以确保它有你想要的。
答案 2 :(得分:0)
在函数中添加“null”作为第二个参数可以完全解决问题。
答案 3 :(得分:0)
您正在以错误的方式使用wpdb->prepare()
功能。阅读http://make.wordpress.org/core/2012/12/12/php-warning-missing-argument-2-for-wpdb-prepare/以了解如何正确修复它。