Sprachvariable mit Wert aus $config['default_lang'] bekommen

In diesem Forum kann man Fragen zur Programmierung stellen, die bei der Entwicklung von Mods für phpBB 3.0.x oder dem Modifizieren des eigenen Forums auftauchen.
Forumsregeln
phpBB 3.0 hat das Ende seiner Lebenszeit überschritten
phpBB 3.0 wird nicht mehr aktiv unterstützt. Insbesondere werden - auch bei Sicherheitslücken - keine Patches mehr bereitgestellt. Der Einsatz von phpBB 3.0 erfolgt daher auf eigene Gefahr. Wir empfehlen einen Umstieg auf die neuste phpBB-Version, welches aktiv weiterentwickelt wird und für welches regelmäßig Updates zur Verfügung gestellt werden.
Benutzeravatar
LuLa
Mitglied
Beiträge: 290
Registriert: 14.02.2004 12:26

Sprachvariable mit Wert aus $config['default_lang'] bekommen

Beitrag von LuLa »

Mit

Code: Alles auswählen

$language = $user->lang['1_DAY'];
erhalte ich bei einem Benutzer, der als Sprache "English" eingestellt hat, die Zeichenkette '1 day'. Soweit klar.

Frage: wie bekomme ich, ohne die Sprache des Benutzers extra umzustellen, den Inhalt aus der deutschen common.php, nämlich '1 Tag'?'

Code: Alles auswählen

$config['default_lang']
wäre in diesem Fall 'de'. Hat jemand eine Idee?
Benutzeravatar
Miriam
Mitglied
Beiträge: 12310
Registriert: 13.10.2004 07:18
Kontaktdaten:

Re: Sprachvariable mit Wert aus $config['default_lang'] beko

Beitrag von Miriam »

Was genau möchtest Du mit dem Auslesen dieser de-Variablen erreichen?
Gruss, Miriam.
Ich schmeiß' alles hin und...
... lasse es liegen
Benutzeravatar
LuLa
Mitglied
Beiträge: 290
Registriert: 14.02.2004 12:26

Re: Sprachvariable mit Wert aus $config['default_lang'] beko

Beitrag von LuLa »

Miriam hat geschrieben:Was genau möchtest Du mit dem Auslesen dieser de-Variablen erreichen?
Ich möchte einige Sachen in der Standardsprache des Boards ausgeben, egal welche Sprache der Benutzer für sich eingestellt hat.
Benutzeravatar
Miriam
Mitglied
Beiträge: 12310
Registriert: 13.10.2004 07:18
Kontaktdaten:

Re: Sprachvariable mit Wert aus $config['default_lang'] beko

Beitrag von Miriam »

Du könntest es so machen:
  • baue eine Sprachdatei, die Du aus den Daten der nativen /de/common.php gewinnen kannst und die die Daten enthält, die Du in deutsch haben möchtest,
  • [benenne diese um] und packe sie in das Verzeichnis /language
  • pflege den Inhalt dieser neuen Datei in alle common.php der Sprachen ein, die diese Variablen benutzen sollen.
Beachte: KB:utf8bom
Leere ggf. den Cache im ACP.
Gruss, Miriam.
Ich schmeiß' alles hin und...
... lasse es liegen
Benutzeravatar
LuLa
Mitglied
Beiträge: 290
Registriert: 14.02.2004 12:26

Re: Sprachvariable mit Wert aus $config['default_lang'] beko

Beitrag von LuLa »

Miriam hat geschrieben:[*]pflege den Inhalt dieser neuen Datei in alle common.php der Sprachen ein, die diese Variablen benutzen sollen.
Danke für den Tipp, aber das möchte ich aus Redundanzgründen nicht so gerne tun. Gibt's da nicht eine elegantere Vorgehensweise?
Benutzeravatar
LuLa
Mitglied
Beiträge: 290
Registriert: 14.02.2004 12:26

Re: Sprachvariable mit Wert aus $config['default_lang'] beko

Beitrag von LuLa »

Danke!

Das ist mir aber etwas zu viel Gefummele. Ich werde es jetzt so machen:

In die neue Datei language/de/extra.php schreibe ich

Code: Alles auswählen

$lang = array_merge($lang, array(
	'1_DAY'			=> '1 Tag',
	'ETC'			=> 'Und so weiter...',
));
Später inkludiere ich diese Datei im Bedarfsfall mit

Code: Alles auswählen

include_once($phpbb_root_path . 'language/' . $config['default_lang'] . '/extra.' . $phpEx);
Benutzeravatar
Miriam
Mitglied
Beiträge: 12310
Registriert: 13.10.2004 07:18
Kontaktdaten:

Re: Sprachvariable mit Wert aus $config['default_lang'] beko

Beitrag von Miriam »

aber das möchte ich aus Redundanzgründen nicht so gerne tun
Sehr guter Einwand.

Frage aus Interesse:
  • Welche genauen Redundanzen (und die aus diesen resultierenden Gründe der Ablehnung) wären das?
Gruss, Miriam.
Ich schmeiß' alles hin und...
... lasse es liegen
Benutzeravatar
LuLa
Mitglied
Beiträge: 290
Registriert: 14.02.2004 12:26

Re: Sprachvariable mit Wert aus $config['default_lang'] beko

Beitrag von LuLa »

Miriam hat geschrieben:Frage aus Interesse:
  • Welche genauen Redundanzen (und die aus diesen resultierenden Gründe der Ablehnung) wären das?
Ich müßte eine Sprachvariable für jede installierte Sprache anlegen, selbst wenn diese Sprache im Bedarfsfall nicht benutzt werden würde, da ja ausschließlich die Boardsprache benutzt werden soll. Die Redundanz wäre also n-1, wobei n für die Anzahl der installierten Sprachen steht.
Benutzeravatar
Miriam
Mitglied
Beiträge: 12310
Registriert: 13.10.2004 07:18
Kontaktdaten:

Re: Sprachvariable mit Wert aus $config['default_lang'] beko

Beitrag von Miriam »

Dann hast Du die zugrunde liegende Idee und die von mir vorgestellte Umsetzung dieser nicht verstanden.
Es gibt genau eine zentrale Datei (in meinem Beispiel: /language/de_4_starters.php), die dann per include() in die jeweiligen Sprachen eingebunden wird.
Diese enthält die boardweit zu ersetzenden de-Sprachvariablen.

Aber Deine Lösung ist natürlich auch zielführend.
Gruss, Miriam.
Ich schmeiß' alles hin und...
... lasse es liegen
Antworten

Zurück zu „[3.0.x] Mod Bastelstube“