Eines

Eines de continguts per a WordPress

Tres eines pròpies per gestionar continguts a WordPress: importació XML, agendes i un gestor de marcadors.

Eines de continguts per a WordPress

Abans de dedicar-me a l’administració de sistemes vaig passar molt de temps publicant continguts per a clients, i una bona part d’aquella feina era repetitiva: copiar esdeveniments d’una web, enganxar-los al WordPress, tornar a posar la data, la categoria, la imatge. D’allà en van sortir tres eines que em van estalviar hores cada setmana.

De la web de l’ajuntament a l’XML

La primera peça és un extractor d’agendes. Diversos ajuntaments (Arenys de Mar, el Masnou, Premià de Mar) publiquen les seves agendes a la web, i jo les havia de recollir cada setmana. Vaig fer una aplicació amb Tkinter on cada municipi té el seu mòdul d’extracció i el seu fitxer de configuració en JSON: amb requests i BeautifulSoup baixa les agendes i les deixa en XML. Un panell de registres desplegable mostra què ha passat a cada extracció, cosa que arriba a ser més útil del que sembla quan una web canvia d’estructura.

De l’XML al WordPress

La segona eina agafa aquell XML i el publica directament al WordPress amb la seva API REST. El que em va donar més guerra van ser les dates: venien en text i en català, del tipus “del 15 de juliol”, i les vaig haver de mapar al format que espera el WordPress. També hi ha un pas de mapeig de camps i de categories, perquè cada font tenia les seves. El primer intent era un únic script monolític —encara el conservo al repositori amb el nom “proceso-archivo inicial sin modular.py”—; quan el vaig tornar a obrir mesos després, el vaig partir en mòduls: interfície, funcionalitats, mapeig de camps i mapeig de categories.

El gestor de marcadors

La tercera eina és l’única que viu dins del WordPress: un plugin, en un sol fitxer PHP, que crea un tipus de contingut “Bookmarks”. Hi enganxes una URL i el plugin n’extreu el títol, la descripció i el favicon —convertit a JPG per guardar-lo—, i genera el slug a partir del domini. Em servia per mantenir una biblioteca de referències sense dependre dels marcadors del navegador.

Què faria diferent avui

Afegiria proves des del primer dia: quan una web canvia el HTML, l’extractor se n’adona perquè no troba res, però no et diu on s’ha trencat exactament. I separaria la configuració de cada municipi encara més del codi, perquè a la pràctica era on tocava gairebé cada mes. Encara així, les tres eines van fer el que havien de fer: que el contingut arribés sol al WordPress.