Joomla Temalara Ajax Ekleme, Joomla Dersleri

Merhaba sevgili arkadaşlar.
Bu dersimizde sanırım birçok joomlacı arkadaşın kafasına takılan ve bazen içinden çıkılmaacak bir hal alan joomla temaların görselliğine paralel bir sorunu ele almaya çalışacağım . Hemen hemen her joomlacı arkadaşın başına gelmiştir diye düşünüyorum diyelimki bir ücretsiz tema buldunuz ve kendi zevkinize göre bu temayı editlediniz fakat web 2.0 özelliklerinin’de sitenizde bulunmasını istiyorsunuz web 2.0 deyince benim aklıma ilk etap’da Ajax geliyor. Peki nedir bu Ajax , Ajax = Asynchronous JavaScript and XML yani
Asynchronous(yani ayni anda) çeşidindeki server ile browser arasındaki bilgi alışverişini sağlayan bir özellik’dir , Ajax’in en büyük özelligi HTML sayfa içerisinde sorulan sorulara sayfayı tekrar aktüalize etmeden cevap verebilmesidir buda sayfanızda ki ziyaretçilerin sorunsuz , sıkıntısız ve en önemlisi beklemeden istedikleri verilere ulaşması anlamına gelir.

Buraya kadar azda olsa sizlere Ajax’i anlatmaya çalıştım şimdi dilerseniz Ajax’i joomla sayfamıza nasıl entegre edebileceğimizi inceleyelim .

Bunun için bize gerekli olanlar:

  1. HTML editör
  2. Localserver yada webserver
  3. Grafik düzenleme programı
  4. Beğendimiz bir tema
  5. Beğendimiz bir ajax script

Bu derste yapmaya çalışacağımız sitemize gelen ziyaretçilerimize açılır kapanır bir panel yardımı ile sitemizden son haberleri iletmek olacak.

Tema olarak siteground’in 74 no’lu temasını seçtim nedeni ise bu tema’da web 2.0 özelliklerinin kullanılmamış olması .

Image template thumb

Temamızı editlemek için dilerseniz yerel sunucuya kuralım bu işlem bittikten sonra index.php ve template_css.css’i açarak kullanmak istediğimiz tema hakkında biraz inceleme yapmak pek de fena bir fikir olmaz .

Sizlerin de kullanmak istediğiniz temayı incelediğinizden yola çıkarak devam etmek istiyorum.

Su anda bize gerekli olan panelimize web 2.0 özelliğini verecek olan script ben bu iş için mootools sayfasında http://demos.mootools.net/Fx.Slide fx.slide scriptini uygun görüyorum siz aramaya devam edip daha ilginç uygulamalar bulabilirsiniz .

Mootools.svn.js (kütüphanemiz)

Şimdi bize gerekli olan bir fikir, panelimizi nereye koyabiliriz ben içerik bölümünün hemen üstünü uygun görüyorum alttaki resime bakarak nereyi kastettiğimi daha iyi anlayabilirsiniz.

Şimdi dilerseniz yavaş yavaş script entegremize başlayalım .

Normal HTML çalışmalarında scriptlerimizi sayfalarımıza eklerken alttaki kodu <head> ile </head> taglari arasına ekliyoruz.

bu sistem joomlada biraz değişiyor çünkü joomla bir içerik yönetim sistemi ve karmaşık bir dizin sistemi var aslında prensip aynı fakat dizin adresleri değişik aşağıdaki gibi.

dikkat ederseniz script’e giden yol üzerinde js/ adlı bir klasör olusturduk bu klasör’ü joomla dizininde temamızın klasörünün içinede aynı şekilde olusturmalıyız (örnek: joomla => templates => tema klasörü => js.) ve oluşturduğumuz bu klasör içine mootools kütüphanemizi atmamız gerekli (mootools.svn.js) .

Bütün bu yaptıklarımızdan sonra , şimdi index.php içinde scriptimize giden yolu yukarıdaki örnekteki gibi belirtelim .

Index.php’de 19.satıra şu kodları ekliyoruz.

Şimdi yapmamız gereken temamızın içerisinde bir panel oluşturmak ve bu panelin içerisine son haberlerimizi gösteren modülü yerleştirmek .

Panelimizin adı panel olsun yani <div id=”panel”> </div>
Panelimizi content taginin hemen altina 43. satira yerleştirelim aşagıdaki gibi,

ve template_css.css dosyamızı açarak panel tagimizin emirlerini verelim.

genişlik bir üst div tagi ile (#content) aynı olsun dedik ve arka plan rengi #cccccc olsun daha sonra bu renk istedigimiz şekilde değiştirile biliriz.(önemsiz bir öğe)

Şimdi sıra geldi panelimizin içine koyacağımız module bu modulun adı’da son_haber olsun
Yani <div id=”son_haber></div>

Şimdi görünüm olarak önümüzde şöyle bir kodlama var

ve son olarak’da joomlanın latest news modülünün kodlarını son_haber taginin içine yerleştirelim

şimdi sayfadaki görünüm söyle olmalı ;

user1 ‚den sonra -3 yazdık çünkü sayfanın kendi modul yapısını kullanmak istiyoruz.

şimdi rahatsızlık veren tek durum sanırım modülün başlıgı sona kadar vertikal bir şekilde devam etmiyor biz bunu aşağidaki gibi değiştirebiliriz,

background grafiği olan h3.jpg’yi repeat-x olarak vertikal tekrarlattık.

ama siz bunun yerine kendi grafiğinizi kullanabilirsiniz.

Şimdi sıra geldi paneli saklamaya ve bir button yardımı ile çağırmaya.

İlk önce butonumuzu herhangi bir grafik programı ile oluşturalım ben bu iş için macromedia fireworks kullandım ve şoyle bir button oluşturdum;

şimdi bu oluşturduğumuz butonuda index.php içine yerleştirelim.

Yalnız yerleştirmeden önce tema içinde bir küçük düzeltme yapalım ve devam edelim temayı yapan kişi wrapper kısmını yani header’i içerikten 8px ayırmıs biz bunu istemiyoruz cünkü butonumuzun header ile birleşik olması için aşağıdaki kodları template_css.css içinde bulalım ve padding kısmındaki 8px’lik ayırımı 0px yapalım …

şimdi butonumuzu index.php içine yerleştirebiliriz butonumuzun ismi <div id=”buton”> </div> olsun .

ve bu kodu hemen panelimizin altına ;

şu şekilde <div align=”center”>ortalayarak</div> yerleştirelim aşağıdaki gibi;

ve sonrasında hemen css kodlarımız’a donelim,

css ile alakalı kodlarımızı’da template_css.css dosyamıza ekledikten sonra elimizdeki görüntü şu şekilde olmalı.

şimdi önceden eklediğimiz scriptimizi artık calıştıralım bunun için mootools sayfasındaki fx.slide kodlarından yararlanacagiz. http://demos.mootools.net/Fx.Slide

eklememiz gereken kodumuz aşağıdaki gibi; bu kodu <head> ile </head> taglari arasına yerleştirmemiz gerekiyor.

var mySlide = new Fx.Slide(‘panel’); bu kısma panel dedik çünkü açılır kapanır elementimiz panel olacak.

mySlide.hide(); buraya “hide” dedik çünkü panel sayfa ilk yüklendiğinde görünmesin istiyoruz.

Ve bu kodu’da ekledikten sonra panelimizin ortadan kaybolması gerekli aşağıdaki gibi;

şimdi sırada paneli açmamızı sağlayan kod gerekli aşağıdaki gibi;

bu kodu butonumuza entegre edecegiz,

evet hepsi bu kadar arkadaşlar umarım sizler de evlerinizde pc başında bu anlattıklarımı tekrarlar ve başarılı bir şekilde sayfalarınıza web 2.0 nin getirdiği güzellikleri katarsınız.

Saglik mutluluk ve esenlikle kalin.

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注