Auto Image Attributes From Filename With Bulk Updater (Add Alt Text, Image Title For Image SEO) - Version 3.0

Version Description

  • Date: 19.January.2022
  • Tested with WordPress 5.8.3.
  • Enhancement: Removed "Global Switch" option as part of cleaning up the user interface. This option was redundant and the same can be accomplished either by deactivating the plugin or by disabling every option in "General Settings". Please take a note of this change if you have disabled "Global Switch" on your website.
  • UI Enhancement: Added description text to clarity settings to improve usability.
  • UI Enhancement: Added demo video link in plugin settings page.
Download this release

Release Info

Developer arunbasillal
Plugin Icon 128x128 Auto Image Attributes From Filename With Bulk Updater (Add Alt Text, Image Title For Image SEO)
Version 3.0
Comparing to
See all releases

Code changes from version 2.1 to 3.0

README.md CHANGED
@@ -4,6 +4,8 @@ Automatically Add Image Title, Caption, Description And Alt Text From Filename.
4
 
5
  The plugin can update image attributes for both new images and existing images in the media library.
6
 
 
 
7
  Image alt text and title is critical for your image SEO and will help users discover your images (and there by your website) in Google / Yahoo / Bing image search.
8
 
9
  Proper alt text also helps people who are blind or who have low vision understand your images there by improving the accessibility of your website. This will open up your website to a new segment of visitors and increase your traffic.
@@ -45,7 +47,7 @@ What the pro add-on you get these additional features:
45
  * Use post title as alt text. If image is not attached to a post, image filename will be used instead.
46
  * Use post title as caption. If image is not attached to a post, image filename will be used instead.
47
  * Use post title as description. If image is not attached to a post, image filename will be used instead.
48
- * Build your own attributes using custom tags like `%filename%`,`%posttitle%`,`%sitetitle%`,`%yoastfocuskw%`,`%rankmathfocuskw%`. Each custom tag will be replaced with it's value. You can combine them as you please!
49
  * Use Yoast Focus Keyword and Rank Math Focus Keyword as image attributes.
50
  * Clear any image attribute by setting it as blank / empty.
51
  * Exclude images from Bulk Updater. A meta box and a checkbox is added to the `Media Library` > `Edit Media` sidebar. When checked, the bulk updater will not update the attributes of that image in the media library or in posts / products where the image is used.
@@ -74,7 +76,7 @@ With the pro bulk updater you can:
74
  * Update image titles / alt text in media library and existing posts.
75
  * Update image titles / alt text in media library and existing posts only if no title / alt text is set. Existing image titles / alt text will not be changed.
76
  * Update image caption and description in the media library. Existing image captions and descriptions can be preserved.
77
- * Build your own attributes using custom tags like `%filename%`,`%posttitle%`,`%sitetitle%`,`%yoastfocuskw%`,`%rankmathfocuskw%`. Each custom tag will be replaced with it's value. You can combine them as you please!
78
  * Choose to turn off any of the above mentioned features.
79
  * Modify auto generated image attributes using the [iaffpro_image_attributes filter](https://imageattributespro.com/codex/iaffpro_image_attributes/?utm_source=github&utm_medium=readme.md).
80
  * Choose specific post types to bulk update using the [iaffpro_included_post_types filter](https://imageattributespro.com/codex/iaffpro_included_post_types/?utm_source=github&utm_medium=readme.md).
4
 
5
  The plugin can update image attributes for both new images and existing images in the media library.
6
 
7
+ [![Image Attributes Pro Demo Video](https://i.ytimg.com/vi/V5SOU4okOfU/maxresdefault.jpg)](https://youtu.be/V5SOU4okOfU)
8
+
9
  Image alt text and title is critical for your image SEO and will help users discover your images (and there by your website) in Google / Yahoo / Bing image search.
10
 
11
  Proper alt text also helps people who are blind or who have low vision understand your images there by improving the accessibility of your website. This will open up your website to a new segment of visitors and increase your traffic.
47
  * Use post title as alt text. If image is not attached to a post, image filename will be used instead.
48
  * Use post title as caption. If image is not attached to a post, image filename will be used instead.
49
  * Use post title as description. If image is not attached to a post, image filename will be used instead.
50
+ * Build your own attributes using custom tags like `%filename%`, `%posttitle%`, `%sitetitle%`, `%yoastfocuskw%`, `%rankmathfocuskw%`. Each custom tag will be replaced with it's value. You can combine them as you please!
51
  * Use Yoast Focus Keyword and Rank Math Focus Keyword as image attributes.
52
  * Clear any image attribute by setting it as blank / empty.
53
  * Exclude images from Bulk Updater. A meta box and a checkbox is added to the `Media Library` > `Edit Media` sidebar. When checked, the bulk updater will not update the attributes of that image in the media library or in posts / products where the image is used.
76
  * Update image titles / alt text in media library and existing posts.
77
  * Update image titles / alt text in media library and existing posts only if no title / alt text is set. Existing image titles / alt text will not be changed.
78
  * Update image caption and description in the media library. Existing image captions and descriptions can be preserved.
79
+ * Build your own attributes using custom tags like `%filename%`, `%posttitle%`, `%sitetitle%`, `%yoastfocuskw%`, `%rankmathfocuskw%`. Each custom tag will be replaced with it's value. You can combine them as you please!
80
  * Choose to turn off any of the above mentioned features.
81
  * Modify auto generated image attributes using the [iaffpro_image_attributes filter](https://imageattributespro.com/codex/iaffpro_image_attributes/?utm_source=github&utm_medium=readme.md).
82
  * Choose specific post types to bulk update using the [iaffpro_included_post_types filter](https://imageattributespro.com/codex/iaffpro_included_post_types/?utm_source=github&utm_medium=readme.md).
admin/css/iaff-style.css CHANGED
@@ -56,6 +56,11 @@
56
  color: #DC3232;
57
  }
58
 
 
 
 
 
 
59
  #iaff-pro a.nav-tab:focus {
60
  box-shadow: none;
61
  }
56
  color: #DC3232;
57
  }
58
 
59
+ #iaff-pro p.iaff-description {
60
+ color: #646970;
61
+ font-weight: 400;
62
+ }
63
+
64
  #iaff-pro a.nav-tab:focus {
65
  box-shadow: none;
66
  }
admin/iaff_image-attributes-from-filename-admin-setup.php CHANGED
@@ -56,20 +56,11 @@ function iaff_register_settings() {
56
  '__return_false', // Callback Function
57
  'iaff_basic_settings_section' // Page slug
58
  );
59
-
60
- // Global Switch
61
- add_settings_field(
62
- 'iaff_global_switch', // ID
63
- __('Global Switch', 'auto-image-attributes-from-filename-with-bulk-updater'), // Title
64
- 'iaff_global_switch_callback', // Callback function
65
- 'iaff_basic_settings_section', // Page slug
66
- 'iaff_basic_settings_section_id' // Settings Section ID
67
- );
68
 
69
  // General Settings
70
  add_settings_field(
71
  'iaff_general_settings', // ID
72
- __('General Settings', 'auto-image-attributes-from-filename-with-bulk-updater'), // Title
73
  'iaff_general_settings_callback', // Callback function
74
  'iaff_basic_settings_section', // Page slug
75
  'iaff_basic_settings_section_id' // Settings Section ID
@@ -78,7 +69,7 @@ function iaff_register_settings() {
78
  // Filter Settings
79
  add_settings_field(
80
  'iaff_filter_settings', // ID
81
- __('Filter Settings', 'auto-image-attributes-from-filename-with-bulk-updater'), // Title
82
  'iaff_filter_settings_callback', // Callback function
83
  'iaff_basic_settings_section', // Page slug
84
  'iaff_basic_settings_section_id' // Settings Section ID
@@ -116,7 +107,7 @@ function iaff_register_settings() {
116
  // Advanced Filter
117
  add_settings_field(
118
  'iaff_advanced_filter_settings', // ID
119
- __('Advanced Filter', 'auto-image-attributes-from-filename-with-bulk-updater'), // Title
120
  'iaff_advanced_filter_callback', // Callback function
121
  'iaff_advanced_settings_section', // Page slug
122
  'iaff_advanced_settings_section_id' // Settings Section ID
@@ -196,7 +187,7 @@ function iaff_register_settings() {
196
  // General Settings
197
  add_settings_field(
198
  'iaff_bu_general_settings', // ID
199
- __('General Settings', 'auto-image-attributes-from-filename-with-bulk-updater'), // Title
200
  'iaff_bu_general_settings_callback', // Callback function
201
  'iaff_bu_settings_section', // Page slug
202
  'iaff_bu_settings_section_id' // Settings Section ID
@@ -205,7 +196,7 @@ function iaff_register_settings() {
205
  // Filter Settings
206
  add_settings_field(
207
  'iaff_bu_filter_settings', // ID
208
- __('Filter Settings', 'auto-image-attributes-from-filename-with-bulk-updater'), // Title
209
  'iaff_bu_filter_settings_callback', // Callback function
210
  'iaff_bu_settings_section', // Page slug
211
  'iaff_bu_settings_section_id' // Settings Section ID
@@ -315,7 +306,6 @@ function iaff_settings_validater_and_sanitizer( $settings ) {
315
  function iaff_get_settings() {
316
 
317
  $iaff_defaults = array(
318
- 'global_switch' => '1',
319
  'image_title' => '1',
320
  'image_caption' => '1',
321
  'image_description' => '1',
56
  '__return_false', // Callback Function
57
  'iaff_basic_settings_section' // Page slug
58
  );
 
 
 
 
 
 
 
 
 
59
 
60
  // General Settings
61
  add_settings_field(
62
  'iaff_general_settings', // ID
63
+ __( 'General Settings<p class="iaff-description">Select image attributes that should be automatically generated when you upload a new image.</p>', 'auto-image-attributes-from-filename-with-bulk-updater' ), // Title
64
  'iaff_general_settings_callback', // Callback function
65
  'iaff_basic_settings_section', // Page slug
66
  'iaff_basic_settings_section_id' // Settings Section ID
69
  // Filter Settings
70
  add_settings_field(
71
  'iaff_filter_settings', // ID
72
+ __( 'Filter Settings<p class="iaff-description">Selected characters will be removed from filename text before using them as image attributes.</p>', 'auto-image-attributes-from-filename-with-bulk-updater' ), // Title
73
  'iaff_filter_settings_callback', // Callback function
74
  'iaff_basic_settings_section', // Page slug
75
  'iaff_basic_settings_section_id' // Settings Section ID
107
  // Advanced Filter
108
  add_settings_field(
109
  'iaff_advanced_filter_settings', // ID
110
+ __( 'Advanced Filter<p class="iaff-description">Selected characters will be removed from filename text before using them as image attributes.</p>', 'auto-image-attributes-from-filename-with-bulk-updater' ), // Title
111
  'iaff_advanced_filter_callback', // Callback function
112
  'iaff_advanced_settings_section', // Page slug
113
  'iaff_advanced_settings_section_id' // Settings Section ID
187
  // General Settings
188
  add_settings_field(
189
  'iaff_bu_general_settings', // ID
190
+ __( 'General Settings<p class="iaff-description">Select image attributes that should be updated when you run the Bulk Updater.</p>', 'auto-image-attributes-from-filename-with-bulk-updater' ), // Title
191
  'iaff_bu_general_settings_callback', // Callback function
192
  'iaff_bu_settings_section', // Page slug
193
  'iaff_bu_settings_section_id' // Settings Section ID
196
  // Filter Settings
197
  add_settings_field(
198
  'iaff_bu_filter_settings', // ID
199
+ __( 'Filter Settings<p class="iaff-description">Selected characters will be removed from filename text before using them as image attributes.</p>', 'auto-image-attributes-from-filename-with-bulk-updater' ), // Title
200
  'iaff_bu_filter_settings_callback', // Callback function
201
  'iaff_bu_settings_section', // Page slug
202
  'iaff_bu_settings_section_id' // Settings Section ID
306
  function iaff_get_settings() {
307
 
308
  $iaff_defaults = array(
 
309
  'image_title' => '1',
310
  'image_caption' => '1',
311
  'image_description' => '1',
admin/iaff_image-attributes-from-filename-admin-ui-render.php CHANGED
@@ -3,7 +3,6 @@
3
  * Admin UI setup and render
4
  *
5
  * @since 1.3
6
- * @function iaff_global_switch_callback() Global Switch Callback
7
  * @function iaff_general_settings_callback() General Settings field Callback
8
  * @function iaff_filter_settings_callback() Filter Settings field callback
9
  * @function iaff_basic_seo_settings_callback() Basic SEO Settings Callback
@@ -30,29 +29,6 @@
30
  // Exit if accessed directly
31
  if ( ! defined('ABSPATH') ) exit;
32
 
33
- /**
34
- * Global Switch Callback
35
- *
36
- * @since 1.4
37
- */
38
- function iaff_global_switch_callback() {
39
-
40
- // Get Settings
41
- $settings = iaff_get_settings();
42
- ?>
43
-
44
- <fieldset>
45
-
46
- <label for="iaff_settings[global_switch]">
47
- <input type="checkbox" name="iaff_settings[global_switch]" id="iaff_settings[global_switch]" value="1" <?php if ( isset($settings['global_switch']) ) checked( '1', $settings['global_switch'] ); ?>>
48
- <span><?php _e('Globally enable or disable Auto Image Attributes. Should be checked for the plugin to work.', 'auto-image-attributes-from-filename-with-bulk-updater') ?></span>
49
- </label><br>
50
-
51
- </fieldset>
52
-
53
- <?php
54
- }
55
-
56
  /**
57
  * General Settings field Callback
58
  *
@@ -275,7 +251,7 @@ function iaff_custom_filter_callback() {
275
 
276
  <fieldset>
277
 
278
- <p><?php _e('Enter words or characters to filter separated by commas. Filter is case sensitive.', 'auto-image-attributes-from-filename-with-bulk-updater') ?></p>
279
  <input type="text" name="iaff_settings[custom_filter]" placeholder="DCIM, img" class="all-options" value="<?php if ( isset( $settings['custom_filter'] ) && ( ! empty( $settings['custom_filter'] ) ) ) echo esc_attr( $settings['custom_filter'] ); ?>"/><br><br>
280
 
281
  <p><?php _e('Filter with regular expression', 'auto-image-attributes-from-filename-with-bulk-updater') ?></p>
@@ -657,7 +633,7 @@ function iaff_bu_custom_filter_callback() {
657
 
658
  <fieldset>
659
 
660
- <p><?php _e('Enter words or characters to filter separated by commas. Filter is case sensitive.', 'auto-image-attributes-from-filename-with-bulk-updater') ?></p>
661
  <input type="text" name="iaff_settings[bu_custom_filter]" placeholder="DCIM, img" class="all-options" value="<?php if ( isset( $settings['bu_custom_filter'] ) && ( ! empty( $settings['bu_custom_filter'] ) ) ) echo esc_attr( $settings['bu_custom_filter'] ); ?>"/><br><br>
662
 
663
  <p><?php _e('Filter with regular expression', 'auto-image-attributes-from-filename-with-bulk-updater') ?></p>
@@ -1009,7 +985,7 @@ function iaff_admin_interface_render () {
1009
  <!-- Basic Settings -->
1010
  <div id="iaff-basic" class="iaff-settings-tab">
1011
  <h2 class="showh2"><?php _e('Basic Settings', 'auto-image-attributes-from-filename-with-bulk-updater') ?></h2>
1012
- <p><?php _e('Automatically add Image attributes such as Image Title, Image Caption, Description And Alt Text from Image Filename for new uploads', 'auto-image-attributes-from-filename-with-bulk-updater') ?></p>
1013
  <?php do_settings_sections( 'iaff_basic_settings_section' ); ?>
1014
  <?php submit_button( __('Save Settings', 'auto-image-attributes-from-filename-with-bulk-updater') ); ?>
1015
  </div>
@@ -1061,7 +1037,7 @@ function iaff_admin_interface_render () {
1061
  <p><strong><?php _e('Use <code>Test Bulk Updater</code> button to update one image at a time and verify the results.', 'auto-image-attributes-from-filename-with-bulk-updater') ?></strong></p>
1062
 
1063
  <?php if( ! iaff_is_pro() ) { ?>
1064
- <p><strong><?php printf( __( 'If your image is named <em>a-lot-like_love.jpg</em>, your Image Title, Caption, Description and Alt Text will be: <em>a lot like love</em>. <a href="%s" target="_blank">Upgrade to Pro</a> for more options.', 'auto-image-attributes-from-filename-with-bulk-updater' ), 'https://imageattributespro.com/?utm_source=iaff-basic&utm_medium=bulk-updater-notice' ); ?></strong></p>
1065
  <?php } ?>
1066
 
1067
  </div>
@@ -1177,57 +1153,59 @@ function iaff_admin_interface_render () {
1177
  <div class="iaff-upgrade-header">
1178
  <a href="https://imageattributespro.com/?utm_source=iaff-basic&utm_medium=coupon-sidebar" target="_blank">
1179
  <div class="iaff-icon"></div>
1180
- <h1 class="patua"><?php _e('Upgrade to Pro', 'auto-image-attributes-from-filename-with-bulk-updater'); ?></h1>
1181
  <ul>
1182
- <li><span class="dashicons dashicons-yes"></span><?php _e('Advanced formatting options', 'auto-image-attributes-from-filename-with-bulk-updater'); ?></li>
1183
- <li><span class="dashicons dashicons-yes"></span><?php _e('Use post titles as attributes', 'auto-image-attributes-from-filename-with-bulk-updater'); ?></li>
1184
- <li><span class="dashicons dashicons-yes"></span><?php _e('Fine tune bulk updater settings', 'auto-image-attributes-from-filename-with-bulk-updater'); ?></li>
 
 
1185
  </ul>
 
1186
  </a>
1187
  </div><!-- .iaff-upgrade-header -->
1188
 
1189
  <div class="iaff-upgrade-form">
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1190
 
1191
- <form method="post" action="https://imageattributespro.com/coupons/" target="_blank">
1192
 
1193
- <h1 class="patua"><?php _e('10&percnt; For Lifetime', 'auto-image-attributes-from-filename-with-bulk-updater'); ?></h1>
1194
 
1195
  <?php $user = wp_get_current_user(); ?>
1196
 
1197
- <p><?php _e('Submit your name and email to receive 10&percnt; off when you upgrade to the Lifetime license.', 'auto-image-attributes-from-filename-with-bulk-updater'); ?></p>
1198
 
1199
  <fieldset>
1200
-
1201
- <input type="text" name="first_name" value="<?php echo esc_attr( trim( $user->first_name ) ); ?>" placeholder="<?php _e('First Name', 'auto-image-attributes-from-filename-with-bulk-updater'); ?>"/>
1202
-
1203
  <input type="email" name="email" value="<?php echo esc_attr( $user->user_email ); ?>" placeholder="<?php _e('Your Email', 'auto-image-attributes-from-filename-with-bulk-updater'); ?>"/>
1204
 
1205
  <input type="hidden" name="source" value="IAFF" />
1206
  <input type="hidden" name="submitted" id="submitted" value="true" />
1207
 
1208
- <input type="submit" class="button" value="<?php _e('Send me the coupon', 'auto-image-attributes-from-filename-with-bulk-updater'); ?>"/>
1209
 
1210
  </fieldset>
1211
 
1212
  <p class="opacity-75"><?php _e('Your email will be kept private and will not be shared or spammed.', 'auto-image-attributes-from-filename-with-bulk-updater'); ?></p>
1213
- </form>
1214
-
1215
- <hr>
1216
 
1217
- <div class="iaff-upgrade-review">
1218
- <div class="iaff-upgrade-review-stars">
1219
- <h3>"<?php _e('Fast &amp; Simple Time Saver', 'auto-image-attributes-from-filename-with-bulk-updater'); ?>"</h3>
1220
- <?php echo str_repeat('<span class="dashicons dashicons-star-filled"></span>', 5); ?>
1221
- </div>
1222
- <div class="iaff-upgrade-review-detail">
1223
- <div class="iaff-upgrade-review-detail-left">
1224
- <img class="iaff-upgrade-review-avatar" src="<?php echo IAFF_IMAGE_ATTRIBUTES_FROM_FILENAME_URL . 'admin/img/checkerboardflyer.jpeg'; ?>" />
1225
- </div>
1226
- <div class="iaff-upgrade-review-detail-right">
1227
- <p>"<?php _e('This plugin will save me a LOT of time! Great plugin!', 'auto-image-attributes-from-filename-with-bulk-updater'); ?>" <br><a target="_blank" href="https://wordpress.org/support/topic/fast-simple-time-saver/">@checkerboardflyer</a></p>
1228
- </div>
1229
- </div>
1230
- </div>
1231
  </div><!-- .iaff-upgrade-form -->
1232
  </div><!-- .iaff-admin-options-sidebar -->
1233
  <?php } ?>
3
  * Admin UI setup and render
4
  *
5
  * @since 1.3
 
6
  * @function iaff_general_settings_callback() General Settings field Callback
7
  * @function iaff_filter_settings_callback() Filter Settings field callback
8
  * @function iaff_basic_seo_settings_callback() Basic SEO Settings Callback
29
  // Exit if accessed directly
30
  if ( ! defined('ABSPATH') ) exit;
31
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
32
  /**
33
  * General Settings field Callback
34
  *
251
 
252
  <fieldset>
253
 
254
+ <p><?php printf( __( 'Enter words or characters to filter separated by commas. Filter is case sensitive. <a href="%s" target="_blank">Read more.</a>', 'auto-image-attributes-from-filename-with-bulk-updater' ), 'https://imageattributespro.com/custom-filter-and-regex-filter/?utm_source=iaff-basic&utm_medium=advanced-tab' ); ?></p>
255
  <input type="text" name="iaff_settings[custom_filter]" placeholder="DCIM, img" class="all-options" value="<?php if ( isset( $settings['custom_filter'] ) && ( ! empty( $settings['custom_filter'] ) ) ) echo esc_attr( $settings['custom_filter'] ); ?>"/><br><br>
256
 
257
  <p><?php _e('Filter with regular expression', 'auto-image-attributes-from-filename-with-bulk-updater') ?></p>
633
 
634
  <fieldset>
635
 
636
+ <p><?php printf( __( 'Enter words or characters to filter separated by commas. Filter is case sensitive. <a href="%s" target="_blank">Read more.</a>', 'auto-image-attributes-from-filename-with-bulk-updater' ), 'https://imageattributespro.com/custom-filter-and-regex-filter/?utm_source=iaff-basic&utm_medium=bu-settings-tab' ); ?></p>
637
  <input type="text" name="iaff_settings[bu_custom_filter]" placeholder="DCIM, img" class="all-options" value="<?php if ( isset( $settings['bu_custom_filter'] ) && ( ! empty( $settings['bu_custom_filter'] ) ) ) echo esc_attr( $settings['bu_custom_filter'] ); ?>"/><br><br>
638
 
639
  <p><?php _e('Filter with regular expression', 'auto-image-attributes-from-filename-with-bulk-updater') ?></p>
985
  <!-- Basic Settings -->
986
  <div id="iaff-basic" class="iaff-settings-tab">
987
  <h2 class="showh2"><?php _e('Basic Settings', 'auto-image-attributes-from-filename-with-bulk-updater') ?></h2>
988
+ <p><?php printf( __( 'Automatically add image attributes such as Image Title, Alt Text, Caption and Description from image filename for new uploads. <a href="%s" target="_blank">Take a tour</a>', 'auto-image-attributes-from-filename-with-bulk-updater' ), 'https://imageattributespro.com/demo/?utm_source=iaff-basic&utm_medium=basic-tab' ); ?> 📺</p>
989
  <?php do_settings_sections( 'iaff_basic_settings_section' ); ?>
990
  <?php submit_button( __('Save Settings', 'auto-image-attributes-from-filename-with-bulk-updater') ); ?>
991
  </div>
1037
  <p><strong><?php _e('Use <code>Test Bulk Updater</code> button to update one image at a time and verify the results.', 'auto-image-attributes-from-filename-with-bulk-updater') ?></strong></p>
1038
 
1039
  <?php if( ! iaff_is_pro() ) { ?>
1040
+ <p><strong><?php printf( __( 'The Bulk Updater will update every attribute. If your image is named <em>a-lot-like_love.jpg</em>, your Image Title, Alt Text, Caption and Description will be: <em>a lot like love</em>. <a href="%s" target="_blank">Upgrade to Pro</a> for more options.', 'auto-image-attributes-from-filename-with-bulk-updater' ), 'https://imageattributespro.com/?utm_source=iaff-basic&utm_medium=bulk-updater-notice' ); ?></strong></p>
1041
  <?php } ?>
1042
 
1043
  </div>
1153
  <div class="iaff-upgrade-header">
1154
  <a href="https://imageattributespro.com/?utm_source=iaff-basic&utm_medium=coupon-sidebar" target="_blank">
1155
  <div class="iaff-icon"></div>
1156
+ <h1 class="patua"><?php _e( 'Unlock Traffic', 'auto-image-attributes-from-filename-with-bulk-updater' ); ?></h1>
1157
  <ul>
1158
+ <li><span class="dashicons dashicons-yes"></span><?php _e('Get more traffic from Google Images', 'auto-image-attributes-from-filename-with-bulk-updater'); ?></li>
1159
+ <li><span class="dashicons dashicons-yes"></span><?php _e('Use post / product title as attributes', 'auto-image-attributes-from-filename-with-bulk-updater'); ?></li>
1160
+ <li><span class="dashicons dashicons-yes"></span><?php _e('Preserve existing attributes', 'auto-image-attributes-from-filename-with-bulk-updater'); ?></li>
1161
+ <li><span class="dashicons dashicons-yes"></span><?php _e('Update attributes within posts', 'auto-image-attributes-from-filename-with-bulk-updater'); ?></li>
1162
+ <li><span class="dashicons dashicons-yes"></span><?php _e('Build custom attributes and fine tune settings', 'auto-image-attributes-from-filename-with-bulk-updater'); ?></li>
1163
  </ul>
1164
+ <button class="button" style="width:100%">Upgrade to Pro &rarr; </button>
1165
  </a>
1166
  </div><!-- .iaff-upgrade-header -->
1167
 
1168
  <div class="iaff-upgrade-form">
1169
+
1170
+ <div class="iaff-upgrade-review">
1171
+ <div class="iaff-upgrade-review-stars">
1172
+ <h3>"<?php _e('Fast &amp; Simple Time Saver', 'auto-image-attributes-from-filename-with-bulk-updater'); ?>"</h3>
1173
+ <?php echo str_repeat('<span class="dashicons dashicons-star-filled"></span>', 5); ?>
1174
+ </div>
1175
+ <div class="iaff-upgrade-review-detail">
1176
+ <div class="iaff-upgrade-review-detail-left">
1177
+ <img class="iaff-upgrade-review-avatar" src="<?php echo IAFF_IMAGE_ATTRIBUTES_FROM_FILENAME_URL . 'admin/img/checkerboardflyer.jpeg'; ?>" />
1178
+ </div>
1179
+ <div class="iaff-upgrade-review-detail-right">
1180
+ <p>"<?php _e('This plugin will save me a LOT of time! Great plugin!', 'auto-image-attributes-from-filename-with-bulk-updater'); ?>" <br><a target="_blank" href="https://wordpress.org/support/topic/fast-simple-time-saver/">@checkerboardflyer</a></p>
1181
+ </div>
1182
+ </div>
1183
+ </div>
1184
+
1185
+ <hr style="margin: 20px 0px;">
1186
 
1187
+ <form method="post" action="https://imageattributespro.com/newsletter/" target="_blank">
1188
 
1189
+ <h1 class="patua" style="text-align: center;"><?php _e( 'SEO Newsletter', 'auto-image-attributes-from-filename-with-bulk-updater' ); ?></h1>
1190
 
1191
  <?php $user = wp_get_current_user(); ?>
1192
 
1193
+ <p><?php _e('Stay tuned to the latest image SEO news and receive helpful product updates.', 'auto-image-attributes-from-filename-with-bulk-updater'); ?></p>
1194
 
1195
  <fieldset>
1196
+
 
 
1197
  <input type="email" name="email" value="<?php echo esc_attr( $user->user_email ); ?>" placeholder="<?php _e('Your Email', 'auto-image-attributes-from-filename-with-bulk-updater'); ?>"/>
1198
 
1199
  <input type="hidden" name="source" value="IAFF" />
1200
  <input type="hidden" name="submitted" id="submitted" value="true" />
1201
 
1202
+ <input type="submit" class="button-primary" style="margin-top:5px;" value="<?php _e( 'Subscribe', 'auto-image-attributes-from-filename-with-bulk-updater' ); ?>"/>
1203
 
1204
  </fieldset>
1205
 
1206
  <p class="opacity-75"><?php _e('Your email will be kept private and will not be shared or spammed.', 'auto-image-attributes-from-filename-with-bulk-updater'); ?></p>
1207
+ </form>
 
 
1208
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1209
  </div><!-- .iaff-upgrade-form -->
1210
  </div><!-- .iaff-admin-options-sidebar -->
1211
  <?php } ?>
admin/iaff_image-attributes-from-filename-basic-setup.php CHANGED
@@ -99,14 +99,7 @@ function iaff_admin_notices() {
99
  // Upgrade complete notice
100
  if ( get_transient( 'iaff_upgrade_complete_admin_notice' ) ) {
101
 
102
- $iaff_suggest_pro = '';
103
-
104
- // Suggest IAFF Pro if Pro add-on isn't installed.
105
- if ( ! iaff_is_pro() ) {
106
- $iaff_suggest_pro = sprintf( __( '<br>Want to use Post Titles for image attributes? Check out the <a href="%s" target="_blank">Image Attributes Pro</a> add-on.', 'auto-image-attributes-from-filename-with-bulk-updater' ), 'https://imageattributespro.com/?utm_source=iaff-basic&utm_medium=upgrade-complete-admin-notice' );
107
- }
108
-
109
- echo '<div class="notice notice-success is-dismissible"><p>' . __( '<strong>Auto Image Attributes From Filename With Bulk Updater</strong> successfully updated. ', 'auto-image-attributes-from-filename-with-bulk-updater' ) . $iaff_suggest_pro . '</p></div>';
110
 
111
  // Delete transient
112
  delete_transient( 'iaff_upgrade_complete_admin_notice' );
99
  // Upgrade complete notice
100
  if ( get_transient( 'iaff_upgrade_complete_admin_notice' ) ) {
101
 
102
+ echo '<div class="notice notice-success is-dismissible"><p>' . __( '<strong>Auto Image Attributes From Filename With Bulk Updater</strong> successfully updated. ', 'auto-image-attributes-from-filename-with-bulk-updater' ) . sprintf( __( '<br>Stay tuned to the latest image SEO news and receive helpful product updates. Subscribe to the <a href="%s" target="_blank">Image SEO Newsletter &rarr;</a>', 'auto-image-attributes-from-filename-with-bulk-updater' ), 'https://imageattributespro.com/newsletter/?utm_source=iaff-basic&utm_medium=upgrade-complete-admin-notice' ) . '</p></div>';
 
 
 
 
 
 
 
103
 
104
  // Delete transient
105
  delete_transient( 'iaff_upgrade_complete_admin_notice' );
admin/iaff_image-attributes-from-filename-do.php CHANGED
@@ -36,10 +36,6 @@ function iaff_auto_image_attributes( $post_id ) {
36
  // Return if attachment is not an image
37
  if( ! wp_attachment_is_image($post_id) )
38
  return;
39
-
40
- // Return if Global switch is turned off
41
- if ( ! ( isset( $settings['global_switch'] ) && boolval($settings['global_switch']) ) )
42
- return;
43
 
44
  // Retrieve image object from its ID
45
  $image = get_post( $post_id );
36
  // Return if attachment is not an image
37
  if( ! wp_attachment_is_image($post_id) )
38
  return;
 
 
 
 
39
 
40
  // Retrieve image object from its ID
41
  $image = get_post( $post_id );
iaff_image-attributes-from-filename.php CHANGED
@@ -5,7 +5,7 @@
5
  * Description: Automatically Add Image Title, Image Caption, Description And Alt Text From Image Filename. Since this plugin includes a bulk updater this can update both existing images in the Media Library and new images.
6
  * Author: Arun Basil Lal
7
  * Author URI: https://imageattributespro.com/?utm_source=plugin-header&utm_medium=author-uri
8
- * Version: 2.1
9
  * Text Domain: auto-image-attributes-from-filename-with-bulk-updater
10
  * Domain Path: /languages
11
  * License: GPL v2 - http://www.gnu.org/licenses/old-licenses/gpl-2.0.html
@@ -67,7 +67,7 @@ if ( ! defined( 'IAFF_IMAGE_ATTRIBUTES_FROM_FILENAME_URL' ) ) {
67
  * @since 1.3
68
  */
69
  if ( ! defined( 'IAFF_VERSION_NUM' ) ) {
70
- define( 'IAFF_VERSION_NUM', '2.1' );
71
  }
72
 
73
  /**
@@ -104,21 +104,6 @@ function iaff_upgrader() {
104
  }
105
  }
106
 
107
- /**
108
- * Upgrade database settings when upgrading from 1.3 or lower
109
- * A global swith with setting name global_switch was introduce in 1.4
110
- */
111
- if ( version_compare( $current_ver, '1.3', '<=' ) ) {
112
-
113
- $settings = get_option( 'iaff_settings' );
114
-
115
- if ( $settings !== false ) {
116
-
117
- $settings['global_switch'] = 1; // Global switch was introduced in ver 1.4
118
- update_option('iaff_settings', $settings);
119
- }
120
- }
121
-
122
  /**
123
  * Detect first install.
124
  *
5
  * Description: Automatically Add Image Title, Image Caption, Description And Alt Text From Image Filename. Since this plugin includes a bulk updater this can update both existing images in the Media Library and new images.
6
  * Author: Arun Basil Lal
7
  * Author URI: https://imageattributespro.com/?utm_source=plugin-header&utm_medium=author-uri
8
+ * Version: 3.0
9
  * Text Domain: auto-image-attributes-from-filename-with-bulk-updater
10
  * Domain Path: /languages
11
  * License: GPL v2 - http://www.gnu.org/licenses/old-licenses/gpl-2.0.html
67
  * @since 1.3
68
  */
69
  if ( ! defined( 'IAFF_VERSION_NUM' ) ) {
70
+ define( 'IAFF_VERSION_NUM', '3.0' );
71
  }
72
 
73
  /**
104
  }
105
  }
106
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
107
  /**
108
  * Detect first install.
109
  *
readme.txt CHANGED
@@ -1,14 +1,14 @@
1
- === Auto Image Attributes From Filename With Bulk Updater ===
2
  Contributors: arunbasillal
3
  Donate link: https://imageattributespro.com/?utm_source=wordpress.org&utm_medium=donate-link
4
  Tags: image title, image caption, image description, alt text, bulk edit images, bulk rename images, auto image attributes, auto image alt text, remove underscores, image seo
5
  Requires at least: 3.5.0
6
- Tested up to: 5.7.2
7
  Stable tag: trunk
8
  License: GPLv2 or later
9
  License URI: http://www.gnu.org/licenses/gpl-2.0.html
10
 
11
- Automatically Add Image Title, Caption, Description And Alt Text From Filename. Includes a bulk updater to update existing images in the Media Library
12
 
13
  == Description ==
14
 
@@ -16,12 +16,14 @@ Automatically add Image attributes such as Image Title, Image Caption, Descripti
16
 
17
  The plugin can update image attributes for both new images and existing images in the media library.
18
 
 
 
 
 
19
  > **Life-Saver**
20
  > It allowed me to save tons of time. Further, the support is nice and ready to help.
21
  > - [thnk4](https://wordpress.org/support/topic/life-saver-188/)
22
 
23
- Image alt text and title is critical for your image SEO and will help users discover your images (and there by your website) in Google / Yahoo / Bing image search.
24
-
25
  Proper alt text also helps people who are blind or who have low vision understand your images there by improving the accessibility of your website. This will open up your website to a new segment of visitors and increase your traffic.
26
 
27
  > **Wow!**
@@ -53,7 +55,7 @@ The plugin settings and bulk updater are in WordPress Admin > Settings > Image A
53
 
54
  Please remember to take a database backup before running the bulk updater. The bulk updater updates ALL attributes for existing images in the Media Library and ignores the settings set for NEW uploads.
55
 
56
- **Image Attributes Pro**
57
 
58
  A pro add-on is now available for the plugin. Check out [Image Attributes Pro](https://imageattributespro.com/?utm_source=wordpress.org&utm_medium=readme).
59
 
@@ -63,13 +65,13 @@ The pro add-on can update the image attributes from not just the image filename,
63
  > Rest assured I will give great feedback on your plugin anywhere I can!!
64
  > - **James Barber**, for [Image Attributes Pro](https://imageattributespro.com/?utm_source=wordpress.org&utm_medium=readme) via email.
65
 
66
- What the pro add-on you get these additional features:
67
 
68
  * Use post title as title text. If image is not attached to a post, image filename will be used instead.
69
  * Use post title as alt text. If image is not attached to a post, image filename will be used instead.
70
  * Use post title as caption. If image is not attached to a post, image filename will be used instead.
71
  * Use post title as description. If image is not attached to a post, image filename will be used instead.
72
- * Build your own attributes using custom tags like `%filename%`,`%posttitle%`,`%sitetitle%`,`%yoastfocuskw%`,`%rankmathfocuskw%`. Each custom tag will be replaced with it's value. You can combine them as you please!
73
  * Use Yoast Focus Keyword and Rank Math Focus Keyword as image attributes.
74
  * Clear any image attribute by setting it as blank / empty.
75
  * Exclude images from Bulk Updater. A meta box and a checkbox is added to the `Media Library` > `Edit Media` sidebar. When checked, the bulk updater will not update the attributes of that image in the media library or in posts / products where the image is used.
@@ -90,7 +92,7 @@ What the pro add-on you get these additional features:
90
  * Clean the actual image filename after upload.
91
  * Choose to turn off any of the above mentioned features.
92
 
93
- With the pro bulk updater you can:
94
 
95
  * Update image title and alt text **for images inserted into posts and custom post types**. Not just the media library. [What is the difference?](https://imageattributespro.com/how-wordpress-store-image-attributes/?utm_source=wordpress.org&utm_medium=readme)
96
  * Fine tune all settings. Choose what to update.
@@ -98,7 +100,7 @@ With the pro bulk updater you can:
98
  * Update image titles / alt text in media library and existing posts.
99
  * Update image titles / alt text in media library and existing posts only if no title / alt text is set. Existing image titles / alt text will not be changed.
100
  * Update image caption and description in the media library. Existing image captions and descriptions can be preserved.
101
- * Build your own attributes using custom tags like `%filename%`,`%posttitle%`,`%sitetitle%`,`%yoastfocuskw%`,`%rankmathfocuskw%`. Each custom tag will be replaced with it's value. You can combine them as you please!
102
  * Choose to turn off any of the above mentioned features.
103
  * Modify auto generated image attributes using the [iaffpro_image_attributes filter](https://imageattributespro.com/codex/iaffpro_image_attributes/?utm_source=wordpress.org&utm_medium=readme).
104
  * Choose specific post types to bulk update using the [iaffpro_included_post_types filter](https://imageattributespro.com/codex/iaffpro_included_post_types/?utm_source=wordpress.org&utm_medium=readme).
@@ -142,6 +144,13 @@ I am glad to hear that! You can either [upgrade to pro](https://imageattributesp
142
 
143
  == Changelog ==
144
 
 
 
 
 
 
 
 
145
  = 2.1 =
146
  * Date: 02.July.2021
147
  * Enhancement: Compatibility with Image Attributes Pro v2.0.
@@ -207,6 +216,13 @@ I am glad to hear that! You can either [upgrade to pro](https://imageattributesp
207
 
208
  == Upgrade Notice ==
209
 
 
 
 
 
 
 
 
210
  = 2.1 =
211
  * Date: 02.July.2021
212
  * Enhancement: Compatibility with Image Attributes Pro v2.0.
1
+ === Auto Image Attributes From Filename With Bulk Updater (Add Alt Text, Image Title For Image SEO) ===
2
  Contributors: arunbasillal
3
  Donate link: https://imageattributespro.com/?utm_source=wordpress.org&utm_medium=donate-link
4
  Tags: image title, image caption, image description, alt text, bulk edit images, bulk rename images, auto image attributes, auto image alt text, remove underscores, image seo
5
  Requires at least: 3.5.0
6
+ Tested up to: 5.8.3
7
  Stable tag: trunk
8
  License: GPLv2 or later
9
  License URI: http://www.gnu.org/licenses/gpl-2.0.html
10
 
11
+ Automatically Add Image Title, Caption, Description And Alt Text From Filename. Includes a bulk updater to update existing images in the Media Library. Great for Image SEO.
12
 
13
  == Description ==
14
 
16
 
17
  The plugin can update image attributes for both new images and existing images in the media library.
18
 
19
+ https://www.youtube.com/watch?v=V5SOU4okOfU
20
+
21
+ Image alt text and title is critical for your image SEO and will help users discover your images (and there by your website) in Google / Yahoo / Bing image search.
22
+
23
  > **Life-Saver**
24
  > It allowed me to save tons of time. Further, the support is nice and ready to help.
25
  > - [thnk4](https://wordpress.org/support/topic/life-saver-188/)
26
 
 
 
27
  Proper alt text also helps people who are blind or who have low vision understand your images there by improving the accessibility of your website. This will open up your website to a new segment of visitors and increase your traffic.
28
 
29
  > **Wow!**
55
 
56
  Please remember to take a database backup before running the bulk updater. The bulk updater updates ALL attributes for existing images in the Media Library and ignores the settings set for NEW uploads.
57
 
58
+ ## Image Attributes Pro
59
 
60
  A pro add-on is now available for the plugin. Check out [Image Attributes Pro](https://imageattributespro.com/?utm_source=wordpress.org&utm_medium=readme).
61
 
65
  > Rest assured I will give great feedback on your plugin anywhere I can!!
66
  > - **James Barber**, for [Image Attributes Pro](https://imageattributespro.com/?utm_source=wordpress.org&utm_medium=readme) via email.
67
 
68
+ **What the pro add-on you get these additional features:**
69
 
70
  * Use post title as title text. If image is not attached to a post, image filename will be used instead.
71
  * Use post title as alt text. If image is not attached to a post, image filename will be used instead.
72
  * Use post title as caption. If image is not attached to a post, image filename will be used instead.
73
  * Use post title as description. If image is not attached to a post, image filename will be used instead.
74
+ * Build your own attributes using custom tags like `%filename%`, `%posttitle%`, `%sitetitle%`, `%yoastfocuskw%`, `%rankmathfocuskw%`. Each custom tag will be replaced with it's value. You can combine them as you please!
75
  * Use Yoast Focus Keyword and Rank Math Focus Keyword as image attributes.
76
  * Clear any image attribute by setting it as blank / empty.
77
  * Exclude images from Bulk Updater. A meta box and a checkbox is added to the `Media Library` > `Edit Media` sidebar. When checked, the bulk updater will not update the attributes of that image in the media library or in posts / products where the image is used.
92
  * Clean the actual image filename after upload.
93
  * Choose to turn off any of the above mentioned features.
94
 
95
+ **With the pro bulk updater you can:**
96
 
97
  * Update image title and alt text **for images inserted into posts and custom post types**. Not just the media library. [What is the difference?](https://imageattributespro.com/how-wordpress-store-image-attributes/?utm_source=wordpress.org&utm_medium=readme)
98
  * Fine tune all settings. Choose what to update.
100
  * Update image titles / alt text in media library and existing posts.
101
  * Update image titles / alt text in media library and existing posts only if no title / alt text is set. Existing image titles / alt text will not be changed.
102
  * Update image caption and description in the media library. Existing image captions and descriptions can be preserved.
103
+ * Build your own attributes using custom tags like `%filename%`, `%posttitle%`, `%sitetitle%`, `%yoastfocuskw%`, `%rankmathfocuskw%`. Each custom tag will be replaced with it's value. You can combine them as you please!
104
  * Choose to turn off any of the above mentioned features.
105
  * Modify auto generated image attributes using the [iaffpro_image_attributes filter](https://imageattributespro.com/codex/iaffpro_image_attributes/?utm_source=wordpress.org&utm_medium=readme).
106
  * Choose specific post types to bulk update using the [iaffpro_included_post_types filter](https://imageattributespro.com/codex/iaffpro_included_post_types/?utm_source=wordpress.org&utm_medium=readme).
144
 
145
  == Changelog ==
146
 
147
+ = 3.0 =
148
+ * Date: 19.January.2022
149
+ * Tested with WordPress 5.8.3.
150
+ * Enhancement: Removed "Global Switch" option as part of cleaning up the user interface. This option was redundant and the same can be accomplished either by deactivating the plugin or by disabling every option in "General Settings". Please take a note of this change if you have disabled "Global Switch" on your website.
151
+ * UI Enhancement: Added description text to clarity settings to improve usability.
152
+ * UI Enhancement: Added [demo video link](https://imageattributespro.com/demo/?utm_source=wordpress.org&utm_medium=changelog) in plugin settings page.
153
+
154
  = 2.1 =
155
  * Date: 02.July.2021
156
  * Enhancement: Compatibility with Image Attributes Pro v2.0.
216
 
217
  == Upgrade Notice ==
218
 
219
+ = 3.0 =
220
+ * Date: 19.January.2022
221
+ * Tested with WordPress 5.8.3.
222
+ * Enhancement: Removed "Global Switch" option as part of cleaning up the user interface. This option was redundant and the same can be accomplished either by deactivating the plugin or by disabling every option in "General Settings". Please take a note of this change if you have disabled "Global Switch" on your website.
223
+ * UI Enhancement: Added description text to clarity settings to improve usability.
224
+ * UI Enhancement: Added [demo video link](https://imageattributespro.com/demo/?utm_source=wordpress.org&utm_medium=changelog) in plugin settings page.
225
+
226
  = 2.1 =
227
  * Date: 02.July.2021
228
  * Enhancement: Compatibility with Image Attributes Pro v2.0.