Scrivito content browser

Neuigkeiten in der Scrivito Example-App!

Mit über 100 zusammengeführten Pull-Requests haben wir viele Änderungen und Verbesserungen an der Scrivito Example-App für Sie vorgenommen. Deshalb möchten wir Ihnen mit einer Zusammenfassung einen Überblick über die Aktualisierungen und Änderungen des letzten Jahres geben.

Sollten Sie Ihr auf der Example-App basierendes Projekt nicht auf dem neuesten Stand gehalten haben, empfehlen wir Ihnen, die Änderungen auf den aktuellen Master umzuziehen oder die geschlossenen Pull Requests zu überprüfen, um alle Details der Änderungen schrittweise nachzuvollziehen.

Widget-spezifische Styles

Die Leistung der Example-App war für unsere Entwicklung von größter Bedeutung. Vor diesem Hintergrund - und um Widgets und Seiten modularer zu gestalten - haben wir das Styling-CSS für die meisten Widgets von einer großen index.css-Datei in eine eigene Datei im jeweiligen Ordner des Widgets verschoben.

Diese Änderung trägt nicht nur dazu bei, ihre Projekte leistungsfähiger zu machen, indem nicht genutzte Stile leichter entfernt werden können, sondern ermöglicht es auch, das “look and feel” dieser Widgets leichter zu ändern.

Widget-spezifische Styles

Cookies und DSGVO-Konformität

Die in Scrivito enthaltene Cookie-Zustimmungs-Funktion durchlief mehrere Iterationen, nachdem die DSGVO-Anforderungen vom Gesetzgeber klarer formuliert und besser dokumentiert wurden.

Mit der neuesten Version der Cookie-Zustimmungs-Funktion wird das Tracking erst begonnen, nachdem die Benutzer ihre Zustimmung gegeben haben.

Viele Dienste von Drittanbietern beginnen mit dem Tracking bereits, sobald sie geladen sind. Das ist nicht DSGVO-konform und hat uns weiterhin dazu veranlasst, das YouTube-Video-Paket und die Unsplash-Bilder aus früheren Versionen auszutauschen.

Alle in die Example-App integrierten Dienste sollten von Ihnen überprüft werden. Die Dienste, die Tracking-Cookies verwenden, müssen in die Datei tracking.js aufgenommen werden, um die DSGVO-Konformität zu gewährleisten.

Cookie consent

Scrivito.extractText

Mit der Aufnahme von extractText in Scrivito 1.10.0 waren wir in der Lage, unsere eigene Implementierung zu entfernen und die Aufgabe Scrivito zu überlassen.

Dies führte zu weniger Code und entfernte unnötige Komplexität. Nun ist Scrivito in der Lage, einen Auszug der von ihnen bereitgestellten Inhalte anzuzeigen, ohne dass Sie zusätzliche Schritte durchführen müssen.

const extractedText = Scrivito.extractText(obj);

Validierungen hinzugefügt

Content-Validierungen sind bereits seit Veröffentlichung des Scrivito SDKs 1.7.0 verfügbar und wurden dann in Version 1.9.0 weiter verfeinert.

Durch die Aufnahme einiger einfacher und typischer Validierungen in die Example-App können Entwickler sehen, wie einfach es ist, Echtzeit-Validierungen zu Ihrem Projekt hinzuzufügen.

Unsere Validierungen haben viele Möglichkeiten eröffnet, so dass wir etliche zur Example-App hinzugefügt haben. Jedoch haben wir aufgrund des Kundenfeedbacks die Anzahl der ergänzten Validierungen dann doch wieder reduziert, um die App nicht zu komplex werden zu lassen.

Mit diesen nun wenigen Validierungen möchten wir Sie dazu anregen, Ihre eigenen für Ihr Team passenden Validierungen zu implementieren.

Vereinfachte CSP-Header

Content Security Policies sind nicht einfach, aber umso wichtiger für die Sicherheit Ihrer Website. Da es schon schwer genug ist, die richtigen Richtlinien zu erstellen, haben wir die Implementierung von CSP-Headern in Ihr Projekt möglichst einfach gemacht.

Wir haben die CSP-Header auf ein JSON-Format reduziert. Das macht es für Sie leichter, die Struktur des Headers zu verstehen und zu modifizieren. Weitere Informationen finden Sie im Tutorial.

Datum “in-place” bearbeiten

Bisher mussten Redakteure bei der Bearbeitung eines Datumsattributs in die Widget- oder Seiteneigenschaften gehen, um Änderungen vorzunehmen.

Jetzt kann die Bearbeitung ebenso wie die Bearbeitung von Texten “in-place“, d.h. an der Stelle vorgenommen werden, an der das Datum auf der Website angezeigt wird.

Datum “in-place” bearbeiten

Kleinerer CSS-Fußabdruck

Durch einfaches “Auskommentieren” ungenutzter CSS-Module haben wir die Größe des Pakets, das heruntergeladen werden muss, reduziert. Das bedeutet: mehr Leistung!

Wenn es also eine Bootstrap-Funktion gibt, von der Sie erwarten, dass sie funktioniert, was aber nicht der Fall ist, überprüfen Sie bitte, ob das Modul von uns auskommentiert wurde, weil es nicht verwendet wurde.

Fingerabdrücke in JS- und Prerender-Dateien

Durch Fingerabdruckdateien wird sichergestellt, dass immer die neueste Version der statischen Dateien verwendet wird. Dies ermöglicht bessere Cache-Mechanismen und wurde eingeführt, um Power-Usern die Implementierung zu erleichtern. Es handelt sich um eine bewährte JavaScript-Praxis.

Diese Funktion ist auch die Grundlage für einige neue Funktionen, an denen wir gerade arbeiten.

React's .hydrate und Scrivito.updateContent

Im August 2019, als .hydrate von React endlich stabil funktionierte, haben wir es zur Example-App hinzugefügt, um die Anwendung besser zu rendern. Zuvor wurde die App bei einer vorgerenderten Anwendung nach dem Laden erneut gerendert, was zu einem Flackern führte und keine optimale Benutzerfreundlichkeit bot. Mit React .hydrate geht die React-Anwendung nahtlos von der vorgerenderten Version in die dynamische Version über.

Um schnelle Änderungen an veröffentlichten Inhalten sicherzustellen, wurde außerdem Scrivito.updateContent hinzugefügt. Diese Funktion, die in der Startphase der Anwendung nach React .hydrate aufgerufen wird, aktualisiert den Inhalt beim Prerendern und bewirkt, dass die erste nutzbare Ansicht der Seiten nahezu sofort auf dem veröffentlichten Inhalt basiert.

Kleinere Fehlerbehebungen

Die folgenden Pull-Requests beheben kleinere Fehler und können von Ihnen genutzt werden, um Ihre App nachzuziehen.

Wir evaluieren und aktualisieren kontinuierlich die im Projekt verwendeten npm-Pakete sowie die neuesten Versionen des Scrivito SDK. Da es sich bei der Example-App um eine Open Source-Anwendung handelt, können Sie alle von uns vorgenommenen Änderungen jederzeit einsehen, indem Sie sich die geschlossenen Pull-Requests ansehen. Wenn Sie eine Funktion oder Verbesserung vermissen, lassen Sie es uns bitte wissen oder senden Sie uns einen Pull-Request.

Scrivito CMS: der Content-Hub für Ihre Websites und Apps

Scrivito CMS ist unsere komplette Unternehmenslösung für Digital-Experience-Plattformen, Websites und Webanwendungen der nächsten Generation. Als Software as a Service benötigt Scrivito keine IT-Wartung. Das Content-Management-System ist äußerst flexibel und erfüllt höchste Sicherheitsstandards.