Pek çok web sitesi kurucuları, MODX CMS'den uzaklaşırlar, çünkü öncelikle PHP ve JavaScript kodlamada yetenekli olan geliştiriciler için olduğunu düşünürler (veya duymuşlardır).

MODX, yetenekli kodlayıcıların kullanması için güçlü bileşenlere sahip olsa da, daha az teknoloji meraklı tasarımcılara da birçok avantaj var. Bunların en önemlisi, MODX'in sağladığı yaratıcı özgürlüktür. Web sitenizi kolayca istediğiniz şekilde ve taviz vermeden görmenizi sağlar.

MODX, diğer CMS platformlarının yaratıcı sınırlamalarından bıkan web programcıları tarafından geliştirilmiştir. Bir web sitesinin nasıl inşa edileceğine dair fikirleri olan ve çalışacakları yerlere yerleştirecekleri sistemlerde çalışmak zorunda kalmaktan nefret ettiler.

Ayrıca, bir web sitesinin içeriğini, bu içeriği sunan koddan ayırmak için daha iyi bir iş yapmak istemişlerdir - bu, web sitelerini yeniden tasarlamayı ve sürdürmeyi çok daha kolay hale getiren bir uygulamadır.

Şablonlar

MODX'in “ilk prensibi” olarak adlandırılabilecek şey, mümkün olduğunda, site tasarımcısının istediği her şeyi yapmasını ve kolayca yapmasını sağlamaktır. Bu yaratıcı özgürlüğün merkezinde MODX şablonları ve MODX etiketleri vardır.

Bir MODX şablonu, HTML kodunun (isteğe bağlı olarak MODX etiketleri ve JavaScript) bir sayfasından başka bir şey değildir. CMS olmayan bir sitede bir sayfa seçebilir ve bu sayfa için HTML kodunu MODX şablonuna yapıştırabilir, herhangi bir CSS dosyasının URL'lerini ayarlayabilir ve ardından MODX'e bu şablonu belirli bir belgeyi sitede gösterdiğinde kullanmasını söyleyebilirsiniz. Bu 5 dakikadan daha az zaman alır ve MODX sayfasını görüntülediğinizde, orijinal sitede olduğu gibi tam olarak aynı görünürdü. Tek kısıtlama, sayfada herhangi bir PHP koduna sahip olamamanızdır (daha sonra bunun üzerine).

Tüm bir sayfanın kodunu bir şablona yapıştırmak, MODX'in güçlü özelliklerinin çoğunu görmezden gelir, ancak MODX web sitelerini oluştururken ne kadar özgür olduğunuzu gösterir.

Etiketler

MODX'in ana gücü MODX etiketlerinden geliyor. Esasen, MODX etiketleri, şablondan çıkıp kolaylık sağlamak ve esneklik sağlamak için başka bir yere koyduğunuz şeyleri temsil eder. Şablonda kalanlar genellikle HTML kabuğu ve MODX etiketleridir.

MODX motorunun temel çalışması inanılmaz derecede basit. Bir tarayıcı tarafından bir web sayfası istendiğinde, MODX bu sayfa ile hangi şablonun ilişkilendirildiğini kontrol eder. Şablonu alır, şablondaki tüm MODX etiketlerini değiştirir ve tarayıcıya gönderir. Bu kadar.

MODX'te dinamik, yaratıcı bir web sitesine sahip olma yeteneği, etiketlerin neler gösterebileceğinden kaynaklanmaktadır. Birkaç çeşit etiket vardır ve her biri farklı bir şeyle değiştirilir. Tüm etiketler isteğe bağlıdır ve herhangi bir etiket şablonda herhangi bir yere gidebilir. “Chunk” etiketi olarak adlandırılanları içeren basit bir örneğe bakalım.

Not: Buradaki örnekler MODX Devrimi içindir. MODX Evolution biraz farklı bir etiket stili kullanır, ancak kavramlar aynıdır.

MODX'te, bir “yığın”, birden fazla sayfada kullanmak istediğiniz bir HTML kodudur. Bir başlık, altbilgi, kenar çubuğu, menü veya başka bir şey olabilir. Her sayfada (veya sayfalarınızın bazı alt kümelerinde) göstermek istediğiniz bir altbilgi olduğunu varsayalım. MODX Manager'da öbek oluşturursunuz, altbilgi için HTML kodunu yazınız, ona bir isim verin (FooterChunk) ve sonra kaydedin. Şimdi, şablonunuzda, o altbilginin görünmesini istediğiniz yere aşağıdaki etiketi yerleştirdiniz:

[[$FooterChunk]]

Bu şablonu kullanan her sayfa, altbilgiyi o konumda gösterir. Altbilginin metnini veya HTML'sini değiştirmeye karar verirseniz, sadece FooterChunk dosyasını düzenlersiniz ve yeni sürüm tüm sayfalarınızda görünecektir. Altbilgiyi sayfada başka bir yerde istiyorsanız, etiketi yalnızca şablonda taşıyabilirsiniz.

MODX'te bir başka tür etiket “kaynak içerik” etiketidir (kısaca “içerik” etiketi olarak adlandırılır). MODX'te, her bir web sayfası MODX veritabanında saklanan bir belgeye karşılık gelir. Bir MODX web sitesi için yeni bir sayfa oluşturduğunuzda, belge hakkında bilgi girebileceğiniz bir form sunulur.

Bir Başlık, Uzun Başlık, Açıklama, Özet, Alias ​​(URL'de kullanılacak), İçerik (sayfanın ana içeriği) ve Menü Başlığı (otomatik olarak menülerde kullanılır) için metin giriş alanları vardır. Belgenin yayınlandığını ve menülerden gizlenip gizlenmeyeceğini belirten onay kutuları vardır.

Gelecekteki yayın veya yayınlanma tarihlerini ve belgenin yayınlandığı tarihi gösteren tarih alanları da vardır.

Başka alanlar da var, ama yine MODX'in esnekliğini görüyoruz - Başlık ve Alias ​​dışındaki tüm alanlar isteğe bağlı! Her sayfanın bir başlığı ve sayfanın URL'sine koyması gereken bir şey olmalı, ancak diğer alanları kullanıp kullanmamanız tamamen size kalmış. Diğer alanlara gidenler de büyük ölçüde size kalmış. Hemen hemen sayfanın ana içeriğini içerik alanına koymak istersiniz, ancak zorunda değilsiniz. Sayfada profilli kullanıcının astrolojik işaretini saklamak için Uzun Başlık alanını kullanmak istiyorsanız hemen devam edin.

“İçerik” etiketlerine geri dönmek için formun alanlarını temsil ederler. MODX bir içerik etiketi gördüğünde, onu, adlandırılan form alanının değeri ile değiştirir. Sayfanın ana içeriğinin görünmesini istediğiniz yerde, örneğin, bu etiketi şablona yerleştirdiniz:

[[*content]]

Sayfanın Uzun Başlığının görünmesini istediğinizde (isterseniz), bu etiketi koyarsınız:

[[*longtitle]]

Ana başlık için bu etiketi kullanacaksınız:

[[*pagetitle]]

Başlık veya Uzun Başlığın başka bir yerde görünmesini istediğinize karar verirseniz, etiketleri yalnızca şablonunuzda taşırsınız. Uzun Başlığı göstermek istemiyorsanız, etiketi şablonunuzdan kaldırırsınız. Uzun başlıkta sayfa altbilgisinde görünmesini istiyorsanız, etiketini daha önce bahsettiğimiz FooterChunk'e taşıyabilirsiniz. Muhtemelen bir örnek kullanmak için, yolun URL'sini, sayfa için kullanmak istediğiniz CSS dosyasına Uzun Başlık alanına koyabilirsiniz ve bu etiketi şablonunuzun baş bölümüne koyabilirsiniz:

Etiketler söz konusu olduğunda MODX çok basittir. Bir MODX etiketi gördüğünde, onu temsil ettiği ile değiştirir. Ne olduğu ya da onu neden koyduğun umurunda değil. Ne istediğini bildiğini ve buna göre hareket ettiğini varsayar. MODX'in ne istediğini ya da neyi istediğinizi yapmadığını anlamaya çalışmak zor değil çünkü sadece söylediklerinizi yapıyor. Güven bana, istediğinden daha fazlasını bildiğini düşünen bir CMS ile uğraşmaktan hoşlanmam ya da şeylerin nasıl gösterilmesi gerektiği veya nerede bulunmaları gerektiğine dair önyargılı fikirleri var.

Parçacıklar

Makalede daha önce PHP kodundan bahsetmiştim. MODX'te PHP kodu, sitede kullanmak istediğiniz PHP kodunun sadece bir kısmı olan bir snippet'e gider. MODX bir snippet etiketi bulduğunda, pasajdan ne döndürülürse onu değiştirir. PHP kodlarını snippet'lere yerleştirmek, sitenin içeriği daha güvenli ve daha kolay hale getirir, çünkü kod içerikten ayrılır. Bir korsan, sitenize kötü amaçlı PHP kodu içeren bir sayfa koymayı başarabilirse, bir snippet'te olmadığı için MODX kodu göz ardı eder.

Eğer bir PHP kodlayıcısı değilseniz, yine de snippet etiketlerini kullanmaya devam edeceksiniz çünkü MODX eklenti bileşenleri (genellikle MODX'te “extras” olarak adlandırılır) vardır, bu da sitenizde çok fazla ağır yükü kaldıracaktır.

Wayfinder snippet'i, örneğin, sitenizdeki dokümanlardan bir menü üretecektir. Yeni bir sayfa oluşturursanız, menüde otomatik olarak görünür. En basit haliyle, menünün görünmesini istediğiniz yere benzer bir etiket koyun:

[[Wayfinder]]

MODX, bu etiketi sitenizdeki tüm sayfaların bir menüsü ile değiştirir. Varsayılan olarak, Wayfinder menü seçeneklerini sıralanmamış bir listede bağlantılar olarak görüntüler, ancak istediğiniz herhangi bir menüyü oluşturmak için bunu yapılandırabilirsiniz. Açılır menü menüleri, yatay menüler, dikey menüler, balık gözü menüleri, megamenus, Tümü Wayfinder ile üretilen açılır menüler ve hatta dairesel menüler. Aslında Wayfinder ile üretilemeyen bir menü görmedim.

Ayrıca, menülerinizi sitenizin yalnızca bir bölümünden göstermek için Wayfinder'ı kullanabilir ve aynı sayfada birden fazla Wayfinder menüsüne sahip olabilirsiniz. Daha önce bahsettiğimiz “Menülerden Gizle” ve “Yayınlanan” onay kutularını hatırlıyor musunuz? Wayfinder, bildirmediğiniz sürece yayınlanmamış veya gizli sayfaları göstermez.

Sık kullanılan başka bir snippet, getResources'dir. GetResources snippet'i, sitenizdeki doküman seçimini gösterecek, ancak istediğiniz gibi biçimlendirilmiş (tabii ki MODX etiketlerini kullanarak), sıralı, seçili ve görüntülenmesini istediğiniz gibi gösterecektir. Genelde getResources kullanımı, sitede bulunan ve her biri bir belgenin tam bağlantısı olan beş veya on en son oluşturulan belgenin başlığını ve özetini göstermek olacaktır.

Hem Wayfinder hem de getResources, biçimlendirilmeleri için parçaları kullanır (bu tür bir parça MODX'te bir Tpl öbeği olarak adlandırılır) HTML kodu ve gösterilecek çeşitli öğeler için MODX etiketleri içerir. Eğer çıktılarının formatını veya içeriğini değiştirmek istiyorsanız, Tpl parçalarını düzenleyebilirsiniz (veya kendinizinkini yaratabilirsiniz).

MODX ile Bloglama

Bir kerede, MODX'te (birçok insan için kesin bir dezavantaj) bir blog yaratmak biraz zordu. Ancak şimdi, Ekstra makaleler, kullanımı ve konfigürasyonu kolay MODX için tam özellikli bir blog bileşenidir. Makalelerin yorum, etiket, denetleme, konuyla ilgili tartışmalar ve blogunuz için isteyebileceğiniz diğer her şey vardır. Bu da MODX'i WordPress'e çekici bir alternatif haline getirir.

Sonuç olarak

Bu makale MODX'in yüzeyini zorlukla çizmiştir. Umarım MODX ile ilgili iştahınızı duydum ve kafanızda bulunan web sitesini oluştururken size ne kadar özgürlük verdiğinizi biraz gösterdim. MODX olmayan bir sitenin MODX'e taşınması şaşırtıcı derecede kolaydır. Sürecin kısa bir açıklaması için bkz. bu sayfa .

Eğer bir web tasarımcısıysanız ve sitenizin tam istediğiniz gibi görünmesini sağlayan yaratıcı özgürlüğü sağlayan bir CMS istiyorsanız, MODX'i kesinlikle denemelisiniz.