Dann fasse ich das mal zusammen, weil das aktuell die einzige Quelle ist, die 
über Google erreichbar ist. 

Userfuncs müssen ab TYPO3 7.4 folgendermaßen eingebunden werden: 

page.20 = USER_INT
page.20 {
  userFunc = user_printTime
  includeLibs = fileadmin/example_time.php
}

——

Empfohlen wird aber, die benötigten Klassen über eine Extension einzubinden und 
das Autoload-Verhalten mit Namepaces auszunutzen. Dafür ist minimal nötig 
(Beispiel): 

ein Ordner in typo3conf/ext/ mit diesem Inhalt: 

typo3conf/ext/myincludes
typo3conf/ext/myincludes/Classes/
typo3conf/ext/myincludes/Classes/Example.php
typo3conf/ext/myincludes/ext_emconf.php
typo3conf/ext/myincludes/ext_icon.gif

Der Inhalt der ext_emconf.php: 

<?php

$EM_CONF[$_EXTKEY] = array(
        'title' => 'Include all my Classes',
        'description' => 'Einbinden der Klassen für userFunc',
        'category' => 'fe',
        'author' => 'my Name',
        'author_email' => 'my Email',
        'state' => 'alpha',
        'author_company' => 'my Compnany',
        'version' => '0.0.1',
        'constraints' => array(
                'depends' => array(
                ),
                'conflicts' => array(
                ),
                'suggests' => array(
                ),
        ),
);

?>

Der Inhalt der Example.php: 

<?php 
namespace Myvendor\Myincludes;
class Example {
        public function myExampleFunction($content, $conf) {
            return '<p style="color: red;">Dynamic time: ' . date('H:i:s') . 
'</p><br />';
        }
}

und der Aufruf im TS: 

page.30 = USER_INT
page.30 {
  userFunc = Myvendor\Myincludes\Example->myExampleFunction
}

Für die Schreibweisen der Namespaces: 
https://docs.typo3.org/typo3cms/CoreApiReference/ApiOverview/Namespaces/Index.html#namespaces

Die Namespaces haben mir noch Probleme bereitet ... Ausserdem muss man beim 
Testen die Extension nach Änderungen de- und wieder installieren oder im 
Installtool den Cache löschen. Normales Cache löschen hat manchmal nicht 
ausgereicht. 

Finde ich schon aufwändiger, aber auch aufgeräumter, da in einer Extension. Der 
Vorteil kommt wohl vor allem zum Tragen, wenn man mehrere Userfuncs einbinden 
muss. Neue Datei in Classes und fertig … Und an die Namespaces werde ich mich 
auch noch gewöhnen :-)

OK, ich finde die Diskussion hat sich rentiert, für mich zumindest. Herzlichen 
Dank Helmut!

Peter


--
Xing: http://www.xing.com/profile/Peter_Linzenkirchner
Web: http://www.typo3-lisardo.de
Facebook: http://tinyurl.com/lisardo-multimedia

_______________________________________________
TYPO3-german mailing list
TYPO3-german@lists.typo3.org
http://lists.typo3.org/cgi-bin/mailman/listinfo/typo3-german

Antwort per Email an