BracketSpace, компания по разработке программного обеспечения, ориентированная на WordPress, выпустила Micropackage несколько недель назад. Проект представляет собой набор репозиториев с открытым исходным кодом с повторно используемым кодом для включения в плагины и темы WordPress. В настоящее время библиотека содержит 13 пакетов, включая оболочку файловой системы, систему шаблонов, средство создания блоков Advanced Custom Fields и многое другое.
Компания из Польши специализируется на аутсорсинге проектов и разработке плагинов. Некоторые из их наиболее популярных плагинов включают Advanced Cron Manager Pro и Notification , настраиваемый плагин уведомлений, в котором BracketSpace продает профессиональные расширения для различных услуг.
Проект Micropackage был продиктован потребностями команды и ее проектов. «Мы начали проект Micropackage, чтобы избавиться от собственного зуда», – сказал Якуб Микита, генеральный директор BracketSpace. «В течение последних нескольких лет активной разработки плагинов и веб-сайтов мы заметили, что соблюдение стандарта кода очень важно для удобства сопровождения». Команда BracketSpace копировала и вставляла код между проектами. В конце концов, команда задала себе неизбежный вопрос, который задает большинство команд разработчиков – почему бы не разбить весь этот код на небольшие пакеты и не хранить их в одном месте? Так родился проект Micropackage.
BracketSpace использует все пакеты во многих своих текущих плагинах и темах, потому что код изначально был взят из этих проектов. «Сейчас мы переписываем один из наших флагманских плагинов, Notification, используя микропакеты, и намерены создавать с их помощью каждый новый плагин и тему», – сказал Никита. «И поскольку они слабо связаны, может быть много вариантов конфигурации.
Управление пакетами и зависимостями – стандартная часть разработки в более широком мире разработки PHP. Использование пакетов становится все более и более стандартным, поскольку WordPress начал использовать современные инструменты JavaScript. Однако экосистема в основном не справляется с пакетами PHP. Хотя многие разработчики плагинов используют такие зависимости, такая практика встречается нечасто. WordPress также не имеет встроенного метода обработки зависимостей. Ситуация мешает таким проектам, как Micropackage, получить реальную поддержку в общем сообществе разработчиков WordPress.
Проект включает 13 репозиториев, которые могут быть включены в плагины или темы WordPress через Composer. Большинство пакетов в настоящее время доступны на странице Micropackage в Packagist . Некоторые из пакетов по сути являются оболочками для различных API WordPress для более простого использования. Однако некоторые пакеты предлагают новые функции для разработчиков.
Никита сказал, что следующие пакеты являются наиболее важными для команды:
Репозитории на этом не заканчиваются. Они создали другие оболочки для API WordPress, такие как кеширование, скрипты и интернационализация. В команде также есть создатель блоков для ACF, который позволяет разработчикам создавать блоки из шаблонов.
Для проекта BracketSpace запланировано еще как минимум пять пакетов. На данный момент пакеты предназначены в первую очередь для разработчиков WordPress. Тем не менее, Никита сказал, что команда по возможности будет также создавать платформенно-независимые репозитории. Таким образом, они будут полезны разработчикам за пределами экосистемы WordPress.
Поскольку до крайнего срока соблюдения GDPR ЕС осталось всего 178 дней , многие владельцы сайтов…
Команда Gutenberg создаст станцию тестирования удобства использования в WordCamp US, где посетители смогут принять участие…
Сегодня компания 10up опубликовала предварительную версию своего плагина Distributor , нового решения для синдикации контента…
На этой неделе был выпущен Gutenberg 1.8 с несколькими заметными улучшениями, которые предоставят разработчикам плагинов…
На этой неделе был выпущен Gutenberg 15.5 с новыми функциями и улучшениями возможностей полнофункционального редактирования…
DesktopServer выпустил версию 3.8.4 своего программного обеспечения для локальной разработки. Эта версия включает в себя…