WordPress 默认的搜索功能还真挺弱的,搜索出来的结果很不符合人意,如果你想让它检索出来的结果更加相关,可以限定只搜索文章的标题,将下面的代码添加到主题的 functions.php 文件即可:
创新互联建站成立于2013年,我们提供高端网站建设公司、成都网站制作、网站设计、网站定制、全网营销推广、微信小程序开发、微信公众号开发、成都网站推广服务,提供专业营销思路、内容策划、视觉设计、程序开发来完成项目落地,为成都铜雕雕塑企业提供源源不断的流量和订单咨询。
/**
* 让 WordPress 只搜索文章的标题
*
*/
function __search_by_title_only( $search, $wp_query )
{
global $wpdb;
if ( empty( $search ) )
return $search; // skip processing - no search term in query
$q = $wp_query-query_vars;
$n = ! empty( $q['exact'] ) ? '' : '%';
$search =
$searchand = '';
foreach ( (array) $q['search_terms'] as $term ) {
$term = esc_sql( like_escape( $term ) );
$search .= "{$searchand}($wpdb-posts.post_title LIKE '{$n}{$term}{$n}')";
$searchand = ' AND ';
}
if ( ! empty( $search ) ) {
$search = " AND ({$search}) ";
if ( ! is_user_logged_in() )
$search .= " AND ($wpdb-posts.post_password = '') ";
}
return $search;
}
add_filter( 'posts_search', '__search_by_title_only', 500, 2 );
wordpress系统本身是对搜索引擎友好的,如果网站的内容比较私密不希望蜘蛛爬取,可以能过以下方法实现:
1、进入wordpress "设置" - "阅读" - 然后勾选“建议搜索引擎不索引本站点”,再点击 “保存更改”。这样搜索引擎就不会收录和索引网站了。
2、还可以通过配置“robots.txt”来告诉搜索引擎,不要收录/索引网站的内容;
步骤:
1),新建一个文本文档,重命名为“robots.txt”;
2),在文本文件贴入以下内容并保存:
User-agent: * Disallow: / 3),将设置好的“robots.txt”上传至网站的根目录。
1、需要大家新建一个搜索页面,将它命名为:searchform.php
2、直接用DW打开searchform.php,将以下代码一会补充复制到searchform.php中。
3、复制添加网站主题里边的wordpress 分类模板目录,可以是文章的列表目录,也可以是产品图片列表目录,然后更名为search.php,才能实现搜索功能。
4、选择搜索框显示的页面位置,并在相应的位置添加搜索框调用代码:
?php include (TEMPLATEPATH . searchform.php'); ?
按照以上步骤全部完成之后,就可以在自己的网站上实现搜索功能了。