Changeset 3279097
- Timestamp:
- 04/22/2025 01:16:17 PM (10 months ago)
- Location:
- translatepress-multilingual
- Files:
-
- 22 edited
- 1 copied
-
tags/2.9.12 (copied) (copied from translatepress-multilingual/trunk)
-
tags/2.9.12/assets/js/trp-back-end-script.js (modified) (2 diffs)
-
tags/2.9.12/class-translate-press.php (modified) (1 diff)
-
tags/2.9.12/includes/class-edd-sl-plugin-updater.php (modified) (1 diff)
-
tags/2.9.12/includes/class-machine-translation-tab.php (modified) (2 diffs)
-
tags/2.9.12/includes/class-machine-translator-logger.php (modified) (2 diffs)
-
tags/2.9.12/includes/class-plugin-optin.php (modified) (2 diffs)
-
tags/2.9.12/includes/class-translation-render.php (modified) (1 diff)
-
tags/2.9.12/includes/mtapi/functions.php (modified) (2 diffs)
-
tags/2.9.12/index.php (modified) (1 diff)
-
tags/2.9.12/languages/translatepress-multilingual.pot (modified) (4 diffs)
-
tags/2.9.12/readme.txt (modified) (2 diffs)
-
trunk/assets/js/trp-back-end-script.js (modified) (2 diffs)
-
trunk/class-translate-press.php (modified) (1 diff)
-
trunk/includes/class-edd-sl-plugin-updater.php (modified) (1 diff)
-
trunk/includes/class-machine-translation-tab.php (modified) (2 diffs)
-
trunk/includes/class-machine-translator-logger.php (modified) (2 diffs)
-
trunk/includes/class-plugin-optin.php (modified) (2 diffs)
-
trunk/includes/class-translation-render.php (modified) (1 diff)
-
trunk/includes/mtapi/functions.php (modified) (2 diffs)
-
trunk/index.php (modified) (1 diff)
-
trunk/languages/translatepress-multilingual.pot (modified) (4 diffs)
-
trunk/readme.txt (modified) (2 diffs)
Legend:
- Unmodified
- Added
- Removed
-
translatepress-multilingual/tags/2.9.12/assets/js/trp-back-end-script.js
r3272651 r3279097 224 224 jQuery( '#trp-sortable-languages' ).sortable({ handle: '.trp-sortable-handle' }); 225 225 jQuery( '#trp-add-language' ).click( _this.add_language ); 226 jQuery( '.trp-remove-language__container' ).click( _this.remove_language);226 jQuery('.trp-remove-language__container:not(.trp-adst-remove-element)').click(_this.remove_language); 227 227 jQuery( '#trp-default-language' ).on( 'change', _this.update_default_language ); 228 228 jQuery( "form[action='options.php']").on ( 'submit', _this.check_unique_url_slugs ); … … 257 257 258 258 this.remove_item = function( event ){ 259 if ( confirm( event.target.getAttribute( 'data-confirm-message' ) ) ){259 if ( confirm( document.querySelector('.trp-adst-remove-element-text').getAttribute( 'data-confirm-message' ) ) ){ 260 260 jQuery( event.target ).closest( '.trp-list-entry' ).remove() 261 261 } -
translatepress-multilingual/tags/2.9.12/class-translate-press.php
r3272651 r3279097 70 70 define( 'TRP_PLUGIN_BASE', plugin_basename( __DIR__ . '/index.php' ) ); 71 71 define( 'TRP_PLUGIN_SLUG', 'translatepress-multilingual' ); 72 define( 'TRP_PLUGIN_VERSION', '2.9.1 1' );72 define( 'TRP_PLUGIN_VERSION', '2.9.12' ); 73 73 74 74 wp_cache_add_non_persistent_groups(array('trp')); -
translatepress-multilingual/tags/2.9.12/includes/class-edd-sl-plugin-updater.php
r3178104 r3279097 549 549 class TRP_Plugin_Updater{ 550 550 551 private $store_url = "https://translatepress.com";551 private $store_url; 552 552 553 553 public function __construct(){ 554 // Use constant from wp-config.php if defined, otherwise use default URL 555 $this->store_url = defined('TRP_STORE_URL') ? TRP_STORE_URL : "https://translatepress.com"; 554 556 } 555 557 -
translatepress-multilingual/tags/2.9.12/includes/class-machine-translation-tab.php
r3257963 r3279097 69 69 $free_version = !class_exists( 'TRP_Handle_Included_Addons' ); 70 70 $seo_pack_active = class_exists( 'TRP_IN_Seo_Pack'); 71 $trp = TRP_Translate_Press::get_trp_instance(); 72 $machine_translator = $trp->get_component( 'machine_translator' ); 71 73 72 $settings = array(); 74 73 $machine_translation_keys = array( 'machine-translation', 'translation-engine', 'google-translate-key', 'deepl-api-type', 'deepl-api-key', 'block-crawlers', 'automatically-translate-slug', 'machine_translation_limit', 'machine_translation_log', 'machine_translation_limit_enabled' ); … … 116 115 } 117 116 118 $db_stored_data = get_option('trp_db_stored_data', array() ); 119 unset( $db_stored_data['trp_mt_supported_languages'][ $settings['translation-engine'] ]['last-checked'] ); 120 update_option( 'trp_db_stored_data', $db_stored_data ); 117 if ( isset ( $_POST['option_page'] ) && 118 $_POST['option_page'] === 'trp_machine_translation_settings' && 119 current_user_can( apply_filters( 'trp_translating_capability', 'manage_options' ) ) ) 120 { 121 $db_stored_data = get_option( 'trp_db_stored_data', array() ); 122 unset( $db_stored_data['trp_mt_supported_languages'][ $settings['translation-engine'] ]['last-checked'] ); 123 update_option( 'trp_db_stored_data', $db_stored_data ); 124 } 121 125 122 126 return apply_filters( 'trp_machine_translation_sanitize_settings', $settings, $mt_settings ); -
translatepress-multilingual/tags/2.9.12/includes/class-machine-translator-logger.php
r3234839 r3279097 24 24 // if a new day has passed, update the counter and date 25 25 $this->maybe_reset_counter_date(); 26 27 add_action('trp_is_deepl_glossary_id_valid', array( $this, 'show_notice_if_glossary_id_invalid'), 10, 1 ); 26 28 } 27 29 … … 305 307 } 306 308 309 public function show_notice_if_glossary_id_invalid( $response ){ 310 311 global $wpdb; 312 313 if ( is_array( $response ) && ! is_wp_error( $response ) && isset( $response['response'] ) && 314 isset( $response['response']['code']) && $response['response']['code'] !== 200 ) { 315 316 $response_body = json_decode( $response['body'] ); 317 318 if ( isset( $response_body->message ) ) { 319 320 if ( !$this->error_manager ) { 321 $trp = TRP_Translate_Press::get_trp_instance(); 322 $this->error_manager = $trp->get_component( 'error_manager' ); 323 } 324 325 if ( strpos( strtolower( $response_body->message), 'glossary' ) !== false ) { 326 327 $wpdb->last_error = ' The glossary ID provided for DeepL translation request was invalid. Please check again'; 328 $this->error_manager->record_error( array( 'glossary_id_is_invalid' => $wpdb->last_error, 'disable_automatic_translations' => true ) ); 329 } 330 } 331 } 332 } 333 307 334 } -
translatepress-multilingual/tags/2.9.12/includes/class-plugin-optin.php
r3272651 r3279097 325 325 'php_version' => defined( 'PHP_VERSION' ) ? PHP_VERSION : '', 326 326 ), 327 'timeout' => 60, 327 328 ); 328 329 … … 497 498 $this->blacklisted_option_patterns = [ 498 499 'trp_migrate_old_slug_to_new_parent_and_translate_slug_table', 500 'trp_woo_', 499 501 ]; 500 502 -
translatepress-multilingual/tags/2.9.12/includes/class-translation-render.php
r3272651 r3279097 1591 1591 $new_strings[ $i ] = $translateable_strings[ $i ]; 1592 1592 // if the string is not a url then allow machine translation for it 1593 if ( $machine_translation_available && !$skip_string && filter_var( $new_strings[ $i ], FILTER_VALIDATE_URL ) === false ) { 1593 1594 if ( !$this->url_converter ){ 1595 $trp = TRP_Translate_Press::get_trp_instance(); 1596 $this->url_converter = $trp->get_component('url_converter'); 1597 } 1598 1599 if ( $machine_translation_available && !$skip_string && filter_var( $new_strings[ $i ], FILTER_VALIDATE_URL ) === false && !$this->url_converter->url_is_extra( $new_strings[ $i ] ) ) { 1594 1600 $machine_translatable_strings[ $i ] = $new_strings[ $i ]; 1595 1601 } -
translatepress-multilingual/tags/2.9.12/includes/mtapi/functions.php
r3272651 r3279097 146 146 add_filter( 'trp_machine_translation_sanitize_settings', 'trp_mtapi_sync_license', 10, 2 ); 147 147 function trp_mtapi_sync_license( $settings, $mt_settings ) { 148 if ( $settings['translation-engine'] === 'mtapi' ) { 148 if ( isset ( $_POST['option_page'] ) && 149 $_POST['option_page'] === 'trp_machine_translation_settings' && 150 current_user_can( apply_filters( 'trp_translating_capability', 'manage_options' ) ) && 151 $settings['translation-engine'] === 'mtapi' ) 152 { 149 153 $license = get_option( 'trp_license_key' ); 150 154 $status = get_option( 'trp_license_status' ); … … 170 174 'edd_action' => 'sync_mtapi_license', 171 175 'license' => $license_key, 172 'url' => home_url() 176 'url' => home_url(), 177 'version' => TRP_PLUGIN_VERSION 173 178 ); 174 179 $store_url = trp_mtapi_get_store_url(); -
translatepress-multilingual/tags/2.9.12/index.php
r3272651 r3279097 4 4 Plugin URI: https://translatepress.com/ 5 5 Description: Experience a better way of translating your WordPress site using a visual front-end translation editor, with full support for WooCommerce and site builders. 6 Version: 2.9.1 16 Version: 2.9.12 7 7 Author: Cozmoslabs, Razvan Mocanu, Madalin Ungureanu, Cristophor Hurduban 8 8 Author URI: https://cozmoslabs.com/ -
translatepress-multilingual/tags/2.9.12/languages/translatepress-multilingual.pot
r3272651 r3279097 7 7 "Content-Type: text/plain; charset=UTF-8\n" 8 8 "Content-Transfer-Encoding: 8bit\n" 9 "POT-Creation-Date: 2025-04- 14 15:57+0000\n"9 "POT-Creation-Date: 2025-04-22 12:39+0000\n" 10 10 "X-Poedit-Basepath: ..\n" 11 11 "X-Poedit-KeywordsList: __;_e;_ex:1,2c;_n:1,2;_n_noop:1,2;_nx:1,2,4c;_nx_noop:1,2,3c;_x:1,2c;esc_attr__;esc_attr_e;esc_attr_x:1,2c;esc_html__;esc_html_e;esc_html_x:1,2c\n" … … 95 95 msgstr "" 96 96 97 #: includes/class-edd-sl-plugin-updater.php:72 297 #: includes/class-edd-sl-plugin-updater.php:724 98 98 msgid "Your license key expired on %s." 99 99 msgstr "" 100 100 101 #: includes/class-edd-sl-plugin-updater.php:72 7101 #: includes/class-edd-sl-plugin-updater.php:729 102 102 msgid "Your license key has been disabled." 103 103 msgstr "" 104 104 105 #: includes/class-edd-sl-plugin-updater.php:73 0105 #: includes/class-edd-sl-plugin-updater.php:732 106 106 msgid "Invalid license." 107 107 msgstr "" 108 108 109 #: includes/class-edd-sl-plugin-updater.php:73 4109 #: includes/class-edd-sl-plugin-updater.php:736 110 110 msgid "Your license is not active for this URL." 111 111 msgstr "" 112 112 113 #: includes/class-edd-sl-plugin-updater.php:73 7113 #: includes/class-edd-sl-plugin-updater.php:739 114 114 msgid "This appears to be an invalid license key for %s." 115 115 msgstr "" 116 116 117 #: includes/class-edd-sl-plugin-updater.php:74 0117 #: includes/class-edd-sl-plugin-updater.php:742 118 118 msgid "Your license key has reached its activation limit." 119 119 msgstr "" 120 120 121 #: includes/class-edd-sl-plugin-updater.php:74 3, includes/class-edd-sl-plugin-updater.php:711, includes/class-edd-sl-plugin-updater.php:817121 #: includes/class-edd-sl-plugin-updater.php:745, includes/class-edd-sl-plugin-updater.php:713, includes/class-edd-sl-plugin-updater.php:819 122 122 msgid "An error occurred, please try again." 123 123 msgstr "" 124 124 125 #: includes/class-edd-sl-plugin-updater.php:77 6125 #: includes/class-edd-sl-plugin-updater.php:778 126 126 msgid "You have successfully activated your license" 127 127 msgstr "" … … 283 283 msgstr "" 284 284 285 #: includes/class-machine-translation-tab.php:18 4, add-ons-pro/deepl/includes/class-deepl.php:33285 #: includes/class-machine-translation-tab.php:188, add-ons-pro/deepl/includes/class-deepl.php:33 286 286 msgid "DeepL" 287 287 msgstr "" 288 288 289 #: includes/class-machine-translation-tab.php:2 19289 #: includes/class-machine-translation-tab.php:223 290 290 msgid "Unsupported languages" 291 291 msgstr "" 292 292 293 #: includes/class-machine-translation-tab.php:23 3293 #: includes/class-machine-translation-tab.php:237 294 294 msgid "The selected automatic translation engine does not provide support for these languages.<br>You can still manually translate pages in these languages using the Translation Editor." 295 295 msgstr "" 296 296 297 #: includes/class-machine-translation-tab.php:25 2297 #: includes/class-machine-translation-tab.php:256 298 298 msgid "API key validation failed." 299 299 msgstr "" 300 300 301 #: includes/class-machine-translation-tab.php:26 2301 #: includes/class-machine-translation-tab.php:266 302 302 msgid "API key verification was successful." 303 303 msgstr "" … … 307 307 msgstr "" 308 308 309 #: includes/class-machine-translator.php:159, add-ons-pro/deepl/includes/class-deepl-machine-translator.php:3 46309 #: includes/class-machine-translator.php:159, add-ons-pro/deepl/includes/class-deepl-machine-translator.php:380 310 310 msgid "Please enter your DeepL API key." 311 311 msgstr "" -
translatepress-multilingual/tags/2.9.12/readme.txt
r3272651 r3279097 4 4 Tags: translate, translation, multilingual, automatic translation, bilingual, front-end translation, google translate, language 5 5 Requires at least: 3.1.0 6 Tested up to: 6. 7.26 Tested up to: 6.8 7 7 Requires PHP: 5.6.20 8 Stable tag: 2.9.1 18 Stable tag: 2.9.12 9 9 License: GPLv2 or later 10 10 License URI: http://www.gnu.org/licenses/gpl-2.0.html … … 142 142 143 143 == Changelog == 144 = 2.9.12 = 145 * Reduced the number of unnecessary calls to TP AI translation engine in some cases when daily quota was exceeded 146 * Fixed incorrectly machine translating callto, mailto and tel from href attributes when browsing these strings in String Translation 147 144 148 = 2.9.11 = 145 149 * Updated Translation Editor to Vue 3.5 framework resulting in reduced loading time and improved security 146 * Fixed edge case with translation blocks on translated pages accidental y removing a parent html tag150 * Fixed edge case with translation blocks on translated pages accidentally removing a parent html tag 147 151 * Reduced the number of unnecessary calls to TP AI translation engine 148 152 -
translatepress-multilingual/trunk/assets/js/trp-back-end-script.js
r3272651 r3279097 224 224 jQuery( '#trp-sortable-languages' ).sortable({ handle: '.trp-sortable-handle' }); 225 225 jQuery( '#trp-add-language' ).click( _this.add_language ); 226 jQuery( '.trp-remove-language__container' ).click( _this.remove_language);226 jQuery('.trp-remove-language__container:not(.trp-adst-remove-element)').click(_this.remove_language); 227 227 jQuery( '#trp-default-language' ).on( 'change', _this.update_default_language ); 228 228 jQuery( "form[action='options.php']").on ( 'submit', _this.check_unique_url_slugs ); … … 257 257 258 258 this.remove_item = function( event ){ 259 if ( confirm( event.target.getAttribute( 'data-confirm-message' ) ) ){259 if ( confirm( document.querySelector('.trp-adst-remove-element-text').getAttribute( 'data-confirm-message' ) ) ){ 260 260 jQuery( event.target ).closest( '.trp-list-entry' ).remove() 261 261 } -
translatepress-multilingual/trunk/class-translate-press.php
r3272651 r3279097 70 70 define( 'TRP_PLUGIN_BASE', plugin_basename( __DIR__ . '/index.php' ) ); 71 71 define( 'TRP_PLUGIN_SLUG', 'translatepress-multilingual' ); 72 define( 'TRP_PLUGIN_VERSION', '2.9.1 1' );72 define( 'TRP_PLUGIN_VERSION', '2.9.12' ); 73 73 74 74 wp_cache_add_non_persistent_groups(array('trp')); -
translatepress-multilingual/trunk/includes/class-edd-sl-plugin-updater.php
r3178104 r3279097 549 549 class TRP_Plugin_Updater{ 550 550 551 private $store_url = "https://translatepress.com";551 private $store_url; 552 552 553 553 public function __construct(){ 554 // Use constant from wp-config.php if defined, otherwise use default URL 555 $this->store_url = defined('TRP_STORE_URL') ? TRP_STORE_URL : "https://translatepress.com"; 554 556 } 555 557 -
translatepress-multilingual/trunk/includes/class-machine-translation-tab.php
r3257963 r3279097 69 69 $free_version = !class_exists( 'TRP_Handle_Included_Addons' ); 70 70 $seo_pack_active = class_exists( 'TRP_IN_Seo_Pack'); 71 $trp = TRP_Translate_Press::get_trp_instance(); 72 $machine_translator = $trp->get_component( 'machine_translator' ); 71 73 72 $settings = array(); 74 73 $machine_translation_keys = array( 'machine-translation', 'translation-engine', 'google-translate-key', 'deepl-api-type', 'deepl-api-key', 'block-crawlers', 'automatically-translate-slug', 'machine_translation_limit', 'machine_translation_log', 'machine_translation_limit_enabled' ); … … 116 115 } 117 116 118 $db_stored_data = get_option('trp_db_stored_data', array() ); 119 unset( $db_stored_data['trp_mt_supported_languages'][ $settings['translation-engine'] ]['last-checked'] ); 120 update_option( 'trp_db_stored_data', $db_stored_data ); 117 if ( isset ( $_POST['option_page'] ) && 118 $_POST['option_page'] === 'trp_machine_translation_settings' && 119 current_user_can( apply_filters( 'trp_translating_capability', 'manage_options' ) ) ) 120 { 121 $db_stored_data = get_option( 'trp_db_stored_data', array() ); 122 unset( $db_stored_data['trp_mt_supported_languages'][ $settings['translation-engine'] ]['last-checked'] ); 123 update_option( 'trp_db_stored_data', $db_stored_data ); 124 } 121 125 122 126 return apply_filters( 'trp_machine_translation_sanitize_settings', $settings, $mt_settings ); -
translatepress-multilingual/trunk/includes/class-machine-translator-logger.php
r3234839 r3279097 24 24 // if a new day has passed, update the counter and date 25 25 $this->maybe_reset_counter_date(); 26 27 add_action('trp_is_deepl_glossary_id_valid', array( $this, 'show_notice_if_glossary_id_invalid'), 10, 1 ); 26 28 } 27 29 … … 305 307 } 306 308 309 public function show_notice_if_glossary_id_invalid( $response ){ 310 311 global $wpdb; 312 313 if ( is_array( $response ) && ! is_wp_error( $response ) && isset( $response['response'] ) && 314 isset( $response['response']['code']) && $response['response']['code'] !== 200 ) { 315 316 $response_body = json_decode( $response['body'] ); 317 318 if ( isset( $response_body->message ) ) { 319 320 if ( !$this->error_manager ) { 321 $trp = TRP_Translate_Press::get_trp_instance(); 322 $this->error_manager = $trp->get_component( 'error_manager' ); 323 } 324 325 if ( strpos( strtolower( $response_body->message), 'glossary' ) !== false ) { 326 327 $wpdb->last_error = ' The glossary ID provided for DeepL translation request was invalid. Please check again'; 328 $this->error_manager->record_error( array( 'glossary_id_is_invalid' => $wpdb->last_error, 'disable_automatic_translations' => true ) ); 329 } 330 } 331 } 332 } 333 307 334 } -
translatepress-multilingual/trunk/includes/class-plugin-optin.php
r3272651 r3279097 325 325 'php_version' => defined( 'PHP_VERSION' ) ? PHP_VERSION : '', 326 326 ), 327 'timeout' => 60, 327 328 ); 328 329 … … 497 498 $this->blacklisted_option_patterns = [ 498 499 'trp_migrate_old_slug_to_new_parent_and_translate_slug_table', 500 'trp_woo_', 499 501 ]; 500 502 -
translatepress-multilingual/trunk/includes/class-translation-render.php
r3272651 r3279097 1591 1591 $new_strings[ $i ] = $translateable_strings[ $i ]; 1592 1592 // if the string is not a url then allow machine translation for it 1593 if ( $machine_translation_available && !$skip_string && filter_var( $new_strings[ $i ], FILTER_VALIDATE_URL ) === false ) { 1593 1594 if ( !$this->url_converter ){ 1595 $trp = TRP_Translate_Press::get_trp_instance(); 1596 $this->url_converter = $trp->get_component('url_converter'); 1597 } 1598 1599 if ( $machine_translation_available && !$skip_string && filter_var( $new_strings[ $i ], FILTER_VALIDATE_URL ) === false && !$this->url_converter->url_is_extra( $new_strings[ $i ] ) ) { 1594 1600 $machine_translatable_strings[ $i ] = $new_strings[ $i ]; 1595 1601 } -
translatepress-multilingual/trunk/includes/mtapi/functions.php
r3272651 r3279097 146 146 add_filter( 'trp_machine_translation_sanitize_settings', 'trp_mtapi_sync_license', 10, 2 ); 147 147 function trp_mtapi_sync_license( $settings, $mt_settings ) { 148 if ( $settings['translation-engine'] === 'mtapi' ) { 148 if ( isset ( $_POST['option_page'] ) && 149 $_POST['option_page'] === 'trp_machine_translation_settings' && 150 current_user_can( apply_filters( 'trp_translating_capability', 'manage_options' ) ) && 151 $settings['translation-engine'] === 'mtapi' ) 152 { 149 153 $license = get_option( 'trp_license_key' ); 150 154 $status = get_option( 'trp_license_status' ); … … 170 174 'edd_action' => 'sync_mtapi_license', 171 175 'license' => $license_key, 172 'url' => home_url() 176 'url' => home_url(), 177 'version' => TRP_PLUGIN_VERSION 173 178 ); 174 179 $store_url = trp_mtapi_get_store_url(); -
translatepress-multilingual/trunk/index.php
r3272651 r3279097 4 4 Plugin URI: https://translatepress.com/ 5 5 Description: Experience a better way of translating your WordPress site using a visual front-end translation editor, with full support for WooCommerce and site builders. 6 Version: 2.9.1 16 Version: 2.9.12 7 7 Author: Cozmoslabs, Razvan Mocanu, Madalin Ungureanu, Cristophor Hurduban 8 8 Author URI: https://cozmoslabs.com/ -
translatepress-multilingual/trunk/languages/translatepress-multilingual.pot
r3272651 r3279097 7 7 "Content-Type: text/plain; charset=UTF-8\n" 8 8 "Content-Transfer-Encoding: 8bit\n" 9 "POT-Creation-Date: 2025-04- 14 15:57+0000\n"9 "POT-Creation-Date: 2025-04-22 12:39+0000\n" 10 10 "X-Poedit-Basepath: ..\n" 11 11 "X-Poedit-KeywordsList: __;_e;_ex:1,2c;_n:1,2;_n_noop:1,2;_nx:1,2,4c;_nx_noop:1,2,3c;_x:1,2c;esc_attr__;esc_attr_e;esc_attr_x:1,2c;esc_html__;esc_html_e;esc_html_x:1,2c\n" … … 95 95 msgstr "" 96 96 97 #: includes/class-edd-sl-plugin-updater.php:72 297 #: includes/class-edd-sl-plugin-updater.php:724 98 98 msgid "Your license key expired on %s." 99 99 msgstr "" 100 100 101 #: includes/class-edd-sl-plugin-updater.php:72 7101 #: includes/class-edd-sl-plugin-updater.php:729 102 102 msgid "Your license key has been disabled." 103 103 msgstr "" 104 104 105 #: includes/class-edd-sl-plugin-updater.php:73 0105 #: includes/class-edd-sl-plugin-updater.php:732 106 106 msgid "Invalid license." 107 107 msgstr "" 108 108 109 #: includes/class-edd-sl-plugin-updater.php:73 4109 #: includes/class-edd-sl-plugin-updater.php:736 110 110 msgid "Your license is not active for this URL." 111 111 msgstr "" 112 112 113 #: includes/class-edd-sl-plugin-updater.php:73 7113 #: includes/class-edd-sl-plugin-updater.php:739 114 114 msgid "This appears to be an invalid license key for %s." 115 115 msgstr "" 116 116 117 #: includes/class-edd-sl-plugin-updater.php:74 0117 #: includes/class-edd-sl-plugin-updater.php:742 118 118 msgid "Your license key has reached its activation limit." 119 119 msgstr "" 120 120 121 #: includes/class-edd-sl-plugin-updater.php:74 3, includes/class-edd-sl-plugin-updater.php:711, includes/class-edd-sl-plugin-updater.php:817121 #: includes/class-edd-sl-plugin-updater.php:745, includes/class-edd-sl-plugin-updater.php:713, includes/class-edd-sl-plugin-updater.php:819 122 122 msgid "An error occurred, please try again." 123 123 msgstr "" 124 124 125 #: includes/class-edd-sl-plugin-updater.php:77 6125 #: includes/class-edd-sl-plugin-updater.php:778 126 126 msgid "You have successfully activated your license" 127 127 msgstr "" … … 283 283 msgstr "" 284 284 285 #: includes/class-machine-translation-tab.php:18 4, add-ons-pro/deepl/includes/class-deepl.php:33285 #: includes/class-machine-translation-tab.php:188, add-ons-pro/deepl/includes/class-deepl.php:33 286 286 msgid "DeepL" 287 287 msgstr "" 288 288 289 #: includes/class-machine-translation-tab.php:2 19289 #: includes/class-machine-translation-tab.php:223 290 290 msgid "Unsupported languages" 291 291 msgstr "" 292 292 293 #: includes/class-machine-translation-tab.php:23 3293 #: includes/class-machine-translation-tab.php:237 294 294 msgid "The selected automatic translation engine does not provide support for these languages.<br>You can still manually translate pages in these languages using the Translation Editor." 295 295 msgstr "" 296 296 297 #: includes/class-machine-translation-tab.php:25 2297 #: includes/class-machine-translation-tab.php:256 298 298 msgid "API key validation failed." 299 299 msgstr "" 300 300 301 #: includes/class-machine-translation-tab.php:26 2301 #: includes/class-machine-translation-tab.php:266 302 302 msgid "API key verification was successful." 303 303 msgstr "" … … 307 307 msgstr "" 308 308 309 #: includes/class-machine-translator.php:159, add-ons-pro/deepl/includes/class-deepl-machine-translator.php:3 46309 #: includes/class-machine-translator.php:159, add-ons-pro/deepl/includes/class-deepl-machine-translator.php:380 310 310 msgid "Please enter your DeepL API key." 311 311 msgstr "" -
translatepress-multilingual/trunk/readme.txt
r3272651 r3279097 4 4 Tags: translate, translation, multilingual, automatic translation, bilingual, front-end translation, google translate, language 5 5 Requires at least: 3.1.0 6 Tested up to: 6. 7.26 Tested up to: 6.8 7 7 Requires PHP: 5.6.20 8 Stable tag: 2.9.1 18 Stable tag: 2.9.12 9 9 License: GPLv2 or later 10 10 License URI: http://www.gnu.org/licenses/gpl-2.0.html … … 142 142 143 143 == Changelog == 144 = 2.9.12 = 145 * Reduced the number of unnecessary calls to TP AI translation engine in some cases when daily quota was exceeded 146 * Fixed incorrectly machine translating callto, mailto and tel from href attributes when browsing these strings in String Translation 147 144 148 = 2.9.11 = 145 149 * Updated Translation Editor to Vue 3.5 framework resulting in reduced loading time and improved security 146 * Fixed edge case with translation blocks on translated pages accidental y removing a parent html tag150 * Fixed edge case with translation blocks on translated pages accidentally removing a parent html tag 147 151 * Reduced the number of unnecessary calls to TP AI translation engine 148 152
Note: See TracChangeset
for help on using the changeset viewer.