Позбутися від категорії, тегів та авторських архівів Wordpress?


9

Я не шукав мережі в мережі без успіху на те, що має бути легкою справою.

У мене дуже налаштований блог зі сторінками, підсторінками та публікаціями. Хоча я дуже покладаюся на використання категорій і тегів, я не хочу, щоб вони переглядалися в URL-адресі. Те саме стосується авторів та категорій дат. В основному я не хочу кидати помилку 404, якщо хтось намагається отримати доступ до цих сторінок. Чи може хтось вказати мені в правильному напрямку? Дякую!

Наступне не повинно бути доступним:

example.net/category/books/

example.net/tag/ebooks/

example.net/author/dickens/

example.net/2012/10/

Відповіді:


5

спираючись на відповідь chrisguitarguy, ось швидкий фрагмент, який ви можете вписати у свою функцію теми.php для теми, щоб виконати роботу

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

Я написав плагін для цього - для цього потрібне певне оновлення, але воно все одно має працювати добре.

По суті, ви зачіпаєтесь в template_redirectіншому місці пізно після того, як WordPress дізнається, яку сторінку запитують (наприклад ), використовуйте одну з умовних функцій і використовуйте $wp_query->set_404()або просто перенаправляйте користувача на потрібну вам сторінку.

Щоб вимкнути архіви категорій, тегів, автора та дат:

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

Робота ідеально! Велике спасибі, також за надання корисного посилання на умовні функції!
псот

Здається, щось надмірне, щоб це було як окремий плагін. Здається, що більшість авторів тем повинні це робити в function.php або власному власному плагіні.
serraosays
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.