QUERY_POST,并仅在自定义字段不为空时显示结果

时间:2011-02-24 作者:erichmond

我该怎么做query_posts 并且仅当自定义字段不为空或有值时才显示结果。

我想在自定义字段中输入URL,并仅在有URL时显示这些页面?

当前代码,但我无法理解其余代码:

$args = array( \'posts_per_page\' => \'10\', 
    \'post_type\' => \'programmes\', 
    \'orderby\' => \'meta_value_num\', \'meta_key\' => \'popularityfig\',
    \'order\'  => \'DESC\',
    );

2 个回复
最合适的回答,由SO网友:Anh Tran 整理而成

请尝试以下代码:

$args = array(
\'posts_per_page\' => \'10\',
\'post_type\' => \'programmes\',
\'meta_key\' => \'popularityfig\',
\'meta_value\' => \'\',
\'meta_compare\' => \'!=\',
\'order\' => \'DESC\'
);
代码中可能需要注意两个参数:meta_valuemeta_compare. 使用meta_compare 带操作员!= 将排除元值为空的帖子。

SO网友:robalan

不清楚上面的答案是否真的对你有效@erichmond,但对我来说肯定不行。但找到了解决方案。请参见:How can I show posts only if meta_value is not empty

结束

相关推荐