<?php
←Tag pembuka di bagian paling atas functions.phpob_start("ob_gzhandler");ob_start("compress");
Kode berwarna merah itu saja yang ditambahkan. Sebenarnya kode ini biasa ditempatkan di bagian index.php,single.php,page.php,404.php,archieves.php,juga search.php secara terpisah. Tapi karena struktur tema yang saya gunakan memang rumit dan banyak enkripsi atau encode,saya cari alternatif lain dengan mencoba menerapkannya di functions.php.Dari semua referensi yang pernah saya baca,belum pernah saya temukan cara mengaktifkan kompresi melalui functions.php,kebanyakan semua melakukannya melalui .htaccess,dan file-file php lainnya. Untuk benar atau tidaknya cara ini,saya juga belum dapat kepastian. Entah ini cara yang benar atau salah,apakah memang cara ini telah lama digunakan atau tidak,saya belum tahu pasti. Tapi yang jelas hasil test GID Network menunjukkan bahwa cara ini bekerja. Tidak hanya itu,test pagespeed GT Metrixjuga menunjukkan pagespeed saya mencapai 91 (A),padahal sebelumnya ketika memakai W3 Total Cache tidak bisa lebih dari poin 85-86. Di Google Pagespeedjuga menjadi 94 dari sebelumnya yang mentok 92 saja.Tidak puas hanya sampai disitu,saya menambahkan lagi beberapa perintah di functions.php. Ini bisa mengkompres semua file secara instan,dan menjadikannya sebaris html. Tapi yang ini jangan dicoba sebelum membackup file tema. Karena akan sulit mengembalikannya seperti semula jika ingin membuka editor. Seperti ini yang saya tambahkan di functions.php.
<?php
ob_start("ob_gzhandler");
ob_start("compress");
// required header info and character set
header("Content-type: text/css; charset: UTF-8");
// duration of cached content (Cache for 1 weeks)
$offset = 60 * 60 * 24 * 7;
$ts = gmdate("D, d M Y H:i:s", time() + $offset) . " GMT";
// cache control to process
header ('Cache-Control: max-age=' . $offset . ', must-revalidate');
//set etag-header
header('ETag: "'.md5($ts).'"');
// expiration header format
$ExpStr = "Expires: " . gmdate("D, d M Y H:i:s",time() + $offset) . " GMT";
// send cache expiration header to browser
header($ExpStr);
// initialize compress function for white-space removal
ob_start("compress");
// Begin function compress
function compress($buffer) {
// remove comments
$buffer = preg_replace('!/*[^*]**+([^/][^*]**+)*/!', '', $buffer);
// remove tabs, spaces, new lines, etc.
$buffer = str_replace(array("rn", "r", "n", "t", ' ', ' ', ' '), '', $buffer);
// remove unnecessary spaces
$buffer = str_replace('{ ', '{', $buffer);
$buffer = str_replace(' }', '}', $buffer);
$buffer = str_replace('; ', ';', $buffer);
$buffer = str_replace(', ', ',', $buffer);
$buffer = str_replace(' {', '{', $buffer);
$buffer = str_replace('} ', '}', $buffer);
$buffer = str_replace(': ', ':', $buffer);
$buffer = str_replace(' ,', ',', $buffer);
$buffer = str_replace(' ;', ';', $buffer);
return $buffer;}
ob_end_flush();
Kode berwarna merah saja yang ditambahkan,penempatannya setelah tag pembuka <?php di functions.php. Sebenarnya kode itu saya pelajari dari Blog Bang Alwiyang digunakan untuk mengkompres file-file CSS yang dijadikan PHP. Tapi karena saya selalu ingin coba-coba,saya menerapkannya di functions.php,dan seketika isi halaman saya menjadi sebaris saat saya lihat source kodenya. Sungguh kompresi yang cukup ekstrim.Jika ingin mencoba,backup dulu file-file tema yang Anda gunakan,atau lebih baik mencoba dulu di WordPress offline. Karena semua akan terkompres termasuk ketika Anda masuk dashboard atau halaman Admin,editor html posting Anda pun menjadi terkompres semua.Ternyata optimalisasi performa tidak harus bergantung pada plugin. Yang penting mengenal struktur tema yang dipakai,dan melakukan modifikasi hingga mencapai hasil yang memuaskan. Mungkin sampai disini sharing Reyzha untuk kali ini,saya masih akan menyempurnakan lagi untuk penempatan javascript tema ini.O iya,jika Sobat ada yang berminat untuk mendapatkan tema Maxime seperti ini,akan saya berikan versi optimal hasil modifikasi saya. Diantaranya aktifasi kompresi,optimasi header,tambahan pertanyaan antispam simpel seperti komentar di bawah,dan juga perubahan gambar-gambar background menjadi CSS3 gradient dan penambahan transisi. Jika ada pertanyaan atau tanggapan silakan kirim melalui form komentar.Sekian dulu celotehan saya Sobat,selamat beraktifitas dan Salam... :)
11 komentar:
wah mas kalo boleh saya pesen donk tema yang sudah dikompresin, tema yg Ariel itu loh mas , soalnya saya terlalu gaptek untuk ngurusin ini ... hehe sesama wonk kediri mas, msok tego men to :D
Gampang... Bisa Diatur... Wani Piro... :)
Haha...
OK OK, aku modif dulu biar optimal buat performa plus SEO nya...
WAHHH tenanan to mas ?
hehe okelah mas saya tunggu kalo begitu :D
Siip... hehe... :)
Saya coba cek di gzip-test trus tulisannya gini :
"Web page compressed ? Yes" itu apa perlu mengaktifkan kompresi mas ?
zha..buat blogspot ada gk..wkwkwkkw..buat gue ya :p
itu berarti sudah aktif, kemungkinan dari plugin cache atau memang sudah dilakukan tweaking sebelumnya.
Nah, tu saya lihat pake W3 Total cache hehe... plugin itu juga jadi favorit saya. Tapi sebenarnya ke pagespeed lebih optimal menggunakan cara-cara manual daripada dengan plugin. Namun saya tetap pake W3TC soalnya masih mencoba fungsi CDN nya.
apanya peb ???
biar blog ku ringan...hehe..gimana caranya
mampir ya..bot baru zha
http://pebryan.blogspot.com/2012/04/bot-perfect-world-indonesia-2012.html
kalau blogspot aku kurang paham peb. tapi untuk optimalisasi dibatasi sama yang punya server (google), untuk yang bisa dilakukan ya mengurangi penggunaan javascript sama gadget yang gak penting. terus milih temanya juga yang minimalis, gak banyak jquery.
This web site is admittedly fascinating i'm searching for is there the other examples? but anyway thanks significantly because I found that i was probing for.
Posting Komentar
Tahukah anda, berkomentar menggunakan nama dan url bisa meningkatkan kunjungan balik ke Blog anda? Gunakan form komentar dengan bijak. Tingkatkan Backlink secara efektif hanya dengan meninggalkan komentar menggunakan Name/URL.