diff --git a/.wordpress-org/banner-1544x500.png b/.wordpress-org/banner-1544x500.png index 111da99..acc48b5 100644 Binary files a/.wordpress-org/banner-1544x500.png and b/.wordpress-org/banner-1544x500.png differ diff --git a/.wordpress-org/banner-772x250.png b/.wordpress-org/banner-772x250.png index 4b6d965..a0574a3 100644 Binary files a/.wordpress-org/banner-772x250.png and b/.wordpress-org/banner-772x250.png differ diff --git a/.wordpress-org/icon-128x128.png b/.wordpress-org/icon-128x128.png index 63b8e56..c085642 100644 Binary files a/.wordpress-org/icon-128x128.png and b/.wordpress-org/icon-128x128.png differ diff --git a/.wordpress-org/icon-256x256.png b/.wordpress-org/icon-256x256.png index 6d40f9f..8f447b0 100644 Binary files a/.wordpress-org/icon-256x256.png and b/.wordpress-org/icon-256x256.png differ diff --git a/.wordpress-org/screenshot-1.png b/.wordpress-org/screenshot-1.png old mode 100755 new mode 100644 index c90bdba..cbdf18b Binary files a/.wordpress-org/screenshot-1.png and b/.wordpress-org/screenshot-1.png differ diff --git a/.wordpress-org/screenshot-2.png b/.wordpress-org/screenshot-2.png old mode 100755 new mode 100644 index 32f0590..888ec01 Binary files a/.wordpress-org/screenshot-2.png and b/.wordpress-org/screenshot-2.png differ diff --git a/.wordpress-org/screenshot-3.png b/.wordpress-org/screenshot-3.png old mode 100755 new mode 100644 index a51c42b..c907947 Binary files a/.wordpress-org/screenshot-3.png and b/.wordpress-org/screenshot-3.png differ diff --git a/.wordpress-org/screenshot-4.png b/.wordpress-org/screenshot-4.png new file mode 100644 index 0000000..338a4d4 Binary files /dev/null and b/.wordpress-org/screenshot-4.png differ diff --git a/.wordpress-org/screenshot-5.png b/.wordpress-org/screenshot-5.png new file mode 100644 index 0000000..2446fca Binary files /dev/null and b/.wordpress-org/screenshot-5.png differ diff --git a/.wordpress-org/screenshot-6.png b/.wordpress-org/screenshot-6.png new file mode 100644 index 0000000..5dbf129 Binary files /dev/null and b/.wordpress-org/screenshot-6.png differ diff --git a/.wordpress-org/screenshot-7.png b/.wordpress-org/screenshot-7.png new file mode 100644 index 0000000..2023fa8 Binary files /dev/null and b/.wordpress-org/screenshot-7.png differ diff --git a/.wordpress-org/screenshot-8.png b/.wordpress-org/screenshot-8.png new file mode 100644 index 0000000..251497a Binary files /dev/null and b/.wordpress-org/screenshot-8.png differ diff --git a/.wordpress-org/screenshot-9.png b/.wordpress-org/screenshot-9.png new file mode 100644 index 0000000..82b056e Binary files /dev/null and b/.wordpress-org/screenshot-9.png differ diff --git a/assets/js/admin.js b/assets/js/admin.js index 00331f5..2803792 100644 --- a/assets/js/admin.js +++ b/assets/js/admin.js @@ -32,9 +32,11 @@ jQuery(document).ready(function ($) { upload_images: function (e) { e.preventDefault(); var variationID = $(this).data('wc_variation_images_variation_id'); - if ($.wc_variation_images.is_cross_upload_limit(variationID)) { - alert('Upload limit 3 images in free version'); - return false; + if( "1" !== WC_VARIATION_IMAGES.is_pro_active ) { + if ($.wc_variation_images.is_cross_upload_limit(variationID)) { + alert(WC_VARIATION_IMAGES.media_upload_limit_text); + return false; + } } var self = $(this); @@ -54,9 +56,11 @@ jQuery(document).ready(function ($) { var images = file_frame.state().get('selection').toJSON(); var image_limit = $('#wc-variation-images-image-list-' + variationID + ' li').length; var total_image = image_limit + images.length; - if (total_image > 8) { - alert('Upload limit 3 images in free version'); - return false; + if( "1" !== WC_VARIATION_IMAGES.is_pro_active ) { + if (total_image > 3) { + alert(WC_VARIATION_IMAGES.media_upload_limit_text); + return false; + } } var html = images.map(function (image) { var imageID = image.id; @@ -88,7 +92,7 @@ jQuery(document).ready(function ($) { is_cross_upload_limit: function (variationId) { var selector = $('#wc-variation-images-image-list-' + variationId + ' li'); var length = selector.length; - return (length >= 8); + return (length >= 3); } }; $.wc_variation_images.init(); diff --git a/assets/js/frontend.js b/assets/js/frontend.js index 8f24f7b..eda5422 100644 --- a/assets/js/frontend.js +++ b/assets/js/frontend.js @@ -104,26 +104,22 @@ function load_slider() { var slider_settings = JSON.parse( WC_VARIATION_IMAGES.i18n.slider_data ); - var enable_slider = "no" === slider_settings.enable_slider ? false : { delay: slider_settings.slider_delay, disableOnInteraction: false } + var enable_slider = "yes" === slider_settings.enable_slider ? { delay: slider_settings.slider_delay, disableOnInteraction: false } : "false"; var navigation = "no" === slider_settings.hide_navigation ? false : { nextEl: ".swiper-button-next", prevEl: ".swiper-button-prev", - } + }; var swiper = new Swiper(".mySwiper", { - loop: slider_settings.loop ? slider_settings.loop : false, + loop: "no" === slider_settings.slider_loop ? false : true, spaceBetween: slider_settings.items_space ? slider_settings.items_space : 4, slidesPerView: slider_settings.items_per_page ? slider_settings.items_per_page : 4, freeMode: true, watchSlidesProgress: true, }); var swiper2 = new Swiper(".mySwiper2", { - loop: slider_settings.loop ? slider_settings.loop : false, + loop: "no" === slider_settings.slider_loop ? false : true, navigation: navigation, autoplay: enable_slider, - effect: 'fade', - fadeEffect: { - crossFade: true - }, thumbs: { swiper: swiper, }, diff --git a/includes/Admin/Admin.php b/includes/Admin/Admin.php index 75c5939..ff8a2cd 100644 --- a/includes/Admin/Admin.php +++ b/includes/Admin/Admin.php @@ -75,10 +75,12 @@ public function enqueue_scripts( $hook ) { array( 'ajaxurl' => admin_url( 'admin-ajax.php' ), 'nonce' => wp_create_nonce( 'wc_variation_images' ), + 'is_pro_active' => is_plugin_active( 'wc-variation-images-pro/wc-variation-images-pro.php' ), 'variation_image_title' => __( 'Variation Images', 'wc-variation-images' ), 'add_variation_image_text' => __( 'Add Additional Images', 'wc-variation-images' ), 'admin_media_title' => __( 'Variation Images', 'wc-variation-images' ), 'admin_media_add_image_text' => __( 'Add to Variation', 'wc-variation-images' ), + 'media_upload_limit_text' => __( 'Upload limit 3 images in free version', 'wc-variation-images' ), 'admin_tip_message' => __( 'Click on link below to add additional images. Click on image itself to remove the image. Click and drag image to re-order the image position.', 'wc-variation-images' ), ) ); diff --git a/includes/Admin/Settings.php b/includes/Admin/Settings.php index 84294b7..f9b81e2 100644 --- a/includes/Admin/Settings.php +++ b/includes/Admin/Settings.php @@ -47,46 +47,46 @@ public function get_settings( $tab ) { 'id' => 'general_options', ), array( - 'id' => 'wc_variation_images_hide_image_zoom', - 'title' => __( 'Hide Image Zoom', 'wc-variation-images' ), - 'desc' => __( 'Hide image zoom for variable product', 'wc-variation-images' ), - 'class' => 'ever-field-inline', - 'type' => 'select', - 'options' => array( + 'id' => 'wc_variation_images_hide_image_zoom', + 'title' => __( 'Hide Image Zoom', 'wc-variation-images' ), + 'desc' => __( 'Hide image zoom for variable product.', 'wc-variation-images' ), + 'desc_tip' => __( 'Check this box to disable the image zoom effect on hover for this product.', 'wc-variation-images' ), + 'type' => 'select', + 'options' => array( 'no' => __( 'No', 'wc-variation-images' ), 'yes' => __( 'Yes', 'wc-variation-images' ), ), - 'default' => 'no', + 'default' => 'no', ), array( - 'id' => 'wc_variation_images_hide_image_lightbox', - 'title' => __( 'Hide Lightbox', 'wc-variation-images' ), - 'desc' => __( 'Hide image lightbox for variable product', 'wc-variation-images' ), - 'class' => 'ever-field-inline', - 'type' => 'select', - 'options' => array( + 'id' => 'wc_variation_images_hide_image_lightbox', + 'title' => __( 'Hide Lightbox', 'wc-variation-images' ), + 'desc' => __( 'Hide image lightbox for variable product.', 'wc-variation-images' ), + 'desc_tip' => __( 'Enable this option to hide the lightbox on the product page.', 'wc-variation-images' ), + 'type' => 'select', + 'options' => array( 'no' => __( 'No', 'wc-variation-images' ), 'yes' => __( 'Yes', 'wc-variation-images' ), ), - 'default' => 'no', + 'default' => 'no', ), array( - 'id' => 'wc_variation_images_hide_image_slider', - 'title' => __( 'Hide Image Slider', 'wc-variation-images' ), - 'desc' => __( 'Hide image slider for variable product', 'wc-variation-images' ), - 'class' => 'ever-field-inline', - 'type' => 'select', - 'options' => array( + 'id' => 'wc_variation_images_hide_image_slider', + 'title' => __( 'Hide Image Slider', 'wc-variation-images' ), + 'desc' => __( 'Hide image slider for variable product.', 'wc-variation-images' ), + 'desc_tip' => __( 'Enable this option to hide the image slider for this specific variation on the frontend.', 'wc-variation-images' ), + 'type' => 'select', + 'options' => array( 'no' => __( 'No', 'wc-variation-images' ), 'yes' => __( 'Yes', 'wc-variation-images' ), ), - 'default' => 'no', + 'default' => 'no', ), array( 'id' => 'wcvi_gallery_position', 'title' => __( 'Gallery Position', 'wc-variation-images' ), - 'desc' => __( 'Set Gallery image position', 'wc-variation-images' ), - 'desc_tip' => __( 'Set Gallery image position', 'wc-variation-images' ), + 'desc' => __( 'Set product image position.', 'wc-variation-images' ), + 'desc_tip' => __( 'Select the position of the product gallery on the product page.', 'wc-variation-images' ), 'type' => 'select', 'options' => Helpers::gallery_position_list(), 'default' => 'bottom', diff --git a/includes/Products.php b/includes/Products.php index cc0815e..7f567b2 100644 --- a/includes/Products.php +++ b/includes/Products.php @@ -45,7 +45,7 @@ public function gallery_template_override( $template, $template_name ) { } $product = wc_get_product(); - if ( 'variable' === $product->get_type() ) { + if ( is_product() && 'variable' === $product->get_type() ) { if ( 'single-product/product-image.php' === $template_name ) { if ( 'no' === get_option( 'wc_variation_images_hide_image_slider', 'no' ) ) { $template = WC_VARIATION_IMAGES_TEMPLATES_DIR . '/product-image-slider.php'; diff --git a/languages/wc-variation-images.pot b/languages/wc-variation-images.pot index 95fb0d9..487c2bb 100644 --- a/languages/wc-variation-images.pot +++ b/languages/wc-variation-images.pot @@ -4,7 +4,7 @@ msgid "" msgstr "" "Project-Id-Version: WC Variation Images 1.2.0\n" "Report-Msgid-Bugs-To: https://pluginever.com/support/\n" -"POT-Creation-Date: 2025-01-12 04:34:21+00:00\n" +"POT-Creation-Date: 2025-01-15 10:52:21+00:00\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=utf-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -24,38 +24,42 @@ msgstr "" "X-Textdomain-Support: yes\n" "X-Generator: grunt-wp-i18n 1.0.3\n" -#: includes/Admin/Admin.php:78 includes/Admin/Admin.php:80 -#: includes/Admin/Admin.php:111 includes/Admin/Admin.php:112 +#: includes/Admin/Admin.php:79 includes/Admin/Admin.php:81 +#: includes/Admin/Admin.php:113 includes/Admin/Admin.php:114 #: includes/Products.php:147 msgid "Variation Images" msgstr "" -#: includes/Admin/Admin.php:79 +#: includes/Admin/Admin.php:80 msgid "Add Additional Images" msgstr "" -#: includes/Admin/Admin.php:81 +#: includes/Admin/Admin.php:82 msgid "Add to Variation" msgstr "" -#: includes/Admin/Admin.php:82 +#: includes/Admin/Admin.php:83 +msgid "Upload limit 3 images in free version" +msgstr "" + +#: includes/Admin/Admin.php:84 msgid "" "Click on link below to add additional images. Click on image itself to " "remove the image. Click and drag image to re-order the image position." msgstr "" -#: includes/Admin/Admin.php:131 +#: includes/Admin/Admin.php:133 #. translators: 1: Plugin name 2: WordPress msgid "" "Thank you for using %1$s. If you like it, please leave us a %2$s rating. A " "huge thank you from PluginEver in advance!" msgstr "" -#: includes/Admin/Admin.php:133 +#: includes/Admin/Admin.php:135 msgid "Thanks :)" msgstr "" -#: includes/Admin/Admin.php:151 +#: includes/Admin/Admin.php:153 #. translators: 1: Plugin version msgid "Version %s" msgstr "" @@ -77,7 +81,11 @@ msgid "Hide Image Zoom" msgstr "" #: includes/Admin/Settings.php:52 -msgid "Hide image zoom for variable product" +msgid "Hide image zoom for variable product." +msgstr "" + +#: includes/Admin/Settings.php:53 +msgid "Check this box to disable the image zoom effect on hover for this product." msgstr "" #: includes/Admin/Settings.php:56 includes/Admin/Settings.php:68 @@ -95,7 +103,11 @@ msgid "Hide Lightbox" msgstr "" #: includes/Admin/Settings.php:64 -msgid "Hide image lightbox for variable product" +msgid "Hide image lightbox for variable product." +msgstr "" + +#: includes/Admin/Settings.php:65 +msgid "Enable this option to hide the lightbox on the product page." msgstr "" #: includes/Admin/Settings.php:75 @@ -103,15 +115,25 @@ msgid "Hide Image Slider" msgstr "" #: includes/Admin/Settings.php:76 -msgid "Hide image slider for variable product" +msgid "Hide image slider for variable product." +msgstr "" + +#: includes/Admin/Settings.php:77 +msgid "" +"Enable this option to hide the image slider for this specific variation on " +"the frontend." msgstr "" #: includes/Admin/Settings.php:87 msgid "Gallery Position" msgstr "" -#: includes/Admin/Settings.php:88 includes/Admin/Settings.php:89 -msgid "Set Gallery image position" +#: includes/Admin/Settings.php:88 +msgid "Set product image position." +msgstr "" + +#: includes/Admin/Settings.php:89 +msgid "Select the position of the product gallery on the product page." msgstr "" #: includes/Admin/Settings.php:134 @@ -195,12 +217,12 @@ msgstr "" msgid "Bottom" msgstr "" -#: includes/Plugin.php:106 +#: includes/Plugin.php:108 #. translators: 1: plugin name 2: WooCommerce msgid "%1$s requires %2$s to be installed and active." msgstr "" -#: includes/Plugin.php:108 +#: includes/Plugin.php:110 msgid "WooCommerce" msgstr "" diff --git a/readme.txt b/readme.txt index 6481958..ea9e2aa 100644 --- a/readme.txt +++ b/readme.txt @@ -13,10 +13,10 @@ Product Variation Images for WooCommerce allows adding additional images for eac == Description == Product Variation Images for WooCommerce is a great WooCommerce extension that allows you to add and display multiple images per product variation with necessary controls for your variable products. -WooCommerce by default offers to show only one image per variation but we all know that how much customers love images. More image of the variation helps the customer make a quick decision and also create purchase intention. +WooCommerce by default offers to show only one image per variation, but we all know that how many customers love images. More image of the variation helps the customer make a quick decision and also create purchase intention. ## View Demo & Upgrade to Pro for Product Variation Images for WooCommerce ## -[DEMO](https://demo.pluginever.com/wc-variation-images/) | [Get The PRO Version](https://pluginever.com/plugins/wc-variation-images-pro/) | [Support](https://www.pluginever.com/support/) | [Documentation ](https://www.pluginever.com/docs/wc-variation-images/) +[**💻 Demo**](https://demo.pluginever.com/wc-variation-images/) | [**🚀 Get The PRO Version**](https://pluginever.com/plugins/wc-variation-images-pro/) | [**🛠 Support**](https://pluginever.com/support/) | [**📄 Documentation**](https://www.pluginever.com/docs/wc-variation-images/) == How will this benefit you: == 1. Show the complete product to your customer. @@ -24,14 +24,49 @@ WooCommerce by default offers to show only one image per variation but we all kn 3. Help Customers to make quick decisions. 4. Increase your store sales. -== The features: == -* Add three images per variation. -* Control product image zoom. -* Control the slider options. -* Image LightBox controlling options. +### 🌟 Core Features (Free) -== Installation and usages: == -The installation is very straight forward like most WooCommerce plugins. You must note that you need to have WooCommerce installed. +✅ Add three images per variation. +✅ Control product image zoom. +✅ Control the slider options. +✅ Image LightBox controlling options. +✅ Image Gallery Position. + +### 🚀 Pro Features + +🔸 Unlimited Image upload for each variation. +🔸 Customize Gallery Position as per your store need. +🔸 Lightbox customization like ** Zoom, Fullscreen, Slider Play, Thumbs**. +🔸 Slider customization like ** Navigation, Item Gap, Slider loop, Delay**. + +### 🔮 Upcoming Features + +🌟 **Add Icon:** Customize icon As per your store. +🌟 **Video Gallery:** Add video gallery support for YouTube and Vimeo. +🌟 **Styles:** Add style tab where you can style slider & lightbox button as per your store. + +== Installation == + +### Installation from WordPress Dashboard + +1. Log in to your admin panel. +2. Navigate to Plugins → Add New. +3. Search for **WC Variation Images by PluginEver.** +4. Click 'Install' and then 'Activate'. + +### Manual Installation + +1. Download the plugin ZIP file. +2. Navigate to Plugins → Add New → Upload Plugin. +3. Choose the ZIP file, click 'Install', and Activate. + +### Installation via FTP + +1. Unzip the plugin ZIP file. +2. Use an FTP client to upload the plugin folder to `wp-content/plugins/`. +3. Log in to your WordPress dashboard. +4. Navigate to Plugins → Installed Plugins. +5. Activate the plugin. == Compatibility: == We did not notice any issue or conflict with other plugins so you can install and use this with ease. Still, WooCommerce is a vast system and there can be issues but we will try to keep you on the safe side by solving them. @@ -40,25 +75,37 @@ We did not notice any issue or conflict with other plugins so you can install an == Frequently Asked Questions == = How to Use Product Variation Images for WooCommerce = - -* Go to `WooCommerce > settings > Variation Image` +* Go to `WooCommerce > Variation Images` = Is it compatible with any kinds of WooCommerce Theme? = - Yes, it is compatible with Most of the popular WooCommerce themes. = Does it work on MultiSite? = - Yes, it does. +### You may also like some of our Popular Plugins + +[**WC Discontinued Products Pro**](https://pluginever.com/plugins/wc-discontinued-products-pro/?utm_source=wordrpress.org&utm_medium=readmefile) | [**WC Digital Product Checkout**](https://pluginever.com/plugins/wc-digital-product-checkout/?utm_source=wordrpress.org&utm_medium=readmefile&utm_campaign=tabmanager) | [**WC Back in Stock Notifier**](https://pluginever.com/plugins/wc-back-in-stock-notifier/?utm_source=wordrpress.org&utm_medium=readmefile&utm_campaign=tabmanager) | [**WC Registration Approval**](https://pluginever.com/plugins/wc-registration-approval/?utm_source=wordrpress.org&utm_medium=readmefile&utm_campaign=tabmanager) + +### Explore Some of Our Top Rated Plugins + +[**WC Key Manager**](https://wordpress.org/plugins/wc-key-manager/) | [**WC Min Max Quantities**](https://wordpress.org/plugins/wc-min-max-quantities/) | [**Product Tabs Manager**](https://wordpress.org/plugins/product-tabs-manager/) + == Screenshots == -1. Variation Settings -2. Product variation Settings -3. Product Single Page view +1. General Settings. +2. Lightbox Settings (PRO). +3. Slider Settings (PRO). +4. Product Admin Variation Edit Page. +5. Product Single Page Bottom Gallery. +6. Product Single Page Top Gallery. +7. Product Single Page Right Gallery. +8. Product Single Page Left Gallery. +9. Product Single Page Light box with Social Share. == Changelog == -= 1.2.0 ( 9th January, 2025 )= += 1.2.0 ( 15th January, 2025 )= * Enhance - Update Framework +* Enhance - Add New Feature Gallery Position * Fix - Fixed some known issues * Compatibility - Checked compatibility with WP latest version * Compatibility - Checked compatibility with WC latest version