我想要的是:修改 WooCommerce 搜索表单(在前端)的查询以通过搜索产品的名称、描述和产品标签来显示产品。
我所拥有的:我正在尝试使用受此答案启发的代码,该代码返回产品名称和描述的结果。但是,如果我使用标签名称进行搜索,则没有结果。搜索查询不搜索产品的标签。
如何重现此问题(将以下代码放在活动主题的 functions.php 文件中):
function search_product_by_tag( $search, &$query_vars ) {
global $wpdb, $pagenow;
if ( 'edit.php' == $pagenow || empty($search) ) {
return $search;
}
$args = array(
'posts_per_page' => -1,
'post_type' => 'product',
'meta_query' => array(
array(
'key' => 'taxonomy',
'value' => 'product_tag',
'field' => 'name',
'terms' => array($query_vars->query['s']),
'compare' => 'LIKE',
)));
$posts = get_posts( $args );
if ( empty( $posts ) ) return $search;
$get_post_ids = array();
foreach($posts …Run Code Online (Sandbox Code Playgroud)