Review eZ Publish CMS

Sudah 2 bulan ini saya berkutat dengan CMS eZ Publish ini. CMS ini free, sama seperti Drupal, WordPress ataupun Joomla. Bedanya karena tidak berbasis pengembangan oleh komunitas, dokumentasi terkait relatif sulit didapatkan.

Beberapa perbedaan eZ Publish dengan CMS opensource lainnya :

  1. Dikembangkan oleh perusahaan (eZ Systems AS, berbasis di Norwegia)
  2. Extension (modul/plugin) yang masuk ke situs resmi eZ direview dulu dengan ketat oleh eZ Systems. Jadi tidak semua extension kiriman dari komunitas otomatis di approve dan masuk situs resmi mereka.
  3. Fitur yang disediakan secara default sangat banyak (Custom Field *sejenis CCK kalau di Drupal*, Polling, Newsletter, Multiple Site, Single sign on, dll).
  4. Secara default memang bisa digunakan sebagai satu CMS untuk beberapa situs. Tapi arti satu CMS disini tidak cuma scriptnya. Jadi bukan cuma satu script untuk beberapa situs sekaligus, melainkan satu CMS itu secara sistem bisa mencakup beberapa situs sekaligus.
  5. Secara default support multiple database (*mmm.. database cluster kali ya istilahnya).
  6. Secara default Cache nya aktif.. *ehm.. super duper aktif malah gan..!
  7. Banyak konfigurasi yang disimpan tidak di database, melainkan di file INI.
  8. Templating menggunakan *bahasa* sendiri, yang mirip – mirip Smarty.
  9. Secara default ada fitur *social network* (saya belum telusuri lebih jauh, tapi setahu saya sangat basic)
  10. Advance user access limitation
  11. Secara default menyediakan fitur Drafting dan Versioning content
  12. Fitur RSS Import tersedia secara default
  13. Semua konten adalah node.. (bahkan user dan kategori *dalam eZ istilahnya Folder* pun adalah node)
  14. Fitur auto resize image sesuai konfigurasinya sangat membantu (Berbahagialah jika anda menggunakan Linux, ImageMagick adalah kuncinya disini)
  15. Menyatakan diri sebagai CMS yang enterprise.. *bagi saya Drupal dan WordPress sih enterprise juga…, apalagi sangat banyak situs besar yang menggunakan kedua CMS ini (eZ Publish justru sangat jauh jika dibanding kedua CMS itu)

Yang saya rasa kurang pas :

Demi kemudahan manajemen sistem, fitur custom field secara default tersedia. Tapi tidak seperti Drupal yang CCK nya menggenerate table baru, eZ Publish memasukkannya dalam field – field di table MySQL. Akibatnya, setiap query content melakukan query SQL yang cukup berat, karena JOIN query berlapis – lapis yang dihasilkan.

Misalkan saja, kita punya tipe content Berita. Dan kita buat custom fields ini : Judul, Sub Judul, Summary, Body, Lokasi, Video, Thumbnail, Tag, Publish Date. Dan beberapa custom fields spesifik (checkbox) : Enable Comment, Show as Flash News.

Jika kita ingin menampilkan suatu detail artikel berita, tentunya semua field diatas diperlukan. Jadi wajar kalau semua field tersebut di-query. Tapi ada kalanya kita hanya ingin menampilkan list 5 berita terbaru di sidebar. Yang kita butuhkan paling hanya  Judul, dan Link nya. Tapi dengan API (?) yang tersedia, kita tidak bisa memanggil hanya Judul dan Link nya saja. Tapi semua field diatas ikut diambil.

Jadi bayangkan saja jika di satu halaman web seperti halaman depan Kompas.com ditampilkan. _Setiap_ Judul berita yang anda lihat itu adalah hasil dari JOIN query berlapis yang mengambil semua field nya. Itu masih ditambah lagi dengan field yang pasti ada dari setiap node (owner, publish date, version, dst..)

Ya, mungkin karena itu eZ Publish menyediakan fasilitas Cache secara default, bahkan sangat agresif.

Ah iya.. dokumentasi..! Karena memang CMS ini tidak begitu popular, seringkali sulit menemukan dokumentasi terkait.

Yang saya rasa asyik :

Development relatif mudah (untuk kebutuhan standar). Walaupun agak tricky. Terutama dibagian template. Seringkali saya menemui kasus yang dengan sebaris PHP bisa diselesaikan, tapi berhubung fungsi tersebut tidak tersedia di template, harus diakali dengan cara lain.

Fitur custom module nya cukup asyik “dimainkan”. 😛

Kesimpulan

Jadi, kesimpulan saya sejauh ini, situs ini cocok untuk website yang model portal informasi, media, atau publishing. Enak memang managementnya. Dan developmentnya pun cukup mudah. Tapi sepertinya fiturnya yang sangat banyak itu menjadi tidak terpakai ketika permintaan customize sebuah website semakin tinggi. Apalagi di era ke depan, web application, termasuk keterlibatan API lintas webservice akan semakin umum dibutuhkan.

[Catatan]

Mungkin ada beberapa poin yang saya tulis tidak benar, jika ada yang tahu tinggalin komentar ya, saya juga masih mencari tahu soalnya.

** eZ Publish di pagi hari, CakePHP di malam hari **

13 Comments

  • At 2009.12.03 08:16, bakulrujak said:

    malem hari cakePHP ya ?
    terus kapan begituan*)nya ?

    (* begituan = tidur 😀

    • At 2009.12.03 19:10, Okto Silaban said:

      Ah.. bisa diatur itu bos.. 😀
      *ide theme blog nya boleh tuh.. Ha..ha..

    • At 2009.12.03 09:14, rara said:

      saya denger ez publish boros resource. apakah benar? apakah penyebabnya kalimat anda yang ini? “setiap query content melakukan query SQL yang cukup berat, karena JOIN query berlapis – lapis yang dihasilkan” sehingga kurang cocok buat website besar semacam kompas atau detik?

      • At 2009.12.03 19:12, Okto Silaban said:

        Untuk web yang targetnya memang massal *bukan vertical portal*, ditambah lagi punya dedicated tim, kayaknya memang sudah seharusnya custom made..

        eZ Publish? Hmm.. kayaknya terlalu boros kalau untuk portal berita.

        *tapi itu pendapat saat ini. saya juga baru 2 bulan ini bersentuhan dengan eZ

      • At 2009.12.03 11:52, xebiet said:

        pertamax

        • At 2009.12.03 19:12, Okto Silaban said:

          ndak kok bro.. 😀

        • At 2009.12.03 12:09, eds said:

          well done you. appreciate, really.

          • At 2009.12.03 19:13, Okto Silaban said:

            Waduh.. ada om Eds.. 😛
            *makasih dah mampir om..

          • At 2009.12.03 15:34, adiputra said:

            Ada hal-hal menarik untuk bahan diskusi To,

            IMHO, sebatas pengetahuan gw yah 🙂
            1. Rubah API nya!! Ez punya classes yang bisa extend base class-nya, jadi artinya: Query Ez yang rumit bisa kita ganti dengan Query custom kita yang seperlunya. so…

            2. Custom Fetch Data!! Kalo punya clasess extend yang baik, hopefully Fetch data bisa lebih custome-able via extended_filter ato ada cara lain yang lebih baik mungkin..

            3. Master Template!! untungnya, Ez punya extension; dimana extension itu share-able dengan extension yang laen. Kita tau kalo sebuah situs yang dibangun itu wujudnya dalam Ez adalah berupa extension. Ez itu banyak bermain dengan template, untuk membangun multiple site, kenapa nggak buat Master Template Extension. Secara general situs itu sama, dengan adanya Master Template maka untuk bikin situs-situs tinggal buat turunannya, CMIW 🙂 menghemat resources, tenaga, maintenance & waktu

            itu dulu To,
            masih banyak.. bersambung 😀

            kalo 3 poin di atas bisa di bangun dengan baik, gw yakin detik & kompas bakal pake nih CMS *tapi boong* :p setidaknya penggunaan Ez akan jauh lebih maksimal 🙂

            Regards,
            PT

            • At 2009.12.03 19:14, Okto Silaban said:

              Nah dari point 1,2 dan 3 kok kalo dibandingin custom made effortnya hampir sama ya?
              *dengan catatan tiap website punya dedicated team..

              Kapan nih ada acara ngoprek bareng yah?

            • At 2010.02.08 23:27, Felix said:

              lam kenal gan…mo tanya2 dikit mengenai ez..bisa japri ? tq…

              • At 2010.02.09 09:48, Okto Silaban said:

                Boleh.. tapi jangan susah2.. saya jg newbie.. ;))

              • At 2010.02.26 01:13, Rizky Gunawan said:

                Sebelum libur coba-coba cari bahan buat nyelesaiin website mobile… eh malah ketemu ini… Mohon bimbingan buat senior yang udah duluan di EZ… gw baru diceburin 2 minggu lalu… EZ? errrr somtimes I don’t really like it hahahahahaha (lebi suka DIY hahaha 😛 )

                (Required)
                (Required, will not be published)

                jambu