Schnittstelle für Newsartikel erstellen

  • Hallo zusammen, ich muss bei einem Projekt extern erstellte Beiträge automatisiert in webEdition anlegen und benötige noch ein bisschen Hilfe/Anregung.

    Ich bin anderen Lösungen als mit PHP nicht abgeneigt, vielleicht geht es auch direkt und einfacher mit we-Tags? Die Daten werden im json-Format ankommen, die Seite/Seiten werden angelegt und müssen dann händisch veröffentlicht werden.

    Getestet habe ich es mit PHP und das funktioniert auch soweit:

    Einziges Problem ist hier, dass die gewünschte Ordnerstruktur /aktuelles/2026/06/ damit nicht angelegt wird, die Beiträge wandern in den Ordner "/aktuelles/" mit der ID 10. Vielleicht hat hier jemand noch einen Tipp?

    Gruß Heiko

  • Hallo Heiko,

    wir machen so etwas ähnliches mit Galerieordnern, die angelegt werden müssen.

    Du könntest am oder vor dem Import der News mit php abfragen, aus welchem Jahr und welchem Monat die News stammt und dann per php ein Verzeichnis anlegen, dessen ID dann als parentID für das zu erzeugende oder zu speichernde News-Dokument angelegt wird.

    Die Variable $IDcurrentNews wäre dann das Verzeichnis (ID), in das die betreffende News abgelegt wird.
    Allerdings müsstest Du noch klären, wie Du verfährst, wenn für den gleichen Monat ein zweite oder gar dritte News importiert werden würde.

    Ich habe das jetzt alles mal so runtergeschrieben - also keine Garantie für einwandfreie Funktion. Sollte auch nur eine kleine Hilfestellung sein.

    Ach ja, und updatesicher ist das selbstredend nicht!!!

  • Hallo Ulrich,

    Danke für den Input. Es funktioniert jetzt alles. Ich mache eine Prüfung mit is_dir() ob der Jahres-/Monatsordner angelegt/vorhanden ist. Dass es nicht updatesicher ist, ist mir bewusst aber ich wüsste nicht, wie ich es mit WE-Tags machen könnte. Es gibt zwar <we:write type="document" /> aber das scheidet bei meinem Projekt aus.

  • Hallo zusammen, es sind jetzt doch noch weitere Probleme aufgetaucht. Enthält der Text Emojis wie. z.B. 🚨💧werden die Emojis mit "_" ersetzt. Kann es sein, dass innerhalb von webEdition gefiltert wird? Getestet mit wysiwyg="true", wysiwyg="false", selbst bei einer Eingabe im Backend werden die Emojis wieder rausgefiltert.

    Mir würde schon ein einfaches Textfeld reichen, Hauptsache alle Zeichen/Icons usw. bleiben erhalten.

  • Ohne es genau zu wissen, vermute ich, dass die Zeichenübermittlung in den Textboxen von webEdition nicht korrekt interpretiert werden kann (Emojis sind keine html-entities?).

    Einen Filter schließe ich aus, denn ich kann mir nicht vorstellen, dass ein solcher eingebaut wäre.

    Hast Du denn mal probiert, ob das manuelle Einsetzen eines Emojis in eine Textbox mit wysiwyg="true" zum gleichen oder einem anderen Ergebnis führt?

  • Hi, es gibt eine Einschränkung mit Emojis und zwar werden (ich meine aus technischen Gründen bzgl der DB) nicht alle Emojis gespeichert und hier durch den Unterstrich ersetzt. Du könntest versuchen, die entsprechenden emojis durch die entsprechenden HTMLEntities zu ersetzen o.ä.

  • Hallo Ulrich und Nils,

    wysiwyg="true" oder wysiwyg="false" ist egal, Emojis fliegen immer raus. Ich habe gelesen, dass es mit utf8mb3 und Emojis Probleme gibt. Erst mit utf8mb4 soll das funktionieren. Da webEdition mit utf8mb3 läuft, kann es daran liegen. Umwandlungen/Ersetzungen sind mir zu fehleranfällig.

    Ich muss hier auch noch etwas ausholen: die Emojis sind nicht in den Beiträgen selbst, es werden zusätzlich Social Media Texte (mit Emojis) mitgeliefert und auf den Seiten gespeichert und sollten dort auch bearbeitbar/änderbar sein.

    Ich speichere die Daten jetzt als *.json und in einen Ordner und prüfe den Inhalt über Filezilla. Von einem Freigabeordner werden die Texte dann automatisiert auf Social Media Kanälen gepostet.

  • Ja, WE setzt noch mb3 ein. Mit mb4 gab es damals massive Probleme. Die DB misst immer noch Bytes und nicht Zeichen. Daher stellt sich dann auch die Frage, was wir der DB sagen sollen, wenn du einstellst hier sind 100 Zeichen zulässig. Einfach mal 400 Bytes reservieren, es könnten ja 100 Emojis sein? Oder doch nur 300, und dann nach 75 Emojis abbrechen?

Participate now!

Don’t have an account yet? Register yourself now and be a part of our community!