Mehrfachausgabe bei WordPress Action verhindern

Die Version 2.9.2 des Multisite Language Switcher ist gerade online gegangen. Es gibt diesmal eine relativ lange Liste von Dingen, die ich abgearbeitet habe. Außerdem habe ich endlich ein lästiges Problemchen beseitigt.

Was hat sich geändert:

  • Fehlermeldungen von PHPStan abgearbeitet
  • PHPUnit auf Version 10 aktualisiert
  • Code Coverage für den Code des Plugins auf zirka 76 % erhöht
  • „Plugin Check Workflow“ als GitHub Action hinzugefügt und existierende Workflows verbessert
  • JavaScript Abhängigkeiten überarbeitet
  • Build Script verbessert
  • Sicherheitsmeldungen des Plugin Checkers abgearbeitet
  • Doppelte Ausgaben im Admin-Bereich verhindert

Der letzte Punkt war lästig und ich hatte eine Lösung in den vorherigen Versionen, die bestenfalls einen Hack darstellte. Die (vermutlich endgültige und sehr vereinfachte) Lösung, wenn man verhindern möchte, dass eine Funktion, die man einer WordPress Action hinzugefügt hat, mehrmals ausgeführt wird:

add_action( 'post_tag_add_form_fields', function ( $taxonomy ) {
    if ( did_action( 'my_custom_action_name' ) ) {
        return;
    }

    // your code here ...

    do_action( 'my_custom_action_name' );
} );

Ich gehe davon aus, dass nur Websites, in denen Yoast SEO läuft, die doppelte Ausgabe der Metaboxen des Multisite Language Switcher, im Editor der Taxonomien (Kategorien, Schlagwörter usw.) bemerkt haben.

Falls dem nicht so ist, freue ich mich über eure Rückmeldungen!

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert