Pozbyć się kategorii, tagów i archiwów Wordpress?


9

Szukałem w sieci bez powodzenia, co powinno być łatwe.

Mam wysoce spersonalizowanego bloga ze stronami, podstronami i postami. Chociaż polegam w dużej mierze na użyciu kategorii i tagów, nie chcę, aby były widoczne w adresie URL. To samo dotyczy autorów i kategorii dat. Zasadniczo nie chcę wyrzucać błędu 404, jeśli ktoś próbuje uzyskać dostęp do tych stron. Czy ktoś może skierować mnie we właściwym kierunku? Dzięki!

Następujące elementy nie powinny być dostępne:

example.net/category/books/

example.net/tag/ebooks/

example.net/author/dickens/

example.net/2012/10/

Odpowiedzi:


5

opierając się na odpowiedzi chrisguitarguy, oto krótki fragment, który można upuścić w pliku functions.php motywu, aby wykonać zadanie

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

Napisałem do tego wtyczkę - która wymaga aktualizacji, ale nadal powinna działać poprawnie.

Zasadniczo zaczepiasz w jakimś miejscu późno po tym, jak WordPress wie, o którą stronę jest proszona (jak template_redirect), użyj jednej z funkcji warunkowych i użyj $wp_query->set_404()lub po prostu przekieruj użytkownika na wybraną stronę.

Aby wyłączyć kategorie, tagi, archiwa autora i daty:

<?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();
    }
}

Wykonuje pracę idealnie! Wielkie dzięki, również za udostępnienie użytecznego linku do funkcji warunkowych!
psot

Wydaje się, że to przesada, aby mieć to jako samodzielną wtyczkę. Wygląda na to, że większość autorów motywów powinna mieć taką możliwość w pliku functions.php lub we własnej wtyczce.
serraosays
Korzystając z naszej strony potwierdzasz, że przeczytałeś(-aś) i rozumiesz nasze zasady używania plików cookie i zasady ochrony prywatności.
Licensed under cc by-sa 3.0 with attribution required.