{"id":321973,"date":"2022-02-11T05:22:50","date_gmt":"2022-02-11T05:22:50","guid":{"rendered":"https:\/\/webkul.com\/blog\/?p=321973"},"modified":"2022-04-29T10:09:06","modified_gmt":"2022-04-29T10:09:06","slug":"prestashop-data-provider-and-handler","status":"publish","type":"post","link":"https:\/\/webkul.com\/blog\/prestashop-data-provider-and-handler\/","title":{"rendered":"PrestaShop data provider and handler"},"content":{"rendered":"\n<p>In this blog we are going to discuss about saving data submitted from <a href=\"https:\/\/webkul.com\/blog\/symfony-form-in-prestashop-1-7-8-0\/\" target=\"_blank\" rel=\"noreferrer noopener\">Symfony form, in PrestaShop 1.7.8.0 <\/a>. Here we are going to demonstrate PrestaShop 1.7.8.0, data provider and handler to save submitted data.<\/p>\n\n\n\n<p>We are continuing this blog where we end the <a href=\"https:\/\/webkul.com\/blog\/symfony-form-in-prestashop-1-7-8-0\/\" target=\"_blank\" rel=\"noreferrer noopener\">last one<\/a>.<\/p>\n\n\n\n<h4 class=\"wp-block-heading\" id=\"step-7\">Step 7 :<\/h4>\n\n\n\n<p>Add below lines in <code><strong>services.yml<\/strong><\/code><\/p>\n\n\n\n<pre class=\"EnlighterJSRAW\">services:\n  _defaults:\n    public: true\n\n  prestashop.module.demoforms.form.type.demo_first_text:\n    class: &#039;PrestaShop\\Module\\DemoForms\\Form\\DemoFirstTextType&#039;\n    parent: &#039;form.type.translatable.aware&#039;\n    public: true\n    tags:\n      - { name: form.type }\n\n  prestashop.module.demoforms.form.demo_first_text_form_data_provider:\n    class: &#039;PrestaShop\\Module\\DemoForms\\Form\\DemoFirstTextFormDataProvider&#039;\n    arguments:\n      - &#039;@prestashop.module.demoforms.form.demo_first_text_data_configuration&#039;\n\n  prestashop.module.demoforms.form.demo_first_text_form_data_handler:\n    class: &#039;PrestaShop\\PrestaShop\\Core\\Form\\Handler&#039;\n    arguments:\n      - &#039;@form.factory&#039;\n      - &#039;@prestashop.core.hook.dispatcher&#039;\n      - &#039;@prestashop.module.demoforms.form.demo_first_text_form_data_provider&#039;\n      - &#039;PrestaShop\\Module\\DemoForms\\Form\\DemoFirstTextType&#039;\n      - &#039;DemoFirst&#039;\n\n  prestashop.module.demoforms.form.demo_first_text_data_configuration:\n    class: PrestaShop\\Module\\DemoForms\\Form\\DemoFirstTextDataConfiguration\n    arguments: &#091;&#039;@prestashop.adapter.legacy.configuration&#039;]<\/pre>\n\n\n\n<p>Services loads all the handler and data provider written in src\/Form folder<\/p>\n\n\n\n<h4 class=\"wp-block-heading\" id=\"step-8\">Step 8 :<\/h4>\n\n\n\n<p>Add below line in <strong>DemoFirstController.php<\/strong> index function :<\/p>\n\n\n\n<pre class=\"EnlighterJSRAW\">public function index(Request $request): Response\n{\n    $textFormDataHandler = $this-&gt;get(\n        &#039;prestashop.module.demoforms.form.demo_first_text_form_data_handler&#039;\n    );\n    $textForm = $textFormDataHandler-&gt;getForm();\n    $textForm-&gt;handleRequest($request);\n    if ($textForm-&gt;isSubmitted() &amp;&amp; $textForm-&gt;isValid()) {\n        $errors = $textFormDataHandler-&gt;save($textForm-&gt;getData());\n        if (empty($errors)) {\n            $this-&gt;addFlash(&#039;success&#039;, \n                $this-&gt;trans(&#039;Successful update.&#039;, &#039;Admin.Notifications.Success&#039;)\n            );\n            return $this-&gt;redirectToRoute(&#039;demo_first_form);\n        }\n        $this-&gt;flashErrors($errors);\n   }\n   return $this-&gt;render(\n       &#039;@Modules\/demoforms\/views\/templates\/admin\/form.html.twig&#039;, \n       &#091;&#039;demoForms&#039; =&gt; $textForm-&gt;createView(),]\n   );\n}<\/pre>\n\n\n\n<p>Here we added flash message to show on error and success of saving process using form handler.<\/p>\n\n\n\n<figure class=\"wp-block-image size-large is-resized\"><img decoding=\"async\" src=\"https:\/\/cdnblog.webkul.com\/blog\/wp-content\/uploads\/2022\/02\/Screenshot_138.png\" alt=\"Symfony form data provider, handler in Prestashop 1.7.8.0\" width=\"707\" height=\"319\" loading=\"lazy\" \/><figcaption>Symfony form in PrestaShop 1.7.8.0<\/figcaption><\/figure>\n\n\n\n<h4 class=\"wp-block-heading\" id=\"step-9\">Step : 9 <\/h4>\n\n\n\n<p>Add below lines in <strong><code>DemoFirstTextFormDataProvider.php<\/code><\/strong> in Form<\/p>\n\n\n\n<pre class=\"EnlighterJSRAW\">namespace PrestaShop\\Module\\DemoForms\\Form;\nuse PrestaShop\\PrestaShop\\Core\\Configuration\\DataConfigurationInterface;\nuse PrestaShop\\PrestaShop\\Core\\Form\\FormDataProviderInterface;\n\nclass DemoFirstTextFormDataProvider implements FormDataProviderInterface\n{\n    private $demoFirstTextDataConfiguration;\n\n    public function __construct(DataConfigurationInterface $demoFirstTextDataConfiguration)\n    {\n        $this-&gt;demoFirstTextDataConfiguration = $demoFirstTextDataConfiguration;\n    }\n\n    public function getData(): array\n    {\n        return $this-&gt;demoFirstTextDataConfiguration-&gt;getConfiguration();\n    }\n\n    public function setData(array $data): array\n    {\n        return $this-&gt;demoFirstTextDataConfiguration-&gt;updateConfiguration($data);\n    }\n}<\/pre>\n\n\n\n<p>Data provider class help to load saved data from class configuration as written above.<\/p>\n\n\n\n<h4 class=\"wp-block-heading\" id=\"step-10\">Step 10 : <\/h4>\n\n\n\n<p>Add below line in <code><strong>DemoFirstTextDataConfiguration.php<\/strong><\/code> in From<\/p>\n\n\n\n<pre class=\"EnlighterJSRAW\">namespace PrestaShop\\Module\\DemoForms\\Form;\nuse PrestaShop\\PrestaShop\\Core\\Configuration\\DataConfigurationInterface;\nuse PrestaShop\\PrestaShop\\Core\\ConfigurationInterface;\n\nfinal class DemoFirstTextDataConfiguration implements DataConfigurationInterface\n{    \n    public const TRANSLATABLE_TEXT_AREA = &#039;DEMO_FORMS_TRANSLATABLE_TEXT_AREA_TYPE&#039;;\n    public const FORMATTED_TEXT_AREA_TYPE = &#039;DEMO_FORMS_FORMATTED_TEXT_AREA_TYPE&#039;;\n    private $configuration;\n    public function __construct(ConfigurationInterface $configuration)\n    {\n        $this-&gt;configuration = $configuration;\n    }\n    public function getConfiguration(): array\n    {\n        $return = &#091;];\n        if ($translatableTextArea = $this-&gt;configuration-&gt;get(static::TRANSLATABLE_TEXT_AREA)) {\n            $return&#091;&#039;translatable_text_area_type&#039;] = $translatableTextArea;\n        }\n        if ($formattedTextAreaType = $this-&gt;configuration-&gt;get(static::FORMATTED_TEXT_AREA_TYPE)) {\n            $return&#091;&#039;formatted_text_area_type&#039;] = $formattedTextAreaType;\n        }\n        return $return;\n    }\n    public function updateConfiguration(array $configuration): array\n    {\n        $this-&gt;configuration-&gt;set(\n            static::TRANSLATABLE_TEXT_AREA, \n            $configuration&#091;&#039;translatable_text_area_type&#039;]\n        );        \n        $this-&gt;configuration-&gt;set(\n            static::FORMATTED_TEXT_AREA_TYPE, $configuration&#091;&#039;formatted_text_area_type&#039;], \n            null,\n            &#091;&#039;html&#039; =&gt; true]\n        );        \n        return &#091;];\n    }    \n    public function validateConfiguration(array $configuration): bool\n    {\n        return true;\n    }\n}<\/pre>\n\n\n\n<p>That\u2019s all about PrestaShop data provider and handler, this is how you can use <a href=\"https:\/\/webkul.com\/blog\/symfony-form-in-prestashop-1-7-8-0\/\" target=\"_blank\" rel=\"noreferrer noopener\">Symfony Form in Prestashop 1.7.8.0<\/a> to saving data in configuration class.<\/p>\n\n\n\n<p>If you are facing any issues or doubts in the above process, please feel free to contact us through the comment section.<\/p>\n\n\n\n<p>I would be happy to help.<\/p>\n\n\n\n<p>Also, you can explore our&nbsp;<a href=\"https:\/\/webkul.com\/prestashop-development\/\" target=\"_blank\" rel=\"noreferrer noopener\">PrestaShop Development Services<\/a>&nbsp;and a large range of quality&nbsp;<a href=\"https:\/\/store.webkul.com\/PrestaShop-Extensions.html\">PrestaShop Modules<\/a>.<\/p>\n\n\n\n<p>For any doubt contact us at&nbsp;<a href=\"mailto:support@webkul.com\" target=\"_blank\" rel=\"noreferrer noopener\">support@webkul.com<\/a>.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>In this blog we are going to discuss about saving data submitted from Symfony form, in PrestaShop 1.7.8.0 . Here we are going to demonstrate PrestaShop 1.7.8.0, data provider and handler to save submitted data. We are continuing this blog where we end the last one. Step 7 : Add below lines in services.yml Services <a href=\"https:\/\/webkul.com\/blog\/prestashop-data-provider-and-handler\/\">[&#8230;]<\/a><\/p>\n","protected":false},"author":386,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[209],"tags":[4126,5003],"class_list":["post-321973","post","type-post","status-publish","format-standard","hentry","category-prestashop","tag-prestashop-1-7","tag-prestashop-form"],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v24.5 - https:\/\/yoast.com\/wordpress\/plugins\/seo\/ -->\n<title>PrestaShop data provider and handler - Webkul Blog<\/title>\n<meta name=\"description\" content=\"Symfony form data provider, handler in PrestaShop 1.7.8.0 to save submitted data using Symfony form using services written in yml.\" \/>\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\/prestashop-data-provider-and-handler\/\" \/>\n<meta property=\"og:locale\" content=\"en_US\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"PrestaShop data provider and handler - Webkul Blog\" \/>\n<meta property=\"og:description\" content=\"Symfony form data provider, handler in PrestaShop 1.7.8.0 to save submitted data using Symfony form using services written in yml.\" \/>\n<meta property=\"og:url\" content=\"https:\/\/webkul.com\/blog\/prestashop-data-provider-and-handler\/\" \/>\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=\"2022-02-11T05:22:50+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"2022-04-29T10:09:06+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/webkul.com\/blog\/wp-content\/uploads\/2022\/02\/Screenshot_138.png\" \/>\n<meta name=\"author\" content=\"Vineet Kr. Gupta\" \/>\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=\"Vineet Kr. Gupta\" \/>\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\/prestashop-data-provider-and-handler\/#article\",\"isPartOf\":{\"@id\":\"https:\/\/webkul.com\/blog\/prestashop-data-provider-and-handler\/\"},\"author\":{\"name\":\"Vineet Kr. Gupta\",\"@id\":\"https:\/\/webkul.com\/blog\/#\/schema\/person\/bb871a3e8dd81b2b0a1690f195da6208\"},\"headline\":\"PrestaShop data provider and handler\",\"datePublished\":\"2022-02-11T05:22:50+00:00\",\"dateModified\":\"2022-04-29T10:09:06+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\/\/webkul.com\/blog\/prestashop-data-provider-and-handler\/\"},\"wordCount\":206,\"commentCount\":0,\"publisher\":{\"@id\":\"https:\/\/webkul.com\/blog\/#organization\"},\"image\":{\"@id\":\"https:\/\/webkul.com\/blog\/prestashop-data-provider-and-handler\/#primaryimage\"},\"thumbnailUrl\":\"https:\/\/webkul.com\/blog\/wp-content\/uploads\/2022\/02\/Screenshot_138.png\",\"keywords\":[\"Prestashop 1.7\",\"prestashop form\"],\"articleSection\":[\"prestashop\"],\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"CommentAction\",\"name\":\"Comment\",\"target\":[\"https:\/\/webkul.com\/blog\/prestashop-data-provider-and-handler\/#respond\"]}]},{\"@type\":\"WebPage\",\"@id\":\"https:\/\/webkul.com\/blog\/prestashop-data-provider-and-handler\/\",\"url\":\"https:\/\/webkul.com\/blog\/prestashop-data-provider-and-handler\/\",\"name\":\"PrestaShop data provider and handler - Webkul Blog\",\"isPartOf\":{\"@id\":\"https:\/\/webkul.com\/blog\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\/\/webkul.com\/blog\/prestashop-data-provider-and-handler\/#primaryimage\"},\"image\":{\"@id\":\"https:\/\/webkul.com\/blog\/prestashop-data-provider-and-handler\/#primaryimage\"},\"thumbnailUrl\":\"https:\/\/webkul.com\/blog\/wp-content\/uploads\/2022\/02\/Screenshot_138.png\",\"datePublished\":\"2022-02-11T05:22:50+00:00\",\"dateModified\":\"2022-04-29T10:09:06+00:00\",\"description\":\"Symfony form data provider, handler in PrestaShop 1.7.8.0 to save submitted data using Symfony form using services written in yml.\",\"breadcrumb\":{\"@id\":\"https:\/\/webkul.com\/blog\/prestashop-data-provider-and-handler\/#breadcrumb\"},\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/webkul.com\/blog\/prestashop-data-provider-and-handler\/\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/webkul.com\/blog\/prestashop-data-provider-and-handler\/#primaryimage\",\"url\":\"https:\/\/cdnblog.webkul.com\/blog\/wp-content\/uploads\/2022\/02\/Screenshot_138.png\",\"contentUrl\":\"https:\/\/cdnblog.webkul.com\/blog\/wp-content\/uploads\/2022\/02\/Screenshot_138.png\",\"width\":680,\"height\":307,\"caption\":\"Screenshot_138\"},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\/\/webkul.com\/blog\/prestashop-data-provider-and-handler\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\/\/webkul.com\/blog\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"PrestaShop data provider and handler\"}]},{\"@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\/bb871a3e8dd81b2b0a1690f195da6208\",\"name\":\"Vineet Kr. Gupta\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/webkul.com\/blog\/#\/schema\/person\/image\/\",\"url\":\"https:\/\/secure.gravatar.com\/avatar\/b8dd0faa3589c82d64586b71a9e84be11a8b9a8f3b74bb952442b904af1c68f2?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\/b8dd0faa3589c82d64586b71a9e84be11a8b9a8f3b74bb952442b904af1c68f2?s=96&d=https%3A%2F%2Fcdnblog.webkul.com%2Fblog%2Fwp-content%2Fuploads%2F2019%2F10%2Fmike.png&r=g\",\"caption\":\"Vineet Kr. Gupta\"},\"description\":\"Proficient Software Engineer specializing in PrestaShop, with expertise in Mobile App Development, eCommerce Platform Development, and POS services. Delivers innovative, user-focused solutions that enhance functionality and drive efficient business operations.\",\"url\":\"https:\/\/webkul.com\/blog\/author\/vineetkr-gupta008\/\"}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"PrestaShop data provider and handler - Webkul Blog","description":"Symfony form data provider, handler in PrestaShop 1.7.8.0 to save submitted data using Symfony form using services written in yml.","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\/prestashop-data-provider-and-handler\/","og_locale":"en_US","og_type":"article","og_title":"PrestaShop data provider and handler - Webkul Blog","og_description":"Symfony form data provider, handler in PrestaShop 1.7.8.0 to save submitted data using Symfony form using services written in yml.","og_url":"https:\/\/webkul.com\/blog\/prestashop-data-provider-and-handler\/","og_site_name":"Webkul Blog","article_publisher":"https:\/\/www.facebook.com\/webkul\/","article_published_time":"2022-02-11T05:22:50+00:00","article_modified_time":"2022-04-29T10:09:06+00:00","og_image":[{"url":"https:\/\/webkul.com\/blog\/wp-content\/uploads\/2022\/02\/Screenshot_138.png","type":"","width":"","height":""}],"author":"Vineet Kr. Gupta","twitter_card":"summary_large_image","twitter_creator":"@webkul","twitter_site":"@webkul","twitter_misc":{"Written by":"Vineet Kr. Gupta","Est. reading time":"2 minutes"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/webkul.com\/blog\/prestashop-data-provider-and-handler\/#article","isPartOf":{"@id":"https:\/\/webkul.com\/blog\/prestashop-data-provider-and-handler\/"},"author":{"name":"Vineet Kr. Gupta","@id":"https:\/\/webkul.com\/blog\/#\/schema\/person\/bb871a3e8dd81b2b0a1690f195da6208"},"headline":"PrestaShop data provider and handler","datePublished":"2022-02-11T05:22:50+00:00","dateModified":"2022-04-29T10:09:06+00:00","mainEntityOfPage":{"@id":"https:\/\/webkul.com\/blog\/prestashop-data-provider-and-handler\/"},"wordCount":206,"commentCount":0,"publisher":{"@id":"https:\/\/webkul.com\/blog\/#organization"},"image":{"@id":"https:\/\/webkul.com\/blog\/prestashop-data-provider-and-handler\/#primaryimage"},"thumbnailUrl":"https:\/\/webkul.com\/blog\/wp-content\/uploads\/2022\/02\/Screenshot_138.png","keywords":["Prestashop 1.7","prestashop form"],"articleSection":["prestashop"],"inLanguage":"en-US","potentialAction":[{"@type":"CommentAction","name":"Comment","target":["https:\/\/webkul.com\/blog\/prestashop-data-provider-and-handler\/#respond"]}]},{"@type":"WebPage","@id":"https:\/\/webkul.com\/blog\/prestashop-data-provider-and-handler\/","url":"https:\/\/webkul.com\/blog\/prestashop-data-provider-and-handler\/","name":"PrestaShop data provider and handler - Webkul Blog","isPartOf":{"@id":"https:\/\/webkul.com\/blog\/#website"},"primaryImageOfPage":{"@id":"https:\/\/webkul.com\/blog\/prestashop-data-provider-and-handler\/#primaryimage"},"image":{"@id":"https:\/\/webkul.com\/blog\/prestashop-data-provider-and-handler\/#primaryimage"},"thumbnailUrl":"https:\/\/webkul.com\/blog\/wp-content\/uploads\/2022\/02\/Screenshot_138.png","datePublished":"2022-02-11T05:22:50+00:00","dateModified":"2022-04-29T10:09:06+00:00","description":"Symfony form data provider, handler in PrestaShop 1.7.8.0 to save submitted data using Symfony form using services written in yml.","breadcrumb":{"@id":"https:\/\/webkul.com\/blog\/prestashop-data-provider-and-handler\/#breadcrumb"},"inLanguage":"en-US","potentialAction":[{"@type":"ReadAction","target":["https:\/\/webkul.com\/blog\/prestashop-data-provider-and-handler\/"]}]},{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/webkul.com\/blog\/prestashop-data-provider-and-handler\/#primaryimage","url":"https:\/\/cdnblog.webkul.com\/blog\/wp-content\/uploads\/2022\/02\/Screenshot_138.png","contentUrl":"https:\/\/cdnblog.webkul.com\/blog\/wp-content\/uploads\/2022\/02\/Screenshot_138.png","width":680,"height":307,"caption":"Screenshot_138"},{"@type":"BreadcrumbList","@id":"https:\/\/webkul.com\/blog\/prestashop-data-provider-and-handler\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/webkul.com\/blog\/"},{"@type":"ListItem","position":2,"name":"PrestaShop data provider and handler"}]},{"@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\/bb871a3e8dd81b2b0a1690f195da6208","name":"Vineet Kr. Gupta","image":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/webkul.com\/blog\/#\/schema\/person\/image\/","url":"https:\/\/secure.gravatar.com\/avatar\/b8dd0faa3589c82d64586b71a9e84be11a8b9a8f3b74bb952442b904af1c68f2?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\/b8dd0faa3589c82d64586b71a9e84be11a8b9a8f3b74bb952442b904af1c68f2?s=96&d=https%3A%2F%2Fcdnblog.webkul.com%2Fblog%2Fwp-content%2Fuploads%2F2019%2F10%2Fmike.png&r=g","caption":"Vineet Kr. Gupta"},"description":"Proficient Software Engineer specializing in PrestaShop, with expertise in Mobile App Development, eCommerce Platform Development, and POS services. Delivers innovative, user-focused solutions that enhance functionality and drive efficient business operations.","url":"https:\/\/webkul.com\/blog\/author\/vineetkr-gupta008\/"}]}},"amp_enabled":true,"_links":{"self":[{"href":"https:\/\/webkul.com\/blog\/wp-json\/wp\/v2\/posts\/321973","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\/386"}],"replies":[{"embeddable":true,"href":"https:\/\/webkul.com\/blog\/wp-json\/wp\/v2\/comments?post=321973"}],"version-history":[{"count":26,"href":"https:\/\/webkul.com\/blog\/wp-json\/wp\/v2\/posts\/321973\/revisions"}],"predecessor-version":[{"id":322084,"href":"https:\/\/webkul.com\/blog\/wp-json\/wp\/v2\/posts\/321973\/revisions\/322084"}],"wp:attachment":[{"href":"https:\/\/webkul.com\/blog\/wp-json\/wp\/v2\/media?parent=321973"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/webkul.com\/blog\/wp-json\/wp\/v2\/categories?post=321973"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/webkul.com\/blog\/wp-json\/wp\/v2\/tags?post=321973"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}