[TYPO3-UG Rhein-Neckar] Bitte Hilfe.. php-Datei in Extension einbinden
Ralf Hettinger
ng at ralfhettinger.de
Mon Feb 19 19:22:47 CET 2007
Hallo Frank,
eine Klasse, die von tslib_pibase erbt, wird normalerweise durch ein cObject des
Typs USER aufgerufen. So, wie Du das vorhast, wird das meiner Meinung nach ohne
weiteres nicht funktionieren - bzw. es wird viel Arbeit nötig sein.
Eigentlich ist TYPO3 so konzipiert, dass Du immer index.php aufrufst und dann
die Ausgestaltung des Frontend Objekts (der entsprechenden Seite) durch
Parameter-Angabe steuern kannst.
Wenn Du dieses System tatsächlich "nachbauen" wolltest, wirst Du Dich wohl oder
übel durch den TYPO3-Core-Code hangeln müssen (angefangen bei der Funktion USER
in typo3/sysext/cms/tslib/class.tslib_content.php)
Du müsstest dann z.B. selbst ein Frontend Objekt (TSFE) initialisieren, das
wiederum ein cObject instanziiert... und irgendwann durch ein pagegen-Objekt
ausgegeben wird - zu empfehlen ist das aber imo nicht.
Hm. Ob das hilft?
Gruß Ralf
Explorasil schrieb:
> Ich habe mich jetzt durch sämtliche Foren gewühlt und stehe immernoch
> total auf dem Schlauch. Im Grunde scheint das eigentlich nicht
> kompliziert zu sein.
>
> Die gewünschte Situation:
>
> Ich habe eine Extension ( class.tx_atlantisbuchung_pi1.php). In der
> Extension rufe ich über einen Link eine
> andere PHP-Datei auf. In dieser PHP Datei möchte ich die
> Typo3-Standardfuntionen wie z.B. substituteMarkerArrayCached etc zur
> Verfügung haben. Es klappt einfach nicht :(
>
> Ich weiß nicht genau, ob ich die zweite PHP Datei nun als Klasse
> aufbauen muss, etc.
>
> Die zweite PHP-Datei habe ich nun so aufgebaut:
>
>
> <?php
>
> ...
>
> require_once(PATH_tslib . 'class.tslib_pibase.php');
>
> ...
>
> class tx_atlantisbuchung_tooltip extends tslib_pibase {
>
> function main($content, $conf)
> {
>
> $this->conf = $conf;
> $this->pi_setPiVarDefaults();
> $this->pi_loadLL();
>
> ...
>
> $content = '<HTML>...</HTML>';
>
>
> return $this->pi_wrapInBaseClass($content);
> }
> }
>
>
> ?>
>
> meine Extension produziert nun einen Link, der auf
> class.tx_atlantisbuchung_tooltip.php verweist. Klickt der Anwender
> drauf, passiert gar nichts...
> Schreibe ich allerdings ein 'echo '<HTML>...</HTML>'' hinter das
> '<?php', dann bekomme ich eine Ausgabe... die Datei wird also korrekt
> aufgerufen.
>
> Muss ich in class.tx_atlantisbuchung_tooltip.php irgendwas Anderes
> 'includen', damit ich die Typo3-Funktionen verwenden kann?
>
>
> Gruß,
>
> Frank
More information about the TYPO3-UG-rhein-neckar
mailing list