• Hallo Forum,

    ich versuche, folgendes zu realisieren:

    Wenn auf einer Kategorie-Seite nur ein zugehöriger Beitrag angezeigt wird, möchte ich, dass statt dessen direkt der Beitrag angezeigt wird.
    Ich habe versucht, mich da heranzutasten, indem ich im Template category.php folgenden Code eingebaut habe:

    PHP
    //echo __file__."<br>\n"; if ($wp_query->post_count<2){  wp_redirect('redirect.php');  exit;}

    Der Redirect wird so natürlich nicht ausgeführt (Warning: Cannot modify header information - headers already sent) weil schon irgendwo etwas ausgegeben wurde. Das Problem kenne ich von PHP nur zu gut und es hätte mich gewundert, wenn das auf Anhieb funktioniert hätte ;) Hier habe ich einen Ansatz gefunden, der bestimmt funktioniert. Nur stellt sich mir die Frage, ob und wie mir die benötigten Informationen an der Stelle zur Verfügung stehen. $wp_query->post_count steht mir an dieser Stelle so schonmal nicht zur Verfügung. Kann ich von hier aus a) die Anzahl der Posts herausfinden und b) den Permalink des u.U. einzigen?


    danke für Tipps und
    gruss,
    heinetz

    • Anzeige

    Hallo!

    Wenn du gerade an deiner Website arbeitest oder dein aktuelles Hosting überdenkst: Wir betreiben mit NetzLiving eine Hosting-Plattform, die speziell auf Performance, Sicherheit und einfache Verwaltung ausgelegt ist.

    • ✔️ Schnelle Ladezeiten (optimiert für WordPress & Co.)
    • ✔️ Deutsche Server & DSGVO-konform
    • ✔️ Persönlicher Support (kein 0815-Ticket-System)

    Mehr erfahren

  • gelöst:

    PHP
    function stf_redirect_to_post(){     global $wp_query;     // If there is one post on archive page     if( is_archive() && $wp_query->post_count == 1 ){         // Setup post data         the_post();         // Get permalink         $post_url = get_permalink();         // Redirect to post page         wp_redirect( $post_url );     } } add_action('template_redirect', 'stf_redirect_to_post');

Jetzt mitmachen!

Sie haben noch kein Benutzerkonto auf unserer Seite? Registrieren Sie sich kostenlos und nehmen Sie an unserer Community teil!