Angepasster WordPress-Kalender für nächstes und vorheriges Jahr ergibt 404

Lesezeit: 2 Minuten

Benutzer-Avatar
PBwebD

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

Ich habe reservierte Begriffe für POST und GET verwendet: http://codex.wordpress.org/Function_Reference/register_taxonomy#Reserved_Terms

Nachdem ich die Variablen auf passyear und passget geändert hatte, begann alles zu funktionieren.

1010180cookie-checkAngepasster WordPress-Kalender für nächstes und vorheriges Jahr ergibt 404

This website is using cookies to improve the user-friendliness. You agree by using the website further.

Privacy policy