✅ WEB- und WordPress-Nachrichten, Themen, Plugins. Hier teilen wir Tipps und beste Website-Lösungen.

So zeigen Sie verwandte Produkte mit der WooCommerce REST API an

30

Bei Online-Shops ist es selbstverständlich, verwandte Produkte auf der einzelnen Produktdetailseite anzuzeigen. Es hilft Ihren Kunden, ähnliche Produkte zu zeigen, die sie vielleicht kaufen möchten. Es erhöht auch die Benutzerinteraktionen auf Ihrer Website. Je mehr Zeit Kunden in Ihrem Geschäft verbringen, desto größer ist die Wahrscheinlichkeit, dass sie Ihre Produkte kaufen. In diesem Artikel zeige ich Ihnen, wie Sie mit der WooCommerce REST API verwandte Produkte anzeigen.

In diesem Tutorial hol ich alle Produkte, die sich auf das aktuelle Produkt beziehen und zeige es dann an. Ich verlinke auch jedes Produkt mit seiner Detailseite.

Das in diesem Artikel erläuterte Beispiel kann auch für die WooCommerce-Website gelten. Man kann diese Technik verwenden und verwandte Produkte anzeigen, ohne ein Plugin zu verwenden. Es gibt Ihnen mehr Kontrolle über das Design und das Markup für Ihre Produktseite.

Holen Sie sich Ihren Verbraucherschlüssel und Ihr Verbrauchergeheimnis

Wenn Sie sich entscheiden, mit der WooCommerce REST API zu beginnen, müssen Sie zuerst Ihren Verbraucherschlüssel und Ihr Verbrauchergeheimnis erhalten. Diese Schlüssel sind die Identifikation für den Shop und werden beim Aufrufen der WooCommerce-API benötigt. Sie können mehr darüber in ihrer Dokumentation lesen .

Installieren Sie zunächst das WooCommerce-Plugin auf Ihrer Website. Gehen Sie dann zur WooCommerce->Settings- Seite. Klicken Sie auf die Registerkarte Erweitert und dann auf den REST-API-Link.

So zeigen Sie verwandte Produkte mit der WooCommerce REST API an

Klicken Sie auf dieser Seite auf die Schaltfläche ‘API-Schlüssel erstellen’.

So zeigen Sie verwandte Produkte mit der WooCommerce REST API an

Geben Sie die Beschreibung ein, wählen Sie die Berechtigung "Lesen" und klicken Sie auf die Schaltfläche API-Schlüssel generieren. Sie können auch die Berechtigung "Lesen/Schreiben" auswählen. Es hängt von Ihrer Anforderung ab. Wenn Sie nur Daten aus WooCommerce lesen müssen, wählen Sie die Option "Lesen". Und wenn Sie sowohl Lese- als auch Schreiboperationen ausführen möchten, ist die offensichtliche Option ‘Lesen/Schreiben’. Hier zielen wir nur auf verwandte Produkte ab, daher ist die Berechtigung "Lesen" ausreichend.

So zeigen Sie verwandte Produkte mit der WooCommerce REST API an

Kopieren Sie Ihren Consumer-Schlüssel und das Consumer-Secret, die beim Ausführen von API-Aufrufen erforderlich sind.

So zeigen Sie verwandte Produkte mit der WooCommerce REST API an

WooCommerce REST API, um verwandte Produkte zu erhalten

Sobald Sie mit Ihrem Verbraucherschlüssel und Verbrauchergeheimnis fertig sind, können wir mit dem Code beginnen, der einen API-Aufruf an den WooCommerce-Endpunkt ausgibt. Da wir zuerst verwandte Produkte abrufen müssen, müssen wir die Daten eines einzelnen Produkts über die API abrufen. Dies liegt daran, dass wir unsere ähnlichen Produkte normalerweise auf der einzelnen Produktseite anzeigen.

Da wir HTTP-Anfragen senden müssen, installieren Sie die Guzzle-Bibliothek mit dem folgenden Befehl.

composer require guzzlehttp/guzzle

Guzzle ist ein PHP-HTTP-Client, der das Senden von HTTP-Anforderungen und die Integration in Webdienste einfach macht.

Lassen Sie uns schließlich einen Code schreiben, um ein einzelnes Produkt und dann verwandte Produkte zu erhalten. Wenn WooCommerce die Daten des Produkts zurückgibt, enthält es als Antwort auch den Schlüssel ‘related_ids’ zusammen mit den Werten. Diese Werte sind nichts anderes als verwandte Produkt-IDs. In diesem Zusammenhang sieht unser PHP-Code wie folgt aus.

<?php
require_once "vendor/autoload.php";
  
use GuzzleHttpClient;
 
define('WC_CONSUMER_KEY', 'PASTE_CONSUMER_KEY_HERE');
define('WC_CONSUMER_SECRET', 'PASTE_CONSUMER_SECRET_HERE');
  
$client = new Client([
    // Base URI is used with relative requests
    'base_uri' => 'YOUR_DOMAIN_BASE_URL',
]);
 
try {
    $response = $client->request('GET', '/wp-json/wc/v3/products/PRODUCT_ID_HERE', [
        'headers' => [
            "Authorization" => "Basic ". base64_encode(WC_CONSUMER_KEY.':'.WC_CONSUMER_SECRET)
        ],
        'verify' => false, //only needed if you are facing SSL certificate issue
    ]);
     
    $body = $response->getBody();
    $arr_body = json_decode($body);
 
    $response = $client->request('GET', '/wp-json/wc/v3/products', [
        'headers' => [
            "Authorization" => "Basic ". base64_encode(WC_CONSUMER_KEY.':'.WC_CONSUMER_SECRET)
        ],
        'query' => [
            'include' => $arr_body->related_ids,
        ],
        'verify' => false,
    ]);
     
    $body = $response->getBody();
    $arr_products = json_decode($body);
 
    if (!empty($arr_products)) {
        foreach ($arr_products as $product) {
            ?>
            <p>
                <a href="<?php echo $product->permalink; ?>"><?php echo $product->name; ?></a>
            </p>
            <?php
        }
    }
} catch (Exception $e) {
    echo $e->getMessage();
}

Ersetzen Sie den Platzhalter ‘PRODUCT_ID_HERE’ durch den tatsächlichen Wert. Im obigen Code übergebe ich den Parameter ‘includes’ als Array mit den related_ids. WooCommerce gibt uns dann als Antwort alle Details zu den Produkten. Dann durchlaufen wir es und zeigen den Produkttitel und seinen Link an. Der Benutzer kann auch die anderen Daten aus der Antwort drucken.

Zum Thema passende Artikel

Aufnahmequelle: artisansweb.net

Diese Website verwendet Cookies, um Ihre Erfahrung zu verbessern. Wir gehen davon aus, dass Sie damit einverstanden sind, Sie können sich jedoch abmelden, wenn Sie möchten. Annehmen Weiterlesen