Bagaimana Menerapkan Modifikasi Skrip untuk Mengatasi Tiga Bug di WordPress 2.9

Apakah Anda sudah mengupgrade blog WordPress Anda ke versi 2.9? Apa yang terjadi selanjutnya? Yeah, banyak orang yang komplain mengenai fitur schedule untuk pengiriman tulisan secara otomatis menjadi tidak bekerja sebagaimana mestinya, di mana fitur ini salah satu kelebihan yang terdapat di WordPress. Saya sendir sering sekali menggunakan fitur ini. Setelah berkelana ke Google, saya berhasil menemukan solusi dari URL ini: WP 2.9: three bugs, and how to fix them. Di dorong oleh rasa keinginan tahu saya, selanjutnya saya membandingkan ketiga file hasil modifikasi tersebut dengan file versi aslinya. Akhirnya, saya menemukan kode mana yang seharusnya diganti. Jika Anda ingin memodifikasi ketiga file tersebut, mohon agar melakukannya dengan menggunakan fitur cPanel yang disediakan oleh hosting situs Anda. Jangan, saya ulangi: jangan pernah melakukannya langsung dari fitur Editor bawaan WordPress di panel admin, karena nampaknya fitur Editor ini pun memiliki masalah di WordPress versi 2.9. Berhati-hatilah, karena Anda akan memodifikasi file utama (core) dari WordPress itu sendiri!

  1. Buka file /wp-includes/class-simplepie.php Anda, dan cari kode ini:

    9438
    9439
    9440
    9441
    9442
    9443
    9444
    9445
    9446
    9447
    
    		// This is last, as behaviour of this varies with OS userland and PHP version
    		elseif (function_exists('iconv') && ($return = @iconv($input, $output, $data)))
    		{
    			return $return;
    		}
    		// If we can't do anything, just fail
    		else
    		{
    			return false;
    		}

    lalu timpa dengan kode berikut:

    9438
    9439
    9440
    9441
    9442
    9443
    9444
    9445
    9446
    9447
    9448
    9449
    9450
    9451
    9452
    
    		// This is last, as behaviour of this varies with OS userland and PHP version
    		elseif (function_exists('iconv') && ($return = @iconv($input, $output, $data)))
    		{
    			return $return;
    		}
    		// allow crappy servers to at least convert UTF-8 to UTF-8
    		elseif ( $input == $output )
    		{
    			return $data;
    		}
    		// If we can't do anything, just fail
    		else
    		{
    			return false;
    		}
  2. Buka file /wp-includes/default-widgets.php Anda, dan cari kode ini:

    734
    735
    736
    
    		echo $after_widget;
    		$rss->__destruct(); 
    		unset($rss);

    lalu timpa dengan kode berikut:

    734
    735
    736
    737
    
    		echo $after_widget;
    		if ( !is_wp_error($rss) )
    			$rss->__destruct(); 
    		unset($rss);
  3. Buka file /wp-includes/http.php Anda, dan cari kode yang ini:

    1297
    1298
    1299
    1300
    1301
    1302
    1303
    1304
    1305
    1306
    1307
    1308
    
    		// CURLOPT_TIMEOUT and CURLOPT_CONNECTTIMEOUT expect integers.  Have to use ceil since
    		// a value of 0 will allow an ulimited timeout.
    		// Use _MS if available.
    		if ( defined( 'CURLOPT_TIMEOUT_MS' ) ) {
    			$timeout_ms = (int) ceil( 1000 * $r['timeout'] );
    			curl_setopt( $handle, CURLOPT_CONNECTTIMEOUT_MS, $timeout_ms );
    			curl_setopt( $handle, CURLOPT_TIMEOUT_MS, $timeout_ms );
    		} else {
    			$timeout = (int) ceil( $r['timeout'] );
    			curl_setopt( $handle, CURLOPT_CONNECTTIMEOUT, $timeout );
    			curl_setopt( $handle, CURLOPT_TIMEOUT, $timeout );
    		}

    lalu timpa dengan kode berikut:

    1297
    1298
    1299
    1300
    1301
    
    		// CURLOPT_TIMEOUT and CURLOPT_CONNECTTIMEOUT expect integers.  Have to use ceil since
    		// a value of 0 will allow an ulimited timeout.
    		$timeout = (int) ceil( $r['timeout'] );
    		curl_setopt( $handle, CURLOPT_CONNECTTIMEOUT, $timeout );
    		curl_setopt( $handle, CURLOPT_TIMEOUT, $timeout );

Semoga berhasil! :-)

Share

75 kali dibacaCetak Artikel Ini Cetak Artikel Ini

Utarakan pikiran Anda

*


*