数字范围之间的WordPress Meta_Query(无效)

时间:2018-01-07 作者:Mohamed Sabry

我的自定义帖子类型有一个名为(sizes\\u Available)的元字段,它如下所示:

尺寸\\u适用于职位id 1:15-25-35-45

尺寸\\u适用于职位id 2:55-65-75-85

我有一个搜索输入,用户可以在下拉列表中搜索其特定大小,如下所示:

I need Size between:

11-19 ;

31-39 ;

51-59 ;

81-89 ;
因此,如果用户从下拉列表(11-19)中搜索大小。。它将列出post id(1),因为它在范围内有数字(15),

所以我尝试了这个查询。

$meta_query = array(
    array(
        \'key\'     => \'sizes_avaliable\',
        \'value\'   => \'11-19\',
        \'compare\' => \'=\',
    ),
);
但这没有显示任何结果。。

你能帮忙吗??

谢谢:)

<小时>

update :

这是我的记录截图:enter image description here

。。。例如。。我需要一个用户搜索150-200

enter image description here

它将显示突出显示的帖子ID,因为它的值为192

谢谢–

1 个回复
SO网友:Noman

您可以使用元查询操作符,如下面的查询。meta\\u查询参数见文档here

$range = $_GET[\'range\']; // assuming you get the range from query string parameter which 11-19
$range_array = explode(\'-\',$range);
$args = array(
    \'post_type\' => \'YOUR-POST-TYPE\',
    \'meta_query\' => array( 
     array(
         \'key\' => \'sizes_avaliable\',
         \'value\' =>  $range_array,
         \'compare\' => \'BETWEEN\'
         ),
     )
); 
如果您添加包含尺寸记录和id的表格截图会更好。所以如果我的答案对您不适用,我会检查它。

结束

相关推荐