追加" AND" WP QUERY

时间:2016-09-27 21:55:15

标签: php mysql wordpress

我试图让一个过滤器在Wordpress中工作,它会在当前查询中附加一个子句,并且只选择具有某个meta_key值的结果。

我无法通过$args执行此操作,因为主题设置方式并使用其他过滤器和挂钩来发布数据。

我可以使用以下代码完美地工作:

function filter_where($where = '') {
    $where .= "AND post_date >= '2016-09-24' ";
    return $where;
}

add_filter('posts_where', 'filter_where');

据我所知,元数据位于不同的表格中,但并不完全确定如何处理它。

1 个答案:

答案 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');
    }