Zinnector®

WordPress barındırma için geliştirici CLI'sı

Zinnector® başka hiçbir şey yüklemeden, yalnızca Node kullanarak yerel olarak WordPress oluşturur; Docker veya MAMP gerekmez. Ardından, dağıtmak üzere olduğunuz barındırma alanı ile oluşturduğunuz yapıyı karşılaştırarak göndermeden önce nelerin uyuşmayacağını size bildirir. Bunu npm install -g zinnector komutuyla yükleyin. Ücretsizdir, MIT lisanslıdır ve buradaki diğer her şeyle aynı ortak API üzerine kurulmuştur.

Beş komut, ve ortadaki asıl mesele

Çoğu barındırma komut satırı arayüzü dağıtımla başlar. Zinnector® bundan önce başlar — siteyi sizinle birlikte kurar ve ardından çalışmanızı, üzerine göndermek üzere olduğunuz makineye göre kontrol eder. "Bilgisayarımda çalıştı" ile "sunucuda çalışıyor" arasındaki boşluk, öğleden sonraların harcandığı yerdir ve bu boşluk ölçülebilirdir.

Yeni zinnector

Hemen açılan bir site, eklenti veya blok tema oluşturun. Yer tutucu dosya yok, yapılacak iş (TODO) yok; eklenti etkinleşir ve tema var olduğu anda seçilebilir.

zinnector geliştirici

Docker ve PATH değişkeninizde PHP gerektirmeden, kendi eklenti ve temalarınızı çalıştıran, saniyeler içinde bilgisayarınızda gerçek bir WordPress. Üzerinde geliştirmeler yapmak için 5.2'den 8.5'e kadar dilediğiniz PHP sürümünü seçin.

zinnector kontrolü

Uçuştan önceki aşama. Oluşturduğunuz yapıyı dağıtacağınız yuva ile karşılaştırır ve yayına almadan önce her bir uyumsuzluğu ve yapılamayan her bir kontrolü adıyla belirtir.

zinnector gönderimi

Uçuştan önce commit'lerinizi gönderin, dağıtımı tetikleyin ve tamamlanana kadar izleyin. Başarısız olursa, derleme günlüğü yalnızca bir komut uzağınızdadır.

zinnector ai

Projenizi ve sitenizi bağlam olarak kullanarak asistana terminalden sorun. Platform üzerinde kendi hesabınız üzerinden çalıştığı için bilgisayarınızda hiçbir model anahtarı saklanmaz.

Hesap gerekmeden, iki dakikada çalışıp çalışmadığını test edin

Sırasıyla altı komut ve her birinde başarının nasıl olduğu. Buradaki her şey kendi makinenizde çalışır; bir barındırma yuvasına ulaştığınızda yalnızca bir API anahtarı gereklidir.

  1. Kur

    Node 24 veya daha yeni bir sürümde `npm install -g zinnector` komutunu çalıştırın. npm, EBADENGINE hatası verirse, Node sürümünüz 24'ten eskidir; nodejs.org adresinden güncel LTS sürümünü yükleyin ve yüklemeyi tekrar çalıştırın.

  2. Sürümü kontrol et

    zinnector --version, 0.1.2 gibi bir sürüm numarası yazdırır. 24'ten eski bir Node üzerinde, Node 24 veya daha yenisinin gerektiğini belirten bir mesaj yazdırır ve çıkar.

  3. Yardımı oku

    zinnector --help komutu, aşağıdaki her komutu tek satırlık bir amaç açıklamasıyla birlikte listeler. Her komut ayrıca kendi --help parametresini de destekler.

  4. Site iskeleti oluştur

    zinnector new my-site komutu, hemen başlayan bir proje oluşturur; bir zinnector.json dosyası, bir wp-content ağacı ve bir README dosyası — ve çalıştırılacak sonraki komutları ekrana yazdırır.

  5. Çalıştır

    cd my-site, ardından zinnector dev yazın. İlk çalıştırma, WordPress çalışma zamanını indirmek için bir kez sorar (yaklaşık 570 MB, CLI'nin kendi önbelleğinde saklanır, asla projenizde tutulmaz). Başarılı olduğunda “running at http://127.0.0.1:9400” şeklinde görünür.

  6. Bir tarayıcıda açın

    http://127.0.0.1:9400 yeni kurulmuş bir WordPress sitesidir; /wp-admin paneli zaten oturum açılmış olarak açar. wp-content/plugins dizinine bir eklenti atın ve sonraki sayfayı yenilemenizde orada olacaktır.

  7. Ardından, bir barındırma alanıyla

    zinnector login, zinnector link, zinnector check, zinnector push — oluşturduğunuz şeyi yuvaya karşı uçuş öncesi kontrolden geçirin, ardından dağıtın ve tamamlanmasını izleyin.

Ayrıntılı olarak ön kontrol

PHP 8.3 üzerinde inşa ettiniz. Yuva 8.1 çalıştırıyor. Site beyazlaşana kadar size hiçbir şey söylemez. Bu komutun var olma sebebi budur ve bu platformun sahibinin adıyla istediği komuttur. Zinnector® her iki ortamı da okur ve yan yana koyar — ardından, bir sebebiniz olabileceği için yine de dağıtmanıza izin verir.

PHP, dürüstçe derecelendirildi

Ana sürüm farkı, bir siteyi kesinlikle bozduğu için yüksek riskli olarak işaretlenir; küçük sürüm farkı ise daha düşük olarak işaretlenir. Her şeyi kritik olarak derecelendirmek, kullanıcılara sadece uyarıyı atlamayı öğretir.

Disk ve dosya sayısı, ayrı ayrı

Bir WordPress ağacı on binlerce küçük dosyadan oluşur ve bir site, disk sınırının oldukça altında kalmasına rağmen inode kotasını tüketebilir. Her ikisi de plana göre değil, alanda fiilen ne kadar kaldığına göre kontrol edilir.

“Kontrol edilemedi” kendi cevabıdır

Öznesini göremeyen bir denetim, denetlenmediğini bildirir, asla başarılı sayılmaz. Temiz bir çalışma, kaç şeyi doğrulayamadığını söyler; çünkü sahte bir her şey yolunda sinyali, kimsenin dönüp bir daha bakmadığı tek şeydir.

Uyarı verir, asla engellemez

Her bulgu --force ile geçersiz kılınabilir ve özet bunu belirtir. CI ortamında ise bunun yerine çıkış kodu bir kapı görevi görür; böylece bir insan kontrolü elinde tutarken bir boru hattı katı kurallı olabilir.

İki yerel çalışma zamanı, ikisi de gerçek

WordPress Playground varsayılan seçenektir: Node içinde çalışan, WebAssembly'ye derlenmiş PHP; böylece yalnızca Node kurulu olan bir dizüstü bilgisayar, sıfırdan çalışan bir WordPress'e bu cümleyi okumak için geçen sürede ulaşır.

Yerel bir PHP'ye — imagick gibi bir eklentiye, gerçek bir MySQL'e ihtiyacınız olduğunda — --runtime docker komutunu kullanın ve bunun yerine php-fpm ve MariaDB kapsayıcıları edinin. İkisi de aynı projedeki aynı dosyalara hizmet eder; dolayısıyla aralarında geçiş yapmak motordan başka hiçbir şeyi değiştirmez.

Panelde yaptığınız diğer her şey

Zinnector®, kontrol paneliyle aynı genel API üzerine inşa edilmiştir; dolayısıyla panelin yapabildiği her şeyi yapabilir ve her komut, özel bir uç nokta yerine OpenAPI belirtiminde belgelenmiş bir işlemdir.

Siteler ve dağıtımlar

Siteleri listeleyin, platformun bir site hakkında bildiği her şeyi okuyun, yeniden dağıtın ve dağıtım geçmişini ile derleme günlüklerini okuyun.

Alanlar, DNS ve e-posta

Etki alanlarını listeleyin, DNS kayıtlarını yazılmadan önce gösterilen kayıtla okuyun ve değiştirin, ayrıca e-posta servislerinizi okuyun.

PHP, kota, veritabanı ve günlükler

PHP sürümleri arasında geçiş yapın, planınızın sağladığı haklara karşı disk ve inode kullanımını okuyun, phpMyAdmin için tek kullanımlık bağlantılar alın ve erişim ile hata günlüklerini takip edin.

WP-CLI ve toplu işlemler

İzin verilen WP-CLI komutlarını bir site üzerinde çalıştırın ve önbellekleri temizleyin ya da tek tek site yerine tek bir çağrıyla tüm seçim genelinde kötü amaçlı yazılım taramaları başlatın.

--help komutunun listelediği her komut, tam olarak belirtildiği gibi

Eksiksiz liste, her satırda bir tane. Tam başvuru — her bayrak, çalıştırılabilir bir örnek ve her komutun ne yazdırdığı — doğrudan CLI'dan oluşturulur ve geliştirici belgelerinde ile bilgi bankasında yer alır; böylece yüklediğiniz araçla uyumsuzluk yaşayamaz.

Yeni zinnector

Hemen çalıştırabileceğiniz bir WordPress projesi oluşturun.

zinnector dev

Bu projeyi yerelde çalıştırın — Docker gerekmez.

zinnector girişi

Bir Zinn Digital® API anahtarı ile oturum açın.

zinnector oturumunu kapat

Kayıtlı bir API anahtarını unutun.

zinnector whoami

Bu CLI'ın kiminle kimlik doğruladığını gösterir.

zinnector siteleri

Bu anahtarın görebileceği siteleri listele.

zinnector durumu

Platformun tek bir site hakkında bildiği her şey.

zinnector paylaşımı

Bir geliştiriciye, bir tasarımcıya veya bir müşteriye; bir rolle ve bir gerekçeyle tek bir siteye erişim verin.

zinnector işbirlikçileri

Bir siteye kimlerin erişim iznine sahip olduğunu, rollerini ve daveti henüz kabul edip etmediklerini görün.

zinnector paylaşımını kaldır

E-posta veya izin kimliği yoluyla bir kişinin erişimini geri alın.

zinnector davetiyeleri

Sizi bekleyen davetiyeleri inceleyin ve birini kabul edin.

zinnector bağlantısı

Bu projeyi bir barındırma alanına yönlendirin (ve deposunu bağlayın).

zinnector çekme

Barındırılan bir sitenin dosyalarını yerel geliştirme için bu projeye aktarın ve yeniden eşitlemek için tekrar çalıştırın. Site kendi deposuyla eşitlendiğinde hızlı yolu kullanır, aksi takdirde en son yedeklemeden çalışır.

zinnector'ı klonla

Barındırılan bir siteden tek adımda yerel bir proje oluşturun: deposunu klonlayın veya dosyalarını çekin, proje dosyasını yazın ve sizi zinnector dev komutunu çalıştırmaya hazır hale getirin.

zinnector kontrolü

Bu projeyi, üzerine dağıtım yapacağınız slot ile karşılaştırın.

zinnector push

Uçuştan önce hazırlık yapın, commit'lerinizi gönderin ve yayınlayın.

zinnector dağıtımı

Push işlemi gerçekleştirmeden, platformun halihazırda sahip olduğu öğeleri yeniden dağıtın.

zinnector dağıtıyor

Bir sitenin dağıtım geçmişi.

zinnector php

Bir sitenin PHP sürümünü gösterin veya değiştirin.

zinnector kotası

Planın tanıttığı sınırlara karşı disk, dosya ve veritabanı kullanımı.

zinnector veritabanı

Veritabanı boyutu, phpMyAdmin ve dosya yöneticisine yönelik tek kullanımlık bağlantılar.

zinnector günlükleri

Bir sitenin erişim ve hata günlüklerini takip edin.

zinnector wp

Bir sitede izin verilen listesinde yer alan bir WP-CLI komutu çalıştırın.

zinnector yedekleme

Site yedeklemelerini listeleyin ve alın. Alt komutlar: list, now.

zinnector alan adları

Bu anahtarın görebileceği etki alanlarını listeleyin.

zinnector dns

DNS kayıtlarını okuyun ve değiştirin. Alt komutlar: list, add, rm.

zinnector mail

E-posta hizmetlerini listele.

zinnector toplu

Birçok site üzerinde tek bir işlem çalıştırın (cache_purge, malware_scan, sitemap, block_ip).

zinnector ai

Bu projeyi bağlam olarak alarak Zinn Digital® asistanına sorun.

Sorular

Kullanmak için Zinn Digital® müşterisi olmam gerekiyor mu?

Hayır. `zinnector new` ve `zinnector dev` komutları hiçbir hesap gerektirmez; bir eklenti, tema veya tüm bir site taslak oluşturup yerel olarak ücretsiz ve sonsuza kadar çalıştırabilirsiniz. Bir API anahtarı yalnızca barındırma alanınızla iletişim kuran komutlar için gereklidir.

Docker gerekiyor mu?

Varsayılan çalışma zamanı için değil. WordPress Playground, PHP'yi WebAssembly'ye derler ve Node içinde çalışır; bu sayede `zinnector dev`, başka hiçbir şey kurulu olmadan saniyeler içinde gerçek bir WordPress başlatır. Imagick veya ionCube gibi bir eklentiyi test etmek için yerel bir PHP'ye ihtiyacınız varsa, `--runtime docker` bunun yerine size php-fpm ve MariaDB kapsayıcıları sağlar. Her ikisi de desteklenmektedir; hiçbiri yedek seçenek değildir.

Ön kontrol aslında neleri karşılaştırır?

Yerel PHP sürümünüz ile alanın sürümü, alanın üzerinde oluşturduğunuz sürüme geçip geçemeyeceği, alanın PHP'sinin destek süresinin dolup dolmadığı ve makinenin bunu gerçekten uygulayıp uygulamadığı, projenizin boyutunun ve dosya sayısının kalan disk ve inode kapasitesine oranı, her iki taraftaki WordPress sürümleri, alanın sağlama işlemini tamamlayıp tamamlamadığı ve dağıtım için bir git deposunun bağlı olup olmadığını kontrol eder. Kontrol edemediği her şey, başarılı sayılmak yerine kontrol edilmedi olarak bildirilir.

Dağıtım yapmamı engelleyebilir mi?

Hayır, ve bu bilinçli bir tercihtir. Pre-flight uyarır ve geçmenize izin verir; `--force` ise herhangi bir bulguyu atlayarak dağıtım yapar. Kendi siteniz hakkında bir denetçinin bilmediği şeyleri biliyorsunuz ve dağıtım yapmayı reddeden bir araç, kullanıcıların kaldırdığı bir aractır.

API anahtarım güvende mi?

Anahtar asla komut satırından okunmaz — yalnızca bir komut isteminden veya yönlendirilmiş standart girdiden (stdin) okunur — bu nedenle kabuk (shell) geçmişinizde veya bir işlem listesinde yer alamaz. Dosya modu 600 olan kendi yapılandırma dizininizde saklanır ve Zinnector® her yazma işleminde bu izinleri yeniden uygular.

CI'da kullanabilir miyim?

Evet. `ZINNECTOR_TOKEN` değişkenini ayarlayın ve her komut `--json` parametresini kabul eder. İnsan tarafından okunabilir çıktı stderr kanalına, veri ise stdout kanalına gider; böylece boru hatları (pipes) temiz kalır. `zinnector check` bir şey bulduğunda sıfırdan farklı bir çıkış kodu döndürür; bu nedenle bir boru hattı kapısı olarak çalışır ve ayrıca `--strict`, bir karşılaştırma yapılamadığında da başarısız olur.

Kurun ve önümüzdeki bir dakika içinde bir site çalıştırın

`npm install -g zinnector` komutunu çalıştırın veya `npx zinnector new my-site` ile bir kez deneyin. Ücretsiz, MIT lisanslı ve genel API üzerine kuruludur. Bir proje iskelesi oluşturun, Docker olmadan yerel olarak çalıştırın ve dağıtmadan önce ön kontrolden geçirin.

Belgeleri oku