Version Description
- All Premium Add-ons have been repackaged in new archives downloadable from translatepress.com account. All the old plugin Add-ons will no longer receive updates.
- Reconfigured add-ons to be activated from TP Settings Add-ons tab
- Added compatibility with WP Typography
- Fixed bug on Automatic Translation Settings page regarding API key
Download this release
Release Info
Developer | razvan.mo |
Plugin | TranslatePress – Translate Multilingual sites |
Version | 2.0.5 |
Comparing to | |
See all releases |
Code changes from version 2.0.4 to 2.0.5
- assets/lib/tp-add-ons-listing/assets/css/tp-add-ons-listing.css +34 -0
- assets/lib/tp-add-ons-listing/assets/js/tp-add-ons-listing.js +60 -0
- assets/lib/tp-add-ons-listing/tp-add-ons-listing.php +342 -0
- class-translate-press.php +10 -8
- includes/class-error-manager.php +17 -0
- includes/class-machine-translation-tab.php +11 -4
- includes/class-machine-translator.php +6 -3
- includes/class-upgrade.php +38 -0
- includes/compatibility-functions.php +30 -0
- includes/functions.php +12 -6
- index.php +6 -1
- languages/translatepress-multilingual.catalog.php +89 -62
- languages/translatepress-multilingual.pot +358 -250
- partials/addons-settings-page.php +110 -111
- partials/machine-translation-settings-page.php +1 -1
- partials/main-settings-language-selector.php +2 -2
- readme.txt +9 -2
assets/lib/tp-add-ons-listing/assets/css/tp-add-ons-listing.css
ADDED
@@ -0,0 +1,34 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
/**
|
2 |
+
Style the Add-ons listing page
|
3 |
+
*/
|
4 |
+
#trp-add-ons-listing .trp-main-header{
|
5 |
+
margin-bottom:30px;
|
6 |
+
}
|
7 |
+
|
8 |
+
#trp-add-ons-listing .trp-add-ons-section{
|
9 |
+
margin:40px 0;
|
10 |
+
}
|
11 |
+
|
12 |
+
#trp-add-ons-listing .tablenav{
|
13 |
+
display:none;
|
14 |
+
}
|
15 |
+
|
16 |
+
#trp-add-ons-listing .column-add_on{
|
17 |
+
width:80%;
|
18 |
+
}
|
19 |
+
|
20 |
+
#trp-add-ons-listing .column-icon{
|
21 |
+
width: 64px;
|
22 |
+
}
|
23 |
+
|
24 |
+
#trp-add-ons-listing .column-actions{
|
25 |
+
width:225px;
|
26 |
+
vertical-align: middle !important;
|
27 |
+
}
|
28 |
+
#trp-add-ons-listing .trp-add-ons-search-box{
|
29 |
+
margin-bottom:40px;
|
30 |
+
}
|
31 |
+
|
32 |
+
#trp-add-ons-listing #trp-add-ons-search-input{
|
33 |
+
width:350px;
|
34 |
+
}
|
assets/lib/tp-add-ons-listing/assets/js/tp-add-ons-listing.js
ADDED
@@ -0,0 +1,60 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
jQuery( function(){
|
2 |
+
|
3 |
+
//disable enter on search input
|
4 |
+
jQuery('#trp-add-ons-search-input').on('keypress', function(event) {
|
5 |
+
if (event.keyCode == 13) {
|
6 |
+
event.preventDefault();
|
7 |
+
}
|
8 |
+
});
|
9 |
+
|
10 |
+
jQuery('#trp-add-ons-search-input').on( 'keyup', function(e){
|
11 |
+
|
12 |
+
var search = jQuery(this).val().toUpperCase();
|
13 |
+
|
14 |
+
//hide individual add-ons
|
15 |
+
jQuery('tbody tr').each( function(){
|
16 |
+
addonName = jQuery( '.trp-add-ons-name', jQuery(this) ).text();
|
17 |
+
if (addonName.toUpperCase().indexOf(search) > -1) {
|
18 |
+
jQuery(this).show();
|
19 |
+
} else {
|
20 |
+
jQuery(this).hide();
|
21 |
+
}
|
22 |
+
});
|
23 |
+
|
24 |
+
|
25 |
+
//hide the whole table as well when there are no more add-ons in it
|
26 |
+
jQuery( 'tbody' ).each( function(){
|
27 |
+
hideTable = true;
|
28 |
+
jQuery( 'tr', jQuery( this ) ).each( function(){
|
29 |
+
if( jQuery(this).css('display') != "none" ) {
|
30 |
+
hideTable = false;
|
31 |
+
}
|
32 |
+
});
|
33 |
+
|
34 |
+
if( hideTable )
|
35 |
+
jQuery( this ).closest( '.trp-add-ons-section' ).hide();
|
36 |
+
else
|
37 |
+
jQuery( this ).closest( '.trp-add-ons-section' ).show();
|
38 |
+
|
39 |
+
})
|
40 |
+
} );
|
41 |
+
|
42 |
+
//disabled buttons prevent click
|
43 |
+
jQuery( '.trp-add-ons-section .button[disabled]' ).on( 'click', function(e){
|
44 |
+
e.preventDefault();
|
45 |
+
|
46 |
+
//add a tooltip
|
47 |
+
pointer_content = '<h3>'+ trp_add_ons_pointer.tooltip_header +'</h3>';
|
48 |
+
pointer_content += '<p>'+ trp_add_ons_pointer.tooltip_content +'</p>';
|
49 |
+
|
50 |
+
jQuery( this ).pointer({
|
51 |
+
content: pointer_content,
|
52 |
+
position: { 'edge': 'right', 'align' : 'middle' },
|
53 |
+
close: function() {
|
54 |
+
// This function is fired when you click the close button
|
55 |
+
}
|
56 |
+
}).pointer('open');
|
57 |
+
|
58 |
+
});
|
59 |
+
|
60 |
+
})
|
assets/lib/tp-add-ons-listing/tp-add-ons-listing.php
ADDED
@@ -0,0 +1,342 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
<?php
|
2 |
+
|
3 |
+
if ( ! defined( 'ABSPATH' ) ) exit; // Exit if accessed directly
|
4 |
+
|
5 |
+
|
6 |
+
if( ! class_exists( 'WP_List_Table' ) ) {
|
7 |
+
require_once( ABSPATH . 'wp-admin/includes/class-wp-list-table.php' );
|
8 |
+
}
|
9 |
+
|
10 |
+
class TRP_Addons_List_Table extends WP_List_Table {
|
11 |
+
|
12 |
+
public $header;
|
13 |
+
|
14 |
+
public $section_header;
|
15 |
+
public $section_versions;
|
16 |
+
public $sections;
|
17 |
+
|
18 |
+
public $images_folder;
|
19 |
+
public $text_domain;
|
20 |
+
|
21 |
+
public $all_addons;
|
22 |
+
public $all_plugins;
|
23 |
+
|
24 |
+
public $current_version;
|
25 |
+
|
26 |
+
public $tooltip_header;
|
27 |
+
public $tooltip_content;
|
28 |
+
|
29 |
+
function __construct(){
|
30 |
+
|
31 |
+
//Set parent defaults
|
32 |
+
parent::__construct(array(
|
33 |
+
'singular' => 'add-on', //singular name of the listed records
|
34 |
+
'plural' => 'add-ons', //plural name of the listed records
|
35 |
+
'ajax' => false //does this table support ajax?
|
36 |
+
));
|
37 |
+
|
38 |
+
//this is necessary because of WP_List_Table
|
39 |
+
$this->prepare_items();
|
40 |
+
|
41 |
+
//enqueue scripts and styles
|
42 |
+
add_action('admin_footer', array($this, 'trp_print_assets'));
|
43 |
+
|
44 |
+
}
|
45 |
+
|
46 |
+
/**
|
47 |
+
* Print js and css
|
48 |
+
* @param $hook
|
49 |
+
*/
|
50 |
+
function trp_print_assets(){
|
51 |
+
wp_enqueue_style('wp-pointer');
|
52 |
+
wp_enqueue_script('wp-pointer');
|
53 |
+
wp_localize_script( 'wp-pointer', 'trp_add_ons_pointer', array( 'tooltip_header' => $this->tooltip_header, 'tooltip_content' => $this->tooltip_content ) );
|
54 |
+
|
55 |
+
wp_enqueue_style('trp-add-ons-listing-css', plugin_dir_url(__FILE__) . '/assets/css/tp-add-ons-listing.css', false);
|
56 |
+
wp_enqueue_script('trp-add-ons-listing-js', plugin_dir_url(__FILE__) . '/assets/js/tp-add-ons-listing.js', array('jquery'));
|
57 |
+
|
58 |
+
}
|
59 |
+
|
60 |
+
/**
|
61 |
+
* Define the columns here and their headers
|
62 |
+
* @return array
|
63 |
+
*/
|
64 |
+
function get_columns(){
|
65 |
+
$columns = array(
|
66 |
+
'cb' => '<input type="checkbox" />', //Render a checkbox instead of text
|
67 |
+
'icon' => '',
|
68 |
+
'add_on' => __('Add-On', $this->text_domain ),
|
69 |
+
'actions' => '',
|
70 |
+
);
|
71 |
+
return $columns;
|
72 |
+
}
|
73 |
+
|
74 |
+
/**
|
75 |
+
* The checkbox column
|
76 |
+
* @param object $item
|
77 |
+
* @return string|void
|
78 |
+
*/
|
79 |
+
function column_cb($item){
|
80 |
+
if( $item['type'] === 'add-on') {
|
81 |
+
in_array( $this->current_version, $this->section_versions ) ? $disabled = '' : $disabled = 'disabled';
|
82 |
+
return '<input type="checkbox" name="trp_add_ons[]" ' . checked($this->is_add_on_active($item['slug']), true, false) . ' '. $disabled .' value="' . $item['slug'] . '" />';
|
83 |
+
}elseif( $item['type'] === 'plugin') {
|
84 |
+
$all_wp_plugins = get_plugins();
|
85 |
+
array_key_exists( $item['slug'], $all_wp_plugins ) ? $disabled = '' : $disabled = 'disabled';//add disabled if the current version isn't eligible
|
86 |
+
if( empty($disabled) ){
|
87 |
+
is_plugin_active_for_network( $item['slug'] ) ? $disabled = 'disabled' : $disabled = '';
|
88 |
+
}
|
89 |
+
|
90 |
+
return '<input type="checkbox" name="trp_plugins[]" ' . checked(is_plugin_active($item['slug']), true, false) . ' '. $disabled .' value="' . $item['slug'] . '" />';
|
91 |
+
}
|
92 |
+
}
|
93 |
+
|
94 |
+
/**
|
95 |
+
* The icon column
|
96 |
+
* @param $item
|
97 |
+
* @return string
|
98 |
+
*/
|
99 |
+
function column_icon($item){
|
100 |
+
return '<img src="'.$this->images_folder. $item['icon'] .'" width="64" height="64" alt="'. $item['name'] .'">';
|
101 |
+
}
|
102 |
+
|
103 |
+
/**
|
104 |
+
* The column where we display the addon name and description
|
105 |
+
* @param $item
|
106 |
+
* @return string
|
107 |
+
*/
|
108 |
+
function column_add_on($item){
|
109 |
+
return '<strong class="trp-add-ons-name">'. $item['name'] . '</strong><br/>'. $item['description'];
|
110 |
+
}
|
111 |
+
|
112 |
+
/**
|
113 |
+
* The actions column for the addons
|
114 |
+
* @param $item
|
115 |
+
* @return string
|
116 |
+
*/
|
117 |
+
function column_actions($item){
|
118 |
+
|
119 |
+
$action = '';
|
120 |
+
//for plugins we can do something general
|
121 |
+
if( $item['type'] === 'plugin' ) {
|
122 |
+
?>
|
123 |
+
<a class="button-primary right trp-recommended-plugin-buttons trp-install-and-activate" data-trp-plugin-slug="<?php echo $item['short-slug']; ?>" data-trp-action-performed="<?php _e( 'Installing...', 'translatepress-multilingual' );?>" <?php echo $item['disabled']; ?>><?php echo $item['install_button']; ?></a>
|
124 |
+
<?php
|
125 |
+
|
126 |
+
}
|
127 |
+
elseif ( $item['type'] === 'add-on' ){//this is more complicated as there are multiple cases, I think it should be done through filters in each plugin
|
128 |
+
|
129 |
+
in_array( $this->current_version, $this->section_versions ) ? $disabled = '' : $disabled = 'disabled'; //add disabled if the current version isn't eligible
|
130 |
+
|
131 |
+
if ( $this->is_add_on_active( $item['slug'] ) ) {
|
132 |
+
$action = '<a class="right button button-secondary" '.$disabled.' href="'. esc_url( wp_nonce_url( add_query_arg( 'trp_add_ons', $item['slug'], admin_url( 'admin.php?page='. $_REQUEST['page']. '&trp_add_ons_action=deactivate' ) ), 'trp_add_ons_action' ) ) .'">' . __('Deactivate', $this->text_domain) . '</a>';
|
133 |
+
} else {
|
134 |
+
$action = '<a class="right button button-primary" '.$disabled.' href="'. esc_url( wp_nonce_url( add_query_arg( 'trp_add_ons', $item['slug'], admin_url( 'admin.php?page='. $_REQUEST['page']. '&trp_add_ons_action=activate' ) ), 'trp_add_ons_action' ) ) .'">' . __('Activate', $this->text_domain) . '</a>';
|
135 |
+
}
|
136 |
+
}
|
137 |
+
|
138 |
+
|
139 |
+
$documentation = '<a target="_blank" class="right" href="'. trp_add_affiliate_id_to_link( $item['doc_url'] ) . '">' . __( 'Documentation', $this->text_domain ) . '</a>';
|
140 |
+
|
141 |
+
return $action . $documentation;
|
142 |
+
}
|
143 |
+
|
144 |
+
|
145 |
+
//don't generate a bulk actions dropdown by returning an empty array
|
146 |
+
function get_bulk_actions() {
|
147 |
+
return array( );//don't show bulk actions
|
148 |
+
}
|
149 |
+
|
150 |
+
|
151 |
+
|
152 |
+
/**
|
153 |
+
* Function that initializez the object properties
|
154 |
+
*/
|
155 |
+
function prepare_items() {
|
156 |
+
$columns = $this->get_columns();
|
157 |
+
$this->_column_headers = array($columns, array(), array());//the two empty arrays are hidden and sortable
|
158 |
+
$this->set_pagination_args( array( ) ); //we do not need pagination
|
159 |
+
}
|
160 |
+
|
161 |
+
|
162 |
+
/** Here start the customizations for multiple tables and our custom html **/
|
163 |
+
|
164 |
+
|
165 |
+
/**
|
166 |
+
* Show our own search box, we don't use the default search of Table listing
|
167 |
+
*/
|
168 |
+
function show_search_box(){
|
169 |
+
?>
|
170 |
+
<p class="trp-add-ons-search-box">
|
171 |
+
<input type="text" id="trp-add-ons-search-input" name="s" value="" placeholder="<?php _e( 'Search for add-ons...', $this->text_domain ); ?>">
|
172 |
+
</p>
|
173 |
+
<?php
|
174 |
+
}
|
175 |
+
|
176 |
+
/**
|
177 |
+
* Show the submit button
|
178 |
+
*/
|
179 |
+
function show_sumbit_button(){
|
180 |
+
?>
|
181 |
+
<input type="submit" class="button-primary" value="<?php _e('Save Add-ons', $this->text_domain);?>">
|
182 |
+
<?php
|
183 |
+
}
|
184 |
+
|
185 |
+
/**
|
186 |
+
* This is the function that adds more sections (tables) to the listing
|
187 |
+
*/
|
188 |
+
function add_section(){
|
189 |
+
ob_start();
|
190 |
+
?>
|
191 |
+
<div class="trp-add-ons-section">
|
192 |
+
<?php if( !empty( $this->section_header ) ): ?>
|
193 |
+
|
194 |
+
<h2><?php echo $this->section_header['title'];?></h2>
|
195 |
+
<?php if( !empty( $this->section_header ) ): ?>
|
196 |
+
<p class="description"><?php echo $this->section_header['description']; ?></p>
|
197 |
+
<?php endif; ?>
|
198 |
+
<?php endif; ?>
|
199 |
+
|
200 |
+
<?php
|
201 |
+
foreach( $this->items as $item ) {
|
202 |
+
if( $item['type'] === 'add-on' )
|
203 |
+
$this->all_addons[] = $item['slug'];
|
204 |
+
elseif( $item['type'] === 'plugin' )
|
205 |
+
$this->all_plugins[] = $item['slug'];
|
206 |
+
}
|
207 |
+
$this->display(); /* this is the function from the table listing class */
|
208 |
+
?>
|
209 |
+
</div>
|
210 |
+
<?php
|
211 |
+
|
212 |
+
$output = ob_get_contents();
|
213 |
+
|
214 |
+
ob_end_clean();
|
215 |
+
|
216 |
+
$this->sections[] = $output;
|
217 |
+
}
|
218 |
+
|
219 |
+
|
220 |
+
/**
|
221 |
+
* The function that actually displays all the tables and the surrounding html
|
222 |
+
*/
|
223 |
+
function display_addons(){
|
224 |
+
?>
|
225 |
+
<div class="wrap" id="trp-add-ons-listing">
|
226 |
+
<h1 class="trp-main-header"><?php echo $this->header['title'];?></h1>
|
227 |
+
|
228 |
+
<form id="trp-addons" method="post">
|
229 |
+
|
230 |
+
<?php $this->show_search_box(); ?>
|
231 |
+
|
232 |
+
<?php $this->show_sumbit_button(); ?>
|
233 |
+
|
234 |
+
<?php
|
235 |
+
|
236 |
+
if( !empty( $this->sections ) ){
|
237 |
+
foreach ( $this->sections as $section ){
|
238 |
+
echo $section;
|
239 |
+
}
|
240 |
+
}
|
241 |
+
?>
|
242 |
+
<?php $this->show_sumbit_button(); ?>
|
243 |
+
|
244 |
+
<!-- For plugins, we also need to ensure that the form posts back to our current page -->
|
245 |
+
<input type="hidden" name="trp_all_add_ons" value="<?php echo implode( '|' ,$this->all_addons ); ?>" />
|
246 |
+
<input type="hidden" name="trp_all_plugins" value="<?php echo implode( '|' ,$this->all_plugins ); ?>" />
|
247 |
+
<input type="hidden" name="trp_add_ons_action" value="bulk_action" />
|
248 |
+
<?php wp_nonce_field('trp_add_ons_action'); ?>
|
249 |
+
</form>
|
250 |
+
</div>
|
251 |
+
|
252 |
+
<?php
|
253 |
+
|
254 |
+
}
|
255 |
+
|
256 |
+
static function is_add_on_active( $slug ){
|
257 |
+
return apply_filters( 'trp_add_on_is_active', false, $slug );
|
258 |
+
}
|
259 |
+
}
|
260 |
+
|
261 |
+
/**
|
262 |
+
* process the actions for the Add-ons page
|
263 |
+
*/
|
264 |
+
add_action( 'admin_init', 'trp_add_ons_listing_process_actions', 1 );
|
265 |
+
function trp_add_ons_listing_process_actions(){
|
266 |
+
if (current_user_can( 'manage_options' ) && isset( $_REQUEST['trp_add_ons_action'] ) && isset($_REQUEST['_wpnonce']) && wp_verify_nonce( $_REQUEST['_wpnonce'], 'trp_add_ons_action' ) ){
|
267 |
+
|
268 |
+
if( $_REQUEST['trp_add_ons_action'] === 'bulk_action' ){
|
269 |
+
if( !empty( $_POST['trp_all_plugins'] ) && !empty( $_POST['trp_all_add_ons'] ) ){//make sure we have all the data
|
270 |
+
//sanitize all data
|
271 |
+
$all_plugins = explode( '|', sanitize_text_field( $_POST['trp_all_plugins'] ) );
|
272 |
+
$all_add_ons = explode( '|', sanitize_text_field( $_POST['trp_all_add_ons'] ) );
|
273 |
+
$plugins_to_activate = array();
|
274 |
+
if( !empty($_POST['trp_plugins']) && is_array($_POST['trp_plugins']) ){
|
275 |
+
$plugins_to_activate = array_map( 'sanitize_text_field', $_POST['trp_plugins'] );
|
276 |
+
}
|
277 |
+
$add_ons_to_activate = array();
|
278 |
+
if( !empty($_POST['trp_add_ons']) && is_array($_POST['trp_add_ons']) ){
|
279 |
+
$add_ons_to_activate = array_map( 'sanitize_text_field', $_POST['trp_add_ons'] );
|
280 |
+
}
|
281 |
+
|
282 |
+
foreach( $all_plugins as $plugin ){
|
283 |
+
if( in_array( $plugin, $plugins_to_activate ) ){
|
284 |
+
if( !is_plugin_active( $plugin ) ) {
|
285 |
+
activate_plugin( $plugin );
|
286 |
+
}
|
287 |
+
}
|
288 |
+
else{
|
289 |
+
if( is_plugin_active( $plugin ) ) {
|
290 |
+
deactivate_plugins( $plugin );
|
291 |
+
}
|
292 |
+
}
|
293 |
+
}
|
294 |
+
|
295 |
+
foreach( $all_add_ons as $add_on ){
|
296 |
+
if( in_array( $add_on, $add_ons_to_activate ) ){
|
297 |
+
do_action( 'trp_add_ons_activate', $add_on );
|
298 |
+
}
|
299 |
+
else{
|
300 |
+
do_action( 'trp_add_ons_deactivate', $add_on );
|
301 |
+
}
|
302 |
+
}
|
303 |
+
|
304 |
+
}
|
305 |
+
}
|
306 |
+
elseif ( $_REQUEST['trp_add_ons_action'] === 'activate' ){
|
307 |
+
if( !empty( $_REQUEST['trp_plugins'] ) ){//we have a plugin
|
308 |
+
$plugin_slug = sanitize_text_field( $_REQUEST['trp_plugins'] );
|
309 |
+
if( !is_plugin_active( $plugin_slug ) ) {
|
310 |
+
activate_plugin( $plugin_slug );
|
311 |
+
}
|
312 |
+
}
|
313 |
+
elseif( !empty( $_REQUEST['trp_add_ons'] ) ){//we have a add-on
|
314 |
+
do_action( 'trp_add_ons_activate', sanitize_text_field($_REQUEST['trp_add_ons']) );
|
315 |
+
}
|
316 |
+
}
|
317 |
+
elseif ( $_REQUEST['trp_add_ons_action'] === 'deactivate' ){
|
318 |
+
if( !empty( $_REQUEST['trp_plugins'] ) ){//we have a plugin
|
319 |
+
$plugin_slug = sanitize_text_field( $_REQUEST['trp_plugins'] );
|
320 |
+
if( is_plugin_active( $plugin_slug ) ) {
|
321 |
+
deactivate_plugins( $plugin_slug );
|
322 |
+
}
|
323 |
+
}
|
324 |
+
elseif( !empty( $_REQUEST['trp_add_ons'] ) ){//we have a add-on
|
325 |
+
do_action( 'trp_add_ons_deactivate', sanitize_text_field($_REQUEST['trp_add_ons']) );
|
326 |
+
}
|
327 |
+
}
|
328 |
+
|
329 |
+
wp_safe_redirect( add_query_arg( 'trp_add_ons_listing_success', 'true', admin_url( 'admin.php?page='. $_REQUEST['page'] ) ) );
|
330 |
+
}
|
331 |
+
}
|
332 |
+
|
333 |
+
/**
|
334 |
+
* Add a notice on the add-ons page if the save was successful
|
335 |
+
*/
|
336 |
+
if ( isset($_GET['trp_add_ons_listing_success']) ){
|
337 |
+
if( class_exists('TRP_Add_General_Notices') ) {
|
338 |
+
new TRP_Add_General_Notices('trp_add_ons_listing_success',
|
339 |
+
sprintf(__('%1$sAdd-ons settings saved successfully%2$s', 'translatepress-multilingual'), "<p>", "</p>"),
|
340 |
+
'updated notice is-dismissible');
|
341 |
+
}
|
342 |
+
}
|
class-translate-press.php
CHANGED
@@ -58,7 +58,7 @@ class TRP_Translate_Press{
|
|
58 |
define( 'TRP_PLUGIN_URL', plugin_dir_url( __FILE__ ) );
|
59 |
define( 'TRP_PLUGIN_BASE', plugin_basename( __DIR__ . '/index.php' ) );
|
60 |
define( 'TRP_PLUGIN_SLUG', 'translatepress-multilingual' );
|
61 |
-
define( 'TRP_PLUGIN_VERSION', '2.0.
|
62 |
|
63 |
wp_cache_add_non_persistent_groups(array('trp'));
|
64 |
|
@@ -116,6 +116,7 @@ class TRP_Translate_Press{
|
|
116 |
require_once TRP_PLUGIN_DIR . 'includes/class-search.php';
|
117 |
require_once TRP_PLUGIN_DIR . 'includes/class-install-plugins.php';
|
118 |
require_once TRP_PLUGIN_DIR . 'includes/class-reviews.php';
|
|
|
119 |
if ( did_action( 'elementor/loaded' ) )
|
120 |
require_once TRP_PLUGIN_DIR . 'includes/class-elementor-language-for-blocks.php';
|
121 |
if ( defined( 'WPB_VC_VERSION' ) ) {
|
@@ -168,13 +169,9 @@ class TRP_Translate_Press{
|
|
168 |
|
169 |
// the names of your product should match the download names in EDD exactly
|
170 |
$trp_all_pro_addons = array(
|
171 |
-
"
|
172 |
-
"
|
173 |
-
"
|
174 |
-
"tp-add-on-navigation-based-on-language" => "Navigation Based on Language",
|
175 |
-
"tp-add-on-seo-pack" => "SEO Pack",
|
176 |
-
"tp-add-on-translator-accounts" => "Translator Accounts",
|
177 |
-
"tp-add-on-deepl" => "DeepL Automatic Translation",
|
178 |
);
|
179 |
$active_plugins = get_option('active_plugins');
|
180 |
foreach ( $trp_all_pro_addons as $trp_pro_addon_folder => $trp_pro_addon_name ){
|
@@ -184,6 +181,9 @@ class TRP_Translate_Press{
|
|
184 |
}
|
185 |
}
|
186 |
}
|
|
|
|
|
|
|
187 |
}
|
188 |
|
189 |
/**
|
@@ -223,6 +223,7 @@ class TRP_Translate_Press{
|
|
223 |
$this->loader->add_filter( 'trp_machine_translation_sanitize_settings', $this->error_manager, 'clear_disable_machine_translation_notification_from_db', 10, 1 );
|
224 |
$this->loader->add_filter( 'trp_error_manager_page_output', $this->error_manager, 'show_instructions_on_how_to_fix', 7, 1 );
|
225 |
$this->loader->add_filter( 'trp_error_manager_page_output', $this->error_manager, 'output_db_errors', 10, 1 );
|
|
|
226 |
|
227 |
$this->loader->add_action( 'wp_ajax_nopriv_trp_get_translations_regular', $this->editor_api_regular_strings, 'get_translations' );
|
228 |
|
@@ -246,6 +247,7 @@ class TRP_Translate_Press{
|
|
246 |
|
247 |
$this->loader->add_action( 'admin_menu', $this->upgrade, 'register_menu_page' );
|
248 |
$this->loader->add_action( 'admin_init', $this->upgrade, 'show_admin_notice' );
|
|
|
249 |
$this->loader->add_action( 'admin_enqueue_scripts', $this->upgrade, 'enqueue_update_script', 10, 1 );
|
250 |
$this->loader->add_action( 'wp_ajax_trp_update_database', $this->upgrade, 'trp_update_database' );
|
251 |
|
58 |
define( 'TRP_PLUGIN_URL', plugin_dir_url( __FILE__ ) );
|
59 |
define( 'TRP_PLUGIN_BASE', plugin_basename( __DIR__ . '/index.php' ) );
|
60 |
define( 'TRP_PLUGIN_SLUG', 'translatepress-multilingual' );
|
61 |
+
define( 'TRP_PLUGIN_VERSION', '2.0.5' );
|
62 |
|
63 |
wp_cache_add_non_persistent_groups(array('trp'));
|
64 |
|
116 |
require_once TRP_PLUGIN_DIR . 'includes/class-search.php';
|
117 |
require_once TRP_PLUGIN_DIR . 'includes/class-install-plugins.php';
|
118 |
require_once TRP_PLUGIN_DIR . 'includes/class-reviews.php';
|
119 |
+
require_once TRP_PLUGIN_DIR . 'assets/lib/tp-add-ons-listing/tp-add-ons-listing.php';
|
120 |
if ( did_action( 'elementor/loaded' ) )
|
121 |
require_once TRP_PLUGIN_DIR . 'includes/class-elementor-language-for-blocks.php';
|
122 |
if ( defined( 'WPB_VC_VERSION' ) ) {
|
169 |
|
170 |
// the names of your product should match the download names in EDD exactly
|
171 |
$trp_all_pro_addons = array(
|
172 |
+
"translatepress-business" => "TranslatePress Business",
|
173 |
+
"translatepress-developer" => "TranslatePress Developer",
|
174 |
+
"translatepress-personal" => "TranslatePress Personal",
|
|
|
|
|
|
|
|
|
175 |
);
|
176 |
$active_plugins = get_option('active_plugins');
|
177 |
foreach ( $trp_all_pro_addons as $trp_pro_addon_folder => $trp_pro_addon_name ){
|
181 |
}
|
182 |
}
|
183 |
}
|
184 |
+
//for the dev version simulate PRO version active
|
185 |
+
if( ( defined('TRANSLATE_PRESS') && TRANSLATE_PRESS === 'TranslatePress - Dev' ) )
|
186 |
+
$this->active_pro_addons["translatepress-business"] = "TranslatePress Business";
|
187 |
}
|
188 |
|
189 |
/**
|
223 |
$this->loader->add_filter( 'trp_machine_translation_sanitize_settings', $this->error_manager, 'clear_disable_machine_translation_notification_from_db', 10, 1 );
|
224 |
$this->loader->add_filter( 'trp_error_manager_page_output', $this->error_manager, 'show_instructions_on_how_to_fix', 7, 1 );
|
225 |
$this->loader->add_filter( 'trp_error_manager_page_output', $this->error_manager, 'output_db_errors', 10, 1 );
|
226 |
+
$this->loader->add_action('load-admin_page_trp_error_manager', $this->error_manager, 'disable_error_after_click_link', 10);
|
227 |
|
228 |
$this->loader->add_action( 'wp_ajax_nopriv_trp_get_translations_regular', $this->editor_api_regular_strings, 'get_translations' );
|
229 |
|
247 |
|
248 |
$this->loader->add_action( 'admin_menu', $this->upgrade, 'register_menu_page' );
|
249 |
$this->loader->add_action( 'admin_init', $this->upgrade, 'show_admin_notice' );
|
250 |
+
$this->loader->add_action( 'admin_init', $this->upgrade, 'show_notification_about_add_ons_removal' );
|
251 |
$this->loader->add_action( 'admin_enqueue_scripts', $this->upgrade, 'enqueue_update_script', 10, 1 );
|
252 |
$this->loader->add_action( 'wp_ajax_trp_update_database', $this->upgrade, 'trp_update_database' );
|
253 |
|
includes/class-error-manager.php
CHANGED
@@ -59,6 +59,7 @@ class TRP_Error_Manager{
|
|
59 |
$error_message = wp_kses( __('Automatic translation has been disabled.','translatepress-multilingual'), array('strong' => array() ) ) . ' ' . $error_message ;
|
60 |
}
|
61 |
if ( !isset( $option['notifications']['disable_automatic_translations'] ) ) {
|
|
|
62 |
$option['notifications']['disable_automatic_translations' ] = array(
|
63 |
// we need a unique ID so that after the notice is dismissed and this type of error appears again, it's not already marked as dismissed for that user
|
64 |
'notification_id' => 'disable_automatic_translations' . time(),
|
@@ -106,9 +107,25 @@ class TRP_Error_Manager{
|
|
106 |
if ( $mt_settings['machine-translation'] === 'yes' ){
|
107 |
$this->clear_notification_from_db('disable_automatic_translations', null);
|
108 |
}
|
|
|
109 |
return $mt_settings;
|
110 |
}
|
111 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
112 |
/**
|
113 |
*
|
114 |
* Hooked to admin_init
|
59 |
$error_message = wp_kses( __('Automatic translation has been disabled.','translatepress-multilingual'), array('strong' => array() ) ) . ' ' . $error_message ;
|
60 |
}
|
61 |
if ( !isset( $option['notifications']['disable_automatic_translations'] ) ) {
|
62 |
+
|
63 |
$option['notifications']['disable_automatic_translations' ] = array(
|
64 |
// we need a unique ID so that after the notice is dismissed and this type of error appears again, it's not already marked as dismissed for that user
|
65 |
'notification_id' => 'disable_automatic_translations' . time(),
|
107 |
if ( $mt_settings['machine-translation'] === 'yes' ){
|
108 |
$this->clear_notification_from_db('disable_automatic_translations', null);
|
109 |
}
|
110 |
+
|
111 |
return $mt_settings;
|
112 |
}
|
113 |
|
114 |
+
/**
|
115 |
+
* Disable the notification after the link is clicked.
|
116 |
+
*/
|
117 |
+
|
118 |
+
|
119 |
+
public function disable_error_after_click_link(){
|
120 |
+
|
121 |
+
$link = $_GET['page'];
|
122 |
+
|
123 |
+
if($link = 'trp_error_manager') {
|
124 |
+
$this->clear_notification_from_db('disable_automatic_translations', null);
|
125 |
+
}
|
126 |
+
|
127 |
+
}
|
128 |
+
|
129 |
/**
|
130 |
*
|
131 |
* Hooked to admin_init
|
includes/class-machine-translation-tab.php
CHANGED
@@ -111,17 +111,24 @@ class TRP_Machine_Translation_Tab {
|
|
111 |
if( empty( $this->settings['trp_machine_translation_settings']['translation-engine'] ) )
|
112 |
$value = $default;
|
113 |
else {
|
114 |
-
$
|
|
|
|
|
|
|
|
|
115 |
|
116 |
-
|
117 |
-
|
|
|
|
|
|
|
118 |
}
|
119 |
|
120 |
return new $value( $this->settings );
|
121 |
}
|
122 |
|
123 |
public function add_upsell_filter(){
|
124 |
-
if( !class_exists( 'TRP_DeepL' ) )
|
125 |
add_filter( 'trp_machine_translation_engines', [ $this, 'translation_engines_upsell' ], 20 );
|
126 |
}
|
127 |
|
111 |
if( empty( $this->settings['trp_machine_translation_settings']['translation-engine'] ) )
|
112 |
$value = $default;
|
113 |
else {
|
114 |
+
$deepl_class_name = class_exists('TRP_IN_Deepl_Machine_Translator' ) ? 'TRP_IN_Deepl_Machine_Translator' : 'TRP_Deepl_Machine_Translator';
|
115 |
+
$existing_engines = apply_filters('trp_automatic_translation_engines_classes', array(
|
116 |
+
'google_translate_v2' => 'TRP_Google_Translate_V2_Machine_Translator',
|
117 |
+
'deepl' => $deepl_class_name
|
118 |
+
));
|
119 |
|
120 |
+
$value = $existing_engines[$this->settings['trp_machine_translation_settings']['translation-engine']];
|
121 |
+
|
122 |
+
if( !class_exists( $value ) ) {
|
123 |
+
$value = $default; //something is wrong if it reaches this
|
124 |
+
}
|
125 |
}
|
126 |
|
127 |
return new $value( $this->settings );
|
128 |
}
|
129 |
|
130 |
public function add_upsell_filter(){
|
131 |
+
if( !class_exists( 'TRP_DeepL' ) && !class_exists( 'TRP_IN_DeepL' ) )
|
132 |
add_filter( 'trp_machine_translation_engines', [ $this, 'translation_engines_upsell' ], 20 );
|
133 |
}
|
134 |
|
includes/class-machine-translator.php
CHANGED
@@ -121,9 +121,11 @@ class TRP_Machine_Translator {
|
|
121 |
*/
|
122 |
public function automatic_translate_error_check( $machine_translator, $translation_engine, $api_key ) {
|
123 |
|
124 |
-
|
125 |
-
|
126 |
-
|
|
|
|
|
127 |
|
128 |
$is_error = false;
|
129 |
$return_message = '';
|
@@ -150,6 +152,7 @@ class TRP_Machine_Translator {
|
|
150 |
$return_message = __( 'Please enter your DeepL API key.', 'translatepress-multilingual' );
|
151 |
} else {
|
152 |
// Perform test.
|
|
|
153 |
$response = $machine_translator->test_request();
|
154 |
$code = wp_remote_retrieve_response_code( $response );
|
155 |
if ( 200 !== $code && method_exists( 'TRP_DeepL', 'deepl_response_codes' ) ) {
|
121 |
*/
|
122 |
public function automatic_translate_error_check( $machine_translator, $translation_engine, $api_key ) {
|
123 |
|
124 |
+
//@TODO need to find a better solution as the code bellow does not work
|
125 |
+
|
126 |
+
// if ($this->correct_api_key!=null){
|
127 |
+
// return $this->correct_api_key;
|
128 |
+
// }
|
129 |
|
130 |
$is_error = false;
|
131 |
$return_message = '';
|
152 |
$return_message = __( 'Please enter your DeepL API key.', 'translatepress-multilingual' );
|
153 |
} else {
|
154 |
// Perform test.
|
155 |
+
$is_error= false;
|
156 |
$response = $machine_translator->test_request();
|
157 |
$code = wp_remote_retrieve_response_code( $response );
|
158 |
if ( 200 !== $code && method_exists( 'TRP_DeepL', 'deepl_response_codes' ) ) {
|
includes/class-upgrade.php
CHANGED
@@ -741,4 +741,42 @@ class TRP_Upgrade {
|
|
741 |
return true;
|
742 |
}
|
743 |
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
744 |
}
|
741 |
return true;
|
742 |
}
|
743 |
}
|
744 |
+
|
745 |
+
|
746 |
+
/**
|
747 |
+
*
|
748 |
+
* Hooked to admin_init
|
749 |
+
*/
|
750 |
+
public function show_notification_about_add_ons_removal(){
|
751 |
+
|
752 |
+
//if it's triggered in the frontend we need this include
|
753 |
+
if( !function_exists('is_plugin_active') )
|
754 |
+
include_once( ABSPATH . 'wp-admin/includes/plugin.php' );
|
755 |
+
|
756 |
+
$old_addon_list = array(
|
757 |
+
'tp-add-on-automatic-language-detection/tp-automatic-language-detection.php',
|
758 |
+
'tp-add-on-browse-as-other-roles/tp-browse-as-other-role.php',
|
759 |
+
'tp-add-on-deepl/index.php',
|
760 |
+
'tp-add-on-extra-languages/tp-extra-languages.php',
|
761 |
+
'tp-add-on-navigation-based-on-language/tp-navigation-based-on-language.php',
|
762 |
+
'tp-add-on-seo-pack/tp-seo-pack.php',
|
763 |
+
'tp-add-on-translator-accounts/index.php',
|
764 |
+
);
|
765 |
+
|
766 |
+
foreach( $old_addon_list as $addon_slug ) {
|
767 |
+
if (is_plugin_active($addon_slug)) {
|
768 |
+
$notifications = TRP_Plugin_Notifications::get_instance();
|
769 |
+
|
770 |
+
$notification_id = 'trp_add_ons_removal';
|
771 |
+
|
772 |
+
$message = '<p style="padding-right:30px;">' . __( 'All individual TranslatePress add-on plugins have been discontinued and have been replaced with new Personal, Business and Developer versions of TranslatePress. Please log into the account page at <a href="https://translatepress.com/account/" target="_blank">translatepress.com</a> and download the new plugin and install it. Individual Add-ons will not receive updates anymore' , 'translatepress-multilingual' ) . '</p>';
|
773 |
+
//make sure to use the trp_dismiss_admin_notification arg
|
774 |
+
$message .= '<a href="' . add_query_arg(array('trp_dismiss_admin_notification' => $notification_id)) . '" type="button" class="notice-dismiss" style="text-decoration: none;z-index:100;"><span class="screen-reader-text">' . esc_html__('Dismiss this notice.', 'translatepress-multilingual') . '</span></a>';
|
775 |
+
|
776 |
+
$notifications->add_notification($notification_id, $message, 'trp-notice trp-narrow notice error is-dismissible', true, array('translate-press'), true);
|
777 |
+
break;
|
778 |
+
}
|
779 |
+
}
|
780 |
+
}
|
781 |
+
|
782 |
}
|
includes/compatibility-functions.php
CHANGED
@@ -1530,3 +1530,33 @@ if( defined( 'PMS_VERSION' ) )
|
|
1530 |
|
1531 |
if( function_exists( 'wppb_plugin_init' ) )
|
1532 |
add_filter( 'wppb_restricted_post_redirect_url', 'trp_add_language_to_pms_wppb_restriction_redirect_url' );
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1530 |
|
1531 |
if( function_exists( 'wppb_plugin_init' ) )
|
1532 |
add_filter( 'wppb_restricted_post_redirect_url', 'trp_add_language_to_pms_wppb_restriction_redirect_url' );
|
1533 |
+
|
1534 |
+
/**
|
1535 |
+
* Compatibility with wp-Typography
|
1536 |
+
* The $filters array is set to empty, so it does not affect the strings anymore in the function trp_remove_filters_wp_typography.
|
1537 |
+
* Then it is reset with a higher priority by calling the function process() inside the trp_add_filters_wp_typography function.
|
1538 |
+
*/
|
1539 |
+
|
1540 |
+
if(class_exists('WP_Typography')) {
|
1541 |
+
|
1542 |
+
add_filter('typo_content_filters', 'trp_remove_filters_wp_typography');
|
1543 |
+
add_filter( 'trp_translated_html', 'trp_add_filters_wp_typography', 9999, 1 );
|
1544 |
+
}
|
1545 |
+
|
1546 |
+
function trp_remove_filters_wp_typography($filters){
|
1547 |
+
$filters = [];
|
1548 |
+
|
1549 |
+
return $filters;
|
1550 |
+
}
|
1551 |
+
|
1552 |
+
|
1553 |
+
|
1554 |
+
function trp_add_filters_wp_typography($final_html){
|
1555 |
+
$wpt= WP_Typography::get_instance();
|
1556 |
+
|
1557 |
+
$final_html = $wpt->process($final_html, $is_title = false, $force_feed = false, null );
|
1558 |
+
|
1559 |
+
return $final_html;
|
1560 |
+
|
1561 |
+
}
|
1562 |
+
|
includes/functions.php
CHANGED
@@ -493,12 +493,18 @@ function trp_is_paid_version() {
|
|
493 |
|
494 |
//list of class names
|
495 |
$addons = apply_filters( 'trp_paid_addons', array(
|
496 |
-
'
|
497 |
-
'
|
498 |
-
'
|
499 |
-
'
|
500 |
-
'
|
501 |
-
'
|
|
|
|
|
|
|
|
|
|
|
|
|
502 |
) );
|
503 |
|
504 |
foreach ( $addons as $className ) {
|
493 |
|
494 |
//list of class names
|
495 |
$addons = apply_filters( 'trp_paid_addons', array(
|
496 |
+
'TRP_IN_Automatic_Language_Detection',
|
497 |
+
'TRP_IN_Browse_as_other_Role',
|
498 |
+
'TRP_IN_Extra_Languages',
|
499 |
+
'TRP_IN_Navigation_Based_on_Language',
|
500 |
+
'TRP_IN_Seo_Pack',
|
501 |
+
'TRP_IN_Translator_Accounts',
|
502 |
+
'TRP_Automatic_Language_Detection',
|
503 |
+
'TRP_Browse_as_other_Role',
|
504 |
+
'TRP_Extra_Languages',
|
505 |
+
'TRP_Navigation_Based_on_Language',
|
506 |
+
'TRP_Seo_Pack',
|
507 |
+
'TRP_Translator_Accounts',
|
508 |
) );
|
509 |
|
510 |
foreach ( $addons as $className ) {
|
index.php
CHANGED
@@ -3,7 +3,7 @@
|
|
3 |
Plugin Name: TranslatePress - Multilingual
|
4 |
Plugin URI: https://translatepress.com/
|
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.0.
|
7 |
Author: Cozmoslabs, Razvan Mocanu, Madalin Ungureanu, Cristophor Hurduban
|
8 |
Author URI: https://cozmoslabs.com/
|
9 |
Text Domain: translatepress-multilingual
|
@@ -61,3 +61,8 @@ function trp_run_translatepress_hooks(){
|
|
61 |
function trp_translatepress_disabled_notice(){
|
62 |
echo '<div class="notice notice-error"><p>' . wp_kses( sprintf( __( '<strong>TranslatePress</strong> requires at least PHP version 5.6.20+ to run. It is the <a href="%s">minimum requirement of the latest WordPress version</a>. Please contact your server administrator to update your PHP version.','translatepress-multilingual' ), 'https://wordpress.org/about/requirements/' ), array( 'a' => array( 'href' => array() ), 'strong' => array() ) ) . '</p></div>';
|
63 |
}
|
|
|
|
|
|
|
|
|
|
3 |
Plugin Name: TranslatePress - Multilingual
|
4 |
Plugin URI: https://translatepress.com/
|
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.0.5
|
7 |
Author: Cozmoslabs, Razvan Mocanu, Madalin Ungureanu, Cristophor Hurduban
|
8 |
Author URI: https://cozmoslabs.com/
|
9 |
Text Domain: translatepress-multilingual
|
61 |
function trp_translatepress_disabled_notice(){
|
62 |
echo '<div class="notice notice-error"><p>' . wp_kses( sprintf( __( '<strong>TranslatePress</strong> requires at least PHP version 5.6.20+ to run. It is the <a href="%s">minimum requirement of the latest WordPress version</a>. Please contact your server administrator to update your PHP version.','translatepress-multilingual' ), 'https://wordpress.org/about/requirements/' ), array( 'a' => array( 'href' => array() ), 'strong' => array() ) ) . '</p></div>';
|
63 |
}
|
64 |
+
|
65 |
+
|
66 |
+
//This is for the DEV version
|
67 |
+
if( file_exists(plugin_dir_path( __FILE__ ) . '/index-dev.php') )
|
68 |
+
include_once( plugin_dir_path( __FILE__ ) . '/index-dev.php');
|
languages/translatepress-multilingual.catalog.php
CHANGED
@@ -1,36 +1,13 @@
|
|
1 |
<?php __("", "translatepress-multilingual"); ?>
|
2 |
-
<?php __("
|
3 |
-
<?php __("
|
4 |
-
<?php __("
|
5 |
<?php __("<strong>TranslatePress</strong> requires at least PHP version 5.6.20+ to run. It is the <a href=\"%s\">minimum requirement of the latest WordPress version</a>. Please contact your server administrator to update your PHP version.", "translatepress-multilingual"); ?>
|
6 |
-
<?php __("First by browser language, then IP address (recommended)", "translatepress-multilingual"); ?>
|
7 |
-
<?php __("First by IP address, then by browser language", "translatepress-multilingual"); ?>
|
8 |
-
<?php __("Only by browser language", "translatepress-multilingual"); ?>
|
9 |
-
<?php __("Only by IP address", "translatepress-multilingual"); ?>
|
10 |
-
<?php __("WARNING. Cannot determine your language preference based on your current IP.<br>This is most likely because the website is on a local environment.", "translatepress-multilingual"); ?>
|
11 |
-
<?php __("TranslatePress Settings", "translatepress-multilingual"); ?>
|
12 |
-
<?php __("License Key", "translatepress-multilingual"); ?>
|
13 |
-
<?php __("Enter your license key.", "translatepress-multilingual"); ?>
|
14 |
-
<?php __("Activate License", "translatepress-multilingual"); ?>
|
15 |
-
<?php __("Deactivate License", "translatepress-multilingual"); ?>
|
16 |
-
<?php __("Method of language detection", "translatepress-multilingual"); ?>
|
17 |
-
<?php __("Select how the language should be detected for first time visitors.<br>The visitor's last displayed language will be remembered through cookies.", "translatepress-multilingual"); ?>
|
18 |
-
<?php __("Language", "translatepress-multilingual"); ?>
|
19 |
-
<?php __("Code", "translatepress-multilingual"); ?>
|
20 |
-
<?php __("Slug", "translatepress-multilingual"); ?>
|
21 |
-
<?php __("Active", "translatepress-multilingual"); ?>
|
22 |
-
<?php __("Are you sure you want to remove this language?", "translatepress-multilingual"); ?>
|
23 |
-
<?php __("Remove", "translatepress-multilingual"); ?>
|
24 |
-
<?php __("Choose...", "translatepress-multilingual"); ?>
|
25 |
-
<?php __("Add", "translatepress-multilingual"); ?>
|
26 |
-
<?php __("Select the languages you wish to make your website available in.", "translatepress-multilingual"); ?>
|
27 |
-
<?php __("Post Slug", "translatepress-multilingual"); ?>
|
28 |
-
<?php __(" TranslatePress Settings", "translatepress-multilingual"); ?>
|
29 |
-
<?php __("Translator", "translatepress-multilingual"); ?>
|
30 |
-
<?php __("Allow this user to translate the website.", "translatepress-multilingual"); ?>
|
31 |
<?php __("Advanced", "translatepress-multilingual"); ?>
|
32 |
<?php __("Yes", "translatepress-multilingual"); ?>
|
33 |
<?php __("Are you sure you want to remove this item?", "translatepress-multilingual"); ?>
|
|
|
|
|
34 |
<?php __("Select...", "translatepress-multilingual"); ?>
|
35 |
<?php __("Your license key expired on %s.", "translatepress-multilingual"); ?>
|
36 |
<?php __("Your license key has been disabled.", "translatepress-multilingual"); ?>
|
@@ -63,6 +40,7 @@
|
|
63 |
<?php __("Plan C.", "translatepress-multilingual"); ?>
|
64 |
<?php __("If your problem still isn't solved, try asking your hosting about your errors. The most common issue is missing permissions for the SQL user, such as the Create Tables permission.", "translatepress-multilingual"); ?>
|
65 |
<?php __("Could not install. Try again from <a href=\"%s\" >Plugins Dashboard.</a>", "translatepress-multilingual"); ?>
|
|
|
66 |
<?php __("Automatic Translation", "translatepress-multilingual"); ?>
|
67 |
<?php __("DeepL", "translatepress-multilingual"); ?>
|
68 |
<?php __("Unsupported languages", "translatepress-multilingual"); ?>
|
@@ -98,6 +76,7 @@
|
|
98 |
<?php __("Dark", "translatepress-multilingual"); ?>
|
99 |
<?php __("Light", "translatepress-multilingual"); ?>
|
100 |
<?php __("Install & Activate", "translatepress-multilingual"); ?>
|
|
|
101 |
<?php __("Current Language", "translatepress-multilingual"); ?>
|
102 |
<?php __("General", "translatepress-multilingual"); ?>
|
103 |
<?php __("Translate Site", "translatepress-multilingual"); ?>
|
@@ -210,32 +189,46 @@
|
|
210 |
<?php __("If the page does not redirect automatically", "translatepress-multilingual"); ?>
|
211 |
<?php __("click here", "translatepress-multilingual"); ?>
|
212 |
<?php __("Recreated original strings table.", "translatepress-multilingual"); ?>
|
|
|
213 |
<?php __("<strong>TranslatePress</strong> requires <strong><a href=\"http://php.net/manual/en/book.mbstring.php\">Multibyte String PHP library</a></strong>. Please contact your server administrator to install it on your server.", "translatepress-multilingual"); ?>
|
214 |
<?php __("Detected long query limitation on WPEngine hosting. Some large pages may appear untranslated. You can remove limitation by adding the following to your site’s wp-config.php: define( 'WPE_GOVERNOR', false ); ", "translatepress-multilingual"); ?>
|
215 |
-
<?php __("
|
|
|
|
|
|
|
216 |
<?php __("These addons extend your translation plugin and are available in the Developer, Business and Personal plans.", "translatepress-multilingual"); ?>
|
217 |
-
<?php __("SEO
|
218 |
-
<?php __("
|
219 |
-
<?php __("
|
|
|
|
|
220 |
<?php __("These addons extend your translation plugin and are available in the Business and Developer plans.", "translatepress-multilingual"); ?>
|
|
|
221 |
<?php __("Automatically translate your website through the DeepL API.", "translatepress-multilingual"); ?>
|
222 |
-
<?php __("Automatically redirects new visitors to their preferred language based on browser settings or IP address
|
223 |
-
<?php __("
|
224 |
-
<?php __("
|
|
|
|
|
|
|
225 |
<?php __("Configure different menu items for different languages.", "translatepress-multilingual"); ?>
|
226 |
-
<?php __("Recommended Plugins
|
227 |
<?php __("A short list of plugins you can use to extend your website.", "translatepress-multilingual"); ?>
|
|
|
228 |
<?php __("Capture more user information on the registration form with the help of Profile Builder's custom user profile fields and/or add an Email Confirmation process to verify your customers accounts.", "translatepress-multilingual"); ?>
|
229 |
-
<?php __("
|
230 |
-
<?php __("Installing...", "translatepress-multilingual"); ?>
|
231 |
<?php __("Accept user payments, create subscription plans and restrict content on your membership site.", "translatepress-multilingual"); ?>
|
232 |
<?php __("TranslatePress Advanced Settings", "translatepress-multilingual"); ?>
|
233 |
<?php __("Save Changes", "translatepress-multilingual"); ?>
|
234 |
<?php __("TranslatePress Errors", "translatepress-multilingual"); ?>
|
235 |
<?php __("There are no logged errors.", "translatepress-multilingual"); ?>
|
236 |
<?php __("If you purchased a premium version, first install and activate any of the <a href=\"%s\">Advanced or Pro Addons</a>. After this you will be prompted with an input to enter your license key.", "translatepress-multilingual"); ?>
|
|
|
|
|
|
|
237 |
<?php __("Your license is invalid", "translatepress-multilingual"); ?>
|
238 |
<?php __("Active on this site", "translatepress-multilingual"); ?>
|
|
|
239 |
<?php __("TranslatePress Automatic Translation", "translatepress-multilingual"); ?>
|
240 |
<?php __("Enable Automatic Translation", "translatepress-multilingual"); ?>
|
241 |
<?php __("No", "translatepress-multilingual"); ?>
|
@@ -256,12 +249,18 @@
|
|
256 |
<?php __("Today's character count:", "translatepress-multilingual"); ?>
|
257 |
<?php __("Log machine translation queries.", "translatepress-multilingual"); ?>
|
258 |
<?php __("Only enable for testing purposes. Can impact performance.<br>All records are stored in the wp_trp_machine_translation_log database table. Use a plugin like <a href=\"https://wordpress.org/plugins/wp-data-access/\">WP Data Access</a> to browse the logs or directly from your database manager (PHPMyAdmin, etc.)", "translatepress-multilingual"); ?>
|
|
|
|
|
|
|
|
|
|
|
|
|
259 |
<?php __("Select the language you wish to make your website available in.", "translatepress-multilingual"); ?>
|
260 |
<?php __("To add <strong>more than two languages</strong> and support for SEO Title, Description, Slug and more check out <a href=\"%1$s\" target=\"_blank\" title=\"%2$s\">%2$s</a>.", "translatepress-multilingual"); ?>
|
261 |
<?php __("TranslatePress Advanced Add-ons", "translatepress-multilingual"); ?>
|
262 |
<?php __("Not only are you getting extra features and premium support, but you also help fund the future development of TranslatePress.", "translatepress-multilingual"); ?>
|
263 |
<?php __("TranslatePress Advanced Add-ons", "translatepress-multilingual"); ?>
|
264 |
-
<?php __("To add <strong>more than two languages</strong>
|
265 |
<?php __("Default Language", "translatepress-multilingual"); ?>
|
266 |
<?php __("Select the original language of your content.", "translatepress-multilingual"); ?>
|
267 |
<?php __("WARNING. Changing the default language will invalidate existing translations.", "translatepress-multilingual"); ?>
|
@@ -300,29 +299,7 @@
|
|
300 |
<?php __("Remove duplicate original strings", "translatepress-multilingual"); ?>
|
301 |
<?php __("TranslatePress Database Updater", "translatepress-multilingual"); ?>
|
302 |
<?php __("Updating TranslatePress tables", "translatepress-multilingual"); ?>
|
303 |
-
<?php __("
|
304 |
-
<?php __("Taxonomy Slugs", "translatepress-multilingual"); ?>
|
305 |
-
<?php __("Search Taxonomy Slugs", "translatepress-multilingual"); ?>
|
306 |
-
<?php __("Taxonomy Slug", "translatepress-multilingual"); ?>
|
307 |
-
<?php __("Translation", "translatepress-multilingual"); ?>
|
308 |
-
<?php __("Term Slugs", "translatepress-multilingual"); ?>
|
309 |
-
<?php __("Search Term Slugs", "translatepress-multilingual"); ?>
|
310 |
-
<?php __("Term Slug", "translatepress-multilingual"); ?>
|
311 |
-
<?php __("Taxonomy", "translatepress-multilingual"); ?>
|
312 |
-
<?php __("Filter by Taxonomy", "translatepress-multilingual"); ?>
|
313 |
-
<?php __("Post Slugs", "translatepress-multilingual"); ?>
|
314 |
-
<?php __("Search Post Slugs", "translatepress-multilingual"); ?>
|
315 |
-
<?php __("Post ID", "translatepress-multilingual"); ?>
|
316 |
-
<?php __("Post Type", "translatepress-multilingual"); ?>
|
317 |
-
<?php __("Filter by Post Type", "translatepress-multilingual"); ?>
|
318 |
-
<?php __("Published", "translatepress-multilingual"); ?>
|
319 |
-
<?php __("Any Post Status", "translatepress-multilingual"); ?>
|
320 |
-
<?php __("Post Type Base Slugs", "translatepress-multilingual"); ?>
|
321 |
-
<?php __("Post Type Base Slug", "translatepress-multilingual"); ?>
|
322 |
-
<?php __("Search Post Type Base Slugs", "translatepress-multilingual"); ?>
|
323 |
-
<?php __("WooCommerce Slugs", "translatepress-multilingual"); ?>
|
324 |
-
<?php __("WooCommerce Slug", "translatepress-multilingual"); ?>
|
325 |
-
<?php __("Search WooCommerce Slugs", "translatepress-multilingual"); ?>
|
326 |
<?php __("Date format", "translatepress-multilingual"); ?>
|
327 |
<?php __("Customize the date formatting per each translated language.<br/>Leave empty for default WP setting or see more information <a href=\"https://wordpress.org/support/article/formatting-date-and-time/\" title=\"Formatting Date and Time\" target=\"_blank\">here</a>", "translatepress-multilingual"); ?>
|
328 |
<?php __("Language name", "translatepress-multilingual"); ?>
|
@@ -423,3 +400,53 @@
|
|
423 |
<?php __("Click to sort strings by this column", "translatepress-multilingual"); ?>
|
424 |
<?php __("Language in which the translation status filter applies. Leave unselected for the translation status to apply to ANY language", "translatepress-multilingual"); ?>
|
425 |
<?php __("String Translation Editor", "translatepress-multilingual"); ?>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
<?php __("", "translatepress-multilingual"); ?>
|
2 |
+
<?php __("Please update the TranslatePress - Multilingual plugin to version 2.0.5 at least for %s to work properly", "translatepress-multilingual"); ?>
|
3 |
+
<?php __("Please install and activate the TranslatePress - Multilingual plugin", "translatepress-multilingual"); ?>
|
4 |
+
<?php __("This TranslatePress add-on has been migrated to the main plugin and is no longer used. You can delete it.", "translatepress-multilingual"); ?>
|
5 |
<?php __("<strong>TranslatePress</strong> requires at least PHP version 5.6.20+ to run. It is the <a href=\"%s\">minimum requirement of the latest WordPress version</a>. Please contact your server administrator to update your PHP version.", "translatepress-multilingual"); ?>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
6 |
<?php __("Advanced", "translatepress-multilingual"); ?>
|
7 |
<?php __("Yes", "translatepress-multilingual"); ?>
|
8 |
<?php __("Are you sure you want to remove this item?", "translatepress-multilingual"); ?>
|
9 |
+
<?php __("Remove", "translatepress-multilingual"); ?>
|
10 |
+
<?php __("Add", "translatepress-multilingual"); ?>
|
11 |
<?php __("Select...", "translatepress-multilingual"); ?>
|
12 |
<?php __("Your license key expired on %s.", "translatepress-multilingual"); ?>
|
13 |
<?php __("Your license key has been disabled.", "translatepress-multilingual"); ?>
|
40 |
<?php __("Plan C.", "translatepress-multilingual"); ?>
|
41 |
<?php __("If your problem still isn't solved, try asking your hosting about your errors. The most common issue is missing permissions for the SQL user, such as the Create Tables permission.", "translatepress-multilingual"); ?>
|
42 |
<?php __("Could not install. Try again from <a href=\"%s\" >Plugins Dashboard.</a>", "translatepress-multilingual"); ?>
|
43 |
+
<?php __("Active", "translatepress-multilingual"); ?>
|
44 |
<?php __("Automatic Translation", "translatepress-multilingual"); ?>
|
45 |
<?php __("DeepL", "translatepress-multilingual"); ?>
|
46 |
<?php __("Unsupported languages", "translatepress-multilingual"); ?>
|
76 |
<?php __("Dark", "translatepress-multilingual"); ?>
|
77 |
<?php __("Light", "translatepress-multilingual"); ?>
|
78 |
<?php __("Install & Activate", "translatepress-multilingual"); ?>
|
79 |
+
<?php __("Error! Duplicate URL slug values.", "translatepress-multilingual"); ?>
|
80 |
<?php __("Current Language", "translatepress-multilingual"); ?>
|
81 |
<?php __("General", "translatepress-multilingual"); ?>
|
82 |
<?php __("Translate Site", "translatepress-multilingual"); ?>
|
189 |
<?php __("If the page does not redirect automatically", "translatepress-multilingual"); ?>
|
190 |
<?php __("click here", "translatepress-multilingual"); ?>
|
191 |
<?php __("Recreated original strings table.", "translatepress-multilingual"); ?>
|
192 |
+
<?php __("All individual TranslatePress add-on plugins have been discontinued and have been replaced with new Personal, Business and Developer versions of TranslatePress. Please log into the account page at <a href=\"https://translatepress.com/account/\" target=\"_blank\">translatepress.com</a> and download the new plugin and install it. Individual Add-ons will not receive updates anymore", "translatepress-multilingual"); ?>
|
193 |
<?php __("<strong>TranslatePress</strong> requires <strong><a href=\"http://php.net/manual/en/book.mbstring.php\">Multibyte String PHP library</a></strong>. Please contact your server administrator to install it on your server.", "translatepress-multilingual"); ?>
|
194 |
<?php __("Detected long query limitation on WPEngine hosting. Some large pages may appear untranslated. You can remove limitation by adding the following to your site’s wp-config.php: define( 'WPE_GOVERNOR', false ); ", "translatepress-multilingual"); ?>
|
195 |
+
<?php __("TranslatePress Settings", "translatepress-multilingual"); ?>
|
196 |
+
<?php __("TranslatePress Add-ons", "translatepress-multilingual"); ?>
|
197 |
+
<?php __("You must first purchase this version to have access to the addon %1$shere%2$s", "translatepress-multilingual"); ?>
|
198 |
+
<?php __("Advanced Add-ons", "translatepress-multilingual"); ?>
|
199 |
<?php __("These addons extend your translation plugin and are available in the Developer, Business and Personal plans.", "translatepress-multilingual"); ?>
|
200 |
+
<?php __("SEO Pack", "translatepress-multilingual"); ?>
|
201 |
+
<?php __("SEO support for page slug, page title, description and facebook and twitter social graph information. The HTML lang attribute is properly set.", "translatepress-multilingual"); ?>
|
202 |
+
<?php __("Multiple Languages", "translatepress-multilingual"); ?>
|
203 |
+
<?php __("Add as many languages as you need for your project to go global. Publish your language only when all your translations are done.", "translatepress-multilingual"); ?>
|
204 |
+
<?php __("Pro Add-ons", "translatepress-multilingual"); ?>
|
205 |
<?php __("These addons extend your translation plugin and are available in the Business and Developer plans.", "translatepress-multilingual"); ?>
|
206 |
+
<?php __("DeepL Automatic Translation", "translatepress-multilingual"); ?>
|
207 |
<?php __("Automatically translate your website through the DeepL API.", "translatepress-multilingual"); ?>
|
208 |
+
<?php __("Automatically redirects new visitors to their preferred language based on browser settings or IP address and remembers the last visited language.", "translatepress-multilingual"); ?>
|
209 |
+
<?php __("Translator Accounts", "translatepress-multilingual"); ?>
|
210 |
+
<?php __("Create translator accounts for new users or allow existing users that are not administrators to translate your website.", "translatepress-multilingual"); ?>
|
211 |
+
<?php __("Browse As User Role", "translatepress-multilingual"); ?>
|
212 |
+
<?php __("Navigate your website just like a particular user role would. Really useful for dynamic content or hidden content that appears for particular users.", "translatepress-multilingual"); ?>
|
213 |
+
<?php __("Navigation Based on Language", "translatepress-multilingual"); ?>
|
214 |
<?php __("Configure different menu items for different languages.", "translatepress-multilingual"); ?>
|
215 |
+
<?php __("Recommended Plugins", "translatepress-multilingual"); ?>
|
216 |
<?php __("A short list of plugins you can use to extend your website.", "translatepress-multilingual"); ?>
|
217 |
+
<?php __("Profile Builder", "translatepress-multilingual"); ?>
|
218 |
<?php __("Capture more user information on the registration form with the help of Profile Builder's custom user profile fields and/or add an Email Confirmation process to verify your customers accounts.", "translatepress-multilingual"); ?>
|
219 |
+
<?php __("Paid Member Subscriptions", "translatepress-multilingual"); ?>
|
|
|
220 |
<?php __("Accept user payments, create subscription plans and restrict content on your membership site.", "translatepress-multilingual"); ?>
|
221 |
<?php __("TranslatePress Advanced Settings", "translatepress-multilingual"); ?>
|
222 |
<?php __("Save Changes", "translatepress-multilingual"); ?>
|
223 |
<?php __("TranslatePress Errors", "translatepress-multilingual"); ?>
|
224 |
<?php __("There are no logged errors.", "translatepress-multilingual"); ?>
|
225 |
<?php __("If you purchased a premium version, first install and activate any of the <a href=\"%s\">Advanced or Pro Addons</a>. After this you will be prompted with an input to enter your license key.", "translatepress-multilingual"); ?>
|
226 |
+
<?php __("License Key", "translatepress-multilingual"); ?>
|
227 |
+
<?php __("Activate License", "translatepress-multilingual"); ?>
|
228 |
+
<?php __("Deactivate License", "translatepress-multilingual"); ?>
|
229 |
<?php __("Your license is invalid", "translatepress-multilingual"); ?>
|
230 |
<?php __("Active on this site", "translatepress-multilingual"); ?>
|
231 |
+
<?php __("Enter your license key.", "translatepress-multilingual"); ?>
|
232 |
<?php __("TranslatePress Automatic Translation", "translatepress-multilingual"); ?>
|
233 |
<?php __("Enable Automatic Translation", "translatepress-multilingual"); ?>
|
234 |
<?php __("No", "translatepress-multilingual"); ?>
|
249 |
<?php __("Today's character count:", "translatepress-multilingual"); ?>
|
250 |
<?php __("Log machine translation queries.", "translatepress-multilingual"); ?>
|
251 |
<?php __("Only enable for testing purposes. Can impact performance.<br>All records are stored in the wp_trp_machine_translation_log database table. Use a plugin like <a href=\"https://wordpress.org/plugins/wp-data-access/\">WP Data Access</a> to browse the logs or directly from your database manager (PHPMyAdmin, etc.)", "translatepress-multilingual"); ?>
|
252 |
+
<?php __("All Languages", "translatepress-multilingual"); ?>
|
253 |
+
<?php __("Language", "translatepress-multilingual"); ?>
|
254 |
+
<?php __("Code", "translatepress-multilingual"); ?>
|
255 |
+
<?php __("Slug", "translatepress-multilingual"); ?>
|
256 |
+
<?php __("Are you sure you want to remove this language?", "translatepress-multilingual"); ?>
|
257 |
+
<?php __("Choose...", "translatepress-multilingual"); ?>
|
258 |
<?php __("Select the language you wish to make your website available in.", "translatepress-multilingual"); ?>
|
259 |
<?php __("To add <strong>more than two languages</strong> and support for SEO Title, Description, Slug and more check out <a href=\"%1$s\" target=\"_blank\" title=\"%2$s\">%2$s</a>.", "translatepress-multilingual"); ?>
|
260 |
<?php __("TranslatePress Advanced Add-ons", "translatepress-multilingual"); ?>
|
261 |
<?php __("Not only are you getting extra features and premium support, but you also help fund the future development of TranslatePress.", "translatepress-multilingual"); ?>
|
262 |
<?php __("TranslatePress Advanced Add-ons", "translatepress-multilingual"); ?>
|
263 |
+
<?php __("To add <strong>more than two languages</strong> activate the <strong>Extra Languages Add-on</strong> from <a href=\"%s\" class=\"trp-translatepress-account-page\" target=\"_blank\" title=\"Add-ons page\">the Add-ons Page</a>. Once activated, you'll be able to add unlimited languages.", "translatepress-multilingual"); ?>
|
264 |
<?php __("Default Language", "translatepress-multilingual"); ?>
|
265 |
<?php __("Select the original language of your content.", "translatepress-multilingual"); ?>
|
266 |
<?php __("WARNING. Changing the default language will invalidate existing translations.", "translatepress-multilingual"); ?>
|
299 |
<?php __("Remove duplicate original strings", "translatepress-multilingual"); ?>
|
300 |
<?php __("TranslatePress Database Updater", "translatepress-multilingual"); ?>
|
301 |
<?php __("Updating TranslatePress tables", "translatepress-multilingual"); ?>
|
302 |
+
<?php __("Limit this menu item to the following languages", "translatepress-multilingual"); ?>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
303 |
<?php __("Date format", "translatepress-multilingual"); ?>
|
304 |
<?php __("Customize the date formatting per each translated language.<br/>Leave empty for default WP setting or see more information <a href=\"https://wordpress.org/support/article/formatting-date-and-time/\" title=\"Formatting Date and Time\" target=\"_blank\">here</a>", "translatepress-multilingual"); ?>
|
305 |
<?php __("Language name", "translatepress-multilingual"); ?>
|
400 |
<?php __("Click to sort strings by this column", "translatepress-multilingual"); ?>
|
401 |
<?php __("Language in which the translation status filter applies. Leave unselected for the translation status to apply to ANY language", "translatepress-multilingual"); ?>
|
402 |
<?php __("String Translation Editor", "translatepress-multilingual"); ?>
|
403 |
+
<?php __("Select the languages you wish to make your website available in.", "translatepress-multilingual"); ?>
|
404 |
+
<?php __("Post Slug", "translatepress-multilingual"); ?>
|
405 |
+
<?php __("First by browser language, then IP address (recommended)", "translatepress-multilingual"); ?>
|
406 |
+
<?php __("First by IP address, then by browser language", "translatepress-multilingual"); ?>
|
407 |
+
<?php __("Only by browser language", "translatepress-multilingual"); ?>
|
408 |
+
<?php __("Only by IP address", "translatepress-multilingual"); ?>
|
409 |
+
<?php __("WARNING. Cannot determine your language preference based on your current IP.<br>This is most likely because the website is on a local environment.", "translatepress-multilingual"); ?>
|
410 |
+
<?php __("Method of language detection", "translatepress-multilingual"); ?>
|
411 |
+
<?php __("Select how the language should be detected for first time visitors.<br>The visitor's last displayed language will be remembered through cookies.", "translatepress-multilingual"); ?>
|
412 |
+
<?php __("Bad request. There was an error accessing the DeepL API.", "translatepress-multilingual"); ?>
|
413 |
+
<?php __("The API key entered is invalid.", "translatepress-multilingual"); ?>
|
414 |
+
<?php __("The API resource could not be found.", "translatepress-multilingual"); ?>
|
415 |
+
<?php __("The request size is too large.", "translatepress-multilingual"); ?>
|
416 |
+
<?php __("The request is too long.", "translatepress-multilingual"); ?>
|
417 |
+
<?php __("Too many requests. Please try again later.", "translatepress-multilingual"); ?>
|
418 |
+
<?php __("Your translation quota has been reached.", "translatepress-multilingual"); ?>
|
419 |
+
<?php __("We could not process your request. Please try again later.", "translatepress-multilingual"); ?>
|
420 |
+
<?php __("There is an error on the DeepL service and your request could not be processed.", "translatepress-multilingual"); ?>
|
421 |
+
<?php __("DeepL API Type", "translatepress-multilingual"); ?>
|
422 |
+
<?php __("Pro", "translatepress-multilingual"); ?>
|
423 |
+
<?php __("Free", "translatepress-multilingual"); ?>
|
424 |
+
<?php __("Select the type of DeepL API you want to use.", "translatepress-multilingual"); ?>
|
425 |
+
<?php __("DeepL API Key", "translatepress-multilingual"); ?>
|
426 |
+
<?php __("Visit <a href=\"%s\" target=\"_blank\">this link</a> to see how you can set up an API key and control API costs.", "translatepress-multilingual"); ?>
|
427 |
+
<?php __(" TranslatePress Settings", "translatepress-multilingual"); ?>
|
428 |
+
<?php __("Translator", "translatepress-multilingual"); ?>
|
429 |
+
<?php __("Allow this user to translate the website.", "translatepress-multilingual"); ?>
|
430 |
+
<?php __("URL Slugs Translation", "translatepress-multilingual"); ?>
|
431 |
+
<?php __("Taxonomy Slugs", "translatepress-multilingual"); ?>
|
432 |
+
<?php __("Search Taxonomy Slugs", "translatepress-multilingual"); ?>
|
433 |
+
<?php __("Taxonomy Slug", "translatepress-multilingual"); ?>
|
434 |
+
<?php __("Translation", "translatepress-multilingual"); ?>
|
435 |
+
<?php __("Term Slugs", "translatepress-multilingual"); ?>
|
436 |
+
<?php __("Search Term Slugs", "translatepress-multilingual"); ?>
|
437 |
+
<?php __("Term Slug", "translatepress-multilingual"); ?>
|
438 |
+
<?php __("Taxonomy", "translatepress-multilingual"); ?>
|
439 |
+
<?php __("Filter by Taxonomy", "translatepress-multilingual"); ?>
|
440 |
+
<?php __("Post Slugs", "translatepress-multilingual"); ?>
|
441 |
+
<?php __("Search Post Slugs", "translatepress-multilingual"); ?>
|
442 |
+
<?php __("Post ID", "translatepress-multilingual"); ?>
|
443 |
+
<?php __("Post Type", "translatepress-multilingual"); ?>
|
444 |
+
<?php __("Filter by Post Type", "translatepress-multilingual"); ?>
|
445 |
+
<?php __("Published", "translatepress-multilingual"); ?>
|
446 |
+
<?php __("Any Post Status", "translatepress-multilingual"); ?>
|
447 |
+
<?php __("Post Type Base Slugs", "translatepress-multilingual"); ?>
|
448 |
+
<?php __("Post Type Base Slug", "translatepress-multilingual"); ?>
|
449 |
+
<?php __("Search Post Type Base Slugs", "translatepress-multilingual"); ?>
|
450 |
+
<?php __("WooCommerce Slugs", "translatepress-multilingual"); ?>
|
451 |
+
<?php __("WooCommerce Slug", "translatepress-multilingual"); ?>
|
452 |
+
<?php __("Search WooCommerce Slugs", "translatepress-multilingual"); ?>
|
languages/translatepress-multilingual.pot
CHANGED
@@ -13,134 +13,42 @@ msgstr ""
|
|
13 |
"X-Poedit-SourceCharset: UTF-8\n"
|
14 |
"Plural-Forms: nplurals=2; plural=(n != 1);\n"
|
15 |
|
16 |
-
#:
|
17 |
-
msgid "
|
18 |
msgstr ""
|
19 |
|
20 |
-
#:
|
21 |
-
msgid "
|
22 |
msgstr ""
|
23 |
|
24 |
-
#:
|
25 |
-
msgid "
|
26 |
msgstr ""
|
27 |
|
28 |
#: index.php:62
|
29 |
msgid "<strong>TranslatePress</strong> requires at least PHP version 5.6.20+ to run. It is the <a href=\"%s\">minimum requirement of the latest WordPress version</a>. Please contact your server administrator to update your PHP version."
|
30 |
msgstr ""
|
31 |
|
32 |
-
#:
|
33 |
-
msgid "
|
34 |
-
msgstr ""
|
35 |
-
|
36 |
-
#: ../tp-add-on-automatic-language-detection/includes/class-ald-settings.php:38
|
37 |
-
msgid "First by IP address, then by browser language"
|
38 |
-
msgstr ""
|
39 |
-
|
40 |
-
#: ../tp-add-on-automatic-language-detection/includes/class-ald-settings.php:39
|
41 |
-
msgid "Only by browser language"
|
42 |
-
msgstr ""
|
43 |
-
|
44 |
-
#: ../tp-add-on-automatic-language-detection/includes/class-ald-settings.php:40
|
45 |
-
msgid "Only by IP address"
|
46 |
-
msgstr ""
|
47 |
-
|
48 |
-
#: ../tp-add-on-automatic-language-detection/includes/class-ald-settings.php:110
|
49 |
-
msgid "WARNING. Cannot determine your language preference based on your current IP.<br>This is most likely because the website is on a local environment."
|
50 |
-
msgstr ""
|
51 |
-
|
52 |
-
#: ../tp-add-on-automatic-language-detection/partials/license-settings-page.php:4, ../tp-add-on-browse-as-other-roles/partials/license-settings-page.php:4, ../tp-add-on-extra-languages/partials/license-settings-page.php:4, ../tp-add-on-seo-pack/partials/license-settings-page.php:4, ../tp-add-on-translator-accounts/partials/license-settings-page.php:4, partials/addons-settings-page.php:3, partials/license-settings-page.php:46, partials/license-settings-page.php:8, partials/main-settings-page.php:5, partials/test-api-settings-page.php:11, partials/trp-remove-duplicate-rows.php:3
|
53 |
-
msgid "TranslatePress Settings"
|
54 |
-
msgstr ""
|
55 |
-
|
56 |
-
#: ../tp-add-on-automatic-language-detection/partials/license-settings-page.php:10, ../tp-add-on-browse-as-other-roles/partials/license-settings-page.php:10, ../tp-add-on-extra-languages/partials/license-settings-page.php:10, ../tp-add-on-seo-pack/partials/license-settings-page.php:10, ../tp-add-on-translator-accounts/partials/license-settings-page.php:10, partials/license-settings-page.php:14
|
57 |
-
msgid "License Key"
|
58 |
-
msgstr ""
|
59 |
-
|
60 |
-
#: ../tp-add-on-automatic-language-detection/partials/license-settings-page.php:15, ../tp-add-on-browse-as-other-roles/partials/license-settings-page.php:15, ../tp-add-on-extra-languages/partials/license-settings-page.php:15, ../tp-add-on-seo-pack/partials/license-settings-page.php:15, ../tp-add-on-translator-accounts/partials/license-settings-page.php:15, partials/license-settings-page.php:38
|
61 |
-
msgid "Enter your license key."
|
62 |
-
msgstr ""
|
63 |
-
|
64 |
-
#: ../tp-add-on-automatic-language-detection/partials/license-settings-page.php:22, ../tp-add-on-automatic-language-detection/partials/license-settings-page.php:31, ../tp-add-on-browse-as-other-roles/partials/license-settings-page.php:22, ../tp-add-on-browse-as-other-roles/partials/license-settings-page.php:31, ../tp-add-on-extra-languages/partials/license-settings-page.php:22, ../tp-add-on-extra-languages/partials/license-settings-page.php:31, ../tp-add-on-seo-pack/partials/license-settings-page.php:22, ../tp-add-on-seo-pack/partials/license-settings-page.php:31, ../tp-add-on-translator-accounts/partials/license-settings-page.php:22, ../tp-add-on-translator-accounts/partials/license-settings-page.php:31, partials/license-settings-page.php:32
|
65 |
-
msgid "Activate License"
|
66 |
-
msgstr ""
|
67 |
-
|
68 |
-
#: ../tp-add-on-automatic-language-detection/partials/license-settings-page.php:28, ../tp-add-on-browse-as-other-roles/partials/license-settings-page.php:28, ../tp-add-on-extra-languages/partials/license-settings-page.php:28, ../tp-add-on-seo-pack/partials/license-settings-page.php:28, ../tp-add-on-translator-accounts/partials/license-settings-page.php:28, partials/license-settings-page.php:22
|
69 |
-
msgid "Deactivate License"
|
70 |
-
msgstr ""
|
71 |
-
|
72 |
-
#: ../tp-add-on-automatic-language-detection/partials/settings-option.php:2
|
73 |
-
msgid "Method of language detection"
|
74 |
-
msgstr ""
|
75 |
-
|
76 |
-
#: ../tp-add-on-automatic-language-detection/partials/settings-option.php:14
|
77 |
-
msgid "Select how the language should be detected for first time visitors.<br>The visitor's last displayed language will be remembered through cookies."
|
78 |
-
msgstr ""
|
79 |
-
|
80 |
-
#: ../tp-add-on-extra-languages/partials/language-selector-pro.php:7, partials/main-settings-language-selector.php:7
|
81 |
-
msgid "Language"
|
82 |
-
msgstr ""
|
83 |
-
|
84 |
-
#: ../tp-add-on-extra-languages/partials/language-selector-pro.php:8, partials/main-settings-language-selector.php:8
|
85 |
-
msgid "Code"
|
86 |
-
msgstr ""
|
87 |
-
|
88 |
-
#: ../tp-add-on-extra-languages/partials/language-selector-pro.php:9, partials/main-settings-language-selector.php:9
|
89 |
-
msgid "Slug"
|
90 |
msgstr ""
|
91 |
|
92 |
-
#:
|
93 |
-
msgid "
|
94 |
msgstr ""
|
95 |
|
96 |
-
#:
|
97 |
-
msgid "Are you sure you want to remove this
|
98 |
msgstr ""
|
99 |
|
100 |
-
#:
|
101 |
msgid "Remove"
|
102 |
msgstr ""
|
103 |
|
104 |
-
#:
|
105 |
-
msgid "Choose..."
|
106 |
-
msgstr ""
|
107 |
-
|
108 |
-
#: ../tp-add-on-extra-languages/partials/language-selector-pro.php:58, includes/class-advanced-tab.php:515, includes/class-advanced-tab.php:634, partials/main-settings-language-selector.php:55
|
109 |
msgid "Add"
|
110 |
msgstr ""
|
111 |
|
112 |
-
#: ../tp-add-on-extra-languages/partials/language-selector-pro.php:61
|
113 |
-
msgid "Select the languages you wish to make your website available in."
|
114 |
-
msgstr ""
|
115 |
-
|
116 |
-
#: ../tp-add-on-seo-pack/includes/class-slug-manager.php:49, ../tp-add-on-seo-pack/includes/string-translation/class-string-translation-seo.php:56
|
117 |
-
msgid "Post Slug"
|
118 |
-
msgstr ""
|
119 |
-
|
120 |
-
#: ../tp-add-on-translator-accounts/includes/class-translator-accounts.php:106
|
121 |
-
msgid " TranslatePress Settings"
|
122 |
-
msgstr ""
|
123 |
-
|
124 |
-
#: ../tp-add-on-translator-accounts/includes/class-translator-accounts.php:110, ../tp-add-on-translator-accounts/includes/class-translator-accounts.php:111
|
125 |
-
msgid "Translator"
|
126 |
-
msgstr ""
|
127 |
-
|
128 |
-
#: ../tp-add-on-translator-accounts/includes/class-translator-accounts.php:115
|
129 |
-
msgid "Allow this user to translate the website."
|
130 |
-
msgstr ""
|
131 |
-
|
132 |
-
#: includes/class-advanced-tab.php:19
|
133 |
-
msgid "Advanced"
|
134 |
-
msgstr ""
|
135 |
-
|
136 |
-
#: includes/class-advanced-tab.php:307, includes/class-error-manager.php:155, partials/machine-translation-settings-page.php:13, partials/machine-translation-settings-page.php:88, partials/machine-translation-settings-page.php:121, partials/main-settings-page.php:41, partials/main-settings-page.php:54, partials/main-settings-page.php:67
|
137 |
-
msgid "Yes"
|
138 |
-
msgstr ""
|
139 |
-
|
140 |
-
#: includes/class-advanced-tab.php:504, includes/class-advanced-tab.php:515, includes/class-advanced-tab.php:603, includes/class-advanced-tab.php:634
|
141 |
-
msgid "Are you sure you want to remove this item?"
|
142 |
-
msgstr ""
|
143 |
-
|
144 |
#: includes/class-advanced-tab.php:587, includes/class-advanced-tab.php:621
|
145 |
msgid "Select..."
|
146 |
msgstr ""
|
@@ -189,79 +97,79 @@ msgstr ""
|
|
189 |
msgid "Automatic translation has been disabled."
|
190 |
msgstr ""
|
191 |
|
192 |
-
#: includes/class-error-manager.php:
|
193 |
msgid "Dismiss this notice."
|
194 |
msgstr ""
|
195 |
|
196 |
-
#: includes/class-error-manager.php:
|
197 |
msgid "Logged errors"
|
198 |
msgstr ""
|
199 |
|
200 |
-
#: includes/class-error-manager.php:
|
201 |
msgid "These are the most recent 5 errors logged by TranslatePress:"
|
202 |
msgstr ""
|
203 |
|
204 |
-
#: includes/class-error-manager.php:
|
205 |
msgid "Why are these errors occuring"
|
206 |
msgstr ""
|
207 |
|
208 |
-
#: includes/class-error-manager.php:
|
209 |
msgid "If TranslatePress detects something wrong when executing queries on your database, it may disable the Automatic Translation feature in order to avoid any extra charging by Google/DeepL. Automatic Translation needs to be manually turned on, after you solve the issues."
|
210 |
msgstr ""
|
211 |
|
212 |
-
#: includes/class-error-manager.php:
|
213 |
msgid "The SQL errors detected can occur for various reasons including missing tables, missing permissions for the SQL user to create tables or perform other operations, problems after site migration or changes to SQL server configuration."
|
214 |
msgstr ""
|
215 |
|
216 |
-
#: includes/class-error-manager.php:
|
217 |
msgid "What you can do in this situation"
|
218 |
msgstr ""
|
219 |
|
220 |
-
#: includes/class-error-manager.php:
|
221 |
msgid "Plan A."
|
222 |
msgstr ""
|
223 |
|
224 |
-
#: includes/class-error-manager.php:
|
225 |
msgid "Go to Settings -> TranslatePress -> General tab and Save Settings. This will regenerate the tables using your current SQL settings. Check if no more errors occur while browsing your website in a translated language. Look at the timestamps of the errors to make sure you are not seeing the old errors. Only the most recent 5 errors are displayed."
|
226 |
msgstr ""
|
227 |
|
228 |
-
#: includes/class-error-manager.php:
|
229 |
msgid "Plan B."
|
230 |
msgstr ""
|
231 |
|
232 |
-
#: includes/class-error-manager.php:
|
233 |
msgid "If your problem isn't solved, try the following steps:"
|
234 |
msgstr ""
|
235 |
|
236 |
-
#: includes/class-error-manager.php:
|
237 |
msgid "Create a backup of your database"
|
238 |
msgstr ""
|
239 |
|
240 |
-
#: includes/class-error-manager.php:
|
241 |
msgid "Create a copy of each translation table where you encounter errors. You can copy the table within the same database (trp_dictionary_en_us_es_es_COPY for example) -- perform this step only if you want to keep the current translations"
|
242 |
msgstr ""
|
243 |
|
244 |
-
#: includes/class-error-manager.php:
|
245 |
msgid "Remove the trouble tables by executing the DROP function on them"
|
246 |
msgstr ""
|
247 |
|
248 |
-
#: includes/class-error-manager.php:
|
249 |
msgid "Go to Settings -> TranslatePress -> General tab and Save Settings. This will regenerate the tables using your current SQL server."
|
250 |
msgstr ""
|
251 |
|
252 |
-
#: includes/class-error-manager.php:
|
253 |
msgid "Copy the relevant content from the duplicated tables (trp_dictionary_en_us_es_es_COPY for example) in the newly generated table (trp_dictionary_en_us_es_es) -- perform this step only if you want to keep the current translations"
|
254 |
msgstr ""
|
255 |
|
256 |
-
#: includes/class-error-manager.php:
|
257 |
msgid "Test it to see if everything is working. If something went wrong, you can restore the backup that you've made at the first step. Check if no more errors occur while browsing your website in a translated language. Look at the timestamps of the errors to make sure you are not seeing the old errors. Only the most recent 5 errors are displayed."
|
258 |
msgstr ""
|
259 |
|
260 |
-
#: includes/class-error-manager.php:
|
261 |
msgid "Plan C."
|
262 |
msgstr ""
|
263 |
|
264 |
-
#: includes/class-error-manager.php:
|
265 |
msgid "If your problem still isn't solved, try asking your hosting about your errors. The most common issue is missing permissions for the SQL user, such as the Create Tables permission."
|
266 |
msgstr ""
|
267 |
|
@@ -269,35 +177,39 @@ msgstr ""
|
|
269 |
msgid "Could not install. Try again from <a href=\"%s\" >Plugins Dashboard.</a>"
|
270 |
msgstr ""
|
271 |
|
|
|
|
|
|
|
|
|
272 |
#: includes/class-machine-translation-tab.php:22
|
273 |
msgid "Automatic Translation"
|
274 |
msgstr ""
|
275 |
|
276 |
-
#: includes/class-machine-translation-tab.php:
|
277 |
msgid "DeepL"
|
278 |
msgstr ""
|
279 |
|
280 |
-
#: includes/class-machine-translation-tab.php:
|
281 |
msgid "Unsupported languages"
|
282 |
msgstr ""
|
283 |
|
284 |
-
#: includes/class-machine-translation-tab.php:
|
285 |
msgid "Recheck supported languages"
|
286 |
msgstr ""
|
287 |
|
288 |
-
#: includes/class-machine-translation-tab.php:
|
289 |
msgid "(last checked on %s)"
|
290 |
msgstr ""
|
291 |
|
292 |
-
#: includes/class-machine-translation-tab.php:
|
293 |
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."
|
294 |
msgstr ""
|
295 |
|
296 |
-
#: includes/class-machine-translator.php:
|
297 |
msgid "Please enter your Google Translate key."
|
298 |
msgstr ""
|
299 |
|
300 |
-
#: includes/class-machine-translator.php:
|
301 |
msgid "Please enter your DeepL API key."
|
302 |
msgstr ""
|
303 |
|
@@ -409,6 +321,10 @@ msgstr ""
|
|
409 |
msgid "Install & Activate"
|
410 |
msgstr ""
|
411 |
|
|
|
|
|
|
|
|
|
412 |
#: includes/class-settings.php:476
|
413 |
msgid "Current Language"
|
414 |
msgstr ""
|
@@ -637,7 +553,7 @@ msgstr ""
|
|
637 |
msgid "Different Menu Items for each Language"
|
638 |
msgstr ""
|
639 |
|
640 |
-
#: includes/class-translation-manager.php:153
|
641 |
msgid "Automatic User Language Detection"
|
642 |
msgstr ""
|
643 |
|
@@ -677,7 +593,7 @@ msgstr ""
|
|
677 |
msgid "Search for any text in this page in the dropdown."
|
678 |
msgstr ""
|
679 |
|
680 |
-
#: includes/class-translation-manager.php:231,
|
681 |
msgid "Slugs"
|
682 |
msgstr ""
|
683 |
|
@@ -857,6 +773,10 @@ msgstr ""
|
|
857 |
msgid "Recreated original strings table."
|
858 |
msgstr ""
|
859 |
|
|
|
|
|
|
|
|
|
860 |
#: includes/compatibility-functions.php:28
|
861 |
msgid "<strong>TranslatePress</strong> requires <strong><a href=\"http://php.net/manual/en/book.mbstring.php\">Multibyte String PHP library</a></strong>. Please contact your server administrator to install it on your server."
|
862 |
msgstr ""
|
@@ -865,44 +785,80 @@ msgstr ""
|
|
865 |
msgid "Detected long query limitation on WPEngine hosting. Some large pages may appear untranslated. You can remove limitation by adding the following to your site’s wp-config.php: define( 'WPE_GOVERNOR', false ); "
|
866 |
msgstr ""
|
867 |
|
868 |
-
#: partials/addons-settings-page.php:
|
869 |
-
msgid "
|
870 |
msgstr ""
|
871 |
|
872 |
-
#: partials/addons-settings-page.php:
|
873 |
-
msgid "
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
874 |
msgstr ""
|
875 |
|
876 |
#: partials/addons-settings-page.php:21
|
877 |
-
msgid "
|
878 |
msgstr ""
|
879 |
|
880 |
-
#: partials/addons-settings-page.php:
|
881 |
-
msgid "
|
882 |
msgstr ""
|
883 |
|
884 |
-
#: partials/addons-settings-page.php:
|
885 |
-
msgid "
|
886 |
msgstr ""
|
887 |
|
888 |
-
#: partials/addons-settings-page.php:
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
889 |
msgid "These addons extend your translation plugin and are available in the Business and Developer plans."
|
890 |
msgstr ""
|
891 |
|
892 |
-
#: partials/addons-settings-page.php:
|
|
|
|
|
|
|
|
|
893 |
msgid "Automatically translate your website through the DeepL API."
|
894 |
msgstr ""
|
895 |
|
896 |
-
#: partials/addons-settings-page.php:
|
897 |
-
msgid "Automatically redirects new visitors to their preferred language based on browser settings or IP address
|
898 |
msgstr ""
|
899 |
|
900 |
-
#: partials/addons-settings-page.php:
|
901 |
-
msgid "
|
|
|
|
|
|
|
|
|
902 |
msgstr ""
|
903 |
|
904 |
#: partials/addons-settings-page.php:68
|
905 |
-
msgid "
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
906 |
msgstr ""
|
907 |
|
908 |
#: partials/addons-settings-page.php:76
|
@@ -910,26 +866,26 @@ msgid "Configure different menu items for different languages."
|
|
910 |
msgstr ""
|
911 |
|
912 |
#: partials/addons-settings-page.php:85
|
913 |
-
msgid "Recommended Plugins
|
914 |
msgstr ""
|
915 |
|
916 |
-
#: partials/addons-settings-page.php:
|
917 |
msgid "A short list of plugins you can use to extend your website."
|
918 |
msgstr ""
|
919 |
|
920 |
-
#: partials/addons-settings-page.php:
|
921 |
-
msgid "
|
922 |
msgstr ""
|
923 |
|
924 |
-
#: partials/addons-settings-page.php:
|
925 |
-
msgid "
|
926 |
msgstr ""
|
927 |
|
928 |
-
#: partials/addons-settings-page.php:
|
929 |
-
msgid "
|
930 |
msgstr ""
|
931 |
|
932 |
-
#: partials/addons-settings-page.php:
|
933 |
msgid "Accept user payments, create subscription plans and restrict content on your membership site."
|
934 |
msgstr ""
|
935 |
|
@@ -953,6 +909,18 @@ msgstr ""
|
|
953 |
msgid "If you purchased a premium version, first install and activate any of the <a href=\"%s\">Advanced or Pro Addons</a>. After this you will be prompted with an input to enter your license key."
|
954 |
msgstr ""
|
955 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
956 |
#: partials/license-settings-page.php:27
|
957 |
msgid "Your license is invalid"
|
958 |
msgstr ""
|
@@ -961,6 +929,10 @@ msgstr ""
|
|
961 |
msgid "Active on this site"
|
962 |
msgstr ""
|
963 |
|
|
|
|
|
|
|
|
|
964 |
#: partials/machine-translation-settings-page.php:4
|
965 |
msgid "TranslatePress Automatic Translation"
|
966 |
msgstr ""
|
@@ -1043,6 +1015,30 @@ msgstr ""
|
|
1043 |
msgid "Only enable for testing purposes. Can impact performance.<br>All records are stored in the wp_trp_machine_translation_log database table. Use a plugin like <a href=\"https://wordpress.org/plugins/wp-data-access/\">WP Data Access</a> to browse the logs or directly from your database manager (PHPMyAdmin, etc.)"
|
1044 |
msgstr ""
|
1045 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1046 |
#: partials/main-settings-language-selector.php:59
|
1047 |
msgid "Select the language you wish to make your website available in."
|
1048 |
msgstr ""
|
@@ -1067,7 +1063,7 @@ msgid "TranslatePress Advanced Add-ons"
|
|
1067 |
msgstr ""
|
1068 |
|
1069 |
#: partials/main-settings-language-selector.php:66
|
1070 |
-
msgid "To add <strong>more than two languages</strong>
|
1071 |
msgstr ""
|
1072 |
|
1073 |
#: partials/main-settings-page.php:10
|
@@ -1222,96 +1218,8 @@ msgstr ""
|
|
1222 |
msgid "Updating TranslatePress tables"
|
1223 |
msgstr ""
|
1224 |
|
1225 |
-
#:
|
1226 |
-
msgid "
|
1227 |
-
msgstr ""
|
1228 |
-
|
1229 |
-
#: ../tp-add-on-seo-pack/includes/string-translation/class-string-translation-seo.php:16
|
1230 |
-
msgid "Taxonomy Slugs"
|
1231 |
-
msgstr ""
|
1232 |
-
|
1233 |
-
#: ../tp-add-on-seo-pack/includes/string-translation/class-string-translation-seo.php:17
|
1234 |
-
msgid "Search Taxonomy Slugs"
|
1235 |
-
msgstr ""
|
1236 |
-
|
1237 |
-
#: ../tp-add-on-seo-pack/includes/string-translation/class-string-translation-seo.php:23
|
1238 |
-
msgid "Taxonomy Slug"
|
1239 |
-
msgstr ""
|
1240 |
-
|
1241 |
-
#: ../tp-add-on-seo-pack/includes/string-translation/class-string-translation-seo.php:24, ../tp-add-on-seo-pack/includes/string-translation/class-string-translation-seo.php:37, ../tp-add-on-seo-pack/includes/string-translation/class-string-translation-seo.php:57, ../tp-add-on-seo-pack/includes/string-translation/class-string-translation-seo.php:77, ../tp-add-on-seo-pack/includes/string-translation/class-string-translation-seo.php:95
|
1242 |
-
msgid "Translation"
|
1243 |
-
msgstr ""
|
1244 |
-
|
1245 |
-
#: ../tp-add-on-seo-pack/includes/string-translation/class-string-translation-seo.php:30
|
1246 |
-
msgid "Term Slugs"
|
1247 |
-
msgstr ""
|
1248 |
-
|
1249 |
-
#: ../tp-add-on-seo-pack/includes/string-translation/class-string-translation-seo.php:31
|
1250 |
-
msgid "Search Term Slugs"
|
1251 |
-
msgstr ""
|
1252 |
-
|
1253 |
-
#: ../tp-add-on-seo-pack/includes/string-translation/class-string-translation-seo.php:36
|
1254 |
-
msgid "Term Slug"
|
1255 |
-
msgstr ""
|
1256 |
-
|
1257 |
-
#: ../tp-add-on-seo-pack/includes/string-translation/class-string-translation-seo.php:38
|
1258 |
-
msgid "Taxonomy"
|
1259 |
-
msgstr ""
|
1260 |
-
|
1261 |
-
#: ../tp-add-on-seo-pack/includes/string-translation/class-string-translation-seo.php:43
|
1262 |
-
msgid "Filter by Taxonomy"
|
1263 |
-
msgstr ""
|
1264 |
-
|
1265 |
-
#: ../tp-add-on-seo-pack/includes/string-translation/class-string-translation-seo.php:49
|
1266 |
-
msgid "Post Slugs"
|
1267 |
-
msgstr ""
|
1268 |
-
|
1269 |
-
#: ../tp-add-on-seo-pack/includes/string-translation/class-string-translation-seo.php:50
|
1270 |
-
msgid "Search Post Slugs"
|
1271 |
-
msgstr ""
|
1272 |
-
|
1273 |
-
#: ../tp-add-on-seo-pack/includes/string-translation/class-string-translation-seo.php:55
|
1274 |
-
msgid "Post ID"
|
1275 |
-
msgstr ""
|
1276 |
-
|
1277 |
-
#: ../tp-add-on-seo-pack/includes/string-translation/class-string-translation-seo.php:58
|
1278 |
-
msgid "Post Type"
|
1279 |
-
msgstr ""
|
1280 |
-
|
1281 |
-
#: ../tp-add-on-seo-pack/includes/string-translation/class-string-translation-seo.php:63
|
1282 |
-
msgid "Filter by Post Type"
|
1283 |
-
msgstr ""
|
1284 |
-
|
1285 |
-
#: ../tp-add-on-seo-pack/includes/string-translation/class-string-translation-seo.php:67
|
1286 |
-
msgid "Published"
|
1287 |
-
msgstr ""
|
1288 |
-
|
1289 |
-
#: ../tp-add-on-seo-pack/includes/string-translation/class-string-translation-seo.php:68
|
1290 |
-
msgid "Any Post Status"
|
1291 |
-
msgstr ""
|
1292 |
-
|
1293 |
-
#: ../tp-add-on-seo-pack/includes/string-translation/class-string-translation-seo.php:74
|
1294 |
-
msgid "Post Type Base Slugs"
|
1295 |
-
msgstr ""
|
1296 |
-
|
1297 |
-
#: ../tp-add-on-seo-pack/includes/string-translation/class-string-translation-seo.php:76
|
1298 |
-
msgid "Post Type Base Slug"
|
1299 |
-
msgstr ""
|
1300 |
-
|
1301 |
-
#: ../tp-add-on-seo-pack/includes/string-translation/class-string-translation-seo.php:80
|
1302 |
-
msgid "Search Post Type Base Slugs"
|
1303 |
-
msgstr ""
|
1304 |
-
|
1305 |
-
#: ../tp-add-on-seo-pack/includes/string-translation/class-string-translation-seo.php:92
|
1306 |
-
msgid "WooCommerce Slugs"
|
1307 |
-
msgstr ""
|
1308 |
-
|
1309 |
-
#: ../tp-add-on-seo-pack/includes/string-translation/class-string-translation-seo.php:94
|
1310 |
-
msgid "WooCommerce Slug"
|
1311 |
-
msgstr ""
|
1312 |
-
|
1313 |
-
#: ../tp-add-on-seo-pack/includes/string-translation/class-string-translation-seo.php:98
|
1314 |
-
msgid "Search WooCommerce Slugs"
|
1315 |
msgstr ""
|
1316 |
|
1317 |
#: includes/advanced-settings/custom-date-format.php:16
|
@@ -1715,3 +1623,203 @@ msgstr ""
|
|
1715 |
#: includes/string-translation/string-translation-editor.php:7
|
1716 |
msgid "String Translation Editor"
|
1717 |
msgstr ""
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
13 |
"X-Poedit-SourceCharset: UTF-8\n"
|
14 |
"Plural-Forms: nplurals=2; plural=(n != 1);\n"
|
15 |
|
16 |
+
#: index-dev.php:38
|
17 |
+
msgid "Please update the TranslatePress - Multilingual plugin to version 2.0.5 at least for %s to work properly"
|
18 |
msgstr ""
|
19 |
|
20 |
+
#: index-dev.php:32
|
21 |
+
msgid "Please install and activate the TranslatePress - Multilingual plugin"
|
22 |
msgstr ""
|
23 |
|
24 |
+
#: index-dev.php:215
|
25 |
+
msgid "This TranslatePress add-on has been migrated to the main plugin and is no longer used. You can delete it."
|
26 |
msgstr ""
|
27 |
|
28 |
#: index.php:62
|
29 |
msgid "<strong>TranslatePress</strong> requires at least PHP version 5.6.20+ to run. It is the <a href=\"%s\">minimum requirement of the latest WordPress version</a>. Please contact your server administrator to update your PHP version."
|
30 |
msgstr ""
|
31 |
|
32 |
+
#: includes/class-advanced-tab.php:19
|
33 |
+
msgid "Advanced"
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
34 |
msgstr ""
|
35 |
|
36 |
+
#: includes/class-advanced-tab.php:307, includes/class-error-manager.php:172, partials/machine-translation-settings-page.php:13, partials/machine-translation-settings-page.php:88, partials/machine-translation-settings-page.php:121, partials/main-settings-page.php:41, partials/main-settings-page.php:54, partials/main-settings-page.php:67
|
37 |
+
msgid "Yes"
|
38 |
msgstr ""
|
39 |
|
40 |
+
#: includes/class-advanced-tab.php:504, includes/class-advanced-tab.php:515, includes/class-advanced-tab.php:603, includes/class-advanced-tab.php:634
|
41 |
+
msgid "Are you sure you want to remove this item?"
|
42 |
msgstr ""
|
43 |
|
44 |
+
#: includes/class-advanced-tab.php:504, includes/class-advanced-tab.php:515, includes/class-advanced-tab.php:603, includes/class-advanced-tab.php:634, partials/main-settings-language-selector.php:40, add-ons-advanced/extra-languages/partials/language-selector-pro.php:43
|
45 |
msgid "Remove"
|
46 |
msgstr ""
|
47 |
|
48 |
+
#: includes/class-advanced-tab.php:515, includes/class-advanced-tab.php:634, partials/main-settings-language-selector.php:55, add-ons-advanced/extra-languages/partials/language-selector-pro.php:58
|
|
|
|
|
|
|
|
|
49 |
msgid "Add"
|
50 |
msgstr ""
|
51 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
52 |
#: includes/class-advanced-tab.php:587, includes/class-advanced-tab.php:621
|
53 |
msgid "Select..."
|
54 |
msgstr ""
|
97 |
msgid "Automatic translation has been disabled."
|
98 |
msgstr ""
|
99 |
|
100 |
+
#: includes/class-error-manager.php:146, includes/class-plugin-notices.php:341, includes/class-plugin-notices.php:392, includes/class-plugin-notices.php:373, includes/class-plugin-notices.php:406, includes/class-plugin-notices.php:431, includes/class-plugin-notices.php:455, includes/class-reviews.php:119, includes/class-reviews.php:122, includes/class-upgrade.php:774
|
101 |
msgid "Dismiss this notice."
|
102 |
msgstr ""
|
103 |
|
104 |
+
#: includes/class-error-manager.php:164
|
105 |
msgid "Logged errors"
|
106 |
msgstr ""
|
107 |
|
108 |
+
#: includes/class-error-manager.php:165
|
109 |
msgid "These are the most recent 5 errors logged by TranslatePress:"
|
110 |
msgstr ""
|
111 |
|
112 |
+
#: includes/class-error-manager.php:189
|
113 |
msgid "Why are these errors occuring"
|
114 |
msgstr ""
|
115 |
|
116 |
+
#: includes/class-error-manager.php:190
|
117 |
msgid "If TranslatePress detects something wrong when executing queries on your database, it may disable the Automatic Translation feature in order to avoid any extra charging by Google/DeepL. Automatic Translation needs to be manually turned on, after you solve the issues."
|
118 |
msgstr ""
|
119 |
|
120 |
+
#: includes/class-error-manager.php:191
|
121 |
msgid "The SQL errors detected can occur for various reasons including missing tables, missing permissions for the SQL user to create tables or perform other operations, problems after site migration or changes to SQL server configuration."
|
122 |
msgstr ""
|
123 |
|
124 |
+
#: includes/class-error-manager.php:193
|
125 |
msgid "What you can do in this situation"
|
126 |
msgstr ""
|
127 |
|
128 |
+
#: includes/class-error-manager.php:195
|
129 |
msgid "Plan A."
|
130 |
msgstr ""
|
131 |
|
132 |
+
#: includes/class-error-manager.php:196
|
133 |
msgid "Go to Settings -> TranslatePress -> General tab and Save Settings. This will regenerate the tables using your current SQL settings. Check if no more errors occur while browsing your website in a translated language. Look at the timestamps of the errors to make sure you are not seeing the old errors. Only the most recent 5 errors are displayed."
|
134 |
msgstr ""
|
135 |
|
136 |
+
#: includes/class-error-manager.php:198
|
137 |
msgid "Plan B."
|
138 |
msgstr ""
|
139 |
|
140 |
+
#: includes/class-error-manager.php:199
|
141 |
msgid "If your problem isn't solved, try the following steps:"
|
142 |
msgstr ""
|
143 |
|
144 |
+
#: includes/class-error-manager.php:201
|
145 |
msgid "Create a backup of your database"
|
146 |
msgstr ""
|
147 |
|
148 |
+
#: includes/class-error-manager.php:202
|
149 |
msgid "Create a copy of each translation table where you encounter errors. You can copy the table within the same database (trp_dictionary_en_us_es_es_COPY for example) -- perform this step only if you want to keep the current translations"
|
150 |
msgstr ""
|
151 |
|
152 |
+
#: includes/class-error-manager.php:203
|
153 |
msgid "Remove the trouble tables by executing the DROP function on them"
|
154 |
msgstr ""
|
155 |
|
156 |
+
#: includes/class-error-manager.php:204
|
157 |
msgid "Go to Settings -> TranslatePress -> General tab and Save Settings. This will regenerate the tables using your current SQL server."
|
158 |
msgstr ""
|
159 |
|
160 |
+
#: includes/class-error-manager.php:205
|
161 |
msgid "Copy the relevant content from the duplicated tables (trp_dictionary_en_us_es_es_COPY for example) in the newly generated table (trp_dictionary_en_us_es_es) -- perform this step only if you want to keep the current translations"
|
162 |
msgstr ""
|
163 |
|
164 |
+
#: includes/class-error-manager.php:206
|
165 |
msgid "Test it to see if everything is working. If something went wrong, you can restore the backup that you've made at the first step. Check if no more errors occur while browsing your website in a translated language. Look at the timestamps of the errors to make sure you are not seeing the old errors. Only the most recent 5 errors are displayed."
|
166 |
msgstr ""
|
167 |
|
168 |
+
#: includes/class-error-manager.php:209
|
169 |
msgid "Plan C."
|
170 |
msgstr ""
|
171 |
|
172 |
+
#: includes/class-error-manager.php:210
|
173 |
msgid "If your problem still isn't solved, try asking your hosting about your errors. The most common issue is missing permissions for the SQL user, such as the Create Tables permission."
|
174 |
msgstr ""
|
175 |
|
177 |
msgid "Could not install. Try again from <a href=\"%s\" >Plugins Dashboard.</a>"
|
178 |
msgstr ""
|
179 |
|
180 |
+
#: includes/class-install-plugins.php:34, includes/class-settings.php:162, add-ons-advanced/extra-languages/partials/language-selector-pro.php:10
|
181 |
+
msgid "Active"
|
182 |
+
msgstr ""
|
183 |
+
|
184 |
#: includes/class-machine-translation-tab.php:22
|
185 |
msgid "Automatic Translation"
|
186 |
msgstr ""
|
187 |
|
188 |
+
#: includes/class-machine-translation-tab.php:136, add-ons-pro/deepl/includes/class-deepl.php:27
|
189 |
msgid "DeepL"
|
190 |
msgstr ""
|
191 |
|
192 |
+
#: includes/class-machine-translation-tab.php:161
|
193 |
msgid "Unsupported languages"
|
194 |
msgstr ""
|
195 |
|
196 |
+
#: includes/class-machine-translation-tab.php:172
|
197 |
msgid "Recheck supported languages"
|
198 |
msgstr ""
|
199 |
|
200 |
+
#: includes/class-machine-translation-tab.php:173
|
201 |
msgid "(last checked on %s)"
|
202 |
msgstr ""
|
203 |
|
204 |
+
#: includes/class-machine-translation-tab.php:175
|
205 |
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."
|
206 |
msgstr ""
|
207 |
|
208 |
+
#: includes/class-machine-translator.php:137
|
209 |
msgid "Please enter your Google Translate key."
|
210 |
msgstr ""
|
211 |
|
212 |
+
#: includes/class-machine-translator.php:152
|
213 |
msgid "Please enter your DeepL API key."
|
214 |
msgstr ""
|
215 |
|
321 |
msgid "Install & Activate"
|
322 |
msgstr ""
|
323 |
|
324 |
+
#: includes/class-settings.php:435, add-ons-advanced/extra-languages/class-extra-languages.php:44
|
325 |
+
msgid "Error! Duplicate URL slug values."
|
326 |
+
msgstr ""
|
327 |
+
|
328 |
#: includes/class-settings.php:476
|
329 |
msgid "Current Language"
|
330 |
msgstr ""
|
553 |
msgid "Different Menu Items for each Language"
|
554 |
msgstr ""
|
555 |
|
556 |
+
#: includes/class-translation-manager.php:153, partials/addons-settings-page.php:54
|
557 |
msgid "Automatic User Language Detection"
|
558 |
msgstr ""
|
559 |
|
593 |
msgid "Search for any text in this page in the dropdown."
|
594 |
msgstr ""
|
595 |
|
596 |
+
#: includes/class-translation-manager.php:231, add-ons-advanced/seo-pack/includes/string-translation/class-string-translation-seo.php:12
|
597 |
msgid "Slugs"
|
598 |
msgstr ""
|
599 |
|
773 |
msgid "Recreated original strings table."
|
774 |
msgstr ""
|
775 |
|
776 |
+
#: includes/class-upgrade.php:772
|
777 |
+
msgid "All individual TranslatePress add-on plugins have been discontinued and have been replaced with new Personal, Business and Developer versions of TranslatePress. Please log into the account page at <a href=\"https://translatepress.com/account/\" target=\"_blank\">translatepress.com</a> and download the new plugin and install it. Individual Add-ons will not receive updates anymore"
|
778 |
+
msgstr ""
|
779 |
+
|
780 |
#: includes/compatibility-functions.php:28
|
781 |
msgid "<strong>TranslatePress</strong> requires <strong><a href=\"http://php.net/manual/en/book.mbstring.php\">Multibyte String PHP library</a></strong>. Please contact your server administrator to install it on your server."
|
782 |
msgstr ""
|
785 |
msgid "Detected long query limitation on WPEngine hosting. Some large pages may appear untranslated. You can remove limitation by adding the following to your site’s wp-config.php: define( 'WPE_GOVERNOR', false ); "
|
786 |
msgstr ""
|
787 |
|
788 |
+
#: partials/addons-settings-page.php:3, partials/license-settings-page.php:46, partials/license-settings-page.php:8, partials/main-settings-page.php:5, partials/test-api-settings-page.php:11, partials/trp-remove-duplicate-rows.php:3
|
789 |
+
msgid "TranslatePress Settings"
|
790 |
msgstr ""
|
791 |
|
792 |
+
#: partials/addons-settings-page.php:11, partials/addons-settings-page.php:16
|
793 |
+
msgid "TranslatePress Add-ons"
|
794 |
+
msgstr ""
|
795 |
+
|
796 |
+
#: partials/addons-settings-page.php:17
|
797 |
+
msgid "You must first purchase this version to have access to the addon %1$shere%2$s"
|
798 |
+
msgstr ""
|
799 |
+
|
800 |
+
#: partials/addons-settings-page.php:21
|
801 |
+
msgid "Advanced Add-ons"
|
802 |
msgstr ""
|
803 |
|
804 |
#: partials/addons-settings-page.php:21
|
805 |
+
msgid "These addons extend your translation plugin and are available in the Developer, Business and Personal plans."
|
806 |
msgstr ""
|
807 |
|
808 |
+
#: partials/addons-settings-page.php:26
|
809 |
+
msgid "SEO Pack"
|
810 |
msgstr ""
|
811 |
|
812 |
+
#: partials/addons-settings-page.php:27
|
813 |
+
msgid "SEO support for page slug, page title, description and facebook and twitter social graph information. The HTML lang attribute is properly set."
|
814 |
msgstr ""
|
815 |
|
816 |
+
#: partials/addons-settings-page.php:33
|
817 |
+
msgid "Multiple Languages"
|
818 |
+
msgstr ""
|
819 |
+
|
820 |
+
#: partials/addons-settings-page.php:34
|
821 |
+
msgid "Add as many languages as you need for your project to go global. Publish your language only when all your translations are done."
|
822 |
+
msgstr ""
|
823 |
+
|
824 |
+
#: partials/addons-settings-page.php:42
|
825 |
+
msgid "Pro Add-ons"
|
826 |
+
msgstr ""
|
827 |
+
|
828 |
+
#: partials/addons-settings-page.php:42
|
829 |
msgid "These addons extend your translation plugin and are available in the Business and Developer plans."
|
830 |
msgstr ""
|
831 |
|
832 |
+
#: partials/addons-settings-page.php:47
|
833 |
+
msgid "DeepL Automatic Translation"
|
834 |
+
msgstr ""
|
835 |
+
|
836 |
+
#: partials/addons-settings-page.php:48
|
837 |
msgid "Automatically translate your website through the DeepL API."
|
838 |
msgstr ""
|
839 |
|
840 |
+
#: partials/addons-settings-page.php:55
|
841 |
+
msgid "Automatically redirects new visitors to their preferred language based on browser settings or IP address and remembers the last visited language."
|
842 |
msgstr ""
|
843 |
|
844 |
+
#: partials/addons-settings-page.php:61
|
845 |
+
msgid "Translator Accounts"
|
846 |
+
msgstr ""
|
847 |
+
|
848 |
+
#: partials/addons-settings-page.php:62
|
849 |
+
msgid "Create translator accounts for new users or allow existing users that are not administrators to translate your website."
|
850 |
msgstr ""
|
851 |
|
852 |
#: partials/addons-settings-page.php:68
|
853 |
+
msgid "Browse As User Role"
|
854 |
+
msgstr ""
|
855 |
+
|
856 |
+
#: partials/addons-settings-page.php:69
|
857 |
+
msgid "Navigate your website just like a particular user role would. Really useful for dynamic content or hidden content that appears for particular users."
|
858 |
+
msgstr ""
|
859 |
+
|
860 |
+
#: partials/addons-settings-page.php:75
|
861 |
+
msgid "Navigation Based on Language"
|
862 |
msgstr ""
|
863 |
|
864 |
#: partials/addons-settings-page.php:76
|
866 |
msgstr ""
|
867 |
|
868 |
#: partials/addons-settings-page.php:85
|
869 |
+
msgid "Recommended Plugins"
|
870 |
msgstr ""
|
871 |
|
872 |
+
#: partials/addons-settings-page.php:85
|
873 |
msgid "A short list of plugins you can use to extend your website."
|
874 |
msgstr ""
|
875 |
|
876 |
+
#: partials/addons-settings-page.php:91
|
877 |
+
msgid "Profile Builder"
|
878 |
msgstr ""
|
879 |
|
880 |
+
#: partials/addons-settings-page.php:92
|
881 |
+
msgid "Capture more user information on the registration form with the help of Profile Builder's custom user profile fields and/or add an Email Confirmation process to verify your customers accounts."
|
882 |
msgstr ""
|
883 |
|
884 |
+
#: partials/addons-settings-page.php:101
|
885 |
+
msgid "Paid Member Subscriptions"
|
886 |
msgstr ""
|
887 |
|
888 |
+
#: partials/addons-settings-page.php:102
|
889 |
msgid "Accept user payments, create subscription plans and restrict content on your membership site."
|
890 |
msgstr ""
|
891 |
|
909 |
msgid "If you purchased a premium version, first install and activate any of the <a href=\"%s\">Advanced or Pro Addons</a>. After this you will be prompted with an input to enter your license key."
|
910 |
msgstr ""
|
911 |
|
912 |
+
#: partials/license-settings-page.php:14
|
913 |
+
msgid "License Key"
|
914 |
+
msgstr ""
|
915 |
+
|
916 |
+
#: partials/license-settings-page.php:32
|
917 |
+
msgid "Activate License"
|
918 |
+
msgstr ""
|
919 |
+
|
920 |
+
#: partials/license-settings-page.php:22
|
921 |
+
msgid "Deactivate License"
|
922 |
+
msgstr ""
|
923 |
+
|
924 |
#: partials/license-settings-page.php:27
|
925 |
msgid "Your license is invalid"
|
926 |
msgstr ""
|
929 |
msgid "Active on this site"
|
930 |
msgstr ""
|
931 |
|
932 |
+
#: partials/license-settings-page.php:38
|
933 |
+
msgid "Enter your license key."
|
934 |
+
msgstr ""
|
935 |
+
|
936 |
#: partials/machine-translation-settings-page.php:4
|
937 |
msgid "TranslatePress Automatic Translation"
|
938 |
msgstr ""
|
1015 |
msgid "Only enable for testing purposes. Can impact performance.<br>All records are stored in the wp_trp_machine_translation_log database table. Use a plugin like <a href=\"https://wordpress.org/plugins/wp-data-access/\">WP Data Access</a> to browse the logs or directly from your database manager (PHPMyAdmin, etc.)"
|
1016 |
msgstr ""
|
1017 |
|
1018 |
+
#: partials/main-settings-language-selector.php:2, add-ons-pro/navigation-based-on-language/class-navigation-based-on-language.php:81, add-ons-advanced/extra-languages/partials/language-selector-pro.php:2
|
1019 |
+
msgid "All Languages"
|
1020 |
+
msgstr ""
|
1021 |
+
|
1022 |
+
#: partials/main-settings-language-selector.php:7, add-ons-advanced/extra-languages/partials/language-selector-pro.php:7
|
1023 |
+
msgid "Language"
|
1024 |
+
msgstr ""
|
1025 |
+
|
1026 |
+
#: partials/main-settings-language-selector.php:8, add-ons-advanced/extra-languages/partials/language-selector-pro.php:8
|
1027 |
+
msgid "Code"
|
1028 |
+
msgstr ""
|
1029 |
+
|
1030 |
+
#: partials/main-settings-language-selector.php:9, add-ons-advanced/extra-languages/partials/language-selector-pro.php:9
|
1031 |
+
msgid "Slug"
|
1032 |
+
msgstr ""
|
1033 |
+
|
1034 |
+
#: partials/main-settings-language-selector.php:40, add-ons-advanced/extra-languages/partials/language-selector-pro.php:43
|
1035 |
+
msgid "Are you sure you want to remove this language?"
|
1036 |
+
msgstr ""
|
1037 |
+
|
1038 |
+
#: partials/main-settings-language-selector.php:48, add-ons-advanced/extra-languages/partials/language-selector-pro.php:51
|
1039 |
+
msgid "Choose..."
|
1040 |
+
msgstr ""
|
1041 |
+
|
1042 |
#: partials/main-settings-language-selector.php:59
|
1043 |
msgid "Select the language you wish to make your website available in."
|
1044 |
msgstr ""
|
1063 |
msgstr ""
|
1064 |
|
1065 |
#: partials/main-settings-language-selector.php:66
|
1066 |
+
msgid "To add <strong>more than two languages</strong> activate the <strong>Extra Languages Add-on</strong> from <a href=\"%s\" class=\"trp-translatepress-account-page\" target=\"_blank\" title=\"Add-ons page\">the Add-ons Page</a>. Once activated, you'll be able to add unlimited languages."
|
1067 |
msgstr ""
|
1068 |
|
1069 |
#: partials/main-settings-page.php:10
|
1218 |
msgid "Updating TranslatePress tables"
|
1219 |
msgstr ""
|
1220 |
|
1221 |
+
#: add-ons-pro/navigation-based-on-language/class-navigation-based-on-language.php:75
|
1222 |
+
msgid "Limit this menu item to the following languages"
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1223 |
msgstr ""
|
1224 |
|
1225 |
#: includes/advanced-settings/custom-date-format.php:16
|
1623 |
#: includes/string-translation/string-translation-editor.php:7
|
1624 |
msgid "String Translation Editor"
|
1625 |
msgstr ""
|
1626 |
+
|
1627 |
+
#: add-ons-advanced/extra-languages/partials/language-selector-pro.php:61
|
1628 |
+
msgid "Select the languages you wish to make your website available in."
|
1629 |
+
msgstr ""
|
1630 |
+
|
1631 |
+
#: add-ons-advanced/seo-pack/includes/class-slug-manager.php:49, add-ons-advanced/seo-pack/includes/string-translation/class-string-translation-seo.php:56
|
1632 |
+
msgid "Post Slug"
|
1633 |
+
msgstr ""
|
1634 |
+
|
1635 |
+
#: add-ons-pro/automatic-language-detection/includes/class-ald-settings.php:37
|
1636 |
+
msgid "First by browser language, then IP address (recommended)"
|
1637 |
+
msgstr ""
|
1638 |
+
|
1639 |
+
#: add-ons-pro/automatic-language-detection/includes/class-ald-settings.php:38
|
1640 |
+
msgid "First by IP address, then by browser language"
|
1641 |
+
msgstr ""
|
1642 |
+
|
1643 |
+
#: add-ons-pro/automatic-language-detection/includes/class-ald-settings.php:39
|
1644 |
+
msgid "Only by browser language"
|
1645 |
+
msgstr ""
|
1646 |
+
|
1647 |
+
#: add-ons-pro/automatic-language-detection/includes/class-ald-settings.php:40
|
1648 |
+
msgid "Only by IP address"
|
1649 |
+
msgstr ""
|
1650 |
+
|
1651 |
+
#: add-ons-pro/automatic-language-detection/includes/class-ald-settings.php:110
|
1652 |
+
msgid "WARNING. Cannot determine your language preference based on your current IP.<br>This is most likely because the website is on a local environment."
|
1653 |
+
msgstr ""
|
1654 |
+
|
1655 |
+
#: add-ons-pro/automatic-language-detection/partials/settings-option.php:2
|
1656 |
+
msgid "Method of language detection"
|
1657 |
+
msgstr ""
|
1658 |
+
|
1659 |
+
#: add-ons-pro/automatic-language-detection/partials/settings-option.php:14
|
1660 |
+
msgid "Select how the language should be detected for first time visitors.<br>The visitor's last displayed language will be remembered through cookies."
|
1661 |
+
msgstr ""
|
1662 |
+
|
1663 |
+
#: add-ons-pro/deepl/includes/class-deepl.php:56
|
1664 |
+
msgid "Bad request. There was an error accessing the DeepL API."
|
1665 |
+
msgstr ""
|
1666 |
+
|
1667 |
+
#: add-ons-pro/deepl/includes/class-deepl.php:59
|
1668 |
+
msgid "The API key entered is invalid."
|
1669 |
+
msgstr ""
|
1670 |
+
|
1671 |
+
#: add-ons-pro/deepl/includes/class-deepl.php:62
|
1672 |
+
msgid "The API resource could not be found."
|
1673 |
+
msgstr ""
|
1674 |
+
|
1675 |
+
#: add-ons-pro/deepl/includes/class-deepl.php:65
|
1676 |
+
msgid "The request size is too large."
|
1677 |
+
msgstr ""
|
1678 |
+
|
1679 |
+
#: add-ons-pro/deepl/includes/class-deepl.php:68
|
1680 |
+
msgid "The request is too long."
|
1681 |
+
msgstr ""
|
1682 |
+
|
1683 |
+
#: add-ons-pro/deepl/includes/class-deepl.php:71
|
1684 |
+
msgid "Too many requests. Please try again later."
|
1685 |
+
msgstr ""
|
1686 |
+
|
1687 |
+
#: add-ons-pro/deepl/includes/class-deepl.php:74
|
1688 |
+
msgid "Your translation quota has been reached."
|
1689 |
+
msgstr ""
|
1690 |
+
|
1691 |
+
#: add-ons-pro/deepl/includes/class-deepl.php:77
|
1692 |
+
msgid "We could not process your request. Please try again later."
|
1693 |
+
msgstr ""
|
1694 |
+
|
1695 |
+
#: add-ons-pro/deepl/includes/class-deepl.php:80
|
1696 |
+
msgid "There is an error on the DeepL service and your request could not be processed."
|
1697 |
+
msgstr ""
|
1698 |
+
|
1699 |
+
#: add-ons-pro/deepl/includes/class-deepl.php:124
|
1700 |
+
msgid "DeepL API Type"
|
1701 |
+
msgstr ""
|
1702 |
+
|
1703 |
+
#: add-ons-pro/deepl/includes/class-deepl.php:128
|
1704 |
+
msgid "Pro"
|
1705 |
+
msgstr ""
|
1706 |
+
|
1707 |
+
#: add-ons-pro/deepl/includes/class-deepl.php:133
|
1708 |
+
msgid "Free"
|
1709 |
+
msgstr ""
|
1710 |
+
|
1711 |
+
#: add-ons-pro/deepl/includes/class-deepl.php:137
|
1712 |
+
msgid "Select the type of DeepL API you want to use."
|
1713 |
+
msgstr ""
|
1714 |
+
|
1715 |
+
#: add-ons-pro/deepl/includes/class-deepl.php:143
|
1716 |
+
msgid "DeepL API Key"
|
1717 |
+
msgstr ""
|
1718 |
+
|
1719 |
+
#: add-ons-pro/deepl/includes/class-deepl.php:163
|
1720 |
+
msgid "Visit <a href=\"%s\" target=\"_blank\">this link</a> to see how you can set up an API key and control API costs."
|
1721 |
+
msgstr ""
|
1722 |
+
|
1723 |
+
#: add-ons-pro/translator-accounts/includes/class-translator-accounts.php:92
|
1724 |
+
msgid " TranslatePress Settings"
|
1725 |
+
msgstr ""
|
1726 |
+
|
1727 |
+
#: add-ons-pro/translator-accounts/includes/class-translator-accounts.php:96, add-ons-pro/translator-accounts/includes/class-translator-accounts.php:97
|
1728 |
+
msgid "Translator"
|
1729 |
+
msgstr ""
|
1730 |
+
|
1731 |
+
#: add-ons-pro/translator-accounts/includes/class-translator-accounts.php:101
|
1732 |
+
msgid "Allow this user to translate the website."
|
1733 |
+
msgstr ""
|
1734 |
+
|
1735 |
+
#: add-ons-advanced/seo-pack/includes/string-translation/class-string-translation-seo.php:11
|
1736 |
+
msgid "URL Slugs Translation"
|
1737 |
+
msgstr ""
|
1738 |
+
|
1739 |
+
#: add-ons-advanced/seo-pack/includes/string-translation/class-string-translation-seo.php:16
|
1740 |
+
msgid "Taxonomy Slugs"
|
1741 |
+
msgstr ""
|
1742 |
+
|
1743 |
+
#: add-ons-advanced/seo-pack/includes/string-translation/class-string-translation-seo.php:17
|
1744 |
+
msgid "Search Taxonomy Slugs"
|
1745 |
+
msgstr ""
|
1746 |
+
|
1747 |
+
#: add-ons-advanced/seo-pack/includes/string-translation/class-string-translation-seo.php:23
|
1748 |
+
msgid "Taxonomy Slug"
|
1749 |
+
msgstr ""
|
1750 |
+
|
1751 |
+
#: add-ons-advanced/seo-pack/includes/string-translation/class-string-translation-seo.php:24, add-ons-advanced/seo-pack/includes/string-translation/class-string-translation-seo.php:37, add-ons-advanced/seo-pack/includes/string-translation/class-string-translation-seo.php:57, add-ons-advanced/seo-pack/includes/string-translation/class-string-translation-seo.php:77, add-ons-advanced/seo-pack/includes/string-translation/class-string-translation-seo.php:95
|
1752 |
+
msgid "Translation"
|
1753 |
+
msgstr ""
|
1754 |
+
|
1755 |
+
#: add-ons-advanced/seo-pack/includes/string-translation/class-string-translation-seo.php:30
|
1756 |
+
msgid "Term Slugs"
|
1757 |
+
msgstr ""
|
1758 |
+
|
1759 |
+
#: add-ons-advanced/seo-pack/includes/string-translation/class-string-translation-seo.php:31
|
1760 |
+
msgid "Search Term Slugs"
|
1761 |
+
msgstr ""
|
1762 |
+
|
1763 |
+
#: add-ons-advanced/seo-pack/includes/string-translation/class-string-translation-seo.php:36
|
1764 |
+
msgid "Term Slug"
|
1765 |
+
msgstr ""
|
1766 |
+
|
1767 |
+
#: add-ons-advanced/seo-pack/includes/string-translation/class-string-translation-seo.php:38
|
1768 |
+
msgid "Taxonomy"
|
1769 |
+
msgstr ""
|
1770 |
+
|
1771 |
+
#: add-ons-advanced/seo-pack/includes/string-translation/class-string-translation-seo.php:43
|
1772 |
+
msgid "Filter by Taxonomy"
|
1773 |
+
msgstr ""
|
1774 |
+
|
1775 |
+
#: add-ons-advanced/seo-pack/includes/string-translation/class-string-translation-seo.php:49
|
1776 |
+
msgid "Post Slugs"
|
1777 |
+
msgstr ""
|
1778 |
+
|
1779 |
+
#: add-ons-advanced/seo-pack/includes/string-translation/class-string-translation-seo.php:50
|
1780 |
+
msgid "Search Post Slugs"
|
1781 |
+
msgstr ""
|
1782 |
+
|
1783 |
+
#: add-ons-advanced/seo-pack/includes/string-translation/class-string-translation-seo.php:55
|
1784 |
+
msgid "Post ID"
|
1785 |
+
msgstr ""
|
1786 |
+
|
1787 |
+
#: add-ons-advanced/seo-pack/includes/string-translation/class-string-translation-seo.php:58
|
1788 |
+
msgid "Post Type"
|
1789 |
+
msgstr ""
|
1790 |
+
|
1791 |
+
#: add-ons-advanced/seo-pack/includes/string-translation/class-string-translation-seo.php:63
|
1792 |
+
msgid "Filter by Post Type"
|
1793 |
+
msgstr ""
|
1794 |
+
|
1795 |
+
#: add-ons-advanced/seo-pack/includes/string-translation/class-string-translation-seo.php:67
|
1796 |
+
msgid "Published"
|
1797 |
+
msgstr ""
|
1798 |
+
|
1799 |
+
#: add-ons-advanced/seo-pack/includes/string-translation/class-string-translation-seo.php:68
|
1800 |
+
msgid "Any Post Status"
|
1801 |
+
msgstr ""
|
1802 |
+
|
1803 |
+
#: add-ons-advanced/seo-pack/includes/string-translation/class-string-translation-seo.php:74
|
1804 |
+
msgid "Post Type Base Slugs"
|
1805 |
+
msgstr ""
|
1806 |
+
|
1807 |
+
#: add-ons-advanced/seo-pack/includes/string-translation/class-string-translation-seo.php:76
|
1808 |
+
msgid "Post Type Base Slug"
|
1809 |
+
msgstr ""
|
1810 |
+
|
1811 |
+
#: add-ons-advanced/seo-pack/includes/string-translation/class-string-translation-seo.php:80
|
1812 |
+
msgid "Search Post Type Base Slugs"
|
1813 |
+
msgstr ""
|
1814 |
+
|
1815 |
+
#: add-ons-advanced/seo-pack/includes/string-translation/class-string-translation-seo.php:92
|
1816 |
+
msgid "WooCommerce Slugs"
|
1817 |
+
msgstr ""
|
1818 |
+
|
1819 |
+
#: add-ons-advanced/seo-pack/includes/string-translation/class-string-translation-seo.php:94
|
1820 |
+
msgid "WooCommerce Slug"
|
1821 |
+
msgstr ""
|
1822 |
+
|
1823 |
+
#: add-ons-advanced/seo-pack/includes/string-translation/class-string-translation-seo.php:98
|
1824 |
+
msgid "Search WooCommerce Slugs"
|
1825 |
+
msgstr ""
|
partials/addons-settings-page.php
CHANGED
@@ -3,117 +3,116 @@
|
|
3 |
<h1> <?php esc_html_e( 'TranslatePress Settings', 'translatepress-multilingual' );?></h1>
|
4 |
<?php do_action ( 'trp_settings_navigation_tabs' ); ?>
|
5 |
|
6 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
7 |
|
8 |
-
<div class="trp-add-ons-plugins-column">
|
9 |
|
10 |
-
<div class="grid feat-header">
|
11 |
-
<div class="grid-cell">
|
12 |
-
<h2><?php _e( 'Advanced Addons', 'translatepress-multilingual' );?></h2>
|
13 |
-
<p><?php _e( 'These addons extend your translation plugin and are available in the Developer, Business and Personal plans.', 'translatepress-multilingual' );?></p>
|
14 |
-
</div>
|
15 |
-
</div>
|
16 |
-
|
17 |
-
<div class="grid">
|
18 |
-
<div class="grid-cell" style="overflow:hidden;">
|
19 |
-
<a href="https://translatepress.com/pricing/" target="_blank"><img src="<?php echo esc_url( plugins_url('../assets/images/seo_icon_translatepress.png', __FILE__) ) ?>" alt="SEO" style="float: left; margin: 0 1.5rem 1.5rem 0;"></a>
|
20 |
-
<h3><a href=" <?php echo trp_add_affiliate_id_to_link('https://translatepress.com/pricing/?utm_source=wpbackend&utm_medium=clientsite&utm_content=addons_tab&utm_campaign=tpfree') ?> " target="_blank"> SEO Pack</a></h3>
|
21 |
-
<p><?php _e( 'SEO support for page slug, page title, description and facebook and twitter social graph information. </br> The HTML lang attribute is properly set.', 'translatepress-multilingual' );?></p>
|
22 |
-
</div>
|
23 |
-
</div>
|
24 |
-
|
25 |
-
<div class="grid">
|
26 |
-
<div class="grid-cell" style="overflow:hidden;">
|
27 |
-
<a href="https://translatepress.com/pricing/" target="_blank"><img src="<?php echo esc_url( plugins_url('../assets/images/multiple_lang_icon.png', __FILE__) ) ?>" alt="Multiple Languages" style="float: left; margin: 0 1.5rem 1.5rem 0;"></a>
|
28 |
-
<h3><a href=" <?php echo trp_add_affiliate_id_to_link('https://translatepress.com/pricing/?utm_source=wpbackend&utm_medium=clientsite&utm_content=addons_tab&utm_campaign=tpfree') ?> " target="_blank"> Multiple Languages</a></h3>
|
29 |
-
<p><?php _e( 'Add as many languages as you need for your project to go global.<br>Publish your language only when all your translations are done.', 'translatepress-multilingual' );?> </p>
|
30 |
-
</div>
|
31 |
-
</div>
|
32 |
-
|
33 |
-
<div class="grid feat-header">
|
34 |
-
<div class="grid-cell">
|
35 |
-
<h2><?php _e( 'Pro Addons', 'translatepress-multilingual' );?></h2>
|
36 |
-
<p><?php _e( 'These addons extend your translation plugin and are available in the Business and Developer plans.', 'translatepress-multilingual' );?></p>
|
37 |
-
</div>
|
38 |
-
</div>
|
39 |
-
|
40 |
-
<div class="grid">
|
41 |
-
<div class="grid-cell" style="overflow:hidden;">
|
42 |
-
<a href="https://translatepress.com/pricing/" target="_blank"><img src="<?php echo esc_url( plugins_url('../assets/images/deepl-add-on.png', __FILE__) ) ?>" alt="DeepL Automatic Translation" style="float: left; margin: 0 1.5rem 1.5rem 0;"></a>
|
43 |
-
<h3><a href=" <?php echo trp_add_affiliate_id_to_link('https://translatepress.com/pricing/?utm_source=wpbackend&utm_medium=clientsite&utm_content=addons_tab&utm_campaign=tpfree') ?> " target="_blank">DeepL Automatic Translation</a></h3>
|
44 |
-
<p><?php _e( 'Automatically translate your website through the DeepL API.', 'translatepress-multilingual' );?></p>
|
45 |
-
</div>
|
46 |
-
</div>
|
47 |
-
|
48 |
-
<div class="grid">
|
49 |
-
<div class="grid-cell" style="overflow:hidden;">
|
50 |
-
<a href="https://translatepress.com/pricing/" target="_blank"><img src="<?php echo esc_url( plugins_url('../assets/images/auto-detect-language-add-on.png', __FILE__) ) ?>" alt="Automatic User Language Detection" style="float: left; margin: 0 1.5rem 1.5rem 0;"></a>
|
51 |
-
<h3><a href=" <?php echo trp_add_affiliate_id_to_link('https://translatepress.com/pricing/?utm_source=wpbackend&utm_medium=clientsite&utm_content=addons_tab&utm_campaign=tpfree') ?> " target="_blank"> Automatic User Language Detection</a></h3>
|
52 |
-
<p><?php _e( 'Automatically redirects new visitors to their preferred language based on browser settings or IP address</br> and remembers the last visited language.', 'translatepress-multilingual' );?></p>
|
53 |
-
</div>
|
54 |
-
</div>
|
55 |
-
|
56 |
-
<div class="grid">
|
57 |
-
<div class="grid-cell" style="overflow:hidden;">
|
58 |
-
<a href="https://translatepress.com/pricing/" target="_blank"><img src="<?php echo esc_url( plugins_url('../assets/images/translator-accounts-addon.png', __FILE__) ) ?>" alt="Translator Account" style="float: left; margin: 0 1.5rem 1.5rem 0;"></a>
|
59 |
-
<h3><a href=" <?php echo trp_add_affiliate_id_to_link('https://translatepress.com/pricing/?utm_source=wpbackend&utm_medium=clientsite&utm_content=addons_tab&utm_campaign=tpfree') ?> " target="_blank"> Translator Accounts</a></h3>
|
60 |
-
<p><?php _e( 'Create translator accounts for new users or allow existing users <br/>that are not administrators to translate your website.', 'translatepress-multilingual' );?></p>
|
61 |
-
</div>
|
62 |
-
</div>
|
63 |
-
|
64 |
-
<div class="grid">
|
65 |
-
<div class="grid-cell" style="overflow:hidden;">
|
66 |
-
<a href="https://translatepress.com/pricing/" target="_blank"><img src="<?php echo esc_url( plugins_url('../assets/images/view-as-addon.png', __FILE__) ) ?>" alt="Browse As User Role" style="float: left; margin: 0 1.5rem 1.5rem 0;"></a>
|
67 |
-
<h3><a href=" <?php echo trp_add_affiliate_id_to_link('https://translatepress.com/pricing/?utm_source=wpbackend&utm_medium=clientsite&utm_content=addons_tab&utm_campaign=tpfree') ?> " target="_blank"> Browse As User Role</a></h3>
|
68 |
-
<p><?php _e( 'Navigate your website just like a particular user role would. <br/>Really useful for dynamic content or hidden content that appears for particular users.', 'translatepress-multilingual' );?></p>
|
69 |
-
</div>
|
70 |
-
</div>
|
71 |
-
|
72 |
-
<div class="grid">
|
73 |
-
<div class="grid-cell" style="overflow:hidden;">
|
74 |
-
<a href="https://translatepress.com/pricing/" target="_blank"><img src="<?php echo esc_url( plugins_url('../assets/images/menu_based_on_lang.png', __FILE__) ) ?>" alt="Navigation Based on Language" style="float: left; margin: 0 1.5rem 1.5rem 0;"></a>
|
75 |
-
<h3><a href=" <?php echo trp_add_affiliate_id_to_link('https://translatepress.com/pricing/?utm_source=wpbackend&utm_medium=clientsite&utm_content=addons_tab&utm_campaign=tpfree') ?> " target="_blank"> Navigation Based on Language</a></h3>
|
76 |
-
<p><?php _e( 'Configure different menu items for different languages.', 'translatepress-multilingual' );?></p>
|
77 |
-
</div>
|
78 |
-
</div>
|
79 |
-
</div>
|
80 |
-
|
81 |
-
<div class="trp-add-ons-plugins-column">
|
82 |
-
|
83 |
-
<div class="grid feat-header">
|
84 |
-
<div class="grid-cell">
|
85 |
-
<h2><?php _e( 'Recommended Plugins by the same developers', 'translatepress-multilingual' );?></h2>
|
86 |
-
<p><?php _e( 'A short list of plugins you can use to extend your website.', 'translatepress-multilingual' );?></p>
|
87 |
-
</div>
|
88 |
-
</div>
|
89 |
-
|
90 |
-
<div class="grid">
|
91 |
-
<div class="grid-cell" style="overflow:hidden;">
|
92 |
-
<a href="<?php echo trp_add_affiliate_id_to_link('https://www.cozmoslabs.com/wordpress-profile-builder/?utm_source=tpbackend&utm_medium=clientsite&utm_content=tp-addons-page&utm_campaign=TPPB') ?>" target="_blank"><img src="<?php echo esc_url( plugins_url('../assets/images/pb_logo.jpg', __FILE__) ) ?>" alt="Profile Builder" style="float: left; margin: 0 1.5rem 1.5rem 0;"></a>
|
93 |
-
<h3><a href="<?php echo trp_add_affiliate_id_to_link('https://www.cozmoslabs.com/wordpress-profile-builder/?utm_source=tpbackend&utm_medium=clientsite&utm_content=tp-addons-page&utm_campaign=TPPB') ?>" target="_blank">Profile Builder</a></h3>
|
94 |
-
<p><?php _e( 'Capture more user information on the registration form with the help of Profile Builder\'s custom user profile fields and/or add an Email Confirmation process to verify your customers accounts.', 'translatepress-multilingual' );?></p>
|
95 |
-
<div class="trp-recommended-buttons">
|
96 |
-
<a class="trp-recommended-learn-more" target="_blank" href="<?php echo trp_add_affiliate_id_to_link('https://www.cozmoslabs.com/wordpress-profile-builder/?utm_source=tpbackend&utm_medium=clientsite&utm_content=tp-addons-page&utm_campaign=TPPB') ?>">
|
97 |
-
<button class="button"><?php _e( 'Learn More', 'translatepress-multilingual' ); ?></button>
|
98 |
-
</a>
|
99 |
-
<button class="button-primary trp-recommended-plugin-buttons trp-install-and-activate" data-trp-plugin-slug="pb" data-trp-action-performed="<?php _e( 'Installing...', 'translatepress-multilingual' );?>" <?php echo $plugin_settings['pb']['disabled']; ?>><?php echo $plugin_settings['pb']['install_button']; ?></button>
|
100 |
-
</div>
|
101 |
-
</div>
|
102 |
-
</div>
|
103 |
-
|
104 |
-
<div class="grid">
|
105 |
-
<div class="grid-cell" style="overflow:hidden;">
|
106 |
-
<a href="<?php echo trp_add_affiliate_id_to_link('https://www.cozmoslabs.com/wordpress-paid-member-subscriptions/?utm_source=tpbackend&utm_medium=clientsite&utm_content=tp-addons-page&utm_campaign=TPPMS') ?> " target="_blank"><img src="<?php echo esc_url( plugins_url('../assets/images/pms_logo.jpg', __FILE__) ) ?>" alt="Paid Member Subscriptions" style="float: left; margin: 0 1.5rem 1.5rem 0;"></a>
|
107 |
-
<h3><a href="<?php echo trp_add_affiliate_id_to_link('https://www.cozmoslabs.com/wordpress-paid-member-subscriptions/?utm_source=tpbackend&utm_medium=clientsite&utm_content=tp-addons-page&utm_campaign=TPPMS') ?> " target="_blank">Paid Member Subscriptions</a></h3>
|
108 |
-
<p><?php _e( 'Accept user payments, create subscription plans and restrict content on your membership site.', 'translatepress-multilingual' );?> </p>
|
109 |
-
<div class="trp-recommended-buttons">
|
110 |
-
<a class="trp-recommended-learn-more" target="_blank" href="<?php echo trp_add_affiliate_id_to_link('https://www.cozmoslabs.com/wordpress-paid-member-subscriptions/?utm_source=tpbackend&utm_medium=clientsite&utm_content=tp-addons-page&utm_campaign=TPPMS')?>">
|
111 |
-
<button class="button"><?php _e( 'Learn More', 'translatepress-multilingual' ); ?></button>
|
112 |
-
</a>
|
113 |
-
<button class="button-primary trp-recommended-plugin-buttons trp-install-and-activate" data-trp-plugin-slug="pms" data-trp-action-performed="<?php echo _e( 'Installing...', 'translatepress-multilingual' );?>" <?php echo $plugin_settings['pms']['disabled']; ?>><?php echo $plugin_settings['pms']['install_button']; ?></button>
|
114 |
-
</div>
|
115 |
-
</div>
|
116 |
-
</div>
|
117 |
-
</div>
|
118 |
-
</div>
|
119 |
</div>
|
3 |
<h1> <?php esc_html_e( 'TranslatePress Settings', 'translatepress-multilingual' );?></h1>
|
4 |
<?php do_action ( 'trp_settings_navigation_tabs' ); ?>
|
5 |
|
6 |
+
<?php
|
7 |
+
//initialize the object
|
8 |
+
$trp_addons_listing = new TRP_Addons_List_Table();
|
9 |
+
$trp_addons_listing->images_folder = TRP_PLUGIN_URL.'assets/images/';
|
10 |
+
$trp_addons_listing->text_domain = 'translatepress-multilingual';
|
11 |
+
$trp_addons_listing->header = array( 'title' => __('TranslatePress Add-ons', 'translatepress-multilingual' ) );
|
12 |
+
if( defined( 'TRANSLATE_PRESS' ) )
|
13 |
+
$trp_addons_listing->current_version = TRANSLATE_PRESS;
|
14 |
+
else
|
15 |
+
$trp_addons_listing->current_version = 'TranslatePress - Multilingual';//in free version we do not define the constant as free version needs to be active always
|
16 |
+
$trp_addons_listing->tooltip_header = __( 'TranslatePress Add-ons', 'translatepress-multilingual' );
|
17 |
+
$trp_addons_listing->tooltip_content = sprintf( __( 'You must first purchase this version to have access to the addon %1$shere%2$s', 'translatepress-multilingual' ), '<a target="_blank" href="'. trp_add_affiliate_id_to_link('https://translatepress.com/pricing/?utm_source=wpbackend&utm_medium=clientsite&utm_content=add-on-page&utm_campaign=TRP').'">', '</a>' );
|
18 |
+
|
19 |
+
|
20 |
+
//Add Advanced section
|
21 |
+
$trp_addons_listing->section_header = array( 'title' => __('Advanced Add-ons', 'translatepress-multilingual' ), 'description' => __('These addons extend your translation plugin and are available in the Developer, Business and Personal plans.', 'translatepress-multilingual') );
|
22 |
+
$trp_addons_listing->section_versions = array( 'TranslatePress - Dev', 'TranslatePress - Personal', 'TranslatePress - Business', 'TranslatePress - Developer' );
|
23 |
+
$trp_addons_listing->items = array(
|
24 |
+
array( 'slug' => 'tp-add-on-seo-pack/tp-seo-pack.php',
|
25 |
+
'type' => 'add-on',
|
26 |
+
'name' => __( 'SEO Pack', 'translatepress-multilingual' ),
|
27 |
+
'description' => __( 'SEO support for page slug, page title, description and facebook and twitter social graph information. The HTML lang attribute is properly set.', 'translatepress-multilingual' ),
|
28 |
+
'icon' => 'seo_icon_translatepress.png',
|
29 |
+
'doc_url' => 'https://translatepress.com/docs/addons/seo-pack/?utm_source=wpbackend&utm_medium=clientsite&utm_content=add-on-page&utm_campaign=TRP',
|
30 |
+
),
|
31 |
+
array( 'slug' => 'tp-add-on-extra-languages/tp-extra-languages.php',
|
32 |
+
'type' => 'add-on',
|
33 |
+
'name' => __( 'Multiple Languages', 'translatepress-multilingual' ),
|
34 |
+
'description' => __( 'Add as many languages as you need for your project to go global. Publish your language only when all your translations are done.', 'translatepress-multilingual' ),
|
35 |
+
'icon' => 'multiple_lang_icon.png',
|
36 |
+
'doc_url' => 'https://translatepress.com/docs/addons/multiple-languages/?utm_source=wpbackend&utm_medium=clientsite&utm_content=add-on-page&utm_campaign=TRP',
|
37 |
+
),
|
38 |
+
);
|
39 |
+
$trp_addons_listing->add_section();
|
40 |
+
|
41 |
+
//Add Pro Section
|
42 |
+
$trp_addons_listing->section_header = array( 'title' => __('Pro Add-ons', 'translatepress-multilingual' ), 'description' => __('These addons extend your translation plugin and are available in the Business and Developer plans.', 'translatepress-multilingual') );
|
43 |
+
$trp_addons_listing->section_versions = array( 'TranslatePress - Dev', 'TranslatePress - Business', 'TranslatePress - Developer' );
|
44 |
+
$trp_addons_listing->items = array(
|
45 |
+
array( 'slug' => 'tp-add-on-deepl/index.php',
|
46 |
+
'type' => 'add-on',
|
47 |
+
'name' => __( 'DeepL Automatic Translation', 'translatepress-multilingual' ),
|
48 |
+
'description' => __( 'Automatically translate your website through the DeepL API.', 'translatepress-multilingual' ),
|
49 |
+
'icon' => 'deepl-add-on.png',
|
50 |
+
'doc_url' => 'https://translatepress.com/docs/addons/deepl-automatic-translation/?utm_source=wpbackend&utm_medium=clientsite&utm_content=add-on-page&utm_campaign=TRP',
|
51 |
+
),
|
52 |
+
array( 'slug' => 'tp-add-on-automatic-language-detection/tp-automatic-language-detection.php',
|
53 |
+
'type' => 'add-on',
|
54 |
+
'name' => __( 'Automatic User Language Detection', 'translatepress-multilingual' ),
|
55 |
+
'description' => __( 'Automatically redirects new visitors to their preferred language based on browser settings or IP address and remembers the last visited language.', 'translatepress-multilingual' ),
|
56 |
+
'icon' => 'auto-detect-language-add-on.png',
|
57 |
+
'doc_url' => 'https://translatepress.com/docs/addons/automatic-user-language-detection/?utm_source=wpbackend&utm_medium=clientsite&utm_content=add-on-page&utm_campaign=TRP',
|
58 |
+
),
|
59 |
+
array( 'slug' => 'tp-add-on-translator-accounts/index.php',
|
60 |
+
'type' => 'add-on',
|
61 |
+
'name' => __( 'Translator Accounts', 'translatepress-multilingual' ),
|
62 |
+
'description' => __( 'Create translator accounts for new users or allow existing users that are not administrators to translate your website.', 'translatepress-multilingual' ),
|
63 |
+
'icon' => 'translator-accounts-addon.png',
|
64 |
+
'doc_url' => 'https://translatepress.com/docs/addons/translator-accounts/?utm_source=wpbackend&utm_medium=clientsite&utm_content=add-on-page&utm_campaign=TRP',
|
65 |
+
),
|
66 |
+
array( 'slug' => 'tp-add-on-browse-as-other-roles/tp-browse-as-other-role.php',
|
67 |
+
'type' => 'add-on',
|
68 |
+
'name' => __( 'Browse As User Role', 'translatepress-multilingual' ),
|
69 |
+
'description' => __( 'Navigate your website just like a particular user role would. Really useful for dynamic content or hidden content that appears for particular users.', 'translatepress-multilingual' ),
|
70 |
+
'icon' => 'view-as-addon.png',
|
71 |
+
'doc_url' => 'https://translatepress.com/docs/addons/browse-as-role/?utm_source=wpbackend&utm_medium=clientsite&utm_content=add-on-page&utm_campaign=TRP',
|
72 |
+
),
|
73 |
+
array( 'slug' => 'tp-add-on-navigation-based-on-language/tp-navigation-based-on-language.php',
|
74 |
+
'type' => 'add-on',
|
75 |
+
'name' => __( 'Navigation Based on Language', 'translatepress-multilingual' ),
|
76 |
+
'description' => __( 'Configure different menu items for different languages.', 'translatepress-multilingual' ),
|
77 |
+
'icon' => 'menu_based_on_lang.png',
|
78 |
+
'doc_url' => 'https://translatepress.com/docs/addons/navigate-based-language/?utm_source=wpbackend&utm_medium=clientsite&utm_content=add-on-page&utm_campaign=TRP',
|
79 |
+
),
|
80 |
+
);
|
81 |
+
$trp_addons_listing->add_section();
|
82 |
+
|
83 |
+
|
84 |
+
//Add Recommended Plugins
|
85 |
+
$trp_addons_listing->section_header = array( 'title' => __('Recommended Plugins', 'translatepress-multilingual' ), 'description' => __('A short list of plugins you can use to extend your website.', 'translatepress-multilingual') );
|
86 |
+
$trp_addons_listing->section_versions = array( 'TranslatePress - Dev', 'TranslatePress - Personal', 'TranslatePress - Business', 'TranslatePress - Developer', 'TranslatePress - Multilingual' );
|
87 |
+
$trp_addons_listing->items = array(
|
88 |
+
array( 'slug' => 'profile-builder/index.php',
|
89 |
+
'short-slug' => 'pb',
|
90 |
+
'type' => 'plugin',
|
91 |
+
'name' => __( 'Profile Builder', 'translatepress-multilingual' ),
|
92 |
+
'description' => __( 'Capture more user information on the registration form with the help of Profile Builder\'s custom user profile fields and/or add an Email Confirmation process to verify your customers accounts.', 'translatepress-multilingual' ),
|
93 |
+
'icon' => 'pb_logo.jpg',
|
94 |
+
'doc_url' => 'https://www.cozmoslabs.com/wordpress-profile-builder/?utm_source=tpbackend&utm_medium=clientsite&utm_content=tp-addons-page&utm_campaign=TPPB',
|
95 |
+
'disabled' => $plugin_settings['pb']['disabled'],
|
96 |
+
'install_button' => $plugin_settings['pb']['install_button']
|
97 |
+
),
|
98 |
+
array( 'slug' => 'paid-member-subscriptions/index.php',
|
99 |
+
'short-slug' => 'pms',
|
100 |
+
'type' => 'plugin',
|
101 |
+
'name' => __( 'Paid Member Subscriptions', 'translatepress-multilingual' ),
|
102 |
+
'description' => __( 'Accept user payments, create subscription plans and restrict content on your membership site.', 'translatepress-multilingual' ),
|
103 |
+
'icon' => 'pms_logo.jpg',
|
104 |
+
'doc_url' => 'https://www.cozmoslabs.com/wordpress-paid-member-subscriptions/?utm_source=tpbackend&utm_medium=clientsite&utm_content=tp-addons-page&utm_campaign=TPPMS',
|
105 |
+
'disabled' => $plugin_settings['pms']['disabled'],
|
106 |
+
'install_button' => $plugin_settings['pms']['install_button']
|
107 |
+
)
|
108 |
+
);
|
109 |
+
$trp_addons_listing->add_section();
|
110 |
+
|
111 |
+
|
112 |
+
//Display the whole listing
|
113 |
+
$trp_addons_listing->display_addons();
|
114 |
+
|
115 |
+
?>
|
116 |
|
|
|
117 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
118 |
</div>
|
partials/machine-translation-settings-page.php
CHANGED
@@ -37,7 +37,7 @@
|
|
37 |
</td>
|
38 |
</tr>
|
39 |
|
40 |
-
<?php if( !class_exists( 'TRP_DeepL' ) ) : ?>
|
41 |
<tr style="display:none;">
|
42 |
<th scope="row"></th>
|
43 |
<td>
|
37 |
</td>
|
38 |
</tr>
|
39 |
|
40 |
+
<?php if( !class_exists( 'TRP_DeepL' ) && !class_exists( 'TRP_IN_DeepL' ) ) : ?>
|
41 |
<tr style="display:none;">
|
42 |
<th scope="row"></th>
|
43 |
<td>
|
partials/main-settings-language-selector.php
CHANGED
@@ -62,8 +62,8 @@
|
|
62 |
<p class="trp-upsell-multiple-languages" style="display: none;">
|
63 |
<?php
|
64 |
if ( trp_is_paid_version() ){
|
65 |
-
$url = '
|
66 |
-
$lnk = sprintf( wp_kses( __( 'To add <strong>more than two languages</strong>
|
67 |
}else {
|
68 |
$url = trp_add_affiliate_id_to_link('https://translatepress.com/?utm_source=wpbackend&utm_medium=clientsite&utm_content=multiple_languages&utm_campaign=tpfree');
|
69 |
$lnk = sprintf(
|
62 |
<p class="trp-upsell-multiple-languages" style="display: none;">
|
63 |
<?php
|
64 |
if ( trp_is_paid_version() ){
|
65 |
+
$url = admin_url('admin.php?page=trp_addons_page');
|
66 |
+
$lnk = sprintf( wp_kses( __( 'To add <strong>more than two languages</strong> activate the <strong>Extra Languages Add-on</strong> from <a href="%s" class="trp-translatepress-account-page" target="_blank" title="Add-ons page">the Add-ons Page</a>. Once activated, you\'ll be able to add unlimited languages.', 'translatepress-multilingual' ), array( 'strong' => array(), 'br' => array(), 'a' => array( 'href' => array(), 'title' => array(), 'target' => array(), 'class' => array() ) ) ), esc_url( $url ) );
|
67 |
}else {
|
68 |
$url = trp_add_affiliate_id_to_link('https://translatepress.com/?utm_source=wpbackend&utm_medium=clientsite&utm_content=multiple_languages&utm_campaign=tpfree');
|
69 |
$lnk = sprintf(
|
readme.txt
CHANGED
@@ -5,12 +5,12 @@ Tags: translate, translation, multilingual, automatic translation, bilingual, fr
|
|
5 |
Requires at least: 3.1.0
|
6 |
Tested up to: 5.7.2
|
7 |
Requires PHP: 5.6.20
|
8 |
-
Stable tag: 2.0.
|
9 |
License: GPLv2 or later
|
10 |
License URI: http://www.gnu.org/licenses/gpl-2.0.html
|
11 |
|
12 |
Translate your entire site directly from the front-end and go multilingual, with full support for WooCommerce and page builders + Google Translate integration.
|
13 |
-
|
14 |
== Description ==
|
15 |
|
16 |
**Experience a better way to translate your WordPress site and go multilingual, directly from the front-end using a visual translation interface.**
|
@@ -41,6 +41,7 @@ https://www.youtube.com/watch?v=pUlYisvBm8g
|
|
41 |
* Translation Block feature in which you can translate multiple html elements together
|
42 |
* Native **Gutenberg** support, so you can easily [translate Gutenberg blocks](https://translatepress.com/translate-gutenberg-blocks-in-wordpress/?utm_source=wp.org&utm_medium=tp-description-page&utm_campaign=TPFree)
|
43 |
* Out of the box [WooCommerce](https://translatepress.com/translate-woocommerce-products-translatepress/?utm_source=wp.org&utm_medium=tp-description-page&utm_campaign=TPFree) compatibility
|
|
|
44 |
|
45 |
Note: this plugin uses the Google Translation API to translate the strings on your site. This feature can be enabled or disabled according to your preferences.
|
46 |
|
@@ -139,6 +140,12 @@ For more information please check out our [documentation](https://translatepress
|
|
139 |
|
140 |
|
141 |
== Changelog ==
|
|
|
|
|
|
|
|
|
|
|
|
|
142 |
= 2.0.4 =
|
143 |
* Added support for translating aria-label attribute
|
144 |
* Added possibility to exclude entire gettext domain from translation
|
5 |
Requires at least: 3.1.0
|
6 |
Tested up to: 5.7.2
|
7 |
Requires PHP: 5.6.20
|
8 |
+
Stable tag: 2.0.5
|
9 |
License: GPLv2 or later
|
10 |
License URI: http://www.gnu.org/licenses/gpl-2.0.html
|
11 |
|
12 |
Translate your entire site directly from the front-end and go multilingual, with full support for WooCommerce and page builders + Google Translate integration.
|
13 |
+
|
14 |
== Description ==
|
15 |
|
16 |
**Experience a better way to translate your WordPress site and go multilingual, directly from the front-end using a visual translation interface.**
|
41 |
* Translation Block feature in which you can translate multiple html elements together
|
42 |
* Native **Gutenberg** support, so you can easily [translate Gutenberg blocks](https://translatepress.com/translate-gutenberg-blocks-in-wordpress/?utm_source=wp.org&utm_medium=tp-description-page&utm_campaign=TPFree)
|
43 |
* Out of the box [WooCommerce](https://translatepress.com/translate-woocommerce-products-translatepress/?utm_source=wp.org&utm_medium=tp-description-page&utm_campaign=TPFree) compatibility
|
44 |
+
* Use our [FREE Website Translation](https://translatepress.com/free-website-translation-tool-widget/?utm_source=wp.org&utm_medium=tp-description-page&utm_campaign=TPFree) tool/widget to browse any website into your own language.
|
45 |
|
46 |
Note: this plugin uses the Google Translation API to translate the strings on your site. This feature can be enabled or disabled according to your preferences.
|
47 |
|
140 |
|
141 |
|
142 |
== Changelog ==
|
143 |
+
= 2.0.5 =
|
144 |
+
* All Premium Add-ons have been repackaged in new archives downloadable from translatepress.com account. All the old plugin Add-ons will no longer receive updates.
|
145 |
+
* Reconfigured add-ons to be activated from TP Settings Add-ons tab
|
146 |
+
* Added compatibility with WP Typography
|
147 |
+
* Fixed bug on Automatic Translation Settings page regarding API key
|
148 |
+
|
149 |
= 2.0.4 =
|
150 |
* Added support for translating aria-label attribute
|
151 |
* Added possibility to exclude entire gettext domain from translation
|