"Send a friend" liest nur die aktuelle URL aus und gibt diese weiter, egal wie die Artikel-Id lautet.
Allerdings:
Im Template zu Artikel-Listen sollte der Ersetzer
{ARTICLEID} verfügbar sein, der die ID des jeweiligen Artikels liefert.
Im Template zum Artikel-Detail wird die Artikel-ID mit
{CURRENT_ARTICLEID} geliefert.
Also könnte man diese IDs in /frontend_render/ auslesen und entsprechend durch den Kommentar aus der DB ersetzen.
Z.B. in der Liste:
Code: Select all
// TEST Artikel-Listenmodus: Artikel-ID String auslesen und ersetzen
// <!--[%ARTICLE_LIST:{ARTICLEID}%]-->
// Nur wenn in Artikel-Listenansicht und zu ersetzender String vorhanden
if( ! ( empty($aktion[4]) AND strpos($content["all"],'<!--[%ARTICLE_LIST:') === false)) {
$article_id = array();
preg_match_all('/\<!--\[%ARTICLE_LIST:(\d+)%\]--\>/s', $content["all"], $article_id);
dumpVar($article_id);
// Nun anhand der IDs die DB abfragen und in einem zweiten Durchlauf jeweils
// <!--[%ARTICLE_LIST:XX%]--> esetzen
}
Und vielleicht so in Detail:
Code: Select all
// TEST Artikel-Detailmodus: Artikel mit Kommentar ist mit <!--ARTICLE_COMMENT--> versehen
// In der Haupt-Vorlage an der entsprechenden Stelle den Platzhalter: <!--%ARTICLE_COMMENT%--> setzen
// Nur wenn in Artikel-Detailansicht und Artikel als Kommentarartikel gekennzeichnet
if( !empty($aktion[4]) AND !( strpos($content["all"],'<!--ARTICLE_COMMENT-->') === false) ) {
// ......
// Den/die Kommentare aus der DB holen mit
$article_id = $aktion[4];
//.... DB-Abfrage
$result = 'Ergebnis aus DB';
$content["all"] = str_replace{'<!--%ARTICLE_COMMENT%-->', $result, $content["all"]);
}
{CURRENT_ARTICLEID} wird hier nicht verwendet, da in diesem Fall die Artikel-ID in $aktion[4] geliefert wird. ->
Systemvariablen
Knut