tt news / fancybox

Captions dynamisch auslesen …

Wer Bilder innerhalb eines tt_news-Artikels mit dem jQuery Plugin Fancybox vergroßern will und zusätzlich im Backend gesetzte Bildunterschriften als Titel innerhalb der Lightbox ausgeben will muss folgende Zeilen in sein Setup schreiben:

plugin.tt_news {
	displaySingle {
		image {
			imageLinkWrap {
				enable = 1
				JSwindow >
				bodyTag >
				height >
				wrap >
				width >
				
					typolink {
						target = {$styles.content.links.target}
						extTarget = {$styles.content.links.extTarget}
						
						# Link mit Pfad und Name zum Originalbild oder
						# Pfad und Name des umgerechneten Lightbox Bild
						
						parameter.cObject = IMG_RESOURCE
						parameter.cObject.file.import.data = TSFE:lastImageInfo|origFile
						parameter.override.listNum.stdWrap.data = register : IMAGE_NUM_CURRENT
						
						# Maximale Größe des Bildes anpassen; (sonst wird Link zum orignal ausgegeben)
						
						parameter.cObject.file.maxW = {$styles.content.imgtext.linkWrap.width}
						parameter.override.listNum.stdWrap.data = register : IMAGE_NUM_CURRENT
						
						# Title bzw. Caption der Bilder auslesen und dem a-tag für die Lightbox übergeben
						
						title.field = imagecaption
						title.split.token.char = 10
						title.if.isTrue.field = imagecaption
						title.split.token.char = 10
						title.split.cObjNum = 1
						title.split.returnKey.data = register : IMAGE_NUM_CURRENT
						parameter.cObject = IMG_RESOURCE
						parameter.cObject.file.import.data = TSFE:lastImageInfo|origFile
						
						# rel-Attribut hinzufügen, für Galerie-Funktion
						
						ATagParams = class="lightbox"  rel="gallery"
						ATagParams.insertData = 1
						}
				}
		}
	}
}

Das freut den Programmier vorerst. Bei einem Blick auf die Seite stellt er jedoch fest, daß die kompletten Captions aller Bilder der Seite bei jedem Bild in der Lightbox ausgegeben werden.

Wir wollen aber nur die zum jeweiligen Bild passende Bildunterschirft als Titel in unserer Bildvergrößerung ausgeben …

Um dies zu lösen, muß man tt_news beibringen das jede einzelne Zeile einer Bildunterschrift, die wir im Backend angelegt haben genau zu einem Bild passt.

In der Datei class.tx_ttnews.php unter /html/typo3/typo3conf/ext/tt_news/pi muss in Zeile 2337 (tt_news v. 3.0.1) vor die Linie mit „$cc++;“ folgende Zeile platziert werden:

$GLOBALS['TSFE']->register['IMAGE_NUM_CURRENT'] = $cc+1;