WordPress als CMS (1): Kategorie leitet automatisch auf den einzigen Artikel

Beim Aufsetzen einer Webseite auf ein einfaches CMS stand ich vor dem Problem, dass ich bestimmte Inhalte in Kategorien legen musste. Wenn die Kategorie allerdings (bis auf Weiteres) nur einen einzigen Artikel beinhaltet, ist es für den Besucher unschön, beim Aufruf der Kategorie aus der Navigation erst die Übersicht über alle Artikel (also den einen) angezeigt zu bekommen und noch einmal (per Klick) diesen Artikel aufzurufen.

Darum habe ich mir einen Schnipsel zusammengebastelt, der in der Theme-Datei „archive.php“ prüft, ob es sich um eine Kategorie handelt und diese genau einen Artikel hat. Dann (und nur dann) wird per Weiterleitung der Artikel aufgerufen.



category_count == 1 ) {
            // category has exactly 1 article
            header( "Location: " . get_permalink() );
            exit;
        }
    }
} 
?>

Wenn keine zusätzlichen Artikel in die Kategorie hinzukommen können (soll es ja geben), kann vor der Weiterleitung noch ein entsprechender Header-Code hinzugefügt werden.

...
        if( $categories[0]->category_count == 1 ) {
            // category has exactly 1 article
            header("HTTP/1.1 301 Moved Permanently");
            header( "Location: " . get_permalink() );
            exit;
        }
...

Vielleicht kann das jemand (oder ich irgendwann mal wieder) gebrauchen.

Stefan Moeller

Stefan Moeller

@stefanmoeller
Nach oben scrollen