AbahDoku Custom: Difference between revisions

From AbahDoku Wiki
No edit summary
No edit summary
Line 1: Line 1:
== Menu Sidebar ==
== Menu Sidebar ==
Mediawiki secara default memiliki menu sidebar yang bisa di costum, di tambah atau di kurangi. Penambahan menu sidebar bisa dilakukan dengan beberapa cara.
Mediawiki secara default memiliki menu sidebar yang bisa di costum, di tambah atau di kurangi. Penambahan menu sidebar bisa dilakukan dengan beberapa cara.
Cara pertama dapat dilakukan melalui url berikut :
1. Melalui MediaWiki:Sidebar
2. Melalui LocalSettings.php
 
===Menambah menu Sidebar melalui MediaWiki:Sidebar===
Cara pertama ini dapat dilakukan melalui url berikut :
  http://<nama_domain>/index.php/MediaWiki:Sidebar
  http://<nama_domain>/index.php/MediaWiki:Sidebar
Contoh :
Contoh :
Line 18: Line 22:
  * LANGUAGES
  * LANGUAGES


Cara kedua adalah dengan menambah sedikit code pada file LocalSettings.php.
===Menambah menu Sidebar melalui LocalSettings.php
Cara kedua ini adalah dengan menambah sedikit code pada file LocalSettings.php.


===Menambah code pada LocalSettings.php===
Code yang di tambahkan pada LocalSettings.php adalah :
Code yang di tambahkan pada LocalSettings.php adalah :
  $wgHooks['SkinBuildSidebar'][] = function ( $skin, &$bar ) {
  $wgHooks['SkinBuildSidebar'][] = function ( $skin, &$bar ) {

Revision as of 06:26, 10 October 2024

Menu Sidebar

Mediawiki secara default memiliki menu sidebar yang bisa di costum, di tambah atau di kurangi. Penambahan menu sidebar bisa dilakukan dengan beberapa cara. 1. Melalui MediaWiki:Sidebar 2. Melalui LocalSettings.php

Menambah menu Sidebar melalui MediaWiki:Sidebar

Cara pertama ini dapat dilakukan melalui url berikut :

http://<nama_domain>/index.php/MediaWiki:Sidebar

Contoh :

http://abahdoku.wiki.gd/index.php/MediaWiki:Sidebar

Jika MediaWiki:Sidebar sudah terbuka, pilih Edit source, tambahkan di baris terakhir navigation :

** http://abahdoku.wiki.gd|MenuTambahan

Maka hasilnya akan tampak seperti ini :

* navigation
** mainpage|mainpage-description
** recentchanges-url|recentchanges
** randompage-url|randompage
** helppage|help-mediawiki
** http://abahdoku.wiki.gd|MenuTambahan
* SEARCH
* TOOLBOX
* LANGUAGES

===Menambah menu Sidebar melalui LocalSettings.php Cara kedua ini adalah dengan menambah sedikit code pada file LocalSettings.php.

Code yang di tambahkan pada LocalSettings.php adalah :

$wgHooks['SkinBuildSidebar'][] = function ( $skin, &$bar ) {
    // Mendapatkan user context
    $user = RequestContext::getMain()->getUser();

    // Menambahkan menu "AbahDoku Costum"
      $bar['navigation'][] = [
          'text' => 'AbahDoku Custom',
          'href' => '/index.php/AbahDoku_Custom',  // Link ke halaman baru
          'id'   => 'n-abahdoku_custom',  // Optional ID
          'target' => '_self'  // Membuka di tab yang sama
      ];  
    }
    return true;
};

Berikut ini adalah contoh code menu untuk mengakses url external di luar Mediawiki, code dibawah ini hanya akan terlihat jika user sudah melakukan login di Mediawiki, jika user belum melakukan login, menu ini tidak akan terlihat. Menu ini akan membuka tab browser baru jika di klik.

    // Memeriksa apakah pengguna sudah login
    if ( $user->isRegistered() ) {
        $bar['navigation'][] = [
            'text' => 'Aplikasi',
            'href' => 'http://abahdoku.wiki.gd:9080/aplikasi',
            'id'   => 'n-aplikasi',  // Optional ID for styling or JS manipulati$
            'target' => '_blank'   // Opens in a new tab
        ];

jika digabungkan menu AbahDoku Custom dan menu Aplikasi, maka hasilnya akan seperti berikut ini :

$wgHooks['SkinBuildSidebar'][] = function ( $skin, &$bar ) {
    // Mendapatkan user context
    $user = RequestContext::getMain()->getUser();

    // Menambahkan menu "AbahDoku Costum"
        $bar['navigation'][] = [
            'text' => 'AbahDoku Custom',
            'href' => '/index.php/AbahDoku_Custom',  // Link ke halaman baru
            'id'   => 'n-abahdoku_custom',  // Optional ID
            'target' => '_self'  // Membuka di tab yang sama
        ];
    // Memeriksa apakah pengguna sudah login
    if ( $user->isRegistered() ) {
        $bar['navigation'][] = [
            'text' => 'Aplikasi',
            'href' => 'http://abahdoku.wiki.gd:9080/aplikasi',
            'id'   => 'n-aplikasi',  // Optional ID for styling or JS manipulati$
            'target' => '_blank'   // Opens in a new tab
        ];
    }
    return true;
};