Pre Get帖子更改查询

时间:2011-04-05 作者:Sisir

我需要更改分类中的帖子。php页面。我有一个meta\\u键,我想将其与meta值进行比较。但目前我的代码没有返回任何内容。我肯定我错过了什么。请让我知道我做错了什么!

add_action(\'pre_get_posts\', \'add_event_date_criteria\');
function add_event_date_criteria(&$query)
{
    // We only want to filter on "public" pages
    // You can add other selections, like here:
    //  - Only on a term page for our custom taxonomy
    if (!is_admin() &&
        is_tax(\'event-tag\') || is_tax(\'event-category\')) {
        $query->set(\'meta_key\', \'start_time\');
        $query->set(\'meta_compare\', \'>=\');
        $query->set(\'meta_value\', time());
        $query->set(\'meta_key\', \'start_time\');
        $query->set(\'orderby\', \'meta_value_num\');
        $query->set(\'order\', \'ASC\');
    }

}

1 个回复
最合适的回答,由SO网友:Bainternet 整理而成

尝试使用meta\\u查询参数:

add_action(\'pre_get_posts\', \'add_event_date_criteria\');
function add_event_date_criteria(&$query)
{
    // We only want to filter on "public" pages
    // You can add other selections, like here:
    //  - Only on a term page for our custom taxonomy
    if (!is_admin() &&
        is_tax(\'event-tag\') || is_tax(\'event-category\')) {
        $time = time();
        $meta = array(
            array(
            \'key\' => \'start_time\',
            \'value\' => $time,
            \'compare\' => \'>=\'
            )
        );
        $query->set(\'meta_query\',$meta );
        $query->set(\'meta_key\', \'start_time\');
        $query->set(\'orderby\', \'meta_value_num\');
        $query->set(\'order\', \'ASC\');
    }
}
您还需要确保您的元字段start_time 以Unix类历元time()函数之后的秒数来度量和保存。

结束

相关推荐

Custom Post Row Actions

我偶然发现this question 在写这个问题的时候。我有一个问题是关于这个问题的。我发现你用的是get_delete_post_link 筛选为我的操作创建一个新的url(或一个类似的函数——在任何情况下,我都会将该函数与布尔值一起使用)。唯一的问题是,I don\'t know how to capture the event now. 考虑到我在谷歌上找不到很多关于行后操作的例子,我将不胜感激-/public function _wp_filter_get_delete_post_link( $