{"id":368943,"date":"2026-09-14T19:05:48","date_gmt":"2026-09-14T19:05:48","guid":{"rendered":"https:\/\/wordpress.org\/plugins\/stateswitch\/"},"modified":"2026-09-14T19:05:11","modified_gmt":"2026-09-14T19:05:11","slug":"stateswitch","status":"publish","type":"plugin","link":"https:\/\/wordpress.org\/plugins\/stateswitch\/","author":23566269,"comment_status":"closed","ping_status":"closed","template":"","meta":{"version":"1.0.0","stable_tag":"1.0.0","tested":"7.1","requires":"6.0","requires_php":"7.4","requires_plugins":null,"header_name":"StateSwitch","header_author":"Masarib Connect","header_description":"Lets WooCommerce stores present an alternate visual product state with a synchronized storefront control.","assets_banners_color":"e5d4c3","last_updated":"2026-09-14 19:05:11","external_support_url":"","external_repository_url":"","donate_link":"","header_plugin_uri":"","header_author_uri":"","rating":0,"author_block_rating":0,"active_installs":0,"downloads":35,"num_ratings":0,"support_threads":0,"support_threads_resolved":0,"author_block_count":0,"sections":["description","installation","faq","changelog"],"tags":{"1.0.0":{"tag":"1.0.0","author":"masaribconnect","date":"2026-09-14 19:05:11","revision":3695815}},"upgrade_notice":[],"ratings":[],"assets_icons":{"icon-128x128.png":{"filename":"icon-128x128.png","revision":3695812,"resolution":"128x128","location":"assets","locale":"","width":128,"height":128},"icon-256x256.png":{"filename":"icon-256x256.png","revision":3695812,"resolution":"256x256","location":"assets","locale":"","width":256,"height":256}},"assets_banners":{"banner-1544x500.png":{"filename":"banner-1544x500.png","revision":3695812,"resolution":"1544x500","location":"assets","locale":"","width":1544,"height":500},"banner-772x250.png":{"filename":"banner-772x250.png","revision":3695812,"resolution":"772x250","location":"assets","locale":"","width":772,"height":250}},"assets_blueprints":{},"all_blocks":{"stateswitch\/toggle":{"name":"stateswitch\/toggle","title":"StateSwitch Toggle"}},"tagged_versions":["1.0.0"],"block_files":[],"assets_screenshots":{"screenshot-1.png":{"filename":"screenshot-1.png","revision":3695812,"resolution":"1","location":"assets","locale":"","width":1895,"height":865},"screenshot-2.png":{"filename":"screenshot-2.png","revision":3695812,"resolution":"2","location":"assets","locale":"","width":1917,"height":870},"screenshot-3.png":{"filename":"screenshot-3.png","revision":3695812,"resolution":"3","location":"assets","locale":"","width":1707,"height":677},"screenshot-4.png":{"filename":"screenshot-4.png","revision":3695812,"resolution":"4","location":"assets","locale":"","width":1621,"height":577}},"screenshots":{"1":"StateSwitch global settings for configuring the default state, visitor state memory, transition behaviour, and uninstall data preference.","2":"StateSwitch toggle and placement settings, including custom State A and State B labels, toggle style, size, display mode, and automatic placement.","3":"StateSwitch integration in the WooCommerce product editor, where StateSwitch can be enabled and an alternate State B image selected for an individual product.","4":"StateSwitch in action, demonstrating how customers can switch between two merchant-defined product states on the storefront."}},"plugin_section":[],"plugin_tags":[1953,24716,286],"plugin_category":[34,45],"plugin_contributors":[280723],"plugin_business_model":[],"class_list":["post-368943","plugin","type-plugin","status-publish","hentry","plugin_tags-accessibility","plugin_tags-product-images","plugin_tags-woocommerce","plugin_category-accessibility","plugin_category-ecommerce","plugin_contributors-masaribconnect","plugin_committers-masaribconnect"],"banners":{"banner":"https:\/\/ps.w.org\/stateswitch\/assets\/banner-772x250.png?rev=3695812","banner_2x":"https:\/\/ps.w.org\/stateswitch\/assets\/banner-1544x500.png?rev=3695812","banner_rtl":false,"banner_2x_rtl":false},"icons":{"svg":false,"icon":"https:\/\/ps.w.org\/stateswitch\/assets\/icon-128x128.png?rev=3695812","icon_2x":"https:\/\/ps.w.org\/stateswitch\/assets\/icon-256x256.png?rev=3695812","generated":false},"screenshots":[{"src":"https:\/\/ps.w.org\/stateswitch\/assets\/screenshot-1.png?rev=3695812","caption":"StateSwitch global settings for configuring the default state, visitor state memory, transition behaviour, and uninstall data preference."},{"src":"https:\/\/ps.w.org\/stateswitch\/assets\/screenshot-2.png?rev=3695812","caption":"StateSwitch toggle and placement settings, including custom State A and State B labels, toggle style, size, display mode, and automatic placement."},{"src":"https:\/\/ps.w.org\/stateswitch\/assets\/screenshot-3.png?rev=3695812","caption":"StateSwitch integration in the WooCommerce product editor, where StateSwitch can be enabled and an alternate State B image selected for an individual product."},{"src":"https:\/\/ps.w.org\/stateswitch\/assets\/screenshot-4.png?rev=3695812","caption":"StateSwitch in action, demonstrating how customers can switch between two merchant-defined product states on the storefront."}],"raw_content":"<!--section=description-->\n<p>StateSwitch adds a simple two-state visual switch to compatible WooCommerce products.<\/p>\n\n<p>Create an alternate product state and let visitors switch between the standard product view and a second merchant-defined visual state directly on the storefront.<\/p>\n\n<p>StateSwitch can be used for many kinds of visual comparisons, including:<\/p>\n\n<ul>\n<li>Alternate product views<\/li>\n<li>Before and after presentations<\/li>\n<li>Open and closed states<\/li>\n<li>Day and night views<\/li>\n<li>Lighting changes<\/li>\n<li>Different product configurations<\/li>\n<li>Other two-state product presentations<\/li>\n<\/ul>\n\n<p>StateSwitch is designed to work inside your existing WooCommerce store without sending product or visitor data to an external service.<\/p>\n\n<p>Features include:<\/p>\n\n<ul>\n<li>Two merchant-defined visual states<\/li>\n<li>Alternate product image support<\/li>\n<li>Storefront state switch<\/li>\n<li>Configurable StateSwitch settings<\/li>\n<li>Optional visitor state memory<\/li>\n<li>WooCommerce integration<\/li>\n<li>No telemetry or analytics<\/li>\n<li>No remote API dependency<\/li>\n<li>No external fonts<\/li>\n<\/ul>\n\n<p>StateSwitch requires WooCommerce.<\/p>\n\n<h3>Privacy<\/h3>\n\n<p>StateSwitch processes settings and product metadata only inside WordPress. It does not send data to external services.<\/p>\n\n<p>When \"Remember Visitor State\" is enabled, StateSwitch stores the selected state (<code>a<\/code> or <code>b<\/code>) in the visitor's browser local storage. This contains no personal data and is not transmitted to StateSwitch or any external service.<\/p>\n\n<!--section=installation-->\n<ol>\n<li>Upload and activate StateSwitch.<\/li>\n<li>Ensure WooCommerce is active.<\/li>\n<li>Open WooCommerce &gt; StateSwitch to configure the plugin.<\/li>\n<li>Add an alternate State B image to compatible products.<\/li>\n<li>View the product on the storefront and use the StateSwitch control to switch between states.<\/li>\n<\/ol>\n\n<!--section=faq-->\n<dl>\n<dt id=\"does%20stateswitch%20require%20woocommerce%3F\"><h3>Does StateSwitch require WooCommerce?<\/h3><\/dt>\n<dd><p>Yes. StateSwitch is designed specifically for WooCommerce products.<\/p><\/dd>\n<dt id=\"does%20it%20delete%20data%20on%20deactivation%3F\"><h3>Does it delete data on deactivation?<\/h3><\/dt>\n<dd><p>No. A separate opt-in setting controls removal only during uninstall.<\/p><\/dd>\n<dt id=\"does%20stateswitch%20send%20product%20or%20visitor%20data%20to%20an%20external%20service%3F\"><h3>Does StateSwitch send product or visitor data to an external service?<\/h3><\/dt>\n<dd><p>No. StateSwitch stores its settings and product metadata inside WordPress and does not use a remote StateSwitch API.<\/p><\/dd>\n\n<\/dl>\n\n<!--section=changelog-->\n<h4>1.0.0<\/h4>\n\n<p>Initial public release.<\/p>","raw_excerpt":"Switch compatible WooCommerce product imagery and optional storefront atmosphere between two merchant-defined states.","jetpack_sharing_enabled":true,"_links":{"self":[{"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin\/368943","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin"}],"about":[{"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/types\/plugin"}],"replies":[{"embeddable":true,"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/comments?post=368943"}],"author":[{"embeddable":true,"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wporg\/v1\/users\/masaribconnect"}],"wp:attachment":[{"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/media?parent=368943"}],"wp:term":[{"taxonomy":"plugin_section","embeddable":true,"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_section?post=368943"},{"taxonomy":"plugin_tags","embeddable":true,"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_tags?post=368943"},{"taxonomy":"plugin_category","embeddable":true,"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_category?post=368943"},{"taxonomy":"plugin_contributors","embeddable":true,"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_contributors?post=368943"},{"taxonomy":"plugin_business_model","embeddable":true,"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_business_model?post=368943"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}