在执行wp_redirect(wc_get_page_id(' shop'))时pre_get_posts似乎不会影响查询

时间:2016-03-07 19:03:45

标签: php wordpress woocommerce shop

我尝试使用商店页面在表单提交后在woocommerce中显示自定义搜索结果。

所以场景是:

  1. 有人通过表格选择ex:产品类型。
  2. 页面重定向到一个单独的php页面来处理结果,挂钩查询并重定向到商店页面。
  3. 这是我单独的php页面的样子:

    if (isset('submit')){
        add_action('pre_get_posts', function($query){
            //my hook that doesn't work
        });
    
        wp_redirect( get_permalink( wc_get_page_id( 'shop' ) ) );
        exit;
    }
    

    结果是我的商店页面包含所有商品。如何挂钩到商店以显示我自己的特定查询?

1 个答案:

答案 0 :(得分:0)

我最终做的是,而不是尝试更改查询,我通过网址发送了过滤器参数,如下所示:

wp_redirect( get_permalink( wc_get_page_id( 'shop' ) ) . '?filter_size=' . $size . '&filter_weight=' . $weight);
exit;