Giriş
E-ticaret ürünlerini dinamik kataloglar, filtreleme ve arama ile yönetin.
🎯 Bu modül ne yapar?
Products modülü (Katalog), çevrimiçi mağazanızda veya multimedya koleksiyonlarınızda ürün oluşturmanıza, almanıza, filtrelemenize ve yönetmenize olanak tanıyan bağımsız bir modüldür. Güçlü arama, filtreler ve organizasyon özellikleri ile ürün katalogları veya multimedya galerileri oluşturmak için çok esnek araçlar sunar.
Katalog, sezgisel bir arayüz aracılığıyla katalog oluşturma, yükleme, düzenleme ve filtreleme işlemlerini mümkün kılar. E-ticaretin ötesinde, multimedya galerileri gibi alternatif uygulamaları destekleyerek içerik yönetim aracı olarak çok yönlülüğünü gösterir.
Bunu dijital depomuz olarak düşünün - ürün envanterinizi OneEntry admin panelinde (Katalog > Ürünler) yönetirsiniz ve uygulamanız güçlü arama, filtreler ve sıralama ile ürünleri dinamik olarak alır.
📖 Basit Açıklama
Bir çevrimiçi mağaza kurduğunuzu hayal edin:
- 👟 Spor Ayakkabılar - boyutlar, renkler, fiyatlar ile
- 📱 Elektronik - teknik özellikler, resimler, incelemeler ile
- 👕 Giyim - boyutlar, malzemeler, varyantlar ile
- 📚 Kitaplar - yazarlar, fiyatlar, açıklamalar ile
✅ Her ürünü sabit kodlamak yerine:
- OneEntry admin panelinde ürün ekleyin (tüm detaylarla)
- Bu modülü kullanarak ürünleri dinamik olarak alın
- Kategori, fiyat aralığı, kullanılabilirlik ile filtreleyin
- Ürünleri isim veya açıklama ile arayın
- Fiyat, tarih, popülariteye göre sıralayın
- Fiyatları/stokları güncelleyin, yeniden dağıtım yapmadan
Gerçek dünya örneği:
❌ Ürün Modülü Olmadan (sabit kodlanmış):
- Yeni ürün ekle → Kodu değiştir → Dağıt
- Fiyatı değiştir → Kod değişikliği → Dağıt
- 1000 ürün = devasa kod dosyası
✅ Ürün Modülü ile (dinamik):
- Yeni ürün ekle → Admin panelinde güncelle → Anında canlı
- Fiyatı değiştir → Admin panelinde güncelle → Anında canlı
- 10,000 ürün = basit API çağrıları
✨ Temel Kavramlar
Ürün Nedir?
Bir ürün, sattığınız bir öğedir ve şunları içerir:
- Temel bilgi - İsim, açıklama, SKU, fiyat
- Görseller - Ürün fotoğrafları, galeri
- Varyantlar - Boyutlar, renkler, seçenekler (örneğin, "Kırmızı T-shirt Beden M")
- Envanter - Stok miktarı, kullanılabilirlik
- Özel nitelikler - Tanımladığınız herhangi bir alan (marka, malzeme, ağırlık vb.)
- SEO - Meta başlık, açıklama, anahtar kelimeler
- Durum - Aktif, taslak, tükenmiş
- Yerelleştirme - Çok dilli destek
Ürün Yapısı
Ürünlerin farklı yapıları olabilir:
| Tür | Açıklama | Örnek |
|---|---|---|
| Basit Ürün | Tek öğe, varyant yok | Kitap, Poster |
| Varyantlı Ürün | Birden fazla seçenek (boyut, renk) | T-shirt (S/M/L, Kırmızı/Mavi) |
| Dijital Ürün | İndirilebilir öğeler | E-kitap, Yazılım |
| Paket | Ürün grubu | Başlangıç Paketi, Hediye Seti |
Ürün Organizasyonu
Ürünler, birkaç ana özellik aracılığıyla organize edilir:
- Kategoriler - Bölümlere ayırın (Kategoriler, Sayfalar modülünde oluşturulan Katalog türü sayfalardır)
- Ürün Durumları - Mevcut nitelik filtrelerinin ötesinde ek filtreleme koşulları oluşturun
- Ürün Bağlantıları - Nitelik kriterlerine dayalı olarak ürünler arasında bağlantılar kurun
- Ürün Filtreleri - Belirtilen filtre kriterlerini kullanarak hızlı arama
- Özel nitelikler - Marka, Boyut, Renk, Malzeme vb.
Örnek hiyerarşi:
📁 Elektronik
├─ 📱 Akıllı Telefonlar
│ ├─ iPhone 15 Pro
│ └─ Samsung Galaxy S24
└─ 💻 Dizüstü Bilgisayarlar
├─ MacBook Pro
└─ Dell XPS
📁 Giyim
├─ 👕 T-Shirtler
└─ 👖 Kot Pantolonlar
📋 Bilmeniz Gerekenler
Katalog Mimarisi
Önemli: Katalogun kategorileri, Sayfalar modülü aracılığıyla oluşturulan Katalog türü sayfalardır. Ürün eklemeden önce katalog kategorilerini oluşturmalısınız.
Katalog özellikleri:
- Ürünler Sekmesi - Katalog öğelerini oluşturma ve yönetme için ana çalışma alanı
- Ürün Filtreleri - Belirtilen kriterleri kullanarak hızlı arama
- Ürün Bağlantıları - Nitelik kriterlerine dayalı olarak ürünleri bağlayın (örneğin, tüm siyah telefonlar)
- Ürün Durumları - Organizasyon için ek filtreleme koşulları
- Katalog Yükleme - Katalog verilerini toplu olarak içe aktarma
- Ayarlar - Sayısal giriş alanları ile yapılandırma seçenekleri
Ürünleri Alma Yöntemleri
| Yöntem | Ne Zaman Kullanılır | Örnek |
|---|---|---|
| getProducts() | Filtreler/arama ile ürünleri listele | Mağaza katalog sayfası |
| getProductsByPageId() | Belirli bir kategoriye ait ürünler (ID ile) | Kategori sayfası |
| getProductsByPageUrl() | Belirli bir kategoriye ait ürünler (URL ile) | URL ile kategori sayfası |
| getProductById() | ID ile tek bir ürünü al | Ürün detay sayfası |
| getRelatedProductsById() | İlgili/birbirine benzer ürünleri al | "Ayrıca hoşunuza gidebilir" bölümü |
| searchProduct() | Sorguya göre ürünleri ara | Arama işlevselliği |
Sayfalama Basitçe Açıklandı
1000 ürününüz olduğunda, hepsini bir anda yüklemezsiniz:
Offset formülü: offset = (pageNumber - 1) * limit
Sıralama Seçenekleri
Ürünleri farklı alanlara göre sıralayın:
| sortKey | Ne Yapar | Örnek Kullanım |
|---|---|---|
| price | Fiyata göre sırala | En ucuz olanı önce göster |
| date | Oluşturulma tarihine göre sırala | En yeni ürünleri göster |
| title | Alfabetik sırala | A-Z ürün listesi |
| position | Özel sıralama (varsayılan) | Admin panelinden seçilmiş sıralama |
| id | ID'ye göre sırala | Teknik sıralama |
Sıralama düzeni:
- ASC (Artan) - Düşükten yükseğe (A→Z, 0→9, ucuzdan pahalıya)
- DESC (Azalan) - Yüksekten düşüğe (Z→A, 9→0, pahalıdan ucuza)
Ürünleri Filtreleme
Sonuçları daraltmak için filtreleri kullanın:
Koşul işaretleri:
| İşaret | Anlam | Örnek |
|---|---|---|
| eq | Eşit (tam eşleşme) | Fiyat = $50 |
| neq | Eşit değil | Durum ≠ "tükendi" |
| in | İçerir (birinden) | Renk içinde ["kırmızı", "mavi"] |
| nin | İçermez | Kategori içinde ["arşivlenmiş"] |
| mth | Daha büyük | Fiyat > $100 |
| lth | Daha küçük | Fiyat < $50 |
| exs | Vardır (değeri var) | İndirim var |
| nexs | Yoktur (boş) | İndirim yok |
Ürün Durumu ve Bağlantıları
Ürün Durumları, mevcut nitelik filtrelerinin ötesinde ek filtreleme koşulları oluşturarak daha sofistike bir ürün organizasyonu sağlar.
Ürün Bağlantıları, nitelik kriterlerine dayalı olarak ürünler arasında bağlantılar kurmayı sağlar. Örneğin, aynı renk niteliğine sahip tüm ürünleri (örneğin, tüm siyah telefonları) bağlayabilirsiniz.
📊 Hızlı Referans Tablosu - Yaygın Yöntemler
| Yöntem | Açıklama | Kullanım Durumu |
|---|---|---|
| getProducts() | Filtreleme/sıralama ile tüm ürünleri al | Ana katalog sayfası |
| getProductById() | ID ile tek bir ürünü al | Ürün detay sayfası |
| getProductsByPageId() | Sayfa ID'sine göre kategori ürünlerini al | Kategori sayfası |
| getProductsByPageUrl() | Sayfa URL'sine göre kategori ürünlerini al | URL ile kategori sayfası |
| getRelatedProductsById() | İlgili/birbirine benzer ürünleri al | "Ayrıca hoşunuza gidebilir" bölümü |
| searchProduct() | Sorguya göre ürünleri ara | Arama işlevselliği |
| getProductsCount() | Toplam ürün sayısını al | Sayfalama bilgisi |
| getProductsCountByPageId() | Kategori ID'sine göre ürün sayısını al | Kategori sayfalama |
| getProductsCountByPageUrl() | Kategori URL'sine göre ürün sayısını al | Kategori sayfalama |
| getProductBlockById() | ID ile ürün bloğunu al | Ürün içerik blokları |
| getProductsEmptyPage() | Ürünlerin boş sayfa yapısını al | Boş durum yönetimi |
| getProductsPriceByPageUrl() | Sayfa URL'sine göre ürün fiyatlarını al | Fiyat filtreleme |
❓ Sıkça Sorulan Sorular (SSS)
Birden fazla kriterle filtreleme yapabilir miyim?
Evet! Birden fazla filtreyi dizi içinde birleştirin.
Ürün varyantlarını (boyutlar, renkler) nasıl yönetirim?
Ürün varyantları attributeValues içinde saklanır.
"Daha Fazla Yükle" butonunu nasıl uygularım?
Daha fazla ürün yüklemek için offset kullanın.
Birden fazla kategoriden ürün gösterebilir miyim?
Evet, category in koşul işaretini kullanın.
"Yeni Gelenler" bölümünü nasıl uygularım?
Oluşturulma tarihine göre sıralayın veya manuel sıralama için üst kategori kullanın.
💡 Önemli Notlar
Katalog Kategorileri Kurulumu
Önemli: Ürün eklemeden önce, Sayfalar modülü aracılığıyla katalog kategorilerini oluşturmalısınız. Katalogun kategorileri, Katalog türü sayfalardır.
İş Akışı:
- Admin panelinde Sayfalar modülüne gidin
- "Katalog" türünde sayfalar oluşturun
- Bu sayfalar ürün kategorileriniz olur
- Bu kategorilere Katalog > Ürünler aracılığıyla ürün ekleyin
Katalog Özellikleri
Katalog modülü kapsamlı araçlar sunar:
- Ürünler Sekmesi - Katalog öğelerini oluşturma/yönetme için ana çalışma alanı
- Ürün Filtreleri - Belirtilen kriterleri kullanarak hızlı arama sağlar
- Ürün Bağlantıları - Niteliklere dayalı olarak ilgili ürünleri bağlar
- Ürün Durumları - Özel filtreleme koşulları oluşturur
- Katalog Yükleme - Ürünleri toplu olarak içe aktarır
- Ayarlar - Katalog davranışını yapılandırır
E-ticaretin Ötesinde
Katalog, ürünlerle sınırlı değildir - şunlar için de kullanılabilir:
- Multimedya Galerileri - Fotoğraflar, videolar, sanat eserleri koleksiyonları
- Portföy Öğeleri - Tasarım çalışmaları, vaka çalışmaları
- Belge Kütüphaneleri - Kaynaklar, indirmeler
- Etkinlik Katalogları - Konferanslar, web seminerleri
- Tarif Koleksiyonları - Yemek, içecek, pişirme
Performans Optimizasyonu
Sık erişilen ürünleri önbelleğe alın API çağrılarını azaltmak ve yükleme sürelerini iyileştirmek için.
Her Zaman Aktif Ürünleri Filtreleyin
Üretimde, her zaman yalnızca aktif ürünleri gösterin statusId: 1 ile filtreleyerek.
Eksik Görselleri Yönetme
Görseli olmayan ürünler için yedek görseller sağlayın tutarlı bir kullanıcı arayüzü sağlamak için.
🎓 En İyi Uygulamalar
- Her zaman sayfalama kullanın (limit + offset)
- Üretimde
statusId: 1ile filtreleyin - API çağrılarını azaltmak için ürün listelerini önbelleğe alın
- "Stokta yok" durumunu nazikçe yönetin
- Yedek görseller sağlayın
- Öne çıkan ürünler için işaretleyiciler kullanın (ID'ler değil)
- Debouncing ile arama uygulayın
- Kullanıcı arayüzünde yükleme durumları ekleyin
OneEntry admin panelindeki Katalog hakkında daha fazla bilgi: https://doc.oneentry.cloudhttps://doc.oneentry.cloud/docs/category/catalog
Products modülünün tanımı
const { Products } = defineOneEntry( "your-project-url", { "token": "your-app-token" });
Bu modül, userQuery adı verilen bir dizi kullanıcı parametresini kabul eder. Parametreler metoda geçirilmezse, varsayılan değer uygulanır. Bazı yöntemler, filtreleme için gövdeyi parametre olarak kabul eder. Sıralama ayarlamak istemiyorsanız, boş bir dizi geçirin veya hiçbir şey geçmeyin.
Parametreler:
const userQuery = { offset: 0, limit: 30, sortOrder: 'DESC', sortKey: 'id',}
Şema
offset: number
Sayfalama parametresi. Varsayılan 0
örnek: 0
limit: number
sayfalama parametresi. Varsayılan 30
örnek: 30
sortKey: string
Sıralama için alan (varsayılan ayarlı değil - pozisyona göre sıralama, olası değerler: id, title, date, price, position)
Mevcut değerler: id, position, title, date, price
sortOrder: string
sıralama düzeni DESC | ASC (varsayılan DESC)
örnek: "DESC"
Varsayılan olarak, 10 nesne alabilirsiniz. Bu, modülün izin ayarlarında kayıt limitinden kaynaklanmaktadır.
Sayfalamanın doğru çalışması için, ihtiyaçlarınıza göre Modül izinlerini ilgili bölümde yapılandırmalısınız.
"conditionMarker" ile değerler filtrelenir (varsayılan olarak ayarlı değil), olası değerler:
'in' - İçerir,
'nin' - İçermez,
'eq' - Eşit,
'neq' - Eşit değil,
'mth' - Daha büyük,
'lth' - Daha küçük,
'exs' - Vardır,
'nexs' - Yoktur
🔗 İlgili Belgeler
- OneEntry Admin Panel - Katalog - Resmi admin panel belgeleri
- Sayfalar Modülü - Katalog kategorilerini oluşturun (Katalog türü sayfalar)
- AttributesSets Modülü - Özel ürün alanları ve nitelikler
- Templates Modülü - Ürün görüntüleme şablonları
- Blocks Modülü - Yeniden kullanılabilir ürün içerik blokları
- Orders Modülü - Ürün siparişlerini yönetin