Oferta SiteGround Black Friday

Eliminar la categoría de la URL

mod_rewrite_logo

Esto es algo que pidió un usuario del foro hace unos días y me puse a buscar como hacerlo. Y es que, por defecto, WordPress muestra los permalinks de categorías de este modo:

https://ayudawp.com/category/principiante/

Y como puedes ver, el nombre de «category» en la URL es algo inútil, incluso contraproducente para el SEO. Bien, pues si quieres quitarlo así es como debes hacerlo:

  1. Abre el fichero .htaccess de tu instalación de WordPress y añádele lo siguiente:
    RewriteRule ^category/(.+)$ http://tublog.com/$1 [R=301,L]
  2. Guarda el fichero .htaccess

Una vez lo hayas guardado se mostrará así:

https://ayudawp.com/principiante/

Mucho mejor ¿verdad?

¿De cuánta utilidad te ha parecido este contenido?

¡Haz clic en los emoticonos para valorarlo!

Promedio de puntuación 4.2 / 5. Total de votos: 9

Hasta ahora ¡no hay votos!. Sé el primero en valorar este contenido.

Ya que has encontrado útil este contenido...

¡Sígueme en las redes sociales!

¡Siento que este contenido no te haya sido útil!

¡Ayúdame a mejorar este contenido!

Por favor, dime, ¿cómo puedo mejorarlo?

¿Te gustó este artículo? ¡Ni te imaginas lo que te estás perdiendo en YouTube!

AVISO: Esta publicación es de hace 3 años o más. Si es un código o un plugin podría no funcionar en las últimas versiones de WordPress, y si es una noticia podría estar ya obsoleta. Luego no digas que no te hemos avisado. ¡Ah! ¿te funciona? pues entonces no he dicho nada :)

Sobre el autor

51 comentarios en “Eliminar la categoría de la URL”

    1. Si claro, o si tienes un slug personalizado de categorías también, solo es cambiar la primera parte 🙂

      El asunto con las tags es si tienes muchas y algún slug te puede coincidir con algún post, ten cuidado con eso.

    2. Por más vueltas que le doy, no acabo de entender cómo esa RewriteRule puede eliminar la parte de "category" de la URL. A ver si me lo podéis aclarar.

      En el pasado me he peleado algunas veces con reglas de este tipo y, si no me equivoco, ésta en concreto:

      RewriteRule ^category/(.+)$ http://tublog.com/$1 [R=301,L]

      significa:

      * Cuando llegue un petición a Apache como "http://tublog.com/category/foo/", Apache servirá en su lugar "http://tublog.com/foo/". Pero claro, el problema es que WordPress no va a saber qué servir cuando le pidan "http://tublog.com/foo/", así que devolverá un 404. Primer problema.

      Por supuesto, otro problema será que, si no me equivoco, las URLs dentro del HTML devuelto por WordPress seguirán apuntando a "http://tublog.com/category/" a menos que se haya hecho algún cambio en el Panel de Control, en la sección Permalinks.

      Por todo esto, no acabo de entender bien cómo puede ser que esto funcione. Me da la sensación de que o bien no entiendo algún concepto importante o esto directamente no puede funcionar nunca. ¿Alguien me puede ayudar?

      Gracias

  1. Tengo un problema y tal vez pueden ayudarme.

    De repente han dejado de aparecer los post.

    El resto del blog funciona pero no aparecen los artículos que he escrito.

  2. Fer, me aclaras cual puede ser el problema si hacemos lo mismo con las Tags?, en mi caso, tengo muchas!… Gracias!

  3. Ya he encontrado el problema.

    Es el plugin del que hablaron hace poco wordpress wiki

    En el momento que se desactiva vuelven a aparecer los post.

    ¡Qué susto!

  4. Para los mas vagos, hay un plugin que tambien realiza esto de forma automatica, se llama Decategorizer. Yo lo uso en varios blogs y funciona bastante bien, nunca me ha dado problemas. 🙂

  5. Hola Fer, no me esta funcionando, ayer, en cuanto leí este post agregué esa línea a mi .htaccess pero nada… sique mostrando "category" en la url…

  6. Utilizé ese mismo rewrite para pasar la instalación de wordpress al directorio raiz pero con las categorías nunca he logrado hacerlo funcionar, no se por que.

  7. Ignacio Aguirre

    yo he probado algunos metodos para hacer esto mismo, pero siempre el problema esta en la paginación…

    osea, si antes la cosa era "/category/viajes/page/2/" (creo que asi es la ruta de las paginas no? :P) si le quitas el /category/ a eso, entonces te devuelve un hermoso 404.

    buscando y buscando encontre una vez una modificacion que se hacia en un archivo de wordpress, pero, como siempre, al actualizar wp se pierde .

    yo creo que wordpress debiera tener la opcion de quitar /category/ por defecto, cuando lo haga, el sistema va a estar completo para mi

  8. Tal vez no sea posible quitar el category porque puede causar un conflicto;

    puede haber una categoría llamada viajes;

    /category/viajes/

    y un post llamado "viajes"

    /viajes/

    Si quitas el "category" tendriamos un conflicto entre el post y el link a las categorías. Lo mismo podría suceder con las etiquetas.

  9. Bueno Fernando, he probado, lo que se menciona más arriba, no se si podria ayudarme a despejar mis dudas. En que no ha cambiado en nada las URL. Y está agregado a mi .htaccess. Por favor me gustaria que me ayudaras.

      1. Fernando tambien he encontrado la forma de cambiar el "category" desde el mismo panel wp, seccion permalinks.

        Donde pone Opciones/ base de categorias, poner: categorias

        Y parece que resuelven bien tambien todas las urls.

        Que diferencia hay en cambiar directamente desde el codigo?

        Nose si sera la forma mejor de hacerlo o puede traer consecuencias… espero respuesta de los profesionales del tema.

        un saludo 😉

  10. Mirando algun que otro foro, resuelven la cuestion de quitar el "category" de la siguiente forma:

    —————————————————

    Abre /wp-includes/rewrite.php y busca Aprox. en la línea 435:

    Código PHP:

    $this->category_structure = $this->front . 'category/';

    Reemplaza por:

    Código PHP:

    $this->category_structure = $this->front . '/';

    ——————————————————————————

    No lo he probado asi que nose si funcioanra correctamente.

    Si alguien lo prueba que nos comente.

    gracias

    1. Cristiam Diaz

      Plaga, utiliza un redireccionamiento 301 desde el .htaccess para que las urls antiguas sean actualizadas y apuntadas a las nuevas.

  11. Amigos, muy buena info, hace tiempo estube buscando hacer esto pero lo solucione con un plugin que se llama Top Level Categories, probe modificando el archivo rewrite.php pero siempre me daba algun problema, con este plugin se puede hacer los mismo que modificando el .htacces, en mi sitio pueden ver como funcionan las categorias sin category/, saludos…

    1. Daniel como puedo contactarme contigo? entre a tu blog y la página de contacto no existe.. tengo algunas dudas sobre el plugin que utilizaste para eliminar la categoria del permalink, ya que a mi me funciono todo pero las subcategorias siempre me tiraban error 404..

  12. Fernando

    Fijate que meti el codigo en el .htaccess pero no pasa nada

    En el codigo viene una parte que dice tublog.com entiendo que debo reemplazarlo con mi informacion cierto?

    Ahora, si desde las opciones cambio el permalink como puedo hacer para que no afecte el PR, ¿existe algun redireccionador?

    Saludos

  13. Fernando, he utilizado la solución que detalles en mi blog pero no funciona. A partir de la paginación de la segunda pagina de categoría no anda. Lanza un error 404. La única solución es utilizar tu consejo y que cada post termine con extensión (.php, .html u otra) en vez la barra invertida. La combinación de ambas cosas hace funcionar la eliminación de la categoría.

  14. he buscado en varios puntos de google y no encuentro la solucion y veo que fernando tampoco por que sus categorias esta listadas tambien a ver si alguien encuentra un saolucion que devuelva el erro 404 que lo diga

  15. Hola a Todos,

    Tengo un pequeño problema.

    Intento enlazar una categoría a una de mis páginas, debido a que el tema que utilizo sigue una estructura de revista y me aparecen las categorías en la barra superior a modo

    de menú. Me gustaría que una de ellas fuera enlazada a una página de wordpress.

    ¿Podéis ayudarme?

    Gracias!!

  16. La web es http://www.nosinsonido.com. Tengo una página que son listas, y desearía poder tener la "categoria" listas, que me aparece en la barra menú, de manera que cuando pinche en ella, en vez de llevarme a los resultados de la categoría Listas, me lleve a la página listas que he creado.

    Gracias Sobajar por interesarte, a ver si puedes ayudarme

    1. Sip. Eso mismo es. Si pulsas en la parte superior derecha, verás como existe una página bajo el nombre de listas. Mi idea es que al pulsar sobre la categoría listas, que está en la barra de menú enlace directamente con ella, es decir, con:

      Un saludo!

  17. Soy nuevo en el uso de wordpress, quiero quitar la fecha de la url, pero yo no he descargado a mi maquina, y no se como llegar a archivo httacces, es necesario que baje eñ wordpress a mi maquina y trabajar desde alli las modificaciones?? Gracias por la atencion que me presten.

  18. Tal vez un poco tarde la respuesta, pero realizando tanto pruebas con plugins como modificando el archivo htaccess no logre resolver el inconveniente, la solución la encontre de forma sencilla así:

    ir a:

    1. ir a Settings >> Permalinks seleccionar Custom y escribir: /%category%/%postname%/

    2. ir a Category Base y escribir: . (punto, solo el signo punto)

    3. Guardar cambios, y es todo se resuelve el problema que habiamos tenido.

  19. Hola Fernando, yo quiero quitar «portfolio» de la URL, es distinto de Category porque también tengo categorías aparte. Lo que quiero es www. ejemplo.com/nombre del servicio y no http://www.ejemplo.com/portfolio/nombre del servicicio, la típica tontería que te deja atascada… te agradecería mucho tu ayuda. Gracias

  20. Angel Sanchez Fuentes

    Ya se ha hecho la pregunta pero no hubo respuesta. Es posible a través de un plugins o código quitar categoría a categoría, no todas a la vez. Para ver la repercusión en el SEO. y comentando este tema, puede haber perdida de posición al quitar las categorías?

Deja un comentario

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *

Información base sobre privacidad:
- Responsable: Fernando Tellado ([email protected])
- Fin del tratamiento: Moderación de comentarios para evitar spam
- Legitimación: Tu consentimiento
- Comunicación de los datos: No se comunicarán los datos a terceros salvo por obligación legal
- Derechos: Acceso, rectificación, portabilidad, olvido

 

Scroll al inicio