Seite 1 von 1

Neusten Artikel aus DB ziehen

Verfasst: Sa 18. Sep 2010, 18:47
von os-im
Hi.

Kann mir bitte mal jemand helfen ? Ich glaub, entweder habe ich ein Brett vorm Kopf, es ist zu offensichtlich oder ich habs einfach echt nicht gefunden ...

Ich bastele grade an einem Modul, und möchte aus der DB aus allen Sub-Kategorien den jeweils zuletzt geänderten Artikel holen.
Aus welchen verdammten Tabellen setzt sich dieser zusammen !?

Ich habe:

- aktuelle Katgeorie ID (global $idcat ) z.B. 47
- die ID's der Subkategorien z.B. 44 43 32

so .. nu .. ?

Ich würde danach gerne mit

$article = new Article();

weiterarbeiten, dafür brauche ich aber vorher noch die zu "jüngsten" Artikel-IDs ..
Was mir super helfen würde, wäre ein

SELECT a.juengstesdatum, a.idart FROM <???> AS a LEFT JOIN <???> AS b. usw .. Welche Tabellen muss ich mir anschauen !? Wie der content dann am Ende kommt, darum kümmert sich ja zum Glück dann die Article-klasse, aber davor steht grad noch ein LKW geladen mit verwirrendem Material ....

Ich hoffe, jemand kann mir was sagen ..

Danke und Gruß

Re: Neusten Artikel aus DB ziehen

Verfasst: So 19. Sep 2010, 11:46
von xmurrix
Hallo os-im,

schau dir die Klasse "Contenido_Category_Articles" (ist in contenido/classes/Contenido_Category/Contenido_Category_Articles.class.php) näher an, mit der kannst du sowas machen.

Hier ein Beispielcode:

Code: Alles auswählen

cInclude('classes', 'Contenido_Category/Contenido_Category_Articles.class.php');

if (!is_object($db)) {
    $db = new DB_Contenido();
}

$oCatArts = Contenido_Category_Articles($db, $cfg, $client, $lang);
$aArticles = $oCatArts->getArticlesInCategory(44, 'modificationdate', 'DESC', true, 1);
if (count($aArticles) > 0) {
    $iIdArt = new Article($aArticles[0], $client, $lang);
}
Die Funktion getArticlesInCategory() liefert dir auch gleich die Liste der Artikel-Objekte, aber das du ja nur den neuesten/aktuellsten Artikel brauchst, kannst du dir erstmal die IDs holen, um dann mitt der ersten ID das Artikelobjekt zu erstellen.

Gruß
xmurrix

Re: Neusten Artikel aus DB ziehen

Verfasst: Mo 20. Sep 2010, 10:10
von Oldperl
Hallo,

um die benötigten Artikel-Ids zu erhalten kann man auch die Klasse ArticleCollection neben der Klasse Article nutzen.
Interessant sind dazu auch die Klassen Item / ItemCollection in der contenido/classes/class.genericdb.php auf denen die Artikelklassen basieren. Über die Generic-DB ist nämlich sowohl das sortieren nach einzelnen DB-Feldern als auch ein Join mit anderen DB-Tabellen einfach möglich.

Nähere Infos findet man in der InFile- oder der API-Doku. :arrow: http://www.conrepo.org/apidoc/contenido ... 8.11/html/

Gruß aus Franken

Ortwin

PS: Verschoben nach Misc.