Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/wordpress/11.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php WordPress-由于日期差异,使用UNIX时间戳对meta_键进行时间排序失败_Php_Wordpress_Datetime_Timestamp_Epoch - Fatal编程技术网

Php WordPress-由于日期差异,使用UNIX时间戳对meta_键进行时间排序失败

Php WordPress-由于日期差异,使用UNIX时间戳对meta_键进行时间排序失败,php,wordpress,datetime,timestamp,epoch,Php,Wordpress,Datetime,Timestamp,Epoch,我正在处理以下问题,试图通过使用高级自定义字段插件插件插件创建的元键对自定义帖子类型进行排序。该插件创建一个jQuery日期选择器,供用户在仪表板中设置时间。默认情况下,选项save_as_timestamp设置为true,因此后端中的数据设置为Unix时间戳/历元时间 我试图按时间对一系列事件(都发生在一天内)进行排序。我遇到的问题是,如果所有事件都是在一天内添加的,那么它们的排序是正确的(例如,上午9:00的事件将排在第一位,下午5:00的事件将排在最后)。然而,如果一两天后,我的老板将一个

我正在处理以下问题,试图通过使用高级自定义字段插件插件插件创建的元键对自定义帖子类型进行排序。该插件创建一个jQuery日期选择器,供用户在仪表板中设置时间。默认情况下,选项save_as_timestamp设置为true,因此后端中的数据设置为Unix时间戳/历元时间

我试图按时间对一系列事件(都发生在一天内)进行排序。我遇到的问题是,如果所有事件都是在一天内添加的,那么它们的排序是正确的(例如,上午9:00的事件将排在第一位,下午5:00的事件将排在最后)。然而,如果一两天后,我的老板将一个新事件添加到列表中,它将显示为最后一个事件,如果是上午9点的事件,它将显示为最后一个事件,因为它的日期不同。我的帖子类型查询如下:

<?php $args = array(
    'post_type' => 'event',
    'posts_per_page' => -1,
    'nopaging' => true,
    'post_status' => 'publish',
    'meta_key' => 'start_time',
    'orderby' => 'meta_value_num',
    'order' => 'ASC'
);
$my_query = new WP_Query( $args );
while( $my_query->have_posts() ) : $my_query->the_post(); ?>

有没有办法做到这一点,或者我必须使用一些函数或pre_get_posts过滤器来格式化meta_键,以便在循环开始之前将其作为格式化变量访问?非常感谢您的帮助

我自己不是专业人士,但我的工作方式如下:

<?php 
$args = array(
'post_type' => 'post',
'category_name' => 'openbare-zitdagen',
'posts_per_page' => -1,
'paged' => $paged,
'meta_key' => 'datum_zitdag',
'orderby'=> 'meta_value_num',
'order' => 'DESC'
);

$my_query = new WP_Query( $args );
while ($my_query -> have_posts()) : $my_query -> the_post(); ?>

我在仪表板中使用此格式:日期格式:dd-mm-yy,时间格式:HH:mm

获取字段作为时间戳?我选择Yes是因为我想使用date()函数来选择我喜欢的格式

<?php $str_timestamp = get_field('datum_zitdag');
$int_timestamp = (int) $str_timestamp;
echo date("d/m/Y H:i", $int_timestamp);?>

但我不知道为什么你的案子不起作用

吉米

<?php $str_timestamp = get_field('datum_zitdag');
$int_timestamp = (int) $str_timestamp;
echo date("d/m/Y H:i", $int_timestamp);?>