Einzelansicht für den Post erzwingen!

09 Apr
9. April 2011
WordPress

WordPress

So einfach wie im Titel ist es aber auch nicht. Ich will ja nicht jeden Post in der Einzelansicht sehen.
Nein, dies trifft nur auf einen Spezialfall zu. Sobald in einer Kategorie nur ein Post vorhanden ist, soll WordPress diesen nicht in der üblichen Liste darstellen. Am Besten wäre es, wenn das Blog-System diesen Fall erkennt und sofort in die Einzelansicht umschaltet.

Mit einem Hook und einer kleinen Zusatzroutine in der Datei functions.php des aktiven Themas ist dies problemlos möglich.

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
//Redirect einzelnen Post
function guru20_redirect_singlePost() {
  //Query aktivieren
  global $wp_query;
  //Pruefen ob nur ein Post gefunden wurde
  if( is_archive() && $wp_query->post_count == 1 ) {
    //Post aktivieren
    the_post();
    //Permalink fuer Redirect holen
    $post_url = get_permalink();
    //Redirect durchfuehren
    wp_redirect($post_url);
  } 
} 
//Hook aktivieren
add_action('template_redirect', 'guru20_redirect_singlePost');

via SpeckyBoy [EN]

Tags: , , ,