Ana içeriğe geç

Giriş

Birden fazla sayfada kullanılabilecek yeniden kullanılabilir içerik blokları oluşturun.

🎯 Bu modül ne yapar?

Blocks modülü, birden fazla sayfada kullanılabilecek, özellik setleri içeren yeniden kullanılabilir içerik bileşenleri (bloklar) kullanmanıza olanak tanır - başlıklar, alt bilgiler, afişler, referanslar veya herhangi bir tekrarlayan içerik gibi.

Bunu web siteniz için LEGO tuğlaları gibi düşünün - bir bloğu bir kez oluşturursunuz ve ihtiyacınız olan her yerde yeniden kullanırsınız. Bloğu bir kez değiştirin ve her yerde otomatik olarak güncellenir.

📖 Basit Açıklama

Bir web sitesi oluşturduğunuzu hayal edin:

  • 🔝 Başlık - logo, navigasyon menüsü (her sayfada aynı)
  • 🔽 Alt Bilgi - iletişim bilgileri, sosyal bağlantılar (her sayfada aynı)
  • 📢 Tanıtım Afişi - özel teklif (birden fazla sayfada görünür)
  • Referanslar - müşteri yorumları (farklı yerlerde yeniden kullanılır)
  • 📞 İletişim Formu - birden fazla sayfada görünür

Bu içeriği her sayfaya kopyalamak yerine:

  • ✅ Bir kez Block olarak oluşturun
  • ✅ Bloğu ihtiyacınız olan yere yerleştirin
  • ✅ Bir yerde güncelleyin → değişiklikler her yerde otomatik olarak
  • ✅ İçeriğinizi DRY (Kendinizi Tekrar Etmeyin) tutun

Gerçek dünya örneği:

Blocks olmadan (kopyala-yapıştır):

  • Alt bilgiyi güncelle → 50 sayfayı manuel olarak düzenleyin ❌
  • Sosyal bağlantı ekle → Her yerde güncelle ❌
  • Sayfalar arasında tutarsız içerik ❌

Blocks ile (yeniden kullanılabilir):

  • Alt bilgi bloğunu güncelle → Tüm 50 sayfada anında değişiklik ✅
  • Sosyal bağlantı ekle → Bir kez güncelle ✅
  • Her zaman tutarlı ✅

✨ Temel Kavramlar

Block nedir?

Bir block, aşağıdakileri içeren yeniden kullanılabilir bir içerik bileşenidir:

  • İçerik - Metin, resimler, bağlantılar, herhangi bir veri
  • Özellikler - Tanımladığınız özel alanlar
  • İşaretçi - Referans vermek için benzersiz tanımlayıcı
  • Durum - Aktif, taslak, arşivlenmiş

Block ile Sayfa Arasındaki Fark

ÖzellikSayfaBlock
AmaçTam sayfa içeriğiYeniden kullanılabilir bileşen
URLKendi URL'sine sahip (/about)URL yok (gömülü)
KullanımDoğrudan görüntülenirSayfalara yerleştirilir
ÖrnekHakkımızda sayfasıAlt bilgi, Başlık

Ana fark: Sayfalar varış noktalarıdır, Blocks ise yapı taşlarıdır.

Yaygın Block Türleri

Oluşturabileceğiniz tipik bloklar:

Block TürüÖrnek İçerikNerede Kullanılır
BaşlıkLogo, navigasyon menüsü, aramaHer sayfada
Alt Bilgiİletişim, bağlantılar, telif hakkıHer sayfada
Hero AfişiBüyük resim + CTA butonuAnasayfa, açılış sayfaları
ReferanslarMüşteri yorumlarıBirden fazla sayfada
İletişim FormuE-posta formuİletişim sayfası, modallar
Tanıtım AfişiÖzel teklif uyarısıSeçilen sayfalarda
Sosyal BağlantılarFacebook, Twitter simgeleriAlt bilgi, yan menü
Bülten KaydıE-posta abonelik kutusuAlt bilgi, blog

Block Yeniden Kullanılabilirliği

Blocks şunlar olabilir:

  • ✅ Birden fazla sayfada kullanılabilir
  • ✅ Bir kez güncellenir, her yerde yansır
  • ✅ Yerelleştirilmiş (dil başına farklı içerik)

📋 Bilmeniz Gerekenler

Block Tanımlaması

Blokları tanımlamanın üç yolu:

YöntemNe Zaman KullanılırÖrnek
Tümünü ListeleYönetici paneli, blok seçicigetBlocks()
İşaretçi ileKod içinde referans (en iyi uygulama)footer, header, promo_banner
Blokları AraDahili referanslarsearchBlock('foo')

En iyi uygulama: Kodunuzda her zaman işaretçiler kullanın (asla değişmezler).

Block Yapısı

Her blok bu ana alanlara sahiptir:

{
id: 3, // benzersiz ID
localizeInfos: { // blok yerelleştirilmiş verileri
title: 'Block', // blok yerelleştirilmiş başlığı
},
version: 0, // blok versiyonu
position: 1, // blokların dizisindeki konumu
identifier: 'block', // blok tanımlayıcısı
type: 'common_block', // blok türü
templateIdentifier: null, // şablon tanımlayıcısı
isVisible: true, // görünürlük
attributeValues: {}, // blok özellikleri
}

Özel Özellikler

Blocks, özel alanlar için AttributesSets kullanır:

Örnekler:

  • Alt bilgi bloğu: telif hakkı metni, sosyal bağlantılar, iletişim bilgileri
  • Hero afişi: başlık, alt başlık, CTA butonu, arka plan resmi
  • Referans: yazar adı, fotoğraf, alıntı, puan
  • İletişim formu: alan yapılandırması, gönder butonu metni

Daha fazla bilgi: AttributesSets Modülü


📊 Hızlı Referans Tablosu - Yaygın Yöntemler

YöntemNe YaparNe Zaman Kullanılır
getBlocks()Tüm blokları al (sayfalı, filtreli)Mevcut tüm blokları listele
getBlockByMarker()İşaretçiye göre bloğu alKod içinde belirli bir bloğu al
searchBlock()Blokları araBlokları al

❓ Yaygın Sorular (SSS)

Blocks ile Sayfalar arasındaki fark nedir?

  • Sayfalar - URL'lere sahip tam bağımsız sayfalar (örneğin, /about)
  • Blocks - Sayfalara yerleştirilen yeniden kullanılabilir bileşenler (örneğin, alt bilgi)

Bunu şöyle düşünün:

  • Sayfa = Tam belge
  • Block = Birden fazla belgede yeniden kullandığınız paragraf

Bir bloğun içeriğini nasıl güncelleyebilirim?

OneEntry yönetim panelinde güncelleyin:

  1. Blocks bölümüne gidin
  2. Bloğunuzu bulun (örneğin, "Alt Bilgi")
  3. Özellikleri düzenleyin
  4. Kaydedin

O bloğu kullanan tüm sayfalar otomatik olarak güncellenir!


Birçok küçük blok mu yoksa birkaç büyük blok mu oluşturmalıyım?

Birçok küçük blok daha iyidir:

✅ İyi (küçük, odaklanmış):

- header_logo
- header_navigation
- footer_copyright
- footer_social_links

❌ Kaçınılması Gereken (çok büyük):

- entire_page_layout (her şeyi içerir)

Neden? Küçük bloklar yeniden kullanımı ve bakımını kolaylaştırır.


Aynı bloğu bir sayfada birden fazla kez kullanabilir miyim?

Evet! Bir kez alın, birden fazla kez render edin.


Blokları koşullu olarak nasıl gösterir/gizlerim?

statusId ve isVisible kontrol edin.


API aracılığıyla dinamik olarak blok oluşturabilir miyim?

SDK yalnızca okunur. Blok oluşturmak için OneEntry yönetim panelini kullanın.


Eksik blokları nasıl düzgün bir şekilde yönetebilirim?

Her zaman try/catch kullanın.


💡 Önemli Notlar

Block İşaretçileri En İyi Uygulamaları

✅ İyi işaretçi adları:

  • Açıklayıcı: global_footer, homepage_hero
  • Alt çizgi kullanın: contact_form
  • Küçük harf: promo_banner
  • Kapsamı belirtin: global_header vs blog_header

❌ Kötü işaretçi adları:

  • Genel: block1, content
  • Boşluklar: my block
  • Karışık durum: MyBlock, ProMoBanner

Blokları Önbelleğe Alma

Bloklar nadiren değişir → bunları önbelleğe alın!

🎓 En İyi Uygulamalar

  • Küçük, odaklanmış bloklar oluşturun (tek sorumluluk)
  • Açıklayıcı işaretçiler kullanın (footer, block1 değil)
  • API çağrılarını azaltmak için blokları önbelleğe alın
  • Eksik blokları düzgün bir şekilde yönetin (try/catch)
  • Her bloğun ne için olduğunu belgeleyin
  • Blok yapısını tutarlı tutun
  • Yayınlamadan önce blok değişikliklerini test edin
  • Değişiklikleri önizlemek için statusId kullanın

Modülün kullanıcı arayüzü hakkında daha fazla bilgi https://doc.oneentry.cloud/docs/blocks/introduction

Blocks modülünün tanımı


const { Blocks } = defineOneEntry(
"your-project-url", {
"token": "your-app-token"
}
);


🔗 İlgili Belgeler