Mittwald CM Service: TYPO3-Hosting, TYPO3-Schulungen, Agenturpakete, Managed-Server
Optimiertes TYPO3 Hosting von Mittwald CM Service

TypoScript ($this->conf) parsen? wurde Beantwortet

Autor Nachricht
Verfasst am: 30.06.2009 [10:01]
fuzz

[Themenersteller]
dabei seit: 10.04.2006
Beiträge: 154

Hallo,

ich bastel mir gerade eine kleine Extension die unter anderem Werte und so weiter über TypoScript erhält. Leider bekomme ich aber nur das normale TypoScript Array und nicht das Ergebnis in die Extension geliefert in $this->conf.

Wie kann ich das parsen und auf das Ergebnis zugreifen?

Danke schonmal...
Verfasst am: 30.06.2009 [10:45]
yahooooo

dabei seit: 21.03.2006
Beiträge: 232

Ich verstehe gerade noch nicht so ganz, was Du genau vorhast. Reicht Dir der Standardaufruf der main-Funktion nicht?

Php:Zeilennummerierung:  An / Aus

  1. function main($content, $conf) {
  2.                 $this->conf = $conf;
  3. // ...
  4. }


Willst Du vielleicht auf alle TypoScript-Werte zugreifen?

Hilfe...Bitte rettet mich aus diesem Laden!
Verfasst am: 30.06.2009 [10:48]
fuzz

[Themenersteller]
dabei seit: 10.04.2006
Beiträge: 154

Nein leider nicht... Beispiel ich habe folgendes TS

Typoscript:Zeilennummerierung:  An / Aus

  1. plugin.tx_meineextension_pi1 {
  2.     dynMarkers {
  3.         markerOne = TEXT
  4.         markerOne.value = bla
  5.  
  6.         markerTwo = COA
  7.         markerTwo {
  8.             10 = TEXT
  9.             10.value = blub
  10.  
  11.             20 = TEXT
  12.             20.data = page:title
  13.         }
  14.     }
  15. }


Wenn ich jetzt $this->conf['dynMarkers.']['markerTwo.']['20.']['data'] ausgeben will, erhalten ich nur page:title anstatt den richtigen Seitentitel. Es geht also nicht durch den parser.
Verfasst am: 30.06.2009 [10:52]
Julian.Hofmann

dabei seit: 18.05.2007
Beiträge: 1178

Hallo.
fuzz schrieb:
Leider bekomme ich aber nur das normale TypoScript Array und nicht das Ergebnis in die Extension geliefert in $this->conf.
Nicht "leider", sondern "zum Glück". Typoscript ist ja "nur" eine Art, wie Konfigurationswerte dargestellt werden. Die Verarbeitung dieser Wert muss dann erst angestoßen werden - durch TYPO3 selbst im vordefinierten Rahmen oder durch Dich bei eigenen Extensions.


fuzz schrieb:
Wie kann ich das parsen und auf das Ergebnis zugreifen?

Das kommt sehr drauf an, was Du an TS für die Extension konfigurierst bzw. was gemacht werden soll. Ein guter Einstiegspunkt dürfte die Klasse tslib_cObj sein.

Viele Grüße
Julian
Verfasst am: 30.06.2009 [11:01]
fuzz

[Themenersteller]
dabei seit: 10.04.2006
Beiträge: 154

Danke mit cObjGetSingle(...) funktioniert es wie ich es brauche.

Allerdings habe ich in dem Zuge noch ein kleines Problem oder Denkfehler... Ich möchte per TypoScript jetzt sagen:

Typoscript:Zeilennummerierung:  An / Aus

  1. plugin.tx_meineextension_pi1 {
  2.           dynMarkers {
  3.               markerTwo = COA
  4.               markerTwo {
  5.                   10 = TEXT
  6.                   10.field = ext_dbField_name
  7.               }
  8.           }
  9.       }


Sprich auf den aktuellen Datensatz zugreifen der Datenbank. Da kommt leider nichts bei raus. Die Frage ist jetzt wie kann ich Typo3 sagen, welche Tabelle in der DB ich meine und zu welchem Datensatz ich das Feld (Spalte) jetzt ausgegeben haben möchte?
Verfasst am: 30.06.2009 [11:06]
fuzz

[Themenersteller]
dabei seit: 10.04.2006
Beiträge: 154

Hat sich erledigt...

Man muss bei jedem Row dem cObj sagen wo man sich befindet, dann funktioniert es auch mit TypoScript:

$this->cObj->start($curRow,'myTable');
Verfasst am: 30.06.2009 [11:06]
Julian.Hofmann

dabei seit: 18.05.2007
Beiträge: 1178

An dieser Stelle weiß die TYPO3-API noch ziemlich gar nix über Deine Extension. Wo steht denn das DB-Feld? Für DB-Abfragen via TS verweise ich mal auf die TSref http://www.typo3.net/tsref/functions/select/




 
TYPO3 Hosting in der Version 4.3.2 kostenlos bei Mittwald CM Service testen

TYPO3 4.3.2 jetzt testen

Testen Sie die neue TYPO3 Version 4.3.2 kostenlos für einen Monat


Entwicklerschulungen

  • Espelkamp:
    Mit., 17.03.10 - Fre., 19.03.10
  • Berlin:
    Mit., 21.04.10 - Fre., 23.04.10
  • Köln:
    Mon., 21.06.10 - Mit., 23.06.10