✅ Nowości, motywy, wtyczki WEB i WordPress. Tutaj dzielimy się wskazówkami i najlepszymi rozwiązaniami dla stron internetowych.

Jak wyświetlić powiązane produkty za pomocą WooCommerce REST API

102

Jeśli chodzi o sklepy internetowe, oczywiste jest, że powiązane produkty są wyświetlane na stronie szczegółów pojedynczego produktu. Pomaga klientom pokazać podobne produkty, które mogą chcieć kupić. Zwiększa również zaangażowanie użytkowników w Twojej witrynie. Im więcej czasu klienci spędzają w Twoim sklepie, tym większe są szanse, że kupią Twoje produkty. W tym artykule pokażę, jak pokazać powiązane produkty za pomocą WooCommerce REST API.

W tym samouczku pobiorę wszystkie produkty związane z bieżącym produktem, a następnie go wyświetlę. Łączę również każdy produkt z jego stroną ze szczegółami.

Przykład wyjaśniony w tym artykule może dotyczyć również witryny WooCommerce. Można użyć tej techniki i wyświetlać powiązane produkty bez użycia wtyczki. Zapewni to większą kontrolę nad projektem i znacznikami strony produktu.

Uzyskaj klucz klienta i tajemnicę klienta

Decydując się na rozpoczęcie korzystania z WooCommerce REST API, musisz najpierw uzyskać klucz klienta i tajny klucz klienta. Klucze te służą do identyfikacji sklepu i są niezbędne podczas wywoływania API WooCommerce. Możesz przeczytać więcej na ten temat w ich dokumentacji.

Najpierw zainstaluj wtyczkę WooCommerce na swojej stronie. Następnie przejdź do strony WooCommerce->Ustawienia. Kliknij na zakładkę Zaawansowane, a następnie na link REST API.

Jak wyświetlić powiązane produkty za pomocą WooCommerce REST API

Na tej stronie kliknij przycisk „Utwórz klucz API".

Jak wyświetlić powiązane produkty za pomocą WooCommerce REST API

Wprowadź opis, wybierz uprawnienie „Odczyt” i naciśnij przycisk Generuj klucz API. Możesz również wybrać uprawnienie „Odczyt/zapis”. To zależy od Twoich wymagań. Jeśli potrzebujesz tylko odczytać dane z WooCommerce, wybierz opcję „Czytaj”. A jeśli chcesz wykonywać zarówno operacje odczytu, jak i zapisu, twoją oczywistą opcją jest „Odczyt/zapis”. W tym przypadku kierujemy reklamy tylko na powiązane produkty, więc wystarczy uprawnienie „Odczyt”.

Jak wyświetlić powiązane produkty za pomocą WooCommerce REST API

Skopiuj klucz klienta i tajny klucz klienta, które będą wymagane podczas wywoływania API.

Jak wyświetlić powiązane produkty za pomocą WooCommerce REST API

WooCommerce REST API, aby uzyskać powiązane produkty

Gdy będziesz gotowy z kluczem klienta i tajnym kluczem klienta, możemy zacząć od kodu, który wywołuje interfejs API do punktu końcowego WooCommerce. Ponieważ najpierw musimy pobrać powiązane produkty, musimy pobrać dane jednego produktu za pośrednictwem interfejsu API. Dzieje się tak, ponieważ zwykle wyświetlamy nasze podobne produkty na stronie pojedynczego produktu.

Ponieważ musimy wysyłać żądania HTTP, zainstaluj bibliotekę Guzzle za pomocą poniższego polecenia.

composer require guzzlehttp/guzzle

Guzzle to klient PHP HTTP, który ułatwia wysyłanie żądań HTTP i banalne do integracji z usługami internetowymi.

Na koniec napiszmy kod, aby otrzymać pojedynczy produkt, a następnie produkty powiązane. Gdy WooCommerce zwraca dane produktu, w odpowiedzi zawiera również klucz „related_ids” wraz z wartościami. Te wartości to nic innego jak identyfikatory powiązanych produktów. W związku z tym nasz kod PHP będzie wyglądał następująco.

<?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();
}

Zastąp symbol zastępczy „PRODUCT_ID_HERE” rzeczywistą wartością. W powyższym kodzie przekazuję parametr „includes” jako tablicę z powiązanymi_ids. WooCommerce w odpowiedzi podaje nam wszystkie szczegóły dotyczące produktów. Następnie przechodzimy przez niego w pętli i wyświetlamy tytuł produktu oraz jego link. Użytkownik może również wydrukować inne dane z odpowiedzi.

Powiązane artykuły

Źródło nagrywania: artisansweb.net

Ta strona korzysta z plików cookie, aby poprawić Twoje wrażenia. Zakładamy, że nie masz nic przeciwko, ale możesz zrezygnować, jeśli chcesz. Akceptuję Więcej szczegółów