Changeset 3322961
- Timestamp:
- 07/06/2025 08:59:54 AM (5 months ago)
- Location:
- image-select-field-for-elementor-forms/trunk
- Files:
-
- 5 edited
-
assets/css/isfef-style.css (modified) (7 diffs)
-
assets/js/isfef-scripts.js (modified) (1 diff)
-
image-select-field-for-elementor-forms.php (modified) (1 diff)
-
includes/class-isfeforms-widgets-control.php (modified) (2 diffs)
-
readme.txt (modified) (1 diff)
Legend:
- Unmodified
- Added
- Removed
-
image-select-field-for-elementor-forms/trunk/assets/css/isfef-style.css
r3304456 r3322961 1 /* add variable color */ 2 :root { 3 --isfef_theme_color: #0073e6; 4 } 5 1 6 .isfef-image-select .elementor-field-subgroup.elementor-subgroup-inline { 2 7 width: 100%; … … 8 13 } 9 14 10 .elementor-field-type-checkbox:not(.isfef-image-select) input[type="checkbox"] { 11 display: none !important; 15 .isfef-modernize-radio-checkbox .elementor-field-type-checkbox:not(.isfef-image-select) input[type="checkbox"], 16 .isfef-modernize-radio-checkbox .elementor-field-type-radio:not(.isfef-image-select) input[type="radio"] { 17 /* display: none !important; */ 18 opacity: 0; 19 width: .3px; 12 20 } 13 21 14 .elementor-field-type-checkbox:not(.isfef-image-select) input[type="checkbox"]+label { 22 .isfef-modernize-radio-checkbox .elementor-field-type-checkbox:not(.isfef-image-select) input[type="checkbox"]+label, 23 .isfef-modernize-radio-checkbox .elementor-field-type-radio:not(.isfef-image-select) input[type="radio"]+label { 15 24 display: inline-block; 16 padding: 10px 20px;25 padding: 2px 10px; 17 26 background-color: #f3f3f3; 18 27 color: #333; … … 23 32 font-weight: 500; 24 33 box-shadow: 0 2px 6px rgba(0, 0, 0, 0.1); 34 font-size: 15px; 25 35 } 26 36 27 .elementor-field-type-checkbox:not(.isfef-image-select) input[type="checkbox"]+label { 28 display: inline-block; 29 padding: 10px 20px; 30 background-color: #f3f3f3; 31 color: #333; 32 border: 2px solid #ccc; 33 border-radius: 8px; 34 cursor: pointer; 35 transition: all 0.3s ease; 36 font-weight: 500; 37 box-shadow: 0 2px 6px rgba(0, 0, 0, 0.1); 38 } 39 40 .elementor-field-type-checkbox:not(.isfef-image-select) input[type="checkbox"]:checked+label { 41 background-color: #0073e6; 42 border-color: #0073e6; 37 .isfef-modernize-radio-checkbox .elementor-field-type-checkbox:not(.isfef-image-select) input[type="checkbox"]:checked+label, 38 .isfef-modernize-radio-checkbox .elementor-field-type-radio:not(.isfef-image-select) input[type="radio"]:checked+label { 39 background-color: var(--isfef_theme_color); 40 border-color: var(--isfef_theme_color); 43 41 color: #fff; 44 42 } … … 46 44 /* image select */ 47 45 .isfef-image-select label { 48 padding: 0 !important;46 /* padding: 0 !important; */ 49 47 border: 0 !important; 50 48 } … … 61 59 margin: 5px; 62 60 transition: all 0.3s ease; 61 position: relative; 62 } 63 64 .isfef-image-select input:checked+label:before { 65 content: ''; 66 background-image: url("data:image/svg+xml,%3Csvg xmlns%3D%22http://www.w3.org/2000/svg%22 version%3D%221.1%22 xmlns:xlink%3D%22http://www.w3.org/1999/xlink%22 width%3D%22512%22 height%3D%22512%22 viewBox%3D%220 0 254000 254000%22 style%3D%22enable-background%3Anew 0 0 512 512%22 xml:space%3D%22preserve%22 fill-rule%3D%22evenodd%22%3E%3Ccircle r%3D%22127000%22 cx%3D%22127000%22 cy%3D%22127000%22 fill%3D%22%23ffffff%22 transform%3D%22matrix(0.69%2C0%2C0%2C0.69%2C39370%2C39370)%22/%3E%3Cg transform%3D%22matrix(1%2C0%2C0%2C1%2C0%2C0)%22%3E%3Cpath fill%3D%22%2348b02c%22 d%3D%22M127000 254000C56871 254000 0 197129 0 127000S56871 0 127000 0s127000 56871 127000 127000-56871 127000-127000 127000zm-17473-104654 76212-76211c2637-2638 6967-2611 9578 0l8642 8642c2611 2611 2611 6968 0 9578l-89509 89510c-1601 1601-3850 2231-5957 1869-1442-181-2833-814-3919-1899l-54525-54525c-2606-2606-2637-6941 0-9579l8642-8642c2638-2637 6941-2637 9579 0z%22 opacity%3D%221%22/%3E%3C/g%3E%3C/svg%3E"); 67 68 69 background-size: cover; 70 background-repeat: no-repeat; 71 position: absolute; 72 left: 5px; 73 width: 20px; 74 height: 20px; 75 top: 5px; 63 76 } 64 77 … … 78 91 79 92 .isfef-image-select input:checked+label img { 80 box-shadow: 0px 0px 0px 2px #094a94;93 box-shadow: 0px 0px 0px 2px var(--isfef_theme_color); 81 94 } 82 95 … … 89 102 row-gap: 10px; 90 103 } 104 105 .isfef-image-select label img { 106 padding: 25px; 107 } 108 109 .isfef-image-select .elementor-field-subgroup label { 110 line-height: 1.4; 111 } 112 113 .isfef-image-select input+label img { 114 box-shadow: 0px 0px 0px 2px #eee; 115 } 116 117 .elementor-field-group:not(.isfef-image-select) .elementor-field-subgroup { 118 gap: 6px; 119 } 120 121 .isfef-modernize-radio-checkbox .elementor-field-type-checkbox:not(.isfef-image-select) input[type="checkbox"]:checked+label, 122 .isfef-modernize-radio-checkbox .elementor-field-type-radio:not(.isfef-image-select) input[type="radio"]:checked+label { 123 padding-left: 25px; 124 position: relative; 125 } 126 127 .isfef-modernize-radio-checkbox .elementor-field-type-checkbox:not(.isfef-image-select) input[type="checkbox"]:checked+label:before, 128 .isfef-modernize-radio-checkbox .elementor-field-type-radio:not(.isfef-image-select) input[type="radio"]:checked+label:before { 129 content: ''; 130 background-image: url("data:image/svg+xml,%3Csvg xmlns%3D%22http://www.w3.org/2000/svg%22 version%3D%221.1%22 xmlns:xlink%3D%22http://www.w3.org/1999/xlink%22 width%3D%22512%22 height%3D%22512%22 viewBox%3D%220 0 254000 254000%22 style%3D%22enable-background%3Anew 0 0 512 512%22 xml:space%3D%22preserve%22 fill-rule%3D%22evenodd%22%3E%3Ccircle r%3D%22127000%22 cx%3D%22127000%22 cy%3D%22127000%22 fill%3D%22%23ffffff%22 transform%3D%22matrix(0.69%2C0%2C0%2C0.69%2C39370%2C39370)%22/%3E%3Cg transform%3D%22matrix(1%2C0%2C0%2C1%2C0%2C0)%22%3E%3Cpath fill%3D%22%2348b02c%22 d%3D%22M127000 254000C56871 254000 0 197129 0 127000S56871 0 127000 0s127000 56871 127000 127000-56871 127000-127000 127000zm-17473-104654 76212-76211c2637-2638 6967-2611 9578 0l8642 8642c2611 2611 2611 6968 0 9578l-89509 89510c-1601 1601-3850 2231-5957 1869-1442-181-2833-814-3919-1899l-54525-54525c-2606-2606-2637-6941 0-9579l8642-8642c2638-2637 6941-2637 9579 0z%22 opacity%3D%221%22/%3E%3C/g%3E%3C/svg%3E"); 131 132 background-size: cover; 133 background-repeat: no-repeat; 134 position: absolute; 135 left: 5px; 136 width: 16px; 137 height: 16px; 138 top: 25%; 139 } -
image-select-field-for-elementor-forms/trunk/assets/js/isfef-scripts.js
r3304456 r3322961 3 3 4 4 $(document).ready(function () { 5 6 $("[data-isfef-modernize]").each(function () { 7 var $form = $(this); 8 var imageSelectFields = $form.data("isfef-modernize"); 9 console.log(imageSelectFields) 10 if (imageSelectFields == true) { 11 // Add class to the form for modernizing radio and checkbox styles 12 $form.addClass('isfef-modernize-radio-checkbox'); 13 } 14 }); 5 15 6 16 $("[data-isfef-images]").each(function () { -
image-select-field-for-elementor-forms/trunk/image-select-field-for-elementor-forms.php
r3304456 r3322961 4 4 * Plugin name: Image Select Field for Elementor Forms 5 5 * Description: Image Select Field for Elementor Forms is a powerful addon that extends the native Elementor Form widget by adding a custom image selection field. Let your users select options visually through images—perfect for forms that require choices like product styles, services, packages, or preferences. 6 * Version: 1.0. 16 * Version: 1.0.2 7 7 * Author: WP Noman 8 8 * License: GPLv2 or later -
image-select-field-for-elementor-forms/trunk/includes/class-isfeforms-widgets-control.php
r3304456 r3322961 77 77 'fields' => $repeater->get_controls(), 78 78 ) 79 ); 80 81 $element->add_control( 82 'isfeforms_img_icon_adjustment_slider', 83 [ 84 'label' => __('Icon Adjustment ( Image Selector )', 'image-select-field-for-elementor-forms'), 85 'type' => \Elementor\Controls_Manager::SLIDER, 86 'size_units' => ['%'], 87 'range' => [ 88 '%' => [ 89 'min' => 0, 90 'max' => 100, 91 ], 92 ], 93 'selectors' => [ 94 '{{WRAPPER}} .isfef-image-select input:checked+label:before' => 'top: {{SIZE}}{{UNIT}};', 95 ], 96 ] 97 ); 98 99 $element->add_control( 100 'isfeforms_img_icon_size', 101 [ 102 'label' => __('Icon Size ( Image Selector )', 'image-select-field-for-elementor-forms'), 103 'type' => \Elementor\Controls_Manager::SLIDER, 104 'size_units' => ['px'], 105 'range' => [ 106 'px' => [ 107 'min' => 0, 108 'max' => 100, 109 ], 110 ], 111 'selectors' => [ 112 '{{WRAPPER}} .isfef-image-select input:checked+label:before' => 'width: {{SIZE}}{{UNIT}}; height: {{SIZE}}{{UNIT}};', 113 ], 114 ] 115 ); 116 117 $element->add_control( 118 'modernize_radio_checkbox', 119 [ 120 'label' => esc_html__('Modernize Your Radio/Checkbox', 'textdomain'), 121 'type' => \Elementor\Controls_Manager::SWITCHER, 122 'label_on' => esc_html__('Yes', 'textdomain'), 123 'label_off' => esc_html__('No', 'textdomain'), 124 ] 125 ); 126 127 $element->add_control( 128 'isfeforms_icon_adjustment_slider', 129 [ 130 'label' => __('Icon Adjustment ( Radio/Checkbox Selector )', 'image-select-field-for-elementor-forms'), 131 'type' => \Elementor\Controls_Manager::SLIDER, 132 'size_units' => ['%'], 133 'range' => [ 134 '%' => [ 135 'min' => 0, 136 'max' => 100, 137 ], 138 ], 139 'selectors' => [ 140 '{{WRAPPER}} .elementor-field-type-radio:not(.isfef-image-select) input[type="radio"]:checked+label:before, {{WRAPPER}} .elementor-field-type-checkbox:not(.isfef-image-select) input[type="checkbox"]:checked+label' => 'top: {{SIZE}}{{UNIT}};', 141 ], 142 ] 143 ); 144 $element->add_control( 145 'isfeforms_rc_icon_size', 146 [ 147 'label' => __('Icon Size ( Radio/Checkbox Selector )', 'image-select-field-for-elementor-forms'), 148 'type' => \Elementor\Controls_Manager::SLIDER, 149 'size_units' => ['px'], 150 'range' => [ 151 'px' => [ 152 'min' => 0, 153 'max' => 100, 154 ], 155 ], 156 'selectors' => [ 157 '{{WRAPPER}} .elementor-field-type-radio:not(.isfef-image-select) input[type="radio"]:checked+label:before, {{WRAPPER}} .elementor-field-type-checkbox:not(.isfef-image-select) input[type="checkbox"]:checked+label' => 'width: {{SIZE}}{{UNIT}}; height: {{SIZE}}{{UNIT}};', 158 ], 159 ] 160 ); 161 162 // color 163 $element->add_control( 164 'isfeforms_icon_color', 165 [ 166 'label' => __('Theme Color', 'image-select-field-for-elementor-forms'), 167 'type' => \Elementor\Controls_Manager::COLOR, 168 'selectors' => [ 169 '{{WRAPPER}}' => '--isfef_theme_color: {{VALUE}};', 170 ], 171 ] 79 172 ); 80 173 … … 111 204 $element->add_render_attribute('_wrapper', [ 112 205 'data-isfef-images' => esc_attr(json_encode($rep_data)), 206 'data-isfef-modernize' => !empty($settings['modernize_radio_checkbox']) && $settings['modernize_radio_checkbox'] === 'yes' ? 'true' : 'false', 113 207 ]); 114 208 } -
image-select-field-for-elementor-forms/trunk/readme.txt
r3304456 r3322961 1 1 === Image Select Field for Elementor Forms === 2 Contributors: WPNoman0 3 Tags: image select field, elementor form, Elementor widgets, widgets for Elementor, elementor addon4 Requires at least: 5.9 5 Tested up to: 6.8 6 Requires PHP: 7.4 7 Stable tag: 1.0. 18 License: GPLv2 or later 9 License URI: https://www.gnu.org/licenses/gpl-2.0.html 2 Contributors: WPNoman0 3 Tags: elementor addon, image select, visual form field, elementor form field, image radio, elementor form widget, form builder, custom form field, image choice, image options 4 Requires at least: 5.9 5 Tested up to: 6.8 6 Requires PHP: 7.4 7 Stable tag: 1.0.2 8 License: GPLv2 or later 9 License URI: https://www.gnu.org/licenses/gpl-2.0.html 10 10 11 Simple elementor addon to Extend elementor form 11 Enhance Elementor Forms with image-based selection options. Add image select fields to your Elementor forms for visual, intuitive form inputs. 12 12 13 13 == Description == 14 14 15 **Image Select Field for Elementor Forms** 16 Image Select Field for Elementor Forms is a powerful addon that extends the native Elementor Form widget by adding a custom image selection field. Let your users select options visually through images—perfect for forms that require choices like product styles, services, packages, or preferences. 15 <strong>Image Select Field for Elementor Forms</strong> is a lightweight yet powerful addon that adds a visual image-based selection field to the native Elementor Form widget. Allow users to select from custom image options—perfect for choosing products, styles, packages, services, or preferences. 17 16 18 Features: 19 - Add Elementor image select field in native Elementor Form widget 17 This plugin is ideal for anyone looking to create more interactive and visually engaging forms using Elementor. No need for third-party form builders—this addon works directly within Elementor’s native form widget. 18 19 **Use Cases:** 20 - Product style or color selection 21 - Plan/package comparison 22 - Image-based quizzes or surveys 23 - Visual service selection 24 - Booking options with icons/images 25 26 **Key Features:** 27 - Seamlessly integrates with Elementor Form widget 28 - Adds a custom image select field type 29 - Visual and intuitive UX for users 30 - Fully responsive and mobile-friendly 31 - Easy to use—no coding required 32 - Compatible with Elementor Free & Pro 33 34 == Installation == 35 36 1. Upload the plugin files to the `/wp-content/plugins/image-select-field-for-elementor-forms` directory, or install the plugin through the WordPress Plugins screen. 37 2. Activate the plugin through the ‘Plugins’ menu in WordPress. 38 3. Open any page using the Elementor editor. 39 4. Add or edit a form using the native Elementor Form widget. 40 5. Use the new “Image Select” field under the “Advanced Addons” or “Extra Fields” section. 41 42 == Frequently Asked Questions == 43 44 = Where can I find the image select field? = 45 Open the Elementor editor and add the Form widget. You’ll find “Image Select” as a new field type in the form field list. 46 47 = Can I use this without Elementor Pro? = 48 No, this plugin extends the native Elementor Form widget, which is available only in Elementor Pro. 49 50 = Can I add custom styling to the images? = 51 Yes, you can style the image options using custom CSS or using the Elementor Style tab. 52 53 = Elementor editor not loading or crashing? = 54 This can happen due to low server PHP settings. Please increase: 55 - PHP memory_limit to at least 512M 56 - max_execution_time to at least 300 seconds 57 Contact your hosting provider for help. 58 59 == Screenshots == 60 61 1. Image select field in Elementor form editor 62 2. Frontend display of image selection field 63 3. Multiple images with labels as options 20 64 21 65 == Changelog == 22 66 67 = 1.0.1 = 23 68 * Initial release 24 69 70 == Upgrade Notice == 25 71 26 == Installation == 27 28 29 1. Upload the plugin files to the `/wp-content/plugins/image-select-field-for-elementor-forms` directory, or install the plugin through the WordPress plugins screen directly. 30 2. Activate the plugin through the 'Plugins' screen in WordPress 31 3. (Make your instructions match the desired user flow for activating and installing your plugin. Include any steps that might be needed for explanatory purposes) 32 4. Edit an page with elementor and search for Advanced Addon Category 33 5. Enjoin the plugin. 34 35 36 37 == Frequently Asked Questions == 38 39 = How to use Advanced addon Table? = 40 41 Login your WordPress dashboard, Active Image Select Field for Elementor Forms plugin go page and search widgets. 42 43 44 = Elementor editor fails to load or not working? = 45 It's due to your servers' PHP settings. Increase your server PHP memory limit from the wp-config.php file or php.ini file. If you don't have an idea about it. Please contact your hosting provider and ask to increase 46 * PHP memory_limit = 512M 47 * max_execution_time = 300 72 = 1.0.1 = 73 First version – adds Image Select Field to Elementor Forms.
Note: See TracChangeset
for help on using the changeset viewer.