Почему стандартный цикл the_loop выводит страницы, а не записи?
Если вызвать цикл the_loop() на главной странице, или на странице блога то он выведет пустую карточку с названием страницы.
Если же вызвать этот цикл на странице категорий то он автоматически (без всякой фильтрации) выведет все записи с данной категории. Нашел для себя способ, перед циклом объявлять переменную WP_Query.
Но теперь, я решил создать страницу поиска. При использовании цикла с переменной WP_Query, результаты не выводятся, а без переменной, поиск работает, но опять выдает в результатах поиска еще и страницы помимо записей.
Стандартный цикл выводит результат базового запроса ВП, запрос соответственно делается на основе того какая сейчас страница посещается.
Чтобы изменить базовый запрос используй хук pre_get_posts. Так, чтобы убрать или добавить тип записи в поиск нужно добавить параметр post_type.
Я вижу ты плаваешь в том как вообще это работает, поэтому обязательно прочит статьи: