Module Templates Switcher untuk Lokomedia

Biasanya website penjual template menyediakan fitur demo template pada websitenya. Untuk website dengan platform php lokomedia kita bisa membuatnya sendiri. Caranya cukup sederhana yakni dengan menggunakan fungsi session untuk memanggil template yang akan di tampilkan. Alasannya fungsi session ini hanya bekerja di client side yakni dalam internet browser kita. Berbeda jika kita menggunakan update database untuk mengaktifkan template, maka kita akan bekerja pada sisi server sehingga ketika klien membuka website kita akan berebutan template mana yang ingin dilihat. Demo dapat dilihat di : http://lokomedia.cauza.web.id

Tentu saja kita harus membuat form pilihan menggunakan fungsi select option terlebih dahulu. Kira-kira seperti ini kodenya :

<form method=POST action='temp.php' enctype='multipart/form-data'>
	<select name='temp' onchange="this.form.submit()">
	<?php
	$tampil=mysql_query("SELECT * FROM templates ORDER BY id_templates");
	if ($_SESSION[temp]== 0){
		echo "<option value=0 selected>- Pilih Template -</option>";
		}
		while($w=mysql_fetch_array($tampil)){
            if ($_SESSION[temp]== $w[id_templates]){
              echo "<option value=$w[id_templates] selected>$w[judul]</option>";
            }
            else{
              echo "<option value=$w[id_templates]>$w[judul]</option>";
            }
          }
	?>
	</select>
</form>

Jika sudah selesai buat file temp.php sebagai aksi dari form diatas dengan kode seperti ini :

<?php 	
  session_start();
  if (empty($_POST[temp])){
  	$_SESSION[temp] = 3;//3 adalah id_template default
  }else{
  	 $_SESSION[temp]= $_POST[temp];
  }
  header('location:http://lokomedia.cauza.web.id');
  //header menuju ke halaman home lokomedia
?>

Dan yang tidak kalah penting adalah mengedit file media.php yang sebelumnya memanggil template yang aktif di database, diubah dengan memanggil template yang sesuai dengan session aktif.

if(empty($_SESSION[temp])){
 	$pilih_template=mysql_query("SELECT * FROM templates WHERE aktif='Y'");
  	$f=mysql_fetch_array($pilih_template);
  	include "$f[folder]/template.php"; 
 }else {
  	$pilih_template=mysql_query("SELECT * FROM templates WHERE id_templates='$_SESSION[temp]'");
  	$f=mysql_fetch_array($pilih_template);
  	include "$f[folder]/template.php"; 
}

FileĀ Download

template-switch