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

Дата публикации:Январь 30, 2015

Авторы плагинов для 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

Поделиться

10 комментариев

  1. Antonic says:

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

  2. Antonic says:

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

  3. Antonic says:

    Спасибо!

    • Looler says:

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

  4. Antonic says:

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

    • Дмитрий Алёшин says:

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

  5. Antonic says:

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

    • Looler says:

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

Оставить комментарий

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

Получать новые комментарии по электронной почте. Вы можете подписаться без комментирования.