Сегодня пытался запустить SQL-запрос через $wpdb->update(), и он тупо не срабатывал. Возвращал пустоту. То есть, мы знаем, что метод $wpdb->update() возвращает 0, в случае, если ничего не было обновлено в базе данных нашим запросом, а тут именно ничего не выводилось, когда я пытался распечатать результат через print_r()
(думаю по факту возвращалось false
).
Сегодня я работал с плагином WPML, таблица, с которой я работал выглядела по структуре вот так:
Запрос SQL был типо вот такого:
$wpdb->update( $wpdb->prefix . 'icl_translations', array( 'trid' => $trid ), array( 'element_id' => $post_id, 'element_type' => $post_type ), array( '%d' ), array( '%d', '%s' ) );
Ну в общем сами понимаете, что с ним всё ок. Как я в итоге решил это? Я распечатал запрос при помощи $wpdb->last_query
, затем я отправился в phpMyAdmin во вкладку SQL и попытался запустить его вручную.
Отлично! Теперь у нас хотя бы есть ошибка, с которой можно дальше работать.
Источник: Блог Миши Рудрастых