Фреймворк для разработки контента (pods) • WP Blog

Обзор и установка фреймворка Pods

Pods позволяет обычным пользователям и разработчикам легко создавать и расширять типы записей и контента, таксономии, роли пользователей, медиа, комментарии, — всё с помощью административного интерфейса в консоли WordPress, помогая организовать контент и существенно ускоряя процесс разработки.

Официальный сайт: https://pods.io/.

Код на Github: https://github.com/pods-framework/pods.

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

Pods распространяется в виде плагина, поэтому установка занимает всего 1 минуту.

Стоит отметить, количество инсталляций превысило отметку 50 тысяч, проект востребованный и активно разрабатывается, а пользователи оставили множество положительных оценок по опыту работы с ним.

Имеется также русская локализация Pods, что не может не радовать.

Компоненты и использование Pods

В меню управления Pods нас ждут 11 компонентов, которые можно модульно включать/отключать, с кратким пояснением в боковой колонке.

Pods — WordPress

Компоненты разбиты на несколько групп по своему назначению.
По умолчанию включен только модуль шаблонизатора (templates).

Включать остальные модули на старте изучения Pods нет необходимости, потому что они направлены на более продвинутые способы использования фреймворка, и на дополнительные инструменты (миграция, интеграция со сторонним кодом).

  • Advanced Content Types — тип контента, который лежит в пользовательских таблицах, а не в стандартных таблицах post и postmeta.
    Рекомендуется только для знающих людей.

  • Advanced Relationships — добавляет возможность создавать связи между таблицами базы данных, сайтами в режиме сети, темами, шаблонами страниц, сайдбарами, объектами типа записи и таксономии.

  • Builder Integration — интеграция с конструктором/дочерними темами от iThemes.

  • Helpers — модуль для совместимости с Pods 1.x. Рекомендуется вместо него использовать хуки фильтры и действия.

  • Markdown Syntax — позволяет включать маркдаун разметку для текстовых полей Paragraph.

  • Migrate: Import from the Custom Post Type UI plugin — импорт пользовательского типа контента и таксономии, созданных с помощью плагина Custom Post Type UI.

  • Migrate: Packages — импорт/экспорт полей и других настроек Pods с другого сайта/инсталляции.

  • Pages — позволяет создавать сложные URL структуры для отображения во фронтенде Advanced Content Types. С другими типами не рекомендуется использовать.

  • Roles and Capabilities — помогает создавать и управлять ролями пользователей и их разрешениями.

  • Table Storage — позволяет добавить свою таблицу в базе для пользовательских полей записи, медиа, терминов таксономии, пользователей и комментариев.

  • Templates — движок шаблонизатор для Pods. Использует тег {@field_name} для вывода значений в HTML.

Задачи узконаправленные, поэтому разработчики выделили их в отдельные модули.

Добавить новый Pod

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

новый Pod — WordPress

Создать новый тип содержимого

Первый шаг предлагает выбрать тип содержимого (произвольные типы постов, произвольная таксономия, или кастомная страница настроек), задать подпись для единственного и множественного числа для отображения в админке. Также нужно задать имя Pod-а, которое будет использоваться программно в теме или коде.

новый Pod ‹ создать новый тип содержимого — WordPress

На втором экране переходим к добавлению/редактированию пользовательских полей.

Для содержания «Рецепты» я добавил текстовое поле «время приготовления».

новый Pod ‹ создать новый тип добавить поле — WordPress

Также для расширения примера решил добавить новую таксономию, описывающую тип еды (салаты, закуски, первые, вторые блюда, и прочее).

новый Pod ‹ создать пользовательскую таксономию — WordPress

В дополнительных опциях поля можно настроить тип выбора (одиночный) и формат (автозаполнение).

Теперь необходимо связать новую созданную таксономию с пользовательским типом Рецепты.

Делается это на вкладке расширенные настройки на странице редактирования типа контента.

новый Pod ‹ расширенные настройки типа контента выбор таксономии — WordPress

При добавлении в админке нового рецепта теперь доступны пользовательское поле «время приготовления» и выбор термина таксономии.

новый Рецепт ‹ пример использования Pod — WordPress

Вывод пользовательских полей в теме

Чтобы вывести значения полей во фронтенде, можно использовать стандартные функции WordPress (get_post_meta()).

$cooking_time = get_post_meta($post->ID, 'cooking_time', true);

if($cooking_time != '') {
echo  $cooking_time; 
 }

Либо создать шаблон Pods с использованием ‘магических’ тегов (~{@cooking_time}), и вывести шаблон с помощью шорткода в нужную часть страницы.

[pods template='Название шаблона рецептов']

Завершающие мысли по фреймворку Pods

Pods интересный инструмент, который позволяет сэкономить время при разработке и структуризации контента.

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

Дополнительные модули добавят возможность реиспользовать Pods на других сайтах (импорт/экспорт), связать с сторонними продуктами (iThemes Builder), добавить свои таблицы в базе, создать расширенные взаимосвязи, и управлять ролью/разрешениями пользователей.

В роли помощника организации контента Pods несомненно заслужил самых высоких похвал и хорошей оценки.

Подписаться
Уведомить о
guest
0 комментариев
Межтекстовые Отзывы
Посмотреть все комментарии
0
Оставьте комментарий! Напишите, что думаете по поводу статьи.x
()
x
Пролистать наверх