Saat ini sudah ada fitur website responsive yang dimana pada saat membangun website kita hanya perlu membangun satu halaman website saja yang secara otomatis layout yang kita buat akan menyesuaikan pada ukuran device yang sedang dipakai. Namun tidak semua website harus dibuat responsive, kalaopun responsive tampilannya tidak terlalu sempurna sesuai harapan.
Mengapa tidak semua website harus responsive?
Saat ini kita kembali lagi pada konten atau isi dari website tersebut, jika website tersebut pada posisi desktop memiliki gambar dan komponen yang kompleks maka seharusnya website tersebut tidak dibuat responsive. Karena ketika dibuka pada perangkat mobile akan sangat mungkin mengalami lag karena resource yang terlalu berat dan banyak.
Untuk menghindari hal tersebut maka diperlukan web versi mobile yang akan mendukung device tertentu. Dari hal tersebut maka diperlukan redirect ke web versi mobile.
Berikut ini saya share cara redirect otomatis website ke versi mobile menggunakan framework CodeIgniter dan menggunakan library Mobile Detect.
- Download library Mobile Detect disini.
- Copas Mobile_Detect.php di folder library CI anda.
- Buat file controller seperti contoh berikut filenya saya beri nama Home.php
<?php defined('BASEPATH') OR exit('No direct script access allowed'); class Home extends CI_Controller { public function __construct() { parent::__construct(); $this->load->helper('url'); $this->load->library('Mobile_Detect'); } public function index() { $data['judul'] = 'Halaman Utama'; $detect = new Mobile_Detect; $this->load->view('v_home', $data); if($detect->isMobile()) { redirect('http://m.blabla.com'); } } }
Untuk file routes.php yang berada dalam folder config pada script
$route['default_controller'] = 'welcome';
Silahkan rubah menjadi / sesuaiakan dengan kondisi
$route['default_controller'] = 'home';