Facebook Ilmuwebsite

Dasar Pembuatan Sistem Plugin Pada CMS Bag. 2

Pada artikel sebelumnya yakni "Call_User_Function : Pondasi Dasar Pembuatan Sistem Plugin Pada CMS Bag.1". Anda bisa mempelajarinya terlebih dahulu di sini http://desainweb.ilmuwebsite.com/2015/02/calluserfunction-pondasi-dasar.html kita telah membahas sedikit logic mengenai pondasi dasar dari sistem plugin CMS pada umumnya. Nah pada bagian ini kita akan kupas secara teknis bagaimana koding untuk melakukan itu semua.

Sebelumnya kita terlebih dahulu persiapkan folder yang digunakan untuk eksperimen, saya menamakan foldernya sistemplugin.

Yang saya letakkan di direktori


perhatikan disana terdapat 1 file dan 1 direktori, 1 file php yakni core.php, dan 1 direktori plugin, di dalam direktori plugin terdapat 2 file .php plugin.



Isi dari file plugin123.php adalah sebagai berikut

<?php
 function plugin123(){
  for($x=1;$x<10;$x++){
   echo $x."\t";
  }
 }
?>

Sedangkan isi dari file pluginhello.php adalah sebagai berikut

<?php
 function pluginhello(){
  $hello = "hello";
  echo '<h1>'.$hello.'</h1>';
 }
?>

Lalu isi file core.php selengkapnya adalah sebagai berikut ...

<?php
/*  buka foldernya  */
if ($handle = opendir('./plugin')) {
 /*  baca isi foldernya */
 while (false !== ($entry = readdir($handle))) {
  
  /*  kemudian includekan file-file tersebut ...  */
  if ($entry != "." && $entry != "..") {
   require_once('plugin/'.$entry);
  }
 }
 closedir($handle);
}

/*  ambil semua pluginnya */
$allplug = get_defined_functions();
/*  apabila di print_r($allplug) akan menghasilkan 
 Array ( [0] => plugin123 [1] => pluginhello ) */

/*  kemudian kita akan eksekusi function-function si plugin tersebut dengan cara */
foreach($allplug['user'] as $keyval){
 /*  langkah disini digunakan untuk eksekusi plugin 
  disebelah sini pun Anda bisa mengaktifkan plugin sesuai dengan status 
  didatabase, apakah dia akan di load atau tidak */
 
 call_user_func_array($keyval,array());
}

?>

Untuk melihat demonya silahkan klik,

http://www.ilmuwebsite.com/tutorial/php/sistemplugin/core.php

dan untuk mendownload filenya silahkan download di sini ...

http://www.ilmuwebsite.com/tutorial/php/sistemplugin.zip

Dibagian ke 3 kita akan kembangkan, dengan penambahan fitur database, sehingga plugin yang dieksekusi hanya yang status di databasenya sudah diaktivasi saja.

Semoga bermanfaat. Selamat bereksperimen.


Loka Dwiartara
Admin ilmuwebsite.com
Founder kaffah.biz

Posting Komentar

2 Komentar

  1. Artikel anda sangat menarika sekali :D,Saya juga mempunyai tulisan yang sejenis mengenai Jurnal Serupa yang bisa anda kunjungi
    di http://ejournal.gunadarma.ac.id , Happy Sharing :D

    BalasHapus