Minggu, 22 Desember 2013

Redirect Wordpress ke Versi Mobile

Hari ini lumayan memacu adrenalin otakku. Pagi tadi saya mendapatkan sms dari seseorang, seperti biasa. Setiap hari saya setidaknya mendapatkan sms dari seseorang yang ingin chat via ym yang ingin ngobrol. Semua dari mereka biasanya nanya-nanya soal wordpres, optimisasi, de el el, pokoknya yang ada hubungannya sama jasa oprek saya yang ada di sini. Mereka sebagian adalah member ads-id, dan tidak sedikit yang datang dari google dan kesasar di lapak saya.

Kembali ke orang yang sms tadi, karena saya masih kerja pagi tadi, saya semayani sore hari. Akhirnya sore hari kami ketemuan di YM (baca:chat). Beliau mau order jasa oprek wordpress saya. Beliau ternyata yang punya situs media besar. Sering sih ngeditin situs-situs besar. Kali ini beliau minta 3 item oprek. 2 item saya mampu dengan mudah menggarapnya, ternyata item terakhir lumayan sulit untuk saya yang masih newbie jomblo inih. Beliau minta websitenya otomatis diredirect ke versi mobile ketika pengunjung berasal dari mobile (bukan mobil loh), maksud saya device yang digunakan user untuk mengakses web itu termasuk dalam kategori mobile, seperti android, hp, pda, de el el.

Jam 18.00 saya mulai mengeksekusi, karena minimnya pengetahuan akhirnya saya kesasar ke stackoverflow, w3school, de el el. Sampe nyoba ngakali pake plugin de es be. Dan ternyata hasilnya nihil. Selalu error dan not work.

Keadaan tersebut akhirnya memaksa saya untuk berfikir keras untuk segera menemukan pemecahannya, soalnya yang order udah bazz buzz bazz buzz (ctrl+G) via ym. Oh shit... Bagaimana ini? Kondisi kepepet emang bisa membuat orang bodoh seperti saya untuk berfikit algoritmanya. Jebretttt.... setelah trial error, karena algoritma ane belum begitu baik dan kemampuan coding yang cuma bisa nulis echo aja, jadilah script sederhana untuk meredirect visitor yang datang dari mobile device ke web versi mobile.

Kondisi:
desktop version: domain.com
mobile version: m.domain.com

Algoritma gue:
Setiap user yang datang, dicek dulu "user agentnya", yang belum tahu apa itu user agent browsing dulu sanah!!! :D . Jika ternyata user datang dari mobile device (TRUE), maks aka diredirect ke mobile site, jika FALSE (datang dari selain mobile device) maka akan tetap berada pada versi desktop. Algoritmanya cukup mudah, karena hanya ada dua kondisi (TRUE and FALSE).

Syntax:
<?php
$xxx = $_SERVER['HTTP_HOST'];
$xxx = str_replace('www','m',$xxx);
$xxx = $xxx.$_SERVER[REQUEST_URI];
$yyy = 'http://'.$xxx;
if ( wp_is_mobile() ) {
header( "Location: $yyy" ) ; 
}
?>


Penjelasan:

<?php
$xxx = $_SERVER['HTTP_HOST']; 

//mendapatkan hostname (output: www.domain.com) -> kondisi domain pake www
 
$xxx = str_replace('www','m',$xxx); 

//replace www dengan m
 
$xxx = $xxx.$_SERVER[REQUEST_URI];  

// mendapatkan url path dan menggabungkannya dengan m.domain.com
 
$yyy = 'http://'.$xxx; 

//nambahin http:// 
 
if ( wp_is_mobile() ) { 

//pernyataan kondisi jika user datang dari mobile (fungsi bawaan wordpress)
 
header( "Location: $yyy" ) ;   

//diredireck ke domain mobile
 
}
?>


Pastekan script dia atas di header.php. Letakkan di baris paling atas. Silahkan dikembangkan sendiri. Gimana bro, bisa baca alur syntaxnya kan???? Gila, script pendek gini aja baru kelar jam 21.37 bro. Bodoh amat saya ini. Ternyata simpel sekali, ente pasti bisa dah baca tu sintaks. Yah, tarik nafas lega dan bilang "gan, silahkan dicek, udah kelar". Jebret, work mas, kata beliau. Seneng sekali bisa membantu sesama dan bermanfaat bagi orang lain. Walaupun biayanya nggak seberapa, tapi ilmu hari ini luar biasa.


Dengan script tersebut kita nggak perlu lagi pake plugin ini itu buat redirect wordpress ke versi mobile. Udah saya coba dan work, tidak ada error permalinks. Sekian dulu curhatan newbie, tulisan ini hanya penging buat ane sendiri yang suka lupa, jadi kalo nanti butuh bisa buka blog horror ini. Jika bermanfaat silahkan dipakai. Jika jelek jangan diketawain. Thaks udah datang ke pasar loakan yang isinya cuma sampah g guna.

2 komentar:

  1. kalo tanpa www. bagemana gan ?

    BalasHapus
  2. pusing gw pelajari redirect ini.. gagal mulu gan

    BalasHapus

Tinggalkan komentar Anda setelah Anda membaca tulisan saya. Anda bebas menggandakan artikel dari blog ini asal tuliskan tautan balik blog ini.Terima kasih atas kunjungan teman-teman.