Hi nochmal,

> Kann mir jemand sagen wie ich "Inhalt" des Subparts auslese und in 
> Abhängigkeit zur Anzahl der verknüpften Adressdatensätze als Template 
> verwende um dort dann die u.a. gesetzten Marker gegen den korrekten 
> Inhalt auszutauschen.

Leider konnte ich keinen Weg finden das tt_news-Plugin mit der 
Einstellung "SINGLE" um eigene Subparts zu erweitern. Lediglich Marker 
können ersetzt werden, Subparts sind nicht vorgesehen in der Methode 
tt_news::displaySingle().

Ich denke lösen könnte man das ganze lediglich indem man einen neuen 
Hook in die tt_news::displaySingle() aufnimmt. Dieser müsste folgende 
Syntax IMHO haben:

// Hook for any additional form fields
if 
(is_array($GLOBALS['TYPO3_CONF_VARS']['EXTCONF']['tt_news']['additionalSubparts']))
 
{
foreach($GLOBALS['TYPO3_CONF_VARS']['EXTCONF']['tt_news']['additionalSubparts'] 
as $_classRef) {
$_procObj = & t3lib_div::getUserObj($_classRef);
$content = $_procObj->additionalSubparts($content, $this);
}
}

Einzubauen wäre das IMHO in die tt_news::displaySingle()-Methode in 
Zeile 586, nach der Rückgabe des Inhalts mit:

$content = $this->cObj->substituteMarkerArrayCached($item, $markerArray, 
array(), $wrappedSubpartArray);

Damit wäre eine saubere Möglichkeit gegeben über einen Hook beim Aufruf 
der tt_news::displaySingle()-Methode auch evtl. Subparts im Template zu 
ersetzen.

Die entsprechende Methode des Benutzers würde dann in etwa wie folgt 
aussehen:

function additionalSubparts($template, $thisObj) {
   $content = "";

   // 1. Auslesen des Subparts und speichern als Vorlage-HTML
   // 2. Auslesen der entsprechenden Datensätze aus der DB

   foreach (<Datensatz aus 2.>) {
     // 3. Kopie der Vorlage erstellen
     // 4. Marker innerhalb von Kopie durch DB-Daten ersetzen

     $content .= <HTML-Kopie aus 4.>
   }

   return $content;
}

Damit sollte es möglich sein eventuelle Subparts innerhalb eines 
SINGLE-Templates über einen Hook in der tt_news::displaySingle() zu 
verarbeiten. Oder gibt es eine andere Lösung?

Ansonsten würde ich gerne einen Eintrag in den Bugtracker vornehmen und 
gleich einen Patch an den Eintrag anhängen. Leider habe ich sowas noch 
nie gemacht und würde gerne wissen wie jetzt so ein Patch aussehen muss 
bzw. erstellt wird um bspw. oben genannten Hook in die tt_news einzufügen.

Da ich für dieses Projekt diese Funktionalität auf jeden Fall benötigte 
und nicht auf einen Fix des Eintrags warten kann, würde ich mir 
allerdings diesen Fix/Patch gerne einstweilen bereit legen um bei einer 
Aktualisierung der tt_news-Version schnell in der Lage zu sein den 
benötigten Hook wieder "einzuspielen" bis ein Fix der offiziellen 
Version verfügbar ist.

Ciao Markus
_______________________________________________
TYPO3-german mailing list
TYPO3-german@lists.netfielders.de
http://lists.netfielders.de/cgi-bin/mailman/listinfo/typo3-german

Antwort per Email an