zinnector dev menjalankan WordPress sebenar pada mesin anda sendiri, menyajikan pemalam dan tema dalam projek anda, dengan versi PHP pilihan anda. Artikel ini menerangkan dua masa jalanan yang boleh digunakannya, cara memilih versi, perkara yang disajikan dari mana, dan tempat masa jalanan berada pada cakera — supaya perkara yang anda uji secara setempat adalah perkara yang anda gunakan.
Dua masa jalanan, dan sebab kedua-duanya adalah sebenar
Playground ialah lalai. WordPress Playground menyusun PHP ke WebAssembly dan menjalankannya di dalam Node, jadi komputer riba yang hanya dipasang Node boleh memulakan WordPress dalam beberapa saat. Sebarang PHP dari 5.2 hingga 8.5 tersedia. Ia mengandungi set sambungan PHP yang kecil (intl, redis, memcached seperti yang diukur pada binaan semasa), yang mencukupi untuk kebanyakan kerja pemalam dan tema.
Docker menjalankan kontena natif php-fpm dan MariaDB. Ia lebih perlahan, memerlukan daemon Docker dan kira-kira 1.2 GB imej, serta menyokong PHP 7.4 hingga 8.5 — tetapi ia menjalankan PHP natif dengan set sambungan penuh, termasuk imagick dan gd. Ia merupakan pilihan tepat apabila perkara yang perlu anda uji ialah sambungan yang tiada dalam binaan WebAssembly.
zinnector dev # playground
zinnector dev --runtime docker # native PHP + MariaDB
Docker tidak pernah dijadikan sandaran secara senyap. Pembangun yang menyangka mereka menggunakan WebAssembly sedangkan mereka sebenarnya menggunakan Docker telah diberikan jawapan yang salah oleh alat yang cuba membantu, jadi ia perlu diminta mengikut nama secara khusus.
Memilih versi PHP dan 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
Nilai lalai diperoleh daripada zinnector.json dalam projek — php, wordpress, runtime dan port — yang ditulis oleh zinnector new dan perlu anda lakukan komit, supaya semua orang dalam projek menjalankan versi yang sama. Bendera pada baris arahan mengatasi fail untuk larian tersebut.
Versi yang anda isytiharkan dan versi yang berjalan adalah dua fakta yang berbeza. zinnector dev --once memulakan masa jalanan, mencetak perkara yang sebenarnya dilaporkan — versi PHP, versi WordPress, sambungan yang dimuatkan — dan berhenti. zinnector check --probe menggunakan ukuran yang sama apabila ia membandingkan projek anda dengan slot pengehosan.
Perkara yang disajikan daripada projek anda
Masa jalanan melekapkan direktori wp-content/plugins, wp-content/themes dan wp-content/mu-plugins projek anda secara terus, jadi fail yang anda simpan akan terus aktif pada muat semula yang seterusnya. Direktori yang wujud tetapi tidak mengandungi kandungan sebenar sengaja tidak dilekapkan: direktori themes/ kosong yang dilekapkan pada tema masa jalanan itu sendiri akan menyebabkan WordPress tidak mempunyai sebarang tema langsung, yang mengakibatkan ralat 500 kosong dan bukannya laman anda. Itulah sebabnya perancah mengekalkan direktori kosong dengan .gitkeep dan sebab ia tidak membayangi apa-apa sehingga anda meletakkan tema di dalamnya.
Tempat masa jalanan berada
Masa jalanan WordPress dimuat turun pada penggunaan pertama dan bukannya disertakan bersama CLI — pakej yang membawa setiap binaan PHP adalah kira-kira 570 MB, dan pembangun yang hanya menyenaraikan laman tidak sepatutnya menanggung saiz tersebut. Ia disimpan dalam cache Zinnector® itu sendiri, ~/.cache/zinnector/runtimes/playground/<version> (atau di mana-mana sahaja ZINNECTOR_CACHE_DIR diarahkan), tidak pernah dalam projek anda, jadi ia tidak boleh berakhir dalam repositori anda atau dalam pepohon yang diukur oleh zinnector push. Muat turun dilakukan oleh npm anda sendiri, dijalankan sebagai node npm-cli.js — tidak pernah melalui shell.
Versi masa jalanan dipadankan dengan versi CLI, jadi dua pembangun dalam satu projek menjalankan binaan PHP yang sama. zinnector dev --reset-runtime membuang masa jalanan yang dipasang dan memasangnya semula, yang merupakan pembaikan bagi masa jalanan yang dipasang tetapi tidak mahu dimulakan.
Pada Node 26 atau lebih baharu
CLI itu sendiri berjalan pada mana-mana Node dari 24 ke atas. Walau bagaimanapun, modul natif masa jalanan menghantar binari prabina hanya untuk Node 24 dan 25 (setakat September 2026). Daripada menyusun apa-apa — yang pada Windows bermakna memasang Visual Studio — Zinnector® mengambil Node 24 untuk masa jalanan sahaja, kira-kira 30 MB, disahkan terhadap hasil tambah semak yang diterbitkan oleh nodejs.org, ke dalam cache yang sama. Gesaan pemasangan menyatakan demikian apabila ia digunakan. Tiada apa-apa tentang Node anda sendiri yang berubah.
Berkaitan