Транскрипт
Введение
В этом уроке мы рассмотрим пользовательские типы записей. К концу этого занятия вы сможете описать пользовательский тип записи WordPress, понять, зачем его использовать, создать пользовательский тип записи и понять, как отображать его содержимое на вашем сайте. Итак, что такое пользовательский тип записи? Контент, который вы создаёте на сайте WordPress, хранится в базе данных в виде страниц, записей и таксономий, таких как рубрики и метки. Кроме того, вы можете создавать пользовательские типы записей и таксономии в соответствии со своими конкретными потребностями.
Пользовательские типы записей
Иногда вашему сайту может потребоваться что-то особенное для эффективного добавления и отображения контента. Поэтому пользовательский тип записи полезен при создании контента в формате, отличающемся от стандартной страницы или записи. Например, если вы дизайнер или фотограф, вы можете создать тип записи «портфолио» для демонстрации своих работ. Какие ещё примеры сайтов, использующих пользовательские типы записей, можно привести? Одним из самых популярных плагинов для электронной коммерции является WooCommerce. Товары, добавленные в WooCommerce и отображаемые с его помощью, регистрируются как пользовательские типы записей, а категории товаров являются пользовательскими таксономиями. Другими примерами, где могут подойти пользовательские типы записей, являются книги, обзоры книг, участники команды, элементы портфолио, клубы, курсы, уроки и рецепты; этот список бесконечен.
Итак, как лучше всего создать пользовательский тип записи на вашем сайте? В общем случае есть два варианта: написать код самостоятельно. Урок о пользовательских типах записей для разработчиков можно найти в соответствующем направлении обучения, или, если вы не разработчик, использовать доступный плагин, который настроит пользовательский тип записи за вас. Именно этому и посвящён данный урок. Но прежде чем продолжить, стоит упомянуть, что в руководстве разработчика рекомендуется помещать пользовательские типы записей в плагин, а не в тему. Это гарантирует переносимость пользовательского контента даже при смене темы.
Создание пользовательского типа записи
В настоящее время наиболее популярными плагинами, способными создавать пользовательские типы записей, являются Custom Post Type UI и Advanced Custom Fields, или ACF. Другие варианты можно найти, выполнив поиск пользовательских типов записей в каталоге плагинов. Для этой демонстрации мы выбрали плагин Custom Post Type UI. Процесс начинается с установки и активации плагина CPT UI. После этого в панели управления появится новый пункт меню — в данном случае внизу левого меню. Выберите «Add edit post types» и приступите к работе.
Мы настроим пользовательский тип записи на сайте о пеших походах, где отображаются близлежащие горы, на которые можно подняться, и классифицируются они по высоте и сложности восхождения. Процесс начинается с присвоения имени пользовательскому типу записи: укажите ярлык mountain, а также метки в единственном и множественном числе — mountain и mountains. Затем вам будет представлен длинный список меток, связанных с новым пользовательским типом записи. Доступна ссылка для автоматического заполнения меток на основе ярлыка пользовательского типа записи. Нажмите этот вариант, чтобы сэкономить время, а затем просмотрите длинный список и решите, хотите ли вы изменить какие-либо метки по умолчанию. Например, метка «Menu name» по умолчанию добавляет перед названием слово «my». Я предпочитаю его удалить.
Затем можно прокрутить страницу вниз до раздела настроек, расположенного под всеми метками. Настройки определяют, будет ли пользовательский тип записи доступен публике, можно ли выполнять по нему поиск или отображать его в навигационном меню, где он будет находиться в списке меню панели управления и даже какой значок будет отображаться рядом с пунктом меню. Также можно указать, какие разделы поддерживаются на странице редактирования пользовательского типа записи, например избранное изображение, отрывок, автор и другие.
Для всех настроек заданы значения по умолчанию. Вам потребуется изменить настройку «has archive». Установите для неё значение true, чтобы создать страницу архива. Если вы предполагаете, что в будущем захотите экспортировать пользовательский тип записи, для этого параметра также можно установить значение true. В самом низу вы увидите таксономии, которые можно назначить пользовательскому типу записи. Отображаются две стандартные таксономии WordPress: рубрики и метки. Мы будем настраивать пользовательские таксономии, поэтому стандартные выбирать не следует. После выполнения этих шагов и сохранения указанных параметров новый пользовательский тип записи появится в левом меню панели управления WordPress вместе с пунктами меню записей и страниц.
Пользовательские таксономии
Теперь можно определить любые пользовательские таксономии, которые помогут эффективнее классифицировать записи нового пользовательского типа. В нашем случае мы классифицируем горы с помощью пользовательских таксономий height и climb rating. Высота и сложность восхождения будут выступать в качестве рубрик для нашего пользовательского типа записи. Мы создадим несколько диапазонов высоты, чтобы разделить горы на группы. Тот же процесс будет использован для таксономии climb rating, где будут заданы уровни сложности восхождения. Для начала выберите «Add edit taxonomies» в нижней левой части меню.
Затем можно начать настройку таксономий так же, как мы настраивали пользовательский тип записи. В первом примере я назову ярлык таксономии height, метку во множественном числе — heights, а метку в единственном числе — height. Я также выберу автоматическое заполнение меток. Затем выберу пользовательский тип записи mountain как тип записи, к которому применяется таксономия. В разделе настроек, вероятно, потребуется изменить два параметра по умолчанию. Первый параметр, Hierarchical, следует установить в значение true, если вы хотите, чтобы таксономии отображались на странице редактирования типа записи. Другой параметр называется «Show in quick or bulk edit panel». Если установить для него значение true, можно будет изменять настройки таксономии конкретной горы с помощью пункта быстрого редактирования. Далее можно повторить тот же процесс для таксономии climb rating.
После создания таксономий — в данном случае height и climb rating — необходимо отредактировать пользовательский тип записи mountain. Поэтому вернёмся к пункту «Add edit post type», выберем пользовательский тип записи mountain и прокрутим страницу вниз до конца раздела настроек. Теперь вы увидите перечисленные таксономии height и climbing rating. Установите оба флажка и снова сохраните пользовательский тип записи, чтобы связать таксономии с этим конкретным пользовательским типом записи. После настройки пользовательского типа записи и его таксономий можно начать добавлять в них данные. Выбрав пользовательский тип записи в панели управления, можно открыть одну из таксономий. В данном случае это height, а первой классификацией будут горы высотой менее 3000 футов над уровнем моря. Затем можно добавить остальные классификации этой таксономии — от гор высотой менее 3000 футов над уровнем моря до гор высотой более 12000 футов над уровнем моря. То же самое можно сделать для другой таксономии — climb ratings. В данном случае я добавил классификации для начинающих, среднего и продвинутого уровня.
Записи пользовательского типа
Теперь, когда наши таксономии настроены, можно создать несколько записей пользовательского типа. В данном случае вы будете добавлять конкретные горы и выбирать таксономии, которым они соответствуют. Давайте создадим первую запись пользовательского типа. Я назову её first mountain и добавлю демонстрационный контент. В настройках боковой панели можно выбрать соответствующие таксономии. В данном случае гора имеет высоту менее 3000 футов и подходит для начинающих. Мы также добавим отрывок и избранное изображение записи. Затем нажмём «Опубликовать». После этого я создам ещё две записи пользовательского типа mountain — second mountain и third mountain. Теперь, когда записи о горах добавлены и распределены по высоте и сложности восхождения, можно предоставить посетителям сайта возможность просматривать список гор целиком или с разбивкой по таксономиям.
Отображение пользовательского типа записи
Сначала создадим новую страницу, которая будет использоваться для отображения архива пользовательского типа записи mountain. Назовите страницу по своему усмотрению. В данном случае мы назвали её mountains и сохранили. Откройте список страниц и выберите «Быстрое редактирование», чтобы отобразить заголовок страницы и её ярлык. Измените ярлык так, чтобы он совпадал с ярлыком пользовательского типа записи. В нашем случае это mountain, после чего сохраните изменение. Чтобы увидеть страницу, нужно добавить её в наше меню в части шаблона сайта, содержащей заголовок. Откройте редактор сайта и выберите Navigation. Затем нажмите Edit. Откройте представление списка, выберите блок Navigation, добавьте новый пункт меню и выберите страницу под названием Mountains. Затем я выберу Mountains в правой боковой панели, нажму на три вертикальные точки, добавлю ссылку подменю и введу height. Как видите, страницы с названием height нет. Я хочу использовать height только как заполнитель для отображения классификаций. Поэтому я также добавлю climbing rating в качестве заполнителя. Чтобы убедиться, что это только заполнитель, выберите пункт меню — в данном случае height — откройте настройки боковой панели и добавьте две решётки после URL, чтобы ссылка не была активной, а служила лишь заполнителем. То же самое мы сделаем для climb rating. Добавим ссылку подменю в качестве заполнителя, а затем две решётки после URL.
Затем можно добавить классификации как дочерние страницы этих заполнителей. Давайте выберем Height, нажмём на три вертикальные точки, выберем Add a submenu link, найдём первую классификацию — less than 3000 feet — и выберем таксономию. После этого можно добавить классификации для высоты и сложности восхождения. Давайте посмотрим, как это выглядит во внешней части сайта. При нажатии на Mountains мы увидим все записи нашего пользовательского типа: Mountain one, two and three. Затем можно выбрать одну из классификаций — в данном случае mountains less than 3000 feet. В разделе сложности восхождения можно посмотреть горы, подходящие для туристов среднего уровня.
Шаблоны
Последнее, о чём мы хотим поговорить, — это шаблоны. Все рассмотренные нами страницы отображаются с использованием шаблона All Archives. Но что, если вы хотите, чтобы одна из страниц имела другой вид и макет? Перейдите в редактор сайта и нажмите Manage all templates, затем нажмите Add new template в правом верхнем углу. После этого у вас будет несколько вариантов. Можно добавить шаблон архива mountain, который будет отображать все записи о горах. Или можно выбрать шаблон отдельного элемента mountain, чтобы изменить способ отображения отдельных записей. Наконец, можно изменить способ отображения таксономий — всех таксономий или отдельных таксономий, то есть классификаций в данном случае.
Заключение
Дополнительную информацию о шаблонах WordPress, их использовании и изменении можно найти в других наших занятиях на learn.wordpress.org. Желаем успехов в создании и настройке пользовательских типов записей на вашем сайте.
Практическое задание
Используйте WordPress Playground и воссоздайте пример из видео или создайте собственные пользовательские типы записей, чтобы проверить свои знания: