[TYPO3-german] Extension - von mereren pi's genutze Funktionen auslagern

Stefan Frömken firma at sfroemken.de
Mon Jul 4 13:00:28 CEST 2011


Genau das Problem hatten wir bei unserer ke_search-Extension auch. Ich 
hab's in der Trunkversion bereits implementiert:
http://forge.typo3.org/projects/extension-ke_search/repository/entry/trunk/pi1/class.tx_kesearch_pi1.php

Ich hab ein lib-Objekt erstellt, dass von der piBase erbt und die 
piX-Plugins habe ich so umgestrickt, dass diese per "extends" von dem 
lib-Objekt erben. So habe ich von allen Plugins Zugriff auf alle 
pi-Funktionen und natürlich dem cObj.

Eine andere Möglichkeit wäre das lib-Object per makeInstance in jedem 
Plugin zur Verfügung zu stellen. Achte dabei darauf, dass Du $this 
diesem Objekt während der Instanziierung mitgibst und es in einer 
Variablen zu Verfügung stellst.
Innerhalb der lib-Objektes kannst du dann zum Beispiel mit 
$this->pObj->cObj->enableFields() auf die Funktionen im Elternobjekt 
zugreifen.

Auch dazu findest Du ein Beispiel in unserer ke_search-Trunk-Extension:
http://forge.typo3.org/projects/extension-ke_search/repository/entry/trunk/pi1/class.tx_kesearch_div.php

Stefan

Am 04.07.2011 12:43, schrieb Jan Kornblum:
> Hallo,
>
> eine Extension ist auf mehrere Plugins augfgeteilt, pi1, pi2, pi3, etc.
>
> Nun möchte ich ein paar "wiederkehrende" Funktionen auslagern in eine
> Datei, allerdings benötige ich in diesen Funktionen z.T. DB Zugriff,
> TCA, cObj->enableFields, etc..
>
> Wie macht man das am ordentlichsten?
>
> Die Funktionen einfach als "Funktionen" auslagern in eine Datei würde ja
> nicht klapen bzw. dann hätte man ja das oObj etc. nicht, oder?
>
> Wäre dankbar für eine Tip, Jan
>
>



More information about the TYPO3-german mailing list