Andere Reihenfolge in der Artikelliste
Andere Reihenfolge in der Artikelliste
Hi, ich habe wieder mal eine kleine Frage zu Contenido.
Und zwar verwende ich nur die Standartmodule und das Standart Template.
Ich habe zur Zeit eine Kathegorie mit dem Namen Start, darin habe ich 2 Artikel, einer davon ist als Startartikel definiert.
Jetzt ist das Template so eingestellt, das ich links die einzellnen Kathegorien öffnen kann, also ich meine jetzt aus der sicht des Surfers.
Dann wird ja der Standartatikel geöffnet, aber mein Problem ist jetzt, das ich nicht weiß, wie ich jetzt einen Link zu dem 2. Artikel in dieser Kathegorie mache. Ich hab das jetzt erst mal so gemacht, das ich bei dem Modul Artikelliste die Kathegorie Start einefügt habe, so kann ich jetzt mit der Artikelliste zwischen den einzellnen Artikeln der Kathegorie navigieren. Also wie kann ich jetzt aber die Reihenfolge der Artikel in der Artikelliste ändern ?? Ich hab erst gedacht, das hätte was mit den Sortierschlüssel der Artikel zu tuen, aber dem ist leider nicht so ...
Und zwar verwende ich nur die Standartmodule und das Standart Template.
Ich habe zur Zeit eine Kathegorie mit dem Namen Start, darin habe ich 2 Artikel, einer davon ist als Startartikel definiert.
Jetzt ist das Template so eingestellt, das ich links die einzellnen Kathegorien öffnen kann, also ich meine jetzt aus der sicht des Surfers.
Dann wird ja der Standartatikel geöffnet, aber mein Problem ist jetzt, das ich nicht weiß, wie ich jetzt einen Link zu dem 2. Artikel in dieser Kathegorie mache. Ich hab das jetzt erst mal so gemacht, das ich bei dem Modul Artikelliste die Kathegorie Start einefügt habe, so kann ich jetzt mit der Artikelliste zwischen den einzellnen Artikeln der Kathegorie navigieren. Also wie kann ich jetzt aber die Reihenfolge der Artikel in der Artikelliste ändern ?? Ich hab erst gedacht, das hätte was mit den Sortierschlüssel der Artikel zu tuen, aber dem ist leider nicht so ...
Theorie ist wenn man weiß wie's geht, aber nichts funktioniert, Praxis ist wenn's geht, aber keiner weiß warum 

-
- Beiträge: 5478
- Registriert: Di 2. Mär 2004, 21:11
- Wohnort: Halchter, wo sonst? ;-)
- Kontaktdaten:
Re: Andere Reihenfolge in der Artikelliste
Hi Markus,
In diesem Fall wird nach artsort (ich glaube, das ist sogar der Sortierschluessel) (order by artlang.artsort) absteigend (desc) sortiert.
Gruss
Christa
Entweder baust Du im Startartikel einen Link zum anderen Artikel ein, oder Du verlinkst ihn sonstwo. Ohne Link wird's nicht funktionieren. Oder eben mit einer eingebauten Artikelliste.MarkusW. hat geschrieben: Dann wird ja der Standartatikel geöffnet, aber mein Problem ist jetzt, das ich nicht weiß, wie ich jetzt einen Link zu dem 2. Artikel in dieser Kathegorie mache.
Du musst in dem Artikelliste-Modul ggf. die Sortierreihenfolge aendern. Haben denn Deine Artikel unterschiedliche Sortierschluessel? Bei mir klappt das mit den unterschiedlichen Sortierschluesseln und Sortierung nach diesem Schluessel. Ich habe z.B. eine solche SQL-Anweisung in meinem Modul:MarkusW. hat geschrieben: Also wie kann ich jetzt aber die Reihenfolge der Artikel in der Artikelliste ändern ?? Ich hab erst gedacht, das hätte was mit den Sortierschlüssel der Artikel zu tuen, aber dem ist leider nicht so ...
Code: Alles auswählen
$query = "SELECT ARTLANG.idart, ARTLANG.idartlang, ARTLANG.lastmodified FROM ".$cfg["tab"]["cat_art"]." AS CATART, ".
$cfg["tab"]["art_lang"]." AS ARTLANG ".
"WHERE CATART.idcat = '$selcat' AND ARTLANG.idart = CATART.idart AND ARTLANG.idlang = '$lang' "." $startarton " ."ARTLANG.online = '1' ORDER BY ARTLANG.artsort DESC";
Gruss
Christa
Re: Andere Reihenfolge in der Artikelliste
Hallo, ich bin arbeite erst seit kurzem mit Contenido und habe dasselbe Problem mit der Sortierreihenfolge (möchte die Artikel nach Alphabet oder Sortierschlüssel sortieren, da ich die Artikel ja nachträglich eingetragen habe -z.B. Pressemitteilungen - und dadurch ja das Erstellungsdatum bzw. Dokumentdatum nicht mehr stimmt).
Meine Frage: Wo muss ich denn Deinen Code im Modul Artikelliste einfügen? Ich habs imOutput versucht und jetzt zeigt er die Artikel gar nicht mehr an. Wo muss ich noch was ändern? (kenne mich mit php so gut wie noch gar nicht aus)
Vielen Dank im voraus
Andrea
Meine Frage: Wo muss ich denn Deinen Code im Modul Artikelliste einfügen? Ich habs imOutput versucht und jetzt zeigt er die Artikel gar nicht mehr an. Wo muss ich noch was ändern? (kenne mich mit php so gut wie noch gar nicht aus)
Vielen Dank im voraus
Andrea
-
- Beiträge: 5478
- Registriert: Di 2. Mär 2004, 21:11
- Wohnort: Halchter, wo sonst? ;-)
- Kontaktdaten:
Re: Andere Reihenfolge in der Artikelliste
Hallo Andrea,
Es muss auf jeden Fall im Output geaendert werden. Wenn Du mir den Output-Bereich des von Dir benutzten Moduls hier reinpostest, kann ich Dir dann die Stelle nennen, bzw. die geaenderte Version einfach sagen.
Gruss
Christa
EDIT: Damit Du nicht lange suchen musst, hier der Thread von HerrB: http://www.contenido.de/forum/viewtopic ... artartikel
aehm ... das laesst sich nicht so einfach sagen, weil es mehrere Versionen der Artikelliste gibt. Das von vorhin war nur als Beispiel gedacht, aber letztendlich kommt's auf das Modul an, welches Du benutzt. Die Artikelliste, die beim Beispiel von Contenido dabei ist, war zumindest bis Version 4.4.4 noch fehlerhaft. Eine richtige Version findest Du hier im Forum, ich glaube HerrB hatte sie mal gepostet. Da musst Du mal die Suchfunktion bemuehen.AnKe hat geschrieben:Meine Frage: Wo muss ich denn Deinen Code im Modul Artikelliste einfügen? Ich habs imOutput versucht und jetzt zeigt er die Artikel gar nicht mehr an. Wo muss ich noch was ändern? (kenne mich mit php so gut wie noch gar nicht aus)
Es muss auf jeden Fall im Output geaendert werden. Wenn Du mir den Output-Bereich des von Dir benutzten Moduls hier reinpostest, kann ich Dir dann die Stelle nennen, bzw. die geaenderte Version einfach sagen.
Gruss
Christa
EDIT: Damit Du nicht lange suchen musst, hier der Thread von HerrB: http://www.contenido.de/forum/viewtopic ... artartikel
Re: Andere Reihenfolge in der Artikelliste
Hallo Christa, danke für die schnelle Antwort, das ist der output von der Artikelliste. Wenn Du mir sagen könntest, wie ich nach Sortierschlüssel sortieren kann, wäre ich dankbar. die Sortierung sollte nach unten erfolgen (oben zb. 5 bis unten 1)
VG Andrea
<?php
/***********************************************
* CONTENIDO MODUL - OUTPUT
*
* REFERENZ MODUL / ARTIKELLISTE
*
* Artikelliste mit Img 1, Head 1, Head 2
*
* Erstellt eine Liste mit allen Artikel bis
* auf den Startartikel.
*
* Author : Jan Lengowski
* Copyright : four for business AG
* Created : 15-08-2002
* Modified : 16-08-2002
************************************************/
// second db class instance
$db2 = new DB_Contenido;
// selected category
$selcat = "CMS_VALUE[0]";
if($selcat!="0" && $selcat!=""){
// select all articles in category widthout start article
$query = "SELECT ARTLANG.idart, ARTLANG.idartlang FROM ".$cfg["tab"]["cat_art"]." AS CATART, ".
$cfg["tab"]["art_lang"]." AS ARTLANG ".
"WHERE CATART.idcat = '$selcat' AND ARTLANG.idart = CATART.idart AND ARTLANG.idlang = '$lang' AND ".
"ARTLANG.online = '1' ORDER BY CATART.idart DESC";
// execute query
$db->query($query);
unset($articleID);
unset($linkID);
// get id's of sub articles
while ($db->next_record()) {
$articleID[] = $db->f("idartlang");
$linkID[] = $db->f("idart");
} // end while
// loop through subarticles
echo '
<table width="530" border="0" cellspacing="0" cellpadding="0">
<tr><td height="30" colspan="2" ></td></tr>
<tr><td height="21" width="22" style="border: 0px; border-top:1px; border-bottom:1px; border-color: #F7C473; border-style: solid; background-color: #FFFFCC"><img src="images/wuerfel.gif" width="22" height="21" border="0"></td>
<td width="530" style="border: 1px; border-left:0px; border-color: #F7C473; border-style: dashed; background-color: #FFFFCC; padding-left:10px" class="punkte">CMS_VALUE[2]</td></tr>
';
if (is_array($articleID)) {
foreach ($articleID as $key => $value) {
// select all CMS variables of the article
$sql = "SELECT * FROM ".$cfg["tab"]["content"]." WHERE idartlang = '$value' AND idtype = '1' AND typeid = '1'";
$db->query($sql);
$db->next_record();
$head = $db->f("value");
if ( strlen($head) > "CMS_VALUE[3]") {
$head = substr($head, 0, "CMS_VALUE[3]");
$head .= '..';
}
// link
$link = $sess->url("front_content.php?client=$client&lang=$lang&idcat=$selcat&idart=$linkID[$key]&m=$m&s=$s");
echo '<tr><td colspan="2" class="text" height="22" style="border: 1px; border-top:0px; border-color: #F7C473; border-style: dashed; background-color: #FFFFCC; padding-left:10px"><a href="'.$link.'">'.urldecode($db->f("value")).'</a></td></tr>';
} // end while
unset($headline);
unset($text);
} // end foreach
} // end if (is_array)
echo '</table><br>';
?>
VG Andrea
<?php
/***********************************************
* CONTENIDO MODUL - OUTPUT
*
* REFERENZ MODUL / ARTIKELLISTE
*
* Artikelliste mit Img 1, Head 1, Head 2
*
* Erstellt eine Liste mit allen Artikel bis
* auf den Startartikel.
*
* Author : Jan Lengowski
* Copyright : four for business AG
* Created : 15-08-2002
* Modified : 16-08-2002
************************************************/
// second db class instance
$db2 = new DB_Contenido;
// selected category
$selcat = "CMS_VALUE[0]";
if($selcat!="0" && $selcat!=""){
// select all articles in category widthout start article
$query = "SELECT ARTLANG.idart, ARTLANG.idartlang FROM ".$cfg["tab"]["cat_art"]." AS CATART, ".
$cfg["tab"]["art_lang"]." AS ARTLANG ".
"WHERE CATART.idcat = '$selcat' AND ARTLANG.idart = CATART.idart AND ARTLANG.idlang = '$lang' AND ".
"ARTLANG.online = '1' ORDER BY CATART.idart DESC";
// execute query
$db->query($query);
unset($articleID);
unset($linkID);
// get id's of sub articles
while ($db->next_record()) {
$articleID[] = $db->f("idartlang");
$linkID[] = $db->f("idart");
} // end while
// loop through subarticles
echo '
<table width="530" border="0" cellspacing="0" cellpadding="0">
<tr><td height="30" colspan="2" ></td></tr>
<tr><td height="21" width="22" style="border: 0px; border-top:1px; border-bottom:1px; border-color: #F7C473; border-style: solid; background-color: #FFFFCC"><img src="images/wuerfel.gif" width="22" height="21" border="0"></td>
<td width="530" style="border: 1px; border-left:0px; border-color: #F7C473; border-style: dashed; background-color: #FFFFCC; padding-left:10px" class="punkte">CMS_VALUE[2]</td></tr>
';
if (is_array($articleID)) {
foreach ($articleID as $key => $value) {
// select all CMS variables of the article
$sql = "SELECT * FROM ".$cfg["tab"]["content"]." WHERE idartlang = '$value' AND idtype = '1' AND typeid = '1'";
$db->query($sql);
$db->next_record();
$head = $db->f("value");
if ( strlen($head) > "CMS_VALUE[3]") {
$head = substr($head, 0, "CMS_VALUE[3]");
$head .= '..';
}
// link
$link = $sess->url("front_content.php?client=$client&lang=$lang&idcat=$selcat&idart=$linkID[$key]&m=$m&s=$s");
echo '<tr><td colspan="2" class="text" height="22" style="border: 1px; border-top:0px; border-color: #F7C473; border-style: dashed; background-color: #FFFFCC; padding-left:10px"><a href="'.$link.'">'.urldecode($db->f("value")).'</a></td></tr>';
} // end while
unset($headline);
unset($text);
} // end foreach
} // end if (is_array)
echo '</table><br>';
?>
Re: Andere Reihenfolge in der Artikelliste
ich hab selbst jetzt beim suchen auch noch was gefunden und zwar folgenden Code für den output der Artikelliste
$query = "SELECT ARTLANG.idart, ARTLANG.idartlang FROM ".$cfg["tab"]["cat_art"]." AS CATART, ".
$cfg["tab"]["art_lang"]." AS ARTLANG ".
"WHERE CATART.idcat = '$selcat' AND ARTLANG.idart = CATART.idart AND ARTLANG.idlang = '$lang' AND ".
"ARTLANG.online = '1' order by ARTLANG.artsort";
...
geändert wurde ganz zum Schluß das "order by"
vorher war: Code:
...ORDER BY CATART.idart DESC
jetzt zeigt er sie mir geordnet an, allerdings in verkehrter Reihenfolge, was muß ich ändern, damits in genau umgekehrter Reihenfolge ausgegeben wird?
Achso, ich verwende die Artikelliste von Contenido und 4.4 Version
VG Andrea
$query = "SELECT ARTLANG.idart, ARTLANG.idartlang FROM ".$cfg["tab"]["cat_art"]." AS CATART, ".
$cfg["tab"]["art_lang"]." AS ARTLANG ".
"WHERE CATART.idcat = '$selcat' AND ARTLANG.idart = CATART.idart AND ARTLANG.idlang = '$lang' AND ".
"ARTLANG.online = '1' order by ARTLANG.artsort";
...
geändert wurde ganz zum Schluß das "order by"
vorher war: Code:
...ORDER BY CATART.idart DESC
jetzt zeigt er sie mir geordnet an, allerdings in verkehrter Reihenfolge, was muß ich ändern, damits in genau umgekehrter Reihenfolge ausgegeben wird?
Achso, ich verwende die Artikelliste von Contenido und 4.4 Version
VG Andrea
-
- Beiträge: 5478
- Registriert: Di 2. Mär 2004, 21:11
- Wohnort: Halchter, wo sonst? ;-)
- Kontaktdaten:
Re: Andere Reihenfolge in der Artikelliste
Ja, genau.AnKe hat geschrieben:geändert wurde ganz zum Schluß das "order by"
Du musst dass 'DESC' rausnehmen, wenn ich mich nicht irre, ist aufsteigend die Standardeinstellung. Sollte das nicht klappen, musst Du DESC durch ASC ersetzen.AnKe hat geschrieben:jetzt zeigt er sie mir geordnet an, allerdings in verkehrter Reihenfolge, was muß ich ändern, damits in genau umgekehrter Reihenfolge ausgegeben wird?
Gruss
Christa
Re: Andere Reihenfolge in der Artikelliste
Hallo Christa,
Irgendwie klappts trotzdem nicht mit der umgekehrten Reihenfolge, mein Code sieht jetzt so aus:
Input:
$query = "SELECT ARTLANG.idart, ARTLANG.idartlang, ARTLANG.lastmodified FROM ".$cfg["tab"]["cat_art"]." AS CATART, ".
$cfg["tab"]["art_lang"]." AS ARTLANG ".
"WHERE CATART.idcat = '$selcat' AND ARTLANG.idart = CATART.idart AND ARTLANG.idlang = '$lang' "." $startarton " ."ARTLANG.online = '1' ORDER BY ARTLANG.artsort";
output:
$query = "SELECT ARTLANG.idart, ARTLANG.idartlang FROM ".$cfg["tab"]["cat_art"]." AS CATART, ".
$cfg["tab"]["art_lang"]." AS ARTLANG ".
"WHERE CATART.idcat = '$selcat' AND ARTLANG.idart = CATART.idart AND ARTLANG.idlang = '$lang' AND ".
"ARTLANG.online = '1' order by ARTLANG.artsort ASC";
Ich habs auch schon umgekehrt probiert (ASC im input, oder weder ASC noch DESC).
Irgendwie muss doch die Reihenfolge umzukehren gehen. Vielen Dank schonmal
Irgendwie klappts trotzdem nicht mit der umgekehrten Reihenfolge, mein Code sieht jetzt so aus:
Input:
$query = "SELECT ARTLANG.idart, ARTLANG.idartlang, ARTLANG.lastmodified FROM ".$cfg["tab"]["cat_art"]." AS CATART, ".
$cfg["tab"]["art_lang"]." AS ARTLANG ".
"WHERE CATART.idcat = '$selcat' AND ARTLANG.idart = CATART.idart AND ARTLANG.idlang = '$lang' "." $startarton " ."ARTLANG.online = '1' ORDER BY ARTLANG.artsort";
output:
$query = "SELECT ARTLANG.idart, ARTLANG.idartlang FROM ".$cfg["tab"]["cat_art"]." AS CATART, ".
$cfg["tab"]["art_lang"]." AS ARTLANG ".
"WHERE CATART.idcat = '$selcat' AND ARTLANG.idart = CATART.idart AND ARTLANG.idlang = '$lang' AND ".
"ARTLANG.online = '1' order by ARTLANG.artsort ASC";
Ich habs auch schon umgekehrt probiert (ASC im input, oder weder ASC noch DESC).
Irgendwie muss doch die Reihenfolge umzukehren gehen. Vielen Dank schonmal
-
- Beiträge: 5478
- Registriert: Di 2. Mär 2004, 21:11
- Wohnort: Halchter, wo sonst? ;-)
- Kontaktdaten:
Re: Andere Reihenfolge in der Artikelliste
Hallo Andrea,
wenn ich mich nicht irre, habe ich bei mir im Input gar nichts geaendert, denn der Output-Bereich ist der, der fuer die Ausgabe im Frontend-Bereich 'zustaendig' ist.
Aber so, wie Du das angegeben hast, wird ja nach dem Sortierschluessel sortiert. Haben Deine Artikel denn ueberhaupt schon unterschiedliche Sortierschluessel? Wenn man nichts extra bei Eigenschaften angibt, haben naemlich alle Artikel standardmaessig den Schluessel 0.
Gruss
Christa
wenn ich mich nicht irre, habe ich bei mir im Input gar nichts geaendert, denn der Output-Bereich ist der, der fuer die Ausgabe im Frontend-Bereich 'zustaendig' ist.
Aber so, wie Du das angegeben hast, wird ja nach dem Sortierschluessel sortiert. Haben Deine Artikel denn ueberhaupt schon unterschiedliche Sortierschluessel? Wenn man nichts extra bei Eigenschaften angibt, haben naemlich alle Artikel standardmaessig den Schluessel 0.
Gruss
Christa
Re: Andere Reihenfolge in der Artikelliste
Ich glaub ich muß noch mal von vorne anfangen und mich dann nochmal melden ...
Danke für Deine Bemühungen
VG Andrea
Danke für Deine Bemühungen
VG Andrea
Hallo,
weiß zufällig jemand, wie ich in der Standardartikelliste die Artikel nicht nach dem Erstellungsdatum, sondern nach dem Änderungsdatum sortieren kann, so dass der zuletzt geänderte Artikel obensteht.
Zur Info:
Ich möchte die Vorlesungsunterlagen wöchtenlich Aktualisierung und dann soll es nach dem ändern wieder nach oben wandern....
Vielen Dank
OAA
weiß zufällig jemand, wie ich in der Standardartikelliste die Artikel nicht nach dem Erstellungsdatum, sondern nach dem Änderungsdatum sortieren kann, so dass der zuletzt geänderte Artikel obensteht.
Zur Info:
Ich möchte die Vorlesungsunterlagen wöchtenlich Aktualisierung und dann soll es nach dem ändern wieder nach oben wandern....
Vielen Dank
OAA
Hi,
daran habe ich auch schon gedacht, aber ich wußte nicht, was ich wie ändern soll:
so siehts aus:
Was woll ich hier ersetzen?
vielen Dank
daran habe ich auch schon gedacht, aber ich wußte nicht, was ich wie ändern soll:
so siehts aus:
Code: Alles auswählen
// select all articles in category widthout start article
$query = "SELECT ARTLANG.idart, ARTLANG.idartlang FROM ".$cfg["tab"]["cat_art"]." AS CATART, ".
$cfg["tab"]["art_lang"]." AS ARTLANG ".
"WHERE CATART.idcat = '$selcat' AND ARTLANG.idart = CATART.idart AND ARTLANG.idlang = '$lang' AND ".
"ARTLANG.online = '1' ORDER BY CATART.idart DESC";
vielen Dank