Main.TPL'de Smarty kodlarının kullanımları

Php'de Smarty (akıllı kodlama) denen sistem ile dle içinde bir çok özelleştirme yapabiliyoruz. Bu akıllı kodlar, temel cms kullanıcılarının işlerini php kodlara dokunmadan fonksiyonel olarak halletmelerini sağlıyor.
DLE main.tpl de kullanılabilen smarty kodlar
1) {custom ...} etiketi ve özellikleri
Main.tpl'ye yerleştireceğimiz {custom ...} kodu ile oluşturmuş olduğumuz haberleri sitemizin bir çok alanında (yazının en altına bakınız) liste halinde alt alta göstermeye yaramaktadır.
Dle yapısı eklenen haberleri otomatik olarak alt alta site ana sayfasında listelemektedir. Bu listelemeden farklı olarak özel bir listeleme oluşturmak için "custom" etiketi kullanabiliriz.
"Custom" etiketi ile belirli bir kategori veya kategorilerden belirlenmiş sayıda haberi istediğimiz özel bir şablon dosyası içinde anasayfada (ve daha bir çok alan bakınız ) alt alta listeleyebiliyoruz.
Daha açmak gerekirse, dle ye eklediğiniz haberler anasayfada alt alta karışık olarak listelenmektedir. Bu kullanım açısında pek hoş değil. Kullanıcıyı ilgisini çeken bir kategorideki haberleri toplu olarak göstermek daha işlevseldir.
Diyelim oyun siteniz var. Android oyunlarını sitenin anasayfasında listeletemek istiyoruz. Andorid oyunları kategorisinin id'si 1 olsun.
Şekildeki etiket yapısını sitemizin main.tpl sinde uygun bir yere yerleştirdiğimizde Andorid oyunları kategorisindeki 0 dan 10 kadar olan haberleri oluşturmuş olacağımız 'test' şablonu içinde anasayfada listeleyecektir.
aviable="main" yazan yere yazının en altındaki sayfa yapılarının isimlerini yazarsak sadece o sayfalarda görünmesini sağlayabiliriz.
Burada arkadaş ayrıntıları ile örnekler vermiş daha fazla örneklendirmeye gerek yok. Bu etiket aynı zamanda fullstory.tpl içinde aynı şekilde çalışmaktadır.
2) [aviable=*] *** [/aviable] etiketi ve özellikleri
Avaible "mevcut, geçerli" gibi bir anlamı vardır.
Dle içinde bir çok sayfa içeriği yapısı vardır. Bunlardan bazıları, main (ansayfada), showfull (haber sayfası içinde), register(kayıt olma sayfasında) gibi. Tüm sayfa yapı çeşitlerine yazının en altından bakabilirsiniz.
Kullanacağımız Avaible etiketiyle istediğimiz içerikleri istediğimiz sayfa yapılarında gösterilmelerini sağlayabiliriz.
şeklinde kullandığımızda site anasayfasında [aviable=main] ile [/aviable] arasında kalan içeriği gösterecektir. Diğer sayfa yapılarında göstermeyecektir.
şeklinde kullandığımızda site anasayfası haricindeki sayfa yapılarında [not-aviable=main] ile [/not-aviable] arasında kalan içeriği gösterecektir.
şeklinde kullandığımızda site anasayfası ve haber içeriği sayfasında [aviable=main|showfull] ile [/aviable] arasında kalan içeriği gösterecektir. Diğer sayfa yapılarında göstermeyecektir.
[aviable=*] de *'ın yerine yazının en altındaki sayfa yapılarının isimlerinin hepsini birden kullanabilirsiniz.
Ayrıca "içerik" olarak belirtilen bölüme bir yazı gelebileceği gibi html kodlar veya {custom ...}, {include ...} gibi ve bu yazıda geçen tüm etiketler konulabilir.
3) {include file="block.tpl"} etiketi ve özellikleri
"include" etiketi main.tpl içine istediğimiz bir tpl dosyasını çekip içidenkileri göstermeye yarar.
Tema düzenleme bölümünden yeni sol-sutun.tpl dosyası oluşturduğumuzda bu tpl dosyası içindeki html kodlarını site anasyafasında gösterebiliriz.
Bu kodu site ansayfasında sol sütunun geleceği yre eklediğimizde sol-sutun.tpl içindeki kodlarımız site ana ve tüm sayfa yapılarında (yazının en altına bakınız) görünecektir.
Bu kullanım şekli main.tpl dosyasını daha kullanışlı bir hale getirir. Sol sütuna yerleştireceğimiz html kodlarında düzenleme yapmak için, içinde bir çok kod bulunan main.tpl ye bakmak yerine tema düzenleme bölümündeki sol-sutun.tpl bakarız.
4) [category=*] *** [/category] etiketi ve özellikleri
Bu etiketi main.tpl ye yerleştirdiğimizde site içinde kategori sayfaları ziyaret edildiğinde [category=*] ile [/category] içine yerleştirilen kodlar gösterilmektedir. Kategori sayfaları haricindeki diğer sayfa yapılarında çalışmamaktadır (yazının en altına bakınız).
[category=*] ile [/category] arasına html kodlar eklenebileceği gibi {custom ...}, {include ...} gibi kodlarda eklenebilir.
Şeklinde kullandığımızda id'si 1 olan kategori sayfasında "içerik" görüntülenir.
Şeklinde kullandığımızda id'si 1 dışında olan tüm kategori sayfalarında "içerik" görüntülenir.
Şeklinde kullandığımızda id'si 1 ve 2 olan kategori sayfalarında "içerik" görüntülenir.
Şeklinde kullandığımızda id'si 1 ve 2 dışında olan tüm kategori sayfalarında "içerik" görüntülenir.
Şeklinde kullandığımızda id'si 1 ve 2 ve 5 ile 8 arasında kalan tüm kategori sayfalarında "içerik" görüntülenir.
5) [group=*] *** [/group] etiketi ve özellikleri
Dle yapısında kullanıcı grupları vardır. "Ziyaretçi", "Üye", "Editör", "Genel Editör", "Yönetici" grubları vardır ve bu grupların id'leri sıra ile 5, 4, 3, 2, 1 dir. Bu gruplara özel içerik göstermek için "group" etiketini kullanırız.
Şeklinde bir kullanım ile id'si 5 olan (ziyaretçiler) gruba "içerik" gösterebiliriz. Mesela ziyaretçilere üye ol çağrısı göstermek olabilir. Dİğer grupların görmemsi için [group=5] Üye ol! [/group] kullanım idealdir.
şeklinde bir kullanım id'si 5 olan (ziyaretçiler) grubu haricine içerik gösterebilirsiniz.
Yada moderatörlerinize bazı hatırlatmlar yapabilirsiniz.
gibi.
şeklinde kullanım ise ziyaretçi ve normal üyelere içerik göstermeye yaramaktadır.
Bu etiket ayrıca dle sayfa yapılarının hepsinde çalışmaktadır (yazının en altına bakınız)
[group=*] ile [/group] içine {custom ...}, {include ...} gibi kodlarda eklenebilir.
6) [banner_*] {banner_*} [/banner_*] etiketi ve özellikleri
En işe yara etiketleriden birisi ise reklam etiketidir. Dle yönetici panelinden "Reklam Kontrolü" bölümünde bir reklam oluştruduğunuzda
gibi bir kod vardır sol tarafında bu kodu main.tpl'ye uygun bir yere yerleştirdiğinde reklamlarınız istediğiniz bölümde görüntülenir.
Reklam bir süre sonra durdurulması için ayar girdiyeseniz ve o zaman geldiğinde reklam kodunu yerleştridiğiniz alan boş görünecektir.
Bu kullanımda "rek1" yazan yerleri reklamı oluşturken reklama verdiğimiz isimlerdir.
Reklama "adsense250px" diye isim verdiyseniz kodunuz
Şeklinde olmalıdır.
Not: Yazı içinde bahsedilen dle ye özel sayfa yapılarının isimleri
global - tüm sitede
main - anasayfada
date - o tarihli sayfalarda
cat - kategorilerde
showfull - tüm yazıda
search - arama sayfalarında
userinfo - kullanıcı profili sayfalarında
register - kayıt sayfasında
stats - istatistik sayfasında
pm - özel mesaj sayfasında
feedback - iletişim sayfasında
favorites - kullanıcının favori haberler sayfalarında
addnews - yazı ekleme sayfasında
lastcomments - son yorumların sıralandığı sayfalarda
static - sabir sayfalarda
catalog - kataloglarda
alltags - tüm tagların buluğu sayfada
tags - herhangi bir etiket sayfasında
allnews - tüm haberler sayfalarında
newposts- yeni haberler sayfalarında
lastnews- son haberler sayfalarında
lostpassword- şifre hatırlatma sayfalarında
Konu ile alakalı kaynak için http://dle-news.ru/extras/online/startnews.html
Not 2: Bu kullanacağınız etiketler sonucunda istediğiniz içerikler istediğiniz şekilde ve yerde sitede görüntülenir. Ancak görüntülediğiniz yerlerde istediğiniz stilde ve görünümde görünmesini sağlayamıyorsanız html ve css konularındaki bilgi eksiklerinizi tamamlamalısınız. Html ve css konusunda bilginiz az ise bu etiketleri kullandığınızda istediğiniz tarza bir görünüm etmeniz zor olabilir.
DLE main.tpl de kullanılabilen smarty kodlar
1) {custom ...} etiketi ve özellikleri
Main.tpl'ye yerleştireceğimiz {custom ...} kodu ile oluşturmuş olduğumuz haberleri sitemizin bir çok alanında (yazının en altına bakınız) liste halinde alt alta göstermeye yaramaktadır.
Dle yapısı eklenen haberleri otomatik olarak alt alta site ana sayfasında listelemektedir. Bu listelemeden farklı olarak özel bir listeleme oluşturmak için "custom" etiketi kullanabiliriz.
"Custom" etiketi ile belirli bir kategori veya kategorilerden belirlenmiş sayıda haberi istediğimiz özel bir şablon dosyası içinde anasayfada (ve daha bir çok alan bakınız ) alt alta listeleyebiliyoruz.
Daha açmak gerekirse, dle ye eklediğiniz haberler anasayfada alt alta karışık olarak listelenmektedir. Bu kullanım açısında pek hoş değil. Kullanıcıyı ilgisini çeken bir kategorideki haberleri toplu olarak göstermek daha işlevseldir.
Diyelim oyun siteniz var. Android oyunlarını sitenin anasayfasında listeletemek istiyoruz. Andorid oyunları kategorisinin id'si 1 olsun.
{custom category="1" template="test" aviable="main" from="0" limit="10"}
Şekildeki etiket yapısını sitemizin main.tpl sinde uygun bir yere yerleştirdiğimizde Andorid oyunları kategorisindeki 0 dan 10 kadar olan haberleri oluşturmuş olacağımız 'test' şablonu içinde anasayfada listeleyecektir.
aviable="main" yazan yere yazının en altındaki sayfa yapılarının isimlerini yazarsak sadece o sayfalarda görünmesini sağlayabiliriz.
Burada arkadaş ayrıntıları ile örnekler vermiş daha fazla örneklendirmeye gerek yok. Bu etiket aynı zamanda fullstory.tpl içinde aynı şekilde çalışmaktadır.
2) [aviable=*] *** [/aviable] etiketi ve özellikleri
Avaible "mevcut, geçerli" gibi bir anlamı vardır.
Dle içinde bir çok sayfa içeriği yapısı vardır. Bunlardan bazıları, main (ansayfada), showfull (haber sayfası içinde), register(kayıt olma sayfasında) gibi. Tüm sayfa yapı çeşitlerine yazının en altından bakabilirsiniz.
Kullanacağımız Avaible etiketiyle istediğimiz içerikleri istediğimiz sayfa yapılarında gösterilmelerini sağlayabiliriz.
[aviable=main] içerik [/aviable]
şeklinde kullandığımızda site anasayfasında [aviable=main] ile [/aviable] arasında kalan içeriği gösterecektir. Diğer sayfa yapılarında göstermeyecektir.
[not-aviable=main] içerik [/not-aviable]
şeklinde kullandığımızda site anasayfası haricindeki sayfa yapılarında [not-aviable=main] ile [/not-aviable] arasında kalan içeriği gösterecektir.
[aviable=main|showfull] içerik [/aviable]
şeklinde kullandığımızda site anasayfası ve haber içeriği sayfasında [aviable=main|showfull] ile [/aviable] arasında kalan içeriği gösterecektir. Diğer sayfa yapılarında göstermeyecektir.
[aviable=*] de *'ın yerine yazının en altındaki sayfa yapılarının isimlerinin hepsini birden kullanabilirsiniz.
Ayrıca "içerik" olarak belirtilen bölüme bir yazı gelebileceği gibi html kodlar veya {custom ...}, {include ...} gibi ve bu yazıda geçen tüm etiketler konulabilir.
3) {include file="block.tpl"} etiketi ve özellikleri
"include" etiketi main.tpl içine istediğimiz bir tpl dosyasını çekip içidenkileri göstermeye yarar.
Tema düzenleme bölümünden yeni sol-sutun.tpl dosyası oluşturduğumuzda bu tpl dosyası içindeki html kodlarını site anasyafasında gösterebiliriz.
{include file="sol-sutun.tpl"}
Bu kodu site ansayfasında sol sütunun geleceği yre eklediğimizde sol-sutun.tpl içindeki kodlarımız site ana ve tüm sayfa yapılarında (yazının en altına bakınız) görünecektir.
Bu kullanım şekli main.tpl dosyasını daha kullanışlı bir hale getirir. Sol sütuna yerleştireceğimiz html kodlarında düzenleme yapmak için, içinde bir çok kod bulunan main.tpl ye bakmak yerine tema düzenleme bölümündeki sol-sutun.tpl bakarız.
4) [category=*] *** [/category] etiketi ve özellikleri
Bu etiketi main.tpl ye yerleştirdiğimizde site içinde kategori sayfaları ziyaret edildiğinde [category=*] ile [/category] içine yerleştirilen kodlar gösterilmektedir. Kategori sayfaları haricindeki diğer sayfa yapılarında çalışmamaktadır (yazının en altına bakınız).
[category=*] ile [/category] arasına html kodlar eklenebileceği gibi {custom ...}, {include ...} gibi kodlarda eklenebilir.
[category=1] içerik [/category]
Şeklinde kullandığımızda id'si 1 olan kategori sayfasında "içerik" görüntülenir.
[not-category=1] içerik [/not-category]
Şeklinde kullandığımızda id'si 1 dışında olan tüm kategori sayfalarında "içerik" görüntülenir.
[category=1,2] içerik [/category]
Şeklinde kullandığımızda id'si 1 ve 2 olan kategori sayfalarında "içerik" görüntülenir.
[not-category=1,2] içerik [/not-category]
Şeklinde kullandığımızda id'si 1 ve 2 dışında olan tüm kategori sayfalarında "içerik" görüntülenir.
[not-category=1,2,5-8] içerik [/not-category]
Şeklinde kullandığımızda id'si 1 ve 2 ve 5 ile 8 arasında kalan tüm kategori sayfalarında "içerik" görüntülenir.
5) [group=*] *** [/group] etiketi ve özellikleri
Dle yapısında kullanıcı grupları vardır. "Ziyaretçi", "Üye", "Editör", "Genel Editör", "Yönetici" grubları vardır ve bu grupların id'leri sıra ile 5, 4, 3, 2, 1 dir. Bu gruplara özel içerik göstermek için "group" etiketini kullanırız.
[group=5] içerik [/group]
Şeklinde bir kullanım ile id'si 5 olan (ziyaretçiler) gruba "içerik" gösterebiliriz. Mesela ziyaretçilere üye ol çağrısı göstermek olabilir. Dİğer grupların görmemsi için [group=5] Üye ol! [/group] kullanım idealdir.
[not-group=5] içerik [/not-group]
şeklinde bir kullanım id'si 5 olan (ziyaretçiler) grubu haricine içerik gösterebilirsiniz.
Yada moderatörlerinize bazı hatırlatmlar yapabilirsiniz.
[group=3] Yorumları kontrol etmeyi unutmayınız [/group]
gibi.
[group=4,5] içerik[/group]
şeklinde kullanım ise ziyaretçi ve normal üyelere içerik göstermeye yaramaktadır.
Bu etiket ayrıca dle sayfa yapılarının hepsinde çalışmaktadır (yazının en altına bakınız)
[group=*] ile [/group] içine {custom ...}, {include ...} gibi kodlarda eklenebilir.
6) [banner_*] {banner_*} [/banner_*] etiketi ve özellikleri
En işe yara etiketleriden birisi ise reklam etiketidir. Dle yönetici panelinden "Reklam Kontrolü" bölümünde bir reklam oluştruduğunuzda
[banner_rek1] {banner_rek1} [/banner_rek1]
gibi bir kod vardır sol tarafında bu kodu main.tpl'ye uygun bir yere yerleştirdiğinde reklamlarınız istediğiniz bölümde görüntülenir.
Reklam bir süre sonra durdurulması için ayar girdiyeseniz ve o zaman geldiğinde reklam kodunu yerleştridiğiniz alan boş görünecektir.
[banner_rek1] {banner_rek1} [/banner_rek1]
Bu kullanımda "rek1" yazan yerleri reklamı oluşturken reklama verdiğimiz isimlerdir.
Reklama "adsense250px" diye isim verdiyseniz kodunuz
[banner_adsense250px] {banner_adsense250px} [/banner_adsense250px]
Şeklinde olmalıdır.
Not: Yazı içinde bahsedilen dle ye özel sayfa yapılarının isimleri
global - tüm sitede
main - anasayfada
date - o tarihli sayfalarda
cat - kategorilerde
showfull - tüm yazıda
search - arama sayfalarında
userinfo - kullanıcı profili sayfalarında
register - kayıt sayfasında
stats - istatistik sayfasında
pm - özel mesaj sayfasında
feedback - iletişim sayfasında
favorites - kullanıcının favori haberler sayfalarında
addnews - yazı ekleme sayfasında
lastcomments - son yorumların sıralandığı sayfalarda
static - sabir sayfalarda
catalog - kataloglarda
alltags - tüm tagların buluğu sayfada
tags - herhangi bir etiket sayfasında
allnews - tüm haberler sayfalarında
newposts- yeni haberler sayfalarında
lastnews- son haberler sayfalarında
lostpassword- şifre hatırlatma sayfalarında
Konu ile alakalı kaynak için http://dle-news.ru/extras/online/startnews.html
Not 2: Bu kullanacağınız etiketler sonucunda istediğiniz içerikler istediğiniz şekilde ve yerde sitede görüntülenir. Ancak görüntülediğiniz yerlerde istediğiniz stilde ve görünümde görünmesini sağlayamıyorsanız html ve css konularındaki bilgi eksiklerinizi tamamlamalısınız. Html ve css konusunda bilginiz az ise bu etiketleri kullandığınızda istediğiniz tarza bir görünüm etmeniz zor olabilir.
Bilgilendirme
Yorum Ekleyebilmeniz için Sitemize Kayıt Olmanız Gerekmektedir.
Cevap Yazılmayan Konular
- Oluşturulan Kategoriyi Yazara Özgü
- Makale Eklerken Html İçerik Eklemek?
- Rss.tpl İçin İlave Alan Kullanımı
- Yorum Sabitleme
- Facebook Ve Google İle Giriş Yapanlar
- Dle 13.1 İçin Ajax Navigasyonu
- Kayıt Sayfasında Facebookla Kayıt
- Sunucuya Dosya Ekleniyor Ancak
- Tema Orta Kısım Genişliği
- Meta Keywords Hakkında Soru
Çözülmeyi Bekleyenler
- Kurulum Aşaması
- Oluşturulan Kategoriyi Yazara Özgü
- Dle De Logo Kırık Görünüyor Ve Resim
- Merhaba Dle Uzmanı Lazım
- Makale Eklerken Html İçerik Eklemek?
- Rss.tpl İçin İlave Alan Kullanımı
- Yorum Sabitleme
- Facebook Ve Google İle Giriş Yapanlar
- {views} Tagını Kullanmak
- Sunucuya Dosya Ekleniyor Ancak
- İzledim / İzleyeceğim Modülü
- Ana Sayfada Kategorideki Makale Sayısı
- Satılık Teknoloji Haber Teması İsteği
- Siteye Eklenen Makaleyi Otomatik
- Mesajlar Bölümünde Mesaj Gönderenin