{"id":408610,"date":"2023-11-03T10:43:30","date_gmt":"2023-11-03T10:43:30","guid":{"rendered":"https:\/\/webkul.com\/blog\/?p=408610"},"modified":"2026-03-03T12:56:40","modified_gmt":"2026-03-03T12:56:40","slug":"how-to-create-product-page-using-prestashop-api-in-nextjs","status":"publish","type":"post","link":"https:\/\/webkul.com\/blog\/how-to-create-product-page-using-prestashop-api-in-nextjs\/","title":{"rendered":"How to create Product page using Prestashop API in NextJs"},"content":{"rendered":"\n<p><strong>How to use Next.JS with Prestashop<\/strong>&nbsp; Hello Guys<em>,<\/em>&nbsp;Today in this blog we will see all about the API integration of the Prestashop product detail page with the Next JS.<\/p>\n\n\n\n<p>Let&#8217;s get started, as we think you will find this blog to be interactive.<\/p>\n\n\n\n<p>PrestaShop is a free, open-source eCommerce platform that lets users quickly build and customize online stores, making website development simple, flexible, and accessible.<\/p>\n\n\n\n<p>First, we\u2019ll have some discussion about&nbsp;NextJS&nbsp;and begin by introducing the concept of Prestashop and its API.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">What is NextJS?<\/h3>\n\n\n\n<p>Next Js is a full-stack web development react framework. Which is a free and open-source front-end react library framework for building user interfaces based on UI components.<\/p>\n\n\n\n<p>All the features needed to create a variety of websites and apps are provided by <strong>NextJs<\/strong>, including routing, static and server rendering, static-side regeneration, and support for Typescript.<\/p>\n\n\n\n<p>For CSS design if you want to make a good user interface you can choose your desired Dependencies for the design part.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">About Prestashop API<\/h3>\n\n\n\n<p>Basically, the <a href=\"https:\/\/store.webkul.com\/Prestashop-Marketplace-Web-Service-API.html\" target=\"_blank\" rel=\"noreferrer noopener\">Prestashop API<\/a> is normally the Rest API which provides the e-commerce product services and serves as the bridge between your application and the Prestashop&nbsp;Platform.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">Starting Out<\/h3>\n\n\n\n<p>Start by setting up your <a href=\"https:\/\/webkul.com\/blog\/project-setup-next-js\/\" target=\"_blank\" rel=\"noreferrer noopener\">Next.js project<\/a> using a proper setup guide. The project also uses <a href=\"https:\/\/webkul.com\/blog\/how-to-use-tailwind-css-in-next-js\/\" target=\"_blank\" rel=\"noreferrer noopener\">Tailwind CSS<\/a> for styling and UI design.<\/p>\n\n\n\n<p><strong>Global Variable Setup \u2013<\/strong>&nbsp;We\u2019re going to create a file&nbsp;named .env in the root directory and add the following code.<\/p>\n\n\n\n<pre class=\"EnlighterJSRAW\">\/\/------------.env--------------\/\/\nPRESTASHOP_ENDPOINT=&lt;PRESTASHOP_ENDPOINT&gt;\nAPP_URL=https:\/\/myprestashop.com\/\nWEBSERVICE_KEY=&lt;Webservice_Key&gt;\nIMAGE_DOMAIN=&lt;myprestashop.com&gt;<\/pre>\n\n\n\n<p>You also need to define environment variables in your <strong>next.config.js<\/strong> file<strong>.<\/strong> <strong>If<\/strong> <strong>you<\/strong> <strong>don&#8217;t<\/strong> <strong>define<\/strong> <strong>them,<\/strong> <strong>you<\/strong> <strong>won&#8217;t<\/strong> be able to use these variables in the front end.<\/p>\n\n\n\n<pre class=\"EnlighterJSRAW\">\/** @type {import(&#039;next&#039;).NextConfig} *\/\nconst nextConfig = {\n  env: {\n    WEBSERVICE_KEY: process.env.WEBSERVICE_KEY,\n    PRESTASHOP_ENDPOINT: process.env.PRESTASHOP_ENDPOINT,\n    IMAGE_DOMAIN: process.env.IMAGE_DOMAIN,\n  },\n  images: {\n    domains: &#091;process.env.IMAGE_DOMAIN],\n  },\n  reactStrictMode: true,\n}\n\nmodule.exports = nextConfig<\/pre>\n\n\n\n<p>Ensure you have required API endpoints like <strong>getproductpage<\/strong> and authenticate. To fetch data from the <strong>PrestaShop<\/strong> <strong>API<\/strong>, use the Fetch API or a library like <a href=\"https:\/\/www.npmjs.com\/package\/axios\" target=\"_blank\" rel=\"noreferrer noopener nofollow\"><strong>Axios<\/strong><\/a>.<\/p>\n\n\n\n<p>API Response (The mentioned image demonstrates PrestaShop&#8217;s product detail page\u2019s API response):<\/p>\n\n\n\n<figure class=\"wp-block-image size-large\"><img decoding=\"async\" width=\"1200\" height=\"729\" src=\"https:\/\/cdnblog.webkul.com\/blog\/wp-content\/uploads\/2023\/11\/Screenshot-from-2023-11-03-10-56-26-1200x729.png\" alt=\"Screenshot-from-2023-11-03-10-56-26\" class=\"wp-image-409419\" srcset=\"https:\/\/cdnblog.webkul.com\/blog\/wp-content\/uploads\/2023\/11\/Screenshot-from-2023-11-03-10-56-26-1200x729.png 1200w, https:\/\/cdnblog.webkul.com\/blog\/wp-content\/uploads\/2023\/11\/Screenshot-from-2023-11-03-10-56-26-300x182.png 300w, https:\/\/cdnblog.webkul.com\/blog\/wp-content\/uploads\/2023\/11\/Screenshot-from-2023-11-03-10-56-26-250x152.png 250w, https:\/\/cdnblog.webkul.com\/blog\/wp-content\/uploads\/2023\/11\/Screenshot-from-2023-11-03-10-56-26-768x466.png 768w, https:\/\/cdnblog.webkul.com\/blog\/wp-content\/uploads\/2023\/11\/Screenshot-from-2023-11-03-10-56-26.png 1489w\" sizes=\"(max-width: 1200px) 100vw, 1200px\" loading=\"lazy\" \/><\/figure>\n\n\n\n<p><strong>Create a Route file to Display the Product Detail Page:<\/strong><\/p>\n\n\n\n<p>The following code will be added to a file called [urlKey].js that will be created in pages\/product\/[urlKey].js.<\/p>\n\n\n\n<pre class=\"EnlighterJSRAW\">\/\/---------------pages\/product\/&#091;urlkey].js-----------\/\/\n\nimport Image from &quot;next\/image&quot;;\nimport React from &quot;react&quot;;\n\nconst Product = ({ product }) =&gt; {\n  const { image_links, name, price, description_short, quantity } = product;\n\n  return (\n    &lt;React.Fragment&gt;\n      &lt;div className=&quot;mt-6&quot;&gt;\n        &lt;div className=&quot;lg:px-24 md:px-12 px-3&quot;&gt;\n          &lt;div className=&quot;container mx-auto px-4&quot;&gt;\n            &lt;div className=&quot;lg:col-gap-12 xl:col-gap-16 mt-3 grid grid-cols-1 gap-12 lg:mt-12 lg:grid-cols-5 lg:gap-16&quot;&gt;\n              &lt;div className=&quot;lg:col-span-3 lg:row-end-1&quot;&gt;\n                &lt;div className=&quot;lg:order-2 &quot;&gt;\n                  &lt;div className=&quot;max-w-xl overflow-hidden rounded-lg&quot;&gt;\n                    &lt;Image\n                      className=&quot;h-&#091;70vh]&quot;\n                      src={image_links?.image_link?.&#091;0]?.large}\n                      width={500}\n                      height={230}\n                      priority={true}\n                      alt=&quot;loading&quot;\n                    \/&gt;\n                  &lt;\/div&gt;\n                &lt;\/div&gt;\n              &lt;\/div&gt;\n              &lt;div className=&quot;lg:col-span-4 lg:row-span-2 lg:row-end-2&quot;&gt;\n                &lt;h1 className=&quot;sm: text-2xl font-bold text-gray-900 sm:text-3xl&quot;&gt;\n                  {name}\n                &lt;\/h1&gt;\n                &lt;div className=&quot; mt-3&quot;&gt;\n                  &lt;p className=&quot; text-sm font-medium text-gray-500&quot;&gt;\n                    In Stock : {quantity}\n                  &lt;\/p&gt;\n                &lt;\/div&gt;\n                &lt;h2 className=&quot;mt-3 text-base text-gray-900&quot;&gt;Description &lt;\/h2&gt;\n                &lt;div className=&quot;mt-3  flex select-none flex-wrap items-center gap-1&quot;&gt;\n                  &lt;section&gt;\n                    &lt;div\n                      dangerouslySetInnerHTML={{\n                        __html: description_short.toString(),\n                      }}\n                    &gt;&lt;\/div&gt;\n                  &lt;\/section&gt;\n                &lt;\/div&gt;\n                &lt;div className=&quot;mt-10 flex flex-col items-center justify-between space-y-4 border-t border-b py-4 sm:flex-row sm:space-y-0&quot;&gt;\n                  &lt;div className=&quot;flex items-end&quot;&gt;\n                    &lt;h1 className=&quot;text-3xl font-bold&quot;&gt;{price}&lt;\/h1&gt;\n                  &lt;\/div&gt;\n                  &lt;button\n                    type=&quot;button&quot;\n                    className=&quot;inline-flex items-center justify-center rounded-md border-2 border-transparent bg-gray-900 bg-none px-12 py-3 text-center text-base font-bold text-white transition-all duration-200 ease-in-out focus:shadow hover:bg-gray-800&quot;\n                  &gt;\n                    &lt;svg\n                      xmlns=&quot;http:\/\/www.w3.org\/2000\/svg&quot;\n                      className=&quot;shrink-0 mr-3 h-5 w-5&quot;\n                      fill=&quot;none&quot;\n                      viewBox=&quot;0 0 24 24&quot;\n                      stroke=&quot;currentColor&quot;\n                      strokeWidth={2}\n                    &gt;\n                      &lt;path\n                        strokeLinecap=&quot;round&quot;\n                        strokeLinejoin=&quot;round&quot;\n                        d=&quot;M16 11V7a4 4 0 00-8 0v4M5 9h14l1 12H4L5 9z&quot;\n                      \/&gt;\n                    &lt;\/svg&gt;\n                    Add to cart\n                  &lt;\/button&gt;\n                &lt;\/div&gt;\n              &lt;\/div&gt;\n            &lt;\/div&gt;\n          &lt;\/div&gt;\n        &lt;\/div&gt;\n      &lt;\/div&gt;\n    &lt;\/React.Fragment&gt;\n  );\n};\n\nexport default Product;\n\nexport async function getStaticPaths() {\n  let paths = &#091;];\n  try {\n    const data = await fetchProduct();\n    const products = data?.products?.items || &#091;];\n    paths = products.map((product) =&gt; ({\n      params: { urlKey: product?.url_key || &quot;404&quot; },\n    }));\n  } catch (error) {\n    console.error(&quot;Error fetching data from API:&quot;, error);\n  }\n\n  return { paths, fallback: &quot;blocking&quot; };\n}\n\nexport async function getStaticProps({ params }) {\n  const productInfo = await fetchProduct(params?.urlKey);\n  if (productInfo.length &gt; 0) {\n    return {\n      notFound: true,\n    };\n  }\n  return {\n    props: {\n      product: productInfo?.product,\n    },\n    revalidate: 100,\n  };\n}\n\nconst fetchProduct = async (urlKey = null) =&gt; {\n  const URL = `${process.env.PRESTASHOP_ENDPOINT}\/getproductpage?outputformat=json&amp;width=720&amp;id_product=${urlKey}&amp;ws_key=${process.env.WEBSERVICE_KEY}`;\n  const response = await fetch(URL, {\n    method: &quot;GET&quot;,\n    headers: {\n      &quot;Content-Type&quot;: &quot;application\/json&quot;,\n    },\n  });\n  if (response.status !== 200) {\n    throw new Error(`API request failed with status ${response.status}`);\n  }\n  return response.json();\n};<\/pre>\n\n\n\n<p>You can see the result on&nbsp;http:\/\/localhost:3000<\/p>\n\n\n\n<figure class=\"wp-block-image size-large\"><img decoding=\"async\" width=\"1200\" height=\"497\" src=\"https:\/\/cdnblog.webkul.com\/blog\/wp-content\/uploads\/2023\/11\/Screenshot-from-2023-11-03-15-32-53-1200x497.png\" alt=\"Screenshot-from-2023-11-03-15-32-53\" class=\"wp-image-409544\" srcset=\"https:\/\/cdnblog.webkul.com\/blog\/wp-content\/uploads\/2023\/11\/Screenshot-from-2023-11-03-15-32-53-1200x497.png 1200w, https:\/\/cdnblog.webkul.com\/blog\/wp-content\/uploads\/2023\/11\/Screenshot-from-2023-11-03-15-32-53-300x124.png 300w, https:\/\/cdnblog.webkul.com\/blog\/wp-content\/uploads\/2023\/11\/Screenshot-from-2023-11-03-15-32-53-250x104.png 250w, https:\/\/cdnblog.webkul.com\/blog\/wp-content\/uploads\/2023\/11\/Screenshot-from-2023-11-03-15-32-53-768x318.png 768w, https:\/\/cdnblog.webkul.com\/blog\/wp-content\/uploads\/2023\/11\/Screenshot-from-2023-11-03-15-32-53-1536x636.png 1536w, https:\/\/cdnblog.webkul.com\/blog\/wp-content\/uploads\/2023\/11\/Screenshot-from-2023-11-03-15-32-53.png 1869w\" sizes=\"(max-width: 1200px) 100vw, 1200px\" loading=\"lazy\" \/><\/figure>\n\n\n\n<p>Start <a href=\"https:\/\/webkul.com\/prestashop-headless-development\/\">Prestashop Headless Development<\/a> with Webkul.<\/p>\n\n\n\n<p>Happy Coding \ud83d\ude42<\/p>\n","protected":false},"excerpt":{"rendered":"<p>How to use Next.JS with Prestashop&nbsp; Hello Guys,&nbsp;Today in this blog we will see all about the API integration of the Prestashop product detail page with the Next JS. Let&#8217;s get started, as we think you will find this blog to be interactive. PrestaShop is a free, open-source eCommerce platform that lets users quickly build <a href=\"https:\/\/webkul.com\/blog\/how-to-create-product-page-using-prestashop-api-in-nextjs\/\">[&#8230;]<\/a><\/p>\n","protected":false},"author":377,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[1173,198,13575,209,6357],"tags":[292,12682,2065,6883,14289],"class_list":["post-408610","post","type-post","status-publish","format-standard","hentry","category-api-2","category-javascript","category-next-js","category-prestashop","category-react-js","tag-api","tag-nextjs","tag-prestashop","tag-product-page","tag-reactjs"],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v24.5 - https:\/\/yoast.com\/wordpress\/plugins\/seo\/ -->\n<title>How to create Product page using Prestashop API in NextJs - Webkul Blog<\/title>\n<meta name=\"description\" content=\"How to use Next.JS with Prestashop\u00a0 Hello Guys,\u00a0Today in this blog we will see all about the API integration of the Prestashop product detail..\" \/>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/webkul.com\/blog\/how-to-create-product-page-using-prestashop-api-in-nextjs\/\" \/>\n<meta property=\"og:locale\" content=\"en_US\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"How to create Product page using Prestashop API in NextJs - Webkul Blog\" \/>\n<meta property=\"og:description\" content=\"How to use Next.JS with Prestashop\u00a0 Hello Guys,\u00a0Today in this blog we will see all about the API integration of the Prestashop product detail..\" \/>\n<meta property=\"og:url\" content=\"https:\/\/webkul.com\/blog\/how-to-create-product-page-using-prestashop-api-in-nextjs\/\" \/>\n<meta property=\"og:site_name\" content=\"Webkul Blog\" \/>\n<meta property=\"article:publisher\" content=\"https:\/\/www.facebook.com\/webkul\/\" \/>\n<meta property=\"article:published_time\" content=\"2023-11-03T10:43:30+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"2026-03-03T12:56:40+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/webkul.com\/blog\/wp-content\/uploads\/2023\/11\/Screenshot-from-2023-11-03-10-56-26-1200x729.png\" \/>\n<meta name=\"author\" content=\"Rahul Chaudhary\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:creator\" content=\"@webkul\" \/>\n<meta name=\"twitter:site\" content=\"@webkul\" \/>\n<meta name=\"twitter:label1\" content=\"Written by\" \/>\n\t<meta name=\"twitter:data1\" content=\"Rahul Chaudhary\" \/>\n\t<meta name=\"twitter:label2\" content=\"Est. reading time\" \/>\n\t<meta name=\"twitter:data2\" content=\"2 minutes\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\/\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\/\/webkul.com\/blog\/how-to-create-product-page-using-prestashop-api-in-nextjs\/#article\",\"isPartOf\":{\"@id\":\"https:\/\/webkul.com\/blog\/how-to-create-product-page-using-prestashop-api-in-nextjs\/\"},\"author\":{\"name\":\"Rahul Chaudhary\",\"@id\":\"https:\/\/webkul.com\/blog\/#\/schema\/person\/07d5b40e4a4b5c6996d171e134826b75\"},\"headline\":\"How to create Product page using Prestashop API in NextJs\",\"datePublished\":\"2023-11-03T10:43:30+00:00\",\"dateModified\":\"2026-03-03T12:56:40+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\/\/webkul.com\/blog\/how-to-create-product-page-using-prestashop-api-in-nextjs\/\"},\"wordCount\":378,\"commentCount\":0,\"publisher\":{\"@id\":\"https:\/\/webkul.com\/blog\/#organization\"},\"image\":{\"@id\":\"https:\/\/webkul.com\/blog\/how-to-create-product-page-using-prestashop-api-in-nextjs\/#primaryimage\"},\"thumbnailUrl\":\"https:\/\/webkul.com\/blog\/wp-content\/uploads\/2023\/11\/Screenshot-from-2023-11-03-10-56-26-1200x729.png\",\"keywords\":[\"api\",\"nextjs\",\"prestashop\",\"product page\",\"reactjs\"],\"articleSection\":[\"API\",\"JavaScript\",\"next js\",\"prestashop\",\"react js\"],\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"CommentAction\",\"name\":\"Comment\",\"target\":[\"https:\/\/webkul.com\/blog\/how-to-create-product-page-using-prestashop-api-in-nextjs\/#respond\"]}]},{\"@type\":\"WebPage\",\"@id\":\"https:\/\/webkul.com\/blog\/how-to-create-product-page-using-prestashop-api-in-nextjs\/\",\"url\":\"https:\/\/webkul.com\/blog\/how-to-create-product-page-using-prestashop-api-in-nextjs\/\",\"name\":\"How to create Product page using Prestashop API in NextJs - Webkul Blog\",\"isPartOf\":{\"@id\":\"https:\/\/webkul.com\/blog\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\/\/webkul.com\/blog\/how-to-create-product-page-using-prestashop-api-in-nextjs\/#primaryimage\"},\"image\":{\"@id\":\"https:\/\/webkul.com\/blog\/how-to-create-product-page-using-prestashop-api-in-nextjs\/#primaryimage\"},\"thumbnailUrl\":\"https:\/\/webkul.com\/blog\/wp-content\/uploads\/2023\/11\/Screenshot-from-2023-11-03-10-56-26-1200x729.png\",\"datePublished\":\"2023-11-03T10:43:30+00:00\",\"dateModified\":\"2026-03-03T12:56:40+00:00\",\"description\":\"How to use Next.JS with Prestashop\u00a0 Hello Guys,\u00a0Today in this blog we will see all about the API integration of the Prestashop product detail..\",\"breadcrumb\":{\"@id\":\"https:\/\/webkul.com\/blog\/how-to-create-product-page-using-prestashop-api-in-nextjs\/#breadcrumb\"},\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/webkul.com\/blog\/how-to-create-product-page-using-prestashop-api-in-nextjs\/\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/webkul.com\/blog\/how-to-create-product-page-using-prestashop-api-in-nextjs\/#primaryimage\",\"url\":\"https:\/\/cdnblog.webkul.com\/blog\/wp-content\/uploads\/2023\/11\/Screenshot-from-2023-11-03-10-56-26.png\",\"contentUrl\":\"https:\/\/cdnblog.webkul.com\/blog\/wp-content\/uploads\/2023\/11\/Screenshot-from-2023-11-03-10-56-26.png\",\"width\":1489,\"height\":904,\"caption\":\"Screenshot-from-2023-11-03-10-56-26\"},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\/\/webkul.com\/blog\/how-to-create-product-page-using-prestashop-api-in-nextjs\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\/\/webkul.com\/blog\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"How to create Product page using Prestashop API in NextJs\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\/\/webkul.com\/blog\/#website\",\"url\":\"https:\/\/webkul.com\/blog\/\",\"name\":\"Webkul Blog\",\"description\":\"\",\"publisher\":{\"@id\":\"https:\/\/webkul.com\/blog\/#organization\"},\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\/\/webkul.com\/blog\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"en-US\"},{\"@type\":\"Organization\",\"@id\":\"https:\/\/webkul.com\/blog\/#organization\",\"name\":\"WebKul Software Private Limited\",\"url\":\"https:\/\/webkul.com\/blog\/\",\"logo\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/webkul.com\/blog\/#\/schema\/logo\/image\/\",\"url\":\"https:\/\/cdnblog.webkul.com\/blog\/wp-content\/uploads\/2021\/08\/webkul-logo-accent-sq.png\",\"contentUrl\":\"https:\/\/cdnblog.webkul.com\/blog\/wp-content\/uploads\/2021\/08\/webkul-logo-accent-sq.png\",\"width\":380,\"height\":380,\"caption\":\"WebKul Software Private Limited\"},\"image\":{\"@id\":\"https:\/\/webkul.com\/blog\/#\/schema\/logo\/image\/\"},\"sameAs\":[\"https:\/\/www.facebook.com\/webkul\/\",\"https:\/\/x.com\/webkul\",\"https:\/\/www.instagram.com\/webkul\/\",\"https:\/\/www.linkedin.com\/company\/webkul\",\"https:\/\/www.youtube.com\/user\/webkul\/\"]},{\"@type\":\"Person\",\"@id\":\"https:\/\/webkul.com\/blog\/#\/schema\/person\/07d5b40e4a4b5c6996d171e134826b75\",\"name\":\"Rahul Chaudhary\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/webkul.com\/blog\/#\/schema\/person\/image\/\",\"url\":\"https:\/\/secure.gravatar.com\/avatar\/40e957d926aaa241dc1de7dd09cfea4a0c86ed9fa29bb7eda51de1a8967864e7?s=96&d=https%3A%2F%2Fcdnblog.webkul.com%2Fblog%2Fwp-content%2Fuploads%2F2019%2F10%2Fmike.png&r=g\",\"contentUrl\":\"https:\/\/secure.gravatar.com\/avatar\/40e957d926aaa241dc1de7dd09cfea4a0c86ed9fa29bb7eda51de1a8967864e7?s=96&d=https%3A%2F%2Fcdnblog.webkul.com%2Fblog%2Fwp-content%2Fuploads%2F2019%2F10%2Fmike.png&r=g\",\"caption\":\"Rahul Chaudhary\"},\"url\":\"https:\/\/webkul.com\/blog\/author\/rahulchaudhary766\/\"}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"How to create Product page using Prestashop API in NextJs - Webkul Blog","description":"How to use Next.JS with Prestashop\u00a0 Hello Guys,\u00a0Today in this blog we will see all about the API integration of the Prestashop product detail..","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/webkul.com\/blog\/how-to-create-product-page-using-prestashop-api-in-nextjs\/","og_locale":"en_US","og_type":"article","og_title":"How to create Product page using Prestashop API in NextJs - Webkul Blog","og_description":"How to use Next.JS with Prestashop\u00a0 Hello Guys,\u00a0Today in this blog we will see all about the API integration of the Prestashop product detail..","og_url":"https:\/\/webkul.com\/blog\/how-to-create-product-page-using-prestashop-api-in-nextjs\/","og_site_name":"Webkul Blog","article_publisher":"https:\/\/www.facebook.com\/webkul\/","article_published_time":"2023-11-03T10:43:30+00:00","article_modified_time":"2026-03-03T12:56:40+00:00","og_image":[{"url":"https:\/\/webkul.com\/blog\/wp-content\/uploads\/2023\/11\/Screenshot-from-2023-11-03-10-56-26-1200x729.png","type":"","width":"","height":""}],"author":"Rahul Chaudhary","twitter_card":"summary_large_image","twitter_creator":"@webkul","twitter_site":"@webkul","twitter_misc":{"Written by":"Rahul Chaudhary","Est. reading time":"2 minutes"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/webkul.com\/blog\/how-to-create-product-page-using-prestashop-api-in-nextjs\/#article","isPartOf":{"@id":"https:\/\/webkul.com\/blog\/how-to-create-product-page-using-prestashop-api-in-nextjs\/"},"author":{"name":"Rahul Chaudhary","@id":"https:\/\/webkul.com\/blog\/#\/schema\/person\/07d5b40e4a4b5c6996d171e134826b75"},"headline":"How to create Product page using Prestashop API in NextJs","datePublished":"2023-11-03T10:43:30+00:00","dateModified":"2026-03-03T12:56:40+00:00","mainEntityOfPage":{"@id":"https:\/\/webkul.com\/blog\/how-to-create-product-page-using-prestashop-api-in-nextjs\/"},"wordCount":378,"commentCount":0,"publisher":{"@id":"https:\/\/webkul.com\/blog\/#organization"},"image":{"@id":"https:\/\/webkul.com\/blog\/how-to-create-product-page-using-prestashop-api-in-nextjs\/#primaryimage"},"thumbnailUrl":"https:\/\/webkul.com\/blog\/wp-content\/uploads\/2023\/11\/Screenshot-from-2023-11-03-10-56-26-1200x729.png","keywords":["api","nextjs","prestashop","product page","reactjs"],"articleSection":["API","JavaScript","next js","prestashop","react js"],"inLanguage":"en-US","potentialAction":[{"@type":"CommentAction","name":"Comment","target":["https:\/\/webkul.com\/blog\/how-to-create-product-page-using-prestashop-api-in-nextjs\/#respond"]}]},{"@type":"WebPage","@id":"https:\/\/webkul.com\/blog\/how-to-create-product-page-using-prestashop-api-in-nextjs\/","url":"https:\/\/webkul.com\/blog\/how-to-create-product-page-using-prestashop-api-in-nextjs\/","name":"How to create Product page using Prestashop API in NextJs - Webkul Blog","isPartOf":{"@id":"https:\/\/webkul.com\/blog\/#website"},"primaryImageOfPage":{"@id":"https:\/\/webkul.com\/blog\/how-to-create-product-page-using-prestashop-api-in-nextjs\/#primaryimage"},"image":{"@id":"https:\/\/webkul.com\/blog\/how-to-create-product-page-using-prestashop-api-in-nextjs\/#primaryimage"},"thumbnailUrl":"https:\/\/webkul.com\/blog\/wp-content\/uploads\/2023\/11\/Screenshot-from-2023-11-03-10-56-26-1200x729.png","datePublished":"2023-11-03T10:43:30+00:00","dateModified":"2026-03-03T12:56:40+00:00","description":"How to use Next.JS with Prestashop\u00a0 Hello Guys,\u00a0Today in this blog we will see all about the API integration of the Prestashop product detail..","breadcrumb":{"@id":"https:\/\/webkul.com\/blog\/how-to-create-product-page-using-prestashop-api-in-nextjs\/#breadcrumb"},"inLanguage":"en-US","potentialAction":[{"@type":"ReadAction","target":["https:\/\/webkul.com\/blog\/how-to-create-product-page-using-prestashop-api-in-nextjs\/"]}]},{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/webkul.com\/blog\/how-to-create-product-page-using-prestashop-api-in-nextjs\/#primaryimage","url":"https:\/\/cdnblog.webkul.com\/blog\/wp-content\/uploads\/2023\/11\/Screenshot-from-2023-11-03-10-56-26.png","contentUrl":"https:\/\/cdnblog.webkul.com\/blog\/wp-content\/uploads\/2023\/11\/Screenshot-from-2023-11-03-10-56-26.png","width":1489,"height":904,"caption":"Screenshot-from-2023-11-03-10-56-26"},{"@type":"BreadcrumbList","@id":"https:\/\/webkul.com\/blog\/how-to-create-product-page-using-prestashop-api-in-nextjs\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/webkul.com\/blog\/"},{"@type":"ListItem","position":2,"name":"How to create Product page using Prestashop API in NextJs"}]},{"@type":"WebSite","@id":"https:\/\/webkul.com\/blog\/#website","url":"https:\/\/webkul.com\/blog\/","name":"Webkul Blog","description":"","publisher":{"@id":"https:\/\/webkul.com\/blog\/#organization"},"potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/webkul.com\/blog\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"en-US"},{"@type":"Organization","@id":"https:\/\/webkul.com\/blog\/#organization","name":"WebKul Software Private Limited","url":"https:\/\/webkul.com\/blog\/","logo":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/webkul.com\/blog\/#\/schema\/logo\/image\/","url":"https:\/\/cdnblog.webkul.com\/blog\/wp-content\/uploads\/2021\/08\/webkul-logo-accent-sq.png","contentUrl":"https:\/\/cdnblog.webkul.com\/blog\/wp-content\/uploads\/2021\/08\/webkul-logo-accent-sq.png","width":380,"height":380,"caption":"WebKul Software Private Limited"},"image":{"@id":"https:\/\/webkul.com\/blog\/#\/schema\/logo\/image\/"},"sameAs":["https:\/\/www.facebook.com\/webkul\/","https:\/\/x.com\/webkul","https:\/\/www.instagram.com\/webkul\/","https:\/\/www.linkedin.com\/company\/webkul","https:\/\/www.youtube.com\/user\/webkul\/"]},{"@type":"Person","@id":"https:\/\/webkul.com\/blog\/#\/schema\/person\/07d5b40e4a4b5c6996d171e134826b75","name":"Rahul Chaudhary","image":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/webkul.com\/blog\/#\/schema\/person\/image\/","url":"https:\/\/secure.gravatar.com\/avatar\/40e957d926aaa241dc1de7dd09cfea4a0c86ed9fa29bb7eda51de1a8967864e7?s=96&d=https%3A%2F%2Fcdnblog.webkul.com%2Fblog%2Fwp-content%2Fuploads%2F2019%2F10%2Fmike.png&r=g","contentUrl":"https:\/\/secure.gravatar.com\/avatar\/40e957d926aaa241dc1de7dd09cfea4a0c86ed9fa29bb7eda51de1a8967864e7?s=96&d=https%3A%2F%2Fcdnblog.webkul.com%2Fblog%2Fwp-content%2Fuploads%2F2019%2F10%2Fmike.png&r=g","caption":"Rahul Chaudhary"},"url":"https:\/\/webkul.com\/blog\/author\/rahulchaudhary766\/"}]}},"amp_enabled":true,"_links":{"self":[{"href":"https:\/\/webkul.com\/blog\/wp-json\/wp\/v2\/posts\/408610","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/webkul.com\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/webkul.com\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/webkul.com\/blog\/wp-json\/wp\/v2\/users\/377"}],"replies":[{"embeddable":true,"href":"https:\/\/webkul.com\/blog\/wp-json\/wp\/v2\/comments?post=408610"}],"version-history":[{"count":11,"href":"https:\/\/webkul.com\/blog\/wp-json\/wp\/v2\/posts\/408610\/revisions"}],"predecessor-version":[{"id":529168,"href":"https:\/\/webkul.com\/blog\/wp-json\/wp\/v2\/posts\/408610\/revisions\/529168"}],"wp:attachment":[{"href":"https:\/\/webkul.com\/blog\/wp-json\/wp\/v2\/media?parent=408610"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/webkul.com\/blog\/wp-json\/wp\/v2\/categories?post=408610"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/webkul.com\/blog\/wp-json\/wp\/v2\/tags?post=408610"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}