Gagner du temps
Une opération fastidieuse dans l’écriture de ce blog est d’insérer des images en fin d’article. Mon approche est de faire une version réduite (de taille standardisée), qui est insérée dans le post, puis de mettre un lien hypertexte vers l’image grand format. Ceci nécessite :
- De générer la miniature (voire même une première version de taille “moyenne” pour mes propres photographies)
- D’uploader tout ça sur le blog
- D’écrire le code html affichant le tout
Les deux premières étapes ne sont pas entièrement triviales étant donnée ma configuration plus ou moins alambiquée. Néanmoins je compte y remédier à court terme par quelques scripts shells bien sentis. La dernière étape quant à elle m’apparaissait frustrante, car je pensais qu’elle pouvait être automatisée par un peu de PHP.
La difficulté avec cette approche est que du code PHP inséré dans un post n’est pas exécuté ensuite. En cherchant un peu j’ai trouvé un plugin permettant ce type de programmation appelé RunPhp. En convertissant mes anciens posts (à la main malheureusement), j’ai toutefois rencontré un bug : des apostrophes étaient transformées en apostrophes obliques par Wordpress, ce qui créait du PHP invalide. Des recherches supplémentaires m’ont mené vers une version plus à jour ; mis à part une syntaxe différente, elle semble remplir pleinement son office. De plus, elle fonctionne à un autre niveau et me semble plus rapide.
Il restait alors à écrire une fonction php générant le code html que j’utilise, et de la rendre accessible en PHP. Pour cela, je l’ai placée dans un plugin, et j’ai activé celui-ci. Le code (très simple) de la fonction est disponible ici
Insérer une image dans un post se réduit maintenant à taper la ligne suivante :
<?php image('image','Description'); ?>
, ce qui est nettement plus efficace que les opérations que je devais effectuer avant.