Ich habe einen Kalender, den ich in WordPress erstellt habe. Oben befindet sich ein Link zum nächsten und vorherigen Monat. Sie navigieren problemlos durch das aktuelle Jahr, aber wenn das Jahr entweder zum nächsten oder zum vorherigen Jahr wechselt, erhalte ich einen 404-Fehler.
Der Link zu jedem Monat sieht so aus (z. B. Januar 2014): mysiteurl.com/calendar-grid/?year=2014&month=1
Ich habe versucht, einfach die richtige URL mit und ohne einzugeben /
Vor dem ?year
und das geht nicht.
So komme ich an die Daten:
if($_GET['month'] == ''){
$currmonth = date('n');
$thisyear = date('Y');
}
else {
$currmonth = $_GET['month'];
$thisyear = $_GET['year'];
}
$thismonth = paddNum($currmonth);
$firstday = $thisyear.$thismonth.'01';
$lastday = date('Ymt', strtotime($firstday));
$numdays = $lastday - $firstday + 1;
$firstDOW = date('N', strtotime($thisyear."https://stackoverflow.com/".$thismonth.'/01')) + 1;
if($firstDOW == 8) $firstDOW = 1;
$nextmonth = $thismonth + 1;
$prevmonth = $thismonth - 1;
$nextyear = $thisyear;
$prevyear = $thisyear;
if($nextmonth == 13){
$nextmonth = 1;
$nextyear = $thisyear + 1;
}
elseif($prevmonth == 0){
$prevmonth = 12;
$prevyear = $thisyear - 1;
}
$args = array(
'post_type' => 'event',
'meta_query' => array(
array(
'key' => 'event_date',
'compare' => 'BETWEEN',
'value' => array($firstday, $lastday)
)
),
'posts_per_page' => -1
);
$posts = get_posts($args);
So werden die Links erstellt:
<div class="month-head-text">
<a class="month-prev" href="https://stackoverflow.com/questions/24272766/<?php%20echo%20get_home_url();%20?>/calendar-grid?year=<?php%20echo%20$prevyear;%20?>&month=<?php%20echo%20$prevmonth;%20?>">
<img src="<?php%20echo%20get_template_directory_uri();%20?>/images/prev-month.png" />
</a>
<div class="month-name"><?php echo translateMonth($thismonth); ?></div>
<a class="month-next" href="<?php%20echo%20get_home_url();%20?>/calendar-grid?year=<?php%20echo%20$nextyear;%20?>&month=<?php%20echo%20$nextmonth;%20?>">
<img src="<?php%20echo%20get_template_directory_uri();%20?>/images/next-month.png" />
</a>
<a class="close-cal" href="<?php%20echo%20get_home_url();%20?>/calendar"><img src="<?php%20echo%20get_template_directory_uri();%20?>/images/close.png" /></a>
</div>
Hier der Link für Dezember 2014: http://houseof.mspaceap.com/calendar-grid/?year=2014&month=12