WordPress, las páginas y los títulos duplicados

Google Webmaster Tools detecta más de mil títulos duplicados en OBM
Google Webmaster Tools detecta más de mil títulos duplicados en OBM

Igual la plantilla que utilizáis para WordPress es más lista que la mía y no os pasa, pero por si acaso. Resulta ser que Google Webmaster Tools detecta (dentro de unas horas será detectaba :-) ) más de mil páginas con títulos duplicados en este blog. Aunque no creo que eso afecte demasiado a los resultados en el motor de búsqueda, queda feo y convendría arreglarlo. Y como además era cuestión de hacerle dos preguntas al señor Google, invertir dos minutos en escribir media línea de código y que me recordasen que las condiciones van entre paréntesis en PHP, pues hasta lo he hecho y todo…

La cuestión es que mi plantilla (y un buen puñado de otras) no coloca en el título el número de página cuando debería. La solución: donde antes ponía, en la cabecera,

<title><?php bloginfo('name'); ?> <?php wp_title(); ?> </title>

ahora pone

<title><?php bloginfo('name'); ?> <?php wp_title(); ?> <?php if (is_paged()) echo ', página '.$paged; ?></title>

De nada… :-)

BibCiter v1.0: gestor bibliográfico con plugin para WordPress

Hace un tiempo nos hacíamos eco aquí de la salida en beta de BibCiter, un gestor web de bibliografías que permite, entre otras cosas, subirse los PDFs al servidor, sacar feeds RSS.

Pues bien, después de cerca de cuatro años de programación (ni a tiempo parcial, eso sí, sino a ratos muertos y más que nada como desahogo ? cada uno se divierte como quiere) hemos sacado la versión 1.0 (de hecho, eso fue hace dos semanas, porque hoy mismo ha salido la v1.1).

La principal novedad de esta nueva versión (la 1.1) es que permite sacar también un plugin para WordPress de forma que sea relativamente fácil introducir citas bibliográficas de obras que tenemos en nuestra instalación de BibCiter. Como ejemplos, mirad las referencias que aparecen en el final de esta página o de esta otra.

El funcionamiento es bastante sencillo y se basa en la aplicación para hacer shortcodes de la que también hablamos el otro día.

Pues nada, ¡a leer!, que para eso están las bibliografías.

Shortcodes fáciles en WordPress (II)

Después de hacer unas pruebas con los shortcodes de WordPress 2.5, añadimos a continuación alguna información al respecto que en la anterior entrada no habí­amos puesto. Notará el lector avanzado (en materias WordPresiles) que no le contaremos nada nuevo, mientras que el que va algo más perdido (como el que escribe) verá el cielo abrirse ante sus ojos (o no).

functions.php

En algún momento del espacio-tiempo, los desarrolladores de WordPress añadieron la posibilidad de crear un archivo functions.php en la carpeta de nuestro theme. Ese archivo no hace sino actuar como un plugin cualquiera para el tema que estemos utilizando en ese momento.

Shortcode API

¿Qué hace la Shortcode API de WordPress? Básicamente, crear un grupo de funciones que convierten lo que escribamos entre corchetes (el shortcode) en una función en PHP, cuyo fin, más que realizar una serie de complejas acciones, es transformar nuestra pequeña cadena de texto (los parámetros del shortcode) en una cadena mayor y, normalmente, más compleja.

Estas funciones pueden llamarse desde donde queramos, por ejemplo desde el archivo functions.php que tenemos en nuestro tema.

Generador de Shortcode para WordPress

El Generador de Shortcode para WordPress, después de pasar un ratillo con él, no es tan enrevesado:

  • Escribid en «Votre ShortCode» el nombre y pará¡metros que queráis utilizar. Por ejemplo: [wikipedia pagina="" texto=""]
  • Escribid en «Le motif» el código HTML en que queráis que se convierta vuestro shortcode. Por ejemplo: <a http://es.wikipedia.org/w/index.php?title=%pagina">%texto</a>. Como habréis adivinado, se trata de crear un shortcode para enlazar a la Wikipedia en español, donde «pagina» es la página a la que queremos apuntar en el enlace y «texto» el texto de nuestro enlace.
  • Le damos a «Génerer le code…»
  • Copiamos lo que nos aparecerá en la caja de la derecha, donde dice «Collez le contenu…» y lo pegamos en nuestro functions.php del tema donde queramos utilizarlo.
  • «Ajout de bouton» nos añade un botón a nuestro menú de «Escribir entrada»
  • «Dupliquer les fonctions» hay que activarlo solamente la primera vez que utilizamos este cacharrito (crea las funciones, así­ que con incluirlo una vez en nuestro functions.php bastará)
  • Y… c’est fini!

Shortcodes fáciles en WordPress

Marcar HTML no es difícil, pero tampoco es la cosa más sencilla ni eficiente del mundo. En muchas ocasiones uno echa de menos la posibilidad de utilizar macros: sería más fácil escribir [cita] ... [/cita], por ejemplo, que <blockquote> ... <blockquote>. Si lo que queremos escribir es un fragmento de HTML más largo, ni te cuento. Supongamos que uno quiere escribir lo siguiente:

<div class="teorema">
<span class="etiqueta">Teorema 2.14</span>
<span class="enunciado">Todo lo que pueda ir mal irá mal.</span>
</div>

y que lo podemos cambiar por [teorema orden=2.14]Todo lo que pueda ir mal irá mal.[/teorema]. Práctico, ¿no? Y seguro que no cuesta gran cosa pensar en aplicaciones en las que el ahorro de tiempo fuese aún mayor. Si se quiere usar WP como gestor de contenidos y los futuros autores no conocen HTML, va a ser más fácil enseñarles cuatro «shortcodes» que a marcar bien el HTML de sus aportaciones.

Pues bien, desde la versión 2.5 WordPress incluye la Shortcode API, precisamente para hacer eso. El problema es que definir nuevos «shortcodes» no es exactamente trivial. Descubro ahora (vía) un Générateur de Shortcode pour WordPress (más info, sí, en francés) que, sin llegar a hacer transparente el proceso, sí lo facilita lo suficiente como para que sea útil.

Que aproveche :-).

Dos o tres cosillas de WordPress 2.5

  • El panel de administración es mucho más bonito y, a la larga, probablemente sea más útil (en mi opinión, hay cosas que han mejorado, hay cosas que han empeorado). Pero hoy en Weblog Tools Collection publican un FAQ sobre WordPress 2.5 que parece más bien una lista de «a dónde han ido a parar todas esas cosas que nadie encuentra». No es buena señal, ni habla nada bien del estudio de usabilidad de los diseñadores (Happy Cog). Me huelo yo que la 2.6 va a dar muchos pasos atrás. He leí­do en algún sitio que el salto a la nueva versión recordaba al descalabro de Vista. No va a llegar a esos niveles, pero algo de razón hay en ello.
  • ¿Soy yo o la administración va más despacio? (Podrí­a ser yo y mi base de datos perfectamente, o el pésimo funcionamiento de Dreamhost estos dí­as.) En particular, la lentitud del motor de sugerencia de tags hace que sea absolutamente impráctico.
  • Otra cosa que me pasa. Y que me está sacando de quicio. Tengo el blog con codificación ISO-8859-1 (sí­, ya sé que la recomendada es UTF-8: cuando monté el blog (pronto hará cinco años de eso, que se dice pronto) no lo era; y en ausencia de herramientas automáticas para hacerlo, me da un palo tremendo). Con versiones anteriores, hasta que no guardaba la entrada por primera vez, WP asumí­a que estaba en UTF-8 y destrozaba caracteres acentuados y eñes al guardar los primeros ‘drafts’, con el resultado que en alguna ocasión me habí­a tocado recomponer un buen montón de texto. Parece ser que con WP 2.5 esto pasa hasta que publico. O sea que, en la práctica, no puedo guardar las entradas como borradores, porque si lo hago tengo que rehacer todo el texto (si alguien me informa que soy yo el que mete la pata con algo, estaré felicísimo de hacer el ridículo públicamente pero no tener que volver a pasar por esto).
  • Pero de todas formas, lo que más me sorprende (y aún no lo he visto comentado por ahí) es un cambio radical (y potencialmente muy práctico) en la tabla de entradas. Han aparecido unos campos (bueno, creo que han aparecido ahora) post-type y post-parent. Cuando subimos una imagen con la nueva «media gallery», esta se almacena en la tabla de entradas, con post-type attachment y post-parent la entrada a que corresponde. Eso va a disparar el número de registros de la tabla pero, a cambio, apunta posibilidades muy interesantes: podríamos, por ejemplo, tener URIs independientes para cada párrafo de una entrada, algo que, para un par de cosillas que tengo en mente, podría ser muy pero que muy útil… ¿Algún desarrollador en la sala que nos pueda ilustrar?

En fin. Bastantes detalles malos pero una (¿nueva?) característica muy interesante. Si me sale lo que tengo pensado, aún compensará y todo

PS Ya me contesto yo: lo de la tabla de entradas no es novedad…