Changeset 3463903
- Timestamp:
- 02/18/2026 12:07:25 AM (6 weeks ago)
- Location:
- image-copyright-manager
- Files:
-
- 2 added
- 10 edited
- 1 copied
-
tags/1.4.0 (copied) (copied from image-copyright-manager/trunk)
-
tags/1.4.0/CHANGELOG.txt (modified) (1 diff)
-
tags/1.4.0/image-copyright-manager.php (modified) (2 diffs)
-
tags/1.4.0/includes/class-imagcoma-core.php (modified) (2 diffs)
-
tags/1.4.0/includes/class-imagcoma-metadata-extractor.php (added)
-
tags/1.4.0/includes/class-imagcoma-settings.php (modified) (3 diffs)
-
tags/1.4.0/readme.txt (modified) (6 diffs)
-
trunk/CHANGELOG.txt (modified) (1 diff)
-
trunk/image-copyright-manager.php (modified) (2 diffs)
-
trunk/includes/class-imagcoma-core.php (modified) (2 diffs)
-
trunk/includes/class-imagcoma-metadata-extractor.php (added)
-
trunk/includes/class-imagcoma-settings.php (modified) (3 diffs)
-
trunk/readme.txt (modified) (6 diffs)
Legend:
- Unmodified
- Added
- Removed
-
image-copyright-manager/tags/1.4.0/CHANGELOG.txt
r3461380 r3463903 4 4 The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/), 5 5 and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html). 6 7 ## [1.4.0] - 2026-02-18 8 ### Added 9 - Added automatic metadata extraction (EXIF, IPTC, XMP) on image upload. 10 - Added support for Lightroom metadata mapping (dc:rights, creator, etc.). 11 - Added "Auto-Extract Metadata" toggle in settings. 12 13 ### Improved 14 - Performance-optimized metadata reading using bounded file access (max 2MB). 15 - Better sanitization and request-scoped deduplication for metadata processing to avoid redundant operations. 16 - Enhanced reliability of IPTC data parsing by using standard 2#116 tags. 6 17 7 18 ## [1.3.1] - 2026-02-14 -
image-copyright-manager/tags/1.4.0/image-copyright-manager.php
r3461380 r3463903 4 4 * Plugin URI: https://mahelwebdesign.com/image-copyright-manager/ 5 5 * Description: Adds a custom field for copyright information to WordPress media. 6 * Version: 1. 3.16 * Version: 1.4.0 7 7 * Requires at least: 6.4 8 8 * Requires PHP: 7.4 … … 37 37 require_once IMAGCOMA_PLUGIN_DIR . 'includes/class-imagcoma-display.php'; 38 38 require_once IMAGCOMA_PLUGIN_DIR . 'includes/class-imagcoma-admin-columns.php'; 39 require_once IMAGCOMA_PLUGIN_DIR . 'includes/class-imagcoma-metadata-extractor.php'; 39 40 40 41 /** -
image-copyright-manager/tags/1.4.0/includes/class-imagcoma-core.php
r3461380 r3463903 12 12 class IMAGCOMA_Core { 13 13 14 const VERSION = '1. 3.1';14 const VERSION = '1.4.0'; 15 15 16 16 const TEXT_DOMAIN = 'image-copyright-manager'; … … 51 51 new IMAGCOMA_Display(); 52 52 new IMAGCOMA_Admin_Columns(); 53 new IMAGCOMA_Metadata_Extractor(); 53 54 } 54 55 55 56 /** 56 * Returns the default plugin settings. 57 * Get the plugin's default settings. 58 * 59 * The defaults include: 60 * - 'display_text': translated string 'Copyright: {copyright}' 61 * - 'enable_css': 1 62 * - 'enable_json_ld': 1 63 * - 'enable_auto_extract': 1 57 64 * 58 65 * @since 1.3.1 59 * @return array Default settings.66 * @return array Associative array of default plugin settings keyed by setting name. 60 67 */ 61 68 public static function get_default_settings() { 62 69 return array( 63 'display_text' => __( 'Copyright: {copyright}', 'image-copyright-manager' ), 64 'enable_css' => 1, 65 'enable_json_ld' => 1 70 'display_text' => __( 'Copyright: {copyright}', 'image-copyright-manager' ), 71 'enable_css' => 1, 72 'enable_json_ld' => 1, 73 'enable_auto_extract' => 1 66 74 ); 67 75 } -
image-copyright-manager/tags/1.4.0/includes/class-imagcoma-settings.php
r3461380 r3463903 69 69 __( 'Enable JSON-LD SEO', 'image-copyright-manager' ), 70 70 array( $this, 'render_enable_json_ld_field' ), 71 'image-copyright-manager', 72 'imagcoma_general_section' 73 ); 74 75 add_settings_field( 76 'enable_auto_extract', 77 __( 'Auto-Extract Metadata', 'image-copyright-manager' ), 78 array( $this, 'render_enable_auto_extract_field' ), 71 79 'image-copyright-manager', 72 80 'imagcoma_general_section' … … 168 176 <?php 169 177 } 170 171 /** 172 * Sanitizes settings input before saving to the database.178 179 /** 180 * Renders the checkbox field for the "enable_auto_extract" setting. 173 181 * 174 * @param array $input Raw settings input. 175 * @return array Sanitized settings. 182 * Displays a checkbox that toggles automatic extraction of copyright metadata 183 * from EXIF, IPTC, and XMP on image upload. When enabled, the plugin will read 184 * copyright data produced by tools like Lightroom; existing manual metadata 185 * entries will not be overwritten. 186 */ 187 public function render_enable_auto_extract_field() { 188 $settings = IMAGCOMA_Core::get_settings(); 189 ?> 190 <label for="imagcoma_settings[enable_auto_extract]"> 191 <input 192 type="checkbox" 193 name="imagcoma_settings[enable_auto_extract]" 194 id="imagcoma_settings[enable_auto_extract]" 195 value="1" 196 <?php checked( $settings['enable_auto_extract'], 1 ); ?> 197 /> 198 <?php esc_html_e( 'Automatically extract copyright information from EXIF/IPTC/XMP metadata on upload.', 'image-copyright-manager' ); ?> 199 </label> 200 <p class="description"> 201 <?php esc_html_e( 'When enabled, the plugin will automatically read copyright data from Lightroom and other photo editing software. Existing manual entries will not be overwritten.', 'image-copyright-manager' ); ?> 202 </p> 203 <?php 204 } 205 206 /** 207 * Sanitizes and normalizes plugin settings prior to persistence. 208 * 209 * Sanitizes the display text and converts checkbox-like options to explicit integers. 210 * 211 * @param array $input Raw settings array from the settings form. 212 * @return array Sanitized settings with keys: 213 * - 'display_text' (string) if provided, 214 * - 'enable_css' (int) 1 or 0, 215 * - 'enable_json_ld' (int) 1 or 0, 216 * - 'enable_auto_extract' (int) 1 or 0. 176 217 */ 177 218 public function sanitize_settings( $input ) { … … 194 235 } 195 236 237 if ( isset( $input['enable_auto_extract'] ) ) { 238 $sanitized['enable_auto_extract'] = 1; 239 } else { 240 $sanitized['enable_auto_extract'] = 0; 241 } 242 196 243 return $sanitized; 197 244 } -
image-copyright-manager/tags/1.4.0/readme.txt
r3461380 r3463903 5 5 Tested up to: 6.9 6 6 Requires PHP: 7.4 7 Stable tag: 1. 3.17 Stable tag: 1.4.0 8 8 License: GPLv2 or later 9 9 License URI: https://www.gnu.org/licenses/gpl-2.0.html … … 18 18 19 19 * Add copyright information to any media file in WordPress 20 * Automatic Metadata Extraction (EXIF, IPTC, XMP) from Lightroom and other software 20 21 * Complete Google Image SEO support (Creator, Copyright Notice, Credit Text, License URL, Acquire License URL) 21 22 * Automatic JSON-LD Schema.org output for Google Image SEO license badge … … 52 53 == Installation == 53 54 54 1. Upload the plugin files to the `/wp-content/plugins/ wp-image-copyright` directory, or install the plugin through the WordPress plugins screen directly.55 1. Upload the plugin files to the `/wp-content/plugins/image-copyright-manager` directory, or install the plugin through the WordPress plugins screen directly. 55 56 2. Activate the plugin through the 'Plugins' screen in WordPress 56 57 3. Use the Settings->Screen to configure the plugin … … 82 83 Yes, the plugin is fully translation ready and includes a POT file for creating translations. 83 84 85 = Does it support Lightroom metadata? = 86 87 Yes! Version 1.4.0 introduces automatic metadata extraction. When you upload an image exported from Lightroom (or other software preserving EXIF/IPTC/XMP), the plugin will automatically read copyright, creator, and credit fields. You can enable or disable this feature in the settings (Settings -> Image Copyright). 88 84 89 == Screenshots == 85 90 … … 89 94 == Upgrade Notice == 90 95 96 = 1.4.0 = 97 New Feature: Automatic metadata extraction from Lightroom and other photo software. Now you can save time by letting the plugin read your EXIF/IPTC/XMP data on upload! 98 91 99 = 1.3.1 = 92 100 This is a security release that addresses a potential XSS vulnerability in the JSON-LD output. All users are strongly encouraged to update immediately. 93 101 102 = 1.2.1 = 103 Fixed build process to exclude development files. 104 105 = 1.2.0 = 106 Major update: Moved copyright field to Media Modal, improved performance, and robustness. 107 108 = 1.1.3 = 109 This update adds a CSS toggle setting and improves user control over plugin styling behavior. 110 111 = 1.1.2 = 112 This update includes bug fixes and minor improvements. The translation template has been updated for better internationalization support. 113 114 = 1.1.1 = 115 This update includes bug fixes and minor improvements. The translation template has been updated for better internationalization support. 116 117 = 1.1.0 = 118 This update migrates copyright information to a custom database table for much better performance and scalability. All old taxonomy code has been removed. Please back up your database before upgrading. 119 120 = 1.0.6 = 121 This update addresses WordPress Plugin Directory submission requirements and resolves ownership verification issues. The plugin now includes all required headers and follows WordPress coding standards for directory submission. 122 123 = 1.0.5 = 124 This update enhances the shortcode with new customization options. The default heading is now "Image Sources" and you can customize all text elements using new parameters like heading, heading_tag, no_sources_text, copyright_label, and view_media_text. 125 126 = 1.0.4 = 127 This update fixes translation file naming to follow WordPress standards, ensuring proper translation loading across all locales. 128 129 = 1.0.3 = 130 This update adds German translation support and fixes translation loading issues. The plugin now automatically updates stored settings when the language changes and includes a manual refresh option in the settings page. 131 132 = 1.0.2 = 133 This update adds a new per-image copyright display feature with global settings. Users can now choose to display copyright text under individual images and customize the display format globally through Settings > Image Copyright. 134 135 = 1.0.1 = 136 This update includes important text domain fixes and function prefix changes. The shortcode has been updated from [wpimc] to [icm]. Please update any existing shortcodes in your content. 137 138 = 1.0.0 = 139 Initial release of Image Copyright Manager plugin. 140 141 94 142 == Changelog == 143 144 = 1.4.0 = 145 * Added: Automatic metadata extraction (EXIF, IPTC, XMP) on image upload. 146 * Added: Support for Lightroom metadata mapping (dc:rights, creator, etc.). 147 * Added: "Auto-Extract Metadata" toggle in settings. 148 * Improved: Performance-optimized metadata reading using bounded file access. 149 * Improved: Better sanitization and request-scoped deduplication for metadata processing. 95 150 96 151 = 1.3.1 = … … 131 186 Please refer to the CHANGELOG.txt file for the complete changelog. 132 187 133 == Upgrade Notice == 134 135 = 1.2.1 = 136 Fixed build process to exclude development files. 137 138 = 1.2.0 = 139 Major update: Moved copyright field to Media Modal, improved performance, and robustness. 140 141 = 1.1.3 = 142 This update adds a CSS toggle setting and improves user control over plugin styling behavior. 143 144 = 1.1.2 = 145 This update includes bug fixes and minor improvements. The translation template has been updated for better internationalization support. 146 147 = 1.1.1 = 148 This update includes bug fixes and minor improvements. The translation template has been updated for better internationalization support. 149 150 = 1.1.0 = 151 This update migrates copyright information to a custom database table for much better performance and scalability. All old taxonomy code has been removed. Please back up your database before upgrading. 152 153 = 1.0.6 = 154 This update addresses WordPress Plugin Directory submission requirements and resolves ownership verification issues. The plugin now includes all required headers and follows WordPress coding standards for directory submission. 155 156 = 1.0.5 = 157 This update enhances the shortcode with new customization options. The default heading is now "Image Sources" and you can customize all text elements using new parameters like heading, heading_tag, no_sources_text, copyright_label, and view_media_text. 158 159 = 1.0.4 = 160 This update fixes translation file naming to follow WordPress standards, ensuring proper translation loading across all locales. 161 162 = 1.0.3 = 163 This update adds German translation support and fixes translation loading issues. The plugin now automatically updates stored settings when the language changes and includes a manual refresh option in the settings page. 164 165 = 1.0.2 = 166 This update adds a new per-image copyright display feature with global settings. Users can now choose to display copyright text under individual images and customize the display format globally through Settings > Image Copyright. 167 168 = 1.0.1 = 169 This update includes important text domain fixes and function prefix changes. The shortcode has been updated from [wpimc] to [icm]. Please update any existing shortcodes in your content. 170 171 = 1.0.0 = 172 Initial release of Image Copyright Manager plugin. 188 -
image-copyright-manager/trunk/CHANGELOG.txt
r3461380 r3463903 4 4 The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/), 5 5 and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html). 6 7 ## [1.4.0] - 2026-02-18 8 ### Added 9 - Added automatic metadata extraction (EXIF, IPTC, XMP) on image upload. 10 - Added support for Lightroom metadata mapping (dc:rights, creator, etc.). 11 - Added "Auto-Extract Metadata" toggle in settings. 12 13 ### Improved 14 - Performance-optimized metadata reading using bounded file access (max 2MB). 15 - Better sanitization and request-scoped deduplication for metadata processing to avoid redundant operations. 16 - Enhanced reliability of IPTC data parsing by using standard 2#116 tags. 6 17 7 18 ## [1.3.1] - 2026-02-14 -
image-copyright-manager/trunk/image-copyright-manager.php
r3461380 r3463903 4 4 * Plugin URI: https://mahelwebdesign.com/image-copyright-manager/ 5 5 * Description: Adds a custom field for copyright information to WordPress media. 6 * Version: 1. 3.16 * Version: 1.4.0 7 7 * Requires at least: 6.4 8 8 * Requires PHP: 7.4 … … 37 37 require_once IMAGCOMA_PLUGIN_DIR . 'includes/class-imagcoma-display.php'; 38 38 require_once IMAGCOMA_PLUGIN_DIR . 'includes/class-imagcoma-admin-columns.php'; 39 require_once IMAGCOMA_PLUGIN_DIR . 'includes/class-imagcoma-metadata-extractor.php'; 39 40 40 41 /** -
image-copyright-manager/trunk/includes/class-imagcoma-core.php
r3461380 r3463903 12 12 class IMAGCOMA_Core { 13 13 14 const VERSION = '1. 3.1';14 const VERSION = '1.4.0'; 15 15 16 16 const TEXT_DOMAIN = 'image-copyright-manager'; … … 51 51 new IMAGCOMA_Display(); 52 52 new IMAGCOMA_Admin_Columns(); 53 new IMAGCOMA_Metadata_Extractor(); 53 54 } 54 55 55 56 /** 56 * Returns the default plugin settings. 57 * Get the plugin's default settings. 58 * 59 * The defaults include: 60 * - 'display_text': translated string 'Copyright: {copyright}' 61 * - 'enable_css': 1 62 * - 'enable_json_ld': 1 63 * - 'enable_auto_extract': 1 57 64 * 58 65 * @since 1.3.1 59 * @return array Default settings.66 * @return array Associative array of default plugin settings keyed by setting name. 60 67 */ 61 68 public static function get_default_settings() { 62 69 return array( 63 'display_text' => __( 'Copyright: {copyright}', 'image-copyright-manager' ), 64 'enable_css' => 1, 65 'enable_json_ld' => 1 70 'display_text' => __( 'Copyright: {copyright}', 'image-copyright-manager' ), 71 'enable_css' => 1, 72 'enable_json_ld' => 1, 73 'enable_auto_extract' => 1 66 74 ); 67 75 } -
image-copyright-manager/trunk/includes/class-imagcoma-settings.php
r3461380 r3463903 69 69 __( 'Enable JSON-LD SEO', 'image-copyright-manager' ), 70 70 array( $this, 'render_enable_json_ld_field' ), 71 'image-copyright-manager', 72 'imagcoma_general_section' 73 ); 74 75 add_settings_field( 76 'enable_auto_extract', 77 __( 'Auto-Extract Metadata', 'image-copyright-manager' ), 78 array( $this, 'render_enable_auto_extract_field' ), 71 79 'image-copyright-manager', 72 80 'imagcoma_general_section' … … 168 176 <?php 169 177 } 170 171 /** 172 * Sanitizes settings input before saving to the database.178 179 /** 180 * Renders the checkbox field for the "enable_auto_extract" setting. 173 181 * 174 * @param array $input Raw settings input. 175 * @return array Sanitized settings. 182 * Displays a checkbox that toggles automatic extraction of copyright metadata 183 * from EXIF, IPTC, and XMP on image upload. When enabled, the plugin will read 184 * copyright data produced by tools like Lightroom; existing manual metadata 185 * entries will not be overwritten. 186 */ 187 public function render_enable_auto_extract_field() { 188 $settings = IMAGCOMA_Core::get_settings(); 189 ?> 190 <label for="imagcoma_settings[enable_auto_extract]"> 191 <input 192 type="checkbox" 193 name="imagcoma_settings[enable_auto_extract]" 194 id="imagcoma_settings[enable_auto_extract]" 195 value="1" 196 <?php checked( $settings['enable_auto_extract'], 1 ); ?> 197 /> 198 <?php esc_html_e( 'Automatically extract copyright information from EXIF/IPTC/XMP metadata on upload.', 'image-copyright-manager' ); ?> 199 </label> 200 <p class="description"> 201 <?php esc_html_e( 'When enabled, the plugin will automatically read copyright data from Lightroom and other photo editing software. Existing manual entries will not be overwritten.', 'image-copyright-manager' ); ?> 202 </p> 203 <?php 204 } 205 206 /** 207 * Sanitizes and normalizes plugin settings prior to persistence. 208 * 209 * Sanitizes the display text and converts checkbox-like options to explicit integers. 210 * 211 * @param array $input Raw settings array from the settings form. 212 * @return array Sanitized settings with keys: 213 * - 'display_text' (string) if provided, 214 * - 'enable_css' (int) 1 or 0, 215 * - 'enable_json_ld' (int) 1 or 0, 216 * - 'enable_auto_extract' (int) 1 or 0. 176 217 */ 177 218 public function sanitize_settings( $input ) { … … 194 235 } 195 236 237 if ( isset( $input['enable_auto_extract'] ) ) { 238 $sanitized['enable_auto_extract'] = 1; 239 } else { 240 $sanitized['enable_auto_extract'] = 0; 241 } 242 196 243 return $sanitized; 197 244 } -
image-copyright-manager/trunk/readme.txt
r3461380 r3463903 5 5 Tested up to: 6.9 6 6 Requires PHP: 7.4 7 Stable tag: 1. 3.17 Stable tag: 1.4.0 8 8 License: GPLv2 or later 9 9 License URI: https://www.gnu.org/licenses/gpl-2.0.html … … 18 18 19 19 * Add copyright information to any media file in WordPress 20 * Automatic Metadata Extraction (EXIF, IPTC, XMP) from Lightroom and other software 20 21 * Complete Google Image SEO support (Creator, Copyright Notice, Credit Text, License URL, Acquire License URL) 21 22 * Automatic JSON-LD Schema.org output for Google Image SEO license badge … … 52 53 == Installation == 53 54 54 1. Upload the plugin files to the `/wp-content/plugins/ wp-image-copyright` directory, or install the plugin through the WordPress plugins screen directly.55 1. Upload the plugin files to the `/wp-content/plugins/image-copyright-manager` directory, or install the plugin through the WordPress plugins screen directly. 55 56 2. Activate the plugin through the 'Plugins' screen in WordPress 56 57 3. Use the Settings->Screen to configure the plugin … … 82 83 Yes, the plugin is fully translation ready and includes a POT file for creating translations. 83 84 85 = Does it support Lightroom metadata? = 86 87 Yes! Version 1.4.0 introduces automatic metadata extraction. When you upload an image exported from Lightroom (or other software preserving EXIF/IPTC/XMP), the plugin will automatically read copyright, creator, and credit fields. You can enable or disable this feature in the settings (Settings -> Image Copyright). 88 84 89 == Screenshots == 85 90 … … 89 94 == Upgrade Notice == 90 95 96 = 1.4.0 = 97 New Feature: Automatic metadata extraction from Lightroom and other photo software. Now you can save time by letting the plugin read your EXIF/IPTC/XMP data on upload! 98 91 99 = 1.3.1 = 92 100 This is a security release that addresses a potential XSS vulnerability in the JSON-LD output. All users are strongly encouraged to update immediately. 93 101 102 = 1.2.1 = 103 Fixed build process to exclude development files. 104 105 = 1.2.0 = 106 Major update: Moved copyright field to Media Modal, improved performance, and robustness. 107 108 = 1.1.3 = 109 This update adds a CSS toggle setting and improves user control over plugin styling behavior. 110 111 = 1.1.2 = 112 This update includes bug fixes and minor improvements. The translation template has been updated for better internationalization support. 113 114 = 1.1.1 = 115 This update includes bug fixes and minor improvements. The translation template has been updated for better internationalization support. 116 117 = 1.1.0 = 118 This update migrates copyright information to a custom database table for much better performance and scalability. All old taxonomy code has been removed. Please back up your database before upgrading. 119 120 = 1.0.6 = 121 This update addresses WordPress Plugin Directory submission requirements and resolves ownership verification issues. The plugin now includes all required headers and follows WordPress coding standards for directory submission. 122 123 = 1.0.5 = 124 This update enhances the shortcode with new customization options. The default heading is now "Image Sources" and you can customize all text elements using new parameters like heading, heading_tag, no_sources_text, copyright_label, and view_media_text. 125 126 = 1.0.4 = 127 This update fixes translation file naming to follow WordPress standards, ensuring proper translation loading across all locales. 128 129 = 1.0.3 = 130 This update adds German translation support and fixes translation loading issues. The plugin now automatically updates stored settings when the language changes and includes a manual refresh option in the settings page. 131 132 = 1.0.2 = 133 This update adds a new per-image copyright display feature with global settings. Users can now choose to display copyright text under individual images and customize the display format globally through Settings > Image Copyright. 134 135 = 1.0.1 = 136 This update includes important text domain fixes and function prefix changes. The shortcode has been updated from [wpimc] to [icm]. Please update any existing shortcodes in your content. 137 138 = 1.0.0 = 139 Initial release of Image Copyright Manager plugin. 140 141 94 142 == Changelog == 143 144 = 1.4.0 = 145 * Added: Automatic metadata extraction (EXIF, IPTC, XMP) on image upload. 146 * Added: Support for Lightroom metadata mapping (dc:rights, creator, etc.). 147 * Added: "Auto-Extract Metadata" toggle in settings. 148 * Improved: Performance-optimized metadata reading using bounded file access. 149 * Improved: Better sanitization and request-scoped deduplication for metadata processing. 95 150 96 151 = 1.3.1 = … … 131 186 Please refer to the CHANGELOG.txt file for the complete changelog. 132 187 133 == Upgrade Notice == 134 135 = 1.2.1 = 136 Fixed build process to exclude development files. 137 138 = 1.2.0 = 139 Major update: Moved copyright field to Media Modal, improved performance, and robustness. 140 141 = 1.1.3 = 142 This update adds a CSS toggle setting and improves user control over plugin styling behavior. 143 144 = 1.1.2 = 145 This update includes bug fixes and minor improvements. The translation template has been updated for better internationalization support. 146 147 = 1.1.1 = 148 This update includes bug fixes and minor improvements. The translation template has been updated for better internationalization support. 149 150 = 1.1.0 = 151 This update migrates copyright information to a custom database table for much better performance and scalability. All old taxonomy code has been removed. Please back up your database before upgrading. 152 153 = 1.0.6 = 154 This update addresses WordPress Plugin Directory submission requirements and resolves ownership verification issues. The plugin now includes all required headers and follows WordPress coding standards for directory submission. 155 156 = 1.0.5 = 157 This update enhances the shortcode with new customization options. The default heading is now "Image Sources" and you can customize all text elements using new parameters like heading, heading_tag, no_sources_text, copyright_label, and view_media_text. 158 159 = 1.0.4 = 160 This update fixes translation file naming to follow WordPress standards, ensuring proper translation loading across all locales. 161 162 = 1.0.3 = 163 This update adds German translation support and fixes translation loading issues. The plugin now automatically updates stored settings when the language changes and includes a manual refresh option in the settings page. 164 165 = 1.0.2 = 166 This update adds a new per-image copyright display feature with global settings. Users can now choose to display copyright text under individual images and customize the display format globally through Settings > Image Copyright. 167 168 = 1.0.1 = 169 This update includes important text domain fixes and function prefix changes. The shortcode has been updated from [wpimc] to [icm]. Please update any existing shortcodes in your content. 170 171 = 1.0.0 = 172 Initial release of Image Copyright Manager plugin. 188
Note: See TracChangeset
for help on using the changeset viewer.