Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/262.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中配置事件列表,以便在超过日期后删除事件_Php_Events_Wordpress_Sorting - Fatal编程技术网

Php 如何在Wordpress中配置事件列表,以便在超过日期后删除事件

Php 如何在Wordpress中配置事件列表,以便在超过日期后删除事件,php,events,wordpress,sorting,Php,Events,Wordpress,Sorting,我目前有一些代码设置来显示管理员根据事件日期设置的即将发生的事件。即将发生的事件按下一个即将发生的事件排序,从顶部开始,然后向下。我把它限制在只有两个 但是,当一天开始时(例如,事件日期的午夜),事件将消失我希望活动持续到第二天的午夜(例如,第二天的开始)。现在,活动在活动开始的第二天就消失了 有人知道如何用我现有的代码来更改吗 <div class="boxer events"> <h3>Upcoming Events</h3> <?php //The

我目前有一些代码设置来显示管理员根据事件日期设置的即将发生的事件。即将发生的事件按下一个即将发生的事件排序,从顶部开始,然后向下。我把它限制在只有两个

但是,当一天开始时(例如,事件日期的午夜),事件将消失我希望活动持续到第二天的午夜(例如,第二天的开始)。现在,活动在活动开始的第二天就消失了

有人知道如何用我现有的代码来更改吗

<div class="boxer events">
<h3>Upcoming Events</h3>
<?php
//The Query
query_posts(array(
'posts_per_page' => 2,
'meta_key' => 'event_date',
'meta_value' => date('Y-m-d'),
'meta_compare' => '>',
'orderby' => 'meta_value',
'order' => 'ASC'
));

//The Loop
$count = 0;
while ( have_posts() ) : the_post(); $count++;
//The Title
$title = $post->post_title;
$event_datee = get_post_meta($post->ID, 'event_date', true);
?>
<dl>
<dt><a title="<?php echo $title; ?>" href="<?php the_permalink(); ?>"><?php echo $title; ?></a></dt>
<div class="postdate">
<div class="month m-<?php $dtes = get('event_date'); $timestamp = strtotime($dtes); echo date('n', $timestamp); //month ?>"></div>
<div class="day d-<?php $dtes = get('event_date'); $timestamp = strtotime($dtes); echo date('d', $timestamp); //day ?>"></div>
<div class="year y-<?php $dtes = get('event_date'); $timestamp = strtotime($dtes); echo date('Y', $timestamp); //year ?>"></div>
</div>
<dd><?php the_excerpt(); ?></dd>
</dl>
<?php endwhile; ?>
</div><!--end boxerevents-->

即将举行的活动

根据您的代码,我的最佳猜测是这是一个区域:

<?php
//The Query
query_posts(array(
'posts_per_page' => 2,
'meta_key' => 'event_date',
'meta_value' => date('Y-m-d'),
'meta_compare' => '>',
'orderby' => 'meta_value',
'order' => 'ASC'
));

查询的比较是查看从今天开始的日期
date('Y-m-d')

相反,你可以告诉它使用明天,因为它可以使用昨天的日期让今天的事情发生。尝试用日期('Y-m-d',标准时间('-1天')替换日期(…)

注意:我认为您需要在这里使用-1,但它可能需要+1


我还认为您可以将
'meta\u compare'=>'>'>'>'、
替换为
'meta\u compare'=>'>'='>,
注意更改为=/strong>,在这种情况下,您只需保留
日期(…)
部分,但这取决于此插件存储日期的方式。

这不是结束投票,但是您可能会发现此代码是WP问题的有用资源。此代码不显示任何删除,您确定这是处理清理事件的正确代码吗?这是你试图定制的插件吗?一旦事件日期午夜来临,事件就会消失。。。我正在使用Flutter来设置新的事件。但是这段代码只是在index.php文件中。是的,事件发生当天的午夜一到,事件就消失了。我想找到一些代码,将事件当天的持续时间延长到第二天午夜。因此,如果活动在12月24日举行,我希望活动在12月25日上午12点之前举行。这有道理吗?没错!谢谢你太棒了,理查德!事实上,它并没有完全做到这一点。我在本地测试,当我把它上传到远程服务器时得到了不同的结果。你可以在即将到来的标题下面的中间栏看到它。正如你所看到的,它在18日结束了昨天的活动,我想在昨晚的午夜,19日的开始之前消失。这有意义吗?有没有办法改变这一点?这就是我真正需要改变的…没关系。。。知道了。有一点必须改变。我需要将它保持在>,而不是>=。再次感谢。您好,>=仅作为您发现的更改日期(…)的“替代品”。也与您问题的其他评论相关。这不会删除实际事件,它只是避免在查询中获取它们。如果你想删除它们,你需要做一些不同的事情。但是,在您的问题中,您建议当前的解决方案“部分工作”,因此假设您只是不想获取它们