@BushaevDenis

Почему ID поста равно 0?

Пытаюсь вывести все товары в категории
if ( have_posts() ) {
    while ( have_posts() ) {
        the_post();
        var_dump($post);
    }
}

Получаю такой дамп.
object(WP_Post)#13091 (24) {
  ["ID"]=>
  int(0)
  ["post_author"]=>
  string(1) "1"
  ["post_date"]=>
  string(19) "2018-04-17 08:53:16"
  ["post_date_gmt"]=>
  string(19) "2018-04-17 05:53:16"........

Как id поста вообще может равняться 0?
В админке у этого поста нормальный ID стоит.
Следовательно потом с этим постом я никак не могу работать и получить по нему товар Woocommerce.

А самое интересное то, что у меня на главной такой же почти что цикл, только я получаю посты не из функций, а из кастомных полей, но на выходе точно такой же пост. Но, на главной это работает, а тут нет.
  • Вопрос задан
  • 92 просмотра
Решения вопроса 1
@BushaevDenis Автор вопроса
Я не заметил, оказывается WC выдал мне не пост, а категорию. Причём вид у него - как у поста, и класс WP_post. Вообще не понимаю как работает иерархия в WC.
Ответ написан
Комментировать
Пригласить эксперта
Ответы на вопрос 1
kumaxim
@kumaxim
Web-программист
Проверь, стоит ли у тебя wp_reset_postdata() на главной после цикла
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы