Verwendung des Contentful-CMS mit statischen Website-Generatoren

„Ich habe mich vor einiger Zeit von meinem alten Web-Content-Management-System getrennt, bin zu einem statischen Website-Generator übergegangen und bin wirklich begeistert von der einfachen, leichten und wartungsfreien Bedienung …Warum um alles in der Welt sollte ich ein CMS für statische Website-Generatoren wollen?“Nun, das ist die häufigste Reaktion, die wir erhalten, wenn wir vorschlagen, die Contentful-API hinzuzufügen. Aber hier sind die Einzelheiten:
Sie wollen, dass auch nicht-technische Personen Content für statische Website-Generatoren erstellen können.
Das ist praktisch, damit Sie statische Website-Generatoren in vielen weiteren Kundenprojekten verwenden können.
Sie wollen es, damit kein/e Entwickler*in das Repository aktualisieren und die Website ausführen muss.
Der Fall für den statischen Website-Generator
Immer mehr Entwickler*innen springen auf den „Go Static“-Zug, und das zu Recht. Statische Seiten sind schnell, leicht und skalieren gut. Sie sind sicherer und einfacher zu warten, sodass Sie Ihre gesamte Zeit und Mühe auf die Nutzeroberfläche konzentrieren können. Oft zeigt sich diese Hingabe wirklich. Es ist einfach so, dass statische Website-Generatoren meistens von Entwickler*innen geliebt werden, aber nicht von Durchschnittsnutzer*innen. Sie bieten kein What-You-See-Is-What-You-Get (WYSIWYG) an, sodass die Vorschau von Content auf Demo-Websites einen Aktualisierungszyklus erfordern kann. Sie basieren oft auf Markdown-Textdateien und erfordern einige Kenntnisse über moderne Repositories. Außerdem kann es bei der Zusammenarbeit von Teams schnell kompliziert werden. Wurde dieser Artikel bereits korrekturgelesen oder überprüft? Ist diese Eingabe gültig? Sind Nutzerberechtigungen verfügbar, z. B. zum Verwalten, Hinzufügen und Entfernen von Teammitgliedern? Kann dieser Artikel zu einem späteren Zeitpunkt veröffentlicht werden? Wie kann ein großes Repository von Content kategorisiert, organisiert und durchsucht werden? Alle diese Anforderungen wurden zuvor im Admin-Bereich Ihres CMS mehr oder weniger gelöst. Aber natürlich mit all dem Ballast, der Sie dazu gebracht hat, die „Appserver-App-Datenbank in einem großen Blob-Stack“ überhaupt zu verlassen.
Content-APIs als Rettung
Eine Alternative ist die Entkopplung des Content-Management-Aspekts vom System. Und dann den wartungsanfälligen Server durch ein Cloud-basiertes Webservice-Angebot zu ersetzen. Anstatt mit Ihrem alten CMS zu kämpfen wechseln Sie in eine Welt der Content-Infrastruktur mit Content-APIs, die Ihren gesamten Content bereitstellen. Auf diese Weise profitieren Sie von allen Vorzügen der Content-Management-Funktionen und können gleichzeitig das Mantra des statischen Website-Generators nutzen. Unsere Content-Infrastruktur bietet genau diese Art von Content-APIs. Wir haben einen Service, der:
von Grund auf so konzipiert wurde, dass er schnell, skalierbar und sicher ist und eine hohe Verfügbarkeit bietet, sodass Sie sich nie wieder um die Wartung kümmern müssen.
einen leistungsstarken Editor und viel Flexibilität bei der Erstellung von Vorlagen für Ihre Dokumente bietet, die Ihre Editor*innen wiederverwenden und kombinieren können, sodass bei alltäglichen Schreib- und Aktualisierungsaufgaben keine Entwicklerressourcen erforderlich sind.
Content von der Präsentation trennt, sodass Sie Ihr Content-Repository für jede Geräteplattform wiederverwenden können, die Ihr Herz begehrt. Auf diese Weise nutzen Sie COPE („einmal erstellen, überall veröffentlichen“).
Webhooks bietet, mit denen Sie Ihre statische Website jedes Mal, wenn Ihr Content geändert wird, vollständig automatisiert neu erstellen können.
Welche statischen Website-Generatoren unterstützt Contentful?
Mit ein wenig Aufwand, API-Abfragen und JSON-Transformationen können Sie Contentful in jeden SSG integrieren, den Sie sich vorstellen können. Tatsächlich haben unser Ökosystem-Team und einige hoch geschätzte Community-Entwickler*nnen bereits einige Integrationen mit den folgenden beliebten statischen Website-Generatoren erstellt:
Jekyll (Ruby)
Middleman (Ruby)
Metalsmith (Node.js)
Roots (Node.js)
Wie automatisiere ich mit Webhooks?
Um vollständig von der täglichen Verwaltung und Wartung der Website befreit zu werden, empfehlen wir, den Ansatz von Carrot Creative zu befolgen. Zusätzlich zu Contentful benötigen Sie einen Hoster, der Webhooks unterstützt und in der Lage ist, Builds zu starten und Websites/Apps bereitzustellen.
Auf Ihrem Host: Erstellen Sie einen Webhook-Endpunkt, der einen neuen Build startet und ein Projekt bereitstellt, wenn er eine POST-Anfrage erhält.
Auf Contentful: Erstellen Sie einen Webhook mit dem Host-Endpunkt als Ziel-URL.
Auf diese Weise erhält der Host jedes Mal, wenn ein/e Autor*in Content erstellt oder aktualisiert, einen Webhook und stellt ihn bereit. So ist der neue Content ein paar Minuten nach der Veröffentlichung live.
Empfehlungen für bewährte Verfahren
Wir empfehlen dringend, eine Test-Website/App zu haben. Da statische Website-Generatoren nicht die Vorteile von WYSIWYG bieten, gibt die Bereitstellung auf einer separaten Domain, die nur Ihren Editor*innen bekannt ist, ihnen die Möglichkeit, eine Vorschau zu sehen, ob die Website genau so aussieht, wie sie es möchten. Zu diesem Zweck bietet Contentful auch eine Vorschau-API an. Vergessen Sie auch nicht, die Suchmaschinen auf dieser Vorschau-Domain einzuschränken (z. B. durch Ausschluss aller Roboter über eine robots.txt-Datei oder durch Festlegen einer htaccess-Einschränkung).Verwenden Sie für die Bereitstellung einen Store, der eine grundlegende HTTP-Header-Konfiguration ermöglicht. Im Laufe der Zeit möchten Sie möglicherweise einige Content-Elemente entfernen oder Content umgestalten. Dabei können Sie alte URLs löschen und neue erstellen. Achten Sie darauf, 301-Weiterleitungen einzurichten, um nicht alle Referrer-Besucher*innen sowie das Link-Equity zu verlieren, das Sie in Suchmaschinen beliebt gemacht hat.
Erste Schritte
Registrieren Sie sich jetzt für ein Contentful-Konto! Es gibt ein kostenloses Testpaket, das für die meisten kleinen Projekte höchstwahrscheinlich ausreicht. Für größere Projekte bieten die kostenpflichtigen Pakete eine 30-tägige Testphase.
Weitere Informationen
In unserem Leitfaden zum Thema Automatisiertes Neuerstellen und Bereitstellen mit CircleCI und Webhooks finden Sie ein praktisches Beispiel mit Jekyll oder Middleman.