Php 如何修改WordPress中的搜索小部件以仅搜索当前类别?
我希望修改搜索小部件,以便在搜索结果时只返回当前类别。如果我使用以下静态工具,我可以让搜索正常工作:Php 如何修改WordPress中的搜索小部件以仅搜索当前类别?,php,wordpress,Php,Wordpress,我希望修改搜索小部件,以便在搜索结果时只返回当前类别。如果我使用以下静态工具,我可以让搜索正常工作: function searchcategory($query) { if ($query->is_search) { $query->set('category_name','adams-corner'); } return $query; } add_filter('pre_get_posts','searchcategory'); 但我为
function searchcategory($query) {
if ($query->is_search) {
$query->set('category_name','adams-corner');
}
return $query;
}
add_filter('pre_get_posts','searchcategory');
但我为每只猫使用一个模板,所以它需要知道它属于哪一类,我希望使用模板中设置的全局变量,但它似乎不起作用:
function searchcategory($query) {
if ($query->is_search) {
$query->set('category_name',$post->post_name);
}
return $query;
}
如果您能帮助您将当前类别设置为动态类别,我们将不胜感激。您可以使用查询变量获取当前类别,然后在查询中使用它
function searchcategory($query) {
if ($query->is_search) {
$category = get_category( get_query_var( 'cat' ) );
$cat_id = $category->cat_ID;
$query->set('category',$cat_id);
}
return $query;
}那没用。如果你在这里看到:类别就是烹饪。如果您在侧边栏上搜索单词Sick。它应该不会有结果。但它显示的结果属于另一类,称为亚当角。