Cambiar los enlaces permanentes: problemas y soluciones

6

Esta es una entrada mitad WordPress-fu, mitad desahogo. Avisados est√°is ūüėČ

Desde hace unos d√≠as ven√≠a notando que no funcionaban ni la paginaci√≥n inferior, ni el Calendario del hist√≥rico de entradas, ni el combo de ¬ęArt√≠culos Anteriores¬Ľ. Seguro que los que ven√≠s por aqu√≠ habitualmente no los hab√©is utilizado jam√°s, pero a veces vienen lectores nuevos a los que les da por darse un garbeo por las entradas m√°s antiguas… qu√© menos que tenerles la alfombra roja siempre preparada.

Así que aproveché estos días, en los que estoy muy perro para escribir, para averiguar qué estaba interfiriendo. Y puse en práctica esto que aconsejan en Primero de WordPress sobre los plugins:

¬ŅHas probado a pagarlo y encenderlo?

Efectivamente, al desactivarlos todos comprobé que volvían a funcionar las paginaciones, con lo que sólo quedaba ir activando cada uno de los plugins y verificando que seguían funcionando los enlaces antes de activar el siguiente. Un curro que me llevó su tiempo porque, a lo tonto, tengo casi 30 plugins activos.

Con este m√©todo tendr√≠a que haber localizado a la primera el plugin conflictivo, pero tuve tres o cuatro falsos positivos (debidos al cach√©) que me desviaron un poco. Al final consegu√≠ encontrar el ¬ęculpable¬Ľ: Redirection,¬†un plugin de redirecciones autom√°ticas que ten√≠a activado desde hace unos a√Īos.

Resulta que all√° por 2012 yo era un fan de las ¬ędirecciones amigables¬Ľ y¬†me dio por pensar que las m√≠as eran demasiado complicadas. ¬ŅQui√©n iba a ser capaz de aprenderse el¬†/a√Īo/mes/nombre-de-la-entrada¬†de su entrada favorita? Sin embargo, si dejaba las URLs como¬†/blog/nombre-de-la-entrada¬†se lo pondr√≠a m√°s f√°cil a todos los que se aprenden y teclean directamente las direcciones para acceder a ellas.

Est√° muy bien que los perroflautas del ¬ęderecho a Googlear¬Ľ os manifest√©is y hag√°is asamble√≠tas. Pero yo tambi√©n tengo que velar por esa mayor√≠a silenciosa de ¬ętecleadores de URLS¬Ľ

Y eso hice. A trav√©s de los ¬ęAjustes¬Ľ de WordPress cambi√© los enlaces permanentes para que s√≥lo fueran /blog/nombre-de-la-entrada.

Sin embargo, poco tiempo despu√©s ca√≠ en la cuenta de que esto provocaba un problema bastante gordo. Los enlaces externos segu√≠an teniendo el formato antiguo… as√≠ que quien ven√≠a al blog a trav√©s de esos enlaces se encontraba con el cl√°sico aviso de ¬ęp√°gina no encontrada¬ę.

La solución que encontré fue buscar plugins que redireccionaran las antiguas URLs al nuevo formato. No me calenté mucho la cabeza e instalé el Redirection, muy completo y que, entre otras cosas, me permitía ver las URLs que utilizaba la gente para venir antes de toparse con el aviso.

Al principio iba poniendo a mano las redirecciones de las URLs que tra√≠an m√°s tr√°fico, pero hace unos meses encontr√© una forma m√°s gen√©rica, a base de regular expressions. Despu√©s de pegarme un poco con ellas, consegu√≠ que se hiciera la redirecci√≥n como quer√≠a: que cuando entraras con /blog/n√ļmero/n√ļmero/nombre-de-entrada¬†te llevara a /blog/nombre.

Y justo aqu√≠ es donde est√° el problema que descubr√≠ el otro d√≠a: resulta que cuando haces una b√ļsqueda de entradas por mes (por ejemplo, si quieres ver las entradas de marzo), la URL de la p√°gina ¬ęresultados de b√ļsqueda¬Ľ que WordPress te monta por defecto es, precisamente, /blog/a√Īo/mes.¬†Al no haber /nombre, el plugin sustitu√≠a la direcci√≥n por¬†/blog/ ¬†solamente… es decir, ¬°¬°te llevaba a la p√°gina principal!!. Y eso es exactamente lo mismo que pasaba con la paginaci√≥n: si entras en la p√°gina blog/30, la regular expression¬†hac√≠a que el plugin redireccionara tambi√©n a la p√°gina principal.

Total, que si quer√≠a que funcionaran las b√ļsquedas y la paginaci√≥n no me val√≠a ese plugin. Lo borr√© y, tras una b√ļsqueda en profundidad, al final he optado por instalar el¬†Change Permalink Helper, que lo que hace es tomar √ļnicamente el ¬ęslug¬ę de la URL entrante, buscarla en el listado de entradas del blog y presentar la que coincida.

Es decir, al no tomar en consideraci√≥n las fechas, no interfiere con las b√ļsquedas por meses ni por p√°ginas. ¬°Yuju! Asunto resuelto.

As√≠ que ya lo s√© para otra vez:¬†si hay alg√ļn problema en la navegaci√≥n de WordPress, lo mejor es empezar cuestion√°ndose las redirecciones.

Buey, y todo este rollopost… ¬Ņpa qu√©? Sobre todo para desahogarme :-P. Tambi√©n para recordarme a m√≠ mismo que paso bastante tiempo (tal vez demasiado) hurgando en las ¬ętripas¬Ľ del blog. Y adem√°s, para que le sea √ļtil a quien llegue a esta p√°gina buscando una soluci√≥n a este problema. Vamos, que espero no ser el √ļnico pardillo al que le ha pasado esto XDD

¬†EDITADO (20/02/2014): Desde Planetahuevo el maese Darkpollo propone una soluci√≥n a√ļn m√°s sencilla que no necesita plugin ni nada. Basta a√Īadir una l√≠nea de c√≥digo en el archivo .htaccess para que se haga la redirecci√≥n autom√°tica y permanentemente. Y para m√≠, todo lo que sea evitar la saturaci√≥n de plugins, que frecuentemente se quedan obsoletos, es mucho m√°s eficiente. ¬°Much√≠simas gracias, maese!

6 COMENTARIOS

  1. Pues sí quieres saber otro problema lla, en los RSS de esta entrada hay una inyección de spam de productos de farmacia ya sabes para qué, bastante chula.
    Por sí lo quieres revisar.

    • ¬°Maldici√≥n! Pensaba que ya me hab√≠a librado de ese Pharma Hack desde que me cambi√© de hosting… Juerrrr…

      ¬°Gracias por comentarlo, maese!

      • Jajajjaa, qu√© va ūüėõ

        Bueno, creo que ya est√° solucionado… de momento. Tiene pinta de que ven√≠a de alguno de mis plugins, aunque no s√© de cu√°l. He hecho una purga y cruzo los dedos para que sea suficiente.

        ¬°Gracias a los dos por avisar!

Dejar respuesta

Please enter your comment!
Please enter your name here

Este sitio usa Akismet para reducir el spam. Aprende cómo se procesan los datos de tus comentarios.