Önceki / Sonraki Haber — splitnewsnavigation.tpl

Bu şablon, çok sayfalı bir haberin sayfaları arasında ileri/geri gezinme bağlantılarını üretir. Haber metnine {PAGEBREAK} yazılarak içerik bölündüğünde devreye girer.

KonuAyrıntı
İşleyen dosyaengine/modules/show.full.php
Çıktı{pages} etiketinin yerine
Ne zaman?Yalnızca haber içeriği {PAGEBREAK} ile bölünmüşse
i
Sayfa içi gezinme ile site sayfalaması farklıdır
  • splitnewsnavigation.tpl → tek bir haberin sayfaları arasında gezinme (bu sayfa)
  • navigation.tpl → sayfa listelerinde ve yorumlarda sayfalama
İkisini karıştırmak, yanlış şablonu düzenlemenize yol açar.

Etiketler

Etiket / blokİçeriği
[prev-link]…[/prev-link] Önceki sayfa varsa bağlantı olur; yoksa aynı içerik bağlantı o yerine <span>…</span> ile basılır (devre dışı görünüm).
[next-link]…[/next-link] Sonraki sayfa varsa bağlantı, yoksa <span>.
{pages} Sayfa numaraları listesi (1, 2, 3 …)

Örnek

<nav class="split-nav">

    [prev-link]
        <a class="prev" rel="prev">← Önceki sayfa</a>
    [/prev-link]

    <div class="pages">{pages}</div>

    [next-link]
        <a class="next" rel="next">Sonraki sayfa →</a>
    [/next-link]

</nav>
i
Bağlantı adresi nasıl oluşur? İlk/son sayfada olmadığınızda DLE, bloğun içindeki <a> etiketine eksik parçaları kendisi ekler:
  • Sonraki sayfa varsa: <a href="…"> açılışı ve </a> kapanışı eklenir.
  • Sonraki sayfa yoksa: blok içeriği <span>…</span> ile sarılır.
Yani şablonda yalnızca etiketi yazmanız yeterlidir; bağlantı adresini siz hesaplamazsınız. Ayrıca [not-prev-link] veya [not-next-link] diye bir etiket yoktur — bu işi <span> dönüşümü yapar.
★
rel="prev" / rel="next" ekleyin Çok sayfalı haberlerde bu iki özniteliği kullanmak, arama motorlarına sayfaların bir bütünün parçaları olduğunu bildirir ve "yinelenen içerik" cezası riskini azaltır.

Haber şablonundaki bağlantısı

Bu şablonun çıktısı, fullstory.tpl içindeki {pages} etiketine oturur. Yani:

<article>
    {full-story}

    [pages]
        <div class="news-pages">{pages}</div>
    [/pages]
</article>

Kontrol listesi

  • {PAGEBREAK} içeren bir haberle test ettim (aksi hâlde şablon hiç çalışmaz).
  • İlk ve son sayfada bağlantı yerine <span> geldiğini test ettim.
  • rel="prev" / rel="next" özniteliklerini ekledim.
  • navigation.tpl'i değil, bu dosyayı düzenlediğimden eminim.