WordPress (класс wpdb) и хранимые процедуры mysql

$query = "CALL .........."; $result = $wpdb->get_results($query); print_r($results); 

Возвращает пустой массив, а запрос $ wpdb-> ничего не возвращает, как вы запускаете хранимые процедуры из класса $ wpdb?

wpdb определяет тип запроса и возвращает результат, если он начинается с select, иначе затрагиваемые строки. Поскольку ваш вызов начинается по вызову, он, вероятно, ошибочно принимает его за заявление о вставке, обновлении, удалении и т. Д.

Попробуйте это (может трюк wpdb в мысли, что это выбор:

 /* select */ call ...; 

Или это (не уверен, что синтаксический анализатор mysql понравится):

 select * from ( call ... ); 

Если все остальное не работает (и даже если нет), рассмотрите возможность открытия билета в wp trac.

Я не уверен в процедурах, но хороший старт – проверить, есть ли какая-то причина для отказа запроса.

Вы можете включить и выключить отображение эхо-сигналов с помощью show_errors и hide_errors, соответственно.

<?php $wpdb->show_errors(); ?>

<?php $wpdb->hide_errors(); ?>

Вы также можете распечатать ошибку (если она есть), сгенерированную самым последним запросом с помощью print_error.

<?php $wpdb->print_error(); ?>

Справочник по функциям / wpdb Класс> Показать и скрыть ошибки SQL