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

通过WoCommerce上的WP查询显示的帖子不正确

潘嘉佑
2023-03-14

因此,基本上我使用了下面的代码,它似乎将所有内容完美地放入了查询中,但是,我仍然得到了错误的产品。例如,我请求的产品类别为“冬季”,但仍收到“四季”类别的产品

这是我的密码:

add_action('pre_get_posts', 'advanced_search_query', 1000);
function advanced_search_query($query) {
if ( ! is_admin() && $query->is_main_query() && $query->is_search() ) {
    global $wp_query;
    // category terms search
    $categories = array('winter','all-season','summer','run-flat');
    $category = $_GET['category'];
    $categories = array_diff($categories,array($category));
    $taxonomy = 'product_cat';
    if (isset($category) && !empty($category)) {
        $args = array(
            'relation' => 'AND',
            array(
                'taxonomy' => $taxonomy,
                'field' => 'slug',
                'terms' => $category,
                'operator' => 'IN'
            ),
            array(
                'taxonomy' => $taxonomy,
                'field' => 'slug',
                'terms' => array($categories),
                'operator' => 'NOT IN'
            )
        );
        $query->set('tax_query', $args);
        print_r($query);
    }
    return $query;
    }
}

print_r返回以下内容:

WP_查询对象([Query]=

共有1个答案

吕嘉赐
2023-03-14

我猜你的tax_query中有一个双列术语。你有:

$categories = array('...');

$args = array(
    //....
    array(
        'terms' => array( $categories )
    )
    //....
);

这应该是:

'terms' => $categories
 类似资料:
  • 我正在尝试使用WP REST API从多个帖子类型中检索帖子。通过这样做,我可以从一个帖子类型中获取提要: 现在我想扩展提要以获取和。这只给我最后一个指定的类型: 这给了我一个错误: 我该怎么处理这件事? 谢啦! 编辑:修正语法以匹配我实际拥有的。以下是我在使用此语法<code>时遇到的错误:http://example.com/wp-json/posts?type[]一本书 警告:urlenco

  • 我在一个网站上工作,我有问题,喜欢脸谱网的Buttom,当有人做一个帖子时,它应该显示喜欢的按钮,但我没有看到它 我看到一个类似的问题,其中一个用户说如果我们使用Facebook LINTER- 这是我从链接中得到的 打开应修复的图形警告 > 推断属性:应该显式提供'og:url'属性,即使可以从其他标记推断值。 推断属性:应明确提供“og:title”属性,即使可以从其他标记推断值。 推断属性:

  • 我知道你可以设置自定义查询与元素插件,但只有少数小部件支持这个f. e.后小部件。但是我想设置一个自定义查询与"Archive Post"-元素的小部件。 我想把我所有的帖子按年份分组。(每一行的顶部还应显示年度名称) 你知道怎么做吗?也许通过改变php代码本身?Elementor的php代码在哪里?

  • 我正在做一个离子应用程序,该项目需要通过Wordpress API创建带有自定义字段的帖子(我使用ACF Pro和Aires ACF to REST API),我可以使用REST API创建一个普通帖子,即使没有创建或设置ACF字段,但只有在WordPres斯管理界面中创建帖子时,它们才会为帖子创建。 我正在阅读ACF to REST API的文档,但是我只看到了编辑和显示功能。这是否意味着后元必

  • 我正在开发一个基于WordPress自定义帖子类型(winkels)的自定义商店定位器。每个商店都可以在分类法“winkelketen”(连锁店)中指定一个分类术语。总共有3847个商店,使用WP_Query查询所有商店都很好。当我按照特定的分类术语创建WP_查询时,并不是该分类术语中的所有帖子都显示出来。 例如:分类术语“deen”统计WordPress中的148个存储(帖子)。在我的WP_查询

  • 我有一个事件页面,显示“事件”自定义帖子类型。在页面的顶部,我有两个即将发布的帖子,在即将发布的事件列表中,然后在底部,我有3个过去的事件,在过去的事件列表中。根据“事件日期”自定义字段是否在过去,在每个部分中显示帖子。过去的事件使用WP page navi插件对帖子进行分页“每页发布”设置为1作为测试。 应该有3页,其中有1个过去的职位显示在他们,分别。不幸的是,分页显示了5个页面,前两个页面上