Pembuatan Module Drupal Sederhana – 1 (Aturan Dasar Module)

Yak…kembali lagi bersama saya, Andrew.

Maafkan bagi yg pernah tanya-tanya tapi tidak saya balas, karena kesibukan kerja dll, blog ini tidak pernah terupdate selama staun lebih.. :mrgreen:

Kali ini saya ingin membantu memberikan tutorial pembuatan module Drupal

Sebelum melangkah lebih lanjut ke pembuatan module, mungkin harus saya jelaskan dulu aturan-aturan dasar yang digunakan pada Drupal, dalam hal ini Drupal sebagai Framework, bukan sebagai CMS

Sekali lagi saya cuma menekankan Drupal sebagai Framework.

Untuk Drupal sebagai CMS, lain kali saja ya karena terlalu luassss… 😆

Langsung saja deh,

Aturan dasar untuk Framework Drupal module ini adalah

1. Setiap module paling tidak harus terdiri dari 2 file: file.info dan file.module

2. Nama file module harus sama dengan nama modulenya

Module guestbook
Maka nama folder guestbook dan berisi file guestbook.info dan guestbook.module
Jika dibutuhkan konfigurasi skema database untuk installasi module, digunakan file .install (opsional), contoh guestbook.install

3. File .module terdiri atas fungsi-fungsi untuk berkomunikasi dengan Drupal

Semua fungsi pada file .module ini sifatnya global atau publik, jadi fungsi-fungsi yang ada di file .module ini dapat diakses di file lain tanpa perlu melakukan include atau require_once pada php umumnya

4. Semua fungsi di module Drupal harus mempunyai prefix yang sama dengan nama modulenya

Contoh: guestbook_sum, guestbook_search_result

5. Semua fungsi hook di drupal harus diubah sesuai dengan nama modulnya

Contoh: hook_menu maka implementasinya adalah guestbook_menu

Simpel bukan?

Eh iya..ada yang namanya hook?
Apa sih hook itu?
Mungkin ada yang belum pernah dengar tentang konsep hook. Konsep hook tidak hanya dipakai di Drupal ini saja, tapi juga ada di pengembangan-pengembangan module/plugin CMS lain seperti Shopify, WordPress, dll. Yang pernah saya development sih cuma Drupal dan WordPress. Untuk pengembangan plugin WordPress masih ada kesempatan lain :mrgreen:

HOOK?
Mari mulai dengan menggunakan analogi. Analogi yang paling sederhana untuk menggambarkan konsep hook ini adalah kereta.
Kereta terdiri dari banyak gerbong dimana kereta tersebut terkait satu sama lain. Hook di sini digambarkan sebagai pengait tersebut. Gerbong-gerbong tersebut dapat diartikan sebagai module-module Drupal.
Jadi ketika ada muatan baru, kita tidak perlu mengubah mesin atau kereta utamanya, tapi cukup mengaitkan gerbong baru saja. Dengan adanya gerbong baru, kita dapat menambahkan muatan baru, dimana muatan tersebut berisi fungsi-fungsi.

Nah, konsep hook di Drupal sendiri gimana sih?
Poin-poin pentingnya adalah sebagai berikut:

  • Setiap module di drupal menggunakan hook untuk berhubungan dengan core drupal.
  • Hook merupakan cara yang digunakan Drupal agar setiap module dapat terkait untuk menambahkan suatu fungsi tertentu.
  • Dengan hook, module yang ada dapat menambahkan fungsi tertentu tanpa merubah core yang sudah ada

Jadi misalkan kita menggunakan module yang diciptakan orang lain, kalau kita ingin merubah output atau proses flow yang sudah ada, kita bisa memanfaatkan hook-hook pada Drupal tanpa harus melakukan perubahan langsung di module orang lain tersebut alias tidak perlu hard code di module tersebut.

Keuntungannya apa?
Yang jelas si core asli tidak berubah, dan jika mengikuti standar yang sudah ada maka mudah juga di kembangkan developer lain dan pastinya lebih rapi. 😀

Mungkin sekian dulu deh dari saya, pembuatan berikutnya pada kesempatan lain :p

Terimakasih,
Salam,
Andrew Junior

3 Comment

  1. This text is worth everyone’s attention. Where can I find out more?

  2. Terima kasih telah menjelaskan konsep modul drupal yang sederhana. Apakah ada rencana menulis artikel lain yang lebih mendetail mengenai modul drupal? Boleh tanya mas dimana website atau tempat untuk kursus drupal di indonesia?

    1. Sbenernya masih ingin melanjutkan..cuma blm ada waktu..hehe..artikel IT cenderung lama karena harus di tes juga kebenaran code nya..
      Masih ada materi drupal yg ingin saya bagi..
      Atau mungkin ada materi yg ingin saya bantu utk jadi artikel?
      Untuk drupal stau saya yg paling lumayan ada di group FB drupal indonesia

Tinggalkan Balasan