Deine Antwort hat mich auf etwas gebracht, danke.
Ich habe versucht den Code an falscher Stelle (kann ja nicht Daten manipulieren die das Object nicht hat) zu erweitern .
Das hier in ModuleTaggedArticleList.php:
PHP-Code:
if ($this->show_in_column)
{
$objArticles = $this->Database->prepare("SELECT id, pid, title, alias, inColumn, cssID, teaser, start FROM tl_article WHERE inColumn = ? AND pid IN (" . $pids . ") " . (!BE_USER_LOGGED_IN ? " AND (start='' OR start<?) AND (stop='' OR stop>?) AND published=1" : "") . $order_by)
->execute($this->inColumn, $time, $time);
}
else
{
$objArticles = $this->Database->prepare("SELECT id, pid, title, alias, inColumn, cssID, teaser, start FROM tl_article WHERE pid IN (" . $pids . ") " . (!BE_USER_LOGGED_IN ? " AND (start='' OR start<?) AND (stop='' OR stop>?) AND published=1" : "") . $order_by)
->execute($time, $time);
}
if ($objArticles->numRows < 1)
{
return;
}
global $objPage;
$format = $objPage->outputFormat;
if (!empty($format))
{
$this->import('String');
}
while ($objArticles->next())
{
/* This code seems to be a useless "left over copy/paste" from an old version of system/modules/frontend/ModuleArticleList.php
// Skip first article
if (++$intCount == 1 && $this->skipFirst)
{
continue;
}
*/
$objArticles->cssID = deserialize($objArticles->cssID, true);
// ??? $alias = strlen($objArticles->alias) ? $objArticles->alias : $objArticles->title;
$objArticles->startDate = (intval($objArticles->start) > 0) ? $this->parseDate($GLOBALS['TL_CONFIG']['datimFormat'], intval($objArticles->start)) : '';
$objArticles->teaser = $this->replaceInsertTags($objArticles->teaser);
if (!empty($format))
{
if ($format == 'xhtml')
{
$objArticles->teaser = $this->String->toXhtml($objArticles->teaser);
}
else
{
$objArticles->teaser = $this->String->toHtml5($objArticles->teaser);
}
}
array_push($this->arrArticles, $objArticles->row());
}
muss in:
PHP-Code:
if ($this->show_in_column)
{
// $objArticles = $this->Database->prepare("SELECT id, pid, title, alias, inColumn, cssID, teaser, start FROM tl_article WHERE inColumn = ? AND pid IN (" . $pids . ") " . (!BE_USER_LOGGED_IN ? " AND (start='' OR start<?) AND (stop='' OR stop>?) AND published=1" : "") . $order_by)
// ->execute($this->inColumn, $time, $time);
$objArticles = $this->Database->prepare("SELECT id, pid, title, alias, inColumn, cssID, teaser, teaserCssID, start, addImage, singleSRC, linkedimage, imageUrl FROM tl_article WHERE inColumn = ? AND pid IN (" . $pids . ") " . (!BE_USER_LOGGED_IN ? " AND (start='' OR start<?) AND (stop='' OR stop>?) AND published=1" : "") . $order_by)
->execute($this->inColumn, $time, $time);
}
else
{
// $objArticles = $this->Database->prepare("SELECT id, pid, title, alias, inColumn, cssID, teaser, start FROM tl_article WHERE pid IN (" . $pids . ") " . (!BE_USER_LOGGED_IN ? " AND (start='' OR start<?) AND (stop='' OR stop>?) AND published=1" : "") . $order_by)
// ->execute($time, $time);
$objArticles = $this->Database->prepare("SELECT id, pid, title, alias, inColumn, cssID, teaser, teaserCssID, start, addImage, singleSRC, linkedimage, imageUrl FROM tl_article WHERE pid IN (" . $pids . ") " . (!BE_USER_LOGGED_IN ? " AND (start='' OR start<?) AND (stop='' OR stop>?) AND published=1" : "") . $order_by)->execute($time, $time);
}
if ($objArticles->numRows < 1)
{
return;
}
global $objPage;
$format = $objPage->outputFormat;
if (!empty($format))
{
$this->import('String');
}
while ($objArticles->next())
{
/* This code seems to be a useless "left over copy/paste" from an old version of system/modules/frontend/ModuleArticleList.php
// Skip first article
if (++$intCount == 1 && $this->skipFirst)
{
continue;
}
*/
$objArticles->cssID = deserialize($objArticles->cssID, true);
$objArticles->teaserCssID = deserialize($objArticles->teaserCssID, true);
$objhelp = \FilesModel::findByPk($objArticles->singleSRC);
$objArticles->singleSRC= $objhelp->path;
// ??? $alias = strlen($objArticles->alias) ? $objArticles->alias : $objArticles->title;
$objArticles->startDate = (intval($objArticles->start) > 0) ? $this->parseDate($GLOBALS['TL_CONFIG']['datimFormat'], intval($objArticles->start)) : '';
$objArticles->teaser = $this->replaceInsertTags($objArticles->teaser);
if (!empty($format))
{
if ($format == 'xhtml')
{
$objArticles->teaser = $this->String->toXhtml($objArticles->teaser);
}
else
{
$objArticles->teaser = $this->String->toHtml5($objArticles->teaser);
}
}
array_push($this->arrArticles, $objArticles->row());
}
geändert werden.
zu beachten: würde nur funktionieren wenn die im ersten Post angeführten Erweiterungen installiert sind.
Ich schau mal ob ich den Code so erweitern kann das eine Abfrage gemacht wird ob die Erweiterungen installiert sind.
Lesezeichen