Snippets cung cấp thông tin giá trị tới người chọn kiếm giúp họ dễ dàng xác định được đâu là trang website họ nên. Vậy còn Rich Snippets là gì?
Snippets bao gồm tiêu đề, mô tả nội dung, đường dẫn đến trang web nhằm chế tạo thêm thông tin giá trị đến người tìm kiếm giúp họ dễ dàng xác định được đâu là trang web họ cần.
Dưới đây là các code Snippets tìm kiếm hay cho WordPress để bạn tham khảo.
Code Snippets chọn kiếm hay cho WordPress
một dòng bỏ Pages hoặc Posts khỏi danh sách chọn kiếm
Trong ví như khách hàng ko muốn trang (Pages) hoặc bài viết (Posts) nào xuất hiện trong danh sách tìm kiếm , khách hàng chỉ cần việc copy đoạn code sau và dán nó vào file functions.php. Trong đoạn code sau, nó sẽ chiếc bỏ mọi những bài viết mang categories mang ids lần lượt là 0 và 1, khách hàng chỉ nên việc thay đổi id của category nào mà quý khách muốn cái bỏ là được.
function SearchFilter($query) if ($query->is_search) $query->set('cat','0,1'); return $query; add_filter('pre_get_posts','SearchFilter'); |
2 nếu kết quả tìm kiếm chỉ có một bài viết, tự động redirect tới bài viết ấy.
Chắc hẳn là quý khách sẽ không muốn người mua cần click chuột vào kết quả tìm kiếm mà chỉ sở hữu một kết quả trả về. tiêu dùng đoạn code sau và dán nó vào file functions.php để nó chuyển ngay tới bài viết đấy.
add_action('template_redirect', 'redirect_single_post'); function redirect_single_post() if (is_search()) global $wp_query; if ($wp_query->post_count == 1) wp_redirect( get_permalink( $wp_query->posts['0']->ID ) ); |
3. Search Form sở hữu Drop Down sở hữu categories
Sẽ tốt hơn hầu hết giả dụ như người dùng với thể kiếm bài viết và lọc nó theo category mà họ muốn. Copy đoạn code sau vào bất kì file nào mà khách hàng muốn hiển thị form chọn kiếm.
< form role="search" method="get" id="searchform" action="<?php bloginfo('siteurl'); ?>"> <div> <label class="screen-reader-text" for="s">Search for:</label> <input type="text" value="" name="s" id="s" /> in <?php wp_dropdown_categories( 'show_option_all=All Categories' ); ?> <input type="submit" id="searchsubmit" value="Search" /> </div> </form> |
4 Hiển thị số lượng kết quả trả về.
Theo mặc định thì WordPress sẽ không trả lại số lượng tìm kiếm của từ khóa , để làm cho được việc này thì quý khách thay thế đoạn code sau trong filesearch.php :
<h2 class="pagetitle">Search Results</h2> |
bằng đoạn code này :
<h2 class="pagetitle">Search Results for <?php /* Search Count */ $allsearch = &new WP_Query("s=$s&showposts=-1"); $key = wp_specialchars($s, 1); $count = $allsearch->post_count; _e(''); _e('<span class="search-terms">'); echo $key; _e('</span>'); _e(' — '); echo $count . ' '; _e('articles'); wp_reset_query(); ?></h2> |
5 Lọc kết quả tìm kiếm theo post type
người dùng với thể tạo thêm chức năng lọc bài viết theo kiểu bài viết (post type) bằng cách dán đoạn code sau vào filefunctions.php .
function SearchFilter($query) if ($query->is_search) // Insert the specific post type you want lớn search $query->set('post_type', 'feeds'); return $query; add_filter('pre_get_posts','SearchFilter'); |
6 Tô đậm kết quả tìm kiếm
Trong search.php, thay thế the_title() function có echo $title; đồng thời copy đoạn code sau nằm trước đoạn code mà chúng ta vừa thay thế.
<?php $title = get_the_title(); $keys= explode(" ",$s); $title = preg_replace('/('.implode('|', $keys) .')/iu', '<strong class="search-excerpt">\0</strong>', $title); ?> |
7 tiêu dùng jQuery để highlight từ khóa tìm kiếm
Sẽ thật lý tưởng giả dụ như các từ khóa tìm kiếm được hightlight trong các tiều đề bài viết được trả về. thứ nhất, người dùng copy đoạn code sau vào filefunctions.php
function hls_set_query() $query = attribute_escape(get_search_query()); if(strlen($query) > 0) echo ' <script type="text/javascript"> var hls_query = "'.$query.'"; </script> '; function hls_init_jquery() wp_enqueue_script('jquery'); add_action('init', 'hls_init_jquery'); add_action('wp_print_scripts', 'hls_set_query'); |
Sau ấy là copy đoạn code sau vào file header.php
<style type="text/css" media="screen"> .hls background: #D3E18A; </style> <script type="text/javascript"> jQuery.fn.extend( highlight: function(search, insensitive, hls_class)[\]\/\\])/g,"\\$1") +")", insensitive ? "ig" : "g"); return this.html(this.html().replace(regex, function(a, b, c) return (a.charAt(0) == "<") ? a : "<strong class=\""+ hls_class +"\">" + c + "</strong>"; )); ); jQuery(document).ready(function($) if(typeof(hls_query) != 'undefined') $("#post-area").highlight(hls_query, 1, "hls"); ); </script> |
8 Thay đổi dừng số lượng bài viết trả về
Theo mặc định thì WordPress sẽ trả về 10 bài viết sau mỗi lần chọn kiếm, để thay đổi số lượng này, quý khách copy đoạn code sau vào filefunctions.php , như trong đoạn code này ,thì số lượng trả về sẽ là 20.
function limit_posts_per_search_page() { if ( is_search() ) set_query_var('posts_per_archive_page', 20); |
9 {không|ko} {dừng|giới hạn|ngừng} số lượng bài viết trong WordPress search
{giả dụ|nếu|trường hợp|ví như} {các bạn|khách hàng|người dùng|người mua|quý khách} muốn trả về {đa số|hầu hết|mọi|tất cả|toàn bộ} {các|những} kết quả {chọn|tìm} kiếm mà {không|ko} {bắt buộc|buộc phải|cần|nên|phải} {dừng|giới hạn|ngừng} thì thay thế đoạn code sau trong filesearch.php.
<?php if (have_posts()) : ?> <?php while (have_posts()) : the_post(); ?> |
bằng đoạn code :
{1|một} 2 3 | <?php $posts=query_posts($query_string . '&posts_per_page=-1'); ?> <?php if (have_posts()) : ?> <?php while (have_posts()) : the_post(); ?> |
10 Ngăn chặn hoàn toàn khả năng {chọn|tìm} kiếm
{giả dụ|nếu|trường hợp|ví như} như vì {1|một} lý do nào {ấy|đấy|đó} mà {các bạn|khách hàng|người dùng|người mua|quý khách} {không|ko} muốn chức năng {chọn|tìm} kiếm {có|mang|sở hữu|với} thể hoạt động được ở trang {web|website} hay blog của mình, thì chỉ {bắt buộc|buộc phải|cần|nên|phải} copy đoạn code sau vào file functions.php là được.
function fb_filter_query( $query, $error = true ) { if ( is_search() ) { $query->is_search = false; $query->query_vars[s] = false; $query->query[s] = false; // {lớn|to} error if ( $error == true ) $query->is_404 = true; } } add_action( 'parse_query', 'fb_filter_query' ); add_filter( 'get_search_form', create_function( '$a', "return null;" ) ); |
Hy vọng {có|mang|sở hữu|với} {các|những} code Snippets {chọn|tìm} kiếm hay cho WordPress trên sẽ giúp bạn {hợp lý|logic|thông minh|tối ưu|tuyệt vời} hơn nữa cho {web|website} wordpresscủa mình.
Chúc bạn thành công!
0 nhận xét:
Đăng nhận xét