WordPress 技巧:让后台文章列表支持搜索支持自定义字段

Wordpress 技巧:让后台文章列表支持搜索支持自定义字段

存在 post meta 中,而 WordPress 默认的搜索是不支持 post meta 的,可以实现根据商家编码搜索商品的功能:

只需要下面代码就可:

1
2
3
4
5
6
7
8
9
10
11
12
add_action('posts_search', function($search, $query){
    global $wpdb;

    if ($query->is_main_query() && !empty($query->query['s'])) {

        $sql    = " OR EXISTS (SELECT * FROM {$wpdb->postmeta} WHERE post_id={$wpdb->posts}.ID and meta_key = 'product_no' and meta_value like %s)";
        $like   = '%' . $wpdb->esc_like($query->query['s']) . '%';

        $search .= $wpdb->prepare($sql, $like);
    }
    return $search;
},2,2);

第6行的product_no 替换为你的自定义字段名称

作者:Denis