У меня проблемы с плагином, который я создаю. Я сузил проблему до минимального количества кода, чтобы отобразить проблему.
Когда я запускаю функцию для получения сообщений произвольного типа на стандартной странице администратора WordPress, она возвращает результаты. Когда я запускаю функцию как задание cron wp-cli, она возвращает пустые результаты.
- Я уверен, что задание выполняется, потому что оно выводит пустой массив и сообщение об успешном выполнении cli о том, что задание было выполнено.
- Я также уверен, что custom_post_type регистрируется при запуске cron, так как я проверил вывод
get_post_types()
. - Если я проверяю другой настраиваемый тип сообщения, у меня также возникает проблема: результаты в пользовательском интерфейсе, нет результатов от cron-run.
- Если я проверяю встроенный тип (например,
post
илиpage
), я получаю правильные результаты в обоих сценариях, так что проблем нет.
Функция
function showEvents(){
$posts = get_posts([
"post_type" => "my_event",
]);
var_export($posts);
}
Крон работа
add_action( 'my_custom_cron', 'showEvents' );
Команда интерфейса командной строки WP
wp cron event run my_custom_cron --url=https://example.com/subsite/