Wordpress 使用钩子修改事件结束日期
我正在使用。 我想调整一下事件。所以他们不会在结束后的一个小时内转移到过去的事件上。例如,如果一个事件在美国东部时间下午3点结束,我们不希望它在美国东部时间下午4点之前移动到“过去的事件”页面 简而言之:我想将事件结束日期设置为1小时之前 所以伊芙不会再过去了 我在functions.php文件中添加了以下代码Wordpress 使用钩子修改事件结束日期,wordpress,plugins,hook,event-calendar,Wordpress,Plugins,Hook,Event Calendar,我正在使用。 我想调整一下事件。所以他们不会在结束后的一个小时内转移到过去的事件上。例如,如果一个事件在美国东部时间下午3点结束,我们不希望它在美国东部时间下午4点之前移动到“过去的事件”页面 简而言之:我想将事件结束日期设置为1小时之前 所以伊芙不会再过去了 我在functions.php文件中添加了以下代码 add_filter( 'parse_query', 'posts_filter2',15 ); function posts_filter2( $query ){ $type
add_filter( 'parse_query', 'posts_filter2',15 );
function posts_filter2( $query ){
$type = 'tribe_events';
if (isset($_GET['post_type'])) {
$type = $_GET['post_type'];
}
if ( 'tribe_events' == $type && $query->get( 'eventDisplay' ) == 'default') {
$queryParamsCounter = 0;
$notification = "2021-04-16 13:06:00";
if (isset($notification)) {
$meta_query['ends-after'] = array(
'key' => '_EventEndDate',
'value' => $notification,
'compare' => '>',
'type' => 'DATETIME',
);
}
$query->set( 'meta_query', $meta_query);
}
}
但仍然不起作用
有人知道这件事吗
谢谢 我已使用parse_query修复了此问题 我使用过滤器挂钩修改了wp_查询的参数 在
functions.php
文件中添加以下代码
add_filter( 'parse_query', 'posts_filter2',15 );
function posts_filter2( $query ){
$type = 'tribe_events';
if (isset($_GET['post_type'])) {
$type = $_GET['post_type'];
}
if ( 'tribe_events' == $type && $query->get( 'eventDisplay' ) == 'default') {
$queryParamsCounter = 0;
$format = 'Y-m-d G:i:s';
$timezone_name = Tribe__Events__Timezones::wp_timezone_string();
$timezone = new DateTimeZone( $timezone_name );
$current = date_create( '-2 hour', $timezone );
$enddate = date_format($current,"Y-m-d G:i:s");
if (isset($enddate)) {
$meta_query['ends-after'] = array(
'key' => '_EventEndDate',
'value' => $enddate,
'compare' => '>',
'type' => 'DATETIME',
);
}
$query->set( 'meta_query', $meta_query);
}
}
if (isset( $meta_query['ends-after'] ) && $_GET['Recommendation'] != '')
{
$queryParamsCounter++;
$recommendation = $_GET['Recommendation'];
}
谢谢我建议你也在这里发布你的问题:我已经检查了plugin@jasie谢谢的所有文档