Foxhound

Avatar of Chris Coyier
Chris Coyier am

DigitalOcean bietet Cloud-Produkte für jede Phase Ihrer Reise. Starten Sie mit 200 $ kostenlosem Guthaben!

Seit WordPress 4.7 (Dezember 2016) wird WordPress mit einer integrierten JSON-API ausgeliefert. Möchtest du es sehen? Rufe diese URL auf hier auf CSS-Tricks. Es gibt viele Dokumentationen dafür.

Diese JSON-API kann für alle möglichen Dinge verwendet werden. Ich denke, APIs werden oft im Hinblick auf externe Nutzung betrachtet, zum Beispiel um Daten für eine andere Website verfügbar zu machen. Aber es ist ebenso interessant, die API direkt auf der Website selbst zu verarbeiten. So werden heutzutage viele Websites aufgebaut, mit „modernem JavaScript“ und allem Drum und Dran.

Es ist also möglich, ein WordPress-Theme zu erstellen, das seine eigene API für alle Daten nutzt und somit eine komplett clientseitig gerenderte Website erstellt.

Ich hätte gedacht, es gäbe eine Menge solcher Themes, aber es scheint, dass es sich noch um ein so neues Konzept handelt, dass es nicht viele gibt. Jedenfalls nicht, was ich gefunden habe. Ich habe aber Foxhound von Kelly Dwan gefunden. Es ist einfach und sieht ziemlich gut aus.

Es basiert auf React, daher ist das Ganze logisch in Komponenten unterteilt.

Ich habe es auf einer Testseite hochgeladen und es funktioniert ziemlich gut! Damit ich mich durchklicken und verschiedene Dinge tun konnte, habe ich die „theme test unit“-Daten importiert, was eine schnelle und gute Möglichkeit ist, eine frische WordPress-Installation für Testzwecke mit vielen typischen Inhalten (Beiträge, Autoren, Kommentare usw.) zu füllen.

Nur eine Hülle der Seite wird serverseitig gerendert, so sieht es aus. Ohne JavaScript bekommt man also gar nichts. Sicherlich könnte man all das auf die herkömmliche serverseitig gerenderte WordPress-Art zum Laufen bringen, man würde nur eine Menge Arbeit duplizieren, daher ist es nicht überraschend, dass dies hier nicht gemacht wurde. Ich würde denken, es ist wahrscheinlicher, dass man versucht, React serverseitig zu rendern, als PHP und React synchron zu halten.

Ungefähr 50 % der angeklickten URLs laden sofort, wie man es von einer SPA-Seite erwarten würde. Es sieht so aus, als ob alle Links, die in der Hülle der Seite generiert werden, die PHP rendert, einen Refresh auslösen, und Links, die in React-Komponenten gerendert werden, laden im SPA-Stil.

Ich denke, dies wäre eine wirklich starke Grundlage, wenn Sie daran interessiert wären, eine mit React betriebene WordPress-Website zu erstellen. Das ist heutzutage definitiv eine Sache. Ich habe mir gerade die Human Made-Website angesehen, und sie sagen, dass sie genau das für ustwo getan haben.

ustwo wollte eine entkoppelte Website mit einem WordPress-Backend und einem React-Frontend erstellen. Human Made trat dem Entwicklungsteam bei, um die WordPress-Komponente zu erstellen, einschließlich benutzerdefinierter Beitragstypen und einer benutzerdefinierten REST-API, um strukturierte Daten für die Frontend-Anzeige zu liefern.

Damit Sie es wissen, Leute bezahlen heutzutage für diese Art von Arbeit.