我试图让一个过滤器在Wordpress中工作,它会在当前查询中附加一个子句,并且只选择具有某个meta_key
值的结果。
我无法通过$args
执行此操作,因为主题设置方式并使用其他过滤器和挂钩来发布数据。
我可以使用以下代码完美地工作:
function filter_where($where = '') {
$where .= "AND post_date >= '2016-09-24' ";
return $where;
}
add_filter('posts_where', 'filter_where');
据我所知,元数据位于不同的表格中,但并不完全确定如何处理它。
答案 0 :(得分:0)
<强>解强>
我找到了一种方法来执行此操作...以下是修复以防万一有人遇到同样的问题。
add_action('pre_get_posts', 'posts_meta_array');
function posts_meta_array($query)
{
// IF IT IS AN ARRAY YOU HAVE TO SERIALIZE IT
$meta_it = serialize(strval("1"));
$query->set('posts_per_page', '6');
$query->set('meta_key', 'access');
$query->set('meta_value', $meta_it);
$query->set('meta_compare', 'LIKE');
}