如何让wordpress后台搜索只匹配搜索文章标题

  今天编辑小美眉问网站wordpress后台能不能实现只搜索标题,这个问题怎么可能难到ytkah呢?打开Stack Overflow一顿狂搜,总数有解决方案了,哈哈哈!一起来看看怎么操作吧。

  打开主题目录的function.php文件,在合适的位置添加如下代码

add_filter( ‘posts_search‘, ‘ytkah_search_by_title‘, 10, 2 );
function ytkah_search_by_title( $search, $wp_query ) {
    if ( ! empty( $search ) && ! empty( $wp_query->query_vars[‘search_terms‘] ) ) {
        global $wpdb;
        $q = $wp_query->query_vars;
        $n = ! empty( $q[‘exact‘] ) ? ‘‘ : ‘%‘;
        $search = array();
        foreach ( ( array ) $q[‘search_terms‘] as $term )
            $search[] = $wpdb->prepare( "$wpdb->posts.post_title LIKE %s", $n . $wpdb->esc_like( $term ) . $n );
        if ( ! is_user_logged_in() )
            $search[] = "$wpdb->posts.post_password = ‘‘";
        $search = ‘ AND ‘ . implode( ‘ AND ‘, $search );
    }
    return $search;
}

  保存,上传,刷新缓存,后台搜索一下,看看搜索结果页关键词是不是只包含标题中

  这个方法同样适用于前端的站内搜索,感兴趣的小伙伴可以试试

原文地址:https://www.cnblogs.com/ytkah/p/11607042.html

时间: 2024-10-03 18:40:33

如何让wordpress后台搜索只匹配搜索文章标题的相关文章

select2 下拉搜索 可编辑可搜索 / 只可搜索

官网 (http://select2.github.io/examples.html) <!--引入select2需要的文件--> <script type="text/javascript" src="select2.full.js"></script> <link href="select2.min.css" type="text/css" rel="stylesheet

WordPress后台的文章、分类,媒体,页面,评论,链接等所有信息中显示ID并将ID设置为第一列

WordPress后台默认是不显示文章.分类等信息ID的,查看起来非常不方便,不知道Wp团队出于什么原因默认不显示这个但可以使用Simply Show IDs插件来实现 不使用插件,其他网友的实现: <?php /** *为WordPress后台的文章.分类等显示ID From wpdaxue.com * ID默认添加到列的后面 * http://www.wpdaxue.com/simply-show-ids.html * htl add 2015-01-16 */ //添加一个新的列 ID f

基于layui模块的后台匹配搜索框

最近做了一个项目,其中需要从大量数据中筛选出需要的相应数据,因为数据量庞大,且变化,因此不能一次性渲染至前端页面,所以只能通过输入关键字,后台获取关键字搜索匹配返回数据给前端的方法,然后在网上大量寻找,始终找不到能完美融合项目的插件,于是萌发了自己写一个的想法,晚辈学疏才浅,望指教! 下面开始进入正题 前端部分 本想自己设计样式,但审美受限,感觉与整体项目风格不符,于是直接采用layui模块的样式 {% load staticfiles %} <!DOCTYPE html> <html

android 搜索自动匹配关键字并且标红

这个效果主要是为了着重表现搜索关键字的 . 1. 单关键字匹配 若只需匹配 搜索内容  可以写的简单一些,代码如下: if (name != null && name.contains(mKeyWord)) { int index = name.indexOf(mKeyWord); int len = mKeyWord.length(); Spanned temp = Html.fromHtml(name.substring(0, index) + "<font color

JS正则对象 RegExp(有变量的时候使用),用来匹配搜索关键字(标红)

1,平常我们写js正则规则的时候,一般是这样写: var reg = /abc/; 然而,这样写的话,如果abc是一个变量这样就不行,我们需要下面这种写法: var abc = "汉字";var reg = new RegExp(abc, 'g');//g 全局匹配 2, 搜索关键字,让关键字标红: // class='text' :这个类中的文字 $('.text').each(function () {// 关键字标红 var reg = new RegExp($sea, 'g')

android +7与8开头的号码在拨号盘上搜索相互匹配

某些运营商,要求在拨号盘的DialerSearch上面,对于+7与8开头的号码要能够互相搜索: 1.查询"+7123456"这个号码,输入"8123456"也能够检索到.反之亦然. 2. 输入"8",能匹配"8"开头的数字或者"TUV"开头的名字. KK版本对DialerSearch有一定的修改,请参考FAQ11308 [DialerSearch] 在KK上如何实现+7与8开头的号码在拨号盘上搜索相互匹配.

WordPress中文分词与智能搜索

问题WordPress的搜索功能非常简陋,如果用户搜索"日语综合教程第六册",WordPress会机械地构造一个wp_posts.post_title LIKE '%日语综合教程第六册%'的SQL查询送到数据库里,结果十有八九找不到任何文章.因为我的文章里并没有直接出现这种句子,我一般给"日语综合教程"加了书名号,并且"第六册"前面一般有空格.解决思路解决思路是对用户的查询字串进行分词,然后用空格隔开,最后送到数据库里查询.中文分词以前我一直抱怨

多对多的属性对应表如何做按照类别的多属性匹配搜索

电商设计中常用到的属性对应表需要做按照类别的多属性匹配功能,举例建表如下 CREATE TABLE goods_attr ( `id` int(11) unsigned NOT NULL AUTO_INCREMENT COMMENT '自增id', `goods_id` int(11) DEFAULT '0' COMMENT '商品id', `type` int(11) DEFAULT '0' COMMENT '属性类型:1:商品类型 2:支持语言 3:支持平台', `value` varcha

Python: 字符串搜索和匹配,re.compile() 编译正则表达式字符串,然后使用match() , findall() 或者finditer() 等方法

1. 使用find()方法 >>> text = 'yeah, but no, but yeah, but no, but yeah' >>> text.find('no')10 2. 使用re.match() 对于复杂的匹配需要使用正则表达式和re 模块.为了解释正则表达式的基本原理,假设想匹配数字格式的日期字符串比如11/27/2012 ,可以这样做:>>> text1 = '11/27/2012'>>> text2 = 'Nov