Modul: Standard-Artikelliste Advanced V1.4

willy3
Beiträge: 125
Registriert: Fr 5. Mär 2004, 00:14
Wohnort: ehem. Kanzler-Stadt
Kontaktdaten:

Beitrag von willy3 » Do 28. Jun 2007, 10:50

Hallo,
ich nutze die Article List Advanced V4.6.x V1.6 (modified by www.suther.de)

per css habe ich einzelne templates angepasst.
Das Problem: in dem Zielordner (aus dem die Artikel) kommen sollen, so sind alle Artikel online.
Leider stellt sich nur ein Artikel dieser Kategorie dar.
die Anzahl der Artikel ist auch entsprechend hoch gesetzt.
Viele Grüße und Danke
willy3

---
Sys-Config:
Contenido-Version 4.6.15
Browser: Firefox2.0.0.3 // MSIE 6.0.2
Windows XP pro SP2 MSIE6.0.2900
Serverbetriebssystem Apache/1.3.27 (Linux/SuSE)
MySQL Serverversion 4.0.23-Max-log
Installierte PHP-Version 4.4.1

willy3
Beiträge: 125
Registriert: Fr 5. Mär 2004, 00:14
Wohnort: ehem. Kanzler-Stadt
Kontaktdaten:

Beitrag von willy3 » Do 28. Jun 2007, 23:53

Hallo,
das hat sich erledigt,
denn ich habe vergessen auch den Startartikel mit anzuwählen. :oops:
Viele Grüße und Danke
willy3

---
Sys-Config:
Contenido-Version 4.6.15
Browser: Firefox2.0.0.3 // MSIE 6.0.2
Windows XP pro SP2 MSIE6.0.2900
Serverbetriebssystem Apache/1.3.27 (Linux/SuSE)
MySQL Serverversion 4.0.23-Max-log
Installierte PHP-Version 4.4.1

teon
Beiträge: 4
Registriert: Mi 18. Jul 2007, 09:45
Kontaktdaten:

Beitrag von teon » Mi 18. Jul 2007, 14:00

Hallo!

Ich habe die Artikelliste in Verbindung mit der CONTENIDO ModRewrite-Version eingesetzt.

Leider funktionieren die Links der Artikelliste nicht. Wenn ich beispielsweise die Artikel der Kategorie News ausgeben möchte, sieht das so aus:

http://xxx.de/news/.html

Was muss ich am Modul ändern?

DANKE!

schulzi
Beiträge: 15
Registriert: Do 1. Apr 2004, 22:07
Kontaktdaten:

Beitrag von schulzi » Fr 17. Aug 2007, 19:55

Habe unter 4.6.15 die aktuelle Version 1.4 dieses Moduls eingebaut und möchte erstmal ein großes Lob loswerden!
Jetzt die Frage: Ich will statt des Erstellungsdatums das Startdatum aus der Zeitsteuerung nutzen, da mir created, published und lastmodified alle nicht passen. Ich habe im Input und Output an möglichst allen mir sinnvoll erscheinenden Stellen versucht, created durch datestart zu ersetzen, doch ohne Wirkung. Bei anderen Artikellisten hats bisher immer irgendwann funktioniert. Was mache ich da falsch? Aktiviert ist die Zeitsteuerung bei allen in Frage kommenden Artikeln, daran liegts also nicht. Ich paste hier mal alle in Frage kommenden Zeilen:

Code: Alles auswählen

if ($aSettings["SortBy"] == "ARTLANG.datestart") {
   echo '                <option value="ARTLANG.datestart" selected>'.mi18n("Add Date").'</option>'."\n";
} else {
   echo '                <option value="ARTLANG.datestart">'.mi18n("Add Date").'</option>'."\n";

Code: Alles auswählen

  $sql .= "ARTLANG.datestart AS datestart, ARTLANG.published AS published, CATLANG.name AS category, ";

Code: Alles auswählen

$aData[$i]["Created"]             = $db2->f("datestart");
Weiß jemand die Lösung?

Viele Grüße
schulzi

roman
Beiträge: 127
Registriert: Fr 25. Apr 2003, 15:36
Kontaktdaten:

Article List Advanced V4.6.x V1.6

Beitrag von roman » Sa 18. Aug 2007, 01:03

Ich habe auch mal die 1.6 versucht. Leider werden nur die summary Einträge dargestellt und nicht der HTML Text Container. Wer hat ne Idee???

Code: Alles auswählen

/* Init Template
*/

if (!is_object($tpl)) {
   $tpl = new Template;
}
$tpl->reset();

$tpl->set('s', 'TITLE', $newsheadline);

      foreach ($aData as $aValue) {
         echo '<div id="artlist">', chr(10);
         $artlist_headline = '<a href="'.$aValue["Link"].'"class="Artikelliste_Headline">'.$aValue["Headline"].'</a>';
         $artlist_pagetitel = $aValue["Pagetitle"];
         $artlist_summary = '<a href="'.$aValue["Link"].'"class="Artikelliste_Text">'.$aValue["Summary"].'</a>';
         if ($aSettings["Elements"] > 0) {
            for ($i = 0; $i < $aSettings["Elements"]; $i++) {
               switch (TRUE) {
                  case ($aSettings["k".$i]["ElementType"] == "Image" || $aSettings["k".$i]["ElementType"] == "ExtractedImage"):
                     $image = $aValue["i".$i]["WebPath"];
                     
                     $width  = $aValue["i".$i]["Width"];
                     $height = $aValue["i".$i]["Height"];
                     if ($aSettings["k".$i]["ElementWidth"] > 0 && $aSettings["k".$i]["ElementHeight"] > 0) {
                        # Check, if resize necessary
                        if ($aValue["i".$i]["ServerPath"] != "" && file_exists($aValue["i".$i]["ServerPath"]) &&
                            ($aValue["i".$i]["Width"] > $aSettings["k".$i]["ElementWidth"] ||
                             $aValue["i".$i]["Height"] > $aSettings["k".$i]["ElementHeight"])) {
                           # Scale image
                           $image = capiImgScale($aValue["i".$i]["ServerPath"], $aSettings["k".$i]["ElementWidth"], $aSettings["k".$i]["ElementHeight"], false, false, 10, false);

###                           #Get dimensions of the image
                           list ($width, $height, $type, $attr) = getimagesize(str_replace($cfgClient[$client]["path"]["htmlpath"], $cfgClient[$client]["path"]["frontend"], $image));
                        } else {
                           $image = $aValue["i".$i]["WebPath"];
                           
                           $width  = $aValue["i".$i]["Width"];
                           $height = $aValue["i".$i]["Height"];
                        }
                     }
                     if ($image != "") {
#####
         $artlist_image = '<img src="'.$image.'" width="'.$width.'" height="'.$height.'" align="'.$aSettings["k".$i]["ElementImgAlign"].'" style="padding:'.$aSettings["k".$i]["ElementPadding"].';" />';
#####
                     }else $artlist_image ="";
                     
                     break;
                  default: // Everything else is treated as "Text"
                        if ($artlist_summary == "") {
                                $artlist_text =  $aValue["i".$i]["Value"];
                        } else {
                                $artlist_text = $artlist_summary;
                        }
                      #echo $artlist_text;
               }
            }
         }
        $artlist_more = '<a href="'.$aValue["Link"].'">'.mi18n("More...").'</a>';
        echo '</div>', chr(10);

if("CMS_VALUE[97]"=="create")
{
    $tmp_artlist_Date = strtotime($aValue["Created"]);
}
else
{
    $tmp_artlist_Date = strtotime($aValue["Published"]);
}

    if("CMS_VALUE[98]"!="-1")
    {
        $artlist_lastmod = date('CMS_VALUE[98]', $tmp_artlist_Date);
        if(strlen($artlist_lastmod)>12)$artlist_lastmod=$artlist_lastmod." Uhr";
    }
    else
        $artlist_lastmod = "";
    


         
         $tpl->set('d', 'PAGETITEL', $artlist_pagetitel);
         $tpl->set('d', 'HEADLINE', $artlist_headline);
         $tpl->set('d', 'DATE', $artlist_lastmod);
         $tpl->set('d', 'IMG',  $artlist_image);
         $tpl->set('d', 'TEXT',  $artlist_text);
         $tpl->set('d', 'MORE', $artlist_more);

       $tpl->next();

      }
   }

$tpl->generate("CMS_VALUE[99]");

HerrB
Beiträge: 6935
Registriert: Do 22. Mai 2003, 12:44
Wohnort: Berlin
Kontaktdaten:

Beitrag von HerrB » Sa 18. Aug 2007, 11:01

@schulzi: Sieht alles gut aus. Und er sortiert nicht?

@roman: Das liegt am Code.

Vermutlich ergeben sich aus Deinen Einstellungen pro Artikel mehrere Datensätze. Bereits beim ersten Datensatz wird artlist_summary festgelegt (

Code: Alles auswählen

$artlist_summary = '<a href="'.$aValue["Link"].'"class="Artikelliste_Text">'.$aValue["Summary"].'</a>';
).

Nur, wenn keine Summary vorhanden ist, wird als Text nicht die Summary, sondern der Text-Container ausgegeben:

Code: Alles auswählen

if ($artlist_summary == "") { 
                                $artlist_text =  $aValue["i".$i]["Value"]; 
                        } else { 
                                $artlist_text = $artlist_summary; 
                        } 
Diese Überarbeitung des Original-Moduls ist insofern sehr speziell...

Gruß
HerrB
Bitte keine unaufgeforderten PMs oder E-Mails -> use da Forum!

Newsletter: V4.4.x | V4.6.0-15 (Module, Backend) | V4.6.22+
Standardartikelliste: V4.4.x | V4.6.x
http://www.contenido.org/forum/search.php | http://faq.contenido.org | http://www.communido.net

conny07
Beiträge: 3
Registriert: Do 16. Aug 2007, 08:18
Kontaktdaten:

Anpassungs-Frage zum Modul

Beitrag von conny07 » Mo 20. Aug 2007, 14:24

Hallo,

eine Frage als PHP-Anfänger habe ich: wie müsste man vorgehen, wenn man bei der Ausgabe vor der Headline auch das Publikationsdatum mit ausgeben will, und zwar in der Form, dass nur Jahr und Monat sichtbar werden, also statt der Ausgabe mit Tag und Uhrzeit ( z. B. 2007-08-20 13:54:05) nur Jahr-Monat (2007-08). Ich kenne zwar die date-Funktion, aber ich weiß nicht, ob die mir in diesem Fall weiterhelfen kann.

Die Ausgangsvariable ist, denke ich, $aValue["Published"], die ich im Output-Bereich des Moduls in der echo-Ausgabe eingefügt habe:

Code: Alles auswählen

foreach ($aData as $aValue) {
         echo '<div>', chr(10);
         echo '   <div id="headline"><strong>'.$aValue["Published"].":".$aValue["Headline"].'</strong></div>', chr(10);
Bin dankbar für jeden Hinweis,
conny07

wosch

Beitrag von wosch » Mo 20. Aug 2007, 14:41

@conny07,
schau mal da rein (vor allem Seite 2):
http://www.contenido.de/forum/viewtopic.php?t=14680

Das ist zwar die ganz einfache Artikelliste von HerrB,
aber da wird erklärt was du wie machen mußt.
Und die Technik dieser Artikelliste ist ähnlich wie diese hier.

schulzi
Beiträge: 15
Registriert: Do 1. Apr 2004, 22:07
Kontaktdaten:

Beitrag von schulzi » Mo 20. Aug 2007, 22:04

@HerrB: Njet. s. hier: http://www.schulz-tauberschmidt.de/cms/3.html.

Die obersten zwei Artikel rechts in der Box haben das gleiche created-Datum, das gleiche Published-Datum, aber der obere ist ein oder zwei Stunden nach dem anderen erstellt und veröffentlicht worden, aber datestart dagegen ist für den oberen 1. 8., für den zweiten dagegen 17. 8.

??
Gruß
schulzi
--
Sys-Config:
Contenido-Version 4.6.15
Browser: Firefox2.0.0.6 // MSIE 7.0.5730.11
Windows XP Home SP2
Serverbetriebssystem Apache auf Linux
MySQL Serverversion 4.1.22-max-log
Installierte PHP-Version 4.4.6
Hoster: all-inkl.com

HerrB
Beiträge: 6935
Registriert: Do 22. Mai 2003, 12:44
Wohnort: Berlin
Kontaktdaten:

Beitrag von HerrB » Mo 20. Aug 2007, 23:03

Lass Dir mal da:

Code: Alles auswählen

$aData[$i]["Created"]             = $db2->f("datestart");
$db2->f("datestart"); ausgeben.

Kannst auch mal das fertige SQL-Statement verwenden und mit phpMyAdmin testen.

Vielleicht eine blöde Frage: Die Konfiguration des Artikels oder der Kategorie hast Du aber durchgeführt, oder?

Gruß
HerrB
Bitte keine unaufgeforderten PMs oder E-Mails -> use da Forum!

Newsletter: V4.4.x | V4.6.0-15 (Module, Backend) | V4.6.22+
Standardartikelliste: V4.4.x | V4.6.x
http://www.contenido.org/forum/search.php | http://faq.contenido.org | http://www.communido.net

schulzi
Beiträge: 15
Registriert: Do 1. Apr 2004, 22:07
Kontaktdaten:

Beitrag von schulzi » Di 21. Aug 2007, 16:25

Hi HerrB,
Lass Dir mal da:

Code: Alles auswählen

$aData[$i]["Created"]             = $db2->f("datestart");
$db2->f("datestart"); ausgeben.
Hm, hab ich jetzt nicht verstanden: Wie und wo kann ich das ausgeben lassen?
Kannst auch mal das fertige SQL-Statement verwenden und mit phpMyAdmin testen.
Dass es in phpMyAdmin was, gibt um SQL-Befehle einzugeben, weiß ich, nur wo finde ich das von dir erwähnte "fertige SQL-Statement"? Ich hab spaßeshalber $db2->f("datestart"); da reingegeben, aber ich dachte mir schon, dass das mehr php als sql ist.
Vielleicht eine blöde Frage: Die Konfiguration des Artikels oder der Kategorie hast Du aber durchgeführt, oder?
Es gibt keine blöden Fragen, wenn sie zum Ziel führt, und das hat sie (wahrscheinlich) getan. Jetzt stimmts offenbar! Danke! Ich hatte blöderweise die Artikel ID als Sortierkriterium nicht geändert, alles andere war konfiguriert! Die Fragen oben dienen jetzt zwar nur noch meinem Lernfortschritt, aber über eine Antwort dazu würde ich mich trotzdem freuen ... :)

Gruß
schulzi
--
Sys-Config:
Contenido-Version 4.6.15
Browser: Firefox2.0.0.6 // MSIE 7.0.5730.11
Windows XP Home SP2
Serverbetriebssystem Apache auf Linux
MySQL Serverversion 4.1.22-max-log
Installierte PHP-Version 4.4.6
Hoster: all-inkl.com

HerrB
Beiträge: 6935
Registriert: Do 22. Mai 2003, 12:44
Wohnort: Berlin
Kontaktdaten:

Beitrag von HerrB » Di 21. Aug 2007, 17:55

Das ist aus einem von Dir geposteten Schritte (17.08., 20:55). Unter der Zeile hättest Du mit

Code: Alles auswählen

echo $db2->f("datestart");
mal testen können, ob denn überhaupt ein Datum ankommt.

Da, wo

Code: Alles auswählen

$sql .= "ARTLANG.datestart AS datestart, ARTLANG.published AS published, CATLANG.name AS category, ";
steht, wird das SQL-Statement zusammengebaut und mit query($sql) abgesendet. Darunter ein

Code: Alles auswählen

echo ($sql);
hätte Dir das komplette SQL-Statement geliefert.

Dieses in phpMyAdmin eingefügt (Reiter SQL) und ausgeführt - und im Ergebnis testen, ob es das gewünschte Resultat liefert.

Gruß
HerrB
Bitte keine unaufgeforderten PMs oder E-Mails -> use da Forum!

Newsletter: V4.4.x | V4.6.0-15 (Module, Backend) | V4.6.22+
Standardartikelliste: V4.4.x | V4.6.x
http://www.contenido.org/forum/search.php | http://faq.contenido.org | http://www.communido.net

qotsa
Beiträge: 29
Registriert: Di 6. Jun 2006, 09:09
Kontaktdaten:

Beitrag von qotsa » Di 21. Aug 2007, 18:02

Hallo HerrB

Bei mir klappt leider die XML-Installation nicht. Wärst du so nett und postest den Input und Output noch mal extra im ersten Post. Ich hab auch schon versucht, alles was in der XML-Datei zwischen <input> und </input> steht, manuell einzufügen genauso wie das zwischen <output> und </output>, aber es klappt nicht. Beim Aufruf der Seite kommt dann eine Fehlermeldung.

HerrB
Beiträge: 6935
Registriert: Do 22. Mai 2003, 12:44
Wohnort: Berlin
Kontaktdaten:

Beitrag von HerrB » Di 21. Aug 2007, 18:15

Dann sollten wir lieber mal rauskriegen, warum das nicht geht - der Code ist so lang, dass ich den hier nicht posten kann.

Bitte genauer: "Da kommt dann immer eine Fehlermeldung."

Gruß
HerrB
Bitte keine unaufgeforderten PMs oder E-Mails -> use da Forum!

Newsletter: V4.4.x | V4.6.0-15 (Module, Backend) | V4.6.22+
Standardartikelliste: V4.4.x | V4.6.x
http://www.contenido.org/forum/search.php | http://faq.contenido.org | http://www.communido.net

qotsa
Beiträge: 29
Registriert: Di 6. Jun 2006, 09:09
Kontaktdaten:

Beitrag von qotsa » Di 21. Aug 2007, 19:30

Diese Meldung kommt:

Code: Alles auswählen

Parse error: syntax error, unexpected '&', expecting ']' in /var/www/xxx/xxx/cms/front_content.php(887) : eval()'d code on line 368
Außerdem leuchten beide "Lämpchen" sowohl beim Input als auch Output rot.

Kann es sein, dass da beim Importieren aus der XML noch was geparst und verändert wird? Zum Beispiel steht da <?php statt <?php.

Gesperrt