Get_results возвращает объекты только с идентификатором сообщенияPhp

Кемеровские программисты php общаются здесь
Ответить
Anonymous
 Get_results возвращает объекты только с идентификатором сообщения

Сообщение Anonymous »

У меня возникли проблемы с пользовательским типом страницы в плагине SportsPress. Иногда страница этих сообщений отображается как «пустая» запись. Кажется, это происходит с перебоями.
Покопавшись в плагине, они подключились к фильтру the_posts с помощью следующей функции:

Код: Выделить всё

    public function display_scheduled_events( $posts ) {
global $wp_query, $wpdb;
if ( is_single() && $wp_query->post_count == 0 && isset( $wp_query->query_vars['sp_event'] ) ) {
$posts = $wpdb->get_results( $wp_query->request );
}
return $posts;
}
Если я зарегистрирую $posts перед строкой $posts = $wpdb->get_results( $wp_query->request ); я получу полностью сформированный объект сообщения:

Код: Выделить всё

Array
(
[0] => WP_Post Object
(
[ID] => 53851
[post_author] => 367
[post_date] => 2023-08-09 19:00:00
[post_date_gmt] => 2023-08-09 18:00:00
[post_content] =>
[post_title] => My post title
[post_excerpt] =>
[post_status] => publish
[comment_status] => closed
[ping_status] => closed
[post_password] =>
[post_name] => 53851
[to_ping] =>
[pinged] =>
[post_modified] => 2023-08-15 21:08:18
[post_modified_gmt] => 2023-08-15 20:08:18
[post_content_filtered] =>
[post_parent] => 0
[guid] => https://my-website.co.uk/?post_type=sp_event&p=53851
[menu_order] => 0
[post_type] => sp_event
[post_mime_type] =>
[comment_count] => 0
[filter] => raw
)

)
Но когда я регистрирую $posts после этой строки, она содержит вот что:

Код: Выделить всё

Array
(
[0] => stdClass Object
(
[ID] => 53851
)

)
Как видите, эта публикация не является запланированной или будущей публикацией. Мне не удалось воспроизвести ситуацию на местном уровне, что позволяет предположить, что это может быть связано с окружающей средой. Что происходит в WordPress, потому что он возвращает то, что кажется скелетными объектами?

Подробнее здесь: https://stackoverflow.com/questions/783 ... he-post-id
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «Php»