...
✅ Noticias, temas, complementos de WEB y WordPress. Aquí compartimos consejos y las mejores soluciones para sitios web.

Cómo mostrar productos relacionados con la API REST de WooCommerce

255

Cuando se trata de tiendas en línea, es obvio mostrar productos relacionados en la página de detalles de un solo producto. Ayuda a sus clientes a mostrar productos similares que tal vez quieran comprar. También aumenta la participación de los usuarios en su sitio web. A medida que los clientes pasan más tiempo en su tienda, hay más posibilidades de que compren sus productos. En este artículo, le muestro cómo mostrar productos relacionados utilizando la API REST de WooCommerce.

En este tutorial, buscaré todos los productos relacionados con el producto actual y luego los mostraré. También vinculo cada producto a su página de detalles.

El ejemplo explicado en este artículo también se puede aplicar al sitio web de WooCommerce. Se puede utilizar esta técnica y mostrar productos relacionados sin utilizar ningún complemento. Le dará más control sobre el diseño y el marcado de la página de su producto.

Obtenga su clave de consumidor y su secreto de consumidor

Cuando decide comenzar con la API REST de WooCommerce, primero debe obtener su clave de consumidor y su secreto de consumidor. Estas claves son la identificación de la tienda y son necesarias al realizar una llamada a la API de WooCommerce. Puede leer más sobre esto en su documentación.

Primero, instale el complemento WooCommerce en su sitio web. Luego dirígete a la página WooCommerce-> Configuración. Haga clic en la pestaña Avanzado y luego en el enlace API REST.

Cómo mostrar productos relacionados con la API REST de WooCommerce

En esta página, haga clic en el botón ‘Crear una clave API’.

Cómo mostrar productos relacionados con la API REST de WooCommerce

Ingrese la descripción, elija el permiso ‘Leer’ y presione el botón Generar clave API. También puede elegir el permiso ‘Lectura / Escritura’. Depende de su requerimiento. Si solo necesita leer datos de WooCommerce, elija la opción ‘Leer’. Y si desea realizar operaciones de lectura y escritura, su opción obvia es ‘Leer / Escribir’. Aquí nos dirigimos solo a productos relacionados, por lo que el permiso de "lectura" es suficiente.

Cómo mostrar productos relacionados con la API REST de WooCommerce

Copie su clave de consumidor y su secreto de consumidor, que serán necesarios al realizar llamadas a la API.

Cómo mostrar productos relacionados con la API REST de WooCommerce

API REST de WooCommerce para obtener productos relacionados

Una vez que esté listo con su clave de consumidor y su secreto de consumidor, podemos comenzar con el código que da una llamada API al punto final de WooCommerce. Como primero necesitamos buscar productos relacionados, necesitamos obtener los datos de un solo producto a través de la API. Esto se debe a que normalmente mostramos nuestros productos similares en la página de un solo producto.

Como necesitamos enviar solicitudes HTTP, instale la biblioteca Guzzle usando el siguiente comando.

composer require guzzlehttp/guzzle

Guzzle es un cliente HTTP de PHP que facilita el envío de solicitudes HTTP y simplifica la integración con los servicios web.

Finalmente, escribamos un código para obtener un solo producto y luego sus productos relacionados. Cuando WooCommerce devuelve los datos del producto, en respuesta también contiene la clave ‘related_ids’ junto con los valores. Estos valores no son más que identificadores de productos relacionados. Entonces, en contexto con esto, nuestro código PHP será el siguiente.

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

Reemplace el marcador de posición ‘PRODUCT_ID_HERE’ con el valor real. En el código anterior, estoy pasando el parámetro ‘incluye’ como una matriz con related_ids. WooCommerce, en respuesta, nos da todos los detalles sobre los productos. Luego lo recorremos y mostramos el título del producto y su enlace. El usuario también puede imprimir los demás datos de la respuesta.

Artículos relacionados

Fuente de grabación: artisansweb.net

This website uses cookies to improve your experience. We'll assume you're ok with this, but you can opt-out if you wish. Accept Read More