{"id":10783,"date":"2014-03-12T15:08:11","date_gmt":"2014-03-12T14:08:11","guid":{"rendered":"https:\/\/clientes.ignaciosantiago.com\/new\/seo-avanzado-wordpress-estructura-web-categorias-urls-enlaces\/"},"modified":"2014-03-12T15:08:11","modified_gmt":"2014-03-12T14:08:11","slug":"seo-avanzado-wordpress-estructura-web-categorias-urls-enlaces","status":"publish","type":"post","link":"https:\/\/clientes.ignaciosantiago.com\/new\/seo-avanzado-wordpress-estructura-web-categorias-urls-enlaces\/","title":{"rendered":"SEO Avanzado para WordPress: Estructura Web (Categor\u00edas, URLs y Enlaces)"},"content":{"rendered":"<p>La <strong>Estructura Web en WordPress<\/strong> es un tema que afecta a todos los que tenemos un blog o una p\u00e1gina web en este maravilloso y gratuito software. Pero, aunque\u00a0<strong>WordPress nos da una plataforma muy potente en la que dise\u00f1ar nuestro blog o p\u00e1gina web<\/strong>, sigue habiendo mucho que \u201cconfigurar\u201d y \u201coptimizar\u201d para <strong>mejorar la estructura web<\/strong>, ya sean<strong> las categor\u00edas, las URLs o los enlaces<\/strong>, y no sufrir de <a title=\"Contenido Duplicado: Qu\u00e9 es, c\u00f3mo encontrarlo y c\u00f3mo librase de el\" href=\"https:\/\/ignaciosantiago.com\/contenido-duplicado\/\" target=\"_blank\" rel=\"noopener noreferrer\">contenido duplicado<\/a>. Adem\u00e1s, cuando se hacen cambios a posteriori, es decir, con el blog o p\u00e1gina web ya creado,\u00a0<strong>hay que tener mucho cuidado<\/strong>\u00a0con lo que se hace, si no se quiere\u00a0<strong>echar por tierra el trabajo de a\u00f1os<\/strong>.<\/p>\n<p>Ya trat\u00e9 el tema del \u00ab<a title=\"SEO avanzado para WordPress: Enlaces permanentes e implementaci\u00f3n multilenguaje\" href=\"https:\/\/ignaciosantiago.com\/seo-wordpress\/\" target=\"_blank\" rel=\"noopener noreferrer\">SEO avanzado para WordPress: Enlaces permanentes e implementaci\u00f3n multilenguaje<\/a>\u00ab, pero esta vez te voy a mostrar una serie de consejos publicados en <a href=\"http:\/\/blog.ikhuerta.com\/seo-on-page-estructura-web-en-wordpress-categorias-urls-y-links\" target=\"_blank\" rel=\"noopener noreferrer\">el blog de I\u00f1aki Huerta<\/a>\u00a0sobre c\u00f3mo configurar la <strong>estructura web de\u00a0<\/strong>una nueva instalaci\u00f3n de WordPress para que tenga cierto sentido que te van a encantar. Hay <strong>muchas malas pr\u00e1cticas<\/strong> y sistemas demasiado t\u00e9cnicos para conseguir cosas que pueden hacerse solo teniendo un poco de cuidado, as\u00ed que espero que el art\u00edculo sea de utilidad y te ayude a mejorar la <strong>estructura web de tu Wordpress<\/strong>.<\/p>\n<h2>Paso #1: Urls amigables y .htaccess<\/h2>\n<p>Este es un punto importante de cualquier desarrollo PHP con URLs amigables. <strong>WordPress no usa este sistema<\/strong>\u00a0en su instalaci\u00f3n por defecto . Es algo que puedes comprobar al navegar, viendo como las \u00a0URLs de las p\u00e1ginas terminan en\u00a0\u00ab\/?p=123\u00bb en lugar de \u00ab\/mi-maravilloso-y-currado-post\u00bb.<\/p>\n<p>No es necesario ser <strong>experto en\u00a0Wordpress<\/strong>\u00a0o contratar una\u00a0<a title=\"Consultor\u00eda de WordPress\" href=\"https:\/\/ignaciosantiago.com\/servicios\/diseno-paginas-web-wordpress\/\" target=\"_blank\" rel=\"noopener noreferrer\">consultor\u00eda de Wordpress<\/a> para saber activar las URLs amigables, ya que es bastante sencillo. Simplemente dir\u00edgete en tu administrador a Ajustes &gt; Enlaces permanentes y selecciona una estructura de enlaces que no sea la opci\u00f3n \u00abPredeterminada\u00bb. <strong>Mi consejo es que escojas \u00abNombre entrada\u00bb<\/strong>. Una vez guardes los cambios, se crear\u00e1 un <strong>archivo .htaccess en la ra\u00edz de tu instalaci\u00f3n wordpress<\/strong> y cambiar\u00e1n todas las URLs de tu<strong> instalaci\u00f3n wordpress<\/strong>.<\/p>\n<p>Un aviso para los m\u00e1s t\u00e9cnicos es que cualquier cambio de URLs que provoquen con c\u00f3digo no actualizar\u00e1 la base de datos a no ser que se haga este proceso. Para provocarlo en los plugins tenemos la funci\u00f3n\u00a0<a href=\"http:\/\/codex.wordpress.org\/Function_Reference\/flush_rewrite_rules\" target=\"_blank\" rel=\"noopener noreferrer\">flush_rewrite_rules<\/a>,\u00a0pero para cambios menores siempre ser\u00e1 m\u00e1s r\u00e1pido ir a Ajustes &gt; Enlaces permanentes y volver a darle a guardar.<\/p>\n<p>Bien, lo primero que vamos a hacer es retocar el .htaccess para evitar algunas <strong>incoherencias SEO<\/strong>:<\/p>\n<h3>Evitando que la web exista en varios dominios\/subdominios a la vez<\/h3>\n<p>Es un problema t\u00edpico. Instalas la p\u00e1gina web en mibonitodominio.com\u00a0y resulta que puedes acceder a ella mediante mibonitodominio.com\u00a0y www.mibonitodominio.com. Esto no es demasiado problem\u00e1tico en SEO, ya que los buscadores est\u00e1n acostumbrados a este tipo de problemas y no ponen demasiadas pegas por tenerlo descuidado. El problema viene por la posible perdida de enlaces entre las distintas versiones de la web. Cuando tienes una web en dos tipos de URLs distintas no sabes\u00a0<strong>cual va a contemplar como v\u00e1lida Google<\/strong> y lo que es peor, <strong>no sabes la versi\u00f3n que van a enlazar aquellos que nos mencionen<\/strong>.<\/p>\n<p>Pese a que Google reconozca que la web es la misma no tenemos pruebas de que los enlaces que vayan a una u otra versi\u00f3n de la web cuenten para posicionar el mismo contenido. Lo que si sabes es que normalmente, si existe contenido duplicado en tu p\u00e1gina y env\u00edas enlaces hacia ambas versiones, el resultado es que estas <strong>perdiendo autoridad en ese contenido<\/strong>. Asi que lo mejor es no liar al algoritmo y ponerle las cosas f\u00e1ciles: <strong>Que s\u00f3lo exista una sola versi\u00f3n de la web<\/strong>.<\/p>\n<p><img fetchpriority=\"high\" decoding=\"async\" class=\"aligncenter size-full wp-image-9934\" src=\"https:\/\/ignaciosantiago.com\/wp-content\/uploads\/2014\/03\/seo-avanzado-wordpress-estructura-web-categorias-urls-enlaces-2.jpg\" alt=\"SEO avanzado para WordPress: Estructura Web (Categor\u00edas, URLs y Enlaces)\" width=\"650\" height=\"360\" \/><\/p>\n<p>As\u00ed que tenemos que elegir solo una de las dos versiones para tu wordpress. Yo personalmente <strong>prefiero la versi\u00f3n sin www<\/strong> (esta p\u00e1gina es un claro ejemplo). Tienes que saber que tu dominio real es el que aparece sin nada delante y que \u00abwww.\u00bb es un subdominio de este dominio principal por lo que en realidad<strong> est\u00e1s dando dos direcciones distintas a los buscadores para tu site<\/strong>.<\/p>\n<p>Antiguamente, para que los servidores supiesen que es lo que se les estaba pidiendo se adopt\u00f3 la costumbre de iniciar la parte de la web por \u00abwww\u00bb (World Wide Web) dejando el dominio principal para accesos m\u00e1s importantes o simplemente bloqueado de todo acceso. Pero cuando estamos usando un dominio directamente para alojar una web (el 99,99999% de los casos) esto ya no tiene ning\u00fan sentido.<\/p>\n<p><strong>Quitar cualquier subdominio del dominio:<\/strong><\/p>\n<div>\n<div>\n<pre># eliminamos subdominios\nRewriteCond %{HTTP_HOST} ^[a-zA-Z0-9-_]+.mibonitodominio.com$ [NC] \nRewriteRule ^(.*)$ http:\/\/mibonitodominio\/$1 [R=301,QSA,L]<\/pre>\n<\/div>\n<\/div>\n<p><strong>Quitar solo si el subdominio es www:<\/strong><\/p>\n<div>\n<div>\n<pre># eliminamos www\nRewriteCond %{HTTP_HOST} ^www.mibonitodominio.com$ [NC] \nRewriteRule ^(.*)$ http:\/\/mibonitodominio\/$1 [R=301,QSA,L]<\/pre>\n<\/div>\n<\/div>\n<p><strong>A\u00f1adiendo las www a un dominio que no las tiene:<\/strong><\/p>\n<div>\n<div>\n<pre># a\u00f1adimos www\nRewriteCond %{HTTP_HOST} ^mibonitodominio.com$ [NC] \nRewriteRule ^(.*)$  [R=301,QSA,L]<\/pre>\n<\/div>\n<\/div>\n<p>A\u00f1ade la parte que te interese (reemplazando mibonitodominio.com por el tuyo) antes de la parte de los \u00abRewriteCond\u00bb de tu htaccess.<\/p>\n<p><strong>Nota<\/strong>: Que quieras tener una sola versi\u00f3n de la web no significa que no sea bueno que el servidor responda en ambas. Por el mismo motivo de no perder tan preciados enlaces, es preferible que www y sin-www est\u00e9n redireccionadas con un 301 la una a la otra.<\/p>\n<h3>Eliminando las \u00ab\/\u00bb del final de las URLs<\/h3>\n<p>Otro aspecto desagradable que a veces sucede es que permitimos a wordpress crear urls con un \u00ab\/\u00bb al final. Esto es algo que sucede en muchas <strong>instalaciones wordpress<\/strong> ya que la opci\u00f3n de enlaces permanentes ofrece crear este tipo de urls (F\u00edjate en la p\u00e1gina de Ajustes &gt; Enlaces permanentes y ver\u00e1s como las URLs que se ofrecen por defecto acaban por \u00ab\/\u00bb).<\/p>\n<p>Lo peor es que a\u00fan haci\u00e9ndolo bien y quitando esta barra del final de las URLs, es posible que haya usuarios que enlacen las URLs acabadas en \u00ab\/\u00bb. Si seguimos las normas b\u00e1sicas de las URLs (no por ser amigables entendemos que todo vale), deber\u00edamos tener claro que el simbolo \u00ab\/\u00bb representa un directorio o carpeta en cada URL. As\u00ed \u00ab\/cosas\/item\u00bb, significa que la p\u00e1gina \u00abitem\u00bb est\u00e1 dentro de la carpeta \u00abcosas\u00bb.<\/p>\n<p>Al ser un directorio, lo que <strong>no tiene sentido es que acabes las URLs con \u00ab\/\u00bb<\/strong>, pues significar\u00eda que cada p\u00e1gina de tu web es un directorio sin documentos dentro. Parece una estupidez, y de echo no es ni mucho menos lo m\u00e1s importante del SEO, pero si vas a <strong>optimizar a nivel SEO una p\u00e1gina web<\/strong>, es mejor ponerle toda la l\u00f3gica posible a la misma, de forma que garantices que los buscadores entienden lo que quieres que entiendan.<\/p>\n<p>As\u00ed que ve al .htaccess y a\u00f1ade el siguiente c\u00f3digo para redirigir todo el tr\u00e1fico acabado en \u00ab\/\u00bb a su p\u00e1gina hom\u00f3loga sin \u00ab\/\u00bb.<\/p>\n<div>\n<div>\n<pre># eliminamos \/ al final de las urls\nRewriteCond %{REQUEST_FILENAME} !-d\nRewriteRule ^(.+)\/$ \/$1 [R=301,L]<\/pre>\n<\/div>\n<\/div>\n<p><strong>Aviso:<\/strong>\u00a0Cuidado con no a\u00f1adir esto antes de cambiar tus URLs y quitarles del final la carpeta \u00ab\/\u00bb, o tus p\u00e1ginas dejar\u00e1n de funcionar ya que .htaccess redirigir\u00e1 a una p\u00e1gina sin \u00ab\/\u00bb y wordpress solo las entender\u00e1 con \u00ab\/\u00bb al final.<\/p>\n<h2>Paso #2 Evitar la multicategorizaci\u00f3n<\/h2>\n<p style=\"text-align: center;\"><img decoding=\"async\" class=\" wp-image-9935 aligncenter\" src=\"https:\/\/ignaciosantiago.com\/wp-content\/uploads\/2014\/03\/seo-avanzado-wordpress-estructura-web-categorias-urls-enlaces-3.jpg\" alt=\"SEO avanzado para WordPress: Estructura Web (Categor\u00edas, URLs y Enlaces)\" width=\"650\" height=\"238\" \/><\/p>\n<p>Uno de los problemas b\u00e1sicos de estructura muy t\u00edpicos en desarrollos web complejos con wordpress es la <strong>multicategorizaci\u00f3n<\/strong>. \u00bfQu\u00e9 pasa cuando un \u00edtem est\u00e1 disponible en varias categor\u00edas a la vez?.\u00a0Como comentaba antes las carpetas\/directorios de nuestra web deben representar pertenencia del elemento inferior a la carpeta superior, por lo que cuando contamos con un sistema de clasificaci\u00f3n de contenidos resulta sencillo saber como crear cada URL.<\/p>\n<h3>Categor\u00edas: pocas y muy bien pensadas<\/h3>\n<p><span style=\"font-size: 14px; line-height: 1.5em;\">La mejor opci\u00f3n a la hora de categorizar tu instalaci\u00f3n wordpress es pensar una serie de categor\u00edas suficientemente bien estructuradas para que los elementos siempre pertenezcan a una \u00fanica categor\u00eda.\u00a0<\/span>Si organizas bien las categor\u00edas, podr\u00e1s hacer que estas participen en tu <strong>estructura de URLs<\/strong> y que todo tu contenido siga <strong>reglas sem\u00e1nticas<\/strong>:\u00a0los usuarios podr\u00e1n ir navegando por las categor\u00edas y viendo como el contenido queda realmente dentro de estas.<\/p>\n<p>Otra opci\u00f3n, si nuestro proyecto va a ser lo bastante grande, es pensar ya no solo en las categor\u00edas sino tambi\u00e9n en las subcategor\u00edas. WordPress permite que una categor\u00eda pueda tener categor\u00edas superiores, de forma que se crea una dependencia extra.<\/p>\n<p>As\u00ed que, en WordPress, (al menos en un wordpress basado en posts) el <strong>\u00e9xito de una estructura web<\/strong> pasa por estudiar muy bien las <strong>categor\u00edas<\/strong> pensando que no deben ser solo una serie de enlaces en el sidebar, sino una parte esencial de la organizaci\u00f3n de tu contenido.<\/p>\n<h3>\u00bfQu\u00e9 pasa con las etiquetas?<\/h3>\n<p>Los tags (o etiquetas) son y ser\u00e1n siempre una forma genial de aportar clasificaciones secundarias a los posts (muchas plantillas y plugins necesitan un buen etiquetado de los posts para organizar los contenidos), pero eso no significa que podamos hacerlo caber todo en nuestras URLs, luego entraremos a ver como tenerlos presentes.<\/p>\n<h2>Paso #3 URLs basadas en categor\u00edas<\/h2>\n<p>Entendido el sistema que vas a usar para estructurar tu p\u00e1gina web, y habiendo pensado perfectamente las categor\u00edas que quieres emplear, ahora toca hacerlo realidad.\u00a0Otra vez volvemos a Ajustes &gt; Enlaces permanentes y configuramos WordPress para que funcione como quieras:<\/p>\n<ul>\n<li>Con una estructura de posts \u00ab\/%category%\/%postname%\u00bb (sin las comillas)<\/li>\n<li>En categor\u00edas, ahora indicamos que la url sea \u00ab.\/\u00bb (lo que har\u00e1 que WordPress elimine la horrible carpeta \u00ab\/category\u00bb de nuestras URLs)<\/li>\n<li>En las tags (etiquetas), lo dejo a tu criterio, dependiendo de como las uses pueden tener m\u00e1s sentido unas f\u00f3rmulas u otras<\/li>\n<\/ul>\n<p>Al actualizar, esto provocar\u00e1 que las URLs de los posts dependan de las categor\u00edas:<\/p>\n<ul>\n<li>Las categor\u00edas tendr\u00e1n su URL desde raiz.<\/li>\n<li>Los posts siempre tendr\u00e1n la categor\u00eda como carpeta superior.<\/li>\n<li>En el caso de anidar subcategor\u00edas, estas autom\u00e1ticamente se separar\u00e1n por \u00ab\/\u00bb en las URLs, por lo que los posts pasar\u00e1n a depender de la subcategor\u00eda.<\/li>\n<\/ul>\n<p>As\u00ed, si has creado la categor\u00eda \u00abanimales\u00bb, con la subcategor\u00eda \u00abpeque\u00f1os\u00bb y un art\u00edculo llamado \u00abPollito\u00bb, cuando veas la URL del post esta ser\u00e1\u00a0\u00ab\/animales\/pequenos\/pollito\u00bb.<\/p>\n<h3>El problema de \u00abno se encuentra la p\u00e1gina\u00bb<\/h3>\n<p><img decoding=\"async\" class=\"alignright size-full wp-image-9945\" src=\"https:\/\/ignaciosantiago.com\/wp-content\/uploads\/2014\/03\/seo-avanzado-wordpress-estructura-web-categorias-urls-enlaces-error-404.jpg\" alt=\"SEO avanzado para WordPress: Estructura Web (Categor\u00edas, URLs y Enlaces) error 404\" width=\"370\" height=\"271\" \/>Por desgracia el sistema de reconocimiento de URLs de WordPress no es perfecto y suele fallar. Al final resulta una lista de comprobaciones ordenadas de forma que WordPress va aplicando esa lista sobre la URL que est\u00e1 cargando el usuario y cuando encuentra una coincidencia con cualquier tipolog\u00eda de URL para y pasa a buscar el contenido.<\/p>\n<p>El problema es que con las URLs que hemos comentado antes puede equivocarse al hacer esta detecci\u00f3n. F\u00edjate que las URL&#8217;s de las categor\u00edas (\u00ab\/animales\u00bb y \u00abanimales\/pequenos\u00bb) no se diferencian demasiado de las de los post, sobretodo si mezclamos posts asociados a categor\u00edas inferiores o superiores.<\/p>\n<p>Por ejemplo, imagina que creas un post llamado \u00abPeque\u00f1os\u00bb y lo incluyes dentro de la categor\u00eda \u00abanimales\u00bb \u00bfQu\u00e9 se supone que debe hacer WordPress cuando llamemos a \u00ab\/animales\/pequenos\u00bb?<\/p>\n<p>Hace lo siguiente: Eval\u00faa en orden su listado de posibles URLs y encuentra que los posts podr\u00edan tener esa URL, por lo que nunca llega a evaluar \u00ab\/animales\/pequenos\u00bb como una posible categor\u00eda.<\/p>\n<p><strong>\u00bfC\u00f3mo solucionarlo?<\/strong><\/p>\n<p>La base es sencilla: debes evitar que WordPress pueda llegar a entender que un post tiene la misma URL que una categor\u00eda, por lo que debemos diferenciar un poco las URLs.<\/p>\n<p>En las categor\u00edas estamos un poco atados, puesto que como el administrador solo nos deja editar su carpeta anterior (la que hemos eliminado al indicarla como \u00ab.\/\u00bb) no puedes hacer nada para diferenciar estas URLs de las de los posts.\u00a0Donde si puedes hacer algo es en los art\u00edculos, ya que puedes\u00a0editar la URL al completo. Pero como dec\u00eda, nos interesa que esta comience por la categor\u00eda y por supuesto, para que exista coincidencia de Keywords debe incluir el nombre de post como parte de la misma. \u00bfQu\u00e9 opciones te quedan? Sencillo, a\u00f1adir algo m\u00e1s al final. No es lo m\u00e1s elegante, pero entre las opciones de las que disponemos es la que seguir\u00e1 teniendo en cuenta nuestra<strong> estructura web<\/strong>.<\/p>\n<p><strong>\u00bfQu\u00e9 a\u00f1adir al final de las URLs?<\/strong><\/p>\n<p>Esto es cuesti\u00f3n de gustos de cada uno. Te indico algunas opciones por las que puedes optar y que ventajas tienen cada una de ellas:<\/p>\n<ul>\n<li><strong>Extensi\u00f3n .html:\u00a0<\/strong>Siguiendo con la teor\u00eda de que las URLs son directorios, los archivos finales perfectamente podr\u00edan tener extensi\u00f3n. Esta era una pr\u00e1ctica bastante usada hace unos a\u00f1os. A\u00f1ad\u00edas una extensi\u00f3n \u00ab.html\u00bb o \u00ab.htm\u00bb al final de tus p\u00e1ginas y as\u00ed \u00abenga\u00f1abas\u00bb al buscador haci\u00e9ndole pensar que esa p\u00e1gina era est\u00e1tica (hecha a mano y no con programaci\u00f3n) y en teor\u00eda la ten\u00eda m\u00e1s en cuenta. La verdad es que esa teor\u00eda ten\u00eda poco peso (como si Google no supiese que existe ModRewrite) y actualmente, por ahorrar caracteres se prefiere no incluir extensi\u00f3n alguna. Pero eso no significa que incluirla est\u00e9 mal. Queda un poco anticuado pero es correcto. Ve a la configuraci\u00f3n de los enlaces permanentes de wordpress y a\u00f1ade: \u00ab\/%category%\/%postname%.html\u00bb\n<ul>\n<li>Tipo URL: \u00ab\/animales\/pequenos\/pollito.html\u00bb<\/li>\n<li>Ventajas: a nivel de estructura web, es correcta y no a\u00f1adimos m\u00e1s sem\u00e1ntica<\/li>\n<li>Inconvenientes: Urls anticuadas y p\u00e9rdida de varios car\u00e1cteres<\/li>\n<\/ul>\n<\/li>\n<li><strong>Nombre de la p\u00e1gina o Keyword:\u00a0<\/strong>Actualmente muchas estrategias de keywords SEO en blogs pasan por incluir una coletilla en los titles al final de las p\u00e1ginas. Esta en la inmensa mayor\u00eda de los casos es o el nombre de la web (si tiene relevancia) o la mejor keyword gen\u00e9rica de la misma. As\u00ed si yo tengo un blog sobre Windows 8, puedo querer que todos mis t\u00edtulos sean \u00ab[nombre de post] | Windows 8\u00bb. Si llevamos a cabo estas pr\u00e1cticas, no ser\u00eda tan raro que las URLs tambi\u00e9n acaban por ese t\u00edtulo a\u00f1adido, solucionando nuestro problema de coincidencias. Ve a la configuraci\u00f3n \u00a0de enlaces permanentes en WordPress y a\u00f1ade: \u00ab\/%category%\/%postname%-titulo-escrito-por-ti\u00bb\n<ul>\n<li>Tipo URL: \u00ab\/animales\/pequenos\/pollito-titulo-escrito-por-ti\u00bb<\/li>\n<li>Ventajas: la URL sigue siendo actual, sin cosas raras y respalda todo el t\u00edtulo<\/li>\n<li>Inconvenientes: perdida de sem\u00e1ntica por apostar por todo el t\u00edtulo a la vez, y dificultad para cambiar la coletilla al cabo de un tiempo (pues se cambiar\u00edan todas las URLs)<\/li>\n<\/ul>\n<\/li>\n<li><strong>Id de<\/strong> <strong>post<\/strong>:<strong>\u00a0<\/strong>Otra forma t\u00edpica de solucionar este problema es a\u00f1adir el ID de post al final de su URL, de forma que evitemos todo conflicto. Esto adem\u00e1s deber\u00eda agilizar las consultas internas (al consultar por ID en lugar de por postname) aunque no puedo asegurarlo al 100%. Un aviso, solo el ID no ser\u00e1 suficiente, habr\u00e1 que a\u00f1adir algo m\u00e1s (por ejemplo \u00abp\u00bb y luego el id). Ve a la configuraci\u00f3n \u00a0de enlaces permanentes en wordpress y a\u00f1ade: \u00ab\/%category%\/%postname%-p%post_id%\u00bb<br \/>\n&#8211; Tipo URL: \u00ab\/animales\/pequenos\/pollito-123\u00bb<br \/>\n&#8211; Ventajas: resulta medianamente natural para el usuario y se a\u00f1aden pocos caracteres<br \/>\n&#8211; Inconvenientes: podr\u00edan a\u00f1adirse aun menos caracteres. Cuando el blog crece no es extra\u00f1o encontrarse IDs de cuatro o cinco cifras.<\/li>\n<li><strong>S\u00edmbolo: \u00ab_\u00bb, \u00ab-\u00ab, etc.:\u00a0<\/strong>Si somos de los que nos gusta ahorrar caracteres en las URLs a veces la mejor opci\u00f3n es solo a\u00f1adir uno de ellos al final de la URL. Sin embargo, si hacemos esto debemos usar una f\u00f3rmula que WordPress no utilice al crear las URLs. Por ejemplo si a\u00f1adi\u00e9semos una \u00aba\u00bb al final de las URLs, podr\u00eda provocar coincidencias con urls de categor\u00edas acabadas en \u00aba\u00bb y no habr\u00edamos solucionado nuestro problema.\u00a0Ve a la configuraci\u00f3n \u00a0de enlaces permanentes en wordpress y a\u00f1ade: \u00ab\/%category%\/%postname%_\u00bb\n<ul>\n<li>Tipo URL: \u00ab\/animales\/pequenos\/pollito_\u00bb<\/li>\n<li>Ventajas: s\u00f3lo a\u00f1adimos un car\u00e1cter para conseguir la diferenciaci\u00f3n<\/li>\n<li>Inconvenientes: realmente es un truco t\u00e9cnico que a todos los efectos \u00abqueda mal\u00bb y que puede provocar que al copiar el link algunos usuarios lo borren por no entenderlo.<\/li>\n<\/ul>\n<\/li>\n<li><strong>Darle la vuelta a los tres anteriores:\u00a0<\/strong>Otra opci\u00f3n que puede venirnos bien en casos muy concretos es la de empezar con alg\u00fan a\u00f1adido en lugar de acabar con el. En ese caso el a\u00f1adido deber\u00e1 estar antes del t\u00edtulo del post (pues quedemos que la parte inicial de la URL no cambie). El resultado, es que los efectos tanto positivos como negativos son m\u00e1s notorios.\u00a0Ve a la configuraci\u00f3n \u00a0de enlaces permanentes en wordpress y a\u00f1ade: \u00ab\/%category%\/elemento-extra-%postname%\u00bb<br \/>\n&#8211; Tipo URL: \u00ab\/animales\/pequenos\/elemento-extra-pollito\u00bb<\/li>\n<\/ul>\n<p>Como puedes observar hay muchas \u00a0opciones -y algunas m\u00e1s que seguro que se te ocurren (con variables de fecha o autor, por ejemplo)- pero ninguna es del todo limpia. Es una l\u00e1stima que WordPress no solucione este tema de otra forma, pero jugamos con las herramientas que se nos dan y hay que decir, que estar haciendo una optimizaci\u00f3n de estructura web solo con dos a\u00f1adidos a un archivo y tocando un formulario es todo un lujo.<\/p>\n<h2>Paso #4 Normas para darle sentido<\/h2>\n<p><img loading=\"lazy\" decoding=\"async\" class=\"aligncenter size-full wp-image-9936\" src=\"https:\/\/ignaciosantiago.com\/wp-content\/uploads\/2014\/03\/seo-avanzado-wordpress-estructura-web-categorias-urls-enlaces-1.jpg\" alt=\"SEO avanzado para WordPress: Estructura Web (Categor\u00edas, URLs y Enlaces)\" width=\"650\" height=\"360\" \/><\/p>\n<p>Por \u00faltimo, vamos a ver algunos detalles para que esta estructura web tenga aun m\u00e1s sentido en nuestra plantilla y que est\u00e9 basada en los enlaces que enviamos hacia categor\u00edas y etiquetas.<\/p>\n<h3>No podemos permitirnos enlazar a todo siempre<\/h3>\n<p>Una<strong> estructura web<\/strong> donde todas nuestra categorias y tags est\u00e1n<strong> siempre enlazadas<\/strong> (nubes de tags y listados de todas las categor\u00edas)<strong> no ayuda a los buscadores<\/strong> a entender nuestra estructura web. Al final, cada enlace interno recibido provoca que unas p\u00e1ginas sean m\u00e1s importantes que otras. Por lo tanto, dentro de la estructura web que hemos comentado debes poder hacer que tus categor\u00edas sean m\u00e1s importantes que las etiquetas y que las categor\u00edas principales sean m\u00e1s importantes que las subcategor\u00edas.<\/p>\n<p>Por lo tanto:<\/p>\n<ul>\n<li><strong>No uses nubes de tags<\/strong>, salvo en puntos concretos de la web y controlando mucho que enlaces env\u00edas en ellas y por qu\u00e9.<\/li>\n<li><strong>Evita enlazar a etiquetas desde la estructura web de p\u00e1gina<\/strong>.<\/li>\n<li>Si usas categor\u00edas con varios niveles, no las presentes todas en el men\u00fa, <strong>s\u00f3lo las principales<\/strong>.<\/li>\n<li>Una vez dentro de una categor\u00eda principal, si que tendr\u00e1n sentido los <strong>enlaces que dirijan hacia sus categor\u00edas inferiores<\/strong> en forma de nuevo submen\u00fa o men\u00fa ampliado.<\/li>\n<\/ul>\n<h3>Cuidado con la asociaci\u00f3n de los art\u00edculos a sus categor\u00edas y etiquetas<\/h3>\n<p>Quieres conseguir que los art\u00edculos queden ligados sem\u00e1nticamente a sus p\u00e1ginas de categor\u00edzaci\u00f3n. Una forma de ayudar a este cometido son las URLs, pero tambi\u00e9n van a tener mucha importancia los enlaces a la hora de conseguir esto. Por lo tanto un post siempre debe enlazar hacia la p\u00e1gina que le clasifique, por lo tanto:<\/p>\n<ul>\n<li><strong>Debes incluir siempre<\/strong> en el contenido del post, o al final de este, <strong>enlaces hacia las categor\u00edas y los tags<\/strong>. Sobretodo en el caso de los tags, esto representar\u00e1 que cuantos m\u00e1s art\u00edculos existan m\u00e1s potente ser\u00e1 el tag, pues m\u00e1s p\u00e1ginas les env\u00edan enlaces.<\/li>\n<li><strong>Etiqueta muy bien estos enlaces con rel=\u00bbtag\u00bb<\/strong> (por defecto muchas funciones de WordPress ya sacan as\u00ed estos enlaces).<\/li>\n<li><strong>Cuidado con no enviar este mismo tipo de enlaces hacia otras zonas<\/strong>. Marca sem\u00e1nticamente bien donde empieza y acaba el contenido del post y env\u00eda enlaces hacia otras partes, como posts, relacionados, siguiente, anterior, promociones, etc, fuera de estos bloques.<\/li>\n<\/ul>\n<h3>Evitemos los enlaces hacia la arquitectura de URLs secundaria de WordPress<\/h3>\n<p><strong>WordPress no solo usa estructuras para posts con categor\u00edas<\/strong>. Podemos encontrar<strong> formas de navegar<\/strong> por wordpress por archivos de fechas, por archivos de autores, etc.\u00a0Estas p\u00e1ginas bien usadas pueden ser muy \u00fatiles pero tal y como se presentan en la mayor\u00eda de las plantillas tan solo generan confusi\u00f3n a los buscadores y tampoco aportan nada a los usuarios, ya que estos no tienen ning\u00fan inter\u00e9s en saber si nuestro post es de marzo de 2010 o marzo de 2015.<\/p>\n<p><strong>Elimina estos enlaces si no vas a darles uso<\/strong>. As\u00ed mismo, y ya que estas limpiando, piensa en la necesidad de cada uno de los enlaces de tu plantilla. <strong>Si no tiene utilidad real, b\u00f3rralo<\/strong>.<\/p>\n<h2>Conclusi\u00f3n<\/h2>\n<p>Acabas de terminar un repaso a <strong>c\u00f3mo organizar una estructura web con WordPress<\/strong>, bien organizada, para que los buscadores la indexen correctamente y los usuarios la entiendan. \u00bfEs este todo el SEO que puede hacerse a la estructura web de una instalaci\u00f3n Worpdress? No, en absoluto: estructuras de p\u00e1ginas, custom-posts, custom-taxonomies, plugins varios, etc.\u00a0Espero que te haya gustado el art\u00edculo. Deja tu comentario y que no se te olvide compartirlo.<\/p>\n<!-- FeedbackWP Plugin --><div        class=\"rmp-widgets-container rmp-wp-plugin rmp-main-container js-rmp-widgets-container js-rmp-widgets-container--10783 \"        data-post-id=\"10783\">        <!-- Rating widget -->    <div class=\"rmp-rating-widget js-rmp-rating-widget\" role=\"group\" aria-labelledby=\"rmp-title-10783\">                    <p class=\"rmp-heading rmp-heading--title\" id=\"rmp-title-10783\">                \u00a1Punt\u00faame!            <\/p>                        <div class=\"rmp-rating-widget__icons\">            <ul class=\"rmp-rating-widget__icons-list js-rmp-rating-icons-list\" role=\"radiogroup\" aria-label=\"Rating from 1 to 5\">                                                        <li                            class=\"rmp-rating-widget__icons-list__icon js-rmp-rating-item\"                            data-descriptive-rating=\"\"                            data-value=\"1\"                            role=\"radio\"                            aria-checked=\"false\"                            aria-label=\"1 out of 5: \"                            tabindex=\"0\"                    >                        <i class=\"js-rmp-rating-icon rmp-icon rmp-icon--ratings rmp-icon--star \" aria-hidden=\"true\"><\/i>                    <\/li>                                                        <li                            class=\"rmp-rating-widget__icons-list__icon js-rmp-rating-item\"                            data-descriptive-rating=\"\"                            data-value=\"2\"                            role=\"radio\"                            aria-checked=\"false\"                            aria-label=\"2 out of 5: \"                            tabindex=\"-1\"                    >                        <i class=\"js-rmp-rating-icon rmp-icon rmp-icon--ratings rmp-icon--star \" aria-hidden=\"true\"><\/i>                    <\/li>                                                        <li                            class=\"rmp-rating-widget__icons-list__icon js-rmp-rating-item\"                            data-descriptive-rating=\"\"                            data-value=\"3\"                            role=\"radio\"                            aria-checked=\"false\"                            aria-label=\"3 out of 5: \"                            tabindex=\"-1\"                    >                        <i class=\"js-rmp-rating-icon rmp-icon rmp-icon--ratings rmp-icon--star \" aria-hidden=\"true\"><\/i>                    <\/li>                                                        <li                            class=\"rmp-rating-widget__icons-list__icon js-rmp-rating-item\"                            data-descriptive-rating=\"\"                            data-value=\"4\"                            role=\"radio\"                            aria-checked=\"false\"                            aria-label=\"4 out of 5: \"                            tabindex=\"-1\"                    >                        <i class=\"js-rmp-rating-icon rmp-icon rmp-icon--ratings rmp-icon--star \" aria-hidden=\"true\"><\/i>                    <\/li>                                                        <li                            class=\"rmp-rating-widget__icons-list__icon js-rmp-rating-item\"                            data-descriptive-rating=\"\"                            data-value=\"5\"                            role=\"radio\"                            aria-checked=\"false\"                            aria-label=\"5 out of 5: \"                            tabindex=\"-1\"                    >                        <i class=\"js-rmp-rating-icon rmp-icon rmp-icon--ratings rmp-icon--star \" aria-hidden=\"true\"><\/i>                    <\/li>                            <\/ul>        <\/div>        <p class=\"rmp-rating-widget__hover-text js-rmp-hover-text\" aria-live=\"polite\"><\/p>                <button class=\"rmp-rating-widget__submit-btn rmp-btn js-submit-rating-btn\">                    <\/button>        <div aria-live=\"polite\" aria-atomic=\"true\">            <p class=\"rmp-rating-widget__results js-rmp-results rmp-rating-widget__results--hidden\">                Puntuaci\u00f3n media <span class=\"rmp-rating-widget__results__rating js-rmp-avg-rating\">0<\/span> \/ 5. Votos: <span class=\"rmp-rating-widget__results__votes js-rmp-vote-count\">0<\/span>            <\/p>            <p class=\"rmp-rating-widget__not-rated js-rmp-not-rated \">                \u00a1Todav\u00eda no hay votos! S\u00e9 el primero en valorar el contenido.            <\/p>            <p class=\"rmp-rating-widget__msg js-rmp-msg\" role=\"status\"><\/p>        <\/div>    <\/div>    <!--Structured data -->                <\/div>\n","protected":false},"excerpt":{"rendered":"<p>La Estructura Web en WordPress es un tema que afecta a todos los que tenemos un blog o una p\u00e1gina web en este maravilloso y gratuito software. Pero, aunque\u00a0WordPress nos da una plataforma muy potente en la que dise\u00f1ar nuestro blog o p\u00e1gina web, sigue habiendo mucho que \u201cconfigurar\u201d y \u201coptimizar\u201d para mejorar la estructura [&hellip;]<\/p>\n","protected":false},"author":6,"featured_media":10784,"comment_status":"open","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"iawp_total_views":1,"page_builder":"","footnotes":""},"categories":[201],"tags":[],"class_list":["post-10783","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-wordpress"],"permalink_manager":null,"_links":{"self":[{"href":"https:\/\/clientes.ignaciosantiago.com\/new\/wp-json\/wp\/v2\/posts\/10783","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/clientes.ignaciosantiago.com\/new\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/clientes.ignaciosantiago.com\/new\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/clientes.ignaciosantiago.com\/new\/wp-json\/wp\/v2\/users\/6"}],"replies":[{"embeddable":true,"href":"https:\/\/clientes.ignaciosantiago.com\/new\/wp-json\/wp\/v2\/comments?post=10783"}],"version-history":[{"count":0,"href":"https:\/\/clientes.ignaciosantiago.com\/new\/wp-json\/wp\/v2\/posts\/10783\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/clientes.ignaciosantiago.com\/new\/wp-json\/wp\/v2\/media\/10784"}],"wp:attachment":[{"href":"https:\/\/clientes.ignaciosantiago.com\/new\/wp-json\/wp\/v2\/media?parent=10783"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/clientes.ignaciosantiago.com\/new\/wp-json\/wp\/v2\/categories?post=10783"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/clientes.ignaciosantiago.com\/new\/wp-json\/wp\/v2\/tags?post=10783"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}