Как создать тему для WordPress. Часть 7: страница archive.php

Этот урок – седьмой из серии, посвященной разработке темы для WordPress. Из него вы узнаете, как создать шаблон для страницы архивов archive.php.

Разобраться в том, для чего будет использоваться файл archive.php, поможет схема иерархии шаблонов. Из этой схемы следует, что шаблон архивов в теме для WordPress выводит эти страницы:

  • рубрики
  • метки
  • архивы по датам
  • архивы по авторам
  • пользовательские таксономии
  • архивы пользовательских типов записей

В этом руководстве я создам только один шаблон – archive.php, и все перечисленные страницы будут загружаться с его помощью. Но если вам необходимо, то можете сделать отдельные шаблоны для вывода разных типов архивов.

Шаг 1 Создаем файл archive.php

В нашей теме страница архивов будет выглядеть почти также, как главная, но вверху будет добавлено название и описание рубрики, имя автора, дата или метка. То есть, этот шаблон будет основываться на файле index.php, но с некоторыми изменениями.

Поэтому первое, что нужно сделать, это создать в папке темы копию index.php, и переименовать ее в archive.php.

Шаг 2 Добавляем заголовок и описание для рубрик

Теперь добавим на странице заголовок для рубрик. В самом начале файла archive.php, сразу после get_header и перед while ( have_posts() ), нужно добавить проверку, открыта ли сейчас страница рубрики. В начале файла код должен быть таким:

А сейчас между первой и второй строкой, то есть до цикла вывода записей, добавим:

Строка 3 – это условие, если открыта страница рубрик, а строка 4 – это вывод названия текущей рубрики.

В файле стилей /css/style.css пропишем стили для заголовка страницы. Нужно будет добавить h1 и h1 a к строкам 48 и 55, и добавить где-нибудь снизу новый стиль для .page-title.

Теперь выведем описание для рубрики:

Аналогичным образом добавим заголовки для других типов архивов.

Шаг 3 Заголовок для архивов по датам

Модифицируем код, и добавим к нему проверку, не открыта ли страница архива по годам:

А потом по месяцам и по дням:

Шаг 4 Заголовок для страницы меток

Добавить заголовок на страницу меток очень легко:

Шаг 5 Заголовок для страниц автора и других

Также нужно добавить заголовок для страницы автора (это строка 14), и страниц других видов архивов, которые могут добавить пользователи (это строка 16, и эта страница будет называться просто “Архивы”):

Итоги Мы создали шаблон архивов!

Конечно, в процессе разработки темы для WordPress очень важно не забыть про шаблон архивов. Другой, не менее важный шаблон, это single.php – именно он выводит одиночную запись в блоге. Также, на этой странице добавляются комментарии к записям. Поэтому следующий урок будет связан с созданием файла single.php. Чтобы его не пропустить, подписывайтесь на обновления блога!




7 комментариев к “Как создать тему для WordPress. Часть 7: страница archive.php”

  1. Aram

    я одно не понимаю, где используется этот файл, как подключить его и к чему надо подключить?

    Ответить
    • Ирина

      Этот файл нигде подключать не надо. Достаточно просто создать его в папке с Вашей темой, а все остальное WordPress сделает сам. Используется он, когда Вы в блоге переходите на страницу рубрик, тегов, архивов по дате (то есть, например, вот такую страницу генерирует: https://oriolo.ru/category/blogging/)

      Ответить
  2. tom

    “Модифицируем код, и добавим к нему проверку, не открыта ли страница архива по годам:” , а если открыта по годам то что? в этом уроке мы делаем какие-то изменения создаем этот файл, но не знаем какой результат должен получится, нет никаких сравнений , т.е. я все сделал как написано, но не понял как проверить, что все работает как надо и что я сделал…. объясните куда зайти, перейти что бы понять к чему эта статья. Единственное что я заметил, это то что при нажатии на на одну из рубрик я переходу на список конкретных рубрик

    Ответить
    • Ирина

      Код, про который Вы пишете, изменяет заголовок страницы архива по дате. Чтобы посмотреть, как это работает, Вам нужно нажать на дату поста, либо перейти по адресу: ваш-сайт/2015/ чтобы открыть все записи за 2015 год.

      Ответить
  3. Владимир

    Ирина, спасибо за уроки!
    Сделайте урок про single.php и остальные страницы шаблона.
    Спасибо.

    Ответить
  4. Виталий

    У вас ошибка в тайтле страницы. Там написано 6 часть, а на самой странице 7.

    Ответить
  5. Цифровой

    Ну а где код, чтобы вывести все записи на этой странице?

    Ответить

Оставить комментарий