您可以轻松地使用WP_Query
:
$args = array(
\'date_query\' => array(
\'relation\' => \'OR\',
array(
\'column\' => \'post_date\',
\'after\' => \'-2 days\'
),
array(
\'column\' => \'post_modified\',
\'after\' => \'-2 days\'
)
)
);
$query = new WP_Query( $args );
有关的更多信息
date_query
parameter of WP_Query
.
如果出于某种原因,您仍要更改WHERE
clausele,像这样的方法应该有效(未经测试):
function filter_where($where = \'\') {
$where .= " AND ( post_date > \'" . date(\'Y-m-d\', strtotime(\'-2 days\')) . " OR post_modified > " . date(\'Y-m-d\', strtotime(\'-2 days\')) . " )\'";
return $where;
}
add_filter(\'posts_where\', \'filter_where\');
另外,您必须注意,在post where filter中,您正在使用
Y-m-d
日期格式,不包括时间。可能导致意外结果的;您可能需要使用MySQL日期时间格式:
Y-m-d H:i:s
.