WooCommerce Wednesdays: de WooCommerce API gebruiken om aangepaste functionaliteit aan uw winkel toe te voegen De combinatie van WordPress WooCommerce is een van de meest flexibele, gebruiksvriendelijke manieren om een online winkel te bouwen en te beheren. Een deel van wat het platform zo flexibel maakt, zijn de API’s. Met de API’s beschikt u over een krachtige tool voor het afhandelen van uw e-commerceactiviteiten en het bouwen van aangepaste applicaties om uw bedrijf te beheren

Bron

De combinatie van WordPress WooCommerce is een van de meest flexibele, gebruiksvriendelijke manieren om een online winkel te bouwen en te beheren. Een deel van wat het platform zo flexibel maakt, zijn de API’s. Met de API’s beschikt u over een krachtige tool voor het afhandelen van uw e-commerceactiviteiten en het bouwen van aangepaste applicaties om uw bedrijf te beheren.

In dit bericht zullen we onderzoeken hoe de WooCommerce REST API werkt en hoe u deze kunt gebruiken om uw e-commerce winkel te verbeteren.

Wat kunt u doen met de WooCommerce API?

De WordPress REST API stelt externe applicaties in staat om te communiceren met de functionaliteit van WordPress. De WooCommerce API is een volledig geïntegreerde uitbreiding van de WordPress REST API. Het kan gegevens lezen, maken, bijwerken en verwijderen met behulp van JSON-verzoeken en standaard HTTP-werkwoorden. Wanneer u een REST API-aanroep doet, maken WooCommerce en WordPress verbinding met de PHP- en SQL-backend. Zij verwerken vervolgens uw aanvraag en genereren de output.

Met eindpunten die voor vrijwel elk onderdeel van uw WooCommerce-winkel zichtbaar zijn, kunt u veel doen met de API.

Om te beginnen is de API een krachtig hulpmiddel voor het implementeren van aangepaste functionaliteit voor uw winkel. Het kan zijn dat plug-ins en extra codefragmenten niet voldoende zijn om alle functies te creëren die u nodig hebt. Met de API kun je data ophalen en verzoeken uitvoeren vanaf je eigen op maat gemaakte platform.

De API geeft je ook de mogelijkheid om de frontend en backend van je website te ontkoppelen. Door dit te doen, kunt u een ander platform of een andere taal gebruiken om pagina’s en ontwerpen te maken terwijl u WordPress gebruikt om uw backend van stroom te voorzien.

Bespaar geld door producten op jouw manier te verkopen

Onze Managed WordPress eCommerce bevat meer dan $ 5.000 aan gratis premium WooCommerce-extensies, waardoor je producten op jouw manier kunt verkopen, met extra maatwerk.

Gespecialiseerde winkeluitbreidingen kunnen honderden, zelfs duizenden dollars per jaar kosten als je ze allemaal aan je winkel hebt toegevoegd.

Maar met onze Managed WordPress eCommerce kun je precies de winkel bouwen die je nodig hebt om abonnementen te verkopen, afspraken te boeken, digitale downloads mogelijk te maken en nog veel, veel meer – met gratis toegang tot meer dan $ 5.000 aan premium WooCommerce-extensies.

Leer meer

Hier zijn enkele van de bewerkingen die u kunt uitvoeren met behulp van de API.

Producten bijwerken en verwijderen

Er zijn eindpunten voor afzonderlijke producten, kenmerken en variaties die u kunt gebruiken om de hoeveelheid van het artikel te wijzigen of het geheel te verwijderen. Met de API kunt u uw producten ook batchgewijs bewerken om bulkwijzigingen sneller door te voeren.

Bestellingen verwerken

Met de API kunt u uw bestellingen afzonderlijk of in bulk verwerken door statussen bij te werken en trackingdetails toe te passen. U kunt de API ook gebruiken om een individuele bestelling of een lijst van al uw bestellingen op te halen.

Dashboards maken

Met de WooCommerce API kunt u aangepaste dashboards en interfaces maken. U kunt deze gebruiken om elke statistiek te bekijken die u een beter inzicht in uw bedrijf wilt geven.

Instellingen bekijken

Als u uw WooCommerce-instellingen wilt bekijken en beheren vanaf een aangepast backend-platform, kunt u dit doen met behulp van de API.

Wanneer u een GET-verzoek indient, bevat het JSON-antwoord al uw WooCommerce-instellingengroepen en hun huidige parameters.

Kortingsbonnen maken

Met de coupons-API kunt u individuele coupons maken, bekijken, bijwerken en verwijderen. U kunt coupons ook wijzigen in batches die vergelijkbaar zijn met producten.

Stappen om de WooCommerce API te gebruiken

Voordat we beginnen, moet je ervoor zorgen dat toegang tot de WooCommerce API is ingeschakeld in WordPress.

API-toegang inschakelen

Ga naar WooCommerce > Instellingen > Geavanceerd > Legacy API . Kijk om te zien of de API is ingeschakeld. Als dit niet het geval is, vinkt u het vakje aan en slaat u de wijzigingen op.

selectievakje om woocommerce REST API in te schakelen

Een API-sleutel maken

De WooCommerce API maakt gebruik van een op digitale sleutels gebaseerd systeem voor het verlenen van toegang. Wanneer u een nieuwe API-verbinding maakt, krijgt u een consumentensleutel en een consumentengeheim. Elke keer dat u de API aanroept, moet u deze sleutels gebruiken voor authenticatie. Dit proces zorgt ervoor dat alle API-verzoeken legitiem zijn.

Om een nieuwe API-sleutel aan te maken, ga je naar WooCommerce > Instellingen > Geavanceerd > REST API en klik je op Sleutel toevoegen.

API-sleutelknop toevoegen in WooCommerce-instellingen

Voer een beschrijving in, kies een gebruiker die eigenaar wordt van de API-sleutels en stel de machtigingsniveaus in. Als u de mogelijkheid wilt hebben om gegevens te maken, bij te werken en te verwijderen, kiest u lees-/schrijfmachtigingen.

Klik op API genereren om de verificatiegegevens te maken.

screenshot van WooCommerce API-sleutelinstellingen

Op de volgende pagina worden uw consumentensleutel en consumentengeheim weergegeven. Kopieer deze naar beneden, want je hebt ze nodig om je API-client te verbinden met de WooCommerce REST API.

woocommerce screenshot API, geheime sleutel en QR

Op het moment dat u de pagina verlaat, heeft u geen toegang meer tot de sleutels, dus als u ze niet opschrijft, is er geen manier om ze terug te krijgen als u ze kwijt bent.

Maak verbinding met de client met API-sleutels

Zodra u uw API-sleutels hebt, is de volgende stap het opzetten van een API-client. Je gebruikt de client om verzoeken te doen en reacties te bekijken.

Er zijn verschillende clients die goed werken met de WooCommerce API. In ons voorbeeld gebruiken we Postman.

Wanneer u uw Postman-werkruimte opent, hetzij via een webbrowser of de desktoptoepassing, ziet u de velden om een nieuw API-verzoek in te voeren.

Postman API-sleutel WooCommerce

Voordat u het verzoek kunt indienen, moet u de autorisatiegegevens verstrekken. Klik op Autorisatie en selecteer Basisverificatie als type.

Postman Basic Auth-instellingen

Vervolgens gebruikt u uw API-referentie om de gebruikersnaam en het wachtwoord in te vullen. Voer uw consumentensleutel in het veld Gebruikersnaam in en het consumentengeheim in het veld Wachtwoord.

API-inloggegevens Postman WooCommerce

Nadat u uw inloggegevens hebt ingevoerd, bent u klaar om uw eerste verzoek in te dienen. Laten we voor onze uitleg beginnen met een verzoek om alle producten op te sommen.

Gebruik het volgende GET-verzoek en vervang uw domein door de tijdelijke aanduiding

https://uwsite.com/wp-json/wc/v3/products

Als de configuratie correct is ingesteld, moet de hoofdtekst van het antwoord de gegevens voor uw WooCommerce-producten bevatten. Het antwoord van dit API-verzoek is een JSON-tekenreeks die Postman voor u parseert.

Postbode retourneert JSON-antwoord op API-verzoek

Als er iets mis is, kunt u een foutmelding krijgen met een 401 of andere code. Dergelijke fouten kunnen voorkomen. We zullen later bespreken hoe we sommige van deze kunnen aanpakken.

Begin met het maken van API-verzoeken

Nadat je je eerste succesvolle GET-verzoek hebt gedaan, wil je ook een PUT-verzoek testen om er zeker van te zijn dat je inderdaad schrijftoegang hebt.

Hieronder zullen we onderzoeken hoe u een WooCommerce-product kunt updaten met behulp van een PUT-verzoek.

Om te beginnen, moet u het volgende GET-verzoek indienen om de productinformatie op te halen.

https://uwsite.com/wp-json/wc/v3/products/

Voor ons voorbeeld gebruiken we het eerste productresultaat van ons eerdere verzoek. Dit item heeft een ID van 101, dus onze verzoek-URL is;

https://uwsite.com/wp-json/wc/v3/products/101

Postman screenshot van WooCommerce API-verzoek

Om het PUT-verzoek te doen, klikt u op het vervolgkeuzemenu naast het URL-veld en selecteert u PUT.

Zijbalkoptie om HTTP-methode te selecteren

Klik op Body en selecteer raw. Klik vervolgens op de vervolgkeuzepijl voor tekst en verander het type naar JSON.

JSON-reactie-instellingen in Postman voor WooCommmerce API

Hierna kunt u de aanvraag invoeren. Hieronder ziet u een voorbeeld van een wijziging van de prijs voor ons geselecteerde product.

{
"regular_price": "50"
}

Druk op verzenden en u zou de wijzigingen op uw WooCommerce-site moeten zien.

Voorbeelden van WooCommerce API-verzoeken

Nu we met succes zowel GET- als PUT-verzoeken hebben gedaan, laten we eens kijken naar enkele van de nuttige verzoeken die u kunt gebruiken om uw WooCommerce-winkel via de API te beheren.

Ontvang verzoeken KRIJG alle bestellingen

https://uwsite.com/wp-json/wc/v3/orders

ONTVANG alle producten

https://uwsite.com/wp-json/wc/v3/products/

KRIJG alle klanten

https://uwsite.com/wp-json/wc/v3/customers/

KRIJG alle productcategorieën

https://yoursite.com//wp-json/wc/v3/products/categories

KRIJG een enkel product

https://uwsite.com/wp-json/wc/v3/products/{product-ID}

ONTVANG een productvariant

https://yoursite.com/wp-json/wc/v3/products/{product-ID}/variations/{variatie-ID}

KRIJG een enkele klant

https://uwsite.com/wp-json/wc/v3/customers/{klant-ID}

Plaats verzoeken Update het verzendadres van de klant

{
"Verzenden": {
"first_name": "Jane",
"last_name": "Doe",
"bedrijf": "Jane Doe Co",
"address_1": "361 Buiten Rd",
"address_2": "Suite 101",
"stad": "Las Vegas",
"staat": "NV",
"postcode": "89102",
"land": "VS"
}
}

Update productprijs en voorraadhoeveelheid met een enkel verzoek

{
"regular_price": "50",
"stock_quantity": 30
}

Update productkenmerken zoals kleur

{
"id": 1,
"naam": "Kleur",
"slug": "pa_color",
"type": "selecteer",
"order_by": "naam",
"has_archives": waar,
"_links": {
"zelf": [
{
"href": "https://example.com/wp-json/wc/v3/products/attributes/6"
}
],
"collectie": [
{
"href": "https://example.com/wp-json/wc/v3/products/attributes"
}
]
}
}

Prijs van productvariant bijwerken

Om de “prijs” of “normale_prijs” van een product of productvariant bij te werken, volgt hier een voorbeeld van een PUT-verzoek:

{
"regular_price": "81"
}

Voor- en achternaam van de klant bijwerken

{
"first_name": "Jan",
"last_name": "Doe"
}

Update een vijfsterren productreview

{
"ID": 20,
"date_created": "2018-09-08T21:47:19",
"date_created_gmt": "2018-09-09T00:47:19",
"product_id": 31,
"status": "goedgekeurd",
"recensent": "Claudio Sanches",
"reviewer_email": "john.doe@example.com",
"review": "Werkt nu prima.",
"beoordeling": 5,
"geverifieerd": waar,
"reviewer_avatar_urls": {
"24": "https://secure.gravatar.com/avatar/908480753c07509e76322dc17d305c8b?s=24&d=mm&r=g",
"48": "https://secure.gravatar.com/avatar/908480753c07509e76322dc17d305c8b?s=48&d=mm&r=g",
"96": "https://secure.gravatar.com/avatar/908480753c07509e76322dc17d305c8b?s=96&d=mm&r=g"
},
"_links": {
"zelf": [
{
"href": "https://example.com/wp-json/wc/v3/products/reviews/20"
}
],
"collectie": [
{
"href": "https://example.com/wp-json/wc/v3/products/reviews"
}
],
"omhoog": [
{
"href": "https://example.com/wp-json/wc/v3/products/31"
}
],
"recensent": [
{
"insluitbaar": waar,
"href": "https://example.com/wp-json/wp/v2/users/1"
}
]
}
}

Problemen oplossen

Hoewel het gebruik van de WooCommerce API relatief eenvoudig is, kunnen complicaties met uw technische installatie en de andere oplossingen die u gebruikt enkele problemen veroorzaken. Hieronder staan enkele veelvoorkomende problemen waarmee mensen worden geconfronteerd bij het gebruik van de API.

User-agent blokkeren

De standaard User Agent voor de belangrijkste HTTP- verzoekmethoden, zoals wp_remote_get() gebruikt de volgende indeling;

WordPress/<>; <>.

Afhankelijk van uw host of andere beveiligingsservices die u gebruikt, kunnen verzoeken die verwijzen naar de WordPress-gebruikersagent worden geblokkeerd. Hoewel het bedoeld is om uw WordPress-site te beschermen tegen kwaadaardige aanvallen, kan het van invloed zijn op het vermogen van de API om goed te functioneren.

Authenticatieheaders niet doorgegeven in CGI-modus

Een ander veelvoorkomend probleem doet zich voor wanneer de Basic Authentication-header die uw site in een aanvraag ontvangt, niet de PHP-servervariabele vult die WooCommerce nodig heeft om de basisauthenticatie te voltooien. Wanneer dit gebeurt, ziet u een 401-fout met het bericht “Ongeautoriseerd” of “Consumentengeheim is ongeldig.

Er zijn een aantal manieren om dit probleem aan te pakken. Als u een Apache-server gebruikt, is het eerste dat u moet proberen, de volgende wijziging aan uw .htaccess-bestand toe te voegen.

# BEGIN WordPress Motor herschrijven aan
RewriteBase /
RewriteRule ^index.php$ - [E=HTTP_AUTHORIZATION:%{HTTP:Autorisatie},L]
HerschrijfCond %{REQUEST_FILENAME} !-f
Herschrijfvoorwaarde %{REQUEST_FILENAME} !-d
Herschrijfregel . /index.php [L] # EINDE WordPress

Gevolgtrekking

Dit bericht heeft de oppervlakte bekrast over wat u kunt doen met de WooCommerce API. Als u op zoek bent naar een flexibel en krachtig hulpmiddel om uw winkel naar een hoger niveau te tillen, probeer het dan eens uit om te zien hoe positief het effect kan hebben op uw winkel.

Het bericht WooCommerce Wednesdays: How to use the WooCommerce API to use custom functionaliteit to your store verscheen eerst op GoDaddy Blog .