Etiket Bulutu — tagscloud.tpl

Etiket bulutu, sitedeki haber etiketlerini boyutları kullanım sıklığına göre değişen bir liste hâlinde gösterir. Çok kullanılan etiket büyük, az kullanılan küçük görünür.

KonuAyrıntı
İşleyen dosyaengine/modules/tagscloud.php
Kenar çubuğu bulutu{tags} etiketi — main.tpl veya sidebar içinde
Tam sayfa bulutindex.php?do=alltags — bu şablon kullanılır
Çıktı yerleriKenar çubuğu → result['tags_cloud'] · Tam sayfa → result['content']
ÖnbellekHer iki mod da önbelleğe alınır
!
Kenar çubuğu bulutu bu şablonu KULLANMAZ En sık karışan nokta budur: main.tpl içindeki {tags} etiketi, tagscloud.tpl ile hiç ilgisi olmayan, tamamen PHP içinde üretilen bir listeyi basar. Bu şablon yalnızca index.php?do=alltags sayfasında — yani "tüm etiketler" sayfasında — devreye girer.

Etiketler

Etiketİçeriği
{tags}Tüm etiketler
{tags limit="20"}Yalnızca en çok kullanılan ilk 20 etiket

Şablon tek bir etiket kullanır; gerisini motor üretir. Etiketlerin kendileri, bağlantıları ve boyut sınıfları PHP tarafından hazır HTML olarak konur.

Var olmayan etiketNeden?
{tag}, {count}, {link}Etiket listesi şablon döngüsüyle değil, PHP içinde üretilir. Bu adlar yalnızca PHP dizisinin anahtarlarıdır; şablonda çalışmaz.

Boyut sınıfları

Her etiket, kullanım sıklığına göre şu beş sınıftan birine girer (küçükten büyüğe):

SınıfAnlamı
clouds_xsmallEn az kullanılan
clouds_smallAz
clouds_mediumOrta
clouds_largeÇok
clouds_xlargeEn çok kullanılan
i
Bu sınıflar temanızda tanımlı olmalı Boyutlandırma font-size ile yapılır; sınıfların CSS'te tanımlı olması gerekir. Sınıfları engine.css dosyanıza ekleyerek kendi ölçeğinizi kurabilirsiniz: .clouds_xsmall{font-size:.8em} … .clouds_xlarge{font-size:1.6em}

Kenar çubuğu bulutunun içeriği

{tags} etiketinin bastığı yapı kabaca şöyledir; her etiket bir <span> içinde bir bağlantıdır:

<span class="clouds_large"><a href="/tags/ornek-etiket/" title="İçerik: 42">Örnek Etiket</a></span>
<span class="clouds_xsmall"><a href="/tags/diger/" title="İçerik: 3">Diğer</a></span>

Kenar çubuğu bulutunda etiket sayısı sistem ayarından gelir (tags_number, varsayılan 10 ve asgari 1). Ayrıca sitedeki toplam etiket sayısı bu sınıra ulaşmışsa, listenin sonuna otomatik olarak "tüm etiketler" bağlantısı eklenir.

Örnek — tasarım farkı

Bu şablonu düzenleyerek bulut sayfasına başlık, açıklama ve yalnızca etiketlerden oluşan bir gövde koyabilirsiniz:

<section class="tags-page">
    <h1>Etiket bulutu</h1>
    <p>Sitedeki makalelerde kullanılan anahtar kelimeler</p>

    <div class="tags-cloud">
        {tags}
    </div>
</section>

Yalnızca ilk 20 etiketi göstermek isterseniz:

<div class="tags-cloud">{tags limit="20"}</div>
i
limit yalnızca tüm etiketler sayfasında çalışır {tags limit="20"} biçimi do=alltags sayfasında geçerlidir. Kenar çubuğu bulutunun sınırı ise ayarlardan gelir; şablon bu değeri değiştiremez.

Sık yapılan hatalar

HataSonuç
Kenar çubuğu bulutunu bu şablonla değiştirmeye çalışmakKenar çubuğu bu dosyayı kullanmaz; değişiklik görünmez
{tag} / {count} ile döngü kurmakBu etiketler yok; liste boş kalır
clouds_* sınıflarını CSS'te tanımlamamakTüm etiketler aynı boyutta görünür
Değişiklikten sonra önbelleği temizlememekEski bulut görünmeye devam eder

Kontrol listesi

  • Şablonda yalnızca {tags} (gerekirse limit ile) kullandım.
  • clouds_* sınıfları temanın CSS'inde tanımlı.
  • Kenar çubuğu ile do=alltags sayfasının farklı kaynaklardan beslendiğini biliyorum.
  • Önbelleği temizleyip sayfayı yeniledim.