@artemdud

Как не в базовой странице wordpress сделать цикл для вывода постов?

Я создал тему в wordpress. И внутри этой темы у меня есть страница articles.php, не являющаяся стандартной в wordpress. Я нашел информацию о том, что стандартный цикл wordpress (the loop) не работает в таких страницах. И я проверил это так. На странице page.php цикл работает, а на странице articles.php нет. Как можно решить данную проблему?
  • Вопрос задан
  • 29 просмотров
Решения вопроса 1
solidcreature
@solidcreature
WordPress-митапы в Москве (vk.com/wpmeetup)
Здравствуйте. Тут есть несколько вариантов
1) Если у вас статьи -- кастомный тип записи, например article, то в этом случае будет достаточно переименовать articles.php в archive-article.php. Вордпресс сам подхватит данный шаблон и будет его использовать для страницы вывода записей типа article.

2) Если статьи у вас -- это обычные записи (post). То при условии, что внутри шаблона article.php вы используете цикл Вордпресса, то можно переименовать article.php в archive.php и записи будут выводиться с использованием вашего шаблона. Не забудьте в настройках сайта указать страницу вывода записей.

3) Если варианты 1 и 2 вам не подходят. Тогда для вывода записей используйте класс wp_Query. Его синтаксис очень похож на стандартный цикл, но позволяет вывести именно то, что вам нужно в конкретном шаблоне.
Подробнее о wp_Query на сайте wp-kama.ru
Ответ написан
Пригласить эксперта
Ответы на вопрос 2
Можете создать свой с помощью функций wp_query() или get_posts(), но вообще то вам нужно создать категорию Статьи (articles), а соответствующим записям ее присваивать. Тогда и цикл у вас будет нормально работать в шаблонах archive.php или category.php и с роутингом проблем не будет
Ответ написан
@artemdud Автор вопроса
Cпасибо большое всем за ответы! Смог решить свою проблему
Ответ написан
Ваш ответ на вопрос

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

Войти через центр авторизации
Похожие вопросы