[TYPO3-german] Typo3 7.6.5 userfunc funktioniert nicht
André Spindler
typo3 at andre-spindler.de
Fri Apr 22 08:18:09 CEST 2016
Hallo Manuel,
ich hatte gerade gestern auch genau dieses Problem. Sämtliche Caches
geleert, selbst über das Installtool.
Dann habe ich die Extension kurz deinstalliert und dann wieder
installiert. Dann ging der Aufruf.
Auch das schon ausprobiert?
Frage in die Runde:
Welchen Cache gibt es unter 7.6.5, der bei Änderungen an den
installierten Extensions neu aufgebaut wird, aber sonst durch keinerlei
Funktion erreichbar ist?
Lieben Gruß,
André
_____________________________________________________________________
André Spindler
Schmidstraße 21 - 85399 Hallbergmoos
Telefon: 0811/9986774 - andre at andre-spindler.de
Am 22.04.2016 um 04:48 schrieb Manuel Bachl:
> Hallo da draussen,
>
> vielleicht kann mir hier ja jemand weiterhelfen. Ich versuche über
> eine userfunc dem Body die zugewiesenen Kategorien (zumindest die
> Kategorien die Unterkategorien einer bestimmten Kategorie sind) als
> Klasse übergeben. Allerdings nicht alle Kategorien, sondern die
> hinterlegte Kategorie nur dann, wenn es nur eine Kategorie gibt,
> sollte "neutral" ausgegeben werden. Um es deutlicher zu formulieren
> möchte ich folgendes erreichen: Es gibt eine Kategorie "Schulzweige"
> unter dieser Kategorie sind vier weitere Kategorien eingeordnet.
> Sollte die Seite genau eine oder gar keine dieser vier Kategorien
> zugewiesen bekommen haben soll der Body die Klasse "neutral" bekommen.
> So weit bin ich aber noch gar nicht, hierbei benötige ich später noch
> Hilfe, daher erwähne ich es schon einmal.
>
> Mein aktuelles Problem:
>
> Ich habe anhand diverser Dokumentationen und Tutorials versucht die
> userfunc vie Taposcript aufzurufen. Nun scheint dies nicht zu
> funktionieren. selbst ein einfaches `die('test')` innerhalb der
> aufgerufenen funktion wird nicht ausgeführt. Daher vermute ich dass
> der Aufruf nicht funktioniert.
>
> mein Code:
>
>
> Typoscript:
> ```
> bodyTag >
> bodyTagCObject = USER
> bodyTagCObject {
> userFunc = Finndrop\FdsCommon\Util\BodyTagHelper->buildBodyTag
> fallbackClass = 'neutral'
> }
> ```
>
> BodyTagHelper.php:
> ```
> <?php
> namespace Finndrop\FdsCommon\Util;
>
> use TYPO3\CMS\Core\Utility\GeneralUtility;
> use TYPO3\CMS\Frontend\Category\Collection\CategoryCollection;
>
> class BodyTagHelper {
> /**
> * @var \TYPO3\CMS\Frontend\ContentObject\ContentObjectRenderer
> */
> public $cObj;
>
> /**
> * Generate body tag with categories as classes
> *
> * @param $conf array Configuration parameters
> * @return string
> */
> public function buildBodyTag($conf) {
>
> $query = $GLOBALS['TYPO3_DB']->SELECTquery(
> '*',
> 'sys_category',
> 'uid IN (' . intval($GLOBALS['TSFE']->id) . ')'
> );
>
> $bodyClass = '';
> $rows = $this->selectThem($query);
>
> if (count($rows) == 1) {
> foreach ($rows as $key => $row) {
> $bodyClass .= $row . ' ';
> }
> } else {
> $bodyClass = $conf['default'];
> }
>
> return '<body class="' . $bodyClass . '" id="page-' .
> $GLOBALS['TSFE']->id . '">'
> }
>
> /**
> * Select the pages categories
> *
> * @param $query string SQL query
> * @return array Array with pages categories
> */
> protected function selectThem($query) {
> $res = $GLOBALS['TYPO3_DB']->sql_query($query);
> $output = array();
> while ($row = $GLOBALS['TYPO3_DB']->sql_fetch_assoc($res)) {
> $output[] = $row['header'];
> }
> return $output;
> }
> }
> ```
>
> Die Datei BodyTagHelper.php liegt in einer Extension in `Classes/Util`
>
> Ich wäre wahnsinnig Happy wenn hier jemand weiterhelfen könnte.
>
> Danke schonmal und liebe Grüße
> Manuel Bachl
> _______________________________________________
> TYPO3-german mailing list
> TYPO3-german at lists.typo3.org
> http://lists.typo3.org/cgi-bin/mailman/listinfo/typo3-german
More information about the TYPO3-german
mailing list