Met de plugin PlantUML Renderer van ontwikkelaar Todd Halfpenny is het mogelijk om met PlantUML gegenereerde schema’s weer te geven in WordPress. Echter, deze plugin is al een aantal jaren oud en lijkt abandonware te zijn. WordPress meldt:
Laatst geüpdatet op: 9 jaar geleden
Vereist WordPress versie: 3.0.1 of hoger
Compatible tot: 4.9.29
Op moment van schrijven was WordPress aangeland bij versie 7.02.
Toch uit nieuwsgierigheid geïnstalleerd en jawel, het eerste akkefietje diende zich aan. Bij de omzet van de Engelse namen Alice en Bob naar Spaanse varianten bleek de plugin de typisch Spaanse letters met accenten, alsook het omgekeerde uitroepteken en vraagteken niet goed weer te geven. Met de online editor van PlantUML gaat dit wel goed.
De ontwikkelaar Joe Van Steen zag de oorzaak en vond een oplossing. Hij suggereerde het volgende:
utf8_encode is deprecated in PHP8.2 and as I understand it, will be removed in PHP 9. It is used on one line (122) in class-plantuml-renderer-public.php.
Ik leid uit bovenstaande af dat wanneer je bij de hoster de PHP-versie terugzet naar een oudere versie, bijv. PHP 7, de plugin de Spaanse schrijfwijze wel juist weergeeft. Maar die test bewaren we voor een andere keer.
WordPress texturizing
Een andere functie die PlantURL Renderer parten speelt, is texturizing, de methode waarmee WordPress sommige tekens automatisch aanpast. In de Nederlandse versie van dit artikel was er niets aan de hand, maar in de Spaanse versie werden "Alicia Gómez" en "Paco Sánchez" in de code van de plugin door WordPress automatisch veranderd in «Alicia Gómez» en «Paco Sánchez», een voor het Spaans correcte schrijfwijze (al zijn er veel Spaanstaligen die bij gebrek aan de juiste toetsen op hun toetsenborden ook de dubbele aanhalingstekens gebruiken), maar die in de code van PlantUML foutmeldingen opleveren, omdat « en » daarin geen functionele betekenis hebben en derhalve niet de gewenste schema's opleveren.
De verleiding werd groot om de functie texturizing uit te schakelen in WordPress, maar dit leek mij niet de juiste methode wegens schieten op een mug met een kanon. Gelukkig wist Simon Gloor raad, omdat hij iets vergelijkbaars ondervond met de Duitse schrijfwijze. Ik heb zijn oplossing aangepast naar mijn akkefietje met het Spaans en de volgende regels toegevoegd aan het bestand class-plantuml-renderer-public.php:
$new_content = str_replace( '«','"',$new_content ); // comilla latina de apertura
$new_content = str_replace( '»','"',$new_content ); // comilla latina de cierre
Daarmee is de plugin PlantURL Renderer ook in versie 7.02 van WordPress bruikbaar geworden. Onder voorbehoud, want misschien komen er op termijn nog andere dingen aan het licht.
N.B. Ik heb ook van de gelegenheid gebruikgemaakt om alle http:// te vervangen door https://.