{"id":318866,"date":"2026-05-31T18:29:48","date_gmt":"2026-05-31T18:29:48","guid":{"rendered":"https:\/\/wordpress.org\/plugins\/product-image-swap-for-woocommerce\/"},"modified":"2026-05-31T18:29:26","modified_gmt":"2026-05-31T18:29:26","slug":"wpthemeprime-product-image-swap","status":"publish","type":"plugin","link":"https:\/\/wordpress.org\/plugins\/wpthemeprime-product-image-swap\/","author":23493870,"comment_status":"closed","ping_status":"closed","template":"","meta":{"version":"1.2.0","stable_tag":"1.2.0","tested":"7.0.2","requires":"5.8","requires_php":"7.4","requires_plugins":null,"header_name":"WPThemePrime Product Image Swap for WooCommerce","header_author":"wpthemeprime","header_description":"Automatically swaps to a secondary product image on hover with advanced animations. Supports mobile tap-to-reveal and auto gallery fallback.","assets_banners_color":"9c9ba7","last_updated":"2026-05-31 18:29:26","external_support_url":"","external_repository_url":"","donate_link":"","header_plugin_uri":"https:\/\/wpthemeprime.com\/wpthemeprime-product-image-swap","header_author_uri":"https:\/\/wpthemeprime.com\/","rating":0,"author_block_rating":0,"active_installs":0,"downloads":117,"num_ratings":0,"support_threads":0,"support_threads_resolved":0,"author_block_count":0,"sections":["description","installation","faq","changelog"],"tags":{"1.2.0":{"tag":"1.2.0","author":"wpthemeprime","date":"2026-05-31 18:29:26"}},"upgrade_notice":{"1.2.0":"<p>Adds mobile tap support, auto gallery fallback, live settings preview, and new animation types. Recommended for all users.<\/p>"},"ratings":[],"assets_icons":{"icon-128x128.png":{"filename":"icon-128x128.png","revision":3555810,"resolution":"128x128","location":"assets","locale":"","width":128,"height":128},"icon-256x256.png":{"filename":"icon-256x256.png","revision":3555810,"resolution":"256x256","location":"assets","locale":"","width":256,"height":256}},"assets_banners":{"banner-1544x500.png":{"filename":"banner-1544x500.png","revision":3555810,"resolution":"1544x500","location":"assets","locale":"","width":1544,"height":500},"banner-772x250.png":{"filename":"banner-772x250.png","revision":3556846,"resolution":"772x250","location":"assets","locale":"","width":772,"height":250}},"assets_blueprints":{},"all_blocks":[],"tagged_versions":["1.2.0"],"block_files":[],"assets_screenshots":{"Screenshot-2.png":{"filename":"Screenshot-2.png","revision":3555810,"resolution":"2","location":"assets","locale":"","width":1671,"height":810},"screenshot-1.png":{"filename":"screenshot-1.png","revision":3555810,"resolution":"1","location":"assets","locale":"","width":1703,"height":835}},"screenshots":{"1":"<strong>Settings Page:<\/strong> Configure animation type and speed with live preview.","2":"<strong>Product Editor:<\/strong> Upload the secondary image from the sidebar meta box."}},"plugin_section":[],"plugin_tags":[6793,86741,29381,265232,286],"plugin_category":[45],"plugin_contributors":[262765],"plugin_business_model":[],"class_list":["post-318866","plugin","type-plugin","status-publish","hentry","plugin_tags-image-hover","plugin_tags-image-swap","plugin_tags-product-image","plugin_tags-secondary-image","plugin_tags-woocommerce","plugin_category-ecommerce","plugin_contributors-wpthemeprime","plugin_committers-wpthemeprime"],"banners":{"banner":"https:\/\/ps.w.org\/wpthemeprime-product-image-swap\/assets\/banner-772x250.png?rev=3556846","banner_2x":"https:\/\/ps.w.org\/wpthemeprime-product-image-swap\/assets\/banner-1544x500.png?rev=3555810","banner_rtl":false,"banner_2x_rtl":false},"icons":{"svg":false,"icon":"https:\/\/ps.w.org\/wpthemeprime-product-image-swap\/assets\/icon-128x128.png?rev=3555810","icon_2x":"https:\/\/ps.w.org\/wpthemeprime-product-image-swap\/assets\/icon-256x256.png?rev=3555810","generated":false},"screenshots":[{"src":"https:\/\/ps.w.org\/wpthemeprime-product-image-swap\/assets\/screenshot-1.png?rev=3555810","caption":"<strong>Settings Page:<\/strong> Configure animation type and speed with live preview."},{"src":"https:\/\/ps.w.org\/wpthemeprime-product-image-swap\/assets\/Screenshot-2.png?rev=3555810","caption":"<strong>Product Editor:<\/strong> Upload the secondary image from the sidebar meta box."}],"raw_content":"<!--section=description-->\n<p><strong>WPThemePrime Product Image Swap for WooCommerce<\/strong> lets customers preview a second product image by hovering over any product card \u2014 in shop pages, categories, or home page grids.<\/p>\n\n<p><strong>Key Features:<\/strong><\/p>\n\n<ul>\n<li><strong>8 Animation Types:<\/strong> Fade, Slide Up\/Down\/Left\/Right, Zoom In\/Out, and Instant Swap.<\/li>\n<li><strong>Auto Gallery Fallback:<\/strong> No secondary image set? The plugin automatically uses the first WooCommerce gallery image. Works immediately for stores that already have gallery images \u2014 zero setup per product.<\/li>\n<li><strong>Mobile Tap Support:<\/strong> On touch devices, tap once to reveal the secondary image; tap again to navigate to the product.<\/li>\n<li><strong>Image Preloading:<\/strong> Secondary images are preloaded on hover-intent to prevent flash or delay.<\/li>\n<li><strong>Live Settings Preview:<\/strong> See your animation in real time on the settings page \u2014 with a Play button to simulate the effect.<\/li>\n<li><strong>Custom Speed:<\/strong> Set animation duration from 50ms to 5000ms using a range slider.<\/li>\n<li><strong>Page Control:<\/strong> Enable or disable independently for Shop, Home, and Single product pages.<\/li>\n<li><strong>HPOS Compatible:<\/strong> Fully compatible with WooCommerce High Performance Order Storage.<\/li>\n<li><strong>Clean Uninstall:<\/strong> All plugin data is removed from the database when the plugin is deleted.<\/li>\n<\/ul>\n\n<p><strong>How to Use:<\/strong><\/p>\n\n<ol>\n<li>Go to <strong>Products &gt; Edit Product<\/strong>.<\/li>\n<li>Find the <strong>Secondary Product Image (Swap)<\/strong> box in the right sidebar.<\/li>\n<li>Click <strong>Select \/ Upload Image<\/strong>.<\/li>\n<li>Save the product.<\/li>\n<li>Configure animation and display options at <strong>WooCommerce &gt; Image Swap<\/strong>.<\/li>\n<\/ol>\n\n<!--section=installation-->\n<ol>\n<li>Upload the <code>product-image-swap-for-woocommerce<\/code> folder to <code>\/wp-content\/plugins\/<\/code>.<\/li>\n<li>Activate through the <strong>Plugins<\/strong> menu in WordPress.<\/li>\n<li>Configure at <strong>WooCommerce &gt; Image Swap<\/strong>.<\/li>\n<\/ol>\n\n<!--section=faq-->\n<dl>\n<dt id=\"does%20this%20work%20with%20all%20woocommerce%20themes%3F\"><h3>Does this work with all WooCommerce themes?<\/h3><\/dt>\n<dd><p>Yes, with most WooCommerce-compatible themes that use standard WooCommerce templates. Themes heavily overriding WooCommerce templates may need minor CSS adjustments.<\/p><\/dd>\n<dt id=\"will%20it%20slow%20down%20my%20store%3F\"><h3>Will it slow down my store?<\/h3><\/dt>\n<dd><p>No. All transitions are CSS-based. Secondary image IDs are cached via WordPress object cache to prevent extra database queries on pages with many products.<\/p><\/dd>\n<dt id=\"does%20this%20work%20on%20mobile%3F\"><h3>Does this work on mobile?<\/h3><\/dt>\n<dd><p>Yes. The first tap on a product image reveals the secondary image. The second tap navigates to the product page. Tapping outside any product resets all.<\/p><\/dd>\n<dt id=\"does%20this%20work%20with%20woocommerce%20blocks%3F\"><h3>Does this work with WooCommerce Blocks?<\/h3><\/dt>\n<dd><p>This plugin supports classic WooCommerce templates (shortcodes, PHP-based themes). WooCommerce Blocks (Gutenberg\/FSE product loops) are not currently supported \u2014 this is a known limitation.<\/p><\/dd>\n<dt id=\"what%20is%20the%20auto%20gallery%20fallback%3F\"><h3>What is the Auto Gallery Fallback?<\/h3><\/dt>\n<dd><p>When enabled, if a product has no manually assigned secondary image, the plugin uses the first image from the WooCommerce product gallery automatically. Stores with existing gallery images work with zero per-product setup.<\/p><\/dd>\n<dt id=\"what%20happens%20to%20my%20data%20when%20i%20delete%20the%20plugin%3F\"><h3>What happens to my data when I delete the plugin?<\/h3><\/dt>\n<dd><p>All plugin data is removed: the settings option and all secondary image assignments are deleted from the database.<\/p><\/dd>\n\n<\/dl>\n\n<!--section=changelog-->\n<h4>1.2.0<\/h4>\n\n<ul>\n<li>Added: Auto gallery fallback.<\/li>\n<li>Added: Mobile tap-to-reveal.<\/li>\n<li>Added: Image preloading on hover.<\/li>\n<li>Added: Live animation preview on settings page with Play button.<\/li>\n<li>Added: Animation speed range slider.<\/li>\n<li>Added: Zoom Out, Slide Left, Slide Right animation types.<\/li>\n<li>Added: HPOS compatibility declaration.<\/li>\n<li>Added: Object cache for secondary image ID lookups.<\/li>\n<li>Added: WooCommerce activation check with admin notice.<\/li>\n<li>Fixed: border-radius not applied to secondary images.<\/li>\n<li>Fixed: Secondary images affected by lazy-load themes.<\/li>\n<li>Improved: Full prefix refactor to pisw_ \u2014 no collision with common terms.<\/li>\n<li>Improved: Security \u2014 all output escaped, all input sanitized.<\/li>\n<\/ul>\n\n<h4>1.0.0<\/h4>\n\n<ul>\n<li>Initial release.<\/li>\n<\/ul>","raw_excerpt":"Swap WooCommerce product images on hover with 8 animations. Auto gallery fallback, mobile tap support, live preview in settings.","jetpack_sharing_enabled":true,"_links":{"self":[{"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin\/318866","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=318866"}],"author":[{"embeddable":true,"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wporg\/v1\/users\/wpthemeprime"}],"wp:attachment":[{"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/media?parent=318866"}],"wp:term":[{"taxonomy":"plugin_section","embeddable":true,"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_section?post=318866"},{"taxonomy":"plugin_tags","embeddable":true,"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_tags?post=318866"},{"taxonomy":"plugin_category","embeddable":true,"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_category?post=318866"},{"taxonomy":"plugin_contributors","embeddable":true,"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_contributors?post=318866"},{"taxonomy":"plugin_business_model","embeddable":true,"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_business_model?post=318866"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}