Адам Зелински, спонсируемый Automattic, сегодня опубликовал демоверсию WordPress, работающего в браузере без PHP-сервера. Это достигается с помощью WebAssembly (WASM), формата виртуальной машины на основе стека, который позволяет развертывать в Интернете клиентские и серверные приложения, и Emscripten , набор инструментов компилятора с открытым исходным кодом для WebAssembly. Он еще не стабилен, но концепция интригует, так как открывает мир потенциальных вариантов использования.
Проект доступен на GitHub , и Зелински кратко объяснил, как он работает:
- PHP скомпилирован в WASM с помощью Emscripten
- WordPress упакован в пакет данных
- Сервисный работник перехватывает HTTP-запросы и перенаправляет их в WordPress.
В проекте используется плагин wp-db-sqlite для запуска WordPress с SQLite, поскольку WASM не поддерживает MySQL.
Зелински подробно описал некоторые возможные приложения для запуска WordPress в браузере, которые, по его словам, могут «преобразовать обучение, участие и использование WordPress:»
- создание редактируемых образцов кода справочника WordPress ( ранняя предварительная версия )
- предоставление IDE в браузере для помощи новым участникам без необходимости настраивать локальную среду разработки ( предварительный просмотр )
- создание IDE в браузере для тестирования кода на разных версиях WordPress, PHP и Gutenberg
- масштабирование WordPress за счет запуска множества крошечных автономных экземпляров WASM непосредственно на пограничных серверах.
- встраивание демонстраций плагина, шаблона или темы (пример: wpreadme.com )
- импорт существующего веб-сайта WordPress в среду выполнения WASM для создания тестового веб-сайта
Прототипы находятся на очень ранней стадии и прямо сейчас имеют несколько ограничений. Редактор блоков работает, но не работает редактор сайта, а сайты в браузере не могут связываться с WordPress.org для загрузки плагинов и тем.
Зелински стремится нанять участников, чтобы помочь воплотить это видение и воплотить его в жизнь. Это довольно сложная задача, но участники и разработчики могут получить огромную выгоду от возможности мгновенно запустить IDE для WordPress в браузере.
«Раньше изучение WordPress и написание кода были разделены», — сказал Зелински об использовании Stackblitz для создания более интерактивных документов. «Теперь они могут быть одним и тем же. WebContainers + WebAssembly WordPress — от фрагментов исполняемого кода до новых, стройных форматов документов — меняет правила игры в сфере образования».
Для получения более подробной технической информации о том, как это работает, ознакомьтесь с сообщением Zielinski и перейдите к различным демонстрациям. Репозиторий проекта включает предварительно созданную демонстрацию, которую любой может запустить с дополнительными инструкциями по самостоятельному созданию сборки.