Herbert: новый фреймворк плагинов для WordPress

Авторы плагинов для WordPress обладают большой свободой в плане структурирования и организации своего кода. Нет никакой предписанной файловой структуры. Именно поэтому, заглядывая «под капот» плагина, нам часто приходится долго все изучать, чтобы понять, как автор все организовал.

Джейсон Эгнью был сбит этим с толку при написании своего первого WordPress-плагина. Эгнью – технический директор Big Bite Creative – компании, расположенной в Мидлсбро, Англия. Он часто сотрудничает с разработчиками бэкэнда и фронтэнда в своих проектах. Это подтолкнуло его к поиску лучшей организации кода плагинов, что подходило бы для участников разных команд.

На этой неделе Эгнью выпустил Herbert, новый open source фреймворк для создания WordPress-плагинов. «Мы считаем, что текущий подход к созданию плагинов является дезорганизованным и сложным в понимании», говорит Эгнью. «Все это заметно повышает трудоемкость работы в командах и взаимодействие с предыдущими разработчиками. Herbert пока только появился на свет, и его цель – решить эти проблемы».

herbert

Еще до того, как создать Herbert, Эгнью проделал домашнюю работу, чтобы понять, если ли существующий инструмент для решения этой проблемы. Он нашел проект WordPress Plugin Boilerplate, однако решил, что он не подойдет для потребностей его команды. «Несмотря на то что WPPB – практически идеальный фундамент, он выглядит не слишком подходящим для быстрой разработки небольших плагинов», отметил Эгнью. «Нам нужно было что-то более пригодное для масштабирования».

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

Проект Herbert с открытым кодом – плод этих трудов. Фреймворк стремится отделить бизнес-логику от кода шаблонов, чтобы бэкэнд- и фронтэнд-разработчики не натыкались друг на друга. «Проект предлагает файловую структуру, позволяющую организовать код. Решение, используемое нами, очень простое, как и все маршруты, хранящиеся в файле plugin/routes.php», отметил Эгнью. «Вы больше не привязаны к WordPress Database Object ($wpdb), а следовательно вы можете использовать мощь и эффективность Eloquent ORM в Laravel для обработки запросов к вашей БД».

Herbert использует Composer для обработки зависимостей фреймворка. Код шаблонов хранится в представлениях, которые основаны на движке Twig PHP. Фреймворк вряд ли подойдет абсолютно всем. Однако если вы предпочитает разделять ваш код на маршруты, представления и контроллеры, то в таком случае Herbert позволит вам сохранить некоторое время при запуске новых плагинов.

Команда Big Bite Creative планирует поддерживать фреймворк, и в скором времени добавит примеры плагинов. «Мы планируем представить интерфейс объекта записи WordPress для Eloquent, а также тесты для вашего кода», говорит Эгнью. Они также рассматривают возможность добавления фронтэнд-фреймворка под WordPress, который будет работать вместе с Herbert. Проект открыт для участия, поэтому не стесняйтесь делать форки Herbert на GitHub и присылать код команде.

Источник: wptavern.com

Блог про WordPress
Комментарии: 10
  1. Antonic

    Супер! Не думал, что такое будет) А посоветуйте еще, пожалуйста, бесплатный фреймворк темы оформления. Я знаком с Thematic, но он давно не обновляется и он не адаптивный.

    1. FLy

      Я остановился на Roots, попробуйте и Вы :) http://roots.io/

  2. Antonic

    Спасибо! Однажды сидел и смотрел на страницу сайта Roots, найденную через поиск, но углубляться не стал. Теперь уж попробую)

    1. Дмитрий (автор)

      Специально для вас статья:

      https://oddstyle.ru/wordpress-2/stati-wordpress/startovye-temy-wordpress-chto-eto-takoe-i-dlya-chego-nuzhny.html

      Там внизу много стартовых тем, пробуйте. От себя порекомендую Underscores.

  3. Antonic

    Спасибо!

    1. Looler

      Underscores вам в помощь, только учтите, она совсем нулевая (чистая), надо иметь знания CSS.

  4. Antonic

    Мне как раз и нужен фреймворк, чтобы создать дочернюю тему со своим CSS, а также перекроить вывод HTML при необходимости. Важнее всего, чтобы API WordPress, используемой в теме-фреймворке был актуален для новых версий WordPress.

    1. Дмитрий (автор)

      На Undercores создаются темы от Automattic. Стартовая тема Undercores использует все лучшие практики, постоянно обновляется.

  5. Antonic

    Супер, спасибо!

    1. Looler

      Да, она очень крута и всегда актуальна. Я всегда все проекты на ней делаю, никогда не подводил ))))

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

Получать новые комментарии по электронной почте.