WordPress admin panelindeki javascript sorunu çözümü

Geçenlerde WordPress admin panelindeki style sorunu çözümü başlıklı bir yazı yayınlamıştım. Gzip özelliğinin aktif olmadığı sunucularda, stil dosyalarının görüntülenmesi sıkıntı oluşturuyordu. Aynı durum JavaScript dosyaları için de geçerli ve yine bunlar için de elle çözümünü ekliyorum.

WordPress admin panelindeki javascript sorunu çözümü

Eğer stil dosyalarında da problem yaşıyorsanız, buradakini uygulamalısınız.

WordPress yönetici panelindeki Javascript dosyaları tek bir dosya haline getirilir ve sıkıştırılıp tarayıcıya gönderilir. Ancak bazı sunucularda bu yöntem düzgün çalışmaz.

Eğer yönetici panelinin kaynağını görüntülerseniz, aşağıdaki URL adresini bulacaksınız javascript dosyaları için.

Çözümüm elle uygulanması

Wp-admin içerisinde yer alan load-scripts.php dosyasını açmalısınız. Dosyanın en alt satırına kadar inin.

if ( $compress && ! ini_get('zlib.output_compression') && 'ob_gzhandler' != ini_get('output_handler') ) {
header('Vary: Accept-Encoding'); // Handle proxies
if ( false !== strpos( strtolower($_SERVER['HTTP_ACCEPT_ENCODING']), 'deflate') && function_exists('gzdeflate') && ! $force_gzip ) {
header('Content-Encoding: deflate');
$out = gzdeflate( $out, 3 );
} elseif ( false !== strpos( strtolower($_SERVER['HTTP_ACCEPT_ENCODING']), 'gzip') && function_exists('gzencode') ) {
header('Content-Encoding: gzip');
$out = gzencode( $out, 3 );
}
}

Yukarıdaki kodları /* ve */ karakterleri ile kapatacağız. Yani alttaki gibi olacak.

/*
if ( $compress && ! ini_get('zlib.output_compression') && 'ob_gzhandler' != ini_get('output_handler') ) {
header('Vary: Accept-Encoding'); // Handle proxies
if ( false !== strpos( strtolower($_SERVER['HTTP_ACCEPT_ENCODING']), 'deflate') && function_exists('gzdeflate') && ! $force_gzip ) {
header('Content-Encoding: deflate');
$out = gzdeflate( $out, 3 );
} elseif ( false !== strpos( strtolower($_SERVER['HTTP_ACCEPT_ENCODING']), 'gzip') && function_exists('gzencode') ) {
header('Content-Encoding: gzip');
$out = gzencode( $out, 3 );
}
}
*/

İşlem sonrasında dosyanın bu halini kaydedin. Yönetici panelinizi tekrar görüntüleyin ve klavyedeki F5 tuşuna basarak tarayıcının önbelleğinin yenilenmesini sağlayın. Probleminiz çözülmüş olacaktır.