Tüm Sayfalar / 39 - Widget Yönetimi
Sayfa 39 / 161
Dinamik Bileşenler

Widget Yönetimi

Ana sayfadaki dinamik içerik bloklarını yönetin

Biz Ne Yaptık?

Ana sayfanızda görünen trend şarkılar, yeni eklenenler, önerilen playlistler gibi tüm dinamik alanları widget olarak tanımladık. Hangi widget nerede görünsün, hangi sırada olsun tamamen sizin kontrolünüzde.

Eski Yöntem

  • Sabit kodlanmış bölümler
  • Sıralama değişikliği = kod değişikliği
  • Yeni bölüm eklemek zor

Modern Mimari

  • Sürükle-bırak: Widget sıralama
  • Açık/Kapalı: Tek tıkla görünürlük
  • Özelleştirme: Her widget için ayar

Kullanıcı Ne Yaşar?

1

Ana sayfada zengin içerik bölümleri ile karşılaşır

2

Trend şarkılar, yeni albümler, öneriler gibi bölümler dikkat çeker

3

Her bölüm güncel ve ilgi çekici içeriklerle dolu

Admin Panelden Ne Görebilirsiniz?

Slider Widget

Kayan banner görselleri yönetin

Trend Widget

Popüler içerikleri sergileyin

Son Eklenenler

Yeni içerikleri öne çıkarın

Önerilen Widget

Seçili içerikleri gösterin

Bu Sayfanın Anahtar Terimleri

Widget

Bağımsız çalışan küçük sayfa bileşeni

LEGO parçası gibi - bir araya gelerek sayfa oluşturur

Grid

Izgara düzeninde içerik gösterimi

Fotoğraf galerisi gibi sıralı kutucuklar

Carousel

Yatay kaydırmalı içerik listesi

Instagram hikaye şeridi gibi

Dinamik İçerik

Otomatik güncellenen veriler

En çok dinlenenler otomatik güncellenir

Arkaplanda Neler Çalışıyor?

Ana sayfadaki widget'lar yüklenirken veya sıralaması değiştirilirken arka planda şu işlemler gerçekleşir:

1. Widget Yapılandırma Sorgusu

Ana sayfa açıldığında widgets tablosundan aktif widget'lar sıralama numarasına göre çekilir. Her widget'ın tipi, başlığı ve ayarları (kaç içerik gösterilecek gibi) bu tabloda tutulur.

Widget::where('is_active', true)->orderBy('order')->get()

2. Dinamik Blade Component

Her widget tipi (trending, new-releases, recommended) ayrı bir Blade component olarak tanımlıdır. Widget tipi okunur ve ilgili component dinamik olarak render edilir.

@component('widgets.' . $widget->type, ['settings' => $widget->settings])

3. İçerik Verisi Çekme

"Trend Şarkılar" widget'ı için son 7 günde en çok dinlenen şarkılar, "Yeni Eklenenler" için son eklenen içerikler sorgulanır. Her widget kendi veri kaynağını bilir.

Song::withCount('plays')->orderByDesc('plays_count')->take(10)

4. Sürükle-Bırak Sıralama

Admin panelde widget sıralaması değiştirildiğinde SortableJS kütüphanesi devreye girer. AJAX ile yeni sıralama sunucuya gönderilir ve order değerleri güncellenir.

Widget::find($id)->update(['order' => $newOrder])

5. Cache ile Hızlandırma

Her widget'ın içeriği Redis'te 5 dakika önbelleklenir. Binlerce kullanıcı aynı anda ana sayfayı açsa bile veritabanı sorgusu sadece cache süresi dolduğunda çalışır.

Cache::remember("widget:{$type}", 300, fn() => $query)

6. Görünürlük Kontrolü

Widget'lar "Yayında/Taslak" durumuna sahiptir. Admin tek tıkla bir widget'ı gizleyebilir veya gösterebilir. Bu değişiklik anında yansır, cache temizlenir.

$widget->update(['is_active' => !$widget->is_active])
WİDGETLER
Sürükle & Bırak
Ana Sayfa Düzeni
Slider
Trend
Yeni
Öneri
Kullanılabilir Widgetler
Radyolar
Albümler
Sanatçılar
65
Widget
12
Tür
58
Aktif
Puzzle Sistemi

Bileşenleri birleştir, sayfanı oluştur