Topics

Ich habe versucht, von microCMS auf EmDash + Cloudflare umzusteigen.

Was ist EmDash?

Cloudflare hat ein CMS angekündigt, das es als geistigen Nachfolger von WordPress betrachtet.
Es handelt sich um ein Full-Stack-CMS mit moderner Architektur, das verschiedene Cloudflare-Ressourcen (D1/R2/Workers) mit Astro kombiniert – ein echtes Cloudflare-Ökosystem-CMS!
Um zu sehen, was passieren würde, habe ich testweise einen Blog, den ich mit microCMS implementiert hatte, zu EmDash migriert.

Die migrierte Website finden Sie hier.Yurulog
Dies ist nur eine Testseite, daher verwende ich vorerst das Standarddesign. Ich werde später ein anderes Design anwenden.

Einrichtungsprozess

1. Projekterstellung

npm create emdash@latestFühren Sie den Vorgang durch. Ihnen werden interaktiv verschiedene Fragen gestellt; wählen Sie daher die entsprechenden Optionen aus.

2. Cloudflare-Ressourcen erstellen

Die Erstellung von Datenbanken und Speichern auf diese Weise vereinfacht die Bereitstellung.

npx wrangler login
npx wrangler d1 create my-site
npx wrangler r2 bucket create my-site-media
npm run build && npm run deploy

3. Lokale Entwicklung

npx emdash devDadurch wird Ihre lokale Umgebung gestartet.
Verwaltungsbildschirmhttp://localhost:4321/_emdash/adminRufen Sie [Website/Link] auf und führen Sie die Einrichtung durch.

4. Bereitstellung und Ersteinrichtung

npx wrangler deployAnschließend wird es an die Mitarbeiter verteilt.https://[name].workers.devEs wird auf [Plattformname] veröffentlicht.
Da die lokalen und entfernten Datenbanken unabhängig voneinander sind, ist eine Ersteinrichtung (Erstellung eines Administratorkontos) auch bei Verwendung der Fernverwaltungsoberfläche erforderlich.

Durch die Verknüpfung mit einem GitHub-Repository können Sie auch Deployments mit Push-Vorgängen automatisieren (Cloudflare Dashboard → Workers → Settings → Build → Link with Git Repository).

5. Artikelmigration aus microCMS

Erstellen Sie ein Migrationsskript, um alle Artikel von der microCMS-API abzurufen → EmDash CLIcontent createIch habe es hinzugefügt.

Punkt

  • Konvertieren Sie den microCMS Rich-Editor (HTML) in Markdown und importieren Sie ihn.
  • Die Bilder wurden zunächst über externe URLs migriert und später in R2 hochgeladen, wo die Referenzen aktualisiert wurden.
  • npx emdash seedNicht  npx emdash content createBitte verwenden Sie   (da Seed keine Überarbeitungen erstellt, wird der Artikel nicht angezeigt).

Probieren Sie es im wirklichen Leben aus.

Dieses CMS vereint die einfache Einrichtung und Implementierung eines Headless-CMS mit dem Komfort der durchgängigen Kontrolle eines Full-Stack-CMS und bietet somit das Beste aus beiden Welten.
Das Beste daran ist, dass man dank der Astrologie-basierten Plattform sein vorhandenes Wissen nutzen kann, was großartig ist. Es scheint gut für kleine bis mittelgroße Blogs geeignet zu sein.

Da es sich jedoch noch in der Beta-Phase befindet,

  • Die Entwurfsvorschau funktioniert standardmäßig nicht (siehe unten).
  • Zentrierte Ausrichtung und Rechtsausrichtung werden im WYSIWYG-Modus nicht angezeigt.
  • Bei der Bearbeitung von Menüpunkten führen relative Pfade zu einem Fehler.
  • Benutzerdefinierte Felder können nicht sortiert werden.
  • Benutzer können nicht eingeladen werden

Es gab einige Punkte, die Anlass zur Sorge gaben, wie beispielsweise die oben genannten (Stand: Version 0.1.0).

Über die Entwurfsvorschau

Obwohl auf dem Bearbeitungsbildschirm eine Schaltfläche „Entwurfsvorschau“ vorhanden ist, ist es nicht möglich, Artikel im Entwurfsformat in der Vorschau anzuzeigen.

EmDash verfügt über einen Vorschaumechanismus, der jedoch scheinbar nicht standardmäßig aktiviert ist. Daher waren die folgenden Schritte notwendig.

  1. UmweltvariablenPREVIEW_SECRETLegen Sie einen beliebigen geheimen Schlüssel fest (npx emdash auth secret(Kann generiert werden mit)
  2. Auf der ArtikelseiteverifyPreviewTokenVerwenden Sie diese Methode, um den Entwurf zu erhalten.
import { getEmDashEntry, verifyPreviewToken } from "emdash";

const preview = await verifyPreviewToken({
  url: Astro.url,
  secret: import.meta.env.PREVIEW_SECRET,
});

const { entry, isPreview } = await getEmDashEntry("posts", slug, { preview });

Sie können Ihre Artikelentwürfe nun über die Schaltfläche „Entwurfsvorschau“ im Admin-Bereich ansehen.

Zusammenfassung

Dieses Mal habe ich es gemäß den Grundlagen als Full-Stack-Anwendung implementiert, aber es scheint, als könnte es auch als "Headless CMS" verwendet werden, indem man Artikel mit fetch empfängt und einen SSG erstellt, daher möchte ich das beim nächsten Mal ausprobieren.

Es ist noch eine Beta-Version, daher bin ich sehr gespannt darauf, wie sie sich weiterentwickelt!

Verfasst von

Er wechselte von Desktop-Publishing in die Webwelt und entwickelte sich schnell zu einem wahren Meister seines Fachs mit umfassenden Kenntnissen in Markup, Frontend-Design, Webentwicklung und Barrierefreiheit. Seit der Gründung von Liberogic ist er in verschiedenen Bereichen aktiv und gilt im Unternehmen mittlerweile als wandelndes Lexikon. In letzter Zeit beschäftigt er sich intensiv mit Effizienzsteigerungen durch den Einsatz von Eingabeaufforderungen und fragt sich: „Können wir uns bei der Barrierefreiheit stärker auf KI verlassen?“ Seine Technologien und sein Denken entwickeln sich stetig weiter.

Futa

IAAP-zertifizierter Spezialist für Webzugänglichkeit (WAS) / Markup-Ingenieur / Frontend-Entwickler / Webdirektor

Artikel dieses Mitarbeiters ansehen

Wir sind stolz auf unsere zuverlässige Teamstruktur und unsere schnelle Reaktionsfähigkeit.

Bei Liberogic treiben unsere erfahrenen Mitarbeiter Projekte proaktiv voran, weshalb wir bei unseren Kunden hohes Ansehen genießen.
Wir stellen sicher, dass Projektmanager und -leiter ordnungsgemäß eingesetzt werden, um einen reibungslosen Ablauf des gesamten Projekts zu gewährleisten. Wir verhindern unnötige Kostensteigerungen durch vollständige Zusagen und weisen Ressourcen den richtigen Personen an den richtigen Stellen zu. Wir sind bekannt für unsere Schnelligkeit, mit der wir Arbeitsinhalte erfassen, Kostenvoranschläge erstellen und einreichen.

Bitte beachten Sie, dass wir keine Vor-Ort-Arbeit im SES-Stil aktiv durchführen.

Wir unterstützen fast alle wichtigen Projektmanagement- und Chat-Tools, darunter Slack, Teams, Redmine, Backlog, Asana, Jira, Notion, Google Workspace, Zoom und Webex.

In Großprojekten mit SES und OffshoreHaben Sie technische Probleme oder Bedenken, wie Sie diese lösen können?

Fallstudie