{"id":66771,"date":"2016-12-02T09:02:03","date_gmt":"2016-12-02T09:02:03","guid":{"rendered":"http:\/\/webkul.com\/blog\/?p=66771"},"modified":"2019-01-08T08:11:02","modified_gmt":"2019-01-08T08:11:02","slug":"understanding-manipulating-cart-joomla-virtuemart","status":"publish","type":"post","link":"https:\/\/webkul.com\/blog\/understanding-manipulating-cart-joomla-virtuemart\/","title":{"rendered":"Understanding and manipulating cart in Joomla Virtuemart"},"content":{"rendered":"<p style=\"text-align: justify\">Like every platform Joomla Virtuemart stores its cart data in the current session for any guest or registered user, and creates an entry in its database table for a registered user only. In Joomla we can get these data as &#8211;<\/p>\n<pre class=\"brush:php\">\/\/ get Joomla session object\r\n$session = JFactory::getSession();\r\n\r\n\/\/ get current session cart data\r\n$session-&gt;get('vmcart',0,'vm');\r\n<\/pre>\n<div class=\"alert alert-info\">\n<div>To specify Virtuemart uses namespace &#8216;vm&#8217; to store its data in Joomla session<\/div>\n<\/div>\n<p style=\"text-align: justify\">In reference to database Virtuemart stores cart data in &#8216;#__virtuemart_carts&#8217; table, so you can get or update this data from there, with respect to a user id. Below presented is a simple query to get cart data from that table<\/p>\n<pre class=\"brush:php\">\/\/ get Joomla database object\r\n$db = JFactory::getDBO();\r\n$query = $db-&gt;getQuery(true);\r\n$query-&gt;select('cartData')\r\n\t-&gt;from($db-&gt;quoteName('#__virtuemart_carts'))\r\n\t-&gt;where('virtuemart_user_id='.$userId);\r\n$db-&gt;setQuery($query);\r\ntry{\r\n\t$vmCart = $db-&gt;loadResult();\r\n}\r\ncatch (Exception $e){\r\n     \/\/ To show any exception if occured\r\n     return JFactory::getApplication()-&gt;enqueueMessage($e-&gt;getMessage(), 'error');\r\n}\r\n<\/pre>\n<p style=\"text-align: justify\">Data received from above query will be JSON encoded, hence you have to simple use json_decode to use this data. Though one thing to mention here is that how virtuemart perform this json_decode so that the final data will be same as virtuemart get it, so it would not create any issues afterwards in data handling.<\/p>\n<pre class=\"brush:php\">(object)json_decode($vmCart,true);\r\n<\/pre>\n<p style=\"text-align: justify\">As you can see, json_decode is used with <strong>true<\/strong> as second parameter here because we want returned objects to be converted into associative arrays. Furthermore, it is afterwards casted with object. To understand its requirement in brief &#8211; Virtuemart requires card data as an object but also requires its parameter <strong>cartProductsData<\/strong> as an array containing arrays of products.<\/p>\n<h3>Structure would be as-<\/h3>\n<pre class=\"brush:plain\">stdClass Object\r\n(\r\n    [cartProductsData] =&gt; Array\r\n        (\r\n            [0] =&gt; Array\r\n                (\r\n                    [virtuemart_product_id] =&gt; 3178\r\n                    [quantity] =&gt; 1\r\n                    [customProductData] =&gt; Array\r\n                        (\r\n                        )\r\n\r\n                )\r\n\r\n            [1] =&gt; Array\r\n                (\r\n                    [virtuemart_product_id] =&gt; 3177\r\n                    [quantity] =&gt; 1\r\n                    [customProductData] =&gt; Array\r\n                        (\r\n                        )\r\n\r\n                )\r\n\r\n        )\r\n\r\n    [vendorId] =&gt; 1\r\n    . \/\/ other parameters\r\n    . \r\n    .\r\n    . \/\/ other parameters\r\n)\r\n<\/pre>\n<p style=\"text-align: justify\">Finally you can add, manipulate or remove elements of <strong>cartProductsData<\/strong> array and set back the updated cart object, which is finally managed by class <strong>VirtueMartCart<\/strong><\/p>\n<pre class=\"brush:php\">\/\/ include class file\r\nif (!class_exists( 'VirtueMartCart' )) \r\n\trequire(JPATH_SITE.DIRECTORY_SEPARATOR .'components' .DIRECTORY_SEPARATOR.'com_virtuemart'.DIRECTORY_SEPARATOR.'helpers'.DIRECTORY_SEPARATOR.'cart.php');\r\n\r\n\/\/ reset session for corrected session cart\r\n\/\/ the session will surely contain fully encoded cart data\r\n$session-&gt;set('vmcart', json_encode($yourNewCartData), 'vm');\r\n\r\n\/\/ get updated cart object\r\n$cart = VirtueMartCart::getCart();\r\n<\/pre>\n<p style=\"text-align: justify\">In another approach, if you are on the cart page you can simply redirect to cart, after setting cart session, so that Virtuemart will manage all the objects on its own with new values.<\/p>\n<pre class=\"brush:php\">$mainframe = JFactory::getApplication();\r\n$mainframe-&gt;redirect(JRoute::_('index.php?option=com_virtuemart&amp;view=cart', FALSE));\r\n<\/pre>\n<div class=\"panel panel-info\">\n<div class=\"panel-heading\">\n<div><span style=\"color: #ffffff\">Usage:<\/span><\/div>\n<\/div>\n<div class=\"panel-body\">\n<div>\n<p style=\"text-align: justify\">Cart manipulation is useful in extensions like &#8211; <strong>S<\/strong><strong>ingle Seller Checkout<\/strong> or <strong>S<\/strong><strong>plit Cart<\/strong>, where the cart needs to be manipulated as per particular choice. One of this kind of extension is available on Webkul store here:<\/p>\n<p><a href=\"https:\/\/store.webkul.com\/Joomla-Virtuemart-Marketplace-Split-Cart.html\" target=\"_blank\" rel=\"noopener\">Joomla Virtuemart Marketplace Split Cart<\/a><\/p>\n<\/div>\n<\/div>\n<\/div>\n<p>For any query regarding Joomla virtuemart plug-ins and add-ons you can communicate with us by creating a ticket at:<br \/>\n<a href=\"https:\/\/webkul.uvdesk.com\/en\/customer\/create-ticket\/\">https:\/\/webkul.uvdesk.com\/en\/customer\/create-ticket\/<\/a><\/p>\n","protected":false},"excerpt":{"rendered":"<p>Like every platform Joomla Virtuemart stores its cart data in the current session for any guest or registered user, and creates an entry in its database table for a registered user only. In Joomla we can get these data as &#8211; \/\/ get Joomla session object $session = JFactory::getSession(); \/\/ get current session cart data <a href=\"https:\/\/webkul.com\/blog\/understanding-manipulating-cart-joomla-virtuemart\/\">[&#8230;]<\/a><\/p>\n","protected":false},"author":46,"featured_media":66790,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[4,211,137],"tags":[3,2057,2060,590],"class_list":["post-66771","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-joomla-2","category-marketplace-2","category-virtuemart","tag-joomla","tag-php","tag-virtuemart","tag-webkul"],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v24.5 - https:\/\/yoast.com\/wordpress\/plugins\/seo\/ -->\n<title>Understanding and manipulating cart in Joomla Virtuemart - Webkul Blog<\/title>\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\/understanding-manipulating-cart-joomla-virtuemart\/\" \/>\n<meta property=\"og:locale\" content=\"en_US\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Understanding and manipulating cart in Joomla Virtuemart - Webkul Blog\" \/>\n<meta property=\"og:description\" content=\"Like every platform Joomla Virtuemart stores its cart data in the current session for any guest or registered user, and creates an entry in its database table for a registered user only. In Joomla we can get these data as &#8211; \/\/ get Joomla session object $session = JFactory::getSession(); \/\/ get current session cart data [...]\" \/>\n<meta property=\"og:url\" content=\"https:\/\/webkul.com\/blog\/understanding-manipulating-cart-joomla-virtuemart\/\" \/>\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=\"2016-12-02T09:02:03+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"2019-01-08T08:11:02+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/cdnblog.webkul.com\/blog\/wp-content\/uploads\/2016\/12\/Virtuemart-Code-Snippet.png\" \/>\n\t<meta property=\"og:image:width\" content=\"825\" \/>\n\t<meta property=\"og:image:height\" content=\"260\" \/>\n\t<meta property=\"og:image:type\" content=\"image\/png\" \/>\n<meta name=\"author\" content=\"Anant Garg\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:creator\" content=\"@https:\/\/twitter.com\/anant_maks\" \/>\n<meta name=\"twitter:site\" content=\"@webkul\" \/>\n<meta name=\"twitter:label1\" content=\"Written by\" \/>\n\t<meta name=\"twitter:data1\" content=\"Anant Garg\" \/>\n\t<meta name=\"twitter:label2\" content=\"Est. reading time\" \/>\n\t<meta name=\"twitter:data2\" content=\"3 minutes\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\/\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\/\/webkul.com\/blog\/understanding-manipulating-cart-joomla-virtuemart\/#article\",\"isPartOf\":{\"@id\":\"https:\/\/webkul.com\/blog\/understanding-manipulating-cart-joomla-virtuemart\/\"},\"author\":{\"name\":\"Anant Garg\",\"@id\":\"https:\/\/webkul.com\/blog\/#\/schema\/person\/6ea8b2fc21db1091826b5da1b3652b11\"},\"headline\":\"Understanding and manipulating cart in Joomla Virtuemart\",\"datePublished\":\"2016-12-02T09:02:03+00:00\",\"dateModified\":\"2019-01-08T08:11:02+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\/\/webkul.com\/blog\/understanding-manipulating-cart-joomla-virtuemart\/\"},\"wordCount\":354,\"commentCount\":0,\"publisher\":{\"@id\":\"https:\/\/webkul.com\/blog\/#organization\"},\"image\":{\"@id\":\"https:\/\/webkul.com\/blog\/understanding-manipulating-cart-joomla-virtuemart\/#primaryimage\"},\"thumbnailUrl\":\"https:\/\/cdnblog.webkul.com\/blog\/wp-content\/uploads\/2016\/12\/Virtuemart-Code-Snippet.png\",\"keywords\":[\"joomla\",\"PHP\",\"virtuemart\",\"webkul\"],\"articleSection\":[\"Joomla\",\"Marketplace\",\"virtuemart\"],\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"CommentAction\",\"name\":\"Comment\",\"target\":[\"https:\/\/webkul.com\/blog\/understanding-manipulating-cart-joomla-virtuemart\/#respond\"]}]},{\"@type\":\"WebPage\",\"@id\":\"https:\/\/webkul.com\/blog\/understanding-manipulating-cart-joomla-virtuemart\/\",\"url\":\"https:\/\/webkul.com\/blog\/understanding-manipulating-cart-joomla-virtuemart\/\",\"name\":\"Understanding and manipulating cart in Joomla Virtuemart - Webkul Blog\",\"isPartOf\":{\"@id\":\"https:\/\/webkul.com\/blog\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\/\/webkul.com\/blog\/understanding-manipulating-cart-joomla-virtuemart\/#primaryimage\"},\"image\":{\"@id\":\"https:\/\/webkul.com\/blog\/understanding-manipulating-cart-joomla-virtuemart\/#primaryimage\"},\"thumbnailUrl\":\"https:\/\/cdnblog.webkul.com\/blog\/wp-content\/uploads\/2016\/12\/Virtuemart-Code-Snippet.png\",\"datePublished\":\"2016-12-02T09:02:03+00:00\",\"dateModified\":\"2019-01-08T08:11:02+00:00\",\"breadcrumb\":{\"@id\":\"https:\/\/webkul.com\/blog\/understanding-manipulating-cart-joomla-virtuemart\/#breadcrumb\"},\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/webkul.com\/blog\/understanding-manipulating-cart-joomla-virtuemart\/\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/webkul.com\/blog\/understanding-manipulating-cart-joomla-virtuemart\/#primaryimage\",\"url\":\"https:\/\/cdnblog.webkul.com\/blog\/wp-content\/uploads\/2016\/12\/Virtuemart-Code-Snippet.png\",\"contentUrl\":\"https:\/\/cdnblog.webkul.com\/blog\/wp-content\/uploads\/2016\/12\/Virtuemart-Code-Snippet.png\",\"width\":825,\"height\":260,\"caption\":\"Joomla Virtuemart\"},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\/\/webkul.com\/blog\/understanding-manipulating-cart-joomla-virtuemart\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\/\/webkul.com\/blog\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Understanding and manipulating cart in Joomla Virtuemart\"}]},{\"@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\/6ea8b2fc21db1091826b5da1b3652b11\",\"name\":\"Anant Garg\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/webkul.com\/blog\/#\/schema\/person\/image\/\",\"url\":\"https:\/\/secure.gravatar.com\/avatar\/013d335b488c1077708a8177975749ebfc91bbb3c549ec6c19a6a83b3341ff76?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\/013d335b488c1077708a8177975749ebfc91bbb3c549ec6c19a6a83b3341ff76?s=96&d=https%3A%2F%2Fcdnblog.webkul.com%2Fblog%2Fwp-content%2Fuploads%2F2019%2F10%2Fmike.png&r=g\",\"caption\":\"Anant Garg\"},\"description\":\"A Salesforce Developer specialising in Sales Cloud, Service Cloud, and Marketing Cloud provides customised solutions to improve client interaction and streamline business processes. Expertise in Salesforce platform optimisation provides smooth integration and fosters strategic growth across a wide range of organisational processes.\",\"sameAs\":[\"http:\/\/writerunleashed4u.blogspot.in\",\"https:\/\/x.com\/https:\/\/twitter.com\/anant_maks\"],\"url\":\"https:\/\/webkul.com\/blog\/author\/anant158\/\"}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"Understanding and manipulating cart in Joomla Virtuemart - Webkul Blog","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\/understanding-manipulating-cart-joomla-virtuemart\/","og_locale":"en_US","og_type":"article","og_title":"Understanding and manipulating cart in Joomla Virtuemart - Webkul Blog","og_description":"Like every platform Joomla Virtuemart stores its cart data in the current session for any guest or registered user, and creates an entry in its database table for a registered user only. In Joomla we can get these data as &#8211; \/\/ get Joomla session object $session = JFactory::getSession(); \/\/ get current session cart data [...]","og_url":"https:\/\/webkul.com\/blog\/understanding-manipulating-cart-joomla-virtuemart\/","og_site_name":"Webkul Blog","article_publisher":"https:\/\/www.facebook.com\/webkul\/","article_published_time":"2016-12-02T09:02:03+00:00","article_modified_time":"2019-01-08T08:11:02+00:00","og_image":[{"width":825,"height":260,"url":"https:\/\/cdnblog.webkul.com\/blog\/wp-content\/uploads\/2016\/12\/Virtuemart-Code-Snippet.png","type":"image\/png"}],"author":"Anant Garg","twitter_card":"summary_large_image","twitter_creator":"@https:\/\/twitter.com\/anant_maks","twitter_site":"@webkul","twitter_misc":{"Written by":"Anant Garg","Est. reading time":"3 minutes"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/webkul.com\/blog\/understanding-manipulating-cart-joomla-virtuemart\/#article","isPartOf":{"@id":"https:\/\/webkul.com\/blog\/understanding-manipulating-cart-joomla-virtuemart\/"},"author":{"name":"Anant Garg","@id":"https:\/\/webkul.com\/blog\/#\/schema\/person\/6ea8b2fc21db1091826b5da1b3652b11"},"headline":"Understanding and manipulating cart in Joomla Virtuemart","datePublished":"2016-12-02T09:02:03+00:00","dateModified":"2019-01-08T08:11:02+00:00","mainEntityOfPage":{"@id":"https:\/\/webkul.com\/blog\/understanding-manipulating-cart-joomla-virtuemart\/"},"wordCount":354,"commentCount":0,"publisher":{"@id":"https:\/\/webkul.com\/blog\/#organization"},"image":{"@id":"https:\/\/webkul.com\/blog\/understanding-manipulating-cart-joomla-virtuemart\/#primaryimage"},"thumbnailUrl":"https:\/\/cdnblog.webkul.com\/blog\/wp-content\/uploads\/2016\/12\/Virtuemart-Code-Snippet.png","keywords":["joomla","PHP","virtuemart","webkul"],"articleSection":["Joomla","Marketplace","virtuemart"],"inLanguage":"en-US","potentialAction":[{"@type":"CommentAction","name":"Comment","target":["https:\/\/webkul.com\/blog\/understanding-manipulating-cart-joomla-virtuemart\/#respond"]}]},{"@type":"WebPage","@id":"https:\/\/webkul.com\/blog\/understanding-manipulating-cart-joomla-virtuemart\/","url":"https:\/\/webkul.com\/blog\/understanding-manipulating-cart-joomla-virtuemart\/","name":"Understanding and manipulating cart in Joomla Virtuemart - Webkul Blog","isPartOf":{"@id":"https:\/\/webkul.com\/blog\/#website"},"primaryImageOfPage":{"@id":"https:\/\/webkul.com\/blog\/understanding-manipulating-cart-joomla-virtuemart\/#primaryimage"},"image":{"@id":"https:\/\/webkul.com\/blog\/understanding-manipulating-cart-joomla-virtuemart\/#primaryimage"},"thumbnailUrl":"https:\/\/cdnblog.webkul.com\/blog\/wp-content\/uploads\/2016\/12\/Virtuemart-Code-Snippet.png","datePublished":"2016-12-02T09:02:03+00:00","dateModified":"2019-01-08T08:11:02+00:00","breadcrumb":{"@id":"https:\/\/webkul.com\/blog\/understanding-manipulating-cart-joomla-virtuemart\/#breadcrumb"},"inLanguage":"en-US","potentialAction":[{"@type":"ReadAction","target":["https:\/\/webkul.com\/blog\/understanding-manipulating-cart-joomla-virtuemart\/"]}]},{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/webkul.com\/blog\/understanding-manipulating-cart-joomla-virtuemart\/#primaryimage","url":"https:\/\/cdnblog.webkul.com\/blog\/wp-content\/uploads\/2016\/12\/Virtuemart-Code-Snippet.png","contentUrl":"https:\/\/cdnblog.webkul.com\/blog\/wp-content\/uploads\/2016\/12\/Virtuemart-Code-Snippet.png","width":825,"height":260,"caption":"Joomla Virtuemart"},{"@type":"BreadcrumbList","@id":"https:\/\/webkul.com\/blog\/understanding-manipulating-cart-joomla-virtuemart\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/webkul.com\/blog\/"},{"@type":"ListItem","position":2,"name":"Understanding and manipulating cart in Joomla Virtuemart"}]},{"@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\/6ea8b2fc21db1091826b5da1b3652b11","name":"Anant Garg","image":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/webkul.com\/blog\/#\/schema\/person\/image\/","url":"https:\/\/secure.gravatar.com\/avatar\/013d335b488c1077708a8177975749ebfc91bbb3c549ec6c19a6a83b3341ff76?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\/013d335b488c1077708a8177975749ebfc91bbb3c549ec6c19a6a83b3341ff76?s=96&d=https%3A%2F%2Fcdnblog.webkul.com%2Fblog%2Fwp-content%2Fuploads%2F2019%2F10%2Fmike.png&r=g","caption":"Anant Garg"},"description":"A Salesforce Developer specialising in Sales Cloud, Service Cloud, and Marketing Cloud provides customised solutions to improve client interaction and streamline business processes. Expertise in Salesforce platform optimisation provides smooth integration and fosters strategic growth across a wide range of organisational processes.","sameAs":["http:\/\/writerunleashed4u.blogspot.in","https:\/\/x.com\/https:\/\/twitter.com\/anant_maks"],"url":"https:\/\/webkul.com\/blog\/author\/anant158\/"}]}},"amp_enabled":true,"_links":{"self":[{"href":"https:\/\/webkul.com\/blog\/wp-json\/wp\/v2\/posts\/66771","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\/46"}],"replies":[{"embeddable":true,"href":"https:\/\/webkul.com\/blog\/wp-json\/wp\/v2\/comments?post=66771"}],"version-history":[{"count":19,"href":"https:\/\/webkul.com\/blog\/wp-json\/wp\/v2\/posts\/66771\/revisions"}],"predecessor-version":[{"id":157517,"href":"https:\/\/webkul.com\/blog\/wp-json\/wp\/v2\/posts\/66771\/revisions\/157517"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/webkul.com\/blog\/wp-json\/wp\/v2\/media\/66790"}],"wp:attachment":[{"href":"https:\/\/webkul.com\/blog\/wp-json\/wp\/v2\/media?parent=66771"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/webkul.com\/blog\/wp-json\/wp\/v2\/categories?post=66771"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/webkul.com\/blog\/wp-json\/wp\/v2\/tags?post=66771"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}