Membuat Plugin WordPress (part 3)
Posted February 3, 2010
on:- In: Wordpress
- 10 Comments
Membuat Panel Administrasi di Back-end WordPress
Sekarang plugin Anda sudah tercantum di list plugin di panel back-end wordpress Anda, dengan demikian wordpress sudah mengetahui dan mengenali plugin yang Anda buat. Namun plugin Anda belum bisa berbuat apa-apa, untuk membuatnya berfungsi silahkan ikuti langkah selanjutnya berikut ini.
- Buatlah sebuah fungsi apasaja dengan maksud memberitahu kepada wordpress bahwa fungsi yang pertama dipanggil adalah fungsi tersebut, fungsi ini biasanya berisi perintah untuk menambahkan menu pada panel back-end wordpress Anda, yang selanjutnya akan berfungsi untuk pengaturan plugin Anda.
- Untuk membuat fungsi Anda di load secara Automatis saat administrator masuk ke panel Back-end Anda adalah dengan menggunakan baris script berikut :
<? function add_new_admin_menu() { add_options_page("RPG-Slideshow", "RPG-Slideshow", 1, "rpg-slideshow", "rpg_slideshow"); } add_action('admin_menu', 'add_new_admin_menu'); ?>
- fungsi “add_action” adalah fungsi yang memberitahukan kepada panel back-end wordpress Anda untuk secara automatis meload fungsi “add_new_admin_menu”
- Maka fungsi “add_new_admin_menu” pun terload secara automatis.
- Di dalam fungsi “add_new_admin_menu” tersebut tersimpan perintah untuk menambahkan options page yang berisi forms / interface untuk pengaturan plugin Anda yaitu baris script : “add_options_page(“RPG-Slideshow”, “RPG-Slideshow”, 1, “rpg-slideshow”, “rpg_slideshow”);” Anda dengan bebas menganti penama’an pada nama-nama diatas sesuai kebutuhan. Hal yang perlu diperhatikan adalah parameter ke 3 dan ke 5, parameter ke 3 harus berisi angka 1 dan parameter ke 5 akan di bahas pada point berikutnya (6)
- perhatikan parameter ke 5 itu adalah pemanggilan nama fungsi lain yang akan berisi pemanggilan forms pengaturan plugin Anda.
- Kita buat pula fungsi yang Akan dipanggil point no 5:
<? function rpg_slideshow(){ global $wpdb; $action = (isset($_GET['action'])?$_GET['action']:$_GET['action']); $rpg_id= (isset($_GET['rpg_id'])?$_GET['rpg_id']:$_GET['rpg_id']); switch($action){ default: include('rpg-list-slideshow.php'); break; case "add": include('rpg-add-edit-slideshow.php'); break; case "edit": include('rpg-add-edit-slideshow.php'); break; } } ?>
- Perhatikan pemanggilan include pada file tersebut, itu merupakan interface /forms untuk pengaturan, ini biasanya berisi file yang berformat html.
Berikut ini adalah tampilan lengkap code file tersebut :
<?php /* Plugin Name: RPG Slideshow Plugin URI: http://www.princeoffrog.wordpress.com Description: The Custome Slidshow Plugins Author: Rini Puspita Galih Version: 1.0 Author URI: http://www.princeoffrog.wordpress.com */ global $wpdb; define('RPG_TABLE_NAME', $wpdb->prefix . 'rpg_slideshow'); define('RPG_PATH', ABSPATH . 'wp-content/plugins/rpg-slideshow'); define('RPG_IMAGES_PATH', get_bloginfo('wpurl'). '/wp-content/plugins/rpg-slideshow'); require_once(ABSPATH . '/wp-includes/pluggable.php'); function add_new_admin_menu() { add_options_page("RPG-Slideshow", "RPG-Slideshow", 1, "rpg-slideshow", "rpg_slideshow"); } function rpg_slideshow(){ global $wpdb; $action = (isset($_GET['action'])?$_GET['action']:$_GET['action']); $rpg_id= (isset($_GET['rpg_id'])?$_GET['rpg_id']:$_GET['rpg_id']); switch($action){ default: include('rpg-list-slideshow.php'); break; case "add": include('rpg-add-edit-slideshow.php'); break; case "edit": include('rpg-add-edit-slideshow.php'); break; } } function install(){ global $wpdb; if ( $wpdb->get_var('SHOW TABLES LIKE "' . RPG_TABLE_NAME . '"') != RPG_TABLE_NAME ) { $sql = "CREATE TABLE IF NOT EXISTS `". RPG_TABLE_NAME . "` ("; $sql .= "`rpg_slideshow_id` int(11) unsigned NOT NULL auto_increment,"; $sql .= "`rpg_slideshow_title` varchar(20) NOT NULL default '0',"; $sql .= "`rpg_slideshow_description` varchar(100) default NULL,"; $sql .= "`rpg_slideshow_images` varchar(250) NOT NULL,"; $sql .= "`rpg_slideshow_url` varchar(250) default NULL,"; $sql .= "PRIMARY KEY (`rpg_slideshow_id`)"; $sql .= ") ENGINE=InnoDB DEFAULT CHARSET=utf8 AUTO_INCREMENT=1 ;"; $wpdb->query($sql); } } function uninstall(){ global $wpdb; $sql = "DROP TABLE `". RPG_TABLE_NAME . "`;"; $wpdb->query($sql); } register_activation_hook(__FILE__, 'install'); register_deactivation_hook(__FILE__, 'uninstall'); add_action('admin_menu', 'add_new_admin_menu'); ?>
10 Responses to "Membuat Plugin WordPress (part 3)"

Terima kasih atas tulisannya. Saya mau tanya kalo pada admin page, gimana caranya untuk simpan kedatabase ? makasih sebelumnya


trims,
sangat baik untuk pembelajaran bagi pemula seperti saya…


[…] Selengkapnya Category: Plugin […]


mas ada tutorial lanjutannya gak? masih belum mudeng nie


add_options_page(“RPG-Slideshow”, “RPG-Slideshow”, 1, “rpg-slideshow”, “rpg_slideshow”);
fungsi “1” itu apa mas?
apakah hak ases user atau apa?

August 20, 2010 at 3:54 am
ditunggu kelanjutan tutorialnya mas 🙂
salam kenal
August 20, 2010 at 4:13 am
wah suatu kehormatan bisa kenal dengan mas, yang sudah senior hehe..
Saya kira tutorial diatas sudah habis…
Tapi mungkin mas belum ngerti yah?
disebelah mananya ya?
ada kritik n saran?
btw: web mas juga bagus, mantab …
hehe