{"id":352274,"date":"2026-09-13T11:57:18","date_gmt":"2026-09-13T11:57:18","guid":{"rendered":"https:\/\/wordpress.org\/plugins\/vizzel-for-woocommerce\/"},"modified":"2026-09-28T15:48:13","modified_gmt":"2026-09-28T15:48:13","slug":"vizzel-for-woocommerce","status":"publish","type":"plugin","link":"https:\/\/tw.wordpress.org\/plugins\/vizzel-for-woocommerce\/","author":23545332,"comment_status":"closed","ping_status":"closed","template":"","meta":{"version":"1.6.1","stable_tag":"1.6.1","tested":"7.1.2","requires":"6.3","requires_php":"7.4","requires_plugins":null,"header_name":"Vizzel for WooCommerce","header_author":"Vizzel","header_description":"Vizzel storefront features for WooCommerce. Each feature is a widget you enable here \u2014 starting with Wall Preview, which lets shoppers see a product on their own wall from a photo of their room.","assets_banners_color":"a3907b","last_updated":"2026-09-28 15:48:13","external_support_url":"","external_repository_url":"","donate_link":"","header_plugin_uri":"","header_author_uri":"https:\/\/vizzel.ai","rating":0,"author_block_rating":0,"active_installs":0,"downloads":197,"num_ratings":0,"support_threads":0,"support_threads_resolved":0,"author_block_count":0,"sections":["description","installation","faq","changelog"],"tags":{"1.3.0":{"tag":"1.3.0","author":"vizzel","date":"2026-09-13 11:57:00","revision":3693615},"1.4.0":{"tag":"1.4.0","author":"vizzel","date":"2026-09-17 17:46:29","revision":3700731},"1.5.0":{"tag":"1.5.0","author":"vizzel","date":"2026-09-24 18:19:14","revision":3711851},"1.6.0":{"tag":"1.6.0","author":"vizzel","date":"2026-09-28 15:12:43","revision":3717457},"1.6.1":{"tag":"1.6.1","author":"vizzel","date":"2026-09-28 15:48:13","revision":3717528}},"upgrade_notice":{"1.6.1":"<p>Connect by pasting one connection key from Vizzel \u2192 Store connection. If your store\nwas connected with an older version, paste the key once to turn on the switch and\nsales analytics.<\/p>","1.6.0":"<p>A simpler Vizzel screen with one-click connect. After updating, open Vizzel and click\nReconnect to Vizzel once. Your storefront keeps working until you do.<\/p>","1.5.0":"<p>Previews now follow the size and frame your shopper selected on the product\npage, instead of showing every piece the same way.<\/p>","1.4.0":"<p>The button&#039;s colour, style, size, shape, font and wording move to your Vizzel\ndashboard, with a live preview \u2014 so a change reaches your storefront straight\naway instead of waiting for a plugin update. Your current settings keep working;\nnothing to do when you update.<\/p>","1.3.0":"<p>Adds optional purchase attribution, so you can see which sales followed a wall\npreview. It is off by default and sends no order data until you turn it on.<\/p>","1.2.2":"<p>Privacy fix: the plugin no longer schedules or makes any request to Vizzel until you\nconnect your store. Nothing changes for an already-connected store.<\/p>","1.2.1":"<p>Internal tidy-up: the admin screen&#039;s CSS is now added entirely through WordPress&#039;s\nstylesheet APIs. Nothing changes for you or for shoppers.<\/p>","1.2.0":"<p>Fixes Add to cart in the Wall Preview popup, which previously did nothing. Also adds\nan editable button text field and tidies the Preview history popup.<\/p>","1.1.0":"<p>Adds an optional Wall previews tab to My account. Enabling it means logged-in\ncustomers&#039; room photos are kept until they delete them, rather than removed after a\nshort window \u2014 review your privacy policy before turning it on.<\/p>","1.0.0":"<p>Initial release.<\/p>"},"ratings":[],"assets_icons":{"icon-256x256.png":{"filename":"icon-256x256.png","revision":3693637,"resolution":"256x256","location":"assets","locale":"","width":256,"height":256}},"assets_banners":{"banner-772x250.png":{"filename":"banner-772x250.png","revision":3693637,"resolution":"772x250","location":"assets","locale":"","width":772,"height":250}},"assets_blueprints":{},"all_blocks":[],"tagged_versions":["1.3.0","1.4.0","1.5.0","1.6.0","1.6.1"],"block_files":[],"assets_screenshots":[],"screenshots":{"1":"The Vizzel screen once a store is connected \u2014 status, the Wall Preview switch, and two shortcuts.","2":"The Placement &amp; visibility drawer: button position, hidden categories, the My account tab and sales analytics.","3":"The \"See it on your wall\" button on a WooCommerce product page.","4":"A shopper framing their room photo to a square before generating.","5":"The finished preview, with the artwork placed on the shopper's own wall."}},"plugin_section":[],"plugin_tags":[8522,210,45083,18208,286],"plugin_category":[45,50],"plugin_contributors":[280449],"plugin_business_model":[],"class_list":["post-352274","plugin","type-plugin","status-publish","hentry","plugin_tags-art","plugin_tags-gallery","plugin_tags-product-preview","plugin_tags-visualization","plugin_tags-woocommerce","plugin_category-ecommerce","plugin_category-media","plugin_contributors-vizzel","plugin_committers-vizzel"],"banners":{"banner":"https:\/\/ps.w.org\/vizzel-for-woocommerce\/assets\/banner-772x250.png?rev=3693637","banner_2x":false,"banner_rtl":false,"banner_2x_rtl":false},"icons":{"svg":false,"icon":"https:\/\/ps.w.org\/vizzel-for-woocommerce\/assets\/icon-256x256.png?rev=3693637","icon_2x":"https:\/\/ps.w.org\/vizzel-for-woocommerce\/assets\/icon-256x256.png?rev=3693637","generated":false},"screenshots":[],"raw_content":"<!--section=description-->\n<p>Vizzel brings AI storefront experiences to your WooCommerce shop. The plugin is a\nsingle, extensible container: you connect it to your Vizzel workspace once, then\nenable the widgets you want from one settings screen.<\/p>\n\n<p><strong>Widgets<\/strong><\/p>\n\n<ul>\n<li><strong>Wall Preview<\/strong> \u2014 adds a \"See it on your wall\" button to the product page. A\nshopper uploads a photo of their room, frames the wall, and Vizzel places the\nproduct's artwork on it, true to scale. Ideal for galleries and art sellers.<\/li>\n<\/ul>\n\n<p>More widgets are added over time and appear on the same settings screen \u2014 no\nplugin changes needed.<\/p>\n\n<p>Widgets are rendered by the Vizzel widget bundle inside an isolated Shadow DOM, so\nthey never conflict with your theme. All display copy, usage caps and availability\nare controlled from your Vizzel dashboard.<\/p>\n\n<p><strong>One screen, one key to connect<\/strong><\/p>\n\n<p>In your Vizzel dashboard, open <strong>Store connection<\/strong> and copy your <strong>connection key<\/strong>.\nPaste it into <strong>Vizzel<\/strong> in your WordPress admin and click <strong>Connect<\/strong> \u2014 that one key\nis all the plugin needs.<\/p>\n\n<p><strong>What you control in WordPress<\/strong><\/p>\n\n<ul>\n<li>One switch to show or hide Wall Preview on your store. It is the same switch as\nin your Vizzel dashboard, so it always agrees with it.<\/li>\n<li>Where the button sits on the product page (five positions).<\/li>\n<li>Which product categories to hide it on.<\/li>\n<li>Whether signed-in customers get a <em>Wall previews<\/em> tab in My account.<\/li>\n<li>Optional, off-by-default sales analytics.<\/li>\n<\/ul>\n\n<p>The button's wording, colours, style and font are set in your Vizzel dashboard, and\na change there reaches your storefront immediately.<\/p>\n\n<p><strong>A Vizzel account is required.<\/strong> The plugin is the storefront half of a hosted\nservice \u2014 until it is connected to a Vizzel workspace it renders nothing.<\/p>\n\n<h3>External services<\/h3>\n\n<p>This plugin connects to Vizzel, a third-party service operated by Vizzel, to\ngenerate product previews. It will not work without it.<\/p>\n\n<p><strong>1. Vizzel API \u2014 <code>https:\/\/api.vizzel.ai<\/code><\/strong><\/p>\n\n<ul>\n<li><em>When your store's admin pastes a connection key and clicks Connect:<\/em> your server\nmakes one signed request to confirm the key belongs to this store, and sends the\nkey's publishable part so Vizzel can confirm it too. Nothing is saved unless both\nsucceed.<\/li>\n<li><em>When an admin opens the Vizzel screen of a connected store, or uses its switch:<\/em>\na signed request reads, or changes, whether Wall Preview is shown on your\nstorefront. No store or visitor data is sent.<\/li>\n<li><em>When a visitor uses a widget on your storefront (from their browser):<\/em> the\npublishable key, the WooCommerce product ID, the product title and image URL,\nthe chosen language, and <strong>the photo of their room that they upload<\/strong> are sent so\nthe preview can be generated. For a visitor who is <strong>not logged in<\/strong>, room photos\nare used only to produce that preview and are deleted automatically after a short\nretention window. An anonymous, randomly generated per-visit ID is also sent so\nVizzel can count widget usage; it is not derived from anything identifying and\ncontains no personal data.<\/li>\n<li><em>When a logged-in customer uses a widget, and the Preview history widget is\nenabled:<\/em> an opaque per-customer token is also sent. The token is a random value\ngenerated on your own site and stored in WordPress user meta; it is <strong>not<\/strong> their\nemail, name, or user ID, and Vizzel cannot resolve it back to a person. It lets\ntheir previews be listed back to them under <strong>My account \u2192 Wall previews<\/strong>, which\nmeans those room photos and previews are <strong>kept until the customer deletes them<\/strong>\nrather than being deleted after the short window. Each customer keeps a limited\nnumber of previews; older ones are removed automatically.<\/li>\n<li><em>When a logged-in customer opens or deletes a preview:<\/em> the same token is sent,\nplus the preview's ID.<\/li>\n<li><em>When you export or erase personal data<\/em> for a customer from Tools \u2192 Export\/Erase\nPersonal Data: the token is sent so their previews can be listed or deleted.<\/li>\n<li><em>When you have turned on Sales analytics (under Placement &amp; visibility), and a\nshopper buys a product they previewed:<\/em> your store sends the preview's opaque\ntoken, the product and variation IDs, the quantity, the line total, the currency,\nand the order's ID and status.\nThe request is signed by your own site so Vizzel can confirm it came from you.\n<strong>No customer name, email, phone, billing or shipping address, order notes or\npayment data is sent.<\/strong> This setting is <strong>off by default<\/strong>: no order information\nof any kind leaves your store until an administrator turns it on, and turning it\noff stops it again.<\/li>\n<li><em>When such an order is refunded or its status changes:<\/em> the same fields are sent\nagain so the earlier figure can be corrected.<\/li>\n<\/ul>\n\n<p><strong>2. Vizzel CDN \u2014 <code>https:\/\/cdn.vizzel.ai<\/code><\/strong><\/p>\n\n<ul>\n<li>The widget JavaScript bundle is loaded from Vizzel's CDN on product pages where an\nenabled widget appears. While your store is connected, your server also requests a\nsmall manifest file from this host twice a day to learn the current bundle version.\nNo store or visitor data is sent in either request. Neither request is made \u2014 and\nnothing is scheduled \u2014 until an administrator has connected the store.<\/li>\n<\/ul>\n\n<p><strong>Nothing is sent to Vizzel, and no request of any kind is made, until an\nadministrator connects the store.<\/strong> Installing and activating\nthe plugin schedules no background work and generates no traffic. Disconnecting stops\nall of it again. No visitor data is sent until a visitor actively uses a widget.<\/p>\n\n<p>Vizzel's terms of service: https:\/\/vizzel.ai\/terms\nVizzel's privacy policy: https:\/\/vizzel.ai\/privacy<\/p>\n\n<!--section=installation-->\n<ol>\n<li>Install and activate Vizzel for WooCommerce (WooCommerce must be active).<\/li>\n<li>In Vizzel (or after creating an account), open <strong>Store connection<\/strong>, connect this\nstore, and copy the <strong>connection key<\/strong>.<\/li>\n<li>Open <strong>Vizzel<\/strong> in the WordPress admin menu, paste the key, and click <strong>Connect<\/strong>.<\/li>\n<li>Click <strong>Open your storefront<\/strong> \u2014 the Wall Preview button is on your product pages.<\/li>\n<\/ol>\n\n<!--section=faq-->\n<dl>\n<dt id=\"do%20i%20need%20a%20vizzel%20account%3F\"><h3>Do I need a Vizzel account?<\/h3><\/dt>\n<dd><p>Yes. The plugin is the storefront half of a hosted service: it needs a connected\nVizzel workspace before it renders anything. See the <strong>External services<\/strong> section\nfor exactly what is sent where.<\/p><\/dd>\n<dt id=\"where%20do%20i%20find%20the%20connection%20key%2C%20and%20is%20it%20secret%3F\"><h3>Where do I find the connection key, and is it secret?<\/h3><\/dt>\n<dd><p>In your Vizzel dashboard under <strong>Store connection<\/strong>, once this store is connected;\nonly workspace owners and admins can see it. Treat it like a password: it contains\nthe publishable key (public \u2014 it appears in your page source) and your store's\nsigning secret, which lets it switch Wall Preview and report sales. The plugin\nstores it on your server and never shows it again.<\/p><\/dd>\n<dt id=\"i%20updated%20from%20an%20earlier%20version.%20what%20do%20i%20need%20to%20do%3F\"><h3>I updated from an earlier version. What do I need to do?<\/h3><\/dt>\n<dd><p>Open <strong>Vizzel<\/strong> and paste your connection key once. Your storefront keeps working in\nthe meantime; the key is what lets the screen's switch and sales analytics talk to\nVizzel. If you had switched Wall Preview off in an earlier version, it stays off.<\/p><\/dd>\n<dt id=\"what%20happens%20to%20a%20shopper%27s%20room%20photo%3F\"><h3>What happens to a shopper's room photo?<\/h3><\/dt>\n<dd><p>For a visitor who is not logged in, it is sent to Vizzel to generate that one\npreview and then deleted automatically after a short retention window.<\/p>\n\n<p>If you enable the <strong>Preview history<\/strong> widget, a logged-in customer's previews and\nroom photos are <strong>kept<\/strong> instead, so they can find them again under <strong>My account \u2192\nWall previews<\/strong>. They can delete any preview themselves at any time, and each\ncustomer keeps only a limited number \u2014 older ones are removed automatically.<\/p>\n\n<p>Either way the photo is never stored by this plugin and never written to your\nWordPress site. Enabling Preview history changes what you are telling shoppers\nabout their photos, so review your own privacy policy before switching it on.<\/p><\/dd>\n<dt id=\"how%20do%20i%20export%20or%20delete%20a%20customer%27s%20previews%3F\"><h3>How do I export or delete a customer's previews?<\/h3><\/dt>\n<dd><p>Use WordPress's built-in <strong>Tools \u2192 Export Personal Data<\/strong> and <strong>Tools \u2192 Erase\nPersonal Data<\/strong>. This plugin answers both requests: an export lists the customer's\npreviews, and an erasure deletes them from Vizzel and forgets the token that linked\nthem.<\/p><\/dd>\n<dt id=\"how%20do%20i%20move%20this%20store%20to%20another%20workspace%3F\"><h3>How do I move this store to another workspace?<\/h3><\/dt>\n<dd><p>Open <strong>Vizzel<\/strong>, choose <strong>Disconnect<\/strong>, and confirm. The widgets stop appearing on\nyour storefront immediately and the stored credentials are removed. Your placement\nand visibility choices are kept, so connecting again restores them as they were.<\/p><\/dd>\n<dt id=\"where%20is%20a%20widget%27s%20wording%2C%20design%20and%20limits%20configured%3F\"><h3>Where is a widget's wording, design and limits configured?<\/h3><\/dt>\n<dd><p>In your Vizzel dashboard, under <em>Storefront widgets<\/em>. The plugin decides where the\nbutton sits and passes the product context; everything else is server-driven.<\/p><\/dd>\n<dt id=\"does%20it%20work%20with%20high-performance%20order%20storage%3F\"><h3>Does it work with High-Performance Order Storage?<\/h3><\/dt>\n<dd><p>Yes. The only order access \u2014 for the optional sales analytics \u2014 goes through\nWooCommerce's order API, and the plugin declares itself compatible.<\/p><\/dd>\n<dt id=\"what%20is%20removed%20if%20i%20delete%20the%20plugin%3F\"><h3>What is removed if I delete the plugin?<\/h3><\/dt>\n<dd><p>Deleting it removes the Vizzel settings option (connection and widget setup), its\ncached lookups, its scheduled bundle-version check, and every customer's preview\ntoken. Deactivating keeps the settings, so switching the plugin off and on again does\nnot mean reconnecting \u2014 but it does remove the scheduled check, which is recreated\nwhen the plugin is active and your store is connected.<\/p>\n\n<p>Removing the tokens means previews already generated can no longer be reached from\nyour store; Vizzel removes the imagery on its own retention schedule. To delete a\nspecific customer's previews outright, use Tools \u2192 Erase Personal Data before\ndeleting the plugin.<\/p><\/dd>\n\n<\/dl>\n\n<!--section=changelog-->\n<h4>1.6.1<\/h4>\n\n<ul>\n<li><strong>Connect with one key.<\/strong> In Vizzel, open Store connection and copy your\nconnection key; paste it into Vizzel in WordPress and click Connect. It replaces\nthe Connect to Vizzel redirect, so connecting no longer sends you back and forth\nbetween sites.<\/li>\n<li>The key carries everything the plugin needs \u2014 the storefront key and your store's\nsigning secret \u2014 so the Wall Preview switch and sales analytics work from the\nfirst paste. It is checked with Vizzel before anything is saved, and a key that\ndoes not connect is explained right under the field.<\/li>\n<li>Sales analytics is greyed out until a connection key is in place, rather than\nappearing to be on while sending nothing.<\/li>\n<\/ul>\n\n<h4>1.6.0<\/h4>\n\n<ul>\n<li><strong>Connect in one click.<\/strong> <em>Connect to Vizzel<\/em> takes you to your Vizzel account to\napprove, then straight back. There is no publishable key to paste any more.<\/li>\n<li><strong>One screen, one switch.<\/strong> The Vizzel screen is now a status banner, a single\nswitch to show or hide Wall Preview, and two shortcuts \u2014 <em>Open your storefront<\/em> and\n<em>Customize in Vizzel<\/em>. The switch is the same one as in your Vizzel dashboard, so\nthe two can no longer disagree.<\/li>\n<li>Button position, hidden categories, the My account tab and sales analytics are\ntogether in a collapsed <em>Placement &amp; visibility<\/em> section.<\/li>\n<li><strong>Sales analytics now works without a secret to paste.<\/strong> The signing secret it\nneeds arrives with the connection. (The old <em>Analytics secret<\/em> field asked for a\nvalue no Vizzel screen showed.)<\/li>\n<li>Removed the <em>Widget language<\/em> setting, which had no effect: widgets follow each\nshopper's language.<\/li>\n<li>Removed the placement sketch and the plugin's admin script; every control is a\nstandard WordPress form element.<\/li>\n<\/ul>\n\n<h4>1.5.0<\/h4>\n\n<ul>\n<li><strong>The preview now matches the option your shopper picked.<\/strong> On a variable\nproduct \u2014 different sizes, framed and unframed \u2014 the preview follows the\nvariation selected on the page, so a shopper choosing the oak frame sees the\noak frame on their wall, and a 30x40 print no longer fills the same space as\na 120x160 canvas.<\/li>\n<li>Sizes are read from your existing product data \u2014 the variation's dimensions,\nor a size written into the option name such as \"50 x 70 cm\". Nothing to set\nup, and a product without either previews exactly as it does today.<\/li>\n<li>You can turn this off under <em>Storefront widgets<\/em> in your Vizzel dashboard if\nyour option names do not describe sizes.<\/li>\n<\/ul>\n\n<h4>1.4.0<\/h4>\n\n<ul>\n<li><strong>The button's design and wording now live in your Vizzel dashboard<\/strong>, under\n<em>Storefront widgets<\/em>, alongside a live preview. Colour, button style and size,\ncorner shape, font, button text and the photo consent note are all set there \u2014\nand a change reaches your storefront immediately, with no plugin update.<\/li>\n<li><strong>Why the move:<\/strong> the same settings existed here AND in the Shopify app, so they\ndrifted apart, and changing a button label meant waiting for a plugin release.<\/li>\n<li><strong>Nothing to do.<\/strong> Your existing colour, shape and font keep working while you\nswitch over. Set them once in the dashboard and they take over from there.<\/li>\n<li>This screen keeps what only WordPress can answer: where on the product page the\nbutton sits, which categories to hide it on, and your connection.<\/li>\n<\/ul>\n\n<h4>1.3.0<\/h4>\n\n<ul>\n<li><strong>New: see which sales followed a wall preview.<\/strong> Turn on <em>Purchase attribution<\/em>\non the Vizzel settings screen and, when a shopper buys a product they previewed,\nyour store reports that sale to Vizzel so it can be credited to the preview.<\/li>\n<li><strong>It is off by default and does nothing until you switch it on.<\/strong> While it is\noff, no order information of any kind leaves your store.<\/li>\n<li>What gets sent is deliberately narrow: the preview's anonymous token, the product\nand variation IDs, the quantity, the line total, the currency, and the order's ID\nand status. No customer name, email, phone, billing or shipping address, order\nnotes or payment details \u2014 the full list is under \"External services\" above.<\/li>\n<li>Refunds and status changes are reported too, so a refunded sale stops counting.<\/li>\n<\/ul>\n\n<h4>1.2.2<\/h4>\n\n<ul>\n<li><strong>The plugin now contacts Vizzel only after you connect it.<\/strong> Activating it no\nlonger schedules the twice-daily check for the current widget bundle version \u2014\nthat schedule is created when you connect your store with a publishable key, and\nremoved again when you disconnect. An installed but unconfigured plugin makes no\noutbound request at all.<\/li>\n<li>Deleting the plugin also clears that scheduled check, so nothing is left behind.<\/li>\n<li>No change to how anything looks or behaves once your store is connected.<\/li>\n<\/ul>\n\n<h4>1.2.1<\/h4>\n\n<ul>\n<li>Every style the plugin adds to the WordPress admin now goes through WordPress's\nown stylesheet APIs. The settings screen no longer writes <code>style<\/code> attributes of\nits own: the accent colour, button shape and font you choose travel as CSS\ncustom properties added with <code>wp_add_inline_style()<\/code> alongside the plugin's\nstylesheet, so WordPress can version, order and dequeue all of it as one thing.<\/li>\n<li>No change to how anything looks or behaves, on the settings screen or your\nstorefront.<\/li>\n<\/ul>\n\n<h4>1.2.0<\/h4>\n\n<ul>\n<li><strong>Add to cart now works<\/strong> from the Wall Preview popup. The button announced the\nintent but nothing acted on it, so it only closed the popup. It now triggers your\ntheme's own Add to cart control, so variations, quantity and validation behave\nexactly as they do elsewhere on the page.<\/li>\n<li><strong>The button's wording is yours.<\/strong> A \"Button text\" field on the Wall Preview card\nsets what shoppers see, previewed live as you type. Leave it empty to keep the\nwording from your Vizzel dashboard.<\/li>\n<li>The finished preview is now shown whole in the popup instead of being cropped to\nfill the panel \u2014 tall and wide rooms alike.<\/li>\n<li><strong>Preview history has its own Appearance section<\/strong>, previewing the Wall previews\ntab in My account rather than a product page with a button that widget never\nrenders.<\/li>\n<li>The preview detail popup is sized to its content instead of carrying the empty\nsecond panel that made it roughly twice as wide as it needed to be.<\/li>\n<li>Removed \"Try another piece in this room\" from the preview detail popup.<\/li>\n<\/ul>\n\n<h4>1.1.0<\/h4>\n\n<ul>\n<li>New <strong>Preview history<\/strong> widget: adds a \"Wall previews\" tab to WooCommerce My\naccount where a logged-in customer can revisit every preview they have created,\ncompare it against their room, download it, jump back to the product, or try\nanother piece in the same room without re-uploading a photo.<\/li>\n<li>Previews created by a logged-in customer are now kept so they can be listed back\nto them, instead of being deleted after the short retention window. Customers can\ndelete any preview themselves, and each keeps a limited number.<\/li>\n<li>Customers are identified to Vizzel only by an opaque random token stored in\nWordPress user meta \u2014 never an email, name, or user ID.<\/li>\n<li>Added WordPress privacy integration: previews are included in Export Personal\nData and removed by Erase Personal Data.<\/li>\n<\/ul>\n\n<h4>1.0.0<\/h4>\n\n<ul>\n<li>Initial release \u2014 Vizzel container plugin with the Wall Preview widget.<\/li>\n<li>Connection: the publishable key is entered in a masked field with a reveal\ntoggle, is never rendered back into the page once confirmed, and can be removed\nwith Disconnect (widget setup is kept for reconnecting).<\/li>\n<li>Appearance: hex-editable accent with named presets and a label contrast check, a\nsegmented button-shape control, and a product-page live preview that follows the\nchosen placement.<\/li>\n<li>Placement: five product-page positions, plus per-category exclusion.<\/li>\n<\/ul>","raw_excerpt":"Let shoppers see a product on their own wall. Connect once, then turn on the widgets you want \u2014 starting with Wall Preview.","jetpack_sharing_enabled":true,"_links":{"self":[{"href":"https:\/\/tw.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin\/352274","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/tw.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin"}],"about":[{"href":"https:\/\/tw.wordpress.org\/plugins\/wp-json\/wp\/v2\/types\/plugin"}],"replies":[{"embeddable":true,"href":"https:\/\/tw.wordpress.org\/plugins\/wp-json\/wp\/v2\/comments?post=352274"}],"author":[{"embeddable":true,"href":"https:\/\/tw.wordpress.org\/plugins\/wp-json\/wporg\/v1\/users\/vizzel"}],"wp:attachment":[{"href":"https:\/\/tw.wordpress.org\/plugins\/wp-json\/wp\/v2\/media?parent=352274"}],"wp:term":[{"taxonomy":"plugin_section","embeddable":true,"href":"https:\/\/tw.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_section?post=352274"},{"taxonomy":"plugin_tags","embeddable":true,"href":"https:\/\/tw.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_tags?post=352274"},{"taxonomy":"plugin_category","embeddable":true,"href":"https:\/\/tw.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_category?post=352274"},{"taxonomy":"plugin_contributors","embeddable":true,"href":"https:\/\/tw.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_contributors?post=352274"},{"taxonomy":"plugin_business_model","embeddable":true,"href":"https:\/\/tw.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_business_model?post=352274"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}