Ich habe schon in Unmengen von Themen, Dokus und anderen Erweiterungen nach einer Lösung gesucht, aber nichts wirklich brauchbares und sauber funktionierendes gefunden. Darum versuche ich es mal hier.
Es geht darum, Sprachvariablen bei Bedarf verändern (ergänzen) zu können. Dabei geht es sowohl um offizielle phpBB Variablen als auch um eigene. Bei den phpBB Variablen ginge es um die folgenden:
USER_DELETED
USER_DELETE_SUCCESS
Ich habe dafür momentan eine zwar funktionierende Methode, aber die scheint nicht ganz unproblematisch zu sein. Denn wenn ich diese Methode andernorts einsetzen will, kann das zur Folge haben, das andere Sprachvariablen in diesem Kontext plötzlich nicht mehr vorhanden sind und phpBB etliche Fehlermeldungen ausgibt, von wegen "Undefined index: {sprachvariable}". Der Grund dafür ist mir völlig schleierhaft. Hier der problematische Code, reduziert auf die relevanten Teile. Gesehen habe ich das in einer anderen Erweiterung, dort natürlich mit einer anderen Variable und mit einer anderen phpBB Meldung.
Code: Alles auswählen
$lang = $this->user->lang;
$lang['USER_DELETED'] .= '<br><br>' . $this->user->lang[$text];
$this->user->lang = $lang;
Und bei meinen eigenen Variablen nutze ich momentan als Workaround zusätzlichen Code direkt in der Sprachdatei. Ich habe dann in meinem Archiv nachgeforscht und festgestellt, das auch andere das so machen. Ich persönlich betrachte es als suboptimal in einer Sprachdatei zusätzlichen Code einzubauen. Auch das würde ich gerne vermeiden, wenn es ginge.