Giriş
🎯 Bu modül ne yapar?
GeneralTypes modülü, OneEntry'deki içeriğinizin yapısını ve kategorilerini tanımlayan sistem genelindeki varlık türlerini - sayfa türleri, form türleri, ürün blok türleri ve daha fazlasını - almanıza olanak tanır.
Bunu içeriğinizin sınıflandırma sistemi olarak düşünün - OneEntry, farklı türdeki sayfaları (anasayfa, blog yazısı, ürün sayfası), formları (iletişim, anket), blokları (kahraman, galeri) ve ürünleri (fiziksel, dijital) düzenlemek için türleri kullanır ve bu modül, dinamik arayüzler oluşturmak için mevcut tüm türleri almanıza olanak tanır.
📖 Basit Açıklama
OneEntry'de, her varlığın bir türü vardır ve bu tür, amacını ve yapısını belirler:
- Sayfa Türleri:
homepage,blog_post,product_page,landing_page - Form Türleri:
contact_form,survey,registration,feedback - Ürün Blok Türleri:
hero_section,image_gallery,text_block,video_embed - Ürün Türleri:
physical_product,digital_product,service,subscription
GeneralTypes modülü, OneEntry projenizde yapılandırılmış tüm türlerin tam listesini sağlar, böylece:
✅ Dinamik açılır menüler oluşturun - İçerik oluştururken yöneticilerin sayfa türünü seçmesine izin verin
✅ İçeriği filtreleyin - Sadece "blog_post" sayfalarını veya "contact_form" formlarını gösterin
✅ Verileri doğrulayın - Bir varlık oluşturmadan önce bir türün var olup olmadığını kontrol edin
✅ Tür tabanlı mantık oluşturun - Sayfa türüne göre farklı kullanıcı arayüzleri gösterin
Gerçek dünya örneği:
Blog uygulamanız tüm sayfa türlerini alır:
- "homepage" → Öne çıkan gönderiler kaydırıcısını render eder
- "blog_post" → Yorumlarla birlikte makale düzenini render eder
- "about_page" → Ekip üyesi kartlarını render eder
- "contact_page" → İletişim formunu render eder
✨ Temel Kavramlar
Tür Sistemi Hiyerarşisi
OneEntry, her varlığın bir kategoriye ait olduğu bir tür sistemi kullanarak içeriği organize eder:
| Varlık | Örnek Türler | Amaç |
|---|---|---|
| Sayfalar | homepage, blog_post, product_page, landing_page | Sayfa düzenlerini ve işlevselliğini tanımlar |
| Formlar | contact_form, survey, registration, feedback | Farklı form amaçlarını kategorize eder |
| Ürün Blokları | hero_section, gallery, text_block, video_embed | Ürün sayfaları için yapı taşları |
| Ürünler | physical_product, digital_product, service, subscription | Ürün envanterini sınıflandırır |
Tür Varlık Yapısı
GeneralTypes.getAllTypes() tarafından döndürülen her tür bu yapıya sahiptir:
interface GeneralTypeEntity {
id: number; // Benzersiz sayısal ID (örneğin, 1, 2, 3)
type: string; // Tür adı (örneğin, "blog_post", "contact_form")
}