Parasolx

Professional in Drupal web development, theme designing, consultation and training

Drupal 7

Jabatan Muzium Malaysia menggunakan Drupal

jabatan muzium negara

Jabatan Muzium Malaysia (JMM) merupakan agensi kerajaan yang berperanan dalam mengurus tadbir semua muzium-muzium di Malaysia. Agensi ini menggunakan portal web sebagai medium untuk penyampaian maklumat dan aktiviti untuk makluman rakyat Malaysia khususnya. JMM sebelum ini telah menggunakan Drupal sebagai platform asas untuk portal yang dipacukan dengan versi 6.

Proses menaik taraf portal sebeleum ini melibatkan dua perkata utama iaitu reka bentuk halaman dan peningkatan versi kepada Drupal 7. Naik taraf kepada Drupal 7 membuka ruang kepada portal sedia ada menggunakan modul tambahan yang lebih efisien di samping prestasi yang ketara antara kedua-duanya.

Theme

Reka bentuk laman di bina dengan mengambil inisiatif warna logo JMM. Konsep "flat design" dengan saiz persembahan slaid yang besar telah digunakan. Walau bagaimanapun, rekaan masih terhad untuk mengekalkan ciri-ciri dan keperluan yang ditetapkan sebagai sebuah portal rasmi kerajaan Malaysia. Kesan-kesan khas untuk animasi dijana menerusi penggunaan JQuery dan CSS3. Oleh itu, had sokongan terhadap versi dan jenis perisian pelayar telah minimumkan kepada Internet Explorer versi 7.

Modul

Kebanyakan modul yang digunakan semasa versi Drupal 6, diguna kembali dengan kemas kini kepada sokongan versi Drupal 7. Perkara yang paling ketara adalah pengurangan bilangan modul daripada 103 kepada 42 sahaja. Perbezaan jumlah yang besar ini memberi kelebihan untuk portal berfungsi dengan lebih stabil dan pantas. Di samping itu, satu modul khas telah dibina bagi menggantikan modul statistik yang digunakan sebelum ini.

Modul yang dinamakan HSR Counter adalah modul statistik yang tersangat ringkas dan ringan. Ianya tidak menyimpan sejarah maklumat seperti yang dijana oleh module Counter sebelum ini. Bagi portal yang terlampau aktif, kueri yang dijalankan oleh Counter tersangat berat sehingga memberi tekanan kepada pelayan sehingga 80-90% ketika waktu separa puncak. Modul HSR Counter bertindak hanya menyimpan satu maklumat dalam satu baris pangkalan data sahaja. 

Cabaran utama bagi projek ini adalah memastikan semua fungsi dwi-bahasa (bahasa Malaysia dan English) berjalan dengan sempurna. Aspek terutama pautan, menu dan "local path" terpaksa diuji lari beberapa kali akibat perpindahan lokasi fail yang disimpan dalam pelayan.

Malaysia Gazette menggunakan Drupal

frontpage malaysia gazette

Malaysia Gazette (MG) adalah laman protal kewartawanan persendirian yang menyiarkan berita-berita semasa. MG setakat ini menggunakan web portal sebagai medium menyampaian berita selain menyebarkan artikel yang ditulis menerusi laman sosial. Pada awal kemunculan MG, Drupal telah digunakan sebagai platform untuk menguruskan perihal penulisan artikel, gambar dan video. Disebabkan oleh bentuk paparan dan corak persembahan MG diawal pembangunan kelihatan seperti sebuah blog berita biasa, satu langkah untuk penambahbaikan telah dibuat.

Paparan

Dari segi paparan, pada peringkat awal reka bentuk, ianya dibina berdasarkan kepada maksimum saiz 960 piksel. Setelah template selesai dibangunkan dan dinyahkod ke dalam bentuk Drupal theme, pihak klien mengmbil keputusan untuk melebarkan saiz maksimum sedia ada. Versi 2.0 berjaya dilepaskan dengan mengambil kriteria dan penambahbaikan baru. Cabaran yang paling getir dalam reka bentuk adalah mengaplikasi konsep "responsiveness" dalam theme.

Hari ini web bukan hanya diakses di komputer, malah pelbagai jenis peranti dan berlainan perisian. Penggunaan konsep "responsive" bukan sahaja membantu malah mengurangkan beban untuk mengemas kini dua versi laman berbeza. Namun, proses pembinaannya jauh lebih sukar dan lama. Beberapa perancangan untuk theme MG perlu dibina semula termasuklah "breakpoint" dan saiz lebar maksimum untuk setiap satu media query.

Modul-modul

Antara fungsi yang hendak diketengahkan pada portal MG adalah keupayaan untuk mencipta dan memaparkan kumpuluan (dalam kes ini saya namakan sebagai "section") secara automatis. MG kadang kala akan menghasilkan seskyen kandungan berdasarkan kepada keperluan semasa. Dengan keupayaan modul Views, kumpulan yang dicipta menggunakan Taxonomy akan dipaparkan secara automatik di laman utama.

Selain itu, setiap kandungan yang tersenarai mempunyai bentuk paparan yang berbeza berdasarkan kepada kepentingan artikel yang ditulis contohnya; esklusif, hari ini atau paparan slaid. Paparan yang dikawal oleh Views ini mengambil kira pilihan yang dibuat oleh penulis dan menukarkan stail dan bentuk paparan pada seksyen secara automatik. Menarik bukan? Selain itu, setiap kategori mempunyai tetapan warna, logo dan latar belakang yang tersendiri. Semuanya hanya menggunakan dua modul utama ini.

Modul pengurusan pengiklanan, SimpleAds juga dimuatkan. Ini bagi memudahkan pihak MG menguruskan pengiklanan yang diterima daripada pelbagai pihak yang sebelum ini diuruskan secara manual menerusi penghasilan Block.

Dengan bantuan Workflow juga, setiap kandungan akan melalui proses "staging" sebelum dipaparkan. Kesukaran tim editor dalam penerbitan artikel dipermudahkan dengan kaedah ini. Setiap penulis/wartawan dibenarkan terus menaip artikel ke dalam sistem (yang sebelum ini ditulis dan diemel kepada editor). Seterusnya editor akan menyemak setiap satu artikel dan dipaparkan sekiranya sesuai.

Kaedah ini telah mejimatkan ruang emel, masa dan proses penerbitan dipendekkan. Workflow juga diperkuatkan dengan Scheduling Published yang membenarkan editor untuk menetapkan masa secara spesifik satu-satu artikel dipaparkan. Tidak perlu lagi untuk mereka bangun ditengah malam sekadar untuk menerbitkan satu artikel.

Fungsi terakhir yang ingin disorotkan adalah slaid paparan gambar. Setiap album atau galeri yang diwujudkan boleh dimuatkan (embedding) terus ke dalam artikel menerusi modul Insert Views. Sebelum ini pihak MG akan memuat naik atau menggunakan "direct markup HTML" yang hakikatnya bukanlah kaedah terbaik dalam Drupal. Bentuk paparan galeri yang dipanggil boleh ditentukan sama ada dalam bentuk slaid persembahan atau senarai galeri.

Go And Go menggunakan Drupal

Go and Go, e-commerce web which applies hypermarket concept with multiple flooring system in selling products. Each floors represent a group of products being set by webmaster. And each group of products can correlate to any of group in any floors. It was launch around June 2013 and now actively selling bulk items. In future, this service will be open up to public displaying and selling their own products in special floor.

Still fulfilling client needs, fresh and easy concept is implemented. Drupal can flawless make it to perfection eventhough multiple editting and modification has to been done. Through Go and Go is capable in developing a system and e-commerce portal that is effective, manageable and fulfilling what the client needs. More over, this portal maximize SEO technique automatically without any extra setup and editting during posting a new content.

Starcraft Stashden Community menggunakan Drupal

Stashden Community merupakan satu laman web yang menempatkan dua komuniti (setakat ini) untuk permainan elektronik iaitu Starcarft 2 dan Dota 2. Stashden merupakan produk kendalian sebuah syarikat tempatan yang dinamakan Duskbin E-Sports Sdn Bhd. Projek Starcraft Stashden Community ini menerapkan konsep penyebaran dan pusat maklumat berkenaan dengan perkembangan permainan elektronik khas untuk negara Malaysia. Sehingga hari ini, kesukaran bagi pihak permainan komputer untuk mendapatkan maklumat memandangkan tiada laman web khas.

Starcraft 2 Stashden Community telah menjadi laman web pertama di Malaysia yang mengumpul dan memaparkan ulasan mengenai pertandingan, liga dan aktiviti permainan elektronik meliputi dalam dan luar negara. Di samping memerlukan sebuah laman web yang memaparkan aritkel, portal ini juga menerapkan beberapa fungsi tambahan yang meneyenaraikan maklumat yang diperlukan oleh seorang pemain seperti "livestreaming" dan agenda yang akan dijalankan.

Modul

Dalam projek ini, kebanyakan modul yang digunakan adalah modul-modul biasa yang diperlukan oleh sebuah website komuniti. Namun yang menjadi perhatian saya adalah skrip gabungan PHP dengan Drupal yang dicipta secara khas untuk memanggil dan menterjemahkan senarai ahli-ahli yang bersiaran secara langsung di laman web.

Skrip ini memanggil maklumat daripada penyedia siaran langsung iaitu Twitch.TV kemudiannya menyemak senarai ahli yang tertentu sedang bersiaran atau tidak. Seterusnya dengan sistem dalaman Drupal, maklumat ini dihantar untuk menghabiskan satu halaman secara dinamik. Halaman ini akan memaparkan siaran tersebut secara terus di laman web Stashden -- tanpa memerlukan pengguna melawat Twitch.TV. Kepada mana-mana pihak yang berminat dengan skrip ini, anda boleh hubungi saya.

Selain itu, dengan melakukan integrasi modul Drupal Chat, prestasi laman dilihat lebih lama dilawati oleh pengguna. Sehingga hari ini, kebanyakan pemain di Malaysia sukar mencari tempat untuk berkongsi pengalaman secara tempatan sebaliknya menumpang laman-laman antarabangsa yang tidak menyediakan ruangan khas untuk Malaysia.

Selain itu, pihak Stashden juga menerapkan elemen untuk penjualan yang dilaksanakan dengan modul Basic Cart. Modul ini membolehkan janaan sebutharga dan inbois dilakukan tanpa melibatkan simpanan dalam pangkalan data. Maklumat pembelian pula dihantar menerusi emel sahaja.

Pihak tuan tanah juga meminta untuk proses pendaftaran dipermudahkan dengan bantuan sinkronasi daripada akaun Facebook. Selain itu, sistem komentar juga digantikan dengan Facebook Comment. Keadaan ini membenarkan setiap artikel secara automatisnya disebar dan dikongsi menerusi akaun Facebook secara tidak langsung. Integrasi sesi log masuk juga dimuatkan untuk menjadikan Single Sign Online antara Starcraft 2 dan Dota 2.

Theme

Pilihan theme untuk projek kali ini lebih berkisarkan kepada "gaming". Penggunaan gambar yang banyak dan disusun dalam bentuk grid untuk setiap artikel memberikan satu gambaran dan paparan yang berlainan. Dengan bantuan daripada JQuery, beberapa animasi dimuatkan ke dalam rekaan. Setiap bahagian mempunyai kesan khas seperti "sliding up" apabila kursor tetikus digerakkan pada paparan artikel. Selain itu animasi pertukaran warna latar belakang bagi butang borang juga dimasukkan.

Paling menarik adalah penggunaan CSS3 sepenuhnya. Kehadiran @font-face dalam CSS3 membenarkan penggunaan jenis tulisan yang pelbagai diperluaskan. Untuk projek kali ini, pilihan tulisan daripada pihak Android, iaitu Roboto telah digunakan. Ianya merupakan tulisan alaf baru yang cantik dipaparkan dan mudah untuk dibaca.

Kementerian Kerja Raya (KKR) menggunakan Drupal

Kementerian Kerja Raya Malaysia (KKR) telah memilih Drupal sebagai enjin untuk menggerakkan portal rasmi mereka semenjak tahun 2007 lagi dengan berasaskan kepada Drupal 5. Projek kali ini adalah menaik taraf portal rasmi sedia ada kepada Drupal 7. Proses naik taraf yang melibatkan penyimpanan data hampir 6 tahun merupakan satu tugasan yang agak mencabar. Tambahan proses ini memerlukan banyak modifikasi terhadap modul sedia ada sungguhpun migrasi data berjaya dilakukan.

Modul

Laman portal ini menyediakan dwi-bahasa iaitu Bahasa Melayu dan Bahasa Inggeris dengan bantuan modul i18n.module dan i18nviews.module. Modul cck.module yang digunakan pada Drupal 5 serba sedikit mengalami masalah dari segi pengendalian fail-fail media yang dimuat naik. Bagi mengatasi masalah ini, modul media.module telah dipasang dan diintegrasi dengan modul filefield_sources.module yang membenarkan proses muat naik lampiran terus daripada lokasi pelayan secara "remote".

Pihak KKR memerlukan ruang galeri untuk foto, audio dan video dijalankan sepenuhnya daripada pelayan mereka tanpa menggunakan bantuan daripada perkhidmatan YouTube atau Facebook. Oleh itu bagi modul audiofield.module, video.module dan field_slideshow.module telah digunakan. Ruangan yang paling menarik adalah direktori. Disebabkan KKR merupakan satu organisasi yang sangat besar, penyusunan direktori perlu dibuat berdasarkan kepada hierarki bahagian dan unit. Untuk memudahkan proses kemas kini oleh pihak mereka, susunan ini telah dibuat menerusi taksonomi dengan bantuan modul lineage.module untuk tujuan penyusunan yang dipaparkan menerusi modul views.module.

Satu lagi konsep GUI yang diperkenalkan adalah "cropping". Proses muat naik gambar-gambar kadang kala dalam pelbagai bentuk dan saiz. Bagi memastikan satu standard persembahan yang dirangka pada theme, module manual-crop.module telah digunakan agar staf KKR dapat memotong gambar yang dimuat naik terus di perisian pelayar tanpa memerlukan bantuan perisian grafik.

Theme

Paparan atau theme portal KKR ini dibina secara khas dengan meletakkan saiz 1000px kelebaran sebagai asas. Dengan bantuan sistem Drupal, theme ini menyediakan empat variasi warna yang boleh dipilih pengguna iaitu warna lalai, merah, oren dan hijau yang diselaraskan melalui bantuan modul styleswitcher.module.

Pembinaan laman web jenis portal agak sukar untuk mengimplementasi konsep "responsive". Maka bagi membenarkan paparan pada mobil dilaksanakan dengan sempurna, modul themekey.module telah digunakan dengan konsep penukaran kepada theme mobil berdasarkan kepada jenis peranti yang digunakan oleh pengguna. Pengesanan jenis peranti dikendalikan oleh modul simple_mobile_redirect.module yang akan mengarahkan pengguna ke ruangan mobil secara terus.

Borang "select" juga dipertingkatkan bentuk persembahannya dengan bantuan modul hierarchical_select.module. Ini memudahkan pihak KKR memilih struktur organisasi mereka dengan lebih mudah dan berkesan.

Isu dan Cabaran

Cabaran yang paling mencabar bagi projek ini adalah memastikan data yang dimigrasi daripada D5 kepada D7 adalah tidak hilang dan boleh digunakan kembali. Walau bagaimanapun proses ini gagal dilaksanakan sepenuhnya namun berjaya diselesaikan selepas "troubleshooting" dilakukan berkali-kali.

Selain itu, cabaran selanjutnya adalah memastikan paparan theme adalah stabil dan sama di semua perisian pelayar terutamanya Internet Explorer 7.

Pages