MMCN.ORG

Joomla, iPhone, iPad, Teknoloji Blogu

iPTT Türkiye Kanal 109 Turkuaz

Cmt11022012

Son Güncelleme14:16:43

Geri Joomla Joomla Genel Kavramlarına Giriş

Joomla Genel Kavramlarına Giriş

Joomla içerik yönetim sistemi hakkında yazılmış olan makalelerimizde, henüz joomla'nın mantığını ve işleyişini tam olarak bilmeyen kullanıcılar haklı olarak bazı terimlere yabancılık çekiyor. Bu yabancılık kimi zaman insanlara neyi nasıl yapacaklarına, nerede hangi tür eklentiyi kullanacaklarına kadar varmasından dolayı bu terimlerin karşılıklarına ihtiyaç duyuluyor. Bunu genellikle özel mesajlar, blog'umuza yapılan yorumlar vasıtasıyla bizlere ileten arkadaşlarımıza karşı bir sorumluluk anlamında gördüğümüzden bu makalemizde joomla'da sıklıkla kullanılan terimlerin anlamlarına açıklık getirmeye çalışacağız. Bu konuya başlamadan önce bazı konuları kendimizi tekrar etmek adına ele almayacağız mesela joomla'nın ne olduğu gibi, o nedenle bu konu hakkında daha önce yazmış olduğumuz Joomla Nedir? Neden Joomla? konusuna da bakmanızı tavsiye ederim.

Joomla CMS

Joomla temel özellikleri itibariyle bir "İçerik Yönetim Sistemi" (CMS) dir. Bu sistemi bir bina olarak düşünürsek "Bileşen, modül, tema ve plugin" ler de bu binanın temelini oluşturan direkleridir diyebiliriz. Joomla'nın adının geçtiği hemen hemen her yerde bu kelimenin ardından gelen "CMS" kısaltması ile konumuza giriş yapalım. CMS genel bir terimin kısaltması olup, açılımı ise "Content Management System" türkçe karşılığı olarak da "İçerik Yönetim Sistemi" şeklinde açıklanabilir. Bu cümle türkçe anlamı itibariyle açıklanmaya pek ihtiyacı olmasa da yine de üzerinde durmakta yarar görüyoruz.

İçerik Yönetim Sistemi

İçerik yönetim sistemi adından da anlaşılacağı üzere websitemize ekleyeceğimiz ve projemizin hitap edeceği alana uygun olarak düzenlenen site içeriği ve bu içeriğin düzenlenmesi anlamında kullanılır. İçerik yönetimi'de aslolan eklenecek olan yazı, dosya, resim vb. materyallerin çok hızlı ve pratik bir biçimde eklenmesi, aynı zamanda içerik miktarına bağlı olarak ortaya çıkabilecek karmaşanın önüne geçmesi açısından da hiyerarşik bir şekilde düzenlenmesini gerektirir. Joomla vb. içerik yönetim sistemleri de bu amaç doğrultusunda genel olarak farklı farklı fonksiyonları bir arada kullanırken her hangi bir karışıklığa mahal vermeksizin sitemizde yayınlamak istediğimiz yazılar ve buna bağlı diğer materyalleri farklı fonksiyonlar altında toplar. Örneğin, sitemize eklemek istediğimiz içerikleri türlerine göre bölümlere ayrımak, bu bölümler altında değişik kategoriler içinde içeriklerin dağılımını sağlamak gibi işlevleri bir düzen içinde yapmamıza olanak tanır. Ayrıca içeriklerimizde kullanılacak olan resim, ses ve görüntü dosyalarını ayrı bir yönetim alanı olan Medya Yöneticisi (media manager) kısmından yönetebildiğimiz gibi. Joomla gibiiçerik yönetim sistemlerinin temel amacı, kodlama bilgisi olmaksızın insalara website yapımı konusunda istenen alt yapıyı sunmak, kullanıcıya ise ilk başta sadece sitesinden yayınlayacağı içerikler, resimler ve ses dosyalarını düzenli bir şekilde ekleyerek bunlar vasıtasıyla bir website sahibi olmalarını sağlamaktır. Bu süreçte kullanıcıya düşen sadece içeriklerin temini, nerede ve nasıl yayınlamak istediği gibi herkesin kolaylıkla yapacağı işlemlerdir. tabi kullanıcılar joomla mantığını anladıkça sitelerini geliştirmek adına veya görsellik anlamında değişiklikler yapmak için araştırmaya girerler. İşte bu araştırmalar kullanıcıları yeni terimlerle karşılaştırır, şimdi isterseniz bu terimlere ve anlamlarına bakalım.

Bileşen

Bileşenler, joomla'nın temel çekirdek kodlarını (framework) kullanmak suretiyle amaca uygun olarak üretilmiş olan büyüklü, küçüklü kod parçacıklarının bir araya gelerek oluşturdukları dosya yahut dosyalar bütünün adıdır. Genellikle bu tip dosya yahut dosyalar bütününe webmaster'ların tanımlaması ile "Script" de denir. Dolayısıyla bu scriptler joomla'nın ilk yüklemesinde, varsayılan olarak gelmeyen, joomlanın çıplak kurulumunda bulunmayan özellikleri joomla içerik yönetim sistemine kazandırmaya yarayan en çok karşılaşılan kavramdır. Örneğin, bir emlak sitesi yapmak istiyorsunuz ancak joomla'nın içerik yönetimi anlamında size hitap edebileceği alan sadece bu projenize ait açıklama, site tanımı, kurumsal bilgilendirme vb. alanlarında gerekecek. Halbuki kiralık yahut satılık evleri site ziyaretçilerinize belli şablonlarda sunmak, tam anlamı ile sanal bir emlakçı meydana getirebilmek imkanı çok zor olacaktır. Bunun için ek fonksiyonlara hatta bire bir bu iş için tasarlanmış olan özellikleri barındıran eklentilere sahip olma ihtiyacı doğacaktır. başta da dediğimiz gibi joomla gibi sistemler henüz kodlama bilgisi olmayan insanlara website yapımında yardımcı olmaktı, doğal olarak bir emlak sitesinde lazım olabilecek bir çok özelliği PHP bilgisi olmayan insanlar oluşturamayacaklardı. Burada imdadımıza hemen bileşen dediğimiz scriptler yardımımıza koşacak ve joomla'da varolan bir emlak bileşenini sitemize yükleyerek bu bileşe üzerinden emlak sitesi projemizi şekillendirebileceğiz. Bu tanımlama itibariyle bileşenler bize ek fonksiyonlar, farklı işlevler kazandıran ve türüne göre de joomla'yı bir anda farklı farklı projelerde kullanılan bir araç haline getiren eklentilerin ortak adıdır. Bununla beraber her bileşen tek olarak kullanılabileceği gibi farklı farklı bileşenler bir arada olarak da tek çatı altında toplanıp adına da Portal denilen (mynet vb. özelliklerdeki websiteleri gibi) tarzda website çalışmaları yapmamıza olanak tanırlar. Bileşenler bazen tek başına bazen de yanında gelen ve ismine "Modül" denen eklentileri de barındırabilirler, şimdi bu kavram üzerinde duralım.

Modül

Modüller temel anlamda bileşen tanımı içine girebilecek eklenti türünün ortak adıdır. Onlarda çeşitli fonksiyonları barındıran kod kümelerinden oluşmuş ve dosya yahut dosyalar haline getirilmiş küçük scriptlerden oluşurlar. Joomla açısından bakınca, modüller genel olarak ya temel joomla sisteminin bazı fonksiyonlarını yahut bağlı olduğu bileşenlerden aldığı özellikleri sitemizde göstermeye yarar. Bu özellikler çok çeşitlilik arzedebilir, mesela sitemize üyelerin giriş yapabileceği bir fonksiyon koymak isteyebileceğimiz gibi. İsterseniz modül kavramını daha iyi açıklayabilmemiz için bir sonraki konu içinde devamen modül kavramına değinelim. Çünkü modülleri açıklarken "Tema" yahut bir diğer ismi ile "Şablon" kavramı, modül kavramı ile ilişkili olması itibariyle beraber ele alınırsa daha açıklayıcı olacağı kanaatindeyim.

Tema (Şablon)

Joomla'nın, websitemize ait kullanıcı arayüzü ve bu arayüzün barındırdığı ana resimler, yazı fontları, sayfamızın şekli, düzeni vb. tüm özelliklerini barındıran görünen yüzüdür. Joomla'yı bir insan olarak tanımlarsak eğer, tema da joomla'nın elbisesidir. Nasıl ki her elbise insanı diğer insanlara karşı farklı farklı göstermeye yarıyor ve hangi işlevleri görüyorsa temalar da joomla da temel anlamda bu işlevi görür. Sanırım bu tabirler olayı özetlemeye yetmiştir ki temalar yapısı itibaritle bir çok özelliği beraberinde getirir ve kimi zaman sadece görünümle de yetinmez aynı zamanda site ziyaretçilerimize kolaylık sağlayan özellikleri de barındırabilir. Joomla temaları temel olarak resim (image), stil (CSS) ve yerine göre de özel fonksiyon kodlarını barındıran dosyaların bulunduğu farklı klasörleri barındırırlar. Bazen elbisenin dışında, bu elbise üzerinde kullanılacak aksesuarların da lazım olabildiği gibi. Bu aksesuarlar elbisenin gelişi güzel her yerine değil de uygun yerlerine takılmalıdırlar. O zaman elbisemizde bu aksesuarların takılacağı özel alanlar bulunması daha doğru olur. Mesela, ceketimizin göğüs kısmına bir mendil koyacaksak eğer, öncelikle bir ceb'in olması gerektiği gibi :) Nasıl ki ceb'in buradaki görevi mendili taşımak ve bunu göstermek ise, temamızda yer alan modül alanı da modülümüzü yayınlamak için gereklidir. Uygun pozisyonlarda uygun işlevlere ait modüller temamızın önceden tanımlanmış olan modül alanlarında gösterilir ve bu modüller kendine yüklenmiş olan görevleri yerine getirirler. Mesela kullanıcıların sitemize kayıt olabilecekleri veya kayıtlı olanların giriş yapabilecekleri üye giriş modülü gibi. Temadaki modül alanları daha çok bu temayı üretenler tarafından eklenmiş olan alanlardır ve bunun açıklaması çok teknik bir konu olacağından biz burada sadece vasıfları itibariyle tanımlamakla yetineceğiz.

Plugin (Uyumlu Ek)

Joomla içerik yönetim sisteminin temelini oluşturan kavramların sonuncusu "Plugin" olarak tanımlanan, genel özelliği bakımından bileşen ve modüller ile benzeşen fonksiyonu tanımlar. Genellikle plugin'ler bileşenler gibi çok detaylı işlevleri barındırmamakla beraber sadece belli görevler için kodlanmış özel eklentilerdir. Mesela, sitenizde üyelerinizin içeriklere yorum yapabilmesini sağlayan bir "yorum bileşeni" vardır. Bu yorum bileşeninin içeriklerinizin hemen altında yer almasını sağlamak gerekir ki kullanıcılar bu fonksiyonu kullansın. Yorum bileşeninin çalışma prensiplerine uygun, özel olarak yazılmış php kodlarını barındıran ve görevinin içeriklerin altında yorum girilebilmesini, varolan yorumların gösterilmesini sağlayabilecek olan bir eklentiye ihtiyaç duyulur. Burada plugin tam da bizim ihtiyacımızı görecek olan eklenti türüdür. Buraya kadar anlatılanlar bir bütün olarak düşünüldüğünde bileşenler, modüller ve pluginler joomla çekirdek kod yapısına uygun ve bu yapıya has php kodlama teknikleri kullanılarak hazırlanan özel amaçlı scriptlerdir. İsimlerinin farklı farklı olması joomlanın temel yapısı ile, kullanım alanları ile alakalıdır, yoksa hepsinin temel bir amacı vardır; "Joomla'nın mevcut sistemine ek, farklı fonksiyonları eklemektir." Bileşen, modül ve pluginler tek başına kullanılabilecekleri gibi gereklilik bakımından hepsi tek bir amacın kolları olarak tek bir özelliğe yönelik olabilirler. Sizlere elimizden geldiği ve dilimizin de döndüğünce en temel joomla kavramlarını açıklamaya çalıştık. Şüphesiz ki Joomla bir web sistemidir, joomla'yı anlamak için bazı web yazılım dillerine az da olsa vakıf olmak hem bu sistemi hem de barındırdığı fonksiyonları anlamak bakımından gereklidir. O zaman kendi içinde bazı terimlerin de barındırdığı anlamları sadece kelime anlamında değil işlev açısından da daha rahat anlama imkanına kavuşmuş olacaksınız. Burada her detayı anlatma imkanı hak vereceğiniz gibi mümkün değil, bu nedenle sizlere düşen kendinizi web yazılım dillerinden, en azından joomlanın temeli olan PHP dili konusunda geliştirmenizdir. O zaman yukarıda açıklamaya çalıştığımız bir çok kapalı gibi gelen meselenin de ne kadar açık oldukları daha rahat anlaşılacaktır. Eğer yine de bazı takıldığınız yerler olursa da aşağıdaki yorum kısmını kullanarak bizlere konu hakkında soru sorabilirsiniz. Makalemizin başlığından da anlayabileceğiniz gibi Joomla da sıklıkla kullanılan kavramları ele almaya devam edeceğiz. En temel kavramları en uzun açıklanması gerektiği sırasıyla ele aldık, bundan sonraki kavramlar bir sözlük niteliğinde kısa kısa değinilecek terimler olacaktır.

0 Yorum

Üye olmayan ziyaretçilerin yorumları yönetim tarafından kontrol edildikten sonra yayınlanır.