Hallo an alle,
auch wenn ich schon lange mit Contao arbeite, aber jetzt bin ich mit meinem Latein am Ende und brauche eure Hilfe bzw. einen Tipp.
Ich möchte meine News nach Archiv und News Categories (codefog/contao-news_categories) dynamisch filtern. Für die AJAX Thematik nutze ich richardhj/contao-ajax_reload_element, das klappt auch sehr gut.
Allerdings scheitere ich einfach an der Kombination aus Archiven und Rubriken.
Mit den news_categories wird schon eine 2. Tabelle (tl_news_categories) erzeugt, die ich anzapfen will, um meine News-Ids pro (ausgewählten) Kategorie(n) zu erhalten.
das mache ich so:
PHP-Code:
$strCats = implode(',',$arrCategories);
$objNewsCategorized = $objDataBase->prepare('SELECT * FROM tl_news_categories WHERE category_id IN ('.$strCats.')')->limit(0)->execute();
if ($objNewsCategorized !== null) {
$arrNewsIds = array();
while($objNewsCategorized->next()){
$arrNewsIds[] = $objNewsCategorized->news_id;
}
}
Und jetzt stecke ich fest: wie kann ich folgende Query mit dem NewsModel realisieren? ($arrNewsIds und $newsArchives sind eindimensionale arrays)
PHP-Code:
$objFilteredNews = $objDataBase->prepare('SELECT * FROM tl_news WHERE id IN (' . implode(',', $arrNewsIds) . ') AND pid IN (' . implode(',', $newsArchives) . ') AND published = 1')->execute();
2 Möglichkeiten habe ich ausgemacht, aber ich kapier einfach nicht, wie ich das $arrOptions richtig anlege.
PHP-Code:
\NewsModel::findMultipleByIds($arrNewsIds,$arrOptions);
\NewsModel::findPublishedByPids($newsArchives, null, $this->perPage, $offset,$arrOptions);
Ich möchte dann die Collection mit $this->parseArticles nutzen (falls jemand fragt )
Kann mir jemand weiterhelfen?
grüße und danke schon mal für jeden Tipp.