Все, что вам нужно знать о пользовательских типах записей WordPress
Опубликовано: 2015-05-26Одна из вещей, которые мне всегда казались интересными в WordPress, — это его способность отображать различные типы контента с использованием типов записей. Типы сообщений позволяют создавать более одного типа сообщений. Чтобы каждый пост не выглядел как любой другой пост, вы можете создавать свои собственные пользовательские типы постов. В этой статье мы рассмотрим пользовательские типы записей, узнаем, что они из себя представляют и как их использовать.
Что такое тип поста?
Типы записей — это способ размещения контента в WordPress. WordPress имеет пять встроенных типов записей:
- Страница — выглядит как обычный пост, но не привязана к временной структуре или категориям обычных постов. Они имеют собственную структуру навигации в меню. Обычно на сайте всего несколько страниц.
- Пост — типичный тип, используемый для повседневных постов. В большинстве статей используется этот тип сообщений. Они публикуются в обратном порядке, поэтому последнее сообщение отображается первым. Это также используется для RSS-каналов.
- Вложение — это специальный пост, содержащий информацию о загруженном файле. Информация включает метаданные, описание, имя, размер, эскизы, местоположение, альтернативный текст и т. д.
- Редакция — это черновики и любые прошлые редакции опубликованных постов. Это копии постов, но они не опубликованы.
- Меню навигации — этот тип сообщения содержит информацию об элементах в структуре меню. Вместо отображения контента они отображают ссылки на контент на основе структуры, тегов, категорий и т. д.
Вы не ограничены использованием только этих пяти. Вы можете сделать свой собственный. Это известно как настраиваемый тип записи.
Что такое пользовательский тип записи?
Пользовательские типы сообщений — это любые типы сообщений, которые вы создаете и добавляете в WordPress с определенными пользовательскими параметрами. Есть несколько способов их создания и использования. Они работают как шаблоны страниц, которые отображают контент определенным образом с определенными макетами, функциями и стилями, придавая вашему веб-сайту индивидуальный вид. Это отличный способ разделить ваш контент, чтобы отдельные посты выделялись.
Как использовать пользовательские типы сообщений
Есть много способов использовать пользовательский тип записи. Вот несколько примеров:
- Страница продукта — будет включать фотографии, описание, обзоры, ссылку на покупку и т. д.
- Обзоры (книги, фильмы, игры, музыка, курсы и т. д.) — описание товара, его функции, удобство использования, сравнения и т. д.
- Курсы — будут включать название, описание, используемые материалы, имя учителя, даты, место, предварительные условия и т. д.
- Мероприятия (концерт, спектакль, выставка, свадьба, игра и т. д.) — будет отображаться описание, цель, кто будет присутствовать (докладчик, артист и т. д.), цена, место, дата и время и т. д. Можно использовать аналогичный шаблон к старой афише мероприятия.
Все они могут быть пользовательскими типами сообщений, которые вы выбираете для создания сообщения. Вы хотите сделать аудио обзор? Выберите свой пользовательский тип записи под названием «Аудиообзор», и у вас уже есть встроенный макет, стили и функции.
Создание пользовательских типов записей с помощью кода
Один из способов добавить пользовательские типы сообщений — вручную добавить код в вашу тему. Пользовательские типы записей добавляются в файл functions.php темы WordPress с помощью функции register_post_type(). Вы можете определить новый тип записи по его меткам, поддерживаемым функциям, доступности и т. д.
Вы должны вызывать register_post_type() до admin_menu и после хуков действия after_setup_theme. Кодекс WordPress рекомендует использовать хук инициализации.
Вот пример кода из Кодекса WordPress, который создает тип записи с именем Product, который идентифицируется как acme_product:
[php] add_action('init', 'create_post_type');функция create_post_type() {
register_post_type('acme_product',
множество(
'метки' => массив(
'имя' => __('Товары'),
'singular_name' => __('Товар')
),
'общедоступный' => правда,
'has_archive' => правда,
)
);
}
[/php]
Аргумент Labels определяет имя типа сообщения, а аргумент Public заставляет тип сообщения отображаться на экране администратора и на самом сайте.
В функцию register_post_type() можно передать множество аргументов. Вы можете использовать их для отображения пользовательских типов сообщений в поиске, настройки иерархии, изменения их URL-адресов, отображения или скрытия мета-полей и многого другого. Кодекс WordPress предоставляет полный список аргументов с примерами их использования.
Соглашения об именах
Обратите внимание, что имя типа записи в этом примере — acme_product. При этом используется соглашение об именах, когда имя плагина, темы или веб-сайта помещается в качестве префикса. Это предотвратит конфликты других настраиваемых типов записей с теми, что есть в других плагинах или темах. Просто убедитесь, что имя не превышает 20 символов.
Архивы
Чтобы сделать страницу архива доступной, вам необходимо обновить структуру постоянных ссылок. Шаблоны для пользовательских типов сообщений помещаются в архивы так же, как и обычные типы сообщений. Пользовательские типы сообщений будут использовать:
архив- {post_type} .php
Шаблоны
Вы также можете использовать пользовательские шаблоны для своих пользовательских типов сообщений. Возможно, вам придется изменить структуру постоянных ссылок. Файл в этом примере будет использовать:
single- acme_product .php
Запрос по типу сообщения
Как только вы зарегистрируете файл шаблона в своей теме WordPress, вы сможете создавать новые запросы для отображения сообщений определенного типа . Вы можете сделать это, используя аргумент post_type .
Вот пример из Кодекса WordPress:
[php] $args = array( 'post_type' => 'product', 'posts_per_page' => 10);$цикл = новый WP_Query($args);
в то время как ($loop->have_posts()): $loop->the_post();
the_title();
эхо '<div class="entry-content">';
содержимое();
эхо '</div>';
конец;
[/php]
Пользовательские типы сообщений в основном запросе
После того, как вы зарегистрировали свой пользовательский тип сообщения, вам все равно нужно добавить его в основной запрос. Использование хука действия pre_get_posts позволит им отображаться в ваших архивах и на вашей домашней странице.
Вот пример из Кодекса WordPress:
[php] // Показывать сообщения типа «сообщение», «страница» и «фильм» на главной страницеadd_action('pre_get_posts', 'add_my_post_types_to_query');
функция add_my_post_types_to_query($query) {
если ( is_home() && $query->is_main_query() )
$query->set('post_type', array('post', 'page', 'movie'));
вернуть $запрос;}
[/php]
Об использовании кода
Добавление кода имеет некоторые преимущества. Во-первых, вы можете оптимизировать свой сайт, не беспокоясь об обновлении плагинов. Одна из проблем с добавлением кода в вашу тему заключается в том, что вам придется переписывать код при смене темы.
Создание пользовательских типов сообщений с помощью плагинов
Проще всего это сделать с помощью плагина. Плагины упрощают переключение тем без необходимости перекодировать ваши пользовательские типы сообщений.
Пользовательский интерфейс типа публикации
Этот бесплатный плагин предоставляет вам интерфейс для создания собственных пользовательских типов записей и таксономий. Он не обрабатывает пользовательские типы сообщений, которые вы зарегистрировали в своей теме, но имеет интуитивно понятный пользовательский интерфейс с множеством функций.
Чтобы создать тип записи, вы добавляете ярлык, метки, описание и настройки. Настройки простые, но обширные. Вы можете настроить тип его возможностей, положение меню, типы полей и форматы, которые он будет поддерживать, значок меню, таксономии и многое другое. Есть много вариантов и много помощи для каждой настройки.
Вы также можете импортировать и экспортировать свои пользовательские типы сообщений. Это отлично, если вы хотите поделиться ими с коллегой или использовать их на других принадлежащих вам веб-сайтах.
Его легко использовать. Я смог добавить пользовательские типы сообщений в кратчайшие сроки. Я мог вернуться и отредактировать свои типы сообщений, но не было возможности продублировать один при создании нового. Это не нарушение условий сделки, но было бы удобно.
Модули — настраиваемые типы контента и поля
С помощью этого вы можете либо создавать новые типы сообщений, либо расширять существующие типы сообщений. Он будет создавать настраиваемые типы сообщений, настраиваемые таксономии, настраиваемые страницы настроек и расширенные типы контента. Для расширения существующих типов сообщений вы можете добавить новые поля к обычным типам сообщений, таксономиям, медиа, пользователям и комментариям.

Вы можете выбрать даты, числа, типы текста, текст абзаца, палитру цветов, да/нет, файл (изображение, видео и т. д.), аватары и отношения. Вы также можете создавать тематические типы контента для каждого типа Pod. Существуют необязательные компоненты, которые добавляют роли и возможности, страницы, шаблоны, подсказки, расширенные типы контента, таблицы, расширенные отношения, уценку и интеграцию тем. Вы можете импортировать из других пользовательских интерфейсов, и он совместим со многими другими плагинами и сборщиками.
Вы можете создавать свои собственные типы полей и даже применять короткие коды и HTML. Опции просты в создании и управлении. После того, как вы создали свой модуль, вы можете добавить его в другой контент, используя шорткоды. Кнопка Pod появляется в визуальном редакторе, где вы можете выбрать шорткод для любого Pod. Тип сообщения также добавляется на вашу панель инструментов, поэтому вы можете выбрать его так же, как страницу или сообщение.
Из коробки это один из лучших вариантов для создания пользовательских типов записей. Он прост в использовании и имеет множество функций. У меня не было проблем с совместимостью, и пользоваться им легко и интуитивно понятно. Я хотел бы видеть функцию дублирования стручков, но, по крайней мере, их легко сделать.
Диспетчер пользовательских типов контента
Это позволяет создавать настраиваемые типы сообщений со стандартизированными настраиваемыми полями, включая флажки, раскрывающиеся списки, изображения и т. д. Вы можете хранить несколько сообщений, мультимедиа и т. д. в одном поле. Это отличный способ хранить галерею изображений и других типов мультимедиа.
Создание пользовательских типов записей довольно просто. Вы настраиваете метки, поля, столбцы, меню, URL-адреса, таксономии, действия и т. д. Вы можете настроить PHP, CSS и HTML для каждого пользовательского типа сообщений. Вы также можете создавать собственные типы сообщений из двух включенных примеров шаблонов. После того, как вы создали свои типы сообщений, вы просто активируете их, и они готовы к использованию. Вы можете редактировать или дублировать любой тип сообщения. Это функция, которую я хотел бы видеть на других.
Он добавляет типы сообщений на панель инструментов, чтобы вы могли выбирать их так же, как страницу или сообщение. Он также добавляет две кнопки в ваш визуальный редактор:
Суммировать сообщения
Это позволяет вам динамически перечислять сообщения в соответствии с выбранными вами критериями. Вы можете создавать настройки для типов сообщений и таксономий на своих страницах и в сообщениях.
Настраиваемые поля
С помощью этого вы можете выбрать шорткоды из списка, и они будут вставлены в ваш контент.
Есть много вариантов для создания пользовательских типов сообщений с этим. Вы можете импортировать и экспортировать свои определения контента, чтобы повторно использовать их на других сайтах. Он прост в использовании и имеет много хороших функций.
WCK — Создатель настраиваемых полей и настраиваемых типов сообщений
У этого есть WordPress Creation Kit с тремя инструментами, которые помогут вам создавать и поддерживать настраиваемые типы сообщений, настраиваемые таксономии, а также настраиваемые поля и метабоксы для ваших сообщений, страниц, настраиваемых типов сообщений. Вы можете создавать свои собственные типы сообщений, используя встроенный пользовательский интерфейс.
- WCK Custom Fields Creator — позволяет создавать настраиваемые поля для ваших сообщений, страниц и настраиваемых типов сообщений. Он хранит данные в стандартных настраиваемых полях.
- WCK Custom Post Type Creator — позволяет создавать пользовательские типы сообщений, используя пользовательский интерфейс для функции register_post_type().
- WCK Taxonomy Creator — позволяет создавать и редактировать собственные таксономии. Он имеет пользовательский интерфейс для функции register_taxonomy().
Создатель типов сообщений прост в использовании. Вы просто даете ему имя, метку, описание, выбираете, является ли он иерархическим или имеет архивы, а затем выбираете типы полей, которые он поддерживает. Вы также можете просмотреть расширенные параметры для меток, позиционирования меню, возможностей и т. д.
После того, как вы добавили пользовательский тип сообщения, вы просто нажимаете «Добавить новый» по ссылке этого типа сообщения в меню панели инструментов, и вы создаете новое сообщение для этого типа. Тип сообщения будет иметь форматы и настройки, которые вы выбрали при его создании. Вы должны создавать с нуля каждый раз, когда вы строите новый.
Существует краткое руководство по началу работы, которое поможет вам в этом. Хотя настройки настолько интуитивны, и для каждого поля даны примеры, так что вам может не понадобиться руководство.
Также есть версия Pro, которая добавляет множество новых функций. Hobbyist стоит 49 долларов за использование на 1 сайте. Он включает в себя средство создания страницы параметров и дополнительные типы настраиваемых полей, в том числе:
- WYSIWYG-редактор
- Загрузить поле
- Дата
- Пользователь
- Выбор CPT
- Страна
- Ввод текста
- Текстовая область
- Выпадающий выбор
- Флажки
- Радио-кнопки
Он также имеет 1 год обновлений и поддержки. Pro стоит 139 долларов за неограниченное количество сайтов и добавляет шаблоны Swift и внешний хостинг.
Типы
Types — это плагин, который упрощает определение ваших собственных настраиваемых типов сообщений, настраиваемых полей и настраиваемых таксономий. Что интересно, вы можете соединять разные типы постов. В качестве примера они показывают события и исполнители. Вы можете соединить их вместе, используя отношения родитель/потомок. Он даже позволит вам редактировать дочерние данные на родительских страницах.
В нем есть большинство функций, которые вам могут понадобиться при создании и управлении вашими пользовательскими типами сообщений. Все поля содержат подробные описания того, как их использовать. Вы создаете название и описание поста, метки, выбираете разделы для отображения (заголовок, редактор, комментарии, обратная ссылка и т. д.), параметры (перезапись, страницы, каналы и т. д.) и отношения между родителем и дочерним элементом. Вы можете экспортировать свои настройки на другие веб-сайты.
Он добавляет тип сообщения в меню панели инструментов, поэтому вы можете выбрать его так же, как страницу или сообщение. Я не видел способа дублировать пользовательский тип записи, поэтому вам нужно создать его с нуля.
Он имеет некоторые другие интересные функции, включая возможность изменять размер и обрезать изображения, а также расширенный кеш изображений, чтобы ваши изображения загружались и отображались как можно быстрее. Вы также можете интегрировать API в свой PHP для отображения полей с их собственными типами данных.
Он прост в использовании и содержит руководство, которое поможет вам начать работу. Что интересно в руководстве, так это то, что вы можете выбрать из списка тип сайта, который вы создаете, а затем он покажет вам информацию для этого типа сайта. Сайты включают брошюры, каталоги, электронную коммерцию, блог и т. д.
Последние мысли
Пользовательские типы сообщений — отличный способ выделить ваш контент, и их легко создать самостоятельно либо с помощью кода, либо с помощью простого плагина. Используя один из описанных здесь методов, вы можете быстро создавать свои собственные типы записей.
А ты? Используете ли вы настраиваемые типы сообщений? Используете ли вы плагины или предпочитаете писать свой собственный код? Расскажите нам об этом в комментариях ниже.