Wo gibt es Module für die Version 4.4.0 ?

Gesperrt
Thorsten Schneider
Beiträge: 16
Registriert: Mo 3. Nov 2003, 15:04
Kontaktdaten:

Wo gibt es Module für die Version 4.4.0 ?

Beitrag von Thorsten Schneider »

Hallo,
habe mir am Wochenende die Version 4.4.0 installiert und bin begeistert. Werde meine Homepage jetzt mit contenido programmieren, ist ja (bisher) auch für mich als Newbie noch relativ einfach...

Allerdings habe ich jetzt bereits die erste Frage:
Wo kann ich Module für diese Version herunterladen?

Bisher habe ich überall nur Module für die Vorgänger-Versionen gefunden.

Suche ein Modul, mit dem ich alle Artikel einer Navigationsebene angezeigt bekomme.

Oder muss ich, wenn ich andere Module nutzen möchte, doch besser eine ältere Contenido Version installieren?

Welche Version würdet Ihr empfehlen?

Danke für Eure Hilfe!
Gruss
Thorsten Schneider
agon
Beiträge: 83
Registriert: Mi 29. Okt 2003, 16:01
Kontaktdaten:

Beitrag von agon »

Hallo,

ich habe beim Upgrade von 4.3.x auf 4.4.x keines meiner Module anpassen müssen - im Einzelfall kann dies durchaus notwendig sein. Ich würde auf jeden Fall 4.4. empfehlen, die Module von der Entwickler-Site reinkopieren und schauen, ob es tut.

Gruß
Andreas
Thorsten Schneider
Beiträge: 16
Registriert: Mo 3. Nov 2003, 15:04
Kontaktdaten:

Beitrag von Thorsten Schneider »

Danke, Andreas, irgendwie funktioniert es bei mir nicht, aber vermutlich mache ich einen anderen Fehler.

Ich möchte in einer Ebene ca. 10 Artikel veröffentlichen. Lediglich ein Artikel davon ist der Startartikel.

Gibt es eine Möglichkeit, alle 10 Artikel (plus eventuelle zukünftige Artikel) automatisiert auf dieser Startseite anzeigen zu lassen?
agon
Beiträge: 83
Registriert: Mi 29. Okt 2003, 16:01
Kontaktdaten:

Beitrag von agon »

Hallo,

da gibt es IMHO eine Reihe von geeigneten Modulen bzw. von Modulen, die sich dafür umschreiben lassen. Ich habe folgendes gemacht:
Benötigt wird ein Modul, das die Artikel eine Kategorie (ohne Startartikel) anzeigt, und zwar in umgekehrter Reihenfolge ihrer Erstellung (andere Sortierreihenfolge über veränderte SQL-Abfrage natürlich möglich). In diesem Fall sollen nur die neuesten 5 Artikel herangezogen werden, läßt sich aber leicht verändern. Angezeigt wird jeweils der Titel als Link auf den entsprechenden Artikel:

Name: Navigation Artikel

Beschreibung: Um die Artikel eines Verzeichnisses ohne Startartikel zu listen

Eingabe:

Code: Alles auswählen

echo "<table cellspacing=\"0\" cellpadding=\"10\" border=\"0\">
 <tr>
  <td>Überschrift</td>
  <td><input type=\"text\" name=\"CMS_VAR[2]\" value=\"CMS_VALUE[2]\"></td>
 </tr>
</table>";
Ausgabe:

Code: Alles auswählen

<?php
$sql = "SELECT ARTLANG.idart, ARTLANG.idartlang, ARTLANG.title, CATART.idcat
 FROM ".$cfg["tab"]["cat_art"]." AS CATART, ".$cfg["tab"]["art_lang"]." AS ARTLANG, ".$cfg["tab"]["art"]." AS ART
 WHERE ARTLANG.idart = CATART.idart AND CATART.idart = ART.idart AND ARTLANG.idlang = '$lang' AND ARTLANG.online = '1' AND ART.idclient='$client' AND CATART.idcat='$idcat' AND CATART.is_start='0'
 ORDER BY ARTLANG.created DESC";
$db->query($sql);
if ($db->num_rows() != 0)
{
 echo '<h2>CMS_VALUE[2]</h2>
<p id="font">'; // hier ließe sich auch Schriftartauswahl integrieren
}
for ($i=0; $i<min($db->num_rows(),5); $i++)
{
 $db->next_record();
 $navmod_link ="front_content.php?client=$client&lang=$lang&idcat=".$db->f("idcat")."&idart=".$db->f("idart")."";
 echo '<a href="'.$sess->url("$navmod_link").'" class="klein">'.$db->f("title").'</a>';
 if ($i != $db->num_rows()-1)
 {
  echo '</p><p id="font">';
 }
}
if ($db->num_rows() != 0)
{
 echo '</p>';
}
?>
Hattest Du so etwas gesucht?
Andreas
Thorsten Schneider
Beiträge: 16
Registriert: Mo 3. Nov 2003, 15:04
Kontaktdaten:

Beitrag von Thorsten Schneider »

Danke, Andreas, funktioniert tatsächlich... sowas ähnliches hatte ich auch gesucht, allerdings mit anzeige aller artikel (unbegrenzt) und anzeige der überschrift und eines teaser-textes... aber vielleicht gelingt es mir ja, das modul umzuschreiben... mal schauen...
agon
Beiträge: 83
Registriert: Mi 29. Okt 2003, 16:01
Kontaktdaten:

Beitrag von agon »

Hallo,

für eine ähnliche Aufgabenstellung habe ich ein Modul gebastelt:
Das Modul, in dem die Inhalte der Artikel stehen, auf die gelinkt werden soll, besteht aus "CMS_HTMLHEAD[1]", "CMS_HTMLHEAD[2]" und "CMS_HTML[1]".
Auf der Startseite der Kategorie soll nun ein Modul eingebunden sein, in dem auf diese Artikel gelinkt wird, und zwar sollen die Artikel (in umgekehrter Reihenfolge ihrer Erstellung) mit "Überschrift 1" (als Link) "Überschrift 2" "erste 120 Zeichen des Textes..." erscheinen. Falls es mehr als 10 Artikel gibt, sollen die älteren über eine Blättern-Funktion erreichbar sein.

So gelöst:

Name: Artikelblaettern

Beschreibung: Listet alle Artikel einer Kategorie (ohne Startartikel) auf, wobei bei mehr als 10 Artikeln geblättert werden kann.

Eingabe: [leer]

Ausgabe:

Code: Alles auswählen

<?php
$sql = "SELECT ARTLANG.idart, ARTLANG.title, CATART.idcat, ARTLANG.created, CONTENT.value, CONTENT.idtype, CONTENT.typeid
 FROM ".$cfg["tab"]["cat_art"]." AS CATART, ".$cfg["tab"]["art_lang"]." AS ARTLANG, ".$cfg["tab"]["cat"]." AS CAT, ".$cfg["tab"]["content"]." AS CONTENT
 WHERE ARTLANG.idart = CATART.idart AND CATART.idcat = CAT.idcat AND ARTLANG.idartlang=CONTENT.idartlang AND CONTENT.idtype<=2 AND CONTENT.typeid<=2 AND CAT.idcat='$idcat' AND ARTLANG.idlang = '$lang' AND ARTLANG.online = '1' AND CATART.is_start='0'
 ORDER BY ARTLANG.artsort ASC,ARTLANG.created DESC";
$db->query($sql);
if ($db->num_rows() != 0)
{
 echo "<h1><br>CMS_HTMLHEAD[6]</h1>
<table border=0 cellspacing=0 cellpadding=0 id=\"font\">";

$artikel = array(array());
$j=0;
 $db->next_record();
 $idart_last=$db->f("idart");
for ($i=0; $i<$db->num_rows(); $i++)
{
 $artikel[$j][0] = $db->f("idart");
 $artikel[$j][1] = $db->f("idcat");
 $artikel[$j][2] = substr($db->f("created"),8,2).".".substr($db->f("created"),5,2).".";
 while ( $idart_last==$db->f("idart") )
 {
  if ( $db->f("idtype") == 2 && $db->f("typeid") == 1 )
  {
   $html_text = strip_tags(urldecode($db->f("value")));
   $array = array ("&auml;" => "ä", "&ouml;" => "ö", "&uuml;" => "ü", "&szlig;" => "ß", "&Auml;" => "Ä", "&Ouml;" => "Ö", "&Uuml;" => "ü", "&nbsp;" => " ", """ => "\"", "<" => "<", ">" => ">", "&" => "&");
   $html_text = strtr($html_text, $array);
   $artikel[$j][5] = htmlentities(substr($html_text,0,120))."...";
  } elseif ( $db->f("idtype") == 1 && $db->f("typeid") == 1 )
  {
   $artikel[$j][3] = strip_tags(urldecode($db->f("value")));
  } elseif ( $db->f("idtype") == 1 && $db->f("typeid") == 2 )
  {
   $artikel[$j][4] = strip_tags(urldecode($db->f("value")));
  }
  $idart_last=$db->f("idart");
  $db->next_record();
  $i++;
 }
 $idart_last=$db->f("idart");
 $j++;
 $i--;
}

if($blatt=="") {$blatt=0;}
$blattmax=ceil($j/10)-1;
$blatt1 = $blatt+1;
$blattmax1 = $blattmax+1;
if ($j>10)
{
 echo " <tr>
  <td colspan=3 align=\"right\">Seite ".$blatt1." von ".$blattmax1."  – <b>";
 for ($i=0; $i<=$blattmax; $i++)
 {
  $k = $i+1;
  if($i==$blatt) {
   echo " ".$k." ";
  } else {
   $navmod_link ="front_content.php?client=$client&lang=$lang&idcat=$idcat&blatt=".$i."";
   echo ' <a href="'.$sess->url("$navmod_link").'" id="font">'.$k.'</a> ';
  }
 }
 echo "</b><br> </td>
 </tr>";
}

for ($i=10*$blatt; $i < min($j,10*$blatt+10); $i++)
{
 $k = $i-1;
 $navmod_link ="front_content.php?client=$client&lang=$lang&idcat=".$artikel[$i][1]."&idart=".$artikel[$i][0]."";
 echo '<tr>';
 if ( $i>0 && $artikel[$i][2] == $artikel[$k][2] )
 {
  echo '<td> </td>';
 } else
 {
  echo '<td valign="top"><p><b>'.$artikel[$i][2].'</b></p></td>';
 }
 echo '<td><img border="0" src="images/2.gif" width="7" height="1"></td>
 <td><p><b><a href="'.$sess->url("$navmod_link").'" id="font">'.$artikel[$i][3].'</a> '.$artikel[$i][4].'</b> '.$artikel[$i][5].' <a href="'.$sess->url("$navmod_link").'" id="font">mehr</a></p></td>
</tr>';
}

if ($j>10)
{
 echo " <tr>
  <td colspan=3 align=\"right\"><br>Seite ".$blatt1." von ".$blattmax1."  – <b>";
 for ($i=0; $i<=$blattmax; $i++)
 {
  $k = $i+1;
  if($i==$blatt) {
   echo " ".$k." ";
  } else {
   $navmod_link ="front_content.php?client=$client&lang=$lang&idcat=$idcat&blatt=".$i."";
   echo ' <a href="'.$sess->url("$navmod_link").'" id="font">'.$k.'</a> ';
  }
 }
 echo "</b></td>
 </tr>";
}

 echo '</table>';
}
?>
Ließe sich noch schöner machen, z.B. mit Vorgabemöglichkeit in der Eingabe, wie viele Artikel pro Seite erscheinen sollen, Länge des Teasers, Abschneiden nicht nach 120 Zeichen, sondern an einem Wortende etc.

Gruß
Andreas
Thorsten Schneider
Beiträge: 16
Registriert: Mo 3. Nov 2003, 15:04
Kontaktdaten:

Beitrag von Thorsten Schneider »

Super, dass sieht ja schon wesentlich besser aus... echt geil, genauso hatte ich mir das vorgestellt...

Was ich jetzt nur noch ändern müsste, dass mehr Zeichen dargestellt werden sowie die Schriftart...
TomIRL
Beiträge: 51
Registriert: Di 4. Nov 2003, 20:24
Wohnort: Berlin
Kontaktdaten:

Beitrag von TomIRL »

Könntet Ihr die Module gleich noch hochladen?
Scheinen mir sehr sinnvoll zu sein die Dinger!
Thorsten Schneider
Beiträge: 16
Registriert: Mo 3. Nov 2003, 15:04
Kontaktdaten:

Beitrag von Thorsten Schneider »

@agon:

Dein Modul "Artikelblaettern" ist echt gut, allerdings gefällt mir die Anpassung und das Design noch nicht so sehr, wie könnte ich dies ändern? Gibt es da noch Möglichkeiten der Anpassung?

Würde zum Beispiel gerne eine Leerzeile zwischen der Überschrift und dem folgenden Text einfügen...
ttb
Beiträge: 182
Registriert: So 26. Okt 2003, 19:54
Wohnort: Schwerin
Kontaktdaten:

Beitrag von ttb »

Wenn ichs richtig gesehen habe, musst du diese Zeile verändern bzw. anpassen, denn das dürfte die Ausgabe sein - z. B. so:
echo '<td><img border="0" src="images/2.gif" width="7" height="1"></td>
<td><p><b><a href="'.$sess->url("$navmod_link").'" id="font">'.$artikel[$i][3].'</a> '.$artikel[$i][4].'</b><br><br> '.$artikel[$i][5].' <br><a href="'.$sess->url("$navmod_link").'" id="font">mehr</a></p></td>
</tr>';
agon
Beiträge: 83
Registriert: Mi 29. Okt 2003, 16:01
Kontaktdaten:

Beitrag von agon »

Hallo Thorsten,

klar, Design ist Geschmackssache und auch eine Terminübersicht sollte zum Look and Feel der jeweiligen Site passen
Was die Änderungen betrifft, gibt es IMHO zwei Bereiche:
Zum einen gibt es Variationen, die sich sinnvollerweise über den Eingabebereich einstellen lassen sollten, z.B. Länge des Teasers, Link am Ende des Teasers mit welchem Text/Image etc. - damit habe ich mich zugegebenermaßen nicht beschäftigt, weil mein Hauptziel (natürlich) war, das Ding für mich zum Laufen zu bringen und da konnte ich meine Vorstellungen schneller direkt in die Ausgabe programmieren.
Zum anderen gibt es Designvorstellungen, die sich wohl nur umsetzen lassen, indem man den HTML-Code der Ausgabe direkt anfaßt, da man sich ansonsten in einem Meer der Möglichkeiten verlieren würde.
Würde zum Beispiel gerne eine Leerzeile zwischen der Überschrift und dem folgenden Text einfügen...
Zwischen $artikel[$i][4] und $artikel[$i][5] in

Code: Alles auswählen

 <td><p><b><a href="'.$sess->url("$navmod_link").'" id="font">'.$artikel[$i][3].'</a> '.$artikel[$i][4].'</b> '.$artikel[$i][5].' <a href="'.$sess->url("$navmod_link").'" id="font">mehr</a></p></td>
ein <br> oder </p><p> einfügen.

Gruß
Andreas

P.S.: Hätte ich bei der Erstellung bereits an eine Veröffentlichung gedacht, wäre $artikel an assoziatives Array. :roll:
Thorsten Schneider
Beiträge: 16
Registriert: Mo 3. Nov 2003, 15:04
Kontaktdaten:

Beitrag von Thorsten Schneider »

Danke für die schnelle Antworten...
ch.schulze
Beiträge: 44
Registriert: Mo 25. Aug 2003, 22:41
Kontaktdaten:

Beitrag von ch.schulze »

hallo!

wie bekomme ich in deinem modul anstatt dem erstellungsdatum den titel angezeigt?!
Gesperrt