Php 自2016年3月3日起每三个星期四回声一次
我正在使用wordpress为一家公司开发一个网站 自2016年3月3日起,他们每三个星期四召开一次董事会会议 我正在尝试创建一个短代码 我想回应下一次会议什么时候召开 到目前为止,这是我得到的,但这并不正确Php 自2016年3月3日起每三个星期四回声一次,php,wordpress,Php,Wordpress,我正在使用wordpress为一家公司开发一个网站 自2016年3月3日起,他们每三个星期四召开一次董事会会议 我正在尝试创建一个短代码 我想回应下一次会议什么时候召开 到目前为止,这是我得到的,但这并不正确 // ECHO next board_meeting - Use [next_board_meeting] add_shortcode( 'next_board_meeting', 'next_board_meeting_shortcode' ); function next_board_
// ECHO next board_meeting - Use [next_board_meeting]
add_shortcode( 'next_board_meeting', 'next_board_meeting_shortcode' );
function next_board_meeting_shortcode( $str ) {
echo date_i18n('l j F', strtotime('next thursday +2 week'));
}
我一直在网上搜索类似的东西,但我在这里,请求你的帮助
有没有一种简单的方法可以做到这一点,或者我需要创建一个复杂的php脚本
请记住,我刚刚学会了如何用php完成简单任务。这段代码将为您提供本月的第三个星期四 如果当前日期已超过第三个星期四,则将显示下个月的第三个星期四。。如果当前月份是12月,并且已经过了第三个星期四,那么它将在明年1月显示第三个星期四
<?php
$current_date = strtotime(date("d.m.Y"));
//$final = date("Y-m-d", strtotime("+1 month", $time));
$FullMonth = date('F',$current_date);
$FullYear = date('Y',$current_date);
$Third_Thus = date('d F Y', strtotime('third thursday of '.$FullMonth.' '.$FullYear));
$ThirdThus_tmstamp = strtotime($Third_Thus);
if($current_date <= $ThirdThus_tmstamp){
echo date('d F Y', strtotime('third thursday of '.$FullMonth.' '.$FullYear));
}
else{
if($FullMonth != 'December'){
$FullMonth = date('F',strtotime("+1 month", $current_date));
$FullYear = date('Y',$current_date);
} else{
$Next_Year = strtotime("+1 year", $current_date);
$FullYear = date('Y',$Next_Year);
$FullMonth = date('F',strtotime("+1 month", $Next_Year));
}
echo date('d F Y', strtotime('third thursday of '.$FullMonth.' '.$FullYear));
}?>
这将只显示本月或下个月的第三个星期四
月份取决于当前日期。。如果你想在星期三星期四
接下来的2-3个月,你可以做一些改变,我想现在
应使用以下简单的短代码:
add_shortcode( 'next_board_meeting', 'next_board_meeting_shortcode' );
function next_board_meeting_shortcode( $str ) {
if(strtotime("3 thursday", strtotime(date('Y-m-01 00:00:00'))) > time())
echo date('Y-m-d', strtotime("3 thursday", strtotime(date('Y-m-01 00:00:00'))));
else
echo date('Y-m-d', strtotime("3 thursday", strtotime("next month", strtotime(date('Y-m-01 00:00:00')))));
}
演示:如果答案满足您的要求,请接受。谢谢您的回复。但这只显示了当前月份。他们每三个星期四开一次董事会。因此,如果今天是在这个月的会议之后,我认为它不会得到下个月的会议。例如:5月份的会议将在5号举行。如果今天是4月28日,那么就不会有5月的下次会议。再次感谢您的回复,但我相信它不会起作用。请查看编辑后的答案。。如果当前日期已经过了第三个星期,那么它将显示下个月的第三个星期六。。如果跳过日期的月份是12月,那么它将显示明年1月的第三个星期四,这非常有效。。。我自己永远也不会想出这个代码。我只修改了一件事,那就是回音日期之后。。。。。我想如果我想把它改成这个月的第二个星期四,我会把第三个改成第二个:-)非常感谢你的代码:-)最好的礼遇。我已经提供了以上的解释,对不起,这只会重复星期二3点之后的日期。。。如果访客在会议前一天查看网站,该怎么办?它会显示明天的日期吗?如果访问者在会议后的第二天查看该站点,该怎么办。下一次会议是在下个月,会不会也显示那个日期?谢谢Aron,是的,代码中有错误。现在查看新编辑的示例-如果是会议后的第二天,它将显示下个月的3个星期四。