2014-03-24 49 views
0

我的网站有woocommerce插件,所以post_type是产品。每个产品都有另一个插件(比较产品专业版)使用的几个自定义字段。自定义字段上的Wordpress查询

现在我们想通过URL查询的产品,让如:www.domain.com/?post_type=product & custom_field =值

这可能吗?如何?

任何帮助将高度appriciated!

+0

你究竟想达到什么目的?建立一个基于'$ _GET'变量的查询?或基于自定义字段查询帖子? –

+0

所以一个自定义字段是品牌。我知道这是一种分类法,但我们必须将品牌与自定义字段进行比较。现在我们要通过url进行查询,所以如果我们想要一个包含'honda'产品的列表,我希望能够像这样查询它:www.domain.com/?post_type=products&_woo_compare_field-15=Honda –

回答

0

您可以添加这样的事情到您的查询参数:

'post_type' => $_GET['post_type'], 
'meta_query' => array(
    array(
     'key' => '_woo_compare_field-', 
     'value' => $_GET['_woo_compare_field-'], 
     'compare' => '=', 
    ) 

), 

但它非常静态的,不会为不同的元键值对工作。

你可以将它们分配到一个数组,并追加数组这样

$meta_queries = array(
     'relation' => 'AND', 
    ); 

    foreach($_GET as $key => $value) { 
     $result = array(
      'key' => $key, 
      'value' => $value, 
      'compare' => '=', 
     ); 
     $meta_queries[] = $result; 
    } 

而且$meta_queries阵列追加到WordPress的查询参数。

但这意味着所有您的get变量被用作meta key值对。你可以为此写一些逻辑,但它永远不会很漂亮