[phpBB Debug] PHP Warning: in file [ROOT]/ext/tas2580/seourls/event/listener.php on line 213: Undefined array key "FORUM_NAME"
REDAXO Forum • [solved] include Article in Nicht-CMS-Teil einer Website - Problem gelöst
Seite 1 von 1

[solved] include Article in Nicht-CMS-Teil einer Website - Problem gelöst

Verfasst: 7. Mai 2017, 13:07
von lakelucerne
Hallo zusammen

Ausgangslage:
- Redaxo CMS neu eingerichtet, liegt im folder httpdocs/cms
- Website vorhanden (php und html; liegt im Folder httpdocs/de) und soll nicht jetzt durch cms abgelöst werden
- Artikelinhalt welcher in CMS gepflegt wird, soll in vorhandene Website integriert werden

Wie funktioniert das? Ich habs mit
<? include("../cms/index.php?article_id=2"); ?>
probiert, aber das klappt leider nicht.

iframe ist aus meiner Sicht nicht zu verwenden, da der Inhalt dynamisch in der Länge ändert.

Eigentlich bräuchte ich quasi den Befehl
REX_ARTICLE[id=2]
in einer externe php Datei aufrufen, falls das so funktioniert.

Ich danke für eure Unterstützung
Gruss Philipp

Re: include Article in Nicht-CMS-Teil einer Website

Verfasst: 7. Mai 2017, 17:53
von anita
hallo Philipp,

ich glaub nicht, dass das mit include geht. includen kann man Dateien. das hier

Code: Alles auswählen

../cms/index.php?article_id=2
verweist auf keine Datei

ein redaxo-article ist keine Datei sondern die einzelnen slices stehen in der DB und müssen ausgelesen werden.

beschreib mal genauer, was Du erreichen willst. Soll der gesamte CMS-Inhalt in eine andere website integriert werden oder nur bestimmte teile?

Re: include Article in Nicht-CMS-Teil einer Website

Verfasst: 7. Mai 2017, 19:10
von lakelucerne
Hallo Anita

Konkret ist es so, dass ich eine bestehende Website einer Genossenschaftlich betriebenen Transportbahn habe.
Auf der Einstiegsseite wird Betriebsstatus angezeigt, und auch eine Ankündigung z.B. für eine Revision.
Das ist jetzt mit "statischen" php files realisiert, das heisst, ich muss die eingebetteten Files manuell in der Hauptseite "frame_inhalt.php" aktivieren/deaktivieren/aktualisieren. Ich möchte aber jetzt nicht die gesamte Website umbauen auf CMS, wenn das verständlich ist.

Der Betriebsleiter soll aber die Möglichkeit haben, selber über (in dem Falle habe ich REDAXO gewählt) das CMS in einem Backend die Infoseite mit den Modulen/Blöcken zusammenstellen. So kann auch kurzfristig (und von mir unabhängig) mal was eingetragen werden.

Block 1: "Bahn in Betrieb"
Block 2: "Bahn ausser Betrieb"
Block 3: "[Ausfallgrund] von [Startdatum] bis [Enddatum] (also z.B. "Revision von 1.1.2017 bsi 10.1.2017")
--> Das mit den Blöcken und dem Artikel klappt; ebenso der Aufruf in der Voransicht (http://www.[DOMAIN].ch/cms/index.php?article_id=2)

(als Erweiterung gibts da noch ein Restaurant, das dann auf gleichem Weg die Events/Öffnungszeiten publizieren soll).

Ich gebe ihm da eine kleine Auswahl an Blöcken, die er dann einfach einfügen / Zusammenfügen muss im Info-Artikel (id=2) und das ist alles.
Nun möchte ich diese Infoseite (id=2), bestehend aus den Blöcken in die bereits vorhandene Website einbetten, so wie ich das heute bereits mache mit include().
Es soll also nicht die ganze CMS Seite integriert werden (im Redaxo Teil gibts auch ausser den einzelnen Artikeln für die Bahn und Restaurant noch nichts weiteres, auch kein Design).

Ist ein Lösungsansatz gewisse php fragmente in die bestehende "frame_inhalt.php" Datei einzubetten, damit der Aufruf REX_ARTICLE[id=2] funktioniert?

Bin gespannt auf weiteren input.
lg Philipp

Re: include Article in Nicht-CMS-Teil einer Website

Verfasst: 7. Mai 2017, 21:04
von Ingo
Bis Redaxo eine Seite ausgibt, passiert ne Menge. Der Core wird geladen, die Addons werden geladen. Erst danach wird die Ausgabe generiert. Sprich einfach irgendeine Datei inkludieren geht nicht. Du musst den entsprechenden Artikel schon aufrufen, möglich wäre das zb clientseitig per Ajax oder serverseitig per cURL.

Einfacher und robuster wird es allerdings sein, die aktuelle Seite eben auf Redaxo umzustellen.

Re: include Article in Nicht-CMS-Teil einer Website

Verfasst: 8. Mai 2017, 01:01
von lakelucerne
Ich habe eine Lösung gefunden.

Ich habe den Quelltext der bestehenden php Datei als Template definiert und dann den Artikel mit dem Linkaufruf REX_ARTICLE[id=2] integriert.
Im Frameset bzw. in der alten Navigationsleiste rufe ich nun den neuen Artikel auf.
http://www.[DOMAIN].ch/cms/index.php?article_id=2 ins Frame bzw. alte Menü eingebunden.

klappt bestens.

grüsse philipp

Re: include Article in Nicht-CMS-Teil einer Website - Problem gelöst

Verfasst: 8. Mai 2017, 14:32
von Thomas.Skerbis
Alternativ könnte man auch den Output des REDAXO-Artikels in eine Datei ausgeben und diese dann in einem anderen Skript einbinden. Um es aktuell zu halten kann man einen Cronjob anlegen.