Wordpress搜索查询未返回用户
当我按用户名搜索用户时,他们的所有帖子都会显示在仪表板上。当我搜索同一个用户并添加他们的姓氏时,它根本不会显示出来。不知道为什么这只发生在这位作者身上。我做的所有设置都和其他写过文章的用户一样 这是我的第一个搜索URL和查询,它返回该用户编写的所有帖子。 当我加上她的姓时,没有结果。 这是另一个用户,只有名字或名字和姓氏的组合没有问题。 把它弄明白了Wordpress搜索查询未返回用户,wordpress,Wordpress,当我按用户名搜索用户时,他们的所有帖子都会显示在仪表板上。当我搜索同一个用户并添加他们的姓氏时,它根本不会显示出来。不知道为什么这只发生在这位作者身上。我做的所有设置都和其他写过文章的用户一样 这是我的第一个搜索URL和查询,它返回该用户编写的所有帖子。 当我加上她的姓时,没有结果。 这是另一个用户,只有名字或名字和姓氏的组合没有问题。 把它弄明白了 function atom_search_where($where){ global $wpdb; if (is_search()) $whe
function atom_search_where($where){
global $wpdb;
if (is_search())
$where .= "OR (t.name LIKE '%".get_search_query()."%' AND {$wpdb- >posts}.post_status = 'publish')";
return $where;
}
function atom_search_join($join){
global $wpdb;
if (is_search())
$join .= "LEFT JOIN {$wpdb->term_relationships} tr ON {$wpdb->posts}.ID = tr.object_id INNER JOIN {$wpdb->term_taxonomy} tt ON tt.term_taxonomy_id=tr.term_taxonomy_id INNER JOIN {$wpdb->terms} t ON t.term_id = tt.term_id";
return $join;
}
function atom_search_groupby($groupby){
global $wpdb;
// we need to group on post ID
$groupby_id = "{$wpdb->posts}.ID";
if(!is_search() || strpos($groupby, $groupby_id) !== false) return $groupby;
// groupby was empty, use ours
if(!strlen(trim($groupby))) return $groupby_id;
// wasn't empty, append ours
return $groupby.", ".$groupby_id;
}
add_filter('posts_where','atom_search_where');
add_filter('posts_join', 'atom_search_join');
add_filter('posts_groupby', 'atom_search_groupby');
是什么让你认为你应该能够按作者搜索?看到这个:@cale_b/c我已经可以搜索多个用户了。我只是叫它作家。用户写了一篇文章,这些文章可以通过查询中的关键词进行搜索。这并不能澄清你的问题。您的问题没有提到插件或自定义代码。由于没有自定义代码,WordPress在搜索时不包含“作者”(或“用户”),因此它不会找到给定作者的帖子。@cale_b那么我如何返回所有其他用户或作者写的帖子呢。下面是一个例子: