最近,我有一个由发展中公司在WooCommerce开发的网站。由于他不必要的资金需求,我需要从他那里收回我的网站,我没有注意到产品搜索没有工作。
问题是每当我开始在搜索栏中输入内容时,通过实时搜索,我得到产品名称。但是当我搜索产品的名称或任何东西并立即点击输入时,搜索结果将我带到显示所有产品的商店页面。没有相关产品出现。我跟着像
这样的解决方案我刚把它复制到function.php,情况也一样。
function wp_search_filter($query) {
$url = 'https://' . $_SERVER['SERVER_NAME'] . $_SERVER['REQUEST_URI'];
if ( (strpos($url,'post_type=product') !== false) && is_search() ) {
$query->set('post_type', 'product');
}
return $query;
}
add_filter('pre_get_posts','wp_search_filter');
答案 0 :(得分:1)
您可以在此网页上找到解决方案
https://github.com/woocommerce/woocommerce/wiki/wc_get_products-and-WC_Product_Query
当我有时间时,我会尝试创造更好的解释, 我建议你使用自定义var或使用一些自定义分类法作为Key,因为使用它。
function wp_search_filter($query) {
$url = 'https://' . $_SERVER['SERVER_NAME'] .
$_SERVER['REQUEST_URI'];
if ( (strpos($url,'post_type=product') !== false) && is_search() ) {
$query->set('post_type', 'product');
}
return $query;
}
add_filter('pre_get_posts','wp_search_filter');
让我们举一个例子,你会搜索一件衬衫,骨头产品在描述中有“衬衫”字样,这个wp_search也会得到骨头,它在我的一个项目中发生。