Hallo,
ah ok mein Fehler ;-)
Es gibt eine Art Hook in tt_news für den Fall. Und zwar in der Funktion getImageMarkers
if ($this->conf['imageMarkerFunc']) {
$markerArray = $this->userProcess('imageMarkerFunc', array($markerArray, $lConf));
} else {
$imageNum = isset($lConf['imageCount']) ? $lConf['imageCount']:1;
$imageNum = t3lib_div::intInRange($imageNum, 0, 100);
$theImgCode = '';
...
...
Du kannst also im TS deine eigene Funktion angeben, welche die Image-Marker füllt.
Beispiel dazu findest Du unter ext/tt_news/res/example_imageMarkerFunc.php
Die Funktion könnte in etwa so aussehen:
function user_imageMarkerFunc($paramArray,$conf){
$markerArray = $paramArray[0];
$lConf = $paramArray[1];
$pObj = &$conf['parentObj']; // make a reference to the parent-object
$row = $pObj->local_cObj->data;
$imageNum = isset($lConf['imageCount']) ? $lConf['imageCount']:1;
$imageNum = t3lib_div::intInRange($imageNum, 0, 100);
$theImgCode = '';
$imgs = t3lib_div::trimExplode(',', $row['image'], 1);
////////////////////////////////////////////////////////////////
// hier werden die Arrays gesetzt. Da Du ja nur einen Titel hast
// der ja für jedes Bild (falls vorhanden) benutzt werden soll
// können die Arrays ja wegfallen und wir setzen den Titel
// direkt weiter unten
////////////////////////////////////////////////////////////////
//$imgsCaptions = explode(chr(10), $row['imagecaption']);
//$imgsAltTexts = explode(chr(10), $row['imagealttext']);
//$imgsTitleTexts = explode(chr(10), $row['imagetitletext']);
reset($imgs);
$cc = 0;
// remove first img from the image array in single view if the TSvar firstImageIsPreview is set
if (count($imgs) > 1 && $pObj->config['firstImageIsPreview'] && $textRenderObj == 'displaySingle') {
array_shift($imgs);
//array_shift($imgsCaptions);
//array_shift($imgsAltTexts);
//array_shift($imgsTitleTexts);
}
// get img array parts for single view pages
if ($pObj->piVars[$pObj->config['singleViewPointerName']]) {
$spage = $pObj->piVars[$pObj->config['singleViewPointerName']];
$astart = $imageNum*$spage;
$imgs = array_slice($imgs,$astart,$imageNum);
// $imgsCaptions = array_slice($imgsCaptions,$astart,$imageNum);
// $imgsAltTexts = array_slice($imgsAltTexts,$astart,$imageNum);
// $imgsTitleTexts = array_slice($imgsTitleTexts,$astart,$imageNum);
}
while (list(, $val) = each($imgs)) {
if ($cc == $imageNum) break;
if ($val) {
$lConf['image.']['altText'] = $row['title']; // evtl. noch Wrap oder Kodierung hinzufügen
$lConf['image.']['titleText'] = $row['title']; // evtl noch Wrap oder Kodierung hinzufügen
$lConf['image.']['file'] = 'uploads/pics/' . $val;
}
$theImgCode .= $pObj->local_cObj->IMAGE($lConf['image.']) . $pObj->local_cObj->stdWrap($row['title'], $lConf['caption_stdWrap.']); // evtl Wrap ändern
$cc++;
}
$markerArray['###NEWS_IMAGE###'] = '';
if ($cc) {
$markerArray['###NEWS_IMAGE###'] = $pObj->local_cObj->wrap(trim($theImgCode), $lConf['imageWrapIfAny']);
} else {
$markerArray['###NEWS_IMAGE###'] = $pObj->local_cObj->stdWrap($markerArray['###NEWS_IMAGE###'],$lConf['image.']['noImage_stdWrap.']);
}
return $markerArray;
}
Ich hab die jetzt nur mal eben q&d umgeschrieben. Probier es doch einfach mal aus. Aber als Beispiel sollt es ausreichen.
Ansonsten müsstest Du selber mal schauen und Dich an die Beispiele in der Datei von tt_news halten. Oder vieleicht findest Du zum Stichwort "imageMarkerFunc" weitere Infos.
Grüße!