Обложка: Почему WordPress — №1 в стеке технологий для вашего следующего проекта?

Почему WordPress — №1 в стеке технологий для вашего следующего проекта?

Ольга Глеклер

Ольга Глеклер

Разработчик, представитель глобальной маркетинговой команды WordPress, амбассадор weDevs, соорганизатор конференции WordCamp Europe 2021.

Если в проект входит управление контентом, WordPress — №1 в стеке технологий. С ним можно создать лендинг, интернет-магазин, обучающую платформу, CRM и даже ERP-систему без единой строчки кода лишь на основе готовых бесплатных и платных тем и плагинов через визуальный интерфейс в панели управления. API системы очень продуманный и позволяет управлять и настраивать практически всё, что угодно, без костылей и изобретения велосипедов.

Сегодня на WordPress работают более 40% из 10 миллионов популярных сайтов 1.

Что может WordPress?

Система позволяет быстро проверять идеи, не тратя много времени и средств. Так в случае открытия интернет-магазина, самым трудоёмким станет выбор платёжного агрегатора и онлайн кассы, большинство которых имеет готовые плагины для подключения к WordPress. Товары же могут быть импортированы из складксой системы вместе с изображениями или загружены из файла.

В репозитории WordPress.org больше 7400 тем и 50 тысяч плагинов с открытым исходным кодом: от простых слайдеров до редакторов блогов, альтернативных встроенному WYSIWYG. А также мощные решения для электронной коммерции и дополнения к ним.

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

Использование разработчиками API является ключевым для дальнейшего роста и развития проекта на WordPress. API системы представлен хуками (фильтрами и событиями) 2.

Минимальный набор плагинов для большинства сайтов:

  • плагин безопасности — защищает от подбора пароля, блокирует ботов и так далее. В платных версиях доступна двухфакторная авторизация и многое другое;
  • плагин для транслитерации URL и названий загружаемых файлов;
  • SEO-плагин — для создания оптимизированных заголовков и описаний, оценки качества контента, добавления данных по Schema.org, настройки sitemap.xml и так далее;
  • плагин для конвертации изображений в формат webp. Он уменьшает размер растровых изображений и радует Google PageSpeed;
  • плагин для защиты от спама, если для страниц или записей включены комментарии;
  • плагин кэширования может быть эффективен или нет, в зависимости от динамики обновления контента, посещаемости и сложности системы в целом.

Изменения CSS

Стилистические корректировки реализуются дополнительными инлайн стилями, которые записываются в специальное поле кастомайзера (Панель управления > Внешний вид > Настроить > Дополнительные стили).

Кастомизация

+ HTML, PHP и API WordPress и плагинов.

Что можно сделать:

  • Изменить готовую тему или расширить её функционал через создание дочерней темы к бесплатной или премиум-теме. При таком подходе родительская тема сохраняет обновления. Со стороны разработчика дочерней темы нужна минимальная поддержка;
  • У плагинов, выводящих информацию на фронтенд, есть шаблоны, которые можно изменить в папке родительской или дочерней темы. Так можно решить, как будет отображаться контент и какой будет логика плагина в целом. Пример плагина со своими шаблонами и обширным API — WooCommerce.

Разработка

+ JavaScript, MySQL, система контроля версий (Git), система управления пакетами (NPM, Composer, Yarn и другие), системы сборки пакетов (Gulp, Webpack и другие), Bash, следование стандартам кодирования WordPress (Coding Standards) 3.

Что можно сделать:

  • создать темы с уникальным дизайном под цели конкретного проекта;
  • создать плагины, реализующие дополнительный функционал под конкретный проект;
  • превратить WordPress в приложение с помощью PWA.

+ React и интерфейс WordPress для работы с ним 4.

Что можно сделать:

  • разработать блоки и паттерны для Редактора блоков или другого функционала для фронтенда и бекенда;
  • разработать темы с полносайтовым редактированием.

+ другие технологии, фреймворки и платформы.

Что можно сделать:

  • интегрировать WordPress со сторонними приложениями, настройка синхронизации и обмена данными;
  • подключить к WordPress собственное мобильное приложение;
  • использовать WordPress исключительно как CMS и реализовать фронтенд на фреймворке — Gatsby, Vue.js и других.

Интерфейс REST API помогает взаимодействовать со сторонними приложениями и использовать WordPress только как систему управления контентом. Такая технология носит название Headless или Decoupled CMS 5.

В версии WordPress 5.6 в 2020 году в ядро системы также вошли «Пароли приложений» 6. Они дают возможность, приложениям авторизоваться с правами пользователя, без основного пароля аккаунта.

Альтернатива REST API — GraphQL, доступный с плагином WPGraphQL 7.

Реализация проекта на WordPress ограничивается квалификацией разработчиков, потребностями и бюджетом клиента. И позволяет получить максимальную отдачу от вложений. Если проект можно чётко описать, его можно реализовать на WordPress.

Бонусный уровень

WordPress — программное обеспечение с открытым исходным кодом, которое поддерживают волонтёры. То есть каждый может доработать систему: сообщить об ошибке, предложить идею или написать патч.

Будущее WordPress

В июле 2021 в ядро WordPress 5.8 войдёт возможность полносайтового редактирования — Full Site Editing. FSE откроет новые возможности для разработчиков. Пользователи WordPress без установки новой темы с поддержкой FSE не почувствуют существенных изменений.. Но привычные пользователям и разработчикам инструменты сохранятся. Как и совместимость с уже существующими темами и плагинами.

Также в декабре 2020 был запущен проект «Learn» 8. Это многоязычная учебная платформа с мастер-классами, викторинами, курсами и планами уроков. В рамках платформы проводятся группы для обсуждения, рассчитанные на пользователей и на разработчиков WordPress.

Почему пользователи и разработчики поддерживают WordPress?

Во-первых, положительная обратная связь в действии. Разработчикам нравится работать с WordPress и в какой-то момент они хотят поучаствовать в его развитии. Это хорошая тренировка и возможность сравнить себя с разработчиками из более чем 50 стран мира и стать лучше в дружественной среде.

Составить представление о работе сообщества можно посетив сайт Make WordPress 9.

Во-вторых, WordPress — это конференции и митапы, в разных уголках мира.

В-третьих, компании-разработчики плагинов, крупные агентства и хостинговые компании, предоставляют решения специально под WordPress. Так хостинги предлагают отладочный сайт (staging site), контроль за работоспособностью сайта, управление автоматическими обновлениями и другие возможности. Они избавляют программистов от рутины. А ещё крупные компании спонсируют мероприятия и разработчиков, которые развивают ядро WordPress и занимаются другими направлениями в рамках концепции «Five for the Future» 10.

Инфографика Жана-Батиста Одраса к релизу WordPress 5.6 (декабрь 2020) отражает вклад разработчиков в движок WordPress и дает представление о сообществе в целом 11.

Для тех, кто хочет попробовать свои силы в разработке ядра, Сергей Бирюков, WordPress Core Committer написал подробную инструкцию 12. А если еще сомневаетесь, подходит ли WordPress для проекта, приходите на русскоязычный форум поддержки 13.

  1. Статистика использования систем управления контентом
  2. Как работают хуки в WordPress (фильтры и события)
    Hooks | Plugin Developer Handbook | WordPress Developer Resources (на английском)
    Актуальный список доступных хуков (на английском)
  3. WordPress Coding Standards (на английском)
  4. @wordpress/element — уровень абстракции поверх React (на английском).
  5. На конференции WordCamp Europe 2020 Луис Эрранц, соучредитель и ведущий разработчик Frontity, фреймворка с открытым исходным кодом для разработки сайтов на базе WordPress с использованием React рассказал об особенностях Headless/Decoupled CMS (на английском)
  6. Вопросы и ответы о Паролях приложений (на английском)
  7. Мухаммад Мухсин: Использование WordPress с GraphQL (на английском).
    Плагин WPGraphQL
  8. Платформа Learn WordPress (на английском, другие языки в разработке).
    Представляем Learn WordPress (на русском)
  9. Make WordPress — глобальное сообщество волонтёров (на английском)
  10. Five for the Future (на английском)
  11. Статистика ядра WordPress 5.6: вклад по странам и компаниям (на английском)
  12. Как внести свой вклад в ядро WordPress (на русском)
  13. Форум поддержки WordPress