Übersetzung von Plugins

Gesperrt
csandro
Beiträge: 44
Registriert: Mo 30. Jan 2012, 02:25
Kontaktdaten:

Übersetzung von Plugins

Beitrag von csandro » Do 4. Jul 2013, 01:11

kurze Frage:

gibt es eine Möglichkeit, selbst geschriebene Plugins mit Contenido Bordmitteln
übersetzbar zu machen z.B. in Englisch bzw. gibt es eine Vorgehensweise um dies
im Plugin zu berrücksichtigen. Wenn ja, wie ermittelt man in welcher Sprache man
sich gerade befindet?


Vielen Dank!

Sandro

McHubi
Beiträge: 1209
Registriert: Do 18. Nov 2004, 23:06
Wohnort: Mettmann
Kontaktdaten:

Re: Übersetzung von Plugins

Beitrag von McHubi » Do 4. Jul 2013, 09:52

Hallo Sandro,

ich selbst habe bisher immer nur die deutsche Sprachdatei verwendet. Insofern ist das folgende lediglich eine Nennung der Ansatzpunkte die ich mir anschauen würde. Wäre schön, wenn Du Deine Erfahrungen hier später teilen würdest. In der "üblichen" Ordnerstruktur eines Plugins findest Du den Ordner "mein_plugin/locale/de_DE" und dort dann entsprechend die Texte/ Begriffe für die deutsche Übersetzung in der Datei "de_DE.inc.php":

Code: Alles auswählen

<?php
/**
 * German language definitions
 */

defined('CON_FRAMEWORK') or die('Illegal call');

global $lngCSDA;
...
$lngCSDA['open article in new window'] = 'Artikel in neuem Fenster &ouml;ffnen';
...
Andere Sprachen müssten entsprechend angelegt werden. Eingebunden werden diese Sprachdateien in der Datei "config.mein_plugin.php", die findest Du im Ordner "mein_plugin/includes":

Code: Alles auswählen

<?php
/**
 * Plugin mein_plugin initialization file.
 *
 * This file will be included by Contenido plugin loader routine, and the content
 * of this file ensures that the comments_sd_admin plugin will be initialized correctly.
 */

defined('CON_FRAMEWORK') or die('Illegal call');


// initialize client id
if (isset($GLOBALS['client']) && (int) $GLOBALS['client'] > 0) {
    $clientId = (int) $GLOBALS['client'];
} elseif (isset($GLOBALS['load_client']) && (int) $GLOBALS['load_client'] > 0) {
    $clientId = (int) $GLOBALS['load_client'];
} else {
    $clientId = '';
}

// load language file
$pluginDir  = $GLOBALS['cfg']['path']['contenido'] . $GLOBALS['cfg']['path']['plugins'] . 'mein_plugin/';
$pluginLang = ($GLOBALS['i18nLanguage'] == 'en_US') ? 'en_US' : 'de_DE';
if (is_file($pluginDir . 'locale/' . $pluginLang . '.inc.php')) {
    @include_once($pluginDir . 'locale/de_DE' . $pluginLang . '.inc.php');
} else {
    @include_once($pluginDir . 'locale/de_DE/de_DE.inc.php');
}
...
In den Plugin-Dateien (include.left_bottom.php, include.left_top.php, include.right_bottom.php, include.right_top.php) selbst wird der Sprachschnipsel dann per

Code: Alles auswählen

echo '<p>'.$lngTSD['open article in new window'].'</p>';
eingebunden.

Grüße,


Markus
seamless-design.de
"Geht nicht!" wohnt in der "Will nicht!"-Strasse.

Das Handbuch zur Version 4.10: CONTENIDO für Einsteiger (4.10)

Das Handbuch zur Version 4.9: CONTENIDO für Einsteiger (4.9)

csandro
Beiträge: 44
Registriert: Mo 30. Jan 2012, 02:25
Kontaktdaten:

Re: Übersetzung von Plugins

Beitrag von csandro » Do 4. Jul 2013, 10:46

Hallo,

ich danke dir und werde es bei gelegenheit Testen. Selbstverständlich werde
ich meine Erkenntnisse hier Posten.


Bis dann

Sandro

Gesperrt