Cara Memperkecil atau Compress Ukuran Javascript


 Nah, pada kecempatan kali ini saya ingin berbagi tentang cara memperkecil atau compress ukuran javascript. Cara yang digunakan untuk compress javascript ini juga tidak berbeda jauh dengan cara compress css yaitu masih menggunakan Gzip Compression. Dengan melakukan compressi javascript pada theme yang kita gunakan, dapat meningkatkan kecepatan akses pada blog kita.
 
Tidak berbeda jauh dengan compress, yaitu dengan menggunakan fungsi Minify, Set Cache Control, eTag, Future Expiration dan Vary Encoder pada header javascript sehingga dapat memenuhi kualifikasi Pagespeed dan Yslow secara sempurna untuk javascript ini.
1. Masih sama seperti seperti posingan tentang compress css sebelum, kita buat terlebih dahulu file php pada root dimana file javascript berada  (Misal : gzip.js.php) lalu isi dengan script berikut ini :

<?php
if (substr_count($_SERVER['HTTP_ACCEPT_ENCODING'], 'gzip')) {
ob_start("ob_gzhandler");
}
else {
ob_start();
}
//header("Content-Type:text/javascript");
// Set durasi cache untuk satu minggu
$offset = 60 * 60 * 24 * 7;
$ts = gmdate("D, d M Y H:i:s", time() + $offset) . " GMT";
// Set process cache control
header ('Cache-Control: max-age=' . $offset . ', must-revalidate');
// Set etag-header
header('ETag: "'.md5($ts).'"');
// Set expiration header format
$ExpStr = "Expires: " . gmdate("D, d M Y H:i:s",time() + $offset) . " GMT";
// Send cache expiration header ke browser
header($ExpStr);
function compress($buffer) {
// Minify – Membuang tabs, spaces, new lines, etc.
$buffer = str_replace(array("\r\n", "\r", "\n", "\t", '', '', ''), '', $buffer);
// Minify – membuang spasi yang tidak perlu
$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;}

define('DS', DIRECTORY_SEPARATOR);
define('PATH_ROOT', dirname(__FILE__) . DS);

$jsPath = PATH_ROOT;

include $jsPath."ry.script.js";

?>
 
2. Selanjutnya ubah link javascript pada theme menjadi :
 
<script type="text/javascript" src="gzip.js.php"></script>
Dengan cara tersebut di atas, maka ukuran javascript dapat lebih di perkecil sampai batas maksimum.
Previous
Next Post »

Please use the word good and polite! 有賀とございます ConversionConversion EmoticonEmoticon

Cool Blue Outer Glow Pointer