Wordpress-Kategorie-, Tag- und Autorenarchive loswerden?


9

Ich habe das Netz ohne Erfolg durchsucht, was eine einfache Sache sein sollte.

Ich habe ein sehr individuelles Blog mit Seiten, Unterseiten und Beiträgen. Obwohl ich mich stark auf die Verwendung von Kategorien und Tags verlasse, möchte ich nicht, dass diese in einer URL angezeigt werden. Gleiches gilt für Autoren und Datumskategorien. Grundsätzlich möchte ich keinen 404-Fehler auslösen, wenn jemand versucht, auf diese Seiten zuzugreifen. Kann mich jemand in die richtige Richtung weisen? Vielen Dank!

Folgendes sollte nicht zugänglich sein:

example.net/category/books/

example.net/tag/ebooks/

example.net/author/dickens/

example.net/2012/10/

Antworten:


5

Aufbauend auf der Antwort von chrisguitarguy ist hier ein kurzer Ausschnitt, den Sie in der Datei functions.php Ihres Themas ablegen können, um die Arbeit zu erledigen

add_action('template_redirect', 'wpse69948_archive_disabler');
function wpse69948_archive_disabler()
{
    if(is_tag() || is_category() || is_date() || is_author())
    {
        global $wp_query;
        $wp_query->set_404();
    }
}

7

Ich habe ein Plugin dafür geschrieben - das muss aktualisiert werden, sollte aber trotzdem gut funktionieren.

Im Wesentlichen haken Sie spät ein, nachdem WordPress weiß, welche Seite angefordert wird (wie template_redirect), verwenden eine der bedingten Funktionen und verwenden $wp_query->set_404()den Benutzer entweder oder leiten ihn einfach auf eine Seite Ihrer Wahl weiter.

So deaktivieren Sie Kategorien, Tags, Autoren- und Datumsarchive:

<?php
add_action('template_redirect', 'wpse69948_tag_disabler');
function wpse69948_tag_disabler()
{
    if(is_tag() || is_category() || is_date() || is_author())
    {
        global $wp_query;
        $wp_query->set_404();
    }
}

Macht den Job perfekt! Vielen Dank, auch für die Bereitstellung des nützlichen Links zu den bedingten Funktionen!
Psot

Scheint ein bisschen übertrieben, dies als eigenständiges Plugin zu haben. Scheint, als ob die meisten Themenautoren dies in functions.php oder einem eigenen benutzerdefinierten Plugin tun sollten.
Serraosays
Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.