Делим шаблон WordPress на части – урок 15

На данный момент у нас тема показывает внешний вид шаблона и теперь мы можем переходить к процессу наполнения и настройки вывода данных.

Создайте 3 категории (Верстка, Дизайн, Разработка сайтов), в каждую категорию поместите по 3 записи. Если не знаете чем заполнить новые записи, не заморачивайтесь, воспользуйтесь сервисом lorem ipsum. Сервис помогает генерировать произвольный текст. Делайте текста не меньше чем 3 абзаца в каждой записи.

Разбор шаблона

Для вывода записей мы будем использовать шаблон с тремя колонками (threecolumn.html). Этот html файл уже загружен и давайте поменяем расширение файлу с html на php. Файл нужно переименовать на то имя, которое wordpress сможет правильно использовать archive.php.

Файл с именем archive.php система wordpress использует для вывода списка статей.

выводим список записей wordpress

Разделяем шаблон так же как с нашим файлом index.php в предыдущих уроках, расставляем функции.

<?php get_header(); ?>

<?php get_footer(); ?>

Так как мы уже делали на предыдущих уроках, повторяться не будем и пойдем дальше, для вас это самостоятельная работа, потом проверим.

Необходимо разделить шаблон archive.php.

Для начала создадим 2 файла sidebar-left.php и sidebar-right.php. В файл sidebar-left.php переносим код из файла archive.php который я покажу ниже:

В файл sidebar-right.php из файла archive.php переносим следующий код:

После создания двух файлов (sidebar-left.php, sidebar-right.php) и переноса в них кода, необходимо подключить этот код в файл archive.php. Подключение выполняется при помощи функции
<?php get_sidebar(‘left’); ?>. В скобках указывается вторая часть названия файла. Функция get_sidebar(‘left’) подключает файл sidebar-left.php.

Если на вашей практике в чужих шаблонах вы встретите функцию get_sidebar(‘left’) без атрибутов в скобках get_sidebar(), это означает, что сайдбар был создан в папке шаблона и подключен со стандартным именем (sidebar.php).

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

Создадим два файла content-top.php и content-bottom.php. Для подключения этих файлов мы будем использовать функцию get_template_part() с двумя атрибутами get_template_part( ‘content-top’, get_post_format() ). В первом атрибуте мы указываем имя файла который надо подключить, а во втором атрибуте функцию get_post_format() которая возвращает формат записи. Второй атрибут опциональный и это значит, что он просто не обязателен, если в дальнейшем вы его использовать не будете. Подробнее о функции можно почитать в кодексе wordpress.

Разделите шаблон index.php также как archive.php при помощи get_template_part().

Думаю, будет правильно не выкладывать сюда длинный код, а выложить ниже результат и чтобы вы сами разобрали шаблон. Самостоятельный разбор по полученным рекомендациям будет эффективнее, чем читать длинную простыню информации. Будут вопросы, пишите в комментариях.

Доработки после разделения шаблона

Для правильного вывода заголовка и даты используем следующий код:

 

Разберем код шаблона по порядку:

the_title_attribute() — вывод заголовка записи для атрибута title.

the_permalink() — выводит ссылку на запись, пока работать не будет, так как шаблон отдельной записи мы еще не настраивали.

the_title() — используется для вывода заголовка записи.

the_time() — выводит дату текущей записи. Можно использовать как у нас в примере или немного в другом виде, примеры можно посмотреть в официальном руководстве.

Также в шаблоне archive.php я использовал функцию the_excerpt() которая выводит отрезок статьи до тега Далее, который можно вставить в записи. Если в архиве нужно выводить не отрезок, а полную статью, то можно использовать функцию the_content().

Дополнил шаблон функциями, которые пригодятся для стилизации отдельных записей шаблона:

post_class() — дополнительные классы полезные для разработчиков тем, эта функция может выводить категорию записи, тип записи. Подробнее будем рассматривать позднее, если нам будет это необходимо. Если будет необходимо добавить свой класс, то его можно вписать как атрибут функции post_class(‘class-name’).

the_ID() — выводит ID записи в списке всех записей.

Пример использования:

 

Файлы урока

zip wordpress theme archive

На этом урок заканчиваю, в следующем поговорим о том, как вывести миниатюру к записи.


Купить хостинг WordPress
/* Репетитор по wordpress
Услуги репетитора онлайн. Список курсов которые я веду
  • Базовый курс по веб-дизайну;
  • Верстка сайтов;
  • Общий курс по CMS WordPress и продолжение курса по разработке шаблонов;
  • Разработка сайтов на PHP.
Подробнее читайте на странице репетитор по WordPress
*/

Николаенко Максим

Директор веб-студии ProGrafika. Занимаюсь разработкой, дизайном и продвижением веб-сайтов. Всегда рад новым читателям блога и хорошим клиентам.


Вам может также понравиться...

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *

Этот сайт использует Akismet для борьбы со спамом. Узнайте, как обрабатываются ваши данные комментариев.

Шаблоны для WordPress
Самый лучший хостинг в Украине
Стабильный хостинг для Drupal