WooCommerce Store API jetzt stabil, bietet bessere Unterstützung für benutzerdefinierte Frontends – WP Tavern

26. März 2022
WooCommerce Store API jetzt stabil, bietet bessere Unterstützung für benutzerdefinierte Frontends - WP Tavern

WooCommerce angekündigt Heute ist die neue Store-API nach zwei Jahren Entwicklungszeit stabil. Es unterstützt die neue blockbasierte Warenkorb- und Checkout-Erfahrung des Plugins sowie alle Produktblöcke.

Die Store-API ist eine öffentliche, nicht authentifizierte API, die REST-API-Endpunkte für Warenkorb-, Checkout- und Produktfunktionen bereitstellt. WooCommerce-Core-Entwickler Mike Jolley erklärte, wie sich die neue API von der REST-API des Plugins unterscheidet:

Der Hauptunterschied zwischen der Store-API und der WC-REST-API besteht darin, dass die Store-API ermöglicht nicht authentifizierten Zugriff um Daten zu speichern, z. B. Produkte. Dies macht es für eine Vielzahl von Anwendungsfällen geeignet, einschließlich benutzerdefinierter Frontends.

Dies ist ein nicht authentifizierte API. Für den Zugriff sind keine API-Schlüssel oder Authentifizierungstoken erforderlich.

Ein weiterer Unterschied besteht darin, dass die Store-API Unterstützung für Warenkorbdaten. Dies ermöglicht Warenkorbvorgänge wie das Hinzufügen von Artikeln zum Warenkorb, das Aktualisieren von Mengen, das Anwenden von Coupons und das Senden von Bestellungen. Es kann nur auf den Warenkorb des aktuellen Kunden zugegriffen werden.

Die von der Store-API zurückgegebenen Daten spiegeln immer den aktuellen Benutzer wider (Cookie-basiert), während die WC REST-API einen umfassenderen Zugriff auf alle Daten ermöglicht, sofern Sie über die richtigen Zugriffsrechte verfügen.

In einem Interview mit HollerWP Letztes Jahr sagte Jolley, es sei hilfreich, sich die Store-API als für Kunden und die Kern-REST-API als API für die Store-Verwaltung vorzustellen.

"Wenn man sie so getrennt hält, wird deutlich, dass man Daten in einem öffentlichen Kontext verfügbar macht", sagte er.

Scott Bolinger, Mitbegründer von AppPresser, erklärte, wie die Store-API ein Problem mit der ursprünglichen WooCommerce-REST-API behebt.

"Es ist [the WC REST API] war nie für mobile, Headless- oder andere Front-End-Implementierungen gedacht", sagte Bolinger. "Es war nur für Back-End-Admin-Dinge wie Inventar, Hinzufügen / Entfernen von Produkten usw. gedacht.

"Das Problem ist, dass es keine Alternative gab, also verwendeten Headless / Mobile Apps es für die Anzeige von Produkten. Mit der WC REST API erfordert alles eine Authentifizierung, was keinen Sinn ergibt, da Produkte auf Ihrer Website öffentlich sind. Sie sollten sich nicht authentifizieren müssen, um die Produkte von jemandem zu sehen. "

Die neue Store-API ermöglicht es Entwicklern, Produkte, Attribute, Sammlungen und andere Daten ohne Authentifizierung zu erhalten, und fügt eine Warenkorb-API hinzu, die es ermöglicht, zur Kasse zu gehen.

"Ich denke, die meisten Implementierungen der WC Rest API, die für das Frontend sind, sollten auf die Store-API umgestellt werden", sagte Bolinger.

Das WooCommerce-Team arbeitet immer noch daran, diese API für Headless- und mobile Apps geeignet zu machen. In einer idealen Welt würde die beste Warenkorb-API für headless WooCommerce-Apps von WooCommerce erstellt. In der Zwischenzeit empfahl Bolinger CoCart GmbH.

CoCart ist eine anpassbare WordPress-REST-API für WooCommerce, mit der Entwickler Headless-E-Commerce-Shops (oder entkoppelte) E-Commerce-Shops mit ihrer Wahl erstellen können.

"Ich benutze die Store-API nicht und ich sehe nicht, dass ich das tun werde", sagte Co-Cart-Gründer Sébastien Dumont. "Beide APIs sind für ihre individuellen Zwecke einzigartig. Die Store-API von WooCommerce wurde für die Gutenberg-Blöcke entwickelt, die nur ein festes Format erfordern und immer noch dazu neigen, auf nativen Storefronts verwendet zu werden.

"Ich sehe nicht, dass die heutigen Nachrichten CoCart betreffen. Die meisten meiner Benutzer haben bereits von der Store-API gewusst, als sie noch erfahrungsorientiert war, und sind fehlgeschlagen, nachdem sie sie für Headless-Zwecke ausprobiert hatten. Es erfordert auch Optimierungen, während CoCart dies nicht tut".

Dumont sagte, dass der Store-API immer noch viele wertvolle Informationen fehlen, die Entwickler benötigen, und dass die Verwendung von CoCart ihnen viel Entwicklungszeit spart.

"Mit der WC Rest API gibt es keinen Warenkorb oder Checkout, also ist es cool, dass sie das hinzugefügt haben", sagte Bolinger. "Nonces funktionieren jedoch nur, wenn Sie auf der Website sind, so dass Sie bei mobilen Apps oder Headless-WP auf Probleme stoßen werden. Leider ist es (noch) nicht da, wo es für Headless sein muss.

"Es gibt einen Filter, um die Nonce-Authentifizierung zu deaktivieren: add_filter( 'woocommerce_store_api_disable_nonce_check', '__return_true' ); Selbst wenn Sie dies ändern, um etwas wie JWT zu verwenden, wird dies zumindest in meinen Tests nicht vollständig für Headless funktionieren. Ich hoffe, dass sie sich in Zukunft damit befassen werden."

Dieses Besondere ausstellen ist im WooCommerce GitHub-Repository noch geöffnet. Die Betreuer scheinen offen dafür zu sein, zu untersuchen, wie Core dies berücksichtigen kann. In der Zwischenzeit stehen Entwicklern, die mobile Apps erstellen, Lösungen von Drittanbietern zur Verfügung.

Eine technische Aufschlüsselung dessen, was derzeit mit der neuen Store-API möglich ist, finden Sie unter Mike Jolleys Ankündigung Bereitstellen. Er demonstrierte, wie Sie den gesamten Kauffluss mit dem Insomnia API-Client durchlaufen können - ohne den Laden zu besuchen. Die APIs Technische Dokumentation und Leitfaden zur Erweiterbarkeit ist auf GitHub verfügbar.

Quelle


Dieser Artikel ist im Original von wptavern.com und wurde übersetzt
https://wptavern.com/woocommerce-store-api-now-stable-provides-better-support-for-custom-frontends

Abonniere den RSS-Feed von unseren WP News und verpasse keine Meldung: https://die-mainagentur.de/feed/?post_type=wp-news

Alternativ kannst du unseren WP-Newsletter abonnieren

Mit dem Eintrag in den WP-Newsletter bekommst du per Mail über neue Artikel zugesendet. Du kannst den Newsletter jederzeit abbestellen.
Mehr dazu in der Datenschutzerklärung