Kann ein Thema in React erstellt werden?
Sie können Reagieren in einem Thema verwenden. Ja, wenn Ihr Thema nur die eine Vorlage hat und sich auf JS verlässt, um das gesamte Frontend zu rendern und zu navigieren, Daten abzurufen, dann sehe ich nicht, wie es anders ist, wenn Sie es verwenden oder nicht Verwenden Sie Reagieren
Gibt es einen Grund, warum das Frontend der Website nicht funktioniert?
Sie müssten verschiedene URLs berücksichtigen und Daten in Ihre Reaktions-App laden, aber zu diesem Zeitpunkt handelt es sich um ein Reaktionsproblem, nicht so sehr um ein WP-Problem.
Die React-App ruft die API auf, sodass ich nicht sehe, wo das Problem liegt, wenn ich http://foobar.com/wp-json/wp/v2/posts/ anrufe.
Kein Problem hier
Die einzige Sorge, die ich habe, ist, dass Sie das Routing selbst verwalten müssen, wenn Sie in der Anwendung herumklicken, und sicherstellen müssen, dass beim Besuch von etwas, das beim ersten Laden nicht die Startseite ist, der richtige Inhalt geladen wird. Dies ist jedoch ein Problem mit dem React Router (vorausgesetzt, dies ist die Bibliothek, die Sie für das Routing verwenden).
WP-Instanz in einer Unterdomäne und eine React-Site in der Hauptdomäne.
Das klingt nach einer großartigen Möglichkeit, Dinge unnötig zu komplizieren. Lassen Sie das Thema einfach der React-App dienen. Das Laden von Ressourcen aus einem Thema heraus ist das gleiche Problem, wenn es sich um React oder jQuery oder Backbone handelt und der Browser sie auf dieselbe Weise lädt. Sagen Sie Ihrem JS einfach, wo sich die Themen-URL befindet.
Gibt es irgendetwas, das Probleme in einem React-WordPress-Theme verursachen würde?
Dies ist eine äußerst offene Frage, die davon abhängt, was Sie tun möchten.
Ehrlich gesagt klingt es so, als ob Sie nach Sicherheit suchen. Denken Sie daran, React ist Javascript. Sie können Javascript in Themen verwenden und die REST-API aus Javascript in einem Thema aufrufen. Es spielt keine Rolle, welches UI-Framework diesen Code antreibt. Wenn es sich um React, Vue, jQuery, Vanilla JS oder Angular handelt, ist alles JS.
Wenn Sie das Laden von Posts und das Rendern von Posts in Ihrem Javascript übernehmen möchten, können Sie dies tun. Wenn Sie als Mittel dafür Reagieren wählen, liegt das bei Ihnen.
Es gibt jedoch einige offensichtliche Dinge, die Sie tun müssen:
Denken Sie daran, dass Sie anrufen möchten wp_footer
und wp_head
, damit Sie ein header.php
und benötigen footer.php
, auch ein, functions.php
damit Sie Ihre JS und Stile in die Warteschlange stellen können.
Nichts davon ist reaktionsspezifisch, jedes Thema sollte das tun. Möglicherweise möchten Sie auch das WP-API-Skript in die Warteschlange stellen, damit die REST-API-URL übergeben wird. Auch dies ist nicht spezifisch für eine React-Anwendung.
Vor allem aber gibt es kein React-Thema. Es gibt Themen, die zufällig React verwenden. Es ist leicht, sich etwas anderes vorzustellen, aber am Ende des Tages ist es wirklich nur JS in einem eher leer aussehenden Thema