Публичное создание студии: как совместная работа с открытым исходным кодом улучшает качество студии
Как приложение Studio связано с другими проектами с открытым исходным кодом и как совместный вклад приносит взаимную пользу всем.
Настало время для третьей части нашей серии “Создание студии на публике”! В сегодняшнем посте мы рассмотрим, как это связано с другими проектами с открытым исходным кодом, уделив особое внимание ключевым отношениям с . Мы также рассмотрим преимущества и проблемы этих симбиотических отношений, показав, как оба проекта извлекают взаимную выгоду из улучшений и исправлений ошибок.
Если вы следите за новостями, обязательно ознакомьтесь с предыдущими публикациями:
- .
Напомним, что Studio – это наше бесплатное приложение для разработки на WordPress с открытым исходным кодом.
Как Studio подключается к другим проектам с открытым исходным кодом
Studio использует различные проекты с открытым исходным кодом, основным из которых является локальный сервер WordPress, который обрабатывает все, от запуска PHP-кода до обслуживания статических файлов и управления базой данных. Это позволяет разработчикам тестировать сайты, плагины и темы WordPress в локальной изолированной среде.
WordPress Playground использует интерпретатор PHP для компиляции в WebAssembly, что позволяет запускать PHP в браузере и на других платформах, что является значительным шагом вперед в разработке WordPress.
В рамках WordPress Playground Studio также использует другие инструменты с открытым исходным кодом, такие как .
Сама Studio имеет открытый исходный код, что означает, что кодовая база доступна для просмотра, внесения вклада и разветвления сообществом. Такая открытость способствует сотрудничеству, поощряет инновации и позволяет быстро выявлять и решать проблемы.
Благодаря открытому исходному коду Studio и проектам, которые она использует, таким как WordPress Playground, мы не блокируемся из-за отсутствия или нежелательного поведения наших библиотек, но вместо этого можем помочь выявить проблемы или возможности для улучшения в этих проектах и внести необходимые исправления и улучшения. Вместо того, чтобы искать обходные пути, мы можем напрямую повысить производительность и возможности Studio, исправляя существующие проблемы.
Это создает эффективный цикл улучшений, демонстрируя, как совместная работа с открытым исходным кодом стимулирует инновации и помогает решать сложные задачи.
Проблемы, с которыми мы столкнулись при работе с WordPress Playground
WordPress Playground – мощный инструмент, но поскольку он позволяет WordPress работать в необычной среде – в браузере, а не на сервере, – некоторые вещи работают не так, как ожидают разработчики. Хотя использование его в power Studio позволяет нам добиться всех положительных результатов, таких как быстрая настройка, нам также пришлось преодолеть некоторые трудности:
- Кроссплатформенная совместимость: Обеспечение бесперебойной работы WordPress Playground в различных операционных системах (Windows, macOS, Linux) и различных браузерах требует тщательного тестирования и тонкой настройки.
- Производительность: Управление несколькими ресурсами (интерпретатором PHP, сайтом WordPress, базой данных и файловой системой) при запуске нескольких сайтов в Studio может привести к снижению производительности. Вы можете узнать об этом больше .
- Совместимость плагинов и тем. Несмотря на то, что WordPress Playground создает полноценную среду для работы сайтов, некоторые плагины и темы основаны на расширениях, которые по умолчанию не включены в WordPress Playground. Часто требуется внести изменения в поддержку различных плагинов и тем.
- Обработка баз данных: WordPress Playground использует базу данных SQLite вместо MySQL, что коренным образом меняет принцип работы WordPress. Этот сдвиг требует адаптации к запросам к базе данных и совместимости с плагинами и темами.
Эти сложности иногда приводят к несовместимости, ошибкам или проблемам с производительностью. Однако мы считаем, что преимущества WordPress Playground намного перевешивают проблемы, и мы стремимся решить их, внося свой вклад в проект Playground. Таким образом, не только Studio работает лучше, но и все, кто использует Playground, получают больше удовольствия.
В свою очередь, Studio также выигрывает от вклада других пользователей Playground.
Наш недавний вклад в WordPress Playground и другие проекты с открытым исходным кодом
В рамках нашего вклада в приложение Studio мы недавно сосредоточились на улучшении совместимости плагинов, тем и рабочих процессов на сайтах. Ниже приведены некоторые из исправлений, которые мы внесли в проекты.
Совместимость с базами данных MySQL
С помощью a мы помогли улучшить совместимость сайтов, подключающихся к базам данных MySQL, что сделало Studio более гибкой в работе с различными конфигурациями сайтов и расширило ее возможности для поддержки более разнообразных настроек WordPress.
Поддержка символических ссылок
Мы представили два вклада (, ), чтобы добавить важную поддержку для обработки символических ссылок на сайтах, значительно улучшив совместимость и гибкость файловой системы. Это усовершенствование значительно улучшает рабочий процесс разработки, позволяя разработчикам поддерживать более чистую структуру проектов и более эффективно управлять своими темами и плагинами в нескольких проектах. Это также упрощает управление версиями и совместную работу, позволяя создавать ссылки на внешние репозитории без дублирования файлов.
Исправлена ошибка загрузки мультимедиа для Windows
устранены критические проблемы с загрузкой мультимедиа на сайты при использовании Windows-версии приложения Studio, что обеспечивает более удобную работу пользователей Windows. Этот вклад позволил устранить значительный пробел в функциональности, гарантировав, что Studio обеспечит согласованное и надежное управление мультимедиа во всех поддерживаемых операционных системах.
Обновление ядра и расширений WordPress
исправлен процесс обновления версий WordPress, плагинов и тем. Это усовершенствование упростило процесс обновления в Studio, позволив разработчикам легко поддерживать свои установки WordPress и связанные с ними расширения.
Совместимость с WooCommerce
Это значительно улучшило совместимость с плагином WooCommerce, расширив возможности Studio для разработки электронной коммерции. Этот вклад касался конкретных запросов к базе данных и операций, которые были несовместимы с базой данных SQLite, используемой на сайтах, созданных с помощью Studio. Интеграционный плагин SQLite включает в себя различные сложности, позволяющие обеспечить плавную интеграцию с экосистемой WordPress, и этот вклад затрагивает одну из основных проблем использования WooCommerce в локальных средах WordPress.
Совместимость с расширениями cURL
Мы добавили возможность использования PHP в Playground, что оказалось необходимым для значительного количества плагинов для внешних вызовов API или удаленной выборки данных. Это расширяет спектр плагинов, которые можно эффективно использовать в Studio и WordPress Playground.
Совместимость при создании файлов
Улучшена совместимость с плагинами, которые создают файлы, используя umask для установки прав доступа к файлам, что улучшает работу файловой системы. Это было крайне важно для плагинов, которые генерируют кэши, создают пользовательские файлы CSS или JavaScript или управляют загрузками нестандартными способами. Решив эти проблемы с работой с файлами, мы обеспечили правильную работу более широкого спектра плагинов в Studio, предоставляя более точное представление о том, как сайты будут вести себя в рабочей среде.
Все приведенные выше примеры демонстрируют, как совместный вклад помогает Studio развиваться, делая ее более совместимой с широким спектром плагинов и тем в экосистеме WordPress.
Как внести свой вклад
Если этот пост вдохновил вас на участие в проектах с открытым исходным кодом (), вот как вы можете принять участие в некоторых из наших любимых проектов с открытым исходным кодом:
Вместе мы сможем создать невероятные инструменты для сообщества! 🙂
Готовы к строительству?
Если эта информация заинтересовала вас или вы разрабатываете сайты на WordPress, то . Это бесплатно и легко интегрируется в ваш рабочий процесс разработки.
После загрузки Studio (бесплатной или платной) вы сможете разблокировать такие функции, как демонстрационные сайты.