gpt4 book ai didi

wordpress - 显示特定日期范围之间的帖子

转载 作者:行者123 更新时间:2023-12-04 22:36:25 25 4
gpt4 key购买 nike

尝试显示特定日期范围的自定义帖子类型。我只想显示某个月内的帖子。我知道我需要连接到 posts_where 过滤器,但我不知道如何将参数传递给这个函数,因为我需要传递日期范围。

我已经看到很多关于如何更改 WHERE 子句以采用日期范围的示例,但仅限于静态时。我需要执行以下操作:

add_filter('posts_where', 'my_custom_where', '', '04/2011'); //pass my date to the filter

function my_custom_where( $where = '' ) {

//figure range
$range = array(
'start' => $date . '-1',
'end' => $date . '-' . cal_days_in_month(CAL_GREGORIAN, date('m', $date), date('Y', $date))
);

$where .= " AND post_date ....."; //build where with date range

return $where;

}

希望这是有道理的。任何帮助,将不胜感激。

最佳答案

如果你诉诸全局变量,你可以让它变得动态。(不理想,但是嘿,我还没有找到更干净的方法......)

首先为日期定义一个全局变量

$GLOBALS['start_date'] = '2011-07-31';

然后添加您的过滤器
add_filter( 'posts_where', 'filter_where' );

function filter_where( $date, $where = '' ) {
// posts later than dynamic date
$where .= " AND post_date >= '" . date('Y-m-d H:i:s', strtotime($GLOBALS['start_date'])) . "'";
return $where;
}

如果您只想为单个查询运行过滤器,请删除过滤器。

关于wordpress - 显示特定日期范围之间的帖子,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5785857/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com