在另存为时间戳的元数据中搜索特定月份(WP_QUERY)

时间:2020-05-19 作者:Faruk

我需要保留我创建的名为“付款”的帖子类型的付款日期为此,我创建了一个名为“expected\\u payment\\u date”的元键。我将预期的付款日期保存为时间戳。例如,我将日期2020-05-15保留为158949000。

我想使用Wp\\u查询列出给定月份应支付的所有款项。我尝试了下面的方法,但没有结果。你知道我怎么做吗?

$month = \'2020-05\';
$args = array(
    \'post_type\'       => array( \'payments\' ),
    \'posts_per_page\'  => -1,
    \'post_status\'     => array( \'publish\' ),
    \'meta_query \'     => array(
        \'key\' => \'expected_payment_date\',
        \'value\' => $month,
        \'compare\' => \'LIKE\'
    )
);
注意:我在比较部分尝试了其他比较,如=EXIST。

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

经过长时间的搜索,我找到了解决方案。非常感谢米莎·鲁德拉斯特伊,她在我的解决方案中给了我一个好主意。你可以check out the great guide 他为meta\\u查询做了准备。

Here is the solution:

首先,将每月的第一天和最后一天作为described here (感谢Francois Deschenes)。

$month = \'2020-05\';

// First day of the month.
$first_day = strtotime( date(\'Y-m-01\', strtotime($month)) );
// Last day of the month.
$last_day = strtotime( date(\'Y-m-t\', strtotime($month)) );
我使用它作为时间戳,因为我以这种方式保留了预期的付款日期。有关更多详细信息,我建议您查看米莎的指南。

一旦正确获取了日期,您所要做的就是准备wp\\u查询参数。

$args = array(
    \'post_type\'       => array( \'payments\' ),
    \'posts_per_page\'  => -1,
    \'post_status\'     => array( \'publish\' ),
    \'meta_query \'     => array(
        \'key\' => \'_eo_payment_expected_date\',
        \'value\' => array( $first_day, $last_day ),
        \'type\' => \'numeric\',
        \'compare\' => \'BETWEEN\'
    )
);
仅此而已。

相关推荐

使用新的WP-Query()从循环中过滤后期格式;

嗨,我目前正在为我的博客构建一个主题。下面的代码指向最新的帖子(特色帖子)。因为这将有一个不同的风格比所有其他职位。然而我想过滤掉帖子格式:链接使用我在循环中定义的WP查询,因为它给我带来了更多的灵活性。我该怎么做呢? <?php $featured = new WP_Query(); $featured->query(\'showposts=1\'); ?> <?php while ($featured->have_post