当前位置: 首页 > 知识库问答 >
问题:

Woocommerce产品搜索未检查“产品标签”?

燕朝明
2023-03-14

似乎WooCommerce产品的搜索功能没有检查“产品标签”分类术语,也没有检查SKU字段?我将SKU作为产品标签添加到它们各自的产品中,但当我搜索SKU时,它仍然没有返回任何内容。。。。如何使搜索功能检查产品标签术语?我尝试了很多方法,从添加tax\u查询到pre\u get\u post过滤器,再到一个全新的WP\u查询循环,由于某种原因,它无法搜索产品标签。。。。那么,产品标签的意义是什么呢???

共有2个答案

杭令
2023-03-14

我得到了通过SKU代码搜索产品的解决方案。

这太简单了,只需在function.php粘贴以下代码,然后你就可以看到搜索结果的变化。

function search_by_id_only( $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' => '_sku',
                'value' => $query_vars->query['s'],
                'compare' => 'LIKE'
            )
        )
    );
    $posts = get_posts( $args );
    if ( empty( $posts ) ) return $search;
    $get_post_ids = array();
    foreach($posts as $post){
        $get_post_ids[] = $post->ID;
    }
    if ( sizeof( $get_post_ids ) > 0 ) {
        $search = str_replace( 'AND (((', "AND ((({$wpdb->posts}.ID IN (" . implode( ',', $get_post_ids ) . ")) OR (", $search);
    }
    return $search;
}
add_filter( 'posts_search', 'search_by_id_only', 999, 2 );
鄢英哲
2023-03-14

我尝试了woo和其他人的代码来搜索SKU,但没有结果。然而,插件搜索-一切,从存储库下载,做的工作。

 类似资料:
  • WooCommerce前台搜索只会从标题、内容、摘要里搜索,产品SKU有时比较重要,但它存储在custom field里,默认无法通过SKU搜索产品。本文介绍的方法可以让产品搜索支持SKU。 默认搜索 假设我要搜“SLK3423”这个SKU,默认搜索的SQL语句如下所示,可以看出只搜了标题、摘要和内容。 SELECT SQL_CALC_FOUND_ROWS wp_posts.id FROM w

  • 我想按价格、日期和发布年份等项目对产品进行排序。在发布年份的情况下,我做了一个分类法=发布年份 但它是不工作.我怎么能改变代码可能排序按发布年份顺序?

  • 我的购物车页面有问题。我遇到的问题是产品缩略图图像被裁剪,并且正在切断我的图像。 我转到产品显示设置并调整了缩略图大小,但缩略图图像仍然太小且被裁剪。 购物车页面图像 我想知道如何解决这个问题,有人能帮忙吗? 我还想了解如何将购物车页面上的产品图像更改为不同的图片,而不影响网站前端的产品图像。

  • 我需要一个代码来检查woocommerce产品类型是否不是“变量” 为了检查某物是否是可变产品,我通常使用这个: 但我需要检查它是否不是一个变量产品,所以我认为我应该这样做,但这会导致PHP错误。。。 编辑:我得到以下错误:"致命错误:未捕获错误:调用成员函数is_type()在空" 我以为我的代码有问题。但后来我在其他模板文件中测试了它,它成功了。我想在functions.php中使用我的php

  • 我有两张桌子: 现在,如果有人正在寻找关键字“car”,它会看看下面的表词: 这样的单词非常快。 问题是,当我想用这个词得到独一无二的产品时。这些表与words.id和products_words.word连接。 我使用了以下SQL: 我不明白它为什么要看1799211行?我需要告诉MySql先看words表,选择F.E。10个ID和给我带来独特的产品与这些ID的Word。 我做错了什么? 谢谢你

  • 1.简要的介绍一下你自己 2.深挖简历(这段实习你承担了什么职责/完成了什么指标) 3.你理解的搜索产品经理是做什么 4.搜索最重要的是什么,和推荐有什么不同 5.你最近有使用过在搜索中比较好用的产品吗 6.你觉得搜索的流程会涉及到哪些流程 7.在搜索的过程中的每一步都解决了什么用户需求,是怎么解决的 8.你之前做产品的时候会使用到SQL嘛 反问 1.为什么你们要求6个月的实习时长 2.实习具体做