zinnector dev ekzekuton një WordPress të vërtetë në kompjuterin tuaj, duke shërbyer shtojcat dhe temat në projektin tuaj, me një version PHP që zgjidhni ju. Ky artikull shpjegon dy mjediset e ekzekutimit (runtimes) që mund të përdorë, si të zgjidhni versionet, çfarë shërbehet dhe nga ku, si dhe ku ndodhet mjedisi i ekzekutimit në disk — në mënyrë që ajo që testoni lokalisht të jetë ajo që vendosni në prodhim.
Dy mjediset e ekzekutimit, dhe pse të dy janë të vërtetë
Playground është zgjedhja e paracaktuar. WordPress Playground e përpilon PHP-në në WebAssembly dhe e ekzekuton brenda Node-it, kështu që një laptop pa asgjë tjetër të instaluar përveç Node-it e nis një WordPress në pak sekonda. Çdo version PHP nga 5.2 deri në 8.5 është i disponueshëm. Ai përmban një grup të vogël shtesash të PHP-së (intl, redis, memcached sipas matjeve në versionin aktual), gjë që është e mjaftueshme për shumicën e punëve me shtojca dhe tema.
Docker ekzekuton kontejnerë vendas të php-fpm dhe MariaDB. Është më i ngadaltë, kërkon një shërbim Docker daemon dhe rreth 1.2 GB imazhe, si dhe mbështet versionet PHP nga 7.4 deri në 8.5 — por ai ekzekuton një PHP vendase me grupin e plotë të shtesave, përfshirë imagick dhe gd. Është zgjidhja e duhur kur ajo që ju nevojitet të testoni është një shtesë që versioni WebAssembly nuk e përmban.
zinnector dev # playground
zinnector dev --runtime docker # PHP vendase + MariaDB
Kalimi në Docker nuk bëhet kurrë në heshtje. Një zhvillues që mendon se po përdor WebAssembly dhe në fakt po përdor Docker, ka marrë përgjigjen e gabuar nga një mjet që përpiqet të ndihmojë, prandaj ai duhet të kërkohet shprehimisht me emër.
Zgjedhja e versioneve të PHP-së dhe WordPress-it
zinnector dev --php 8.1 --wp 6.7 # zhvilloni për një çift specifik
zinnector dev --port 9401 # kur porta 9400 është e zënë
zinnector dev --no-login # mos u identifikoni automatikisht në wp-admin
zinnector dev --verbose # shfaqni vetë të dhënat e mjedisit të ekzekutimit
Vlerat e paracaktuara vijnë nga zinnector.json në projekt — php, wordpress, runtime dhe port — të cilat shkruhen nga zinnector new dhe të cilat duhet t'i kryeni (commit), në mënyrë që të gjithë në projekt të ekzekutojnë të njëjtat versione. Një flamur (flag) në rreshtin e komandës ka përparësi mbi skedarin për atë ekzekutim.
Versioni që deklaroni dhe versioni që ekzekutohet janë fakte të ndryshme. zinnector dev --once nis mjedisin e ekzekutimit, printon atë që raporton realisht — versionin e PHP-së, versionin e WordPress-it, shtesat e ngarkuara — dhe ndalon. zinnector check --probe përdor të njëjtën matje kur krahason projektin tuaj me një hapësirë hostimi.
Çfarë shërbehet nga projekti juaj
Mjedisi i ekzekutimit monton drejtpërdrejt drejtoritë e projektit tuaj wp-content/plugins, wp-content/themes dhe wp-content/mu-plugins, kështu që një skedar që ruani është menjëherë aktiv në ringarkimin e radhës. Drejtoritë që ekzistojnë, por nuk përmbajnë përmbajtje reale, me vetëdije nuk montohen: një drejtori boshe themes/ e montuar mbi vetë temat e mjedisit të ekzekutimit do ta linte WordPress-in pa asnjë temë, gjë që shkakton një gabim të zbrazët 500 dhe jo faqen tuaj. Kjo është arsyeja pse struktura bazë mban drejtori boshe me një skedar .gitkeep dhe pse ato nuk mbivendosen mbi asgjë derisa të vendosni një temë në to.
Ku ndodhet mjedisi i ekzekutimit
Mjedisi i ekzekutimit të WordPress-it shkarkohet gjatë përdorimit të parë në vend që të dërgohet me CLI-në — paketa që përmban çdo version të PHP-së është rreth 570 MB, dhe një zhvillues që vetëm liston faqet nuk duhet të ngarkohet me këtë shkarkim. Ai ruhet në memorien e fshehtë (cache) të vetë Zinnector®-it, ~/.cache/zinnector/runtimes/playground/<version> (ose kudo ku tregon ZINNECTOR_CACHE_DIR), asnjëherë në projektin tuaj, kështu që nuk mund të përfundojë në depon tuaj (repository) apo në strukturën që mat zinnector push. Shkarkimi kryhet nga vetë npm-ja juaj, e ekzekutuar si node npm-cli.js — asnjëherë përmes një shell-i.
Versioni i mjedisit të ekzekutimit është i lidhur ngushtë me versionin e CLI-së, në mënyrë që dy zhvillues në një projekt të ekzekutojnë të njëjtat versione të PHP-së. zinnector dev --reset-runtime fshin mjedisin e instaluar të ekzekutimit dhe e instalon atë përsëri, gjë që është zgjidhja për një mjedis ekzekutimi që është instaluar, por nuk niset.
Në Node 26 ose më të ri
Vetë CLI-ja ekzekutohet në çdo Node nga versioni 24 e lart. Megjithatë, moduli vendas i mjedisit të ekzekutimit ofron skedarë binarë të para-ndërtuar vetëm për Node 24 dhe 25 (që prej shtatorit 2026). Në vend që të përpilohet ndonjë gjë — gjë që në Windows nënkupton instalimin e Visual Studio — Zinnector® shkarkon në të njëjtën memorie të fshehtë një version Node 24 vetëm për mjedisin e ekzekutimit, rreth 30 MB, të verifikuar sipas shumave të kontrollit (checksums) që publikon nodejs.org. Njoftimi i instalimit e specifikon këtë kur zbatohet. Asgjë nga versioni juaj i Node-it nuk ndryshon.
Të ngjashme