Seite 1 von 4

mpArticleInclude (aka Article Include)

Verfasst: Mo 9. Sep 2013, 23:58
von xmurrix
Das Modul mpArticleInclude basiert auf der Version 1.0 des Moduls Article Include aus dem CONTENIDO Forum.

Damit lassen sich über das Layout per Marker definierte Inhalte aus CONTENIDO Seiten extrahieren und einbinden. Das Modul ist nicht dafür geeignet, um einzelne Content-Typen aus Artikeln zu extrahieren.

Dabei wird mit Hilfe der Snoopy Klasse eine reguläre HTTP Anfrage zum Artikel abgesetzt um dann den Inhalt der erhaltenen Antwort, also die Ausgabe zwischen den Markern, auszugeben.

Das Originalmodul ist unter folgender Seite zu finden:
http://forum.contenido.org/viewtopic.ph ... 51#p132951


INSTALLATION/VERWENDUNG

Inhalt des Modulpackages in das Modulverzeichnis des Mandanten, z. B. in cms/data/modules/ entpacken.

In gewünschten Layouts die Marker <!--start:content--> und <!--end:content--> setzen, um die Inhalte zwischen den Markern extrahieren zu können. Die Marker sollten HTML-Kommentare sein, damit sie die Ausgabe der Artikel nicht beeinträchtigen, z. B.:

Code: Alles auswählen

...
<!--start:content-->
    <div id="content">
        <container id="123" name="content" types="content" mode="optional" default="">content</container>
        <container id="124" name="content" types="content" mode="optional" default="">content</container>
    </div>
<!--end:content-->
...
Dieses Modul in einer Artikelvorlage einrichten, in der die Inhalte anderer Artikel (die auf Layouts mit den Markern basieren) eingebunden werden sollen.

Einen Artikel erstellen, die auf die Vorlage basiert.

In der Artikelkonfiguration die Kategorie und den Artikel wählen, aus der der Inhalt eingebunden werden soll.


CHANGELOG

2014-07-23 mpArticleInclude 1.3.3 (für CONTENIDO 4.9.x)
  • bugfix: Ermitteln der Länge des Ende-Markers
2013-11-17 mpArticleInclude 1.3.2 (für CONTENIDO 4.9.x)
  • change: Überarbeiten der Moduleingabe und -ausgabe
  • change: Englische Übersetzungen
2013-09-19 mpArticle_Include 1.3.1 (für CONTENIDO 4.9.x)
  • change: Inhalt inkl. Ende-Marker extrahieren
2013-09-10 mpArticle_Include 1.3 (für CONTENIDO 4.9.x)
  • Erste Veröffentlichung des mpArticle_Include Moduls

DOWNLOAD

Das Modul könnt ihr vom GitHub Repository herunterladen:
https://github.com/purcaholic/mpArticleInclude

Grüße
xmurrix

Re: mpArticle_Include (aka Article Include)

Verfasst: Mi 18. Sep 2013, 13:45
von josh
Hallo xmurrix,

da ist ein kleiner Fehler drin:
Das end Tag wird mit rausgefiltert.

Dies Zeile austauschen/ergänzen:

Code: Alles auswählen

$modContext->diffLen = $modContext->endPos - $modContext->startPos;
durch

Code: Alles auswählen

$modContext->diffLen = $modContext->endPos - $modContext->startPos + strlen($modContext->cmsEndMarker);
Im Frontend hat das keine Probleme gemacht. Im Backend hat es dadurch diesen Fehler gegeben.
http://forum.contenido.org/viewtopic.ph ... 74#p160583

Viele Grüße

josh

Re: mpArticle_Include (aka Article Include)

Verfasst: Mi 18. Sep 2013, 23:22
von xmurrix
Hallo josh,

danke für das Feedback.

Habe mir das gerade eben angesehen, konnte kein Problem feststellen.

Das einzige, was vielleicht anzumerken ist, dass extrahierte Inhalt nicht den Marker für das Ende des zu extrahierenden Inhalts hat.

Hat z. B. man den Inhalt

Code: Alles auswählen

...
<!--start:content-->
    <div id="content">
        <container id="123" name="content" types="content" mode="optional" default="">content</container>
        <container id="124" name="content" types="content" mode="optional" default="">content</container>
    </div>
<!--end:content-->
...
extrahiert das Modul folgendes daraus:

Code: Alles auswählen

<!--start:content-->
    <div id="content">
        <container id="123" name="content" types="content" mode="optional" default="">content</container>
        <container id="124" name="content" types="content" mode="optional" default="">content</container>
    </div>
Das Fehlen des Markers <!--end:content--> sollte keinen Fehler im Backend verursachen, zumal es sich hierbei um einen HTML-Kommentar handelt.

Dennoch übernehme ich gerne deinen Vorschlag in das Modul, wenn <!--start:content--> im extrahierten Inhalt vorkommt, dann sollte man konsistent bleiben und auch <!--end:content--> haben.

Gruß
xmurrix

Re: mpArticle_Include (aka Article Include)

Verfasst: Do 19. Sep 2013, 13:59
von josh
Hallo Murat,

im Frontend sah alles gut aus, wieso das im Backend bei mir auftrat weis ich auch nicht.
Wie auch immer, mein Problem war damit beseitigt.

josh

Re: mpArticle_Include (aka Article Include)

Verfasst: Do 3. Okt 2013, 21:36
von josh
Hallo Murat,
xmurrix hat geschrieben: Das Fehlen des Markers <!--end:content--> sollte keinen Fehler im Backend verursachen, zumal es sich hierbei um einen HTML-Kommentar handelt.
du hast natürlich recht. Habe jetzt ein bischen Zeit gehabt und mir das ganze nochmal angeschaut.
Das Problem wurde durch meine Konfiguration hervorgerufen.
Ich habe den Eingabebereich des Moduls nicht verwendet, sondern idart und idcat fest übergeben.

$modContext->cmsStartMarker enthielt Datenmüll weil CMS_VALUE[3]" == '' nicht leer war. Auch nach der Änderung
enthielt $modContext->endPos keinen Wert. Da ging einiges durcheinander.

Merkwürdig allerdings das dieses Problem nur im Backend auftrat.
Meine "Lösung" hat das Problem wohl zufällig behoben.

Viele Grüße

josh

Re: mpArticle_Include (aka Article Include)

Verfasst: Sa 19. Okt 2013, 12:33
von rude
Bei mir funktioniert das leider nicht:(

Re: mpArticle_Include (aka Article Include)

Verfasst: Mo 21. Okt 2013, 08:52
von xmurrix
rude hat geschrieben:Bei mir funktioniert das leider nicht:(
Hallo eude,

wen du uns sagen kannst, was genau nicht funktioniert, dann können wir dir besser weiterhelfen.

Kriegst du einen Fehler in der Datei contenido/logs/error.log oder auch in der Ausgabe?

Schau dir auch den Quelltext der Ausgabe an, eventuell ist da der Fehler als ein HTML-Kommentar ausgegeben.

Gruß
xmurrix

Re: mpArticleInclude (aka Article Include)

Verfasst: Do 30. Jan 2014, 21:32
von Schneemensch
Hallo, es gibt ein BUG, nach Update auf 4.9.3.

in den Einstellungen wird aus
<!--start:content--> immer:

<!--start:content-->

Wie kann man das beheben?
Kann jemand helfen?

edit: Nach Update auf die Version 1.3.2 geht es nun, seltsamerweise muss ich letztens eine 1.2 geschnappt haben. Konnte es in den Layouts umswitchen und nun geht es. Alles up2date halten hilft ;)

Re: mpArticleInclude (aka Article Include)

Verfasst: Fr 31. Jan 2014, 20:22
von xmurrix
Hallo Schneemensch,

danke für das Feedback, war gerade am Schreiben einer Antwort, als ich gemerkt habe, dass sich das schon erledigt hat.

Gruß
xmurrix

Re: mpArticleInclude (aka Article Include)

Verfasst: Fr 28. Feb 2014, 00:43
von josh
Hallo Murat,

ich habe das Modul in con 4.9.3 eingebaut.
Meine Probleme die ich oben im Thred hatte waren nicht mehr da.

Anfangs hatte ich ein Problem weil ich durch Tidy die Kommentare entfernt hatte :roll:

Du hast den Code ja noch heftig überarbeitet. Ich werde mich mal da durchkämpfen um zu lernen.

Danke

Josef

Re: mpArticleInclude (aka Article Include)

Verfasst: Mo 24. Mär 2014, 11:14
von paverm
Hallo Herr Purat,

ich habe das Modul bei mir eingebunden, im Layout die Marker gesetzt, kann auch die Konfiguration durchführen bekomme aber werde im Backend als auch im Frontend irgendetwas zu sehen.

Viele Grüße
Paul Vermeulen

Re: mpArticleInclude (aka Article Include)

Verfasst: Do 27. Mär 2014, 17:24
von farina
Hallo Murat,

ich habe das Modul eingebaut.
Auf den ersten Blick klappt es auch, aber es produziert einen Fehler im Quelltext und damit auch in nachfolgendem Inhalt.

Hinter dem End-Marker wird ein unfertiger Abschluß-body-Tag eingefügt. Das sieht so aus:

Code: Alles auswählen

<!--end:content-->
</bod
Ich habe alles überprüft, was mir eingefallen ist. Wodurch kann der Fehler kommen?

LG farina

Re: mpArticleInclude (aka Article Include)

Verfasst: Mo 9. Jun 2014, 16:01
von farina
Hallo,

nun habe ich in 2 weiteren Websites das Modul eingebaut. Überall habe ich das gleiche Problem.
Das Modul erzeugt einen unfertigen End-body-Tag
</bod
Gruß farina

Re: mpArticleInclude (aka Article Include)

Verfasst: Mi 25. Jun 2014, 07:31
von McHubi
Hallo Murat,

habe das Modul in einer 4.9.3 nach Deinen Anweisungen eingebunden aber der Reiter "Konfiguration" bleibt "leer", sobald ich es in der Vorlage einbinde. Liegt es ggf. an dieser Zeile des Inputs?

Code: Alles auswählen

cInclude('module', 'includes/class.module.mparticleinclude.php');
Wo ist die Datei zu finden? In der Zip-Datei ist sie jedenfalls nicht dabei... Auskommentieren bringt übrigens auch nichts... :?

Danke Dir für einen Tipp! :D

Re: mpArticleInclude (aka Article Include)

Verfasst: Do 24. Jul 2014, 16:55
von matthiasschnueriger
Hallo Farina

Konntest du das Problem mit dem abschliessenden Body-Tag lösen? Ich habe dasselbe Problem...

Code: Alles auswählen

</bod
Oder wäre Murat so nett, sich diesem kleinen Schönheitsfehler anzunehmen?

Danke und Gruss
Matthias