¿Deshacerse de la categoría de WordPress, la etiqueta y los archivos de autor?

9

He buscado en la red sin éxito en lo que debería ser una cosa fácil.

Tengo un blog altamente personalizado con páginas, subpáginas y publicaciones. Si bien confío en gran medida en el uso de categorías y etiquetas, no quiero que se puedan ver en una URL. Lo mismo ocurre con los autores y las categorías de fechas. Básicamente, no voy a lanzar un error 404 si alguien intenta acceder a estas páginas. ¿Alguien me puede apuntar en la dirección correcta? Gracias!

Lo siguiente no debe ser accesible:

example.net/category/books/

example.net/tag/ebooks/

example.net/author/dickens/

example.net/2012/10/

    
pregunta psot 21.10.2012 - 01:30

2 respuestas

5

construir sobre la respuesta de chrisguitarguy aquí es un fragmento rápido que puede colocar en el archivo functions.php de su tema para hacer el trabajo

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();
    }
}
    
respondido por el Bainternet 21.10.2012 - 01:57
7

Escribí un complemento para esto , que necesita algunas actualizaciones, pero aún debería funcionar bien.

Esencialmente, te conectas en algún lugar después de que WordPress sepa qué página se solicita (como template_redirect ), usa una de las funciones condicionales y usa $wp_query->set_404() o simplemente redirige al usuario a una página de tu elección.

Para deshabilitar categorías, etiquetas, archivos de autor y fecha:

<?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();
    }
}
    
respondido por el chrisguitarguy 21.10.2012 - 01:43

Lea otras preguntas en las etiquetas