Nice Search Eklentisi!

Nice Search eklentisi ile WordPress arama cümleciğini Arama sonuçlarına uyumlu hale getirebiliriz. Eklenti bunu sağlamak için Redirect 301 kuralını kullanıyor. Yani WordPress arama cümleciği “?s=arama%20cumlesi” olan arama sorgusunu “/arama/arama+cumlesi” olarak değiştiriyor. Bunu yapmak güzel birşey gibi geldi bana. Hem belki böylece arama sonuçlarından gelebilecek bazı SQL Inject sorunlarının da önüne geçebiliriz.

Eklentideki değiştirilecek alan;

Eklentinin tüm içeriği aşağıda görülebilmektedir. Burda search olan arama sözcüğünü arama olarak değiştirebilmek için öncelikle eklentiyi kurun ve ardından eklenti düzenleyicisinden Nice Search seçerek aşağıda belirttiğim alanı düzenleyin.

Eklenti İçeriği

<?php /*
Plugin Name: Nice Search
Version: 0.2
Plugin URI: http://txfx.net/code/wordpress/nice-search/
Description: Redirects ?s=query searches to /search/query, and converts %20 to +
Author: Mark Jaquith
Author URI: http://txfx.net/
*/

function txfx_nice_search() {
	if ( is_search() &amp;&amp; strpos($_SERVER['REQUEST_URI'], '/wp-admin/') === false &amp;&amp; strpos($_SERVER['REQUEST_URI'], '/search/') === false ) {
		wp_redirect(get_bloginfo('home') . '/search/' . str_replace(' ', '+', str_replace('%20', '+', get_query_var('s'))));
		exit();
	}
}

add_action('template_redirect', 'txfx_nice_search');
?>

Değiştirilecek alan;

function txfx_nice_search() {
	if ( is_search() &amp;&amp; strpos($_SERVER['REQUEST_URI'], '/wp-admin/') === false &amp;&amp; strpos($_SERVER['REQUEST_URI'], '/arama/') === false ) {
		wp_redirect(get_bloginfo('home') . '/arama/' . str_replace(' ', '+', str_replace('%20', '+', get_query_var('s'))));
		exit();

Bunları yaptıktan sonra nasıl çalıştığına bakmak için benim sitemde bir arama yapabilirsiniz. Sonuçtan memnun kalacağınızı umarım.

[notice type=notice]search cümlesini değiştirdiğimizde “bazen” arama sonuçlarında bulamama gibi bir durum olabiliyor. Dikkatinize…[/notice]

İndirmek için:

[download id=”15″]

Ben dosya değiştirmeyi bilmiyorum diyenler için:

[download id=”16″]

Hepsi Bu. Hadi selametle…

Bir cevap yazın

E-posta hesabınız yayımlanmayacak. Gerekli alanlar * ile işaretlenmişlerdir