WebBlocks Forms

Gereksinimleri

Belgelenmiş paket sürümü: 0.7.0. WebBlocks CMS ^1.57.0; PHP >=8.3.

İhtiyacınız olan alanlarla kendi formlarınızı oluşturun ve gönderimleri kendiniz toplayın site.

WebBlocks CMS, sabit bir alan kümesiyle (ad, e-posta, e-posta) yerel bir contact_form bloğu gönderir. konu, mesaj. İyi çalışıyor ve bu eklenti onun yerini almıyor. Eklediği şey şu Block'un yapamayacağı şey: alanlarına site sahibinin karar vereceği bir form.

Kurulumu

Yapıyı oluşturun ve ardından süper yönetici olarak CMS'deki System → Plugins aracılığıyla yükleyin:

composer plugin:build

Yüklenen eklentiler varsayılan olarak devre dışıdır. Etkinleştirin ve ardından eklenti kurulum işlemini şu adresten çalıştırın: Tabloları oluşturmak için eklenti detay ekranı. Kurulum çalışana kadar eklentinin ekranlarında şunu söylüyor: Başarısız olmaktan ziyade Plugin migrations pending.

Kullanımı

  1. Formlar → Form ekle. Ona bir ad ve tanıtıcı verin. Tutamaç, bir bloğun depoladığı şeydir bu formun üzerine gelin; böylece daha sonra değiştirmek, onu yerleştirmiş olan tüm sayfaların bağlantısını keser.
  2. Yerleştirin. Form bloğunu bir sayfaya ekleyin ve formu seçin. Bu bloğun yalnızca ayar — alanlar, kopyalama ve teslimatın tümü formda yayınlanır, böylece aynı form yer alabilir beş sayfada ve kopya değişikliği bir kez gerçekleşir.
  3. Submissions. Ziyaretçilerin gönderdiği her şey Formlar → Gönderimler, filtrelenebilir altına ulaşır form ve duruma göre, form başına CSV olarak dışa aktarılabilir.
  4. Notification. Her form, bir gönderim geldiğinde size e-posta gönderir. Alıcıyı bırak boşsa Form Ayarları altında bu sitenin varsayılan ayarına geri döner, ardından sitenin Alıcıyla ve ardından çevreyle iletişime geçin; boş bir kutu bir çalışma ayarıdır, bir çalışma ortamı değil bir tanesi eksik.

Bunun ötesinde, alan başına: alanlara aynı sayfada sormak için alanlara aynı step numarasını verin veya Her seferinde bir sayfa sormak için bunları 1, 2, 3 olarak numaralandırın. Bu alanın ne zaman gösterileceğini ayarlayın yalnızca onu gösterecek şekilde ayarlayın aynı adımdaki başka bir cevap eşleştiğinde. Ekler için bir dosya yükleme alanı ekleyin. Ve form başına: gönderene bir yanıt, giden web kancaları ve aracılığıyla bir bülten aboneliği WebBlocks Campaigns.

Bildirim Not configured rapor ediyorsa, kurulumun gerçek bir giden postası yoktur: log, array ve null postaları gönderildiği gibi değil dürüstçe rapor edilir. Gönderimler saklanıyor Her iki durumda da — depolama ve dağıtım ayrı konulardır ve yanlış yapılandırılmış bir posta asla mesajın maliyeti size mal olur.

Koşullu alanlar

A alanı yalnızca aynı adımdaki başka bir yanıt eşleştiğinde gösterilebilir. Tarayıcı gizlenir ve ziyaretçi türleri olarak gösterilir, ancak bu kolaylık sağlar: sunucu karar verir. Bir alan koşul karşılanmadı, doğrulanmadı veya saklanmadı.

Her iki yarı da önemlidir. Birini doğrulamak, ziyaretçiye sayfada olmayan bir kutuyu doldurmasını söyler. sayfa. Birinin saklanması, kimsenin vermediği bir cevabın kaydedilmesine neden olur; hazırlanmış bir istek, herhangi bir giriş yaptığınızda gelen kutusu sanki verilmiş gibi okunur.

JavaScript kapalıyken hiçbir alan gizlenmez; bütün alanlar gösterilir ve hangi yanıtların dikkate alınacağını yine aynı sunucu tarafı kuralları belirler. Bu durumda ekranda daha fazla soru görünür; formun gönderilmesi engellenmez.

Komut dosyası CMS tarafından /cms/plugins/webblocks-forms/'de yayınlandı, bu yüzden bu sürümün ^1.57.0'ye ihtiyacı var.

Mevcut bir İletişim Formunu içe aktarma

Formlar → İletişim Formunu İçe Aktarın, mevcut sitedeki yerel İletişim Formu bloklarını listeler sayfalar. Birini içe aktarmak burada aynı dört alanla bir form oluşturur, ziyaretçiyi aynı şekilde etiketler gördüm ve bloğun başlığını, girişini, başarı mesajını ve her dilde onay metnini gördüm. bunlara sahipti — artı bildirim alıcısı.

Blok tam olarak olduğu gibi bırakılır ve çalışmaya devam eder ve mesajlar zaten İletişim'dedir Mesajlar orada kalıyor. Hazır olduğunuzda sayfadaki bloğu değiştirmek sizin sorumluluğunuzdadır. Hiçbir şey içe aktarma işlemi geri alınarak geri döndürülebilir, ancak bununla ilgili hiçbir şey yıkıcı da değildir: en kötüsü vaka sildiğiniz bir formdur.

A İçe aktarmanın değişmeden taşıyamayacağı birkaç şey var ve bunlar aktarıldığında ekranda da belirtiliyor. uygula:

  • Alıcısı olmayan bir blok, hiçbiri olmadan içe aktarılır, bu nedenle form, geri dönüşü devralmaya devam eder. Bugünün cevabını açık bir ortamda dondurmaktansa.
  • Bildirim, mevcut ve devre dışı bir eylem olarak içe aktarmaları kapattı.
  • Bir dilde eksik olan onay metni varsayılan dilden doldurulur. Yalnızca çekirdek ifadelerin bulunduğu izin kutusunu gösterdi, böylece o dildeki ziyaretçilere izin verilmedi hiç sorulmadı - yayınlamadan önce ifadeleri kontrol edin.
  • store submissions'nin kapatıldığı rapor edildi, buna uyulmadı. CMS her mesajı sakladı ne olursa olsun, bunu onurlandırmak bir hata ithal etmek olacaktır.

Saklama

Saklama form başınadır ve varsayılan olarak kapalıdır çünkü bir sitenin verilerinin sessizce silinmesi daha kötüdür onu tutmaktan çok. Bir pencere ayarlandığında ana bilgisayarın zamanlayıcısı şunu çalıştırır:

php artisan webblocks-forms:prune-submissions

AHiçbir şeyi silmeden ne olacağını görmek için --dry-run ekleyin.

İki gelen kutusu

AHem bu eklentiyi hem de yerel İletişim Formunu kullanan bir kurulumda okunacak iki yer vardır mesajlar: yerel blok için /webadmin/contact-messages ve Formlar → Gönderimler burada. Bu kasıtlı bir maliyettir. Bunun alternatifi ise çekirdek tabloya yazılan bir eklentidir. eklenti sınırının yasakladığı ve zaten uymayan kendi contact_messages'de sabit dört alanlı mesaj için sütunlar var ve şema koyacak yer yok anlık görüntü, bir dosya veya eylem başına teslim durumu.

Yüklemeler

Gönderim ekleri CMS ortam kitaplığına gitmez. Kütüphane her şeyi saklıyor ortak diskin başka bir şey istemesinin hiçbir yolu yoktur ve kullanım kontrolü bir eklentinin referansı - yani bir gönderime eklenen dosya kullanılmamış olarak raporlanır ve bir editör uyarı vermeden Medya ekranından siler. Her ikisi de site varlıkları için doğrudur ve bir ziyaretçinin belgesi için yanlış olduğundan yüklemeler, eklentinin kendi özel diskini kullanır; config/webblocks-forms.php. Ekler her zaman kısa ömürlü, imzalı bir bağlantı aracılığıyla indirilir bir ek olarak ve hiçbir zaman satır içi değil — satır içi olarak oluşturulan bir SVG veya HTML yüklemesi, komut dosyasını çalıştırır yöneticinin kendi kökeninde.