[TYPO3-german] Headlines aus Extension heraus generieren

Tobias Bruns t.bruns at ogvit.de
Wed Mar 14 18:30:21 CET 2007


> ich möchte den Output meiner Extension mit Überschriften in verschiedene 
> Bereiche unterteilen.
> 
> Ich habe die verschiedenen Headline Layouts in meinem System per 
> Typoscript so konfiguriert, dass daraus grafische Headlines generiert 
> werden.
> 
> Jetzt möchte ich in meiner Extension mehrere Überschriften mit 
> verschiedenen Layouts generieren und dabei halt auf meine Headline 
> konfiguration zurückgreigen (also mit PHP Typo3 Headlines generieren). 
> Ich weiß das sowas irgendwie möglich ist. Ich finde gerade nur den 
> richtigen Ansatz nicht.

Habe gerade selbst eine Lösung gefunden.

Ich habe zuerst einmal folgendes in meinem TypoScript Setup der 
Extension definiert:

headline1 = COA
headline1.1 = IMG_RESOURCE
headline1.1 {
   file = GIFBUILDER
   file {
     XY = [10.w]+17,[10.h]
     10 = TEXT
     10 {
       text =
       text.case = upper
       fontFile = fileadmin/fonts/shortcut.ttf
       fontSize = 15
       fontColor = #000000
       offset = 17,13
       niceText = 1
     }
     20 = IMAGE
     20.file = fileadmin/img/nav_pfeil_black.gif
     20.offset = 0,1
   }
   stdWrap.wrap = <h1 style="background: url(|) no-repeat;">
}
headline1.2 = TEXT
headline1.2.current = 1
headline1.2.insertData = 1
headline1.2.wrap = |</h1> 	

headline2 < headline1
headline2.1.file.10.fontColor = #C9D300
headline2.1.file..20.file = fileadmin/img/nav_pfeil_green.gif

headline3 < headline1
headline3.1.stdWrap.wrap = <h2 style="background: url(|) no-repeat;">
headline3.1.file.10.fontSize = 11
headline3.1.file.10.fontColor = #E50067
headline3.1.file.10.offset = 0, 9
headline3.1.file.20 >
headline3.2.wrap = |</h2>


Mittels folgender Funktion kann ich dann in meiner Extension die 
grafischen Headlines generieren ohne selbst direkt mit ImageMagick 
und/oder GD Lib zu arbeiten.

function makeHeadline($text, $layout=1)	{
   $headerLayout = 'headline'.$layout;
   $this->conf[$headerLayout.'.']['1.']['file.']['10.']['text'] = $text;
   $headline = 
$this->cObj->cObjGetSingle($this->conf[$headerLayout],$this->conf[$headerLayout.'.']);
   return $headline;
}

Ich bin mir sicher das das noch viel einfacher geht aber im Moment bin 
ich erstmal glücklich damit.

Bin an Verbesserungsvorschlägen natürlich weiterhin interessiert.

Gruß,
Tobias




More information about the TYPO3-german mailing list