Ich habe eine extension, die mir ein kleines Menü anzeigt und entsprechend reagiert, je nach dem was gedrückt wird. Das Menü wird wie folgt erzeugt:
...
$this->piVars['size'] = 'base';
$content.='<ul><li>';
$content.= $this->pi_linkTP_keepPIvars('standard',$this->piVars,true);
$this->piVars['size'] = 'inc';
$content.='</li><li>';
$content.= $this->pi_linkTP_keepPIvars('groesser',$this->piVars,true);
$this->piVars['size'] = 'dec';
$content.='</li><li>';
$content.= $this->pi_linkTP_keepPIvars('kleiner',$this->piVars,true);
$content.='</li></ul>';
return $content;
...
Alles funktioniert auch wunderbar. Da alles zweisprachig vorhanden ist möchte ich, dass auch die 'standard', 'groesser' und 'kleiner' in der richtigen Sprache erscheinen. Ich dachte ich mach das wie an anderen Stellen auch über Constant Werte, also in der extension etwa:
$this->pi_linkTP_keepPIvars('{$font}',$this->piVars,true);
und im Constant Feld dann eben:
#### Deutsch ####
[globalVar = GP:L = 0]
font = kleiner
[global]
#### Englisch ####
[globalVar = GP:L = 3]
font = smaller
[global]
naja und das geht irgendwie nicht und ich komm auch nicht weiter.
So inzwischen bin ich klüger geworden. Vielleicht stolpert noch jemand über diesen Eintrag und kommt dadurch weiter.
In der Extension in der main muss stehen:
function main($content,$conf) {
$this->conf=$conf;
$this->pi_setPiVarDefaults();
// das ist gemeint
$this->pi_loadLL();
[...]
Im Ordner "pi1" der Extension eine locallang.php anlegen. Inhalt kann z.B. so aussehen:
<?php
$LOCAL_LANG = Array (
'default' => Array (
'pi_header' => 'Fontsize',
'pi_standard' => 'Normal',
'pi_groesser' => 'Bigger',
'pi_kleiner' => 'Smaller',
),
'de' => Array (
'pi_header' => 'Schriftgrösse',
'pi_standard' => 'Standard',
'pi_groesser' => 'Grösser',
'pi_kleiner' => 'Kleiner',
),
);
?>
Die Ausgabe in der main() ist dann z.B. so:
$content .= "<h3 class='subtitel'>".htmlspecialchars($this->pi_getLL("pi_header"))."</h3>";
$this->piVars['size'] = 'base';
$content .= '<ul><li>';
$content .=$this->pi_linkTP_keepPIvars(htmlspecialchars($this->pi_getLL("pi_standard")),$this->piVars,true);
$this->piVars['size'] = 'inc';
$content .= '</li><li>';
$content .= $this->pi_linkTP_keepPIvars(htmlspecialchars($this->pi_getLL("pi_groesser")),$this->piVars,true);
$this->piVars['size'] = 'dec';
$content .= '</li><li>';
$content .= $this->pi_linkTP_keepPIvars(htmlspecialchars($this->pi_getLL("pi_kleiner")),$this->piVars,true);
$content .= '</li></ul>';
return $content;