{"id":24469,"date":"2021-05-19T09:55:00","date_gmt":"2021-05-19T06:55:00","guid":{"rendered":"https:\/\/themewp.inform.click\/?p=24469"},"modified":"2021-10-18T02:15:32","modified_gmt":"2021-10-17T23:15:32","slug":"comment-afficher-les-produits-associes-a-l-aide-de-l-api-rest-woocommerce","status":"publish","type":"post","link":"https:\/\/themewp.inform.click\/fr\/comment-afficher-les-produits-associes-a-l-aide-de-l-api-rest-woocommerce\/","title":{"rendered":"Comment afficher les produits associ\u00e9s \u00e0 l&rsquo;aide de l&rsquo;API REST WooCommerce"},"content":{"rendered":"<p>Lorsqu&rsquo;il s&rsquo;agit de magasins en ligne, il est \u00e9vident d&rsquo;afficher les produits associ\u00e9s sur la page d\u00e9taill\u00e9e d&rsquo;un seul produit. Cela aide vos clients \u00e0 montrer des produits similaires qu&rsquo;ils souhaitent peut-\u00eatre acheter. Cela augmente \u00e9galement l&rsquo;engagement des utilisateurs sur votre site Web. Comme les clients passent plus de temps dans votre magasin, il y a plus de chances qu&rsquo;ils ach\u00e8tent vos produits. Dans cet article, je vous montre comment afficher des produits associ\u00e9s \u00e0 l&rsquo;aide de l&rsquo;API REST WooCommerce.<\/p>\n<p>Dans ce tutoriel, je vais r\u00e9cup\u00e9rer tous les produits li\u00e9s au produit actuel, puis l&rsquo;afficher. Je relie \u00e9galement chaque produit \u00e0 sa page de d\u00e9tail.<\/p>\n<p>L&rsquo;exemple expliqu\u00e9 dans cet article peut \u00e9galement s&rsquo;appliquer au site Web WooCommerce. On peut utiliser cette technique et afficher les produits associ\u00e9s sans utiliser de plugin. Cela vous donnera plus de contr\u00f4le sur la conception et le balisage de votre page produit.<\/p>\n<h3>Obtenez votre cl\u00e9 client et votre secret client<\/h3>\n<p>Lorsque vous d\u00e9cidez de commencer avec l&rsquo;API REST WooCommerce, vous devez d&rsquo;abord obtenir votre cl\u00e9 client et votre secret client. Ces cl\u00e9s sont l&rsquo;identification pour le magasin et n\u00e9cessaires lors de l&rsquo;appel \u00e0 l&rsquo;API WooCommerce. Vous pouvez en savoir plus \u00e0 ce sujet sur leur <a href=\"https:\/\/woocommerce.github.io\/woocommerce-rest-api-docs\" target=\"_blank\" rel=\"noopener nofollow\" class=\"external external_icon\">documentation<\/a>.<\/p>\n<p>Tout d&rsquo;abord, installez le plugin WooCommerce sur votre site Web. Rendez-vous ensuite sur la page <strong>WooCommerce-&gt; Param\u00e8tres<\/strong>. Cliquez sur l&rsquo;onglet Avanc\u00e9 puis sur le lien API REST.<\/p>\n<p><a href=\"https:\/\/themewp.inform.click\/wp-content\/uploads\/2021\/04\/post-20557-608204b1b4391.png\" data-rel=\"lightbox\"><img decoding=\"async\" class=\"SDStudio-light-box-enable SDStudio-editor-tools-md-imp\" src=\"https:\/\/themewp.inform.click\/wp-content\/uploads\/2021\/04\/post-20557-608204b1b4391.png\" alt=\"Comment afficher les produits associ\u00e9s \u00e0 l&#039;aide de l&#039;API REST WooCommerce\" ><\/a><\/p>\n<p>Sur cette page, cliquez sur le bouton &lsquo;Cr\u00e9er une cl\u00e9 API&rsquo;.<\/p>\n<p><a href=\"https:\/\/themewp.inform.click\/wp-content\/uploads\/2021\/04\/post-20557-608204b21fb3e.png\" data-rel=\"lightbox\"><img decoding=\"async\" class=\"SDStudio-light-box-enable SDStudio-editor-tools-md-imp\" src=\"https:\/\/themewp.inform.click\/wp-content\/uploads\/2021\/04\/post-20557-608204b21fb3e.png\" alt=\"Comment afficher les produits associ\u00e9s \u00e0 l&#039;aide de l&#039;API REST WooCommerce\" ><\/a><\/p>\n<p>Entrez la description, choisissez l&rsquo;autorisation \u00ab\u00a0Lire\u00a0\u00bb et appuyez sur le bouton G\u00e9n\u00e9rer une cl\u00e9 API. Vous pouvez \u00e9galement choisir l&rsquo;autorisation \u00ab\u00a0Lecture\/\u00e9criture\u00a0\u00bb. Cela d\u00e9pend de votre exigence. Si vous avez juste besoin de lire les donn\u00e9es de WooCommerce, choisissez l&rsquo;option &quot;Lire&quot;. Et si vous souhaitez effectuer \u00e0 la fois des op\u00e9rations de lecture et d&rsquo;\u00e9criture, votre option \u00e9vidente est &quot;Lecture\/\u00e9criture&quot;. Ici, nous ciblons uniquement les produits connexes, donc l&rsquo;autorisation &quot;Lire&quot; est suffisante.<\/p>\n<p><a href=\"https:\/\/themewp.inform.click\/wp-content\/uploads\/2021\/04\/post-20557-608204b2947e2.png\" data-rel=\"lightbox\"><img decoding=\"async\" class=\"SDStudio-light-box-enable SDStudio-editor-tools-md-imp\" src=\"https:\/\/themewp.inform.click\/wp-content\/uploads\/2021\/04\/post-20557-608204b2947e2.png\" alt=\"Comment afficher les produits associ\u00e9s \u00e0 l&#039;aide de l&#039;API REST WooCommerce\" ><\/a><\/p>\n<p>Copiez votre cl\u00e9 client et votre secret client qui seront requis lors des appels d&rsquo;API.<\/p>\n<p><a href=\"https:\/\/themewp.inform.click\/wp-content\/uploads\/2021\/04\/post-20557-608204b2947e2.png\" data-rel=\"lightbox\"><img decoding=\"async\" class=\"SDStudio-light-box-enable SDStudio-editor-tools-md-imp\" src=\"https:\/\/themewp.inform.click\/wp-content\/uploads\/2021\/04\/post-20557-608204b2947e2.png\" alt=\"Comment afficher les produits associ\u00e9s \u00e0 l&#039;aide de l&#039;API REST WooCommerce\" ><\/a><\/p>\n<h3>API REST WooCommerce pour obtenir des produits connexes<\/h3>\n<p>Une fois que vous \u00eates pr\u00eat avec votre cl\u00e9 client et votre secret client, nous pouvons commencer par le code qui donne un appel API au point de terminaison WooCommerce. Comme nous devons d&rsquo;abord r\u00e9cup\u00e9rer les produits associ\u00e9s, nous devons obtenir les donn\u00e9es d&rsquo;un seul produit via l&rsquo;API. En effet, nous affichons normalement nos produits similaires sur la page produit unique.<\/p>\n<p>Comme nous devons envoyer des requ\u00eates HTTP, installez la biblioth\u00e8que Guzzle \u00e0 l&rsquo;aide de la commande ci-dessous.<\/p>\n<pre><code>composer require guzzlehttp\/guzzle<\/code><\/pre>\n<p>Guzzle est un client HTTP PHP qui facilite l&rsquo;envoi de requ\u00eates HTTP et l&rsquo;int\u00e9gration aux services Web.<\/p>\n<p>Enfin, \u00e9crivons un code pour obtenir un seul produit, puis ses produits associ\u00e9s. Lorsque WooCommerce renvoie les donn\u00e9es du produit, en r\u00e9ponse, il contient \u00e9galement la cl\u00e9 &lsquo;related_ids&rsquo; ainsi que les valeurs. Ces valeurs ne sont rien d&rsquo;autre que des identifiants de produits connexes. Donc, dans le contexte de cela, notre code PHP sera le suivant.<\/p>\n<pre><code>&lt;?php\nrequire_once \"vendor\/autoload.php\";\n\u00a0\u00a0\nuse GuzzleHttpClient;\n\u00a0\ndefine('WC_CONSUMER_KEY', 'PASTE_CONSUMER_KEY_HERE');\ndefine('WC_CONSUMER_SECRET', 'PASTE_CONSUMER_SECRET_HERE');\n\u00a0\u00a0\n$client = new Client([\n\u00a0\u00a0\u00a0\u00a0\/\/ Base URI is used with relative requests\n\u00a0\u00a0\u00a0\u00a0'base_uri' =&gt; 'YOUR_DOMAIN_BASE_URL',\n]);\n\u00a0\ntry {\n\u00a0\u00a0\u00a0\u00a0$response = $client-&gt;request('GET', '\/wp-json\/wc\/v3\/products\/PRODUCT_ID_HERE', [\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0'headers' =&gt; [\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\"Authorization\" =&gt; \"Basic \". base64_encode(WC_CONSUMER_KEY.':'.WC_CONSUMER_SECRET)\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0],\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0'verify' =&gt; false, \/\/only needed if you are facing SSL certificate issue\n\u00a0\u00a0\u00a0\u00a0]);\n\u00a0\u00a0\u00a0\u00a0\u00a0\n\u00a0\u00a0\u00a0\u00a0$body = $response-&gt;getBody();\n\u00a0\u00a0\u00a0\u00a0$arr_body = json_decode($body);\n\u00a0\n\u00a0\u00a0\u00a0\u00a0$response = $client-&gt;request('GET', '\/wp-json\/wc\/v3\/products', [\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0'headers' =&gt; [\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\"Authorization\" =&gt; \"Basic \". base64_encode(WC_CONSUMER_KEY.':'.WC_CONSUMER_SECRET)\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0],\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0'query' =&gt; [\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0'include' =&gt; $arr_body-&gt;related_ids,\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0],\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0'verify' =&gt; false,\n\u00a0\u00a0\u00a0\u00a0]);\n\u00a0\u00a0\u00a0\u00a0\u00a0\n\u00a0\u00a0\u00a0\u00a0$body = $response-&gt;getBody();\n\u00a0\u00a0\u00a0\u00a0$arr_products = json_decode($body);\n\u00a0\n\u00a0\u00a0\u00a0\u00a0if (!empty($arr_products)) {\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0foreach ($arr_products as $product) {\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0?&gt;\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0&lt;p&gt;\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0&lt;a href=\"&lt;?php echo $product-&gt;permalink; ?&gt;\"&gt;&lt;?php echo $product-&gt;name; ?&gt;&lt;\/a&gt;\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0&lt;\/p&gt;\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0&lt;?php\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0}\n\u00a0\u00a0\u00a0\u00a0}\n} catch (Exception $e) {\n\u00a0\u00a0\u00a0\u00a0echo $e-&gt;getMessage();\n}<\/code><\/pre>\n<p>Remplacez l&rsquo;espace r\u00e9serv\u00e9 &quot;PRODUCT_ID_HERE&quot; par la valeur r\u00e9elle. Dans le code ci-dessus, je passe le param\u00e8tre &lsquo;includes&rsquo; sous forme de tableau avec les related_ids. WooCommerce nous donne alors en r\u00e9ponse tous les d\u00e9tails sur les produits. Ensuite, nous le parcourons et affichons le titre du produit et son lien. L&rsquo;utilisateur peut \u00e9galement imprimer les autres donn\u00e9es de la r\u00e9ponse.<\/p>\n<h4>Articles Li\u00e9s<\/h4>\n<ul>\n<li><a href=\"https:\/\/themewp.inform.click\/fr\/un-guide-rapide-sur-l-api-rest-de-woocommerce\/\" title=\"Un guide rapide sur l&#039;API REST de WooCommerce\">Un guide rapide sur l&rsquo;API REST de WooCommerce<\/a><\/li>\n<li><a href=\"https:\/\/themewp.inform.click\/fr\/personnalisez-la-recherche-de-produits-woocommerce-sur-votre-site-wordpress\/\" title=\"Comment personnaliser la recherche de produits WooCommerce sur votre site WordPress\">Comment personnaliser la recherche de produits WooCommerce sur votre site WordPress<\/a><\/li>\n<\/ul>\n<p><div id=\"PostUnique_PostSource\" style=\"padding-top: 50px\">Source d&rsquo;enregistrement:  <a target=\"_blank\" rel=\"noopener nofollow\" href=\"\/\/artisansweb.net\" class=\"external external_icon\">artisansweb.net<\/a><\/div><\/p>\n","protected":false},"excerpt":{"rendered":"<p>Cherchez-vous \u00e0 afficher des produits connexes sur votre boutique en ligne bas\u00e9e sur WooCommerce\u00a0? Dans cet article, nous vous montrons comment utiliser une API pour afficher les relations<\/p>\n","protected":false},"author":1,"featured_media":20723,"comment_status":"closed","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"footnotes":"","_wp_rev_ctl_limit":""},"categories":[312,608],"tags":[844],"class_list":["post-24469","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-base-de-donnees","category-uncategorized-4","tag-affiai-fr"],"_links":{"self":[{"href":"https:\/\/themewp.inform.click\/fr\/wp-json\/wp\/v2\/posts\/24469","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/themewp.inform.click\/fr\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/themewp.inform.click\/fr\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/themewp.inform.click\/fr\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/themewp.inform.click\/fr\/wp-json\/wp\/v2\/comments?post=24469"}],"version-history":[{"count":0,"href":"https:\/\/themewp.inform.click\/fr\/wp-json\/wp\/v2\/posts\/24469\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/themewp.inform.click\/fr\/wp-json\/wp\/v2\/media\/20723"}],"wp:attachment":[{"href":"https:\/\/themewp.inform.click\/fr\/wp-json\/wp\/v2\/media?parent=24469"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/themewp.inform.click\/fr\/wp-json\/wp\/v2\/categories?post=24469"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/themewp.inform.click\/fr\/wp-json\/wp\/v2\/tags?post=24469"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}