XOOPS İletişim Formu Modülü
Genel Bakış
xcform, XOOPS CMS için geliştirilmiş sürükle-bırak form oluşturma modülüdür. Kod yazmadan, admin panelinden kolayca iletişim formu, anket formu, başvuru formu veya her türlü veri toplama formu oluşturulabilir. Oluşturulan formlar hem ayrı sayfa olarak hem de XOOPS blok sistemi üzerinden sitede gösterilebilir.
Alan Türleri (18 Adet)
Metin Alanları
Kısa Metin — tek satır metin girişi, placeholder ve varsayılan değer desteğiyle. Uzun Metin — çok satırlı textarea, yeniden boyutlandırılabilir. E-posta — geçerli e-posta formatı doğrulaması yapılır. Web Sitesi — URL formatı kontrolü. Telefon — tel input türü, mobil klavye desteği. Sayı — sadece sayısal değer girişi.
Tarih ve Saat
Tarih — tarayıcı tarih seçici. Saat — saat seçici.
Seçim Alanları
Seçim (Checkbox) — çoklu seçim, her seçenek ayrı satırda. Resimli Seçim — görsel destekli seçim. Açılır Menü (Dropdown) — tek seçim açılır liste. Onay Kutusu — KVKK onayı, kullanım şartları gibi zorunlu onaylar için.
Dosya ve Medya
Dosya Yükleme — maksimum 5MB, izin verilen türler: jpg, jpeg, png, gif, pdf, doc, docx, xls, xlsx, txt, zip. İmza — canvas üzerinde fare veya dokunmatik ekranla imza alma, PNG olarak kaydedilir.
Yapısal Alanlar
Başlık — form içinde bölüm başlığı. Etiket — açıklayıcı metin etiketi. Paragraf — uzun açıklama metni. Gizli Alan — POST ile gönderilen görünmez değer.
Form Oluşturucu
Admin panelinde sürükle-bırak arayüzüyle form tasarlanır. Sol panelden alan türü seçilir, sağ canvas'a sürüklenir veya çift tıklanır. Her alan için sağ taraftaki inspector panelinden etiket, placeholder, varsayılan değer, açıklama, zorunluluk ve genişlik ayarlanır. Genişlik seçenekleri: Tam (12/12), Yarım (6/12), Üçte bir (4/12). Yan yana alanlar oluşturulabilir. Sürükleyerek sıralama değiştirilebilir.
Ayarlar
Her form için ayrı ayrı yapılandırılır. Form adı ve SEO uyumlu slug (URL) tanımlanır. Başarı mesajı özelleştirilebilir. Bildirim e-postası ve e-posta konusu ayarlanır. Form aktif/pasif yapılabilir. GD kütüphanesi tabanlı CAPTCHA etkinleştirilebilir.
Güvenlik
Honeypot spam koruması — botlar için görünmez alan, insan kullanıcılar etkilenmez. Token doğrulaması — her form gönderiminde CSRF koruması. GD tabanlı CAPTCHA — sunucu taraflı üretilen, dış servise bağımlılık olmayan güvenlik kodu. Dosya yükleme kısıtlaması — uzantı ve boyut kontrolü. PHP izin verilen uzantı dışındaki dosyalar reddedilir.
Gönderi Yönetimi
Admin panelinde tüm form gönderileri listelenir. Yeni/Okundu durumu takibi yapılır. Her gönderi detay sayfasında alan etiketleriyle birlikte görüntülenir. Gönderi silinebilir. E-posta bildirimi — form doldurulduğunda belirlenen adrese otomatik e-posta gönderilir, e-postada tüm alan değerleri listelenir.
Blok Sistemi
XOOPS blok sistemiyle entegre çalışır. Admin panelinden hangi formun gösterileceği seçilir. İki gösterim modu vardır: Link modu forma yönlendiren buton gösterir, Embed modu formu doğrudan blok içinde render eder. Embed modunda form gönderimi, doğrulama ve başarı mesajı bloğun içinde gerçekleşir, sayfadan ayrılmak gerekmez. Blok herhangi bir sayfada, sol veya sağ sidebar'da gösterilebilir.
Çoklu Form Desteği
Tek modül kurulumunda sınırsız sayıda form oluşturulabilir. Her formun kendine ait slug'ı, ayarları ve gönderi listesi vardır. Formlar bağımsız URL üzerinden erişilebilir: /modules/xcform/form.php?slug=form-adi
Dil Desteği
Türkçe ve İngilizce dil dosyaları içerir. Tüm arayüz metinleri XOOPS dil sabitleri üzerinden yönetilir, kod içinde düz metin bulunmaz. Farklı dil eklemek için language/ klasörüne yeni klasör eklenmesi yeterlidir.