Home WordpressWordPress cơ bản Sửa tham số form tìm kiếm trong wordpress

Sửa tham số form tìm kiếm trong wordpress

by admincp

Mặc định tham số chuỗi nội dung của form tìm kiếm trong wordpress là name=”s”. Tham số này tạo bởi form field sử lý bởi phương thức GET.
search-query
Bạn có thể đổi thành tên khác. Trong bài viết này mình sẽ đổi “s” thành “search”
Để làm điều này bạn cần đăng ký sử dụng tham số query với hook query_vars.

function new_search_parameter( $allowed_query_vars ) {
        $allowed_query_vars[] = 'search';
        return $allowed_query_vars;
}
add_filter('query_vars', 'new_search_parameter' );

Chèn đoạn code trên vào functions.php, giúp bạn tránh lỗi 404 not found khi sử dụng tham số “search”. Note: Bạn có thể đổi thành tham số khác nếu muốn.

Trong chuỗi query trên URL có thể chứa nhiều tham số, hãy đảm bảo tham số thay thế cho “s” không trùng với tham số khác có trên URL. Tiếp theo, chúng ta kiểm tra và build lại query_string bằng đoạn code sau đây:

add_filter('query_string', 'swap_search_parameter');
function swap_search_parameter($query_string) {
        $query_string_array = array();
        parse_str($query_string, $query_string_array); 
        if(isset($query_string_array[get_option("search_parameter", "search")])){
                $query_string_array['s'] = $query_string_array[get_option("search_parameter", "search")];
                unset($query_string_array[get_option("search_parameter", "search")]);
        }
        return http_build_query($query_string_array, '', '&');
}

Nếu có trùng tham số “search” mà trước đó bạn sử dụng với mục đích thì đoạn code sẽ lấy giá trị của tham số này làm chuỗi nội dung tìm kiếm, bằng cách gán vào tham số “s”.

Bước Cuối cùng chuyển hướng URL sang địa chỉ với tham số tìm kiếm mới là “search”. Sử dụng hook template_redirect như dưới đây.

function change_search_parameter() {
	if ( is_search() && ! empty( $_GET['s'] ) ) {
		wp_redirect( home_url( '?search=" ) . urlencode( get_query_var( "s' ) ) );
		exit();
	}
}
add_action( 'template_redirect', 'change_search_parameter' );

Giờ quay trở lại trang web, bạn gõ từ khóa vào ô search và nhấn enter. Kết quả tham số

Thay đổi tham số tìm kiếm sử dụng plugin

Nếu bạn không rành về PHP và wordpress api thì có thể sử dụng plugin Change Search Parameter.
Cài đặt plugin như bình thường. Sau khi kích hoạt plugin, bạn truy cập vào Settings->Change Search Parameter.
Tại đây bạn sẽ kích hoạt sử dụng tham số tìm kiếm và đổi tên tham số “s” thành tham số khác tại mục “Enter Search Query Parameter..”.
change-search-parameter
Chúc bạn thành công.

Để nhận được bài viết mới vui lòng đăng ký kênh kiến thức WordPress từ A-Z ở Form bên dưới. Bạn cũng có thể nhận được sự trợ giúp trên TwitterFacebook

Liên hệ

Công ty chuyên Thiết kế website uy tín nhất Miền Bắc: http://vinastar.net

Hotline tư vấn: 0989 48 3456

Nguồn: Sưu tầm trên internet

You may also like

Leave a Comment