Veri tablosundan seçenekler
3 dk okuma
Bir bağlantı, başka bir form eklentisinin seçim alanının seçeneklerini bir veri tablosundan doldurabilir; böylece liste (şehirler, ürünler, şubeler, öğretmenler) tek yerde düzenlenir ve formu düzenlemeden her formda güncel kalır.
Bu sayfa Diğer form eklentileriyle bağlantılar bölümüne aittir.
Ne yapar
Bağlanan her alan için form eklentisi, tablonun satırlarını alanın seçenekleri olarak gösterir:
- ziyaretçinin gördüğü etiket bir sütundan, gönderilen değer başka bir sütundan (ya da aynı sütundan) gelir;
- seçenekler form gösterilirken ve gönderilirken yeniden okunur; böylece her iki taraf da aynı listeyi görür;
- bir ziyaretçi listede olmayan bir değer gönderirse form eklentisi bunu şu mesajla reddeder: Choose one of the listed options. (isteğe bağlı, bkz. Only accept listed values).
Contact Form 7, Gravity Forms, WPForms ve Fluent Forms'ta açılır liste (select), radyo ve onay kutusu alanları için çalışır. Contact Form 7'de değerinde dikey çizgi | bulunan bir seçenek dışarıda bırakılır (CF7 label|value çiftlerini okur).
Bir bağlantı yalnızca bunu yapabilir: Store submissions in a data table seçeneğini kapatıp seçenekleri ekleyin.
Kurulum
- Sütunları herkese açık yapın: tabloyu açın, Settings sekmesinde etiket ve değer sütunlarını Public columns altında işaretleyin. Yalnızca herkese açık sütunlar kullanılabilir (bkz. Veri tablosu oluşturma).
- Bağlantıyı açın (veya Add connection düğmesine tıklayın) ve eklentiyi ile formu seçin.
- Şurada: Fill choices from data tables ("The options of a dropdown, radio or checkbox field are read from a data table, so they stay current without editing the form.") Add choice field düğmesine tıklayın. Bağlantı başına, alan başına bir tane olmak üzere en fazla 20 bağlama ekleyebilirsiniz.
- Her bağlama için şunları ayarlayın:
Ayar | Anlamı |
|---|---|
Form field | Doldurulacak açılır liste, radyo veya onay kutusu alanı. |
Data table | Okunacak tablo. |
Label column | Ziyaretçiye gösterilen sütun. Herkese açık olmalıdır. |
Value column | Gönderilen sütun. Varsayılan olarak Same as label. Herkese açık olmalıdır. |
Filter | İsteğe bağlı. |
Order | A-Z veya Z-A, etiket sütununa göre. |
Limit | Kaç seçenek olacağı, 1 ile 500 arasında (varsayılan 100). |
Only accept listed values | Varsayılan olarak açıktır: "Submissions with a value that is not in the list are refused." |
- Bir bağlamayı kaldırmak için Remove düğmesine tıklayın. Ardından Create connection / Save changes düğmesine tıklayın.
Bir sütun herkese açık değilse satırda "This column is not public. Make it public in Data Tables or choose another." yazar ve Make columns public in Data Tables bağlantısı gösterilir. Herkese açık sütunu olmayan bir tabloda "This data table has no public columns yet." yazar.
Kaydederken çıkan mesajlar: "Choices of field "city": choose an existing data table." ve "Choices of field "city": label and value must be public columns (Data Tables › Settings)." ve "Choices of field "city": every filter needs a public column and a known operator."
Bilmeniz gereken davranışlar
- Seçenekler değere göre benzersizdir (ilk satır kazanır), boş değerler atlanır, etiketlerden HTML ayıklanır ve en fazla 500 seçenek okunur.
- Liste en fazla bir saat önbelleğe alınır ve tablo her değiştiğinde (düzenleme, içe aktarma, eşitleme) hemen yenilenir.
- Kaynak kullanılamazsa (planda veri tablosu yoksa, tablo silindiyse, bir etiket veya değer sütunu artık herkese açık değilse ya da bir filtre artık herkese açık olmayan bir sütunu adlandırıyorsa) liste oluşmaz: form, form eklentisinde yazdığınız seçenekleri korur ve hiçbir şey reddedilmez. Bu, bir filtrenin listeyi sessizce genişletmesini de önler.
- Satırlar herkese açık sütunların ötesinde asla gösterilmez; bu yüzden form eklentisi tablonun özel verilerini hiçbir zaman görmez.
- "Only accept listed values" kontrolü form eklentisinin kendi doğrulamasıyla çalışır, böylece ziyaretçi sıradan bir alan hatası görür.
- Bir bağlantı tabloyu okurken tablo silinemez.
Örnek
Sütunları branches tablosunda Name (name), Code (code) ve Open (open, True / false) olan ve üçü de herkese açık bir tablo. [select branch] içeren bir Contact Form 7 formunda Form field branch alanını branches tablosuna, Label column name, Value column code, Filter open:eq:1, Order A-Z olarak bağlayın. Ziyaretçi açık şubelerin adlarını görür; gönderim kodu taşır; zzz gibi kurcalanmış bir değer reddedilir.
Hâlâ takıldınız mı? Destek ile iletişime geçin