База знань

Локальна розробка за допомогою zinnector dev

Як zinnector dev запускає справжній WordPress на вашому власному комп'ютері: два середовища виконання (WebAssembly без Docker або нативний PHP у Docker), вибір версії PHP та WordPress, що надається з вашого проєкту, де зберігається середовище виконання розміром 570 МБ і що відбувається на Node 26.

zinnector dev запускає справжній WordPress на вашому власному комп'ютері, надаючи плагіни та теми з вашого проєкту, із вибраною вами версією PHP. У цій статті пояснюється, які два середовища виконання він може використовувати, як вибирати версії, що звідки надається та де середовище виконання зберігається на диску — щоб те, що ви тестуєте локально, відповідало тому, що ви розгортаєте.

Два середовища виконання та чому обидва є справжніми

Playground використовується за замовчуванням. WordPress Playground компілює PHP у WebAssembly та запускає його всередині Node, тому ноутбук, на якому не встановлено нічого, крім Node, завантажує WordPress за лічені секунди. Доступна будь-яка версія PHP від 5.2 до 8.5. Воно містить невеликий набір розширень PHP (intl, redis, memcached, за вимірюваннями поточної збірки), чого достатньо для більшості завдань із плагінами та темами.

Docker запускає нативні контейнери php-fpm і MariaDB. Воно працює повільніше, потребує демона Docker і близько 1,2 ГБ образів, а також підтримує PHP від 7.4 до 8.5 — проте воно запускає нативний PHP із повним набором розширень, включно з imagick і gd. Це надійне рішення, коли вам потрібно протестувати розширення, якого немає в збірці WebAssembly.

zinnector dev                       # playground
zinnector dev --runtime docker      # native PHP + MariaDB

Перехід на Docker ніколи не відбувається непомітно. Розробник, який вважає, що працює на WebAssembly, а насправді використовує Docker, отримує хибний результат від інструмента, який намагався допомогти, тому його потрібно запитувати явно.

Вибір версій PHP і WordPress

zinnector dev --php 8.1 --wp 6.7    # develop against a specific pair
zinnector dev --port 9401           # when 9400 is taken
zinnector dev --no-login            # do not sign in to wp-admin automatically
zinnector dev --verbose             # show the runtime's own output

Значення за замовчуванням беруться з файлу zinnector.json у проєкті — php, wordpress, runtime і port — який створює команда zinnector new і який вам слід зафіксувати в системі контролю версій, щоб усі учасники проєкту запускали однакові версії. Прапорець у командному рядку має пріоритет над файлом для конкретного запуску.

Версія, яку ви оголошуєте, і версія, яка працює, — це різні речі. Команда zinnector dev --once завантажує середовище виконання, виводить те, про що воно фактично повідомляє — версію PHP, версію WordPress, завантажені розширення — і зупиняється. Команда zinnector check --probe використовує ті самі вимірювання, коли порівнює ваш проєкт із хостинг-слотом.

Що надається з вашого проєкту

Середовище виконання монтує каталоги вашого проєкту wp-content/plugins, wp-content/themes і wp-content/mu-plugins безпосередньо, тому збережений вами файл одразу доступний після наступного перезавантаження. Каталоги, які існують, але не містять реального вмісту, навмисно не монтуються: порожній каталог themes/, змонтований поверх власних тем середовища виконання, залишив би WordPress взагалі без теми, що призведе до порожньої помилки 500 замість вашого сайту. Ось чому шаблон зберігає порожні каталоги за допомогою .gitkeep і чому вони нічого не перекривають, доки ви не розмістите в них тему.

Де зберігається середовище виконання

Середовище виконання WordPress завантажується під час першого використання, а не постачається разом із CLI — пакет, який містить усі збірки PHP, важить близько 570 МБ, і розробник, який лише переглядає список сайтів, не повинен витрачати на це ресурси. Воно зберігається у власному кеші Zinnector®, ~/.cache/zinnector/runtimes/playground/<version> (або там, куди вказує ZINNECTOR_CACHE_DIR), і ніколи не потрапляє у ваш проєкт, тому воно не опиниться у вашому репозиторії чи в дереві файлів, яке аналізує zinnector push. Завантаження виконується вашим власним npm шляхом запуску node npm-cli.js — ніколи через командну оболонку.

Версія середовища виконання прив'язана до версії CLI, тому двоє розробників в одному проєкті запускають однакові збірки PHP. Команда zinnector dev --reset-runtime видаляє встановлене середовище виконання та встановлює його знову, що є вирішенням проблеми, коли середовище виконання встановилося, але не запускається.

На Node 26 або новіших версіях

Сам CLI працює на будь-якій версії Node від 24 і вище. Проте нативний модуль середовища виконання постачає попередньо скомпільовані бінарні файли лише для Node 24 і 25 (станом на вересень 2026 року). Замість компіляції будь-чого — що на Windows означає встановлення Visual Studio — Zinnector® завантажує Node 24 лише для середовища виконання (близько 30 МБ), перевірений за контрольними сумами, які публікує nodejs.org, у той самий кеш. Запит під час встановлення повідомляє про це, коли це застосовується. У вашому власному Node нічого не змінюється.

Пов'язані матеріали

Уся документація для розробників →

Останнє з блогу

Що ми писали про хостинг, SEO та роботу сайтів у великих масштабах.

SEO та лінкбілдінг із рівня хостингу: Погляд оператора 2026 року

Як хостинг впливає на індексацію та передачу ваги посилань (link equity) у 2026 році: підтримка сторінок у пошуковому індексі, перевірка старих доменів перед створенням сайтів, лінкбілдинг без слідів (footprint) та відвертий погляд на те, що інфраструктура може і чого не може зробити для SEO.

Читати допис →

Як зробити WordPress швидким та безпечним: контрольний список оптимізації та плагінів

Практичний контрольний список для швидкого та безпечного WordPress: кешування на рівні сервера, об'єктний кеш для кожного сайту, кілька дійсно вартих плагінів, підтримання стека в актуальному стані та сторінки WooCommerce, які в жодному разі не можна кешувати.

Читати допис →

Як вибрати керований вебхостинг у 2026 році: Посібник для покупця

Що насправді відрізняє якісний керований хостинг від дешевого сервера з панеллю керування — міграції, резервні копії, ізоляція, справжнє кешування та чесне масштабування — і як оцінити його, перш ніж брати на себе зобов'язання.

Читати допис →

Читати блог →

Усе ще потрібна допомога?

Підтримка включена до кожного тарифу, служба працює 24 годин на добу, і ви можете писати нам будь-якою з наших 58 мов — ми відповідаємо вашою.

Звернутися до служби підтримки → Усі статті →