2012-01-17 123 views
0

我想將默認名稱's'更改爲wordpress的搜索小部件的其他名稱。所以,基本上我需要更改小部件模板和讀取GET輸入的處理程序。你能幫我快點找到那兩個地方嗎?謝謝。搜索自定義搜索表單文本輸入字段名稱

回答

0

在谷歌「得到搜索表單WordPress的」

從這裏取:http://codex.wordpress.org/Function_Reference/get_search_form

放棄這一功能在主題functions.php

function my_search_form($form) { 

     $form = '<form role="search" method="get" id="searchform" action="' . home_url('/') . '" > 
     <div><label class="screen-reader-text" for="s">' . __('Search for:') . '</label> 
     <input type="text" value="' . get_search_query() . '" name="s" id="s" /> 
     <input type="submit" id="searchsubmit" value="'. esc_attr__('Search') .'" /> 
     </div> 
     </form>'; 

     return $form; 
    } 

    add_filter('get_search_form', 'my_search_form'); 
+0

嗯,它不回答呃我的問題完全。我也通過搜索獲得了它。但是,當我提交搜索表單時,wordpress會處理它,並在查詢字符串中查找「s」,我需要它來處理「my_custom_name」查詢字符串值的值。所以,應該有一些方法告訴wordpress我正在使用「my_custom_name」而不是「s」。或者至少傳遞搜索字符串。 – Rana 2012-01-18 10:25:00

2

這是我用過的解決方案,其中'q'是搜索字段的名稱:

function my_query_vars($public_query_vars) { 
    if (isset($_GET['q']) && ! empty($_GET['q'])) { 
     $_GET['s'] = $_GET['q']; 
    } 

    return $public_query_vars; 
} 

add_filter('query_vars', 'my_query_vars');