J3.x

Membuat sebuah modul sederhana/Menambahkan Kolom Form

From Joomla! Documentation

< J3.x:Creating a simple module
This page is a translated version of the page J3.x:Creating a simple module/Adding Form Fields and the translation is 100% complete.

Other languages:
Deutsch • ‎English • ‎español • ‎français • ‎Bahasa Indonesia • ‎Nederlands • ‎русский
Joomla! 
3.x
Tutorial
Membuat sebuah modul sederhana

Ini adalah sebuah multi seri artikel tentang bagaimana caranya membuat sebuah modul untuk Joomla! Versi Joomla 3.x. Anda dapat menavigasikan artikel-artikel di dalam seri ini dengan menggunakan menu dropdown navigasi.

Mulai dengan Pendahuluan, dan navigasikan artikel di dalam seri ini dengan menggunakan tombol navigasi yang ada pada bagian bawah atau kotak di sebelah kanan (Artikel dalam seri ini).



Kolom form memberikan sebuah hal hebat dalam kustomisasi Joomla! dan untuk modul-modulnya sebagai satu-satunya cara untuk memungkinkan para pengguna meningkatkan modul tersebut sesuai kebutuhan situs mereka.

Menambahkan Kolom Form ke dalam modul

Dalam hal ini kita akan mengembangkan contoh sebelumnya dengan menggunakan basisdata untuk menyediakan sebuah daftar pilihan bahasa bagi para pengguna. Untuk memungkinkan ini terjadi maka kita akan memakai jenis kolom form SQL (detail selengkapnya untuk ini ada di halaman dok Kolom Form SQL).

Pertama kali kita akan menambahkan sebuah kolom form ke dalam berkas xml kita. Ingat tagar konfigurasi yang kita tambahkan sebelumnya? Nah, sekarang di dalam tagar-tagar itu kita akan tambahkan kode berikut ini:

<fields name="params">
    <fieldset name="basic">
        <field
               name="lang"
               type="sql"
               default="1"
               label="Select a language"
               query="SELECT id AS value, lang FROM #__helloworld" />
    </fieldset>
</fields>

Ini akan memilih bahasa-bahasa dari tabel basisdata dan memungkinkan para pengguna untuk memilih salah satu dari elemen pilihan.

Apabila Anda sudah memasang modulnya seperti sekarang Anda akan dapat melihat jika Anda mengakses modul itu di backend Joomla dimana ada sebuah dropdown yang muncul (meskipun memilih sebuah opsi tidak akan berdampak terhadap modul tersebut pada saat ini).

Catatan: Parameter kolom form disimpan untuk setiap modul di dalam tabel #__modules dibawah param kolom string json dikodekan.

Sekarang mari kita buat kolom form itu melakukan sesuatu!

Mari ke mod_helloworld.php dan dapatkan parameternya (catat bahwa Anda tidak dapat mendapatkan parameternya di dalam helper), lalu teruskan ke fungsi helper.

/**
  * This retrieves the lang parameter we stored earlier. Note the second part
  * which states to use the default value of 1 if the parameter cannot be
  * retrieved for some reason
**/
$language = $params->get('lang', '1');
$hello    = modHelloWorldHelper::getHello( $language );

Sekarang mari kita edit kueri basisdata kita di dalam berkas helper untuk merefleksikan pilihan parameter kita.

// Obtain a database connection
$db = JFactory::getDbo();
// Retrieve the shout - note we are now retrieving the id not the lang field.
$query = $db->getQuery(true)
            ->select($db->quoteName('hello'))
            ->from($db->quoteName('#__helloworld'))
            ->where('id = '. $db->Quote($params));
// Prepare the query
$db->setQuery($query);
// Load the row.
$result = $db->loadResult();
// Return the Hello
return $result;

Kesimpulan

Kolom form memberikan kemudahan bagi para pengguna untuk melakukan kustomisasi modul sesuai setelan situs mereka. Ini memungkinkan cakupan modul-modul tersebut ditingkatkan untuk banyak bahasa maupun aplikasi.