Statik Sayfalar — static.tpl
Statik sayfalar, haber akışından bağımsız duran bilgi sayfalarıdır: "Hakkımızda", "İletişim", "Kurallar", "Gizlilik" gibi. Bu şablon, o sayfaların görünümünü belirler.
| Konu | Ayrıntı |
|---|---|
| İşleyen dosya | engine/modules/static.php |
| Normal şablon | static.tpl |
| Yazdırma şablonu | static_print.tpl |
| Çıktı yeri | result['content'] — yani {content} |
| Sayfa ekleme | Yönetim paneli → Statik Sayfalar |
print.tpl ile static_print.tpl'yi karıştırmayın
static_print.tpl statik sayfanın yazdırma sürümüdür.
print.tpl ise haberin yazdırma sürümüdür ve
show.full.php tarafından kullanılır. İkisi tamamen farklı şablonlardır.
Etiketler
| Etiket | İçeriği |
|---|---|
{description} | Sayfa başlığı |
{static} | Sayfanın gövde metni (HTML) |
{views} | Görüntülenme sayısı |
{date} | Son güncellenme tarihi |
{full-link} | Sayfanın kalıcı adresi |
{pages} | Çok sayfalı statik sayfada "sayfa X / Y · ileri · geri" bağlantıları |
{text limit="200"} | Gövde metninin HTML'siz, kısaltılmış hâli (özet göstermek için) |
[print-link]…[/print-link] · {print-link} | Yazdırma sürümü bağlantısı |
[edit]…[/edit] | Yetkiliye "düzenle" bağlantısı — yalnızca admin_static izniyle |
[vk], [facebook], [google], [mailru], [yandex], [odnoklassniki], [telegram] | Paylaşım blokları — her biri {…_url} ile birlikte |
Sayfa gövdesinde çalışan ek özellikler
Statik sayfanın metni (yönetim panelinden girdiğiniz içerik) içinde şu yapılar da işlenir:
| Yapı | Ne yapar? |
|---|---|
{PAGEBREAK} | Metni sayfalara böler; sayfa başına bir parça gösterilir |
{pages} | Yukarıdaki bölmenin sayfa gezinme bağlantılarını basar |
[PAGE=…] | Sayfa bağlantılarının yerleşimini metin içinde belirlemek için kullanılır |
[hide]…[/hide] | Gizli içerik (yetkiye göre açılır) — Haber Etiketleri ile aynı mantık |
[attachment=…] | Dosya eki gösterimi |
[static=NAME]…[/static] | Yalnızca belirtilen statik sayfada görünür |
[not-static=NAME]…[/not-static] | Belirtilen statik sayfa dışında görünür |
{banner_X}, {inform_X} | Reklam ve bilgilendirici blokları |
Sayfaya özel şablon — güçlü bir özellik
Her statik sayfa kendi şablonunu belirleyebilir. Yönetim panelinden sayfaya bir şablon
adı atarsanız, motor static.tpl yerine o dosyayı kullanır:
| Sayfanın şablon ayarı | Yüklenen şablon |
|---|---|
| Boş (varsayılan) | static.tpl |
iletisim | iletisim.tpl |
kurumsal | kurumsal.tpl |
Böylece "İletişim" sayfasına haritası ve formu olan ayrı bir tasarım, diğerlerine ortak bir düzen verilebilir.
{content} alanına konur; static.tpl hiç işlenmez. Yani
{static} gibi etiketleriniz görünmez olur. Bir sayfada etiketlerin
"çalışmaması" durumunda ilk bakılacak yer bu ayardır.
Örnek — static.tpl
<article class="staticpage">
<header class="staticpage__head">
<h1>{description}</h1>
<p class="staticpage__meta">
<span>{views} görüntülenme</span>
<time>{date}</time>
</p>
<div class="staticpage__tools">
[print-link]<a class="soft-button">Yazdırma sürümü</a>[/print-link]
[edit]<a class="soft-button">Düzenle</a>[/edit]
</div>
</header>
<div class="staticpage__body text">
{static}
</div>
{pages}
</article>
Örnek — static_print.tpl
<!DOCTYPE html>
<html lang="tr">
<head>
<meta charset="utf-8">
<meta name="robots" content="noindex, follow">
<link rel="stylesheet" href="{THEME}/css/print.css">
<title>Yazdırma — {description}</title>
</head>
<body class="printpage">
<div class="printpage__top"><a href="/">Ana sayfa</a> / {description}</div>
<h1>{description}</h1>
<div class="printpage__meta">{date}</div>
<div class="printpage__body">{static}</div>
<a class="printpage__back" href="/">Siteye dön</a>
</body>
</html>
Yazdırma şablonu tam bir HTML belgesidir ve sade tutulmalıdır: menü,
kenar çubuğu, reklam, form içermez. Yazdırma görünümünde {PAGEBREAK},
{pages} ve [PAGE=…] yapıları temizlenir —
tüm metin tek parça yazdırılır.
Sık yapılan hatalar
| Hata | Sonuç |
|---|---|
Statik sayfa için print.tpl'yi düzenlemek | Yanlış şablon — statik sayfanın yazdırması için static_print.tpl gerekir |
{static} etiketini unutmak | Sayfa gövdesi hiç görünmez |
| Yazdırma şablonuna menü/reklam koymak | Çıktı sayfası amacını yitirir |
Sağlayıcı içinde {text limit=…} kullanıp tam metni beklemek | Bu etiket HTML'yi temizler ve kısaltır |
| Sayfaya özel şablon atayıp dosyayı oluşturmamak | Sayfa bozulur veya boş görünür |
Kontrol listesi
{static},{description}ve{date}yerinde.[print-link]yazdırma şablonuna yönlendiriyor.- Yazdırma şablonu sade ve tam bir HTML belgesi.
- Çok sayfalı bir statik sayfada
{PAGEBREAK}ve{pages}'i test ettim. - Sayfaya özel şablon atadıysam dosyanın var olduğundan emin oldum.