DAM Kategorien bei Einzelbildansicht der „ce_gallery“ Typo3 Extension
Das Digital Asset Management von Typo3 ist eine feine Sache, aber es gibt leider nicht so viele vielseitig nutzbare Frontend Plugins für die DAM Extension. Eine relativ einfache Extension zum Darstellen von Bildern in einer Galerie ist die „ce_gallery“. Aufgrund der Einfacheit eignet sie sich gut für „Quick and Dirty“ Lösungen – mit verbotenen hartcodiertem HTML und so.
Ein Beispiel: Um bei einem DAM Bild im Frontend alle zugehörigen DAM-Kategorien verlinkt auszugeben, kann man in der Datei class.tx_cegallery_pi1.php unter typo3conf/ext/ce_gallery/pi1/ eine kleine MySQL query direkt ins PHP reinschreiben, irgendwo in die Funktion „getDetail()“ so um zeile 555:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 |
# MySQL Query mit Subselect definieren # (DISTINCT bewirkt, dass jedes Resultat nur 1x vorkommt, also unique ist) # $resCats = $GLOBALS['TYPO3_DB']->exec_SELECTquery( 'DISTINCT tx_dam_cat.uid, tx_dam_cat.title', 'tx_dam_cat, tx_dam_mm_cat', 'tx_dam_cat.uid IN ( SELECT tx_dam_mm_cat.uid_foreign FROM tx_dam_mm_cat WHERE tx_dam_mm_cat.uid_local = ' . $detail . ')' ); # # ...dann die zurückgegebenen Kategorien in Links ausgeben: # $catlinks = ''; while ($catrow = $GLOBALS['TYPO3_DB']->sql_fetch_assoc($resCats)) { $catlinks .= '<a href="?id=123&tx_cegallery_pi1[album]='. $catrow['uid'] .'">'. $catrow['title'] .'</a>, '; } # # .. und zum output hinzufügen: # $photo .= '<p>Weitere Kategorien: '. $catlinks .'</p>'; |