suchen
HeimWeb-FrontendCSS-TutorialWordPress und Jamstack

WordPress und Jamstack

Kürzlich habe ich ein Panel auf der Virtual Jamstack -Konferenz von Netlify veranstaltet, zu dem der CEO von Netlify, Matt Biilman, und der automatische Gründer Matt Mullenweg gehörten. Die Diskussion wurde von vielen als "Jamstack vs. WordPress -Streit" angesehen.

Ich persönlich habe viele Gedanken darüber und denke, ich bin eher geeignet, ein Kommentator als ein Moderator zu sein. Dies ist momentan eine meiner Lieblingsdiskussionen! Bitte erlauben Sie mir, einen Blog zu schreiben.

Aussage: Automattic und Netlify sind beide aktive Sponsoren dieser Website. Ich habe einige Produktionsseiten, die beide verwenden, und ehrlich gesagt liebe ich sie alle, was ein wichtiger Punkt ist, auf den ich versuchen werde, aufzubauen. Ich schreibe und veröffentlichen diesen Artikel zufällig auf der WordPress -Website.

History Review

  1. Richard MacManus veröffentlichte einen Artikel „Mitbegründer von WordPress, Matt Mullenweg, ist kein Fan von Jamstack“ und zitierte das E-Mail-Gespräch zwischen ihnen.
  2. Matt Biilmann antwortete auf den Artikel "über Mullenweg und Jamstack - Rückwärts oder Zukunft?" Mit einem Abschnitt mit dem Titel "Das Ende der WordPress -Ära".
  3. In dieser Zeit kommentierten die Leute. Das Netlify-Vorstandsmitglied Ohad Eder-Pressman schrieb einen offenen Brief. Sarah Gooding fasste einige Aktivitäten in der WP Tavern (im Besitz von Matt Mullenweg) zusammen. Ich bin auch involviert.
  4. Matt Mullenweg hat seine Kommentare geklärt und einige neue Kommentare hinzugefügt.

Die Debatte fand auf der Jamstack Virtual Conference 2020 statt. Derzeit gibt es keine öffentlichen Videoaufzeichnungen (sorry).

Architekturvergleich

Es ist ein bisschen komisch, Jamstack mit WordPress zu vergleichen. Was wirklich vergleichbar ist, ist, dass sie beim Erstellen einer Website alles mögliche Möglichkeiten sind, sich zu entscheiden. Der größte Teil dieses Beitrags wird dies berücksichtigen und die beiden auf diese Weise vergleichen. Der Grund, warum sie nicht direkt verglichen werden können, ist, dass:

  • JamStack ist eine breite Beschreibung eines architektonischen Konzepts, das die Verwendung statischer Dateien auf CDNs fördert und Dienste verwendet, die von JavaScript zugegriffen werden, um alle dynamischen Anforderungen zu erfüllen.
  • WordPress ist ein CMS, das auf der Lampenarchitektur basiert.

Die beiden sind nicht genau gleich.

Wenn wir uns vorerst nur auf die Architektur konzentrieren, werden die Objekte, die wir vergleichen, sein:

  • Statische Hosting -Dienste
  • LAMPE

Ein Beispiel für einen statischen Dienst ist die Verwendung von Netlify für das Hosting (das statisch ist) und einen Dienst zu nutzen, um dynamische Vorgänge zu erbringen, die erledigt werden müssen. Möglicherweise verwenden Sie die eigene Form und Authentifizierungsfunktionen von Netlify und HEDURA für die Datenspeicherung.

In einer Lampenarchitektur verwenden Sie MySQL, um Daten zu speichern, sodass Sie keine externen Dienste nutzen müssen. Sie können auch PHP verwenden. Mit diesem (und Open -Source -Software) haben Sie alles, was Sie für die Authentifizierung benötigen. Das heißt aber nicht, dass Sie den Service niemals nutzen. Es ist nur so, dass Sie den Dienst weniger häufig verwenden, da Sie bereits über mehr Technologie auf dem Server verfügen.

Matt B. Ruf Lampenarchitektur "Monomerarchitektur". Matt M. lehnte dies ab und nannte es die "Integrationsmethode". Ich bin kein Informatiker, aber ich denke, beide Aussagen sind sinnvoll. Hier ist die Erklärung aus Wikipedia:

[…] Eine monolithische Anwendung beschreibt eine einschichtige Softwareanwendung, in der die Benutzeroberfläche und der Datenzugriffscode in einem Programm kombiniert werden.

Nach dieser Definition scheint WordPress eine monolithische Architektur zu sein, aber der Artikel von Wikipedia geht weiter:

[…] Eine monolithische Anwendung beschreibt eine Softwareanwendung, die nicht so ausgelegt ist.

Aus dieser Perspektive scheint WordPress nicht die Definition einer monolithischen Architektur zu entsprechen. Der Haken und die Plug-in-Architektur von WordPress sind modular. ? ‍Eitung

Es wird interessant sein, diesen beiden großen Leuten zuzuhören, die über diese ausführliche Diskussion sprechen, aber Software ist Software. Eine selbst gehostete WordPress-Website läuft auf einem Server mit einem vollständigen Technologiestapel. Es ist sinnvoll, das Beste aus diesem Server zu machen (d. H. Integration). In der JamStack -Methode ist der Server abstrakt. Alle anderen Dinge, die Sie tun müssen, sind in verschiedene Dienste aufgeteilt (d. H. Nicht integriert).

Die WordPress -Methode bedeutet nicht , dass Sie niemals externe Dienste verwenden. In beiden Architekturen können Sie eine E-Commerce-API wie Stripe verwenden. Sie können Dienste wie Cloudinary für leistungsstarke Medienspeicher und -dienste nutzen. Sogar WordPress's Jetpack-Service (den ich benutze und liebe) bringt große Kraft für selbst gehostete WordPress-Websites, die wie ein Drittanbieter-Service läuft , indem sie Asset-Sorgerechts- und Suchtechnologien auf Cloud-Server verschieben. Beide Architekturen sind eine Sammlung von Technologien.

Keine Architektur ist ein "Haus der Karten" und nicht zerbrechlicher als der andere. Alle Websites können die Metapher von „ihre Stärke von ihrem schwächsten Zusammenhang“ anwenden. Wenn das WordPress -Plugin die falsche Version veröffentlicht oder beim Hochladen irgendwie defekt ist, kann dies zu Problemen mit meiner Website führen, bis ich sie behebt. Wenn der API -Schlüssel meiner serverlosen Datenbank ungültig ist, habe ich möglicherweise Probleme mit meiner JamStack -Website, bis ich sie behebte. Wenn Stripe ausfällt, kann ich kein Produkt auf einer Website verkaufen, wenn ich den Service wieder aufnehme.

Preisgestaltung

WordPress.com hat einen kostenlosen Plan, der definitiv ein Ort für den Bau einer Website ist. (Ich habe mehrere.) Wenn Sie jedoch einen Geschäftsplan in Höhe von 25 USD pro Monat verwenden, haben Sie keinen Zugriff auf Funktionen auf Entwicklerebene. Selbst gehosteter WordPress selbst ist Open Source und Free, aber Sie können keinen Ort finden, an dem Sie eine selbst gehostete WordPress-Website kostenlos auf den Markt bringen können. Es beginnt zu einem niedrigen Preis und erhöht sich dann allmählich. Sie benötigen Lampen -Hosting, um WordPress auszuführen. Hier sind ziemlich billige Hosting -Pläne:

  • Der "Aktie" -Plan von Bluehost beginnt bei 3,95 USD pro Monat.
  • Der Mindestplan von Flywheel beträgt 14 USD pro Monat. (Diese Website verwendet das Premium -Programm von Flywheel.)
  • Das Wordpress-spezifische Hosting des Media Temple beginnt bei 20 US-Dollar pro Monat. (Diese Website nutzt seit langem Premium -Programm des Media Temple.)
  • Der drückbare Service von Automatic hat einen Plan, der bei 25 US -Dollar pro Monat beginnt.

Es kostet von Anfang an Geld.

JamStack ist häufiger kostenlos anzufangen und anschließend zu verschiedenen Zeitpunkten Kosten zu entstehen. Da Jamstack relativ neu ist, fühlt es sich so an, als würde der Markt noch erforscht.

  • Vercel ist kostenlos, bis Sie Funktionen wie Teammitglieder oder kennwortgeschützte Websites benötigen. Eine einzelne kennwortgeschützte Website $ 150 pro Monat. Sie können jedem Server eine grundlegende Authentifizierung mit Apache ohne zusätzliche Kosten hinzufügen.
  • Netlify ist sehr ähnlich, entsperrt Funktionen für einen höheren Plan und bietet Features pro Standort wie Analytics (9 USD pro Monat) und Authentifizierung (99 USD pro Monat für 5.000 aktive Benutzer).
  • AWS-Amplify beginnt kostenlos, aber wie bei AWS wird Ihre Verwendung auf vielen Ebenen auf vielen Ebenen wie Build-Minuten, Speicher und Bandbreite in Rechnung gestellt. Sie haben eine Beispielberechnung, dass eine Webanwendung 10.000 aktive Benutzer pro Tag hat, zweimal im Monat aktualisiert und 65,98 USD pro Monat kostet.
  • Azure statische Web -Apps haben noch keine Preisgestaltung veröffentlicht, aber es gibt mit ziemlicher Sicherheit eine kostenlose oder kostenlose oder irgendwie kostenlose Stufe.

All dies erinnert uns daran, dass Netlify nicht der einzige Spieler im Jamstack -Bereich ist. Jamstack bedeutet nur statisches Hosting Plus Service.

Sie können keine allgemeinen Aussagen machen, wie Jamstack billiger ist. Dies hängt zu sehr von der Nutzung der Website und den Anforderungen der Website ab. Bei hohen Nutzung und vielen erweiterten Diensten kann Jamstack (genau wie Serverless) sehr teuer werden. Laut JamStack beginnt ihre Unternehmenspreise bei 3.000 US -Dollar pro Monat. Obwohl Sie Funktionen wie Authentifizierung, Formulare und Medienverarbeitung erhalten können, erhalten Sie keine CMS oder eine Datenspeicherung, was Ihre Kosten erheblich gestalten kann.

Während diese WordPress-Site nicht in der Unternehmensgrade ist, kann ich Ihnen sagen, dass für Server etwa 1.000 US-Dollar pro Monat erforderlich sind, vorausgesetzt, CloudFlare befindet sich, um die Bandbreite direkt auf den Host sowie die Handhabung von Medien-Hosting- und Suchfunktionen durch Jetpack zu reduzieren. Mailchimp sendet unseren Newsletter. Wufoo unterstützt unsere Formen. Wir haben auch Plugins wie Advanced Custom Fields Pro und einige WooCommerce-Add-Ons bezahlt. Das ist noch nicht alles. Die Gesamtzahl kann mehrere tausend Dollar pro Monat betragen. Dies ist nicht einzigartig für den Integrationsansatz, aber es hilft zu veranschaulichen, dass die Kosten für WordPress -Websites auch ziemlich hoch sein können. Sie veröffentlichen keine Preise (eine gemeinsame Strategie für Unternehmen), aber der eigene WordPress VIP-Hosting-Service von Automattic ist definitiv über vier Ziffern, und dann müssen Sie auch Inhalte von Drittanbietern hinzufügen.

Fazit: Hier gibt es keine wesentlichen Änderungen bei der Preisgestaltung.

Leistung

80% der Webseitenleistung sind ein Front-End-Problem.

Dies gilt, aber es basiert auch auf Servern (20% der Anfangswerte ). Die schnellste Schnittstelle der Welt, wenn die erste Anfrage des Servers ein paar Sekunden dauert, bis die Rückkehr nicht sehr schnell ist. Wenn Sie eine schnelle Website wünschen, müssen Sie sicherstellen, dass die erste Anfrage sehr schnell ist.

Weißt du, was super schnell ist? Global CDN bietet statische Dateien. Unabhängig davon, wie es sich um den Backend -Server, die Hosting oder die CMS -Situation handelt, möchten Sie dies erreichen. Dies ist zwar die Grundlage von JamStack (das statische CDN-unterstützte Hosting), aber das bedeutet nicht, dass WordPress das nicht kann.

Sie setzen eine Index.html -Datei mit statischen Inhalten auf Netlify ein und sie ist sehr schnell. Vielleicht generiert Ihr statischer Website -Generator diese Datei (es lohnt sich, darauf hinzuweisen, dass er wahrscheinlich Inhalte von WordPress erhält). Das ist sehr großartig.

Standardmäßig generiert WordPress keine statischen Dateien, die auf globalen CDNs zwischengespeichert werden können. WordPress antwortet auf Anfragen einer einzelnen Quelle, führt PHP aus, fordert dann Inhalte aus der Datenbank an, montiert dann die Antwort und kehrt schließlich zur Seite zurück. Dies mag schnell sein, ist jedoch weitaus weniger stabil als statische Dateien auf globalen CDNs und ist mit größerer Wahrscheinlichkeit von Anfragen überwältigt.

WordPress -Hosts wissen dies und versuchen, dieses Problem auf der Hosting -Ebene zu lösen. Schauen Sie sich die WP -Motormethode an. Ohne dass Sie etwas tun, verwenden sie das Seiten zwischen Seiten, damit die Website im Grunde statische Assets zurückgeben kann, ohne PHP auszuführen oder auf die Datenbank zuzugreifen. Sie verwenden auch eine Vielzahl anderer Caching -Technologien, darunter die Arbeit mit CloudFlare für optimales Caching. Meine ShopTalkshow.com -Website war tatsächlich ausgefallen, als ich dies schrieb. Ich schrieb an den Gastgeber -Schwungrad, um zu sehen, was passiert ist. Es stellte sich heraus, dass ich, als ich dorthin ging und eine Staging -Site öffnete, einen falschen Schalter wechselte und ihren Cache ausgeschaltet habe. Die Website kann den Datenverkehr nicht behandeln und stürzt direkt ab. Das Einschalten des Cache -Schalters hat das Problem sofort aufgelöst. Ich benutze CloudFlare nicht vor der Website, aber ich sollte.

Cloudflare ist Teil der magischen Tipps, um WordPress schneller zu machen. Stellen Sie es einfach vor eine selbst gehostete WordPress-Website und Sie können eine große Rolle bei der Verbesserung der Geschwindigkeit und Zuverlässigkeit spielen. Einer der fehlenden Teile ist das hervorragende Zwischenspeichern von HTML selbst, das sie diesen Monat gelöst haben und jetzt auch dem Cache verfügbar sind. Interessanterweise bedeutet Caching WordPress Cache -Anfragen als statisches HTML und statische Vermögenswerte und dienen sie von globalen CDNs, was letztendlich die Essenz von Jamstack ist.

Matt M. erwähnte, dass WordPress.com eine globale CDN verwendet, die auf einem bestimmten Verkehrsniveau gestartet wurde. Ich bin mir nicht sicher, ob es CloudFlare ist, aber ich werde es nicht bezweifeln.

Nachdem CloudFlare vor einer WordPress -Site verwendet wurde, ist die erste Antwortnummer, die ich sehe, die gleiche wie eine Netlify -Site ohne CloudFlare (da sie nicht empfehlen, CloudFlare vor einer netlify gehosteten Site zu verwenden). Dies ist eine zweistellige Zahl von Millisekunden-Ordnung, sehr gut.

Aus dieser Grundlage wird jede Diskussion über die Leistung Front-End-Spezifikum. Die Front-End-Geschwindigkeitsstrategie ist unabhängig von dem Back-End-Server, Hosting oder CMS-Situation gleich.

Sicherheit

Es gibt viel mehr Geschichten über die gehackte WordPress -Website als die Jamstack -Website. Aber ist es fair zu sagen, dass WordPress weniger sicher ist? WordPress gibt es schon seit ungefähr zwanzig Jahren, und die Anzahl der darauf basierenden Websites ist Größenordnungen mehr als Jamstack. Abgesehen von der Sicherheit, wenn man diese Zahlen berücksichtigt, werden Sie mehr Geschichten von WordPress hören.

Matt M erwähnte, dass Whitehouse.gov WordPress verwendet, eine Website, die das höchste Sicherheitsniveau erfordert. Dies bedeutet nicht, dass WordPress selbst eine unsichere Software ist. Der Schlüssel ist, wie Sie es verwenden. Ist Ihr Passwort unsicher? Egal welche Plattform Sie verwenden, sie ist nicht sicher. Ist es für den Server selbst unsicher, Dateiberechtigungen oder Zugriffsebenen zu übergeben? Dies ist nicht ganz die Schuld der Software, aber Sie sind möglicherweise aufgrund der Software in dieser Situation. Führen Sie die neueste Version von WordPress aus? Die Verwendung ist bestenfalls verteilt und je älter die Version ist, desto weniger Sicherheit ist sie. Hart.

Es könnte interessanter sein, das Medium anzugreifen . Das heißt, an welchen Punkten gehackt werden können . Wenn Ihre statischen Dateien auf statisches Hosting sind, kann man mit Sicherheit sagen, dass Angriffsvektoren ziemlich klein sind. Es gibt jedoch noch einige:

  • Ihr Hosting -Konto kann gehackt werden
  • Ihr Git -Repository kann gehackt werden
  • Ihr Cloudflare -Konto kann gehackt werden
  • Ihr Domain -Name kann gestohlen werden (es passiert)

Gleiches gilt für WordPress -Websites, aber es gibt andere Angriffsvektoren wie:

  • Server-Seiten-Code: XSS, schlechte Plug-Ins, Remote-Ausführung usw.
  • Datenbankverfälligkeit
  • Führen Sie eine ältere Version von WordPress aus
  • Melden Sie sich bei dem System an. Auf der Website selbst können Bösewichte /wp-login.php angreifen

Ich denke, es ist fair zu sagen, dass WordPress -Websites mehr Angriffsvektoren haben, aber jede Website hat viele Medien. Die Hosting -Konten für eine Website sind ein großes Medium. Alles in der DNS -Kette. Jeder Drittanbieterdienste mit Anmeldeinformationen. Inhalt mit einem API -Schlüssel.

Persönliche Erfahrung: Diese Website verwendet WordPress und wurde nie gehackt, aber nicht daran, dass sie nicht versucht wurde. Ich habe das Gefühl, dass ich mehr über die Sicherheit von WordPress -Websites als mit nur statischen Website -Generatoren nachdenken muss.

Erweiterbarkeit

Die Erweiterung der Methode kostet Geld. Diese WordPress-Website hat sich nicht im Maßstab erweitert, erfordert jedoch eine anspruchsvollere Expansion als Server auf Einstiegsebene. Ich serviere den gesamten Verkehr über CloudFlare, sodass die Spitzendaten aus den letzten 30 Tagen zeigen, dass ich 5 TB Bandbreite pro Monat anbietet.

Im Netlify -Geschäftsplan (600 GB Verkehr pro Monat erhalten und dann 20 US -Dollar für alle weiteren 100 GB) beträgt die Berechnung 979 US -Dollar. Erinnerst du dich, als ich vorher sagte, dass diese Website einen Server von etwa 1.000 US -Dollar pro Monat erfordert? Ich habe diese geschrieben, bevor ich diese Zahlen ausführte, also war es sehr nah (großartig). Auf der Skala dieser Website ist JamStack mit WordPress vergleichbar. Alle Hosts berechnen eine Bandbreite und haben ein Überladungslimit. Verstärken Sie die Gebühren $ 0,15 pro GB für die Bandbreite über die monatliche Kappe von 15 GB. Flywheel (My WordPress Hosting) Gebühren basierend auf monatlichen Besucherkappen, und nachdem die Obergrenze überschritten wurde, wird es 1 USD pro 1.000 Menschen berechnet.

Die WordPress -Erweiterungsgeschichte lautet:

  • Verwenden Sie Hosts, die damit umgehen können, und haben ihre eigenen reifen Richtlinien.
  • CDN alles (dies bedeutet normalerweise, CloudFlare vor zu setzen).
  • Letztendlich werden Sie dafür bezahlen.

Die Geschichte der Jamstack -Erweiterung lautet:

  • Sowohl Hosts als auch Dienste sind für die Skalierung gebaut.
  • Sie müssen nicht zu viel darüber nachdenken , ob dieser Service dies erledigen kann, oder brauche ich eine Migration? Erweiterungsprobleme wie diese.
  • Sie müssen mehr über die Tatsache nachdenken, dass jeder Aspekt jedes Dienstes Preise hat, die Aufmerksamkeit benötigen .
  • Letztendlich werden Sie dafür bezahlen.

Ich musste mein WordPress -Hosting migrieren, um einen Host zu finden, der den aktuellen Anforderungen der Website entspricht. Es ist nicht einfach, eine WordPress -Website zu migrieren, aber es ist viel einfacher als die Migration auf ein anderes CMS. Wenn Sie beispielsweise eine Jamstack -Website auf einem kopflosen CMS erstellen und der Preis zu hoch wird, sind die Migrationskosten größer als das Umschalten der Hosts.

Ich mochte Dave Rupert neulich (im Slack Conversation) über den Vergleich der Leistung der beiden:

JAMSTACK: Verwenden Sie alles, um Ihre Sachen zu erstellen.

WordPress: Verwenden Sie unsere Sachen , um Ihre Sachen zu erstellen. Es gibt einige Add-Ons, die Ihnen helfen können. Sie müssen bestimmte Hosts verwenden, um zu verhindern, dass es abstürzt.

Es gibt andere Arten von "Erweiterungen". Was ich denke, ist die Anzahl der Benutzer und andere Dinge. Dies ist eine verständliche Metrik für verschiedene Dienste, die in der Preisgestaltung verwendet werden können. Aber in WordPress ist es kostenlos. Sie können so viele Benutzer haben, wie Sie möchten, und so viele akribische Berechtigungen wie Sie möchten. Dies ist nur CMS. Daher kann das Hinzufügen anderer Dienste pro Benutzer möglicherweise weiterhin berechnet werden. Vercel oder Netlify -Gebühren pro Benutzer für Teamkonten. Intiersvoll (ein beliebtes CMS ohne Kopf) beginnt bei 489 US -Dollar pro Monat. Selbst Githubs Teamstufe kostet 4 USD pro Benutzer, wenn Sie Funktionen benötigen, die ein kostenloses Konto nicht bietet.

Trennen Sie das Front-End und das Back-End

Dies ist ein großer Faktor, der die Leute begeistert, Websites mit Jamstack zu erstellen. Wenn alle Funktionen und Inhalte meiner Website hinter der API liegen, kann das Front-End so erstellt werden, wie Sie möchten.

  • Möchten Sie eine voll statische Website erstellen? Ok, greifen Sie während des Build -Prozesses auf diese API zu und tun Sie dies.
  • Möchten Sie eine clientseitige Website mit React oder Vue oder irgendetwas anderes erstellen? Sehr gut, Client Access API.
  • Möchten Sie das mittlere, vorrender einige clientseitige Rendering, serverseitiges Rendering aufteilen? Cool, dies ist eine API, auf die Sie so viel zugreifen können, wie Sie möchten.

Diese Flexibilität ist in einem brandneuen Build großartig, aber die Menschen freuen sich ebenso über die theoretische zukünftige Flexibilität . Wenn alle Funktionen und Inhalte von API-gesteuert sind, können Sie das Front-End und das Back-End vollständig trennen, was bedeutet, dass Sie in Zukunft beide Seiten flexibler ändern können.

  • Solange Ihre API weiterhin das ausgibt, was das Front-End erwartet, können Sie das Back-End erneut anartigen, ohne das Front-End zu beeinflussen.
  • Solange Sie die von Ihnen benötigten Daten erhalten, können Sie das Front-End erneut anartigen, ohne das Back-End zu beeinflussen.

Für Websites einer bestimmten Größe und Größe fühlt sich diese Trennung in Zukunft "sicher" an. Ich kann nicht genau bestimmen, was diese Größenzahlen sind, aber sie existieren.

Wenn Sie jemals eine wichtige Website erneut geführt haben, nur um die eine oder andere Partei anzupassen, ist dies sicherlich einen klugen Schritt, zu einem System zu wechseln, das das Backend und das Frontend trennt.

Sie können Ihre WordPress-Website abnehmen (wir werden im Abschnitt "Beide" diskutieren), aber standardmäßig ist WordPress eine sehr integrierte Lösung, bei der das Front-End aus Themen in PHP mit einer sehr wordpressspezifischen API erstellt wird. Es gibt überhaupt keine Trennung.

Entwicklererfahrung

Jamstack hat die Entwicklererfahrung (DX) weitgehend priorisiert. Ich habe einige als "lokale Optimalität" bezeichnet, was bedeutet, dass sich Jamstacks Design um das lokale Entwicklungserlebnis (und lokale Entwickler) dreht.

  • Sie sollten vor Ort arbeiten. Sie arbeiten in Ihrer eigenen komfortablen (lokalen, schnellen, kundenspezifischen) Entwicklungsumgebung.
  • Git ist der erste Bürger. Sie drängen in Ihre Produktionszweig (z. B. Master oder Main), und dann wird Ihr Build -Prozess ausgeführt und Ihre Website wird bereitgestellt. Sie können sogar eine Vorschau -URL für die Produktionswebsite für jede Pull -Anfrage erhalten, was eine beeindruckend leistungsstarke Funktion ist.
  • Verwenden Sie jedes Werkzeug, das Ihnen gefällt. Möchten Sie eine Website in Hugo vorbereitet? Tun Sie es einfach. Haben Sie in der Schule gelernt, React-App zu erstellen? Obwohl verwendet. Möchten Sie das neueste Framework ausprobieren? Auch wenn Sie es versuchen. Sie können Ihren eigenen Weg erstellen und die Tatsache nutzen, dass Sie jeden gewünschten Ordner im Repository erstellen und bereitstellen können.
  • Dinge, die Sie nicht tun müssen, sind auch wichtig. Sie müssen sich nicht mit HTTPS auseinandersetzen, Sie müssen sich nicht mit Cache befassen, Sie müssen sich keine Sorgen um Dateiberechtigungen machen, Sie müssen CDN nicht konfigurieren. Selbst hochrangige Entwickler wissen zu schätzen, dass es nicht nötig ist, mehr zu tun.

Dies bedeutet nicht, dass WordPress die Entwicklererfahrung nicht berücksichtigt (zum Beispiel haben sie eine CLI, die nützliche Operationen wie Bausteine ​​ausführt), aber ich denke nicht, dass DX für mich genauso wichtig ist wie der Kern des Projekts.

  • Das lokale Ausführen von WordPress ist schwierig und erfordert, dass Sie den (x) Amp-Stapel irgendwie ausführen, was die notorisch schwer fassbare Software von Drittanbietern beinhaltet. Vielen Dank einheimisch von Schwungrad. Es gibt einige Anleitung, aber es fühlt sich nicht als Priorität an.
  • Was soll ich in Git setzen? Bis zum heutigen Tag bin ich immer noch nicht sehr klar, aber ich habe mich im Grunde genommen entschlossen, den gesamten Ordner /WP-In-In-In-In-Content-Ordner zu verwenden. Für mich fühlt es sich seltsam an, dass es keine Anleitung oder offensichtliche Best Practice gibt.
  • Sie müssen für Ihre eigene Bereitstellung verantwortlich sein. Selbst WordPress -Hosts tun das nicht wirklich. Dies ist größtenteils nur: Dies ist Ihre SFTP -Anmeldeinformationen .
  • Auch wenn Sie eine gute lokale Entwicklung und Bereitstellungspipeline einrichten (ich bin sehr zufrieden mit meinem), hilft dies nicht wirklich bei der Bewegung der Datenbank, sodass Sie selbst die Verantwortung dafür übernehmen müssen.

Dies sind alles Probleme, die gelöst werden können, und die WordPress -Community ist riesig und Sie können viele relevante Informationen darin finden, aber ich denke, es ist fair zu sagen, dass WordPress DX nicht als Kern hat. Auch nach all den Jahren ist es immer noch ein bisschen wie der wilde Westen.

Tatsächlich stellte ich fest, dass viele Menschen aufgrund der Marginalisierung der Ermutigung für eine gesunde lokale Entwicklungsumgebung einfach keine lokale Entwicklungsumgebung haben. Es ist eine Anekdote, aber jetzt habe ich mich zweimal auf den Websites anderer Menschen involviert, die nur Produktion sind. Es ist eine andere Geschichte, wenn sie sehr einfache Websites sind und ein Standardverhalten in hohem Maße haben, diese Websites jedoch nicht. Sie sind sehr komplex (viel komplexer als diese Website) und betreffen öffentliche Benutzeranmeldungen, bezahlte Mitgliedschaft und Berechtigungen, Seitenbauer, benutzerdefinierte Shortcodes, benutzerdefinierte CSS und eine große Anzahl von aktiven Teilen. Das macht mir sehr Angst. Ich möchte nichts anfassen. Sie bearbeiten PHP an Ort und Stelle, um die Dinge zum Laufen zu bringen - wie die Leute scherzten, Denim -Codierung . Mit einem Syntaxfehler stürzt die Website und möglicherweise sogar die Seite, die Sie anzeigen.

Es ist sehr interessant, WordPress ohne besonders gute DX zu betreiben. Ohne DX gibt es keinen Jamstack. Dies ist ausschließlich für Entwickler. Für WordPress haben die meisten Websites möglicherweise überhaupt keine Entwickler . Es ist installiert (oder im Fall von WordPress.com aktiviert) und der Website -Eigentümer startet dort. Website -Eigentümer sind wie Entwickler, sie haben viel Strom, schreiben jedoch möglicherweise überhaupt keinen Code.

Dazu möchte ich sagen, dass WordPress mehr auf UX als auf DX konzentriert, was ein sehr wichtiger Teil davon ist…

CMS und Endbenutzer UX

WordPress ist ein sehr gutes CMS. Auch wenn es Ihnen nicht gefällt, gibt es viele Leute, die es mögen, und die Daten sprechen für alles. Wenn Sie sich für die Erstellung einer Website mit WordPress entscheiden, können Sie eine Menge der gewünschten Website erstellen. Es ist unwahrscheinlich, dass es mit WordPress passt , ich drücke mich in eine Sackgasse .

Das ist eine große Sache. Jenn weist darauf hin und weist darauf hin, dass Menschen, die WordPress verwenden, wichtiger sind als die Bedürfnisse der Entwickler.

WordPress kann viele Dinge tun:

  • Blog (oder eine beliebige Art von inhaltsorientierter Website im CMS-Stil)…
    • Mit der Inhaltsvorschau ist dies möglich, aber schwierig in Jamstack
  • Benutzer/Berechtigungen behandeln…
    • Auf Administrator/CMS -Ebene und
    • Auf benutzerorientierter Ebene (z. B. Foren, Abonnements, sozialer usw.)
  • E-Commerce
  • Verarbeitungsformulare
  • Gehen Sie Plugins bis zum Extrem

Jamstack kann auf jeden Fall auch all diese Dinge tun, aber jetzt ist es Jamstack in der Wildwest -Ära. Wenn Sie sich Tutorials zum Speichern von Daten ansehen, werden in der Regel erklärt, wie Sie eine einzelne CRUD -Funktion für eine Cloud -Datenbank schreiben. Dies ist das zugrunde liegende Ding, es kann sehr mächtig sein, aber es unterscheidet sich sehr davon, ein paar Schaltflächen zu klicken, und genau so fühlt sich WordPress in oft in der Nähe.

Ich wette, ich könnte wahrscheinlich die Stripe-API verwenden, um ein grundlegendes Jamstack E-Commerce-Setup zusammenzusetzen, was ziemlich cool ist. Aber wenn ich über Inventarmanagement, Versandbereiche, Produktvarianten nachdenken muss und wer weiß, was komplizierte Dinge in der E-Commerce-Welt gibt, fühle ich mich nervös, was mich wünscht, ich hätte etwas wirklich Mächtiges, um mir das alles zu helfen.

Manchmal erstellen wir Entwickler nur Websites für sich selbst (ich mache viel davon), aber ich denke, Entwickler erstellen hauptsächlich Websites für andere Menschen. Die wichtigste Frage ist also: Verbessert das, was ich baue, die Fähigkeiten der Menschen, für die ich baue,?

Sie können ohnehin ein gutes Website -Management -Erlebnis erzielen, aber WordPress hat zweifellos bewiesen, dass es Dienste vor Ort anbietet, ohne zu viel Mühe in die benutzerdefinierte Entwicklung zu stecken.

Jamstack hat jedoch einige Tipps, die ich auf WordPress implementieren werde. Ein wichtiger Trick für mich ist: Benutzer in den Benutzern eingereichter Inhalte und Updates. Ich habe tatsächlich drei Websites, die gerade davon profitieren. Eine Website über Konferenzen, eine Website über Serverless und eine bevorstehende Website über Codierungsschriften. WordPress kann auf allen drei Websites definitiv einen tollen Job machen. Aber was ich wirklich möchte, ist es den Menschen zu erlauben, Inhalte so zu aktualisieren und zu begehen, wie ich das sagen kann: Ja, es sieht gut aus, verschmelzen. Durch die Übernahme des Jamstack -Ansatzes befindet sich der Inhalt in einem öffentlichen Github -Repository und jeder kann teilnehmen.

Ich finde das großartig. Es erfordert nicht unbedingt, dass jemand in der Öffentlichkeit Git oder GitHub verstehen oder verstehen kann, da Netlify CMS über das Konzept der offenen Schöpfung verfügt, das die gesamte Beitragserfahrung im Browser hält und eine Benutzeroberfläche für die Bearbeitung bietet.

Verwenden Sie beide gleichzeitig

Dies ist eine wichtige Frage, die ich oft sehe. Sogar Netlify selbst sagt "keine Opposition".

Das Problem ist Folgendes:

  • "A" in "Jam" steht für API. Verwenden Sie APIs, um Ihre Website zum Bauzeit oder beim Kunden zu erstellen.
  • WordPress -Websites haben standardmäßig eine REST -API (und können auch eine GraphQL -API haben).
  • Verwenden Sie diese API, um CMS -Daten auf Ihrer Jamstack -Website zu erhalten.

Ja, es ist total in Ordnung. Das funktioniert und die Leute tun es. Ich finde das cool.

Aber……

  • Wenn Sie eine WordPress -Website außerhalb Ihrer Jamstack -Website ausführen, werden Sie eine WordPress -Website sowie Ihre Jamstack -Website ausführen. Dies verursacht Kosten und technische Schulden.
  • Normalerweise erhalten Sie nicht den Wert von WordPress. Die Verwendung einer API, um Daten zu erhalten, ist wahrscheinlich alles, was Sie tun müssen, aber dies ist eine ganz andere Art, ein WordPress -Thema zu erstellen. Sie erhalten keinen anderen Wert von WordPress. Ich denke an eine solche Situation: Sie finden ein cooles Plugin, das Ihrer Website einen schicken Gutenberg -Block verleiht. Dieser "einfach ausführen" auf einer WordPress-Site, aber es hat möglicherweise ein spezielles Front-End-Verhalten, das nicht funktioniert, wenn Sie nur HTML aus der API extrahieren. Es kann einige zusätzliche Skripte und Stile enthalten, die Sie benötigen, um sich selbst in Ihren Front-End-Hosting-Standort zu verschmelzen und Updates selbst beizubehalten.

Hier sind alle Teilnehmer mit einem einzigartigen „Verwendungsansatz“:

  • Angrenzung: WordPress's React Framework. Sie können es dahinter ausführen und einen Knotenserver sowie Ihre WordPress -Website verwenden. Der Knotenserver reagiert auf HTML, sodass Sie für alle Seiten serverseitige Rendering durchführen können, aber Sie bauen immer noch das Spa auf.
  • WP2Static: Ein WordPress -Plugin, das eine statische Version einer Website erstellt und es automatisch bereitstellt, wenn Änderungen vorgenommen werden.
  • STRATTIC: Sie hosten dynamische WordPress -Websites für Sie (die sie als "Inszenierung" bezeichnen), bei denen Sie WordPress normal verwenden können. Sie können dann die Bereitstellung auswählen und sie werden auch eine statische Version Ihrer Website für Sie hosten.
  • Shifter: Shifter hostet WordPress -Websites für Sie. Sie haben zwei Optionen: 1) Kopflos ausführen (also greifen Sie auf die API, Ruhe oder GraphQL zu, um die Daten zu erhalten) oder 2).

Es gibt viele andere Möglichkeiten, beides zu integrieren. Hier sind unsere Geoff und Sarah darüber, wie Sie WordPress und Jamstack verwenden, indem sie Vue/Nuxt mit REST -API und Hosting auf Netlify verwenden.

Keiner von ihnen wird verwendet

Nur für den Fall, dass dies unklar ist, gibt es definitiv viele Möglichkeiten, eine Website zu erstellen. Wenn Sie einen Ruby auf der Rails -Website bauen, handelt es sich nicht um Jamstack oder WordPress. Sie können es sich eher als eine WordPress -Website vorstellen, da sie einen Server benötigt und Sie diesen Server so viel wie möglich verwenden. Sie können auch denken, dass es eher wie JamStack ist, da es API- und kombinatorische Dienste fördert, auch wenn es nicht statisch gehostet wird.

Das Netzwerk ist groß, Leute, es ist kein Nullsummenspiel. Ich gehe davon aus, dass WordPress weiter wächst und Jamstack weiter wächst, weil das Netzwerk selbst wächst . Selbst wenn wir nur den Prozentsatz des Marktanteils betrachten, denke ich, dass beide wachsen werden und etwas anderes in ein kleineres Segment drücken.

wählen

Ich werde es hier nicht einmal besprechen. Es liegt nicht daran, dass ich Bevorzugung vermeide, sondern weil es nicht notwendig ist. Ich sehe nicht, dass die Entwickler dort ihre Nägel beißen, um zu entscheiden, ob sie WordPress- oder JamStack -Methoden verwenden sollen, um die Website zu erstellen. Wir haben den Punkt erreicht, an dem die Technologie genug verstanden wird, und der Prozess ist wie folgt:

  1. Tragen Sie die richtige Kleidung
  2. Bewertung der Bedürfnisse und Ergebnisse
  3. Technologie auswählen

Das obige ist der detaillierte Inhalt vonWordPress und Jamstack. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Entmystifizierende Bildschirmleser: Zugrunde Formen und Best PracticesEntmystifizierende Bildschirmleser: Zugrunde Formen und Best PracticesMar 08, 2025 am 09:45 AM

Dies ist der 3. Beitrag in einer kleinen Serie, die wir in Form von Barrierefreiheit gemacht haben. Wenn Sie den zweiten Beitrag verpasst haben, lesen Sie "Verwalten des Benutzerfokus mit: Fokus-Sichtbar". In

Hinzufügen von Kastenschatten zu WordPress -Blöcken und -ElementenHinzufügen von Kastenschatten zu WordPress -Blöcken und -ElementenMar 09, 2025 pm 12:53 PM

Die CSS-Box-Shadow- und Umrisseigenschaften haben Thema gewonnen. JSON-Unterstützung in WordPress 6.1. Sei ein paar Beispiele für die Funktionsweise in realen Themen und welche Optionen wir diese Stile auf WordPress -Blöcke und Elemente anwenden müssen.

Arbeiten mit GraphQL CachingArbeiten mit GraphQL CachingMar 19, 2025 am 09:36 AM

Wenn Sie kürzlich mit GraphQL gearbeitet oder seine Vor- und Nachteile überprüft haben, haben Sie zweifellos Dinge wie "GraphQL nicht unterstützen Caching" oder gehört

Machen Sie Ihren ersten Seltsamen -Sufle -ÜbergangMachen Sie Ihren ersten Seltsamen -Sufle -ÜbergangMar 15, 2025 am 11:08 AM

Die Sufelte Transition -API bietet eine Möglichkeit, Komponenten zu beleben, wenn sie das Dokument eingeben oder verlassen, einschließlich benutzerdefinierter Svelte -Übergänge.

Edle und coole CSS -Scrollbars: Ein SchaufensterEdle und coole CSS -Scrollbars: Ein SchaufensterMar 10, 2025 am 11:37 AM

In diesem Artikel werden wir in die Welt der Scrollbars eintauchen. Ich weiß, es klingt nicht zu glamourös, aber vertrau mir, eine gut gestaltete Seite geht Hand in Hand

Show, Don ' TellShow, Don ' TellMar 16, 2025 am 11:49 AM

Wie viel Zeit damit, die Inhaltspräsentation für Ihre Websites zu entwerfen? Wenn Sie einen neuen Blog -Beitrag schreiben oder eine neue Seite erstellen, denken Sie darüber nach

Aufbau einer Ethereum -App mit Redwood.js und FaunaAufbau einer Ethereum -App mit Redwood.js und FaunaMar 28, 2025 am 09:18 AM

Mit dem jüngsten Aufstieg von Bitcoins Preis über 20.000 USD und kürzlich von 30.000, dachte ich, es lohnt

Was zum Teufel haben NPM -Befehle?Was zum Teufel haben NPM -Befehle?Mar 15, 2025 am 11:36 AM

NPM-Befehle führen verschiedene Aufgaben für Sie aus, entweder als einmalige oder als kontinuierlich ausgeführter Vorgang für Dinge wie das Starten eines Servers oder das Kompilieren von Code.

See all articles

Heiße KI -Werkzeuge

Undresser.AI Undress

Undresser.AI Undress

KI-gestützte App zum Erstellen realistischer Aktfotos

AI Clothes Remover

AI Clothes Remover

Online-KI-Tool zum Entfernen von Kleidung aus Fotos.

Undress AI Tool

Undress AI Tool

Ausziehbilder kostenlos

Clothoff.io

Clothoff.io

KI-Kleiderentferner

AI Hentai Generator

AI Hentai Generator

Erstellen Sie kostenlos Ai Hentai.

Heiße Werkzeuge

WebStorm-Mac-Version

WebStorm-Mac-Version

Nützliche JavaScript-Entwicklungstools

SAP NetWeaver Server-Adapter für Eclipse

SAP NetWeaver Server-Adapter für Eclipse

Integrieren Sie Eclipse mit dem SAP NetWeaver-Anwendungsserver.

MantisBT

MantisBT

Mantis ist ein einfach zu implementierendes webbasiertes Tool zur Fehlerverfolgung, das die Fehlerverfolgung von Produkten unterstützen soll. Es erfordert PHP, MySQL und einen Webserver. Schauen Sie sich unsere Demo- und Hosting-Services an.

SublimeText3 chinesische Version

SublimeText3 chinesische Version

Chinesische Version, sehr einfach zu bedienen

Dreamweaver Mac

Dreamweaver Mac

Visuelle Webentwicklungstools