Ausleihe von zuvor übersetzten Zeichenfolgen durch Child-Plugin

Gist: Kann die Erweiterung beim Schreiben einer Erweiterung eines Plugins die Übersetzungen des gewünschten Eltern-Plugins mit der eigenen Textdomäne “ausleihen”?

Szenario: Nehmen wir an, dass es ein Eltern-Plugin gibt, dessen Übersetzung aktuell ist und den WP-Standards in dieser Angelegenheit entspricht. Ich komme mit und schreibe ein Erweiterungs-Plugin.

Diese Erweiterung benötigt das Eltern-Plugin (es wird nicht ohne es installiert).

Nun sagen wir, dass es in meinem Plugin eine Zeichenfolge gibt, die in das Eltern-Plugin übersetzt wurde. Angenommen, die Strings sind absolut identisch (Groß- / Kleinschreibung, Alpha usw.), kann ich die Übersetzung dieser Zeichenfolge, die bereits von anderen übersetzt wurde, aus dem übergeordneten Plug-in ausleihen und sie in meiner Erweiterung verwenden, indem ich einfach die Textdomäne des übergeordneten Plugins verwende? wie _e (‘String’, ‘parentplugin’);

Was ich tun möchte, ist für mehrere Elemente, die identische, vorübersetzte Strings im Eltern-Plug-in haben, verwenden Sie die Übersetzungen des Eltern-Plug-Ins, um den Arbeitsaufwand zu reduzieren, der von Leuten benötigt wird, die mein Plugin übersetzen.

Solutions Collecting From Web of "Ausleihe von zuvor übersetzten Zeichenfolgen durch Child-Plugin"

Technisch ist das möglich. Stellen Sie sicher, dass Sie die Zeichenfolgen verwenden, nachdem das übergeordnete Plug-in seine Sprachdatei geladen hat.

Im Hinblick auf die Wartbarkeit ist dies nicht optimal. Sie erstellen hier eine sehr starke Abhängigkeit: Jedes Mal, wenn das Eltern-Plugin eine Zeichenkette ändert (Hinzufügen eines Punkts, Entfernen eines Leerzeichens), müssen Sie auch Ihre Zeichenketten ändern.

Ich würde dies nur tun, um viel Speicher zu sparen (1 MB oder mehr) und als ich wusste, dass der Entwickler für das Eltern-Plugin wirklich nützliche Commits erstellt . Andernfalls könnten Sie einige Änderungen verpassen.

Und Marko weist auf einen wichtigen Aspekt hin: Sie benötigen ein Tool für die Pot-Dateien, das diese Dateien basierend auf der Textdomäne erstellt, oder Sie würden nicht viel sparen. Codestyling-Lokalisierung kann das, aber es hat andere Probleme. Mir ist hier keine wirklich gute Lösung bekannt.

Related: Kann ich die plugin textdomain für in core verwendete Begriffe auslassen?

Ich leihe mir manchmal Strings aus WordPress und es ist in Ordnung, es zu tun. Das größte Problem, das ich sehe, ist, dass das Haupt-Plugin (WordPress in meinem Fall) die Zeichenfolge ändern kann und dann nicht mehr übersetzt wird.

Ein weiteres Problem besteht darin, dass beim Generieren einer Pot-Datei alle übersetzbaren Strings enthalten sind. Es sieht nicht aus, welche Textdomäne es verwendet. In meinem Fall habe ich makepot.php geändert, um Strings mit einer leeren Domain auszuschließen.