[NEU] Article List Reloaded (ALR)

Alles rund um Module und Plugins in CONTENIDO 4.9.
homtata
Beiträge: 977
Registriert: Mi 14. Jan 2004, 14:41
Kontaktdaten:

[NEU] Article List Reloaded (ALR)

Beitrag von homtata » Sa 21. Sep 2013, 20:29

Hallo an alle,

da sich gezeigt hat, dass die leicht angepasste Version der Article List Advanced (ALA) mehr Macken hat unter CON49 als uns lieb sein kann, hab ich mich doch dran gesetzt, den ganzen Code nochmal durchzugehen und in wesentlichen Teilen umzugestalten oder neu zu programmieren.
Die ALR fühlt sich ähnlich an wie die ALA, hat aber doch einige wesentliche Änderungen und Umstellungen durchlaufen.

Wirklich wichtig: Genaueres findet Ihr in der Zip-Datei im Unterordner /doku - bitte lest das aufmerksam durch.

Modul: Article List Reloaded

Kurzbeschreibung:
- Es werden jetzt auch unabhängig von den gewählten Einstellungen etliche Variablen berechnet, die dann im Dokument zur Verfügung stehen.
- Die Konfiguration befüllt lediglich einige Standardvariablen auf Wunsch mit wechselnden Inhalten und legt einige Formate fest, die auf die entsprechenden Variablen angewendet werden.
- So lässt sich später das Template sehr flexibel gestalten: mit sich dynamisch anpassbaren und/oder statischen Variablen.
- Im Modul wird nicht mehr die HTML-Ausgabe berechnet, sondern nur noch Arrays und Objekte. Alles weitere regelt die Smarty-Template-Vorlage.
- Dies gilt sowohl für die übergeordneten Artikelvariablen wie auch für die Elemente und die Pagination.
- Alle derzeit möglichen Variablen finden sich am Ende des Smarty-Templates, ebenso ein einfaches Listenbeispiel.

Wichtigste Neuerungen:
- Es können jetzt auch CMS_Date-Typen aus einem Artikel ausgelesen werden.
- Alle nötigen Skripte sind im Modulordner integriert; keine externen Dateien an anderen Stellen mehr nötig.
- Die Konfigurationsseite funktioniert weiterhin als Akkordeon, aber diese Funktion kann temporär abgeschaltet werden = weniger Klicks beim Einrichten.
- Das "Headline"-Feld bei "Elemente" ist kein Pflichtfeld mehr, die ALR funktioniert auch so.
- Die Elementnummer in der Konfiguration entspricht jetzt der Aufrufnummer im Smarty-Template: 1. Element ist ein Text -> §article.1_text; 2. Element ein Bild: $article.2_image
- Anders als die ALA für CON4.9 sollte das Element "Image" und "Image aus Text" jetzt funktionieren, und auch der Mehrfacheinsatz des Moduls in einem Artikel sollte unproblematisch sein.
- Der Inputbereich ist komplett neu geschrieben, daher sind anfangs Bugs und leichte Unstimmigkeiten nicht auszuschließen. Meldet Euch einfach!

Danke an funomat für die ALA als wesentliche Vorlage und etliche Leute im Forum hier für Programmierhilfen und Denkanstöße.

Ich poste das Modul jetzt in einem vielleicht noch eher frühen bis mittleren Stadium ohne extensive Tests im Vorfeld, da einige User es offensichtlich gern einsetzen würden. Bitte postet dennoch Eure Erfahrungen, das würde mir helfen.

LG
Viktor

Änderungshistorie

Alle Änderungen am Modul VOR der aktuellsten Version sind ab sofort in der revisions.txt in der gezippten Download-Datei enthalten, um diese Seite übersichtlicher zu halten.

Letzte Änderungen/Bugfixes/Updates

corr14 vom 06.12.2016:
Enthält den Quickfix von Ende August für das überlaufende Errorlog.
Update: Neues Datums-Format in Input: d. F Y. (Zeile 513 in Output)

Wichtige Info zum Einsatz ab PHP7.0!!
Die Konfigurationsansicht wird wegen einer überflüssigen Zeile zerschossen. Bitte im u.g. Block im Inputbereich die erste der beiden $select-Anweisungen wie gezeigt auskommentieren oder löschen.

Code: Alles auswählen

// construct the additional categories select
$fillrow   = array();
$table = new cHTMLTable();
//first row with categories
$tr = new cHTMLTableRow();
$td = new cHTMLTableData();
$td->setContent("");
$fillrow[] = $td;
$td = new cHTMLTableData();
//$select = new cHTMLSelectElement();
$select = fncBuildCategorySelect("adddir".$cnumber, "CMS_VALUE[106]" , 0, "fncUpdateSel( 'adddir".$cnumber."', '"."CMS_VAR[106]"."');", "10", "multiple", false, 0, false);
$input = new cHTMLHiddenField("CMS_VAR[106]", "CMS_VALUE[106]");
$td->setContent(fncAddMultiSelJS().$select.$input);
$td->setClass("silverline");
$fillrow[] = $td;
$tr->setContent($fillrow);
$filltable[] = $tr;
Dateianhänge
article-list-reloaded.zip
corr14, fehlerbereinigt
(33.87 KiB) 156-mal heruntergeladen
article-list-reloaded.zip
corr13, fehlerbereinigt
(33.34 KiB) 114-mal heruntergeladen
article-list-reloaded.zip
corr12, fehlerbereinigt
(34.05 KiB) 151-mal heruntergeladen
Zuletzt geändert von homtata am Do 20. Sep 2018, 13:26, insgesamt 18-mal geändert.

benja
Beiträge: 168
Registriert: Mi 31. Aug 2005, 10:54
Wohnort: Köln
Kontaktdaten:

Re: [NEU] Article List Reloaded (ALR)

Beitrag von benja » Sa 21. Sep 2013, 20:58

Hallo

super, dass du die neue Version schon hochgeladen hast. Vielen Dank dafür.
Beim Schnelltest ist mir folgendes aufgefallen:

Gibt es zwei Listen in einem Artikel und in der ersten wurde “ausgewählte" bei "zusätzliche Kategorien" eingestellt, werden auch diese Artikel in der zweiten Liste ausgewählt. Hier kann ich keine anderen Kategorien wählen.

Bilder aus dem Modul content_image werden bei mir nicht angezeigt :-( Bild aus Text teste ich gleich.

LG
benja

benja
Beiträge: 168
Registriert: Mi 31. Aug 2005, 10:54
Wohnort: Köln
Kontaktdaten:

Re: [NEU] Article List Reloaded (ALR)

Beitrag von benja » Sa 21. Sep 2013, 21:17

Bild aus Text geht bei mir auch nicht. Vielleicht liegt es nicht am Modul, sondern an mir?

homtata
Beiträge: 977
Registriert: Mi 14. Jan 2004, 14:41
Kontaktdaten:

Re: [NEU] Article List Reloaded (ALR)

Beitrag von homtata » Sa 21. Sep 2013, 21:24

Hallo benja,

also bei mir verhalten sich die Felder für "zusätzliche Kategorien" in diesem Fall (2x eingebunden) komplett unabhängig... Auch das Einbinden von CMS_IMG und CMS_IMGEDITOR funktioniert bei mir ohne Probleme (für den Test arbeite ich mit einer praktisch identischen Version zu content_image).
Hast du die Liste irgendwo eingebunden, wo vorher die ALA drin war? Vielleicht liegt es daran, dass noch Werte aus den alten Containern da sind, die sich irgendwie behakeln. Möglicherweise behebt sich das Problem, wenn du mal beide Listen erheblich umkonfigurierst und neu speicherst...?

Hast du denn die Smarty-Vorlage korrekt angepasst an die Element-Nummer? Siehst du denn in der Konfiguration die Bildcontainer und kannst sie zuordnen?

Nicht vergessen: die Namen aller Variablen haben sich geändert!

benja
Beiträge: 168
Registriert: Mi 31. Aug 2005, 10:54
Wohnort: Köln
Kontaktdaten:

Re: [NEU] Article List Reloaded (ALR)

Beitrag von benja » Sa 21. Sep 2013, 21:46

Die Bilder werden jetzt angezeigt, da hatte ich einen Fehler in der Vorlage, aber das Konfigurieren geht immer noch nicht :-(

homtata
Beiträge: 977
Registriert: Mi 14. Jan 2004, 14:41
Kontaktdaten:

Re: [NEU] Article List Reloaded (ALR)

Beitrag von homtata » Sa 21. Sep 2013, 21:59

schreib bitte GANZ genau, was nicht geht, wann sich was wie wo ändert oder nicht oder auswirkt oder nicht, sonst ist das ein bisschen schwierig ;-)
Genauer Klickweg, wann auf Speichern gedrückt usw.
Hilft es, in diese Modulcontainer kurzzeitig ein anderes Modul zu hängen, das konfiguriert werden muss, das zu konfigurieren und zu speichern, dann wieder die ALR einzuhängen?
Ich habe fast alle Variablennummern des Originals beibehalten, aber eben nur fast - einige Strukturen haben sich geändert, vielleicht rühren daher noch Probleme.
Nutzt es was, wenn du über das "System"-Menü mal alle Contenido-Caches leerst?

benja
Beiträge: 168
Registriert: Mi 31. Aug 2005, 10:54
Wohnort: Köln
Kontaktdaten:

Re: [NEU] Article List Reloaded (ALR)

Beitrag von benja » Sa 21. Sep 2013, 22:20

Ich habe jetzt zwei andere Module in die Vorlage eingesetzt (Article Include), diese konfiguriert und anschließend wieder die ALA eingesetzt. Bei der Konfiguration bin ich von oben nach unten durchgegangen. Also erst akiv, Grundeinstellungen, Elemente zuweisen und dann das gleiche für die zweite Liste.
Hilft es vielleicht wenn ich die Zugangsdaten schicke?

LG
benja

homtata
Beiträge: 977
Registriert: Mi 14. Jan 2004, 14:41
Kontaktdaten:

Re: [NEU] Article List Reloaded (ALR)

Beitrag von homtata » Sa 21. Sep 2013, 22:24

ich kanns mir gern mal anschauen, Zugangsdaten bitte per PM ;-)

joe_ma
Beiträge: 101
Registriert: Sa 2. Jun 2007, 07:55
Kontaktdaten:

Re: [NEU] Article List Reloaded (ALR)

Beitrag von joe_ma » Mi 20. Nov 2013, 08:57

Hallo

Besten Dank für dieses Modul. Es entspricht voll und ganz meinen Bedürfnissen!

Ein kleines Problem habe ich noch damit:

Beim content_header_first Modul, das ich für die Seitenüberschriften verwende, werden ja die tags entfernt und durch h1-tags ersetzt, weil der Editor immer p-tags einfügt.

Wenn ich nun mit dem ALR eine Liste ausgeben lasse, werden diese p-tags nicht gelöscht, was zu unschönen Verschachtelungen und damit zu nicht validem Code führt.
Wo muss ich was einfügen, damit ALR bei den Überschriften auch die tags entfernt?

Besten Dank für Hinweise.
Gruss

Jörg Matter

homtata
Beiträge: 977
Registriert: Mi 14. Jan 2004, 14:41
Kontaktdaten:

Re: [NEU] Article List Reloaded (ALR)

Beitrag von homtata » Mi 20. Nov 2013, 10:11

Hallo joe_ma,

da müsstest du noch eine zusätzliche Zeile Code in den Moduloutput schummeln. Habs jetzt nicht getestet, aber es müsste folgende Stelle sein: Füge bitte nach den Zeilen

Code: Alles auswählen

			$article['headline_full'] = text2utf8( $db2->f('headline') , false , $aSettings['UseUTF8Decoding'] );
			$article['headline_trimmed'] = capiStrTrimAfterWord($article['headline_full'], $aSettings['HeadlineLength']).'...';
			$article['headline']  = ($aSettings['HeadlineLength'] > 0 && strlen($article['headline_full'] ) > $aSettings['HeadlineLength']) ? $article['headline_trimmed'] : $article['headline_full'] ;
(das ist ca. ab Zeile 325) noch folgendes ein:

Code: Alles auswählen

			$article['headline']  = strip_tags($article['headline'] );
und schau mal, ob es dann klappt.

LG

joe_ma
Beiträge: 101
Registriert: Sa 2. Jun 2007, 07:55
Kontaktdaten:

Re: [NEU] Article List Reloaded (ALR)

Beitrag von joe_ma » Mi 20. Nov 2013, 10:44

Hallo homtata

Ja, genau das hat's gebracht!
Vielen Dank!
Gruss

Jörg Matter

derSteffen
Beiträge: 847
Registriert: Mi 14. Dez 2005, 16:15
Wohnort: Königs Wusterhausen bei Berlin
Kontaktdaten:

Re: [NEU] Article List Reloaded (ALR)

Beitrag von derSteffen » Di 26. Nov 2013, 14:50

Ich habe mal eine Frage,

hat das auch jemand beobachtet, dass wenn ich ein Bild aus dem Text generieren lasse ... das ein anderes mit dem gleichen Namen aus der Dateiverwaltung (natürlich im anderen Ordner) generiert wird? Wenn ich das über "nur Bild" einsetze und generieren lasse passiert das nicht, aber bei Bild aus Text. Habe auch schon cache gelöscht und auch es auch mit anderen Bilder ausprobiert die mit gleichen Dateinnamen drin sind, aber natürlich verschieden aussehen.
Das Phänomen, konnte ich schon in der Article Liste Advanced v3.2 Beta 1 beobachten.

Vielen Dank fü das Feedback!

MfG Steffen

homtata
Beiträge: 977
Registriert: Mi 14. Jan 2004, 14:41
Kontaktdaten:

Re: [NEU] Article List Reloaded (ALR)

Beitrag von homtata » Di 26. Nov 2013, 15:22

Hallo Steffen,

ja, das ist richtig. Das Problem bei "Bild aus Text" ist, dass ich den Teil nicht umschreiben konnte. Bisher wird lediglich der Bildername aus dem Fließtext extrahiert, aber nicht der ganze zugehörige Pfad - da fehlt mir auch das ad-hoc-Wissen, wie man das umsetzen kann. Der Bildername wird dann mit der Datenbanktabelle für die uploads abgeglichen, und wenn da mehrere Treffer für den gleichen Namen sind, dann wird halt der erste Treffer genommen. In deinem Fall also treffsicher der falsche.

Einzige Lösung: Ordnerübergreifend eindeutige Dateinamen verwenden!

LG

Faar
Beiträge: 1345
Registriert: Sa 8. Sep 2007, 16:23
Wohnort: Brandenburg
Kontaktdaten:

Re: [NEU] Article List Reloaded (ALR)

Beitrag von Faar » Di 26. Nov 2013, 16:24

homtata hat geschrieben:Bisher wird lediglich der Bildername aus dem Fließtext extrahiert, aber nicht der ganze zugehörige Pfad - da fehlt mir auch das ad-hoc-Wissen, wie man das umsetzen kann.
Hast du mir den Code-Teil, der das Bild extrahiert und wo der Pfad dann fehlt?
Ich hatte früher mal oft damit zu tun, etwas aus HTML-Quelltext zu extrahieren. Vielleicht kann ich da helfen.
Fliegt der Bauer übers Dach, ist der Wind weißgott nicht schwach.

homtata
Beiträge: 977
Registriert: Mi 14. Jan 2004, 14:41
Kontaktdaten:

Re: [NEU] Article List Reloaded (ALR)

Beitrag von homtata » Di 26. Nov 2013, 16:44

Aber sicher doch:

Das Extrahieren passiert ab Zeile 389; der Originaltext wird in $sTmpValue abgelegt (kommt aus der Datenbank) und dann weiter bearbeitet:

Code: Alles auswählen

                                                    $sTmpValue = urldecode($db3->f('value'));

                                                    $regEx = "/<img[^>]*?>.*?/i";
                                                    $match = array ();
                                                    preg_match($regEx, $sTmpValue, $match);

                                                    $regEx = "/(src)(=)(['\"]?)([^\"']*)(['\"]?)/i";
                                                    $img = array ();
                                                    preg_match($regEx, $match[0], $img);
                                                    $img_src = preg_split("/\//", $img[0]);

                                                    $img_name = $img_src[count($img_src) - 1];
                                                    $img_name = preg_replace("/\"/", "", $img_name);

                                                    $name = strtolower($img_name);
LG

Antworten