Запускаем локальный WordPress за секунды с помощью wp-now

wp-now — это новый бесплатный сервер для локальной разработки, который недавно внесли в WordPress Playground. С поддержкой от команды разработки ядра и Automattic. Быстрее чем Docker.

Находясь в своей альфа-версии, wp-now уже является самым быстрым и простым способом создания локального сайта WordPress. Мы хотим помочь разработчикам сосредоточиться на том, что имеет наибольшее значение, а именно, превращение кофеина в строки кода и быстрая доставка продуктов.

В WordPress.com вклад в проекты, такие как WordPress Playground, соответствует нашей миссии предоставления лучшей управляемой платформы хостинга WordPress. За последний год мы обогатили опыт разработчика WordPress.com инструментами, такими как WP-CLI, SSH-доступ и стейджинг-сайты.

Оптимизировано для разработки тем с блоками

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

Вы устали от повторения одних и тех же шагов: загрузки последней версии WordPress, настройки нового сайта и отслеживания ваших учетных данных. Вы вспоминаете блог, объявляющий о инновационном инструменте, который стоит исследовать: «Запустите локальную среду за секунды с wp-now».

И вы себе говорите: «Почему бы не попробовать? Единственным требованием является наличие npm, и я смогу прекратить использование Docker».

Вы пробуете…

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

После некоторой разработки вы решаете протестировать свою тему с использованием последней версии кандидата на релиз WordPress:

wp-now start --wp=6.3-RC1

Ваш сайт выглядит отлично на вашем компьютере, но клиент позвонил и сообщил, что хочет начать использовать PHP 8.2, а WordPress все еще на версии 6.1. Нет проблем для wp-now:

wp-now start --php=8.2 --wp=6.1.3

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

Быстрее, чем Docker

Внутри себя wp-now использует WordPress Playground, который выполняет PHP с помощью WebAssembly. Производительность важна, поэтому мы измерили, как wp-now сравнивается с основанной на Docker локальной средой разработки wp-env.

В целом, wp-now намного быстрее для начала работы, и так же быстр для работы:

Несмотря на то, что запросы к страницам, которые мы тестировали, занимают примерно в два раза больше времени в среде wp-now, абсолютные различия находятся в диапазоне от 100 до 400 мс, что не должно существенно влиять на ежедневную работу разработчика.

Работает на WordPress Playground

wp-now существенно является приложением NodeJS с встроенным PHP-сервером, управляемым WordPress Playground.

Когда вы используете wp-now из каталога, мы создаем экземпляр php-wasm, загружаем выбранную версию WordPress и монтируем необходимые каталоги в виртуальную файловую систему (VFS). Затем мы инициируем сервер NodeJS express, который прослушивает и проксирует все запросы в php-wasm. В результате wp-now может легко войти в систему WordPress автоматически, активировать плагины и темы и автоматически настроить ваш сайт WordPress.

wp-now полагается на плагин SQLite Database Integration для своей базы данных и может также подключаться к существующей базе данных MySQL. Все файлы, специфичные для проекта, хранятся в вашей домашней директории в папке ~/.wp-now. Каталоги создаются по этому шаблону: ~/.wp-now/wp-content/${projectFolderName}-${pathHash}

Готов к участию в разработке

Вклад сообщества является бесценным в улучшении wp-now и WordPress Playground. Вы можете помочь и внести свой вклад, поделившись своими идеями, высказав свое мнение о том, какие функции наиболее полезны для вас, сообщив о проблемах или даже создав pull-запросы в репозиторий GitHub WordPress Playground. Мы движимы вашим отзывом — задавайте вопросы и делитесь своими идеями.

Вот некоторые будущие идеи, которые мы рассматриваем:

  • Создать тему/плагин шаблон с помощью wp-now create.
  • Автоматическое обнаружение изменений в файле и автоматическое обновление браузера.
  • wp-now playground для запуска сайта WordPress без каких-либо файлов.
  • Импортирование базы данных из другого сайта WordPress, находящегося на вашем компьютере или размещенного в другом месте.
  • Добавить функцию развертывания, чтобы помочь разработчикам развернуть на любом хостинге SSH/SFTP.
  • Поддержка пользовательских доменов.

Если вы хотите построить wp-now из исходного кода, вы можете следовать шагам внесения своего вклада. Вы также можете присоединиться к нам в канале #meta-playground на Making WordPress Slack.

Благодаря Даниэлю Баххуберу, Хавьеру Арсе и Войтеку Нарунику за их вклад в этот пост. (перевод https://developer.wordpress.com/2023/05/23/wp-now-launch-a-local-environment-in-seconds/)

Ответить

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