Benutzer-Werkzeuge

Webseiten-Werkzeuge


edv:typo3_mehrere_sprachdateien

typo3 mehrere sprachdateien

Im PHP-Code der eigenen Extension:

<?PHP
	/**
	 * locallang-hook. sucht in diversen locallang-Dateien nach dem Begriff, 
	 * gibt alt oder sich selber zurueck.
	 *
	 * @param	string		$k: key for locallang
	 * @param	string		$alt: The PlugIn configuration
	 * @return	The translated content of $k
	 */
	function pi_getLL( $k , $alt='' , $hsc=true ) {
		$shortnameArr = explode('.',$k);
		$shrtNam = array_slice($shortnameArr , 1);
		if(count($shortnameArr)>=2){
			$retval=parent::pi_getLL( implode('.',$shrtNam) ,'',$hsc);
		}else{
			$retval=parent::pi_getLL( $k ,'',$hsc);
		}
		if (!$retval) {
			$retval = $GLOBALS['TSFE']->sL('LLL:EXT:dr_bplbase/locallang_db.xml:'.$k);
		}
		if (!$retval) $retval=$alt;
		if (!$retval) $retval=$k;
		return $retval;
	}
?>

Oder global, in eine eigene Datei, zB. class.dr_bpledit_pibase.php:
Die eigene Extension-Klasse dann aus dieser Datei vererben.
Anstelle von require_once(PATH_tslib.'class.tslib_pibase.php'); also require_once('class.dr_bpledit_pibase.php');

<?PHP

require_once(PATH_tslib.'class.tslib_pibase.php');

abstract class dr_bpledit_pibase extends tslib_pibase {
	private $globalLocallangLoaded = false;
	function pi_loadLL() {
		parent::pi_loadLL();
		if (!$this->globalLocallangLoaded) {
			$basePath = t3lib_extMgm::extPath('dr_bplbase').'locallang_db.xml';
			$tempLOCAL_LANG = t3lib_div::readLLfile($basePath, $this->LLkey);
			//array_merge with new array first, so a value in locallang (or typoscript) can overwrite values from locallang_db.xml
			$this->LOCAL_LANG = array_merge_recursive($tempLOCAL_LANG, is_array($this->LOCAL_LANG) ? $this->LOCAL_LANG : array());
			if ($this->altLLkey)   
			{
				$tempLOCAL_LANG = t3lib_div::readLLfile($basePath, $this->altLLkey);
				$this->LOCAL_LANG = array_merge_recursive($tempLOCAL_LANG, is_array($this->LOCAL_LANG) ? $this->LOCAL_LANG : array());
			}
			$this->globalLocallangLoaded = true;
		}   
	}
}

?>

Diskussion

Geben Sie Ihren Kommentar ein. Wiki-Syntax ist zugelassen:
 
edv/typo3_mehrere_sprachdateien.txt · Zuletzt geändert: 26.01.2018 20:39 (Externe Bearbeitung)