Permalink Manager Lite - Version 2.0.5.9a

Version Description

Download this release

Release Info

Developer mbis
Plugin Icon 128x128 Permalink Manager Lite
Version 2.0.5.9a
Comparing to
See all releases

Code changes from version 2.0.5.7 to 2.0.5.9a

README.txt CHANGED
@@ -7,7 +7,7 @@ Tags: urls, permalinks, custom permalinks, url, permalink, woocommerce permalink
7
  Requires at least: 4.0
8
  Requires PHP: 5.4
9
  Tested up to: 4.9
10
- Stable tag: 2.0.5.7
11
 
12
  Advanced plugin that allows to set-up custom permalinks (bulk editors included), slugs and permastructures (WooCommerce compatible).
13
 
@@ -96,15 +96,23 @@ A. Currently there is no 100% guarantee that Permalink Manager will work correct
96
  7. Settings section.
97
 
98
 
99
- == Changelog ==
100
-
101
- = 2.0.5.7 =
 
 
 
102
  * Hotfix for MultilingualPress plugin
 
 
 
103
 
104
  = 2.0.5.6 =
105
  * The URIs for trashed posts are now correctly removed
106
  * Better support for non-ASCII characters in URIs
107
  * Minor fix for hierarchical post types
 
 
108
 
109
  = 2.0.5.5 =
110
  * Discount URLs for WooCommerce - now the shop clients can use coupons' custom URIs to easily apply the discount to the cart
7
  Requires at least: 4.0
8
  Requires PHP: 5.4
9
  Tested up to: 4.9
10
+ Stable tag: 2.0.5.9
11
 
12
  Advanced plugin that allows to set-up custom permalinks (bulk editors included), slugs and permastructures (WooCommerce compatible).
13
 
96
  7. Settings section.
97
 
98
 
99
+ == Changelog ==
100
+
101
+ = 2.0.5.9 =
102
+ * New permastructure tags - %post_type% & %taxonomy%
103
+
104
+ = 2.0.5.7/2.0.5.8 =
105
  * Hotfix for MultilingualPress plugin
106
+ * Hotfix & better support for attachment post type (Media Library)
107
+ * Custom redirects for old permalinks are now correctly saved in Permalink Manager Pro
108
+ * Support for WooCommerce Wishlist plugin
109
 
110
  = 2.0.5.6 =
111
  * The URIs for trashed posts are now correctly removed
112
  * Better support for non-ASCII characters in URIs
113
  * Minor fix for hierarchical post types
114
+ * Fix for coupon URL redirect
115
+ * New filter - "permalink-manager-force-hyphens"
116
 
117
  = 2.0.5.5 =
118
  * Discount URLs for WooCommerce - now the shop clients can use coupons' custom URIs to easily apply the discount to the cart
includes/core/permalink-manager-actions.php CHANGED
@@ -197,16 +197,14 @@ class Permalink_Manager_Actions extends Permalink_Manager_Class {
197
  /**
198
  * Check if the post/term uses the same URI for both permalink & custom redirects
199
  */
200
- public static function clear_single_element_duplicated_redirect($element_id, $count_removed = false) {
201
  global $permalink_manager_uris, $permalink_manager_redirects;
202
 
203
- if(!empty($permalink_manager_uris[$element_id]) && !empty($permalink_manager_redirects[$element_id])) {
204
- $custom_uri = $permalink_manager_uris[$element_id];
205
 
206
- if(in_array($custom_uri, $permalink_manager_redirects[$element_id])) {
207
- $duplicated_redirect_id = array_search($custom_uri, $permalink_manager_redirects[$element_id]);
208
- unset($permalink_manager_redirects[$element_id][$duplicated_redirect_id]);
209
- }
210
  }
211
 
212
  // Check if function should only return the counts or update
197
  /**
198
  * Check if the post/term uses the same URI for both permalink & custom redirects
199
  */
200
+ public static function clear_single_element_duplicated_redirect($element_id, $count_removed = false, $uri = null) {
201
  global $permalink_manager_uris, $permalink_manager_redirects;
202
 
203
+ $custom_uri = (empty($uri) && !empty($permalink_manager_uris[$element_id])) ? $permalink_manager_uris[$element_id] : $uri;
 
204
 
205
+ if($custom_uri && !empty($permalink_manager_redirects[$element_id]) && in_array($custom_uri, $permalink_manager_redirects[$element_id])) {
206
+ $duplicated_redirect_id = array_search($custom_uri, $permalink_manager_redirects[$element_id]);
207
+ unset($permalink_manager_redirects[$element_id][$duplicated_redirect_id]);
 
208
  }
209
 
210
  // Check if function should only return the counts or update
includes/core/permalink-manager-admin-functions.php CHANGED
@@ -404,7 +404,7 @@ class Permalink_Manager_Admin_Functions extends Permalink_Manager_Class {
404
 
405
  $html = "<div id=\"permalink-manager\" class=\"wrap\">";
406
 
407
- $donate_link = sprintf("<a href=\"%s\" target=\"_blank\" class=\"page-title-action\">%s</a>", PERMALINK_MANAGER_DONATE, __("Donate", "permalink-manager"));
408
  $html .= sprintf("<h2 id=\"plugin-name-heading\">%s <a href=\"http://maciejbis.net\" class=\"author-link\" target=\"_blank\">%s</a> %s</h2>", PERMALINK_MANAGER_PLUGIN_NAME, __("by Maciej Bis", "permalink-manager"), $donate_link);
409
 
410
  // Display the tab navigation
404
 
405
  $html = "<div id=\"permalink-manager\" class=\"wrap\">";
406
 
407
+ $donate_link = defined('PERMALINK_MANAGER_PRO') ? "" : sprintf("<a href=\"%s\" target=\"_blank\" class=\"page-title-action\">%s</a>", PERMALINK_MANAGER_DONATE, __("Donate", "permalink-manager"));
408
  $html .= sprintf("<h2 id=\"plugin-name-heading\">%s <a href=\"http://maciejbis.net\" class=\"author-link\" target=\"_blank\">%s</a> %s</h2>", PERMALINK_MANAGER_PLUGIN_NAME, __("by Maciej Bis", "permalink-manager"), $donate_link);
409
 
410
  // Display the tab navigation
includes/core/permalink-manager-core-functions.php CHANGED
@@ -152,6 +152,7 @@ class Permalink_Manager_Core_Functions extends Permalink_Manager_Class {
152
  } else if($term_taxonomy == 'post_tag') {
153
  $query_parameter = 'tag';
154
  } else {
 
155
  $query_parameter = $term_taxonomy;
156
  }
157
  $term_ancestors = get_ancestors($term_id, $term_taxonomy);
@@ -167,6 +168,7 @@ class Permalink_Manager_Core_Functions extends Permalink_Manager_Class {
167
  }
168
  }
169
 
 
170
  $query[$query_parameter] = $final_uri;
171
  } else {
172
  $broken_uri = true;
@@ -317,7 +319,7 @@ class Permalink_Manager_Core_Functions extends Permalink_Manager_Class {
317
  }
318
 
319
  /**
320
- * Trailing slash & remove BOM
321
  */
322
  function control_trailing_slashes($permalink) {
323
  global $permalink_manager_options;
@@ -329,14 +331,21 @@ class Permalink_Manager_Core_Functions extends Permalink_Manager_Class {
329
 
330
  // Do not append the trailing slash if permalink contains hashtag or get parameters
331
  $url_parsed = parse_url($permalink);
332
- if(!empty($url_parsed['query']) || !empty($url_parsed['fragment']) || preg_match("/.*\.([a-zA-Z]{3,4})\/?$/", $permalink)) { return untrailingslashit($permalink); }
333
 
334
- if(in_array($trailing_slash_setting, array(1, 10))) {
 
 
335
  $permalink = trailingslashit($permalink);
336
  } else if(in_array($trailing_slash_setting, array(2, 20))) {
337
  $permalink = untrailingslashit($permalink);
338
  }
339
 
 
 
 
 
 
 
340
  return $permalink;
341
  }
342
 
@@ -349,8 +358,8 @@ class Permalink_Manager_Core_Functions extends Permalink_Manager_Class {
349
  // 1. Get the post object
350
  $post = get_queried_object();
351
 
352
- // 2. Check if post object is defined
353
- if(empty($post->post_content)) { return; }
354
 
355
  // 3. Check if pagination is detected
356
  $current_page = (!empty($wp_query->query_vars['page'])) ? $wp_query->query_vars['page'] : 1;
@@ -570,6 +579,9 @@ class Permalink_Manager_Core_Functions extends Permalink_Manager_Class {
570
  // Remove the BOM
571
  $default_uri = str_replace(array("\xEF\xBB\xBF", "%ef%bb%bf"), '', $default_uri);
572
 
 
 
 
573
  $empty_tag_replacement = apply_filters('permalink_manager_empty_tag_replacement', null, $element);
574
  $default_uri = ($empty_tag_replacement || is_null($empty_tag_replacement)) ? str_replace("//", "/", preg_replace("/%(.+?)%/", $empty_tag_replacement, $default_uri)) : $default_uri;
575
 
152
  } else if($term_taxonomy == 'post_tag') {
153
  $query_parameter = 'tag';
154
  } else {
155
+ $query["taxonomy"] = $term_taxonomy;
156
  $query_parameter = $term_taxonomy;
157
  }
158
  $term_ancestors = get_ancestors($term_id, $term_taxonomy);
168
  }
169
  }
170
 
171
+ $query["term"] = $final_uri;
172
  $query[$query_parameter] = $final_uri;
173
  } else {
174
  $broken_uri = true;
319
  }
320
 
321
  /**
322
+ * Trailing slash & remove BOM and double slashes
323
  */
324
  function control_trailing_slashes($permalink) {
325
  global $permalink_manager_options;
331
 
332
  // Do not append the trailing slash if permalink contains hashtag or get parameters
333
  $url_parsed = parse_url($permalink);
 
334
 
335
+ if(!empty($url_parsed['query']) || !empty($url_parsed['fragment']) || preg_match("/.*\.([a-zA-Z]{3,4})\/?$/", $permalink)) {
336
+ $permalink = untrailingslashit($permalink);
337
+ } else if(in_array($trailing_slash_setting, array(1, 10))) {
338
  $permalink = trailingslashit($permalink);
339
  } else if(in_array($trailing_slash_setting, array(2, 20))) {
340
  $permalink = untrailingslashit($permalink);
341
  }
342
 
343
+ // Remove double slashes
344
+ $permalink = preg_replace('/([^:])(\/{2,})/', '$1/', $permalink);
345
+
346
+ // Remove trailing slashes from URLs with extensions
347
+ $permalink = preg_replace("/(\.[a-z]{3,4})\/$/i", "$1", $permalink);
348
+
349
  return $permalink;
350
  }
351
 
358
  // 1. Get the post object
359
  $post = get_queried_object();
360
 
361
+ // 2. Check if post object is defined
362
+ if(empty($post->post_type) || (empty($post->post_content) && $post->post_type != 'attachment')) { return; }
363
 
364
  // 3. Check if pagination is detected
365
  $current_page = (!empty($wp_query->query_vars['page'])) ? $wp_query->query_vars['page'] : 1;
579
  // Remove the BOM
580
  $default_uri = str_replace(array("\xEF\xBB\xBF", "%ef%bb%bf"), '', $default_uri);
581
 
582
+ // Encode the URI before placeholders are removed
583
+ $default_uri = urldecode($default_uri);
584
+
585
  $empty_tag_replacement = apply_filters('permalink_manager_empty_tag_replacement', null, $element);
586
  $default_uri = ($empty_tag_replacement || is_null($empty_tag_replacement)) ? str_replace("//", "/", preg_replace("/%(.+?)%/", $empty_tag_replacement, $default_uri)) : $default_uri;
587
 
includes/core/permalink-manager-helper-functions.php CHANGED
@@ -45,7 +45,7 @@ class Permalink_Manager_Helper_Functions extends Permalink_Manager_Class {
45
 
46
  static function content_types_disabled_by_default($is_taxonomy = false) {
47
  if($is_taxonomy) {
48
- return array();
49
  } else {
50
  return array('revision', 'algolia_task', 'fl_builder', 'fl-builder', 'fl-theme-layout', 'wc_product_tab', 'wc_voucher', 'wc_voucher_template');
51
  }
@@ -121,13 +121,21 @@ class Permalink_Manager_Helper_Functions extends Permalink_Manager_Class {
121
  $post_types_array[$post_type->name] = $value;
122
  }
123
 
124
- // Exclude disabled post types
125
  if(!$all && is_array($disabled_post_types)) {
126
  foreach($disabled_post_types as $post_type) {
127
  if(!empty($post_types_array[$post_type])) { unset($post_types_array[$post_type]); }
128
  }
129
  }
130
 
 
 
 
 
 
 
 
 
131
  return (empty($cpt)) ? $post_types_array : $post_types_array[$cpt];
132
  }
133
 
@@ -149,13 +157,21 @@ class Permalink_Manager_Helper_Functions extends Permalink_Manager_Class {
149
  }
150
  }
151
 
152
- // Disable taxonomies
153
  if(!$all && is_array($disabled_taxonomies)) {
154
  foreach($disabled_taxonomies as $taxonomy) {
155
  if(!empty($taxonomies_array[$taxonomy])) { unset($taxonomies_array[$taxonomy]); }
156
  }
157
  }
158
 
 
 
 
 
 
 
 
 
159
  ksort($taxonomies_array);
160
 
161
  return (empty($tax)) ? $taxonomies_array : $taxonomies_array[$tax];
@@ -232,6 +248,10 @@ class Permalink_Manager_Helper_Functions extends Permalink_Manager_Class {
232
  }
233
  }
234
 
 
 
 
 
235
  foreach($tags as &$tag) {
236
  $tag = ($code) ? "<code>{$tag}</code>" : "{$tag}";
237
  }
@@ -315,14 +335,15 @@ class Permalink_Manager_Helper_Functions extends Permalink_Manager_Class {
315
  // Remove accents
316
  $clean = remove_accents($clean);
317
 
318
- // Foree lowercase
319
  $force_lowercase = apply_filters('permalink-manager-force-lowercase-uris', true);
 
320
 
321
  // $clean = iconv('UTF-8', 'ASCII//TRANSLIT', $clean);
322
  $percent_sign = ($keep_percent_sign) ? "\%" : "";
323
  $clean = preg_replace("/[^\p{L}a-zA-Z0-9{$percent_sign}\/_\.|+ -]/u", '', $clean);
324
  $clean = ($force_lowercase) ? strtolower(trim($clean, '-')) : trim($clean, '-');
325
- $clean = preg_replace("/[_|+ -]+/", "-", $clean);
326
 
327
  return $clean;
328
  }
45
 
46
  static function content_types_disabled_by_default($is_taxonomy = false) {
47
  if($is_taxonomy) {
48
+ return array('product_shipping_class');
49
  } else {
50
  return array('revision', 'algolia_task', 'fl_builder', 'fl-builder', 'fl-theme-layout', 'wc_product_tab', 'wc_voucher', 'wc_voucher_template');
51
  }
121
  $post_types_array[$post_type->name] = $value;
122
  }
123
 
124
+ // Soft exclude disabled post types
125
  if(!$all && is_array($disabled_post_types)) {
126
  foreach($disabled_post_types as $post_type) {
127
  if(!empty($post_types_array[$post_type])) { unset($post_types_array[$post_type]); }
128
  }
129
  }
130
 
131
+ // Hard exclude disabled post types
132
+ $hard_disabled_post_types = self::content_types_disabled_by_default();
133
+ if(is_array($hard_disabled_post_types)) {
134
+ foreach($hard_disabled_post_types as $post_type) {
135
+ if(!empty($post_types_array[$post_type])) { unset($post_types_array[$post_type]); }
136
+ }
137
+ }
138
+
139
  return (empty($cpt)) ? $post_types_array : $post_types_array[$cpt];
140
  }
141
 
157
  }
158
  }
159
 
160
+ // Soft exclude taxonomies
161
  if(!$all && is_array($disabled_taxonomies)) {
162
  foreach($disabled_taxonomies as $taxonomy) {
163
  if(!empty($taxonomies_array[$taxonomy])) { unset($taxonomies_array[$taxonomy]); }
164
  }
165
  }
166
 
167
+ // Hard exclude disabled taxonomies
168
+ $hard_disabled_taxonomies = self::content_types_disabled_by_default(true);
169
+ if(is_array($hard_disabled_taxonomies)) {
170
+ foreach($hard_disabled_taxonomies as $taxonomy) {
171
+ if(!empty($taxonomies_array[$taxonomy])) { unset($taxonomies_array[$taxonomy]); }
172
+ }
173
+ }
174
+
175
  ksort($taxonomies_array);
176
 
177
  return (empty($tax)) ? $taxonomies_array : $taxonomies_array[$tax];
248
  }
249
  }
250
 
251
+ // Extra tags
252
+ $tags[] = '%taxonomy%';
253
+ $tags[] = '%post_type%';
254
+
255
  foreach($tags as &$tag) {
256
  $tag = ($code) ? "<code>{$tag}</code>" : "{$tag}";
257
  }
335
  // Remove accents
336
  $clean = remove_accents($clean);
337
 
338
+ // Foree lowercase & hyphens
339
  $force_lowercase = apply_filters('permalink-manager-force-lowercase-uris', true);
340
+ $force_hyphens = apply_filters('permalink-manager-force-hyphens', true);
341
 
342
  // $clean = iconv('UTF-8', 'ASCII//TRANSLIT', $clean);
343
  $percent_sign = ($keep_percent_sign) ? "\%" : "";
344
  $clean = preg_replace("/[^\p{L}a-zA-Z0-9{$percent_sign}\/_\.|+ -]/u", '', $clean);
345
  $clean = ($force_lowercase) ? strtolower(trim($clean, '-')) : trim($clean, '-');
346
+ $clean = ($force_hyphens) ? preg_replace("/[_|+ -]+/", "-", $clean) : $clean;
347
 
348
  return $clean;
349
  }
includes/core/permalink-manager-third-parties.php CHANGED
@@ -29,6 +29,12 @@ class Permalink_Manager_Third_Parties extends Permalink_Manager_Class {
29
  } else if(isset($sitepress_settings['language_negotiation_type']) && $sitepress_settings['language_negotiation_type'] == 3) {
30
  add_filter('permalink-manager-detect-uri', array($this, 'wpml_ignore_lang_query_parameter'), 9);
31
  }
 
 
 
 
 
 
32
  }
33
 
34
  // 2. AMP
@@ -64,6 +70,11 @@ class Permalink_Manager_Third_Parties extends Permalink_Manager_Class {
64
 
65
  // 7. Yoast SEO
66
  add_filter('wpseo_xml_sitemap_post_url', array($this, 'yoast_fix_sitemap_urls'));
 
 
 
 
 
67
  }
68
 
69
  /**
@@ -73,15 +84,25 @@ class Permalink_Manager_Third_Parties extends Permalink_Manager_Class {
73
  global $wp, $language_code;
74
 
75
  if($is_term) {
76
- $current_term = get_term($item_id);
77
- $element_type = (!empty($current_term) && !is_wp_error($current_term)) ? $current_term->taxonomy : "";
 
 
 
 
 
78
  } else {
79
  $element_type = get_post_type($item_id);
 
80
  }
81
- $language_code = apply_filters('wpml_element_language_code', null, array('element_id' => $item_id, 'element_type' => $element_type));
 
 
 
 
82
 
83
  if(!empty($uri_parts['lang']) && ($uri_parts['lang'] != $language_code)) {
84
- $wpml_item_id = apply_filters('wpml_object_id', $item_id);
85
  $item_id = (is_numeric($wpml_item_id)) ? $wpml_item_id : $item_id;
86
  }
87
 
@@ -121,7 +142,7 @@ class Permalink_Manager_Third_Parties extends Permalink_Manager_Class {
121
  $element_type = $post->post_type;
122
  } else {
123
  $term = (is_numeric($element)) ? get_term(intval($element)) : $element;
124
- $element_id = $term->term_id;
125
  $element_type = $term->taxonomy;
126
  }
127
 
@@ -148,6 +169,18 @@ class Permalink_Manager_Third_Parties extends Permalink_Manager_Class {
148
  return $prefix;
149
  }
150
 
 
 
 
 
 
 
 
 
 
 
 
 
151
  function wpml_lang_column_uri_editor($columns) {
152
  if(class_exists('SitePress') || class_exists('Polylang')) {
153
  $columns['post_lang'] = __('Language', 'permalink-manager');
@@ -163,7 +196,7 @@ class Permalink_Manager_Third_Parties extends Permalink_Manager_Class {
163
  $element_type = $post->post_type;
164
  } else {
165
  $term = (is_numeric($element)) ? get_term(intval($element)) : $element;
166
- $element_id = $term->term_id;
167
  $element_type = $term->taxonomy;
168
  }
169
 
@@ -378,5 +411,30 @@ class Permalink_Manager_Third_Parties extends Permalink_Manager_Class {
378
  return $permalink;
379
  }
380
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
381
  }
382
  ?>
29
  } else if(isset($sitepress_settings['language_negotiation_type']) && $sitepress_settings['language_negotiation_type'] == 3) {
30
  add_filter('permalink-manager-detect-uri', array($this, 'wpml_ignore_lang_query_parameter'), 9);
31
  }
32
+
33
+ // Translate slugs
34
+ if(class_exists('WPML_Slug_Translation')) {
35
+ add_filter('permalink_manager_filter_post_type_slug', array($this, 'wpml_translate_post_type_slug'), 9, 3);
36
+ // add_filter('permalink_manager_filter_taxonomy_slug', array($this, 'wpml_translate_taxonomy_slug'), 9, 3);
37
+ }
38
  }
39
 
40
  // 2. AMP
70
 
71
  // 7. Yoast SEO
72
  add_filter('wpseo_xml_sitemap_post_url', array($this, 'yoast_fix_sitemap_urls'));
73
+
74
+ // 8. WooCommerce Wishlist Plugin
75
+ if(function_exists('tinv_get_option')) {
76
+ add_filter('permalink-manager-detect-uri', array($this, 'ti_woocommerce_wishlist_uris'), 15, 3);
77
+ }
78
  }
79
 
80
  /**
84
  global $wp, $language_code;
85
 
86
  if($is_term) {
87
+ $element = get_term($item_id);
88
+ if(!empty($element) && !is_wp_error($element)) {
89
+ $element_id = $element->term_taxonomy_id;
90
+ $element_type = $element->taxonomy;
91
+ } else {
92
+ return false;
93
+ }
94
  } else {
95
  $element_type = get_post_type($item_id);
96
+ $element_id = $item_id;
97
  }
98
+
99
+ // Stop if no term or post is detected
100
+ if(empty($element_id)) { return false; }
101
+
102
+ $language_code = apply_filters('wpml_element_language_code', null, array('element_id' => $element_id, 'element_type' => $element_type));
103
 
104
  if(!empty($uri_parts['lang']) && ($uri_parts['lang'] != $language_code)) {
105
+ $wpml_item_id = apply_filters('wpml_object_id', $element_id);
106
  $item_id = (is_numeric($wpml_item_id)) ? $wpml_item_id : $item_id;
107
  }
108
 
142
  $element_type = $post->post_type;
143
  } else {
144
  $term = (is_numeric($element)) ? get_term(intval($element)) : $element;
145
+ $element_id = $term->term_taxonomy_id;
146
  $element_type = $term->taxonomy;
147
  }
148
 
169
  return $prefix;
170
  }
171
 
172
+ function wpml_translate_post_type_slug($post_type_slug, $element, $post_type) {
173
+ $translations = WPML_Slug_Translation::get_translations($post_type);
174
+
175
+ if(empty($translations[1])) { return $post_type_slug; }
176
+
177
+ $post = (is_integer($element)) ? get_post($element) : $element;
178
+ $language_code = apply_filters( 'wpml_element_language_code', null, array('element_id' => $post->ID, 'element_type' => $post_type));
179
+
180
+ // Translate %post_type% tag in custom permastructures
181
+ return (!empty($translations[1][$language_code]['value'])) ? $translations[1][$language_code]['value'] : $post_type_slug;
182
+ }
183
+
184
  function wpml_lang_column_uri_editor($columns) {
185
  if(class_exists('SitePress') || class_exists('Polylang')) {
186
  $columns['post_lang'] = __('Language', 'permalink-manager');
196
  $element_type = $post->post_type;
197
  } else {
198
  $term = (is_numeric($element)) ? get_term(intval($element)) : $element;
199
+ $element_id = $term->term_taxonomy_id;
200
  $element_type = $term->taxonomy;
201
  }
202
 
411
  return $permalink;
412
  }
413
 
414
+ /**
415
+ * 8. Support WooCommerce Wishlist Plugin
416
+ */
417
+ function ti_woocommerce_wishlist_uris($uri_parts, $request_url, $endpoints) {
418
+ global $permalink_manager_uris, $wp;
419
+
420
+ $wishlist_pid = tinv_get_option('general', 'page_wishlist');
421
+
422
+ // Find the Wishlist page URI
423
+ if(is_numeric($wishlist_pid) && !empty($permalink_manager_uris[$wishlist_pid])) {
424
+ $wishlist_uri = preg_quote($permalink_manager_uris[$wishlist_pid], '/');
425
+
426
+ // Extract the Wishlist ID
427
+ preg_match("/^({$wishlist_uri})\/([^\/]+)\/?$/", $uri_parts['uri'], $output_array);
428
+
429
+ if(!empty($output_array[2])) {
430
+ $uri_parts['uri'] = $output_array[1];
431
+ $uri_parts['endpoint'] = 'tinvwlID';
432
+ $uri_parts['endpoint_value'] = $output_array[2];
433
+ }
434
+ }
435
+
436
+ return $uri_parts;
437
+ }
438
+
439
  }
440
  ?>
includes/core/permalink-manager-uri-functions-post.php CHANGED
@@ -122,7 +122,7 @@ class Permalink_Manager_URI_Functions_Post extends Permalink_Manager_Class {
122
  * Get the default (not overwritten by the user) or native URI (unfiltered)
123
  */
124
  public static function get_default_post_uri($post, $native_uri = false) {
125
- global $permalink_manager_options, $permalink_manager_uris, $permalink_manager_permastructs;
126
 
127
  // Load all bases & post
128
  $post = is_object($post) ? $post : get_post($post);
@@ -163,6 +163,16 @@ class Permalink_Manager_URI_Functions_Post extends Permalink_Manager_Class {
163
  $author = $authordata->user_nicename;
164
  }
165
 
 
 
 
 
 
 
 
 
 
 
166
  // 3A. Fix for hierarchical CPT (start)
167
  $full_slug = (is_post_type_hierarchical($post_type)) ? get_page_uri($post) : $post_name;
168
  $full_slug = (empty($full_slug)) ? $post_name : $full_slug;
@@ -175,11 +185,11 @@ class Permalink_Manager_URI_Functions_Post extends Permalink_Manager_Class {
175
  $post_type_tag = Permalink_Manager_Helper_Functions::get_post_tag($post_type);
176
 
177
  // 3C. Get the standard tags and replace them with their values
178
- $tags = array('%year%', '%monthnum%', '%day%', '%hour%', '%minute%', '%second%', '%post_id%', '%author%');
179
- $tags_replacements = array($date[0], $date[1], $date[2], $date[3], $date[4], $date[5], $post->ID, $author);
180
  $default_uri = str_replace($tags, $tags_replacements, $default_base);
181
 
182
- // 3B. Check if any post tag is present in custom permastructure
183
  $do_not_append_slug = apply_filters("permalink_manager_do_not_append_slug", false, $post_type, $post);
184
  if($do_not_append_slug == false) {
185
  $slug_tags = array($post_type_tag, '%postname%', '%postname_flat%');
@@ -192,7 +202,7 @@ class Permalink_Manager_URI_Functions_Post extends Permalink_Manager_Class {
192
  }
193
  }
194
 
195
- // 3B. Replace the post tags with slugs or rppend the slug if no post tag is defined
196
  if(!empty($do_not_append_slug)) {
197
  $default_uri = str_replace($slug_tags, $slug_tags_replacement, $default_uri);
198
  } else {
@@ -329,8 +339,13 @@ class Permalink_Manager_URI_Functions_Post extends Permalink_Manager_Class {
329
  $where .= ")";
330
  }
331
 
 
 
 
 
 
332
  // Get the rows before they are altered
333
- $posts_to_update = $wpdb->get_results("SELECT post_title, post_name, ID FROM {$wpdb->posts} WHERE post_status IN ('{$post_statuses}') AND post_type IN ('{$post_types}') {$where}", ARRAY_A);
334
 
335
  // Now if the array is not empty use IDs from each subarray as a key
336
  if($posts_to_update && empty($errors)) {
@@ -424,8 +439,13 @@ class Permalink_Manager_URI_Functions_Post extends Permalink_Manager_Class {
424
  $where .= ")";
425
  }
426
 
 
 
 
 
 
427
  // Get the rows before they are altered
428
- $posts_to_update = $wpdb->get_results("SELECT post_title, post_name, ID FROM {$wpdb->posts} WHERE post_status IN ('{$post_statuses}') AND post_type IN ('{$post_types}') {$where}", ARRAY_A);
429
 
430
  // Now if the array is not empty use IDs from each subarray as a key
431
  if($posts_to_update && empty($errors)) {
@@ -626,7 +646,7 @@ class Permalink_Manager_URI_Functions_Post extends Permalink_Manager_Class {
626
  if(wp_is_post_revision($post_id)) { return $post_id; }
627
 
628
  // Prevent language mismatch in MultilingualPress plugin
629
- if(in_array($pagenow, array('post-new.php', 'post.php')) && empty($_POST['post_ID'])) { return $post_id; }
630
 
631
  // Do not do anything if post is autosaved
632
  if(defined('DOING_AUTOSAVE') && DOING_AUTOSAVE) { return $post_id; }
122
  * Get the default (not overwritten by the user) or native URI (unfiltered)
123
  */
124
  public static function get_default_post_uri($post, $native_uri = false) {
125
+ global $permalink_manager_options, $permalink_manager_uris, $permalink_manager_permastructs, $wp_post_types;
126
 
127
  // Load all bases & post
128
  $post = is_object($post) ? $post : get_post($post);
163
  $author = $authordata->user_nicename;
164
  }
165
 
166
+ // 2C. Get the post type slug
167
+ if(!empty($wp_post_types[$post_type]->rewrite['slug'])) {
168
+ $post_type_slug = $wp_post_types[$post_type]->rewrite['slug'];
169
+ } else if(is_string($wp_post_types[$post_type]->rewrite)) {
170
+ $post_type_slug = $wp_post_types[$post_type]->rewrite;
171
+ } else {
172
+ $post_type_slug = $post_type;
173
+ }
174
+ $post_type_slug = apply_filters('permalink_manager_filter_post_type_slug', $post_type_slug, $post, $post_type);
175
+
176
  // 3A. Fix for hierarchical CPT (start)
177
  $full_slug = (is_post_type_hierarchical($post_type)) ? get_page_uri($post) : $post_name;
178
  $full_slug = (empty($full_slug)) ? $post_name : $full_slug;
185
  $post_type_tag = Permalink_Manager_Helper_Functions::get_post_tag($post_type);
186
 
187
  // 3C. Get the standard tags and replace them with their values
188
+ $tags = array('%year%', '%monthnum%', '%day%', '%hour%', '%minute%', '%second%', '%post_id%', '%author%', '%post_type%');
189
+ $tags_replacements = array($date[0], $date[1], $date[2], $date[3], $date[4], $date[5], $post->ID, $author, $post_type_slug);
190
  $default_uri = str_replace($tags, $tags_replacements, $default_base);
191
 
192
+ // 3D. Check if any post tag is present in custom permastructure
193
  $do_not_append_slug = apply_filters("permalink_manager_do_not_append_slug", false, $post_type, $post);
194
  if($do_not_append_slug == false) {
195
  $slug_tags = array($post_type_tag, '%postname%', '%postname_flat%');
202
  }
203
  }
204
 
205
+ // 3E. Replace the post tags with slugs or rppend the slug if no post tag is defined
206
  if(!empty($do_not_append_slug)) {
207
  $default_uri = str_replace($slug_tags, $slug_tags_replacement, $default_uri);
208
  } else {
339
  $where .= ")";
340
  }
341
 
342
+ // Support for attachments
343
+ if(in_array('attachment', $post_types_array)) {
344
+ $attachment_support = " OR (post_type = 'attachment')";
345
+ }
346
+
347
  // Get the rows before they are altered
348
+ $posts_to_update = $wpdb->get_results("SELECT post_title, post_name, ID FROM {$wpdb->posts} WHERE ((post_status IN ('{$post_statuses}') AND post_type IN ('{$post_types}')){$attachment_support}) {$where}", ARRAY_A);
349
 
350
  // Now if the array is not empty use IDs from each subarray as a key
351
  if($posts_to_update && empty($errors)) {
439
  $where .= ")";
440
  }
441
 
442
+ // Support for attachments
443
+ if(in_array('attachment', $post_types_array)) {
444
+ $attachment_support = " OR (post_type = 'attachment')";
445
+ }
446
+
447
  // Get the rows before they are altered
448
+ $posts_to_update = $wpdb->get_results("SELECT post_title, post_name, ID FROM {$wpdb->posts} WHERE ((post_status IN ('{$post_statuses}') AND post_type IN ('{$post_types}')){$attachment_support}) {$where}", ARRAY_A);
449
 
450
  // Now if the array is not empty use IDs from each subarray as a key
451
  if($posts_to_update && empty($errors)) {
646
  if(wp_is_post_revision($post_id)) { return $post_id; }
647
 
648
  // Prevent language mismatch in MultilingualPress plugin
649
+ if(!empty($post->ID) && $post->ID != $post_id) { return $post_id; }
650
 
651
  // Do not do anything if post is autosaved
652
  if(defined('DOING_AUTOSAVE') && DOING_AUTOSAVE) { return $post_id; }
includes/views/permalink-manager-settings.php CHANGED
@@ -90,9 +90,9 @@ class Permalink_Manager_Settings extends Permalink_Manager_Class {
90
  'fields' => array(
91
  'auto_remove_duplicates' => array(
92
  'type' => 'single_checkbox',
93
- 'label' => __('Automatically remove duplicates', 'permalink-manager'),
94
  'input_class' => '',
95
- 'description' => sprintf(__('If enabled, the duplicated redirects & custom permalinks will be automatically removed if they were previously assigned to removed posts or terms.<br />To manually remove the duplicates please go <a href="%s">to this page</a>.', 'permalink-manager'), admin_url('tools.php?page=permalink-manager&section=tools&subsection=duplicates'))
96
  ),
97
  'force_custom_slugs' => array(
98
  'type' => 'single_checkbox',
90
  'fields' => array(
91
  'auto_remove_duplicates' => array(
92
  'type' => 'single_checkbox',
93
+ 'label' => __('Automatically remove broken URIs', 'permalink-manager'),
94
  'input_class' => '',
95
+ 'description' => sprintf(__('If enabled, the custom URIs assigned to removed posts & terms will be automatically removed.<br />To manually remove the duplicates please go <a href="%s">to this page</a>.', 'permalink-manager'), admin_url('tools.php?page=permalink-manager&section=tools&subsection=duplicates'))
96
  ),
97
  'force_custom_slugs' => array(
98
  'type' => 'single_checkbox',
includes/views/permalink-manager-uri-editor-post.php CHANGED
@@ -83,7 +83,9 @@ class Permalink_Manager_URI_Editor_Post extends WP_List_Table {
83
 
84
  $field_args_base = array('type' => 'text', 'value' => $uri, 'without_label' => true, 'input_class' => 'custom_uri', 'extra_atts' => "data-element-id=\"{$item['ID']}\"");
85
  $permalink = get_permalink($item['ID']);
 
86
  $post_statuses_array = get_post_statuses();
 
87
 
88
  $output = apply_filters('permalink-manager-uri-editor-column-content', '', $column_name, get_post($item['ID']));
89
  if(!empty($output)) { return $output; }
@@ -132,7 +134,7 @@ class Permalink_Manager_URI_Editor_Post extends WP_List_Table {
132
  /**
133
  * The button that allows to save updated slugs
134
  */
135
- function extra_tablenav( $which ) {
136
  global $wpdb, $active_section, $active_subsection;
137
 
138
  $button_top = __( 'Update all the URIs below', 'permalink-manager' );
@@ -144,7 +146,6 @@ class Permalink_Manager_URI_Editor_Post extends WP_List_Table {
144
  if ($which == "top") {
145
  $months = $wpdb->get_results("SELECT DISTINCT month(post_date) AS m, year(post_date) AS y FROM {$wpdb->posts} WHERE post_status IN ($this->displayed_post_statuses) AND post_type IN ($this->displayed_post_types) ORDER BY post_date DESC", ARRAY_A);
146
  if($months) {
147
-
148
  $month_key = 'month';
149
  $screen = get_current_screen();
150
  $current_url = add_query_arg( array(
@@ -193,7 +194,7 @@ class Permalink_Manager_URI_Editor_Post extends WP_List_Table {
193
  $offset = ($current_page - 1) * $per_page;
194
 
195
  // Extra filters
196
- $extra_filters = '';
197
  if(!empty($_GET['month'])) {
198
  $month = date("n", strtotime($_GET['month']));
199
  $year = date("Y", strtotime($_GET['month']));
@@ -201,8 +202,19 @@ class Permalink_Manager_URI_Editor_Post extends WP_List_Table {
201
  $extra_filters .= "AND month(post_date) = {$month} AND year(post_date) = {$year}";
202
  }
203
 
 
 
 
 
 
204
  // Grab posts from database
205
- $sql_query = "SELECT * FROM {$wpdb->posts} WHERE post_status IN ($this->displayed_post_statuses) AND post_type IN ($this->displayed_post_types) {$extra_filters} ORDER BY $orderby $order";
 
 
 
 
 
 
206
  $all_data = $wpdb->get_results($sql_query, ARRAY_A);
207
 
208
  // How many items?
83
 
84
  $field_args_base = array('type' => 'text', 'value' => $uri, 'without_label' => true, 'input_class' => 'custom_uri', 'extra_atts' => "data-element-id=\"{$item['ID']}\"");
85
  $permalink = get_permalink($item['ID']);
86
+
87
  $post_statuses_array = get_post_statuses();
88
+ $post_statuses_array['inherit'] = __('Inherit (Attachment)', 'permalink-manager');
89
 
90
  $output = apply_filters('permalink-manager-uri-editor-column-content', '', $column_name, get_post($item['ID']));
91
  if(!empty($output)) { return $output; }
134
  /**
135
  * The button that allows to save updated slugs
136
  */
137
+ function extra_tablenav($which) {
138
  global $wpdb, $active_section, $active_subsection;
139
 
140
  $button_top = __( 'Update all the URIs below', 'permalink-manager' );
146
  if ($which == "top") {
147
  $months = $wpdb->get_results("SELECT DISTINCT month(post_date) AS m, year(post_date) AS y FROM {$wpdb->posts} WHERE post_status IN ($this->displayed_post_statuses) AND post_type IN ($this->displayed_post_types) ORDER BY post_date DESC", ARRAY_A);
148
  if($months) {
 
149
  $month_key = 'month';
150
  $screen = get_current_screen();
151
  $current_url = add_query_arg( array(
194
  $offset = ($current_page - 1) * $per_page;
195
 
196
  // Extra filters
197
+ $extra_filters = $attachment_support = '';
198
  if(!empty($_GET['month'])) {
199
  $month = date("n", strtotime($_GET['month']));
200
  $year = date("Y", strtotime($_GET['month']));
202
  $extra_filters .= "AND month(post_date) = {$month} AND year(post_date) = {$year}";
203
  }
204
 
205
+ // Support for attachments
206
+ if(strpos($this->displayed_post_types, 'attachment') !== false) {
207
+ $attachment_support = " OR (post_type = 'attachment')";
208
+ }
209
+
210
  // Grab posts from database
211
+ $sql_parts['start'] = "SELECT * FROM {$wpdb->posts} ";
212
+ $sql_parts['where'] = "WHERE ((post_status IN ($this->displayed_post_statuses) AND post_type IN ($this->displayed_post_types)) {$attachment_support}) {$extra_filters} ";
213
+ $sql_parts['end'] = "ORDER BY {$orderby} {$order}";
214
+
215
+ $sql_query = implode("", $sql_parts);
216
+
217
+ $sql_query = apply_filters('permalink_manager_filter_uri_editor_query', $sql_query, $this, $sql_parts, $is_taxonomy = false);
218
  $all_data = $wpdb->get_results($sql_query, ARRAY_A);
219
 
220
  // How many items?
languages/permalink-manager.pot CHANGED
@@ -3,23 +3,128 @@ msgid ""
3
  msgstr ""
4
  "Project-Id-Version: PACKAGE VERSION\n"
5
  "Report-Msgid-Bugs-To: \n"
6
- "POT-Creation-Date: 2017-06-07 00:37+0000\n"
7
  "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
8
  "Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
9
  "Language-Team: \n"
10
  "Language: \n"
11
- "Plural-Forms: nplurals=INTEGER; plural=EXPRESSION;\n"
12
  "MIME-Version: 1.0\n"
13
  "Content-Type: text/plain; charset=UTF-8\n"
14
  "Content-Transfer-Encoding: 8bit\n"
15
- "X-Generator: Loco https://localise.biz/"
16
 
17
- #: permalink-manager.php:172
18
  #, php-format
19
  msgid ""
20
- "Need to change the permalinks for categories, tags, custom taxonomies or "
21
- "WooCommerce?<br /><strong>Buy Permalink Manager Pro <a href=\"%s\" "
22
- "target=\"_blank\">here</a> and enjoy the additional features!</strong>"
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
23
  msgstr ""
24
 
25
  #: includes/views/permalink-manager-uri-editor.php:28
@@ -38,45 +143,53 @@ msgstr ""
38
  msgid "Post statuses"
39
  msgstr ""
40
 
41
- #: includes/views/permalink-manager-uri-editor-post.php:51
42
  msgid "Post title"
43
  msgstr ""
44
 
45
- #: includes/views/permalink-manager-uri-editor-post.php:52
46
- msgid "Post name (native slug)"
 
47
  msgstr ""
48
 
49
- #: includes/views/permalink-manager-uri-editor-post.php:54
50
- msgid "Full URI & Permalink"
 
51
  msgstr ""
52
 
53
- #: includes/views/permalink-manager-uri-editor-post.php:55
54
  msgid "Post status"
55
  msgstr ""
56
 
57
- #: includes/views/permalink-manager-uri-editor-post.php:105
58
- #: includes/views/permalink-manager-uri-editor-post.php:105
 
 
59
  msgid "Edit"
60
  msgstr ""
61
 
62
- #: includes/views/permalink-manager-uri-editor-post.php:106
63
- #: includes/views/permalink-manager-uri-editor-post.php:106
 
 
64
  msgid "View"
65
  msgstr ""
66
 
67
- #: includes/views/permalink-manager-uri-editor-post.php:134
 
68
  msgid "Update all the URIs below"
69
  msgstr ""
70
 
71
- #: includes/views/permalink-manager-uri-editor-post.php:135
 
72
  msgid "Update all the URIs above"
73
  msgstr ""
74
 
75
- #: includes/views/permalink-manager-uri-editor-post.php:154
76
  msgid "All dates"
77
  msgstr ""
78
 
79
- #: includes/views/permalink-manager-uri-editor-post.php:163
80
  msgid "Filter"
81
  msgstr ""
82
 
@@ -84,40 +197,40 @@ msgstr ""
84
  msgid "Debug"
85
  msgstr ""
86
 
87
- #: includes/views/permalink-manager-debug.php:31
88
  msgid "Debug data"
89
  msgstr ""
90
 
91
- #: includes/views/permalink-manager-debug.php:35
92
  msgid "List of the URIs generated by this plugin."
93
  msgstr ""
94
 
95
- #: includes/views/permalink-manager-debug.php:36
96
  msgid "Array with URIs"
97
  msgstr ""
98
 
99
- #: includes/views/permalink-manager-debug.php:42
100
- msgid "List of the permastructures."
101
  msgstr ""
102
 
103
- #: includes/views/permalink-manager-debug.php:43
104
- msgid "Array with permastructures"
105
  msgstr ""
106
 
107
- #: includes/views/permalink-manager-debug.php:49
108
- msgid "Currently used plugin settings."
109
  msgstr ""
110
 
111
- #: includes/views/permalink-manager-debug.php:50
112
- msgid "Array with settings used in this plugin."
113
  msgstr ""
114
 
115
- #: includes/views/permalink-manager-debug.php:56
116
- msgid "Permalink hooks."
117
  msgstr ""
118
 
119
- #: includes/views/permalink-manager-debug.php:57
120
- msgid "Array with list of permalink hooks used on this website."
121
  msgstr ""
122
 
123
  #: includes/views/permalink-manager-tools.php:15
@@ -125,176 +238,313 @@ msgid "Tools"
125
  msgstr ""
126
 
127
  #: includes/views/permalink-manager-tools.php:18
128
- #: includes/views/permalink-manager-tools.php:116
129
- msgid "Find and replace"
130
  msgstr ""
131
 
132
  #: includes/views/permalink-manager-tools.php:22
133
- msgid "Regenerate/Reset"
134
  msgstr ""
135
 
136
  #: includes/views/permalink-manager-tools.php:26
137
- msgid "Stop words"
 
 
 
 
 
 
 
 
 
138
  msgstr ""
139
 
140
- #: includes/views/permalink-manager-tools.php:36
141
  msgid ""
142
  "<strong>A MySQL backup is highly recommended before using \"<em>Native "
143
  "slugs</em>\" mode!</strong>"
144
  msgstr ""
145
 
146
- #: includes/views/permalink-manager-tools.php:47
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
147
  msgid "Find ..."
148
  msgstr ""
149
 
150
- #: includes/views/permalink-manager-tools.php:53
151
  msgid "Replace with ..."
152
  msgstr ""
153
 
154
- #: includes/views/permalink-manager-tools.php:59
155
- #: includes/views/permalink-manager-tools.php:129
156
  msgid "Mode"
157
  msgstr ""
158
 
159
- #: includes/views/permalink-manager-tools.php:62
160
- #: includes/views/permalink-manager-tools.php:132
161
  msgid "Custom URIs"
162
  msgstr ""
163
 
164
- #: includes/views/permalink-manager-tools.php:62
165
- #: includes/views/permalink-manager-tools.php:132
166
  msgid "Native slugs"
167
  msgstr ""
168
 
169
- #: includes/views/permalink-manager-tools.php:65
170
- #: includes/views/permalink-manager-tools.php:135
171
  msgid "Select content type"
172
  msgstr ""
173
 
174
- #: includes/views/permalink-manager-tools.php:71
175
- #: includes/views/permalink-manager-tools.php:141
176
- #: includes/views/permalink-manager-permastructs.php:36
177
  msgid "Post types"
178
  msgstr ""
179
 
180
- #: includes/views/permalink-manager-tools.php:71
181
- #: includes/views/permalink-manager-tools.php:141
182
- #: includes/views/permalink-manager-permastructs.php:42
183
  msgid "Taxonomies"
184
  msgstr ""
185
 
186
- #: includes/views/permalink-manager-tools.php:74
187
- #: includes/views/permalink-manager-tools.php:144
188
  msgid "Select post types"
189
  msgstr ""
190
 
191
- #: includes/views/permalink-manager-tools.php:83
192
- #: includes/views/permalink-manager-tools.php:153
193
  msgid "Select taxonomies"
194
  msgstr ""
195
 
196
- #: includes/views/permalink-manager-tools.php:94
197
- #: includes/views/permalink-manager-tools.php:164
198
  msgid "Select post statuses"
199
  msgstr ""
200
 
201
- #: includes/views/permalink-manager-tools.php:103
202
- #: includes/views/permalink-manager-tools.php:173
203
  msgid "Select IDs"
204
  msgstr ""
205
 
206
- #: includes/views/permalink-manager-tools.php:107
207
- #: includes/views/permalink-manager-tools.php:177
208
  msgid ""
209
  "To narrow the above filters you can type the post IDs (or ranges) here. Eg. "
210
  "<strong>1-8, 10, 25</strong>."
211
  msgstr ""
212
 
213
- #: includes/views/permalink-manager-tools.php:113
214
- #: includes/views/permalink-manager-tools.php:183
 
215
  msgid "Important notices"
216
  msgstr ""
217
 
218
- #: includes/views/permalink-manager-tools.php:186
219
- msgid "Regenerate"
220
  msgstr ""
221
 
222
- #: includes/views/permalink-manager-settings.php:14
223
- msgid "Settings"
224
  msgstr ""
225
 
226
- #: includes/views/permalink-manager-settings.php:32
227
- msgid "General & Interface"
228
  msgstr ""
229
 
230
- #: includes/views/permalink-manager-settings.php:37
231
- msgid "Auto-update URIs"
232
  msgstr ""
233
 
234
- #: includes/views/permalink-manager-settings.php:39
235
- msgid ""
236
- "If enabled the custom URIs will be automatically updated every time the post "
237
- "is saved or updated."
238
  msgstr ""
239
 
240
- #: includes/views/permalink-manager-settings.php:43
241
- msgid "Force custom slugs"
242
  msgstr ""
243
 
244
- #: includes/views/permalink-manager-settings.php:45
245
- msgid ""
246
- "If enabled the native slugs in the defult URIs will be recreated from the "
247
- "post title.<br />This may cause URI duplicates when the post title is used "
248
- "more than once."
249
  msgstr ""
250
 
251
- #: includes/views/permalink-manager-settings.php:50
252
- msgid "Miscellaneous & SEO functions"
253
  msgstr ""
254
 
255
- #: includes/views/permalink-manager-settings.php:55
256
- msgid "Primay term/category support"
257
  msgstr ""
258
 
259
- #: includes/views/permalink-manager-settings.php:57
260
  msgid ""
261
- "Used to generate default permalinks in pages, posts & custom post types. "
262
- "Works only when \"Yoast SEO\" plugin is enabled."
263
  msgstr ""
264
 
265
- #: includes/views/permalink-manager-settings.php:61
 
 
 
 
266
  msgid "Canonical redirect"
267
  msgstr ""
268
 
269
- #: includes/views/permalink-manager-settings.php:63
270
  msgid ""
271
  "This function allows Wordpress to correct the URLs used by the visitors."
272
  msgstr ""
273
 
274
- #: includes/views/permalink-manager-settings.php:67
 
 
 
 
 
 
 
 
 
 
275
  msgid "Redirect"
276
  msgstr ""
277
 
278
- #: includes/views/permalink-manager-settings.php:69
279
  msgid "Disable"
280
  msgstr ""
281
 
282
- #: includes/views/permalink-manager-settings.php:69
283
  msgid "Enable \"301 redirect\""
284
  msgstr ""
285
 
286
- #: includes/views/permalink-manager-settings.php:69
287
  msgid "Enable \"302 redirect\""
288
  msgstr ""
289
 
290
- #: includes/views/permalink-manager-settings.php:70
291
  msgid ""
292
  "If enabled - the visitors will be redirected from native permalinks to your "
293
- "custom permalinks. Please note that the redirects will work correctly only "
294
- "if native slug \"post name\" will not be changed."
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
295
  msgstr ""
296
 
297
  #: includes/views/permalink-manager-settings.php:76
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
298
  msgid "Save settings"
299
  msgstr ""
300
 
@@ -305,178 +555,486 @@ msgstr ""
305
  #: includes/views/permalink-manager-permastructs.php:29
306
  #, php-format
307
  msgid ""
308
- "All available <a href=\"%s\" target=\"_blank\">structure tags</a> for "
309
- "<strong>post types</strong> allowed are listed below."
310
  msgstr ""
311
 
312
  #: includes/views/permalink-manager-permastructs.php:31
313
  msgid ""
314
- "Please note that some of them can be used only for particular post types' "
315
- "settings."
316
  msgstr ""
317
 
318
- #: includes/views/permalink-manager-permastructs.php:52
 
 
 
 
 
 
 
 
 
 
 
 
 
319
  msgid "WooCommerce"
320
  msgstr ""
321
 
322
- #: includes/views/permalink-manager-permastructs.php:87
 
 
 
 
 
 
 
 
323
  msgid "Save permastructures"
324
  msgstr ""
325
 
326
- #: includes/core/permalink-manager-third-parties.php:94
327
- msgid "Language"
328
  msgstr ""
329
 
330
- #: includes/core/permalink-manager-uri-functions-post.php:465
331
- #: includes/core/permalink-manager-uri-functions-post.php:469
332
- msgid "Yes"
333
  msgstr ""
334
 
335
- #: includes/core/permalink-manager-uri-functions-post.php:465
336
- #: includes/core/permalink-manager-uri-functions-post.php:468
337
- msgid "No"
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
338
  msgstr ""
339
 
340
- #: includes/core/permalink-manager-uri-functions-post.php:467
 
 
 
 
 
 
 
 
 
 
 
 
 
 
341
  #, php-format
342
- msgid "Use global settings [%s]"
343
  msgstr ""
344
 
345
- #. Name of the plugin
346
- #: includes/core/permalink-manager-uri-functions-post.php:473
347
- #: includes/core/permalink-manager-uri-functions-post.php:477
348
- #: includes/core/permalink-manager-uri-functions-post.php:478
349
- #: includes/core/permalink-manager-admin-functions.php:79
350
- #: includes/core/permalink-manager-admin-functions.php:79
351
- msgid "Permalink Manager"
352
  msgstr ""
353
 
354
- #: includes/core/permalink-manager-uri-functions-post.php:477
355
- msgid "Close: "
356
  msgstr ""
357
 
358
- #: includes/core/permalink-manager-uri-functions-post.php:483
359
- msgid "Current URI"
 
 
 
 
360
  msgstr ""
361
 
362
- #: includes/core/permalink-manager-uri-functions-post.php:484
363
  msgid ""
364
- "The custom URI can be edited only if 'Auto-update the URI' feature is not "
365
- "enabled."
 
366
  msgstr ""
367
 
368
- #: includes/core/permalink-manager-uri-functions-post.php:488
369
- msgid "Auto-update the URI"
 
 
 
 
 
 
370
  msgstr ""
371
 
372
- #: includes/core/permalink-manager-uri-functions-post.php:489
373
  msgid ""
374
- "If enabled, the 'Current URI' field will be automatically changed to "
375
- "'Default URI' (displayed below) after the post is saved or updated."
376
  msgstr ""
377
 
378
- #: includes/core/permalink-manager-uri-functions-post.php:494
379
- msgid "Default URI"
 
 
380
  msgstr ""
381
 
382
- #: includes/core/permalink-manager-uri-functions-post.php:495
383
- msgid "Restore to Default URI"
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
384
  msgstr ""
385
 
386
- #: includes/core/permalink-manager-actions.php:24
387
- msgid "Sitemap was updated!"
388
  msgstr ""
389
 
390
- #: includes/core/permalink-manager-actions.php:59
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
391
  #, php-format
392
  msgid "<strong>%d</strong> slug was updated!"
393
  msgid_plural "<strong>%d</strong> slugs were updated!"
394
  msgstr[0] ""
395
  msgstr[1] ""
396
 
397
- #: includes/core/permalink-manager-actions.php:60
398
  #, php-format
399
  msgid "<a %s>Click here</a> to go to the list of updated slugs"
400
  msgstr ""
401
 
402
- #: includes/core/permalink-manager-actions.php:65
403
  msgid "<strong>No slugs</strong> were updated!"
404
  msgstr ""
405
 
406
- #: includes/core/permalink-manager-actions.php:99
407
  msgid "The settings are saved!"
408
  msgstr ""
409
 
410
- #: includes/core/permalink-manager-admin-functions.php:114
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
411
  msgid "URI Editor"
412
  msgstr ""
413
 
414
- #: includes/core/permalink-manager-admin-functions.php:116
415
- #: includes/core/permalink-manager-admin-functions.php:391
416
  msgid "Buy Permalink Manager Pro"
417
  msgstr ""
418
 
419
- #: includes/core/permalink-manager-admin-functions.php:181
420
  msgid "Select all"
421
  msgstr ""
422
 
423
- #: includes/core/permalink-manager-admin-functions.php:182
424
  msgid "Unselect all"
425
  msgstr ""
426
 
427
- #: includes/core/permalink-manager-admin-functions.php:392
428
  msgid "Donate"
429
  msgstr ""
430
 
431
- #: includes/core/permalink-manager-admin-functions.php:393
432
  msgid "by Maciej Bis"
433
  msgstr ""
434
 
435
- #: includes/core/permalink-manager-admin-functions.php:467
436
  #, php-format
437
  msgid ""
438
  "This functionality is available only in <a href=\"%s\" target=\"_blank\">"
439
  "Permalink Manager Pro</a>."
440
  msgstr ""
441
 
442
- #: includes/core/permalink-manager-admin-functions.php:488
443
- #: includes/core/permalink-manager-admin-functions.php:511
444
  msgid "Title"
445
  msgstr ""
446
 
447
- #: includes/core/permalink-manager-admin-functions.php:489
448
- #: includes/core/permalink-manager-admin-functions.php:512
449
  msgid "Old URI"
450
  msgstr ""
451
 
452
- #: includes/core/permalink-manager-admin-functions.php:490
453
- #: includes/core/permalink-manager-admin-functions.php:513
454
  msgid "New URI"
455
  msgstr ""
456
 
457
- #: includes/core/permalink-manager-admin-functions.php:491
458
- #: includes/core/permalink-manager-admin-functions.php:514
459
  msgid "Old Slug"
460
  msgstr ""
461
 
462
- #: includes/core/permalink-manager-admin-functions.php:492
463
- #: includes/core/permalink-manager-admin-functions.php:515
464
  msgid "New Slug"
465
  msgstr ""
466
 
467
- #: includes/core/permalink-manager-admin-functions.php:511
468
  msgid "Show more details"
469
  msgstr ""
470
 
471
- #: includes/core/permalink-manager-admin-functions.php:520
472
  msgid "List of updated items"
473
  msgstr ""
474
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
475
  #. Description of the plugin
476
  msgid ""
477
- "Most advanced Permalink utility for Wordpress. It allows to bulk edit the "
478
- "permalinks & permastructures and regenerate/reset all the URIs in your "
479
- "Wordpress instance."
480
  msgstr ""
481
 
482
  #. URI of the plugin
3
  msgstr ""
4
  "Project-Id-Version: PACKAGE VERSION\n"
5
  "Report-Msgid-Bugs-To: \n"
6
+ "POT-Creation-Date: 2018-02-02 17:16+0000\n"
7
  "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
8
  "Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
9
  "Language-Team: \n"
10
  "Language: \n"
11
+ "Plural-Forms: nplurals=INTEGER; plural=EXPRESSION\n"
12
  "MIME-Version: 1.0\n"
13
  "Content-Type: text/plain; charset=UTF-8\n"
14
  "Content-Transfer-Encoding: 8bit\n"
15
+ "X-Generator: Loco - https://localise.biz/"
16
 
17
+ #: permalink-manager.php:183
18
  #, php-format
19
  msgid ""
20
+ "Get access to extra features: full taxonomy and WooCommerce support, "
21
+ "possibility to use custom fields inside the permalinks and more!<br />"
22
+ "<strong>Buy Permalink Manager Pro <a href=\"%s\" target=\"_blank\">here</a> "
23
+ "and save 20&#37; using \"OCTOBER\" coupon code!</strong> Valid until 31.10!"
24
+ msgstr ""
25
+
26
+ #: includes/views/permalink-manager-upgrade.php:16
27
+ msgid "Extra features"
28
+ msgstr ""
29
+
30
+ #: includes/views/permalink-manager-upgrade.php:24
31
+ msgid "Permalink Manager Pro extra features"
32
+ msgstr ""
33
+
34
+ #: includes/views/permalink-manager-upgrade.php:26
35
+ msgid ""
36
+ "Take full control of your permalinks! Permalink Manager Pro contains a bunch "
37
+ "of useful extra functionalities!"
38
+ msgstr ""
39
+
40
+ #: includes/views/permalink-manager-upgrade.php:27
41
+ msgid ""
42
+ "Not certain if Permalink Manager Pro will fix your permalink problem?<br />"
43
+ "Contact us at <a href=\"mailto:contact@permalinkmanager.pro\">"
44
+ "contact@permalinkmanager.pro</a>!"
45
+ msgstr ""
46
+
47
+ #: includes/views/permalink-manager-upgrade.php:31
48
+ msgid "Full Taxonomy Support"
49
+ msgstr ""
50
+
51
+ #: includes/views/permalink-manager-upgrade.php:32
52
+ msgid ""
53
+ "With Permalink Manager Pro you can easily alter the default taxonomies’ "
54
+ "permastructures & edit the full permalink in all the categories, tags and "
55
+ "custom taxonomies terms!"
56
+ msgstr ""
57
+
58
+ #: includes/views/permalink-manager-upgrade.php:33
59
+ msgid ""
60
+ "You can also bulk edit the taxonomies permalinks (eg. reset the native terms "
61
+ "slugs) with included tools - “Find & replace” or “Regnerate/reset”"
62
+ msgstr ""
63
+
64
+ #: includes/views/permalink-manager-upgrade.php:36
65
+ msgid "Full WooCommerce Support"
66
+ msgstr ""
67
+
68
+ #: includes/views/permalink-manager-upgrade.php:37
69
+ msgid ""
70
+ "Adjust your shop, product category, tags or single product permalinks and "
71
+ "set your e-commerce URLs any way you want!"
72
+ msgstr ""
73
+
74
+ #: includes/views/permalink-manager-upgrade.php:38
75
+ msgid ""
76
+ "Remove <em>product-category</em>, <em>product-tag</em> and <em>product</em> "
77
+ "or replace them with another permalink tags. Furthermore, the plugin allows "
78
+ "to set completely custom permalinks for each product &#038; product "
79
+ "taxonomies individually."
80
+ msgstr ""
81
+
82
+ #: includes/views/permalink-manager-upgrade.php:41
83
+ msgid "Custom fields inside permalinks"
84
+ msgstr ""
85
+
86
+ #: includes/views/permalink-manager-upgrade.php:42
87
+ msgid ""
88
+ "Automatically embed your custom fields values inside the permalinks, by "
89
+ "adding the custom field tags to the permastructures."
90
+ msgstr ""
91
+
92
+ #: includes/views/permalink-manager-upgrade.php:43
93
+ msgid ""
94
+ "This functionality is compatible with meta keys set with Advanced Custom "
95
+ "Fields plugin."
96
+ msgstr ""
97
+
98
+ #: includes/views/permalink-manager-upgrade.php:46
99
+ msgid "Extra Redirects"
100
+ msgstr ""
101
+
102
+ #: includes/views/permalink-manager-upgrade.php:47
103
+ msgid ""
104
+ "Set-up extra redirects and/or aliases for each post or term. Permalink "
105
+ "Manager would also automatically create redirects for previously used custom "
106
+ "permalinks."
107
+ msgstr ""
108
+
109
+ #: includes/views/permalink-manager-upgrade.php:50
110
+ msgid "Import permalinks from \"Custom Permalinks\""
111
+ msgstr ""
112
+
113
+ #: includes/views/permalink-manager-upgrade.php:51
114
+ msgid ""
115
+ "Additionally, Permalink Manager Pro allows to import the custom URIs defined "
116
+ "previously with \"Custom Permalinks\" plugin. "
117
+ msgstr ""
118
+
119
+ #: includes/views/permalink-manager-upgrade.php:54
120
+ msgid "Remove \"stop words\" from permalinks"
121
+ msgstr ""
122
+
123
+ #: includes/views/permalink-manager-upgrade.php:55
124
+ msgid ""
125
+ "Set your own list of stop words or use a predefined one available in 21 "
126
+ "languages. If enabled, all the words will be automatically removed from the "
127
+ "default permalinks."
128
  msgstr ""
129
 
130
  #: includes/views/permalink-manager-uri-editor.php:28
143
  msgid "Post statuses"
144
  msgstr ""
145
 
146
+ #: includes/views/permalink-manager-uri-editor-post.php:54
147
  msgid "Post title"
148
  msgstr ""
149
 
150
+ #: includes/views/permalink-manager-uri-editor-post.php:55
151
+ #: includes/views/permalink-manager-uri-editor-tax.php:51
152
+ msgid "Full URI & Permalink"
153
  msgstr ""
154
 
155
+ #: includes/views/permalink-manager-uri-editor-post.php:103
156
+ #: includes/views/permalink-manager-uri-editor-tax.php:94
157
+ msgid "Slug"
158
  msgstr ""
159
 
160
+ #: includes/views/permalink-manager-uri-editor-post.php:104
161
  msgid "Post status"
162
  msgstr ""
163
 
164
+ #: includes/views/permalink-manager-uri-editor-post.php:109
165
+ #: includes/views/permalink-manager-uri-editor-post.php:109
166
+ #: includes/views/permalink-manager-uri-editor-tax.php:99
167
+ #: includes/views/permalink-manager-uri-editor-tax.php:99
168
  msgid "Edit"
169
  msgstr ""
170
 
171
+ #: includes/views/permalink-manager-uri-editor-post.php:110
172
+ #: includes/views/permalink-manager-uri-editor-post.php:110
173
+ #: includes/views/permalink-manager-uri-editor-tax.php:100
174
+ #: includes/views/permalink-manager-uri-editor-tax.php:100
175
  msgid "View"
176
  msgstr ""
177
 
178
+ #: includes/views/permalink-manager-uri-editor-post.php:138
179
+ #: includes/views/permalink-manager-uri-editor-tax.php:137
180
  msgid "Update all the URIs below"
181
  msgstr ""
182
 
183
+ #: includes/views/permalink-manager-uri-editor-post.php:139
184
+ #: includes/views/permalink-manager-uri-editor-tax.php:138
185
  msgid "Update all the URIs above"
186
  msgstr ""
187
 
188
+ #: includes/views/permalink-manager-uri-editor-post.php:158
189
  msgid "All dates"
190
  msgstr ""
191
 
192
+ #: includes/views/permalink-manager-uri-editor-post.php:167
193
  msgid "Filter"
194
  msgstr ""
195
 
197
  msgid "Debug"
198
  msgstr ""
199
 
200
+ #: includes/views/permalink-manager-debug.php:26
201
  msgid "Debug data"
202
  msgstr ""
203
 
204
+ #: includes/views/permalink-manager-debug.php:30
205
  msgid "List of the URIs generated by this plugin."
206
  msgstr ""
207
 
208
+ #: includes/views/permalink-manager-debug.php:31
209
  msgid "Array with URIs"
210
  msgstr ""
211
 
212
+ #: includes/views/permalink-manager-debug.php:37
213
+ msgid "List of custom redirects set-up by this plugin."
214
  msgstr ""
215
 
216
+ #: includes/views/permalink-manager-debug.php:38
217
+ msgid "Array with redirects"
218
  msgstr ""
219
 
220
+ #: includes/views/permalink-manager-debug.php:44
221
+ msgid "List of the permastructures."
222
  msgstr ""
223
 
224
+ #: includes/views/permalink-manager-debug.php:45
225
+ msgid "Array with permastructures"
226
  msgstr ""
227
 
228
+ #: includes/views/permalink-manager-debug.php:51
229
+ msgid "Currently used plugin settings."
230
  msgstr ""
231
 
232
+ #: includes/views/permalink-manager-debug.php:52
233
+ msgid "Array with settings used in this plugin."
234
  msgstr ""
235
 
236
  #: includes/views/permalink-manager-tools.php:15
238
  msgstr ""
239
 
240
  #: includes/views/permalink-manager-tools.php:18
241
+ msgid "Permalink Duplicates"
 
242
  msgstr ""
243
 
244
  #: includes/views/permalink-manager-tools.php:22
245
+ msgid "Find & Replace"
246
  msgstr ""
247
 
248
  #: includes/views/permalink-manager-tools.php:26
249
+ msgid "Regenerate/Reset"
250
+ msgstr ""
251
+
252
+ #: includes/views/permalink-manager-tools.php:30
253
+ msgid "Stop Words"
254
+ msgstr ""
255
+
256
+ #: includes/views/permalink-manager-tools.php:34
257
+ #: includes/views/permalink-manager-pro-addons.php:202
258
+ msgid "Custom Permalinks"
259
  msgstr ""
260
 
261
+ #: includes/views/permalink-manager-tools.php:44
262
  msgid ""
263
  "<strong>A MySQL backup is highly recommended before using \"<em>Native "
264
  "slugs</em>\" mode!</strong>"
265
  msgstr ""
266
 
267
+ #: includes/views/permalink-manager-tools.php:54
268
+ msgid "List of duplicated permalinks"
269
+ msgstr ""
270
+
271
+ #: includes/views/permalink-manager-tools.php:55
272
+ msgid "Remove all broken URIs"
273
+ msgstr ""
274
+
275
+ #: includes/views/permalink-manager-tools.php:70
276
+ msgid "Extra Redirect"
277
+ msgstr ""
278
+
279
+ #: includes/views/permalink-manager-tools.php:70
280
+ #: includes/core/permalink-manager-uri-functions-tax.php:461
281
+ msgid "Custom URI"
282
+ msgstr ""
283
+
284
+ #: includes/views/permalink-manager-tools.php:81
285
+ msgid "Edit term"
286
+ msgstr ""
287
+
288
+ #: includes/views/permalink-manager-tools.php:84
289
+ msgid "(Removed term)"
290
+ msgstr ""
291
+
292
+ #: includes/views/permalink-manager-tools.php:85
293
+ #: includes/views/permalink-manager-tools.php:98
294
+ msgid "Remove broken URI"
295
+ msgstr ""
296
+
297
+ #: includes/views/permalink-manager-tools.php:94
298
+ msgid "Edit post"
299
+ msgstr ""
300
+
301
+ #: includes/views/permalink-manager-tools.php:97
302
+ msgid "(Removed post)"
303
+ msgstr ""
304
+
305
+ #: includes/views/permalink-manager-tools.php:120
306
+ msgid "Congratulations! No duplicated URIs or Redirects found!"
307
+ msgstr ""
308
+
309
+ #: includes/views/permalink-manager-tools.php:134
310
  msgid "Find ..."
311
  msgstr ""
312
 
313
+ #: includes/views/permalink-manager-tools.php:140
314
  msgid "Replace with ..."
315
  msgstr ""
316
 
317
+ #: includes/views/permalink-manager-tools.php:146
318
+ #: includes/views/permalink-manager-tools.php:216
319
  msgid "Mode"
320
  msgstr ""
321
 
322
+ #: includes/views/permalink-manager-tools.php:149
323
+ #: includes/views/permalink-manager-tools.php:219
324
  msgid "Custom URIs"
325
  msgstr ""
326
 
327
+ #: includes/views/permalink-manager-tools.php:149
 
328
  msgid "Native slugs"
329
  msgstr ""
330
 
331
+ #: includes/views/permalink-manager-tools.php:152
332
+ #: includes/views/permalink-manager-tools.php:222
333
  msgid "Select content type"
334
  msgstr ""
335
 
336
+ #: includes/views/permalink-manager-tools.php:158
337
+ #: includes/views/permalink-manager-tools.php:228
338
+ #: includes/views/permalink-manager-permastructs.php:38
339
  msgid "Post types"
340
  msgstr ""
341
 
342
+ #: includes/views/permalink-manager-tools.php:158
343
+ #: includes/views/permalink-manager-tools.php:228
344
+ #: includes/views/permalink-manager-permastructs.php:44
345
  msgid "Taxonomies"
346
  msgstr ""
347
 
348
+ #: includes/views/permalink-manager-tools.php:161
349
+ #: includes/views/permalink-manager-tools.php:231
350
  msgid "Select post types"
351
  msgstr ""
352
 
353
+ #: includes/views/permalink-manager-tools.php:170
354
+ #: includes/views/permalink-manager-tools.php:240
355
  msgid "Select taxonomies"
356
  msgstr ""
357
 
358
+ #: includes/views/permalink-manager-tools.php:181
359
+ #: includes/views/permalink-manager-tools.php:251
360
  msgid "Select post statuses"
361
  msgstr ""
362
 
363
+ #: includes/views/permalink-manager-tools.php:190
364
+ #: includes/views/permalink-manager-tools.php:260
365
  msgid "Select IDs"
366
  msgstr ""
367
 
368
+ #: includes/views/permalink-manager-tools.php:194
369
+ #: includes/views/permalink-manager-tools.php:264
370
  msgid ""
371
  "To narrow the above filters you can type the post IDs (or ranges) here. Eg. "
372
  "<strong>1-8, 10, 25</strong>."
373
  msgstr ""
374
 
375
+ #: includes/views/permalink-manager-tools.php:200
376
+ #: includes/views/permalink-manager-tools.php:270
377
+ #: includes/views/permalink-manager-permastructs.php:99
378
  msgid "Important notices"
379
  msgstr ""
380
 
381
+ #: includes/views/permalink-manager-tools.php:203
382
+ msgid "Find and replace"
383
  msgstr ""
384
 
385
+ #: includes/views/permalink-manager-tools.php:219
386
+ msgid "Restore native slugs"
387
  msgstr ""
388
 
389
+ #: includes/views/permalink-manager-tools.php:219
390
+ msgid "Restore native permalinks"
391
  msgstr ""
392
 
393
+ #: includes/views/permalink-manager-tools.php:273
394
+ msgid "Regenerate"
395
  msgstr ""
396
 
397
+ #: includes/views/permalink-manager-uri-editor-tax.php:50
398
+ msgid "Term title"
 
 
399
  msgstr ""
400
 
401
+ #: includes/views/permalink-manager-uri-editor-tax.php:52
402
+ msgid "Count"
403
  msgstr ""
404
 
405
+ #: includes/views/permalink-manager-settings.php:14
406
+ msgid "Settings"
 
 
 
407
  msgstr ""
408
 
409
+ #: includes/views/permalink-manager-settings.php:33
410
+ msgid "General settings"
411
  msgstr ""
412
 
413
+ #: includes/views/permalink-manager-settings.php:39
414
+ msgid "Auto-update permalinks"
415
  msgstr ""
416
 
417
+ #: includes/views/permalink-manager-settings.php:41
418
  msgid ""
419
+ "If enabled, the custom permalinks will be automatically updated every time "
420
+ "the post is saved or updated."
421
  msgstr ""
422
 
423
+ #: includes/views/permalink-manager-settings.php:46
424
+ msgid "SEO functions"
425
+ msgstr ""
426
+
427
+ #: includes/views/permalink-manager-settings.php:52
428
  msgid "Canonical redirect"
429
  msgstr ""
430
 
431
+ #: includes/views/permalink-manager-settings.php:54
432
  msgid ""
433
  "This function allows Wordpress to correct the URLs used by the visitors."
434
  msgstr ""
435
 
436
+ #: includes/views/permalink-manager-settings.php:58
437
+ msgid "Auto-create \"Extra Redirects\" for old permalinks"
438
+ msgstr ""
439
+
440
+ #: includes/views/permalink-manager-settings.php:62
441
+ msgid ""
442
+ "If enabled, the redirects will be automatially created for old custom "
443
+ "permalinks, after posts or terms are updated."
444
+ msgstr ""
445
+
446
+ #: includes/views/permalink-manager-settings.php:66
447
  msgid "Redirect"
448
  msgstr ""
449
 
450
+ #: includes/views/permalink-manager-settings.php:68
451
  msgid "Disable"
452
  msgstr ""
453
 
454
+ #: includes/views/permalink-manager-settings.php:68
455
  msgid "Enable \"301 redirect\""
456
  msgstr ""
457
 
458
+ #: includes/views/permalink-manager-settings.php:68
459
  msgid "Enable \"302 redirect\""
460
  msgstr ""
461
 
462
+ #: includes/views/permalink-manager-settings.php:69
463
  msgid ""
464
  "If enabled - the visitors will be redirected from native permalinks to your "
465
+ "custom permalinks.<br /><strong>Only native permalinks & extra redirects "
466
+ "will be redirected to new custom permalinks</strong>."
467
+ msgstr ""
468
+
469
+ #: includes/views/permalink-manager-settings.php:73
470
+ msgid "Trailing slashes"
471
+ msgstr ""
472
+
473
+ #: includes/views/permalink-manager-settings.php:75
474
+ msgid "Use default settings"
475
+ msgstr ""
476
+
477
+ #: includes/views/permalink-manager-settings.php:75
478
+ msgid "Add trailing slashes"
479
+ msgstr ""
480
+
481
+ #: includes/views/permalink-manager-settings.php:75
482
+ msgid "Add trailing slashes (+ auto-redirect links without them)"
483
+ msgstr ""
484
+
485
+ #: includes/views/permalink-manager-settings.php:75
486
+ msgid "Remove trailing slashes"
487
+ msgstr ""
488
+
489
+ #: includes/views/permalink-manager-settings.php:75
490
+ msgid "Remove trailing slashes (+ auto-redirect links with them)"
491
  msgstr ""
492
 
493
  #: includes/views/permalink-manager-settings.php:76
494
+ msgid ""
495
+ "This option can be used to alter the native settings and control if trailing "
496
+ "slash should be added or removed from the end of posts & terms permalinks."
497
+ msgstr ""
498
+
499
+ #: includes/views/permalink-manager-settings.php:80
500
+ msgid "Force 404 on non-existing pagination pages"
501
+ msgstr ""
502
+
503
+ #: includes/views/permalink-manager-settings.php:82
504
+ msgid ""
505
+ "If enabled, the non-existing pagination pages (for single posts) will return "
506
+ "404 (\"Not Found\") error.<br /><strong>Please disable it, if you encounter "
507
+ "any problems with pagination pages or use custom pagination system.</strong>"
508
+ msgstr ""
509
+
510
+ #: includes/views/permalink-manager-settings.php:87
511
+ msgid "Advanced settings"
512
+ msgstr ""
513
+
514
+ #: includes/views/permalink-manager-settings.php:93
515
+ msgid "Automatically remove broken URIs"
516
+ msgstr ""
517
+
518
+ #: includes/views/permalink-manager-settings.php:95
519
+ #, php-format
520
+ msgid ""
521
+ "If enabled, the custom URIs assigned to removed posts & terms will be "
522
+ "automatically removed.<br />To manually remove the duplicates please go <a "
523
+ "href=\"%s\">to this page</a>."
524
+ msgstr ""
525
+
526
+ #: includes/views/permalink-manager-settings.php:99
527
+ msgid "Force custom slugs"
528
+ msgstr ""
529
+
530
+ #: includes/views/permalink-manager-settings.php:101
531
+ msgid ""
532
+ "If enabled, the slugs in the default custom permalinks will be recreated "
533
+ "from the post titles.<br />This may cause permalinks duplicates when the "
534
+ "post or term title is used more than once."
535
+ msgstr ""
536
+
537
+ #: includes/views/permalink-manager-settings.php:105
538
+ msgid "Disable Permalink Manager functionalities"
539
+ msgstr ""
540
+
541
+ #: includes/views/permalink-manager-settings.php:107
542
+ msgid ""
543
+ "Select the post types & taxonomies where the functionalities of Permalink "
544
+ "Manager should be completely disabled."
545
+ msgstr ""
546
+
547
+ #: includes/views/permalink-manager-settings.php:113
548
  msgid "Save settings"
549
  msgstr ""
550
 
555
  #: includes/views/permalink-manager-permastructs.php:29
556
  #, php-format
557
  msgid ""
558
+ "All allowed <a href=\"%s\" target=\"_blank\">structure tags</a> are listed "
559
+ "below."
560
  msgstr ""
561
 
562
  #: includes/views/permalink-manager-permastructs.php:31
563
  msgid ""
564
+ "Please note that some of them can be used only for particular post types "
565
+ "permastructures."
566
  msgstr ""
567
 
568
+ #: includes/views/permalink-manager-permastructs.php:32
569
+ msgid ""
570
+ "<h5>Custom fields inside permastructures <small>(Permalink Manager Pro only)"
571
+ "</small></h5>"
572
+ msgstr ""
573
+
574
+ #: includes/views/permalink-manager-permastructs.php:33
575
+ msgid ""
576
+ "To use the custom fields inside the permalink, please use following tag "
577
+ "<code>%__custom_field_key%</code> and replace \"<em>custom_field_key</em>\" "
578
+ "with the full name of your custom field key."
579
+ msgstr ""
580
+
581
+ #: includes/views/permalink-manager-permastructs.php:54
582
  msgid "WooCommerce"
583
  msgstr ""
584
 
585
+ #: includes/views/permalink-manager-permastructs.php:88
586
+ msgid "Default permastructure"
587
+ msgstr ""
588
+
589
+ #: includes/views/permalink-manager-permastructs.php:89
590
+ msgid "Restore to Default Permastructure"
591
+ msgstr ""
592
+
593
+ #: includes/views/permalink-manager-permastructs.php:103
594
  msgid "Save permastructures"
595
  msgstr ""
596
 
597
+ #: includes/views/permalink-manager-pro-addons.php:99
598
+ msgid "Support"
599
  msgstr ""
600
 
601
+ #: includes/views/permalink-manager-pro-addons.php:117
602
+ msgid "Licence"
 
603
  msgstr ""
604
 
605
+ #: includes/views/permalink-manager-pro-addons.php:122
606
+ msgid "License key"
607
+ msgstr ""
608
+
609
+ #: includes/views/permalink-manager-pro-addons.php:123
610
+ msgid ""
611
+ "The licence key allows you to access all the plugin updates & priority "
612
+ "support."
613
+ msgstr ""
614
+
615
+ #: includes/views/permalink-manager-pro-addons.php:150
616
+ msgid "Remove all words"
617
+ msgstr ""
618
+
619
+ #: includes/views/permalink-manager-pro-addons.php:152
620
+ msgid "Add the words from the list"
621
+ msgstr ""
622
+
623
+ #: includes/views/permalink-manager-pro-addons.php:160
624
+ msgid "Enable \"stop words\""
625
+ msgstr ""
626
+
627
+ #: includes/views/permalink-manager-pro-addons.php:166
628
+ msgid "\"Stop words\" list"
629
+ msgstr ""
630
+
631
+ #: includes/views/permalink-manager-pro-addons.php:170
632
+ msgid "The words should be comma-separated."
633
+ msgstr ""
634
+
635
+ #: includes/views/permalink-manager-pro-addons.php:178
636
+ #: includes/views/permalink-manager-pro-addons.php:211
637
+ msgid "Instructions"
638
  msgstr ""
639
 
640
+ #: includes/views/permalink-manager-pro-addons.php:182
641
+ msgid "Save"
642
+ msgstr ""
643
+
644
+ #: includes/views/permalink-manager-pro-addons.php:203
645
+ msgid "Deactivate after import"
646
+ msgstr ""
647
+
648
+ #: includes/views/permalink-manager-pro-addons.php:206
649
+ msgid ""
650
+ "If selected, \"Custom Permalinks\" plugin will be deactivated after its "
651
+ "custom URIs are imported."
652
+ msgstr ""
653
+
654
+ #: includes/views/permalink-manager-pro-addons.php:218
655
  #, php-format
656
+ msgid "Import %d URIs"
657
  msgstr ""
658
 
659
+ #: includes/views/permalink-manager-pro-addons.php:223
660
+ msgid "No custom URIs to import"
 
 
 
 
 
661
  msgstr ""
662
 
663
+ #: includes/views/permalink-manager-pro-addons.php:236
664
+ msgid "Technical support"
665
  msgstr ""
666
 
667
+ #: includes/views/permalink-manager-pro-addons.php:237
668
+ #, php-format
669
+ msgid ""
670
+ "To find the answers on frequently asked questions and information about how "
671
+ "to deal with the most common issues please go to the <strong>Knowledge "
672
+ "Base</strong> using <a target=\"_blank\" href=\"%s\">this link</a>."
673
  msgstr ""
674
 
675
+ #: includes/views/permalink-manager-pro-addons.php:238
676
  msgid ""
677
+ "If you still did not find the answer to your question, please send us your "
678
+ "question or a detailed description of your problem/issue to <a href=\"mailto:"
679
+ "support@permalinkmanager.pro\">support@permalinkmanager.pro</a>."
680
  msgstr ""
681
 
682
+ #: includes/views/permalink-manager-pro-addons.php:239
683
+ msgid ""
684
+ "To reduce the response time, please attach your licence key and if possible "
685
+ "also: URL address of your website and screenshots explaining the issue."
686
+ msgstr ""
687
+
688
+ #: includes/views/permalink-manager-pro-addons.php:241
689
+ msgid "Suggestions/feedback"
690
  msgstr ""
691
 
692
+ #: includes/views/permalink-manager-pro-addons.php:242
693
  msgid ""
694
+ "If you would like to suggest a new functionality or leave us feedback, we "
695
+ "are open to all new ideas and would be grateful for all your comments!"
696
  msgstr ""
697
 
698
+ #: includes/views/permalink-manager-pro-addons.php:243
699
+ msgid ""
700
+ " Please send your remarks to <a href=\"mailto:contact@permalinkmanager.pro\">"
701
+ "contact@permalinkmanager.pro</a>."
702
  msgstr ""
703
 
704
+ #: includes/views/permalink-manager-pro-addons.php:274
705
+ #, php-format
706
+ msgid ""
707
+ "<strong>Please use URIs only!</strong><br />For instance, to set-up a "
708
+ "redirect for <code>%s/old-uri</code> please use <code>old-uri</code>."
709
+ msgstr ""
710
+
711
+ #: includes/views/permalink-manager-pro-addons.php:279
712
+ msgid "Add new redirect"
713
+ msgstr ""
714
+
715
+ #: includes/core/permalink-manager-pro-functions.php:59
716
+ msgid "Arabic"
717
+ msgstr ""
718
+
719
+ #: includes/core/permalink-manager-pro-functions.php:60
720
+ msgid "Chinese"
721
  msgstr ""
722
 
723
+ #: includes/core/permalink-manager-pro-functions.php:61
724
+ msgid "Danish"
725
  msgstr ""
726
 
727
+ #: includes/core/permalink-manager-pro-functions.php:62
728
+ msgid "Dutch"
729
+ msgstr ""
730
+
731
+ #: includes/core/permalink-manager-pro-functions.php:63
732
+ msgid "English"
733
+ msgstr ""
734
+
735
+ #: includes/core/permalink-manager-pro-functions.php:64
736
+ msgid "Finnish"
737
+ msgstr ""
738
+
739
+ #: includes/core/permalink-manager-pro-functions.php:65
740
+ msgid "French"
741
+ msgstr ""
742
+
743
+ #: includes/core/permalink-manager-pro-functions.php:66
744
+ msgid "German"
745
+ msgstr ""
746
+
747
+ #: includes/core/permalink-manager-pro-functions.php:67
748
+ msgid "Hebrew"
749
+ msgstr ""
750
+
751
+ #: includes/core/permalink-manager-pro-functions.php:68
752
+ msgid "Hindi"
753
+ msgstr ""
754
+
755
+ #: includes/core/permalink-manager-pro-functions.php:69
756
+ msgid "Italian"
757
+ msgstr ""
758
+
759
+ #: includes/core/permalink-manager-pro-functions.php:70
760
+ msgid "Japanese"
761
+ msgstr ""
762
+
763
+ #: includes/core/permalink-manager-pro-functions.php:71
764
+ msgid "Korean"
765
+ msgstr ""
766
+
767
+ #: includes/core/permalink-manager-pro-functions.php:72
768
+ msgid "Norwegian"
769
+ msgstr ""
770
+
771
+ #: includes/core/permalink-manager-pro-functions.php:73
772
+ msgid "Persian"
773
+ msgstr ""
774
+
775
+ #: includes/core/permalink-manager-pro-functions.php:74
776
+ msgid "Polish"
777
+ msgstr ""
778
+
779
+ #: includes/core/permalink-manager-pro-functions.php:75
780
+ msgid "Portuguese"
781
+ msgstr ""
782
+
783
+ #: includes/core/permalink-manager-pro-functions.php:76
784
+ msgid "Russian"
785
+ msgstr ""
786
+
787
+ #: includes/core/permalink-manager-pro-functions.php:77
788
+ msgid "Spanish"
789
+ msgstr ""
790
+
791
+ #: includes/core/permalink-manager-pro-functions.php:78
792
+ msgid "Swedish"
793
+ msgstr ""
794
+
795
+ #: includes/core/permalink-manager-pro-functions.php:79
796
+ msgid "Turkish"
797
+ msgstr ""
798
+
799
+ #: includes/core/permalink-manager-pro-functions.php:127
800
+ #, php-format
801
+ msgid ""
802
+ "Please paste the licence key <a href=\"%s\">here</a> to access all Permalink "
803
+ "Manager Pro updates!"
804
+ msgstr ""
805
+
806
+ #: includes/core/permalink-manager-pro-functions.php:240
807
+ msgid "Coupon Link"
808
+ msgstr ""
809
+
810
+ #: includes/core/permalink-manager-pro-functions.php:261
811
+ msgid "Coupon URI"
812
+ msgstr ""
813
+
814
+ #: includes/core/permalink-manager-pro-functions.php:262
815
+ msgid ""
816
+ "The URIs are case-insensitive, eg. <strong>BLACKFRIDAY</strong> and <strong>"
817
+ "blackfriday</strong> are equivalent."
818
+ msgstr ""
819
+
820
+ #: includes/core/permalink-manager-pro-functions.php:273
821
+ msgid "Coupon Full URL"
822
+ msgstr ""
823
+
824
+ #: includes/core/permalink-manager-third-parties.php:151
825
+ msgid "Language"
826
+ msgstr ""
827
+
828
+ #: includes/core/permalink-manager-third-parties.php:268
829
+ msgid "\"Custom Permalinks\" URIs were imported!"
830
+ msgstr ""
831
+
832
+ #: includes/core/permalink-manager-third-parties.php:271
833
+ msgid "No \"Custom Permalinks\" URIs were imported!"
834
+ msgstr ""
835
+
836
+ #: includes/core/permalink-manager-uri-functions-tax.php:462
837
+ msgid "Clear/leave the field empty to use the default permalink."
838
+ msgstr ""
839
+
840
+ #: includes/core/permalink-manager-uri-functions-tax.php:502
841
+ #: includes/core/permalink-manager-uri-functions-post.php:602
842
+ #: includes/core/permalink-manager-admin-functions.php:561
843
+ #: includes/core/permalink-manager-admin-functions.php:622
844
+ msgid "Current URI"
845
+ msgstr ""
846
+
847
+ #: includes/core/permalink-manager-actions.php:57
848
  #, php-format
849
  msgid "<strong>%d</strong> slug was updated!"
850
  msgid_plural "<strong>%d</strong> slugs were updated!"
851
  msgstr[0] ""
852
  msgstr[1] ""
853
 
854
+ #: includes/core/permalink-manager-actions.php:58
855
  #, php-format
856
  msgid "<a %s>Click here</a> to go to the list of updated slugs"
857
  msgstr ""
858
 
859
+ #: includes/core/permalink-manager-actions.php:63
860
  msgid "<strong>No slugs</strong> were updated!"
861
  msgstr ""
862
 
863
+ #: includes/core/permalink-manager-actions.php:97
864
  msgid "The settings are saved!"
865
  msgstr ""
866
 
867
+ #: includes/core/permalink-manager-actions.php:194
868
+ #, php-format
869
+ msgid "%d Custom URIs and %d Custom Redirects were removed!"
870
+ msgstr ""
871
+
872
+ #: includes/core/permalink-manager-actions.php:196
873
+ msgid "No Custom URIs or Custom Redirects were removed!"
874
+ msgstr ""
875
+
876
+ #: includes/core/permalink-manager-actions.php:304
877
+ #, php-format
878
+ msgid "URI \"%s\" was removed successfully!"
879
+ msgstr ""
880
+
881
+ #: includes/core/permalink-manager-actions.php:313
882
+ msgid "Broken redirects were removed successfully!"
883
+ msgstr ""
884
+
885
+ #: includes/core/permalink-manager-actions.php:318
886
+ msgid "URI and/or custom redirects does not exist or were already removed!"
887
+ msgstr ""
888
+
889
+ #: includes/core/permalink-manager-actions.php:332
890
+ msgid "The redirect was removed successfully!"
891
+ msgstr ""
892
+
893
+ #: includes/core/permalink-manager-actions.php:381
894
+ msgid "Sitemaps were updated!"
895
+ msgstr ""
896
+
897
+ #. Name of the plugin
898
+ #: includes/core/permalink-manager-admin-functions.php:83
899
+ #: includes/core/permalink-manager-admin-functions.php:83
900
+ #: includes/core/permalink-manager-admin-functions.php:557
901
+ #: includes/core/permalink-manager-admin-functions.php:602
902
+ #: includes/core/permalink-manager-admin-functions.php:607
903
+ #: includes/core/permalink-manager-admin-functions.php:608
904
+ msgid "Permalink Manager"
905
+ msgstr ""
906
+
907
+ #: includes/core/permalink-manager-admin-functions.php:119
908
  msgid "URI Editor"
909
  msgstr ""
910
 
911
+ #: includes/core/permalink-manager-admin-functions.php:121
 
912
  msgid "Buy Permalink Manager Pro"
913
  msgstr ""
914
 
915
+ #: includes/core/permalink-manager-admin-functions.php:198
916
  msgid "Select all"
917
  msgstr ""
918
 
919
+ #: includes/core/permalink-manager-admin-functions.php:199
920
  msgid "Unselect all"
921
  msgstr ""
922
 
923
+ #: includes/core/permalink-manager-admin-functions.php:407
924
  msgid "Donate"
925
  msgstr ""
926
 
927
+ #: includes/core/permalink-manager-admin-functions.php:408
928
  msgid "by Maciej Bis"
929
  msgstr ""
930
 
931
+ #: includes/core/permalink-manager-admin-functions.php:487
932
  #, php-format
933
  msgid ""
934
  "This functionality is available only in <a href=\"%s\" target=\"_blank\">"
935
  "Permalink Manager Pro</a>."
936
  msgstr ""
937
 
938
+ #: includes/core/permalink-manager-admin-functions.php:508
939
+ #: includes/core/permalink-manager-admin-functions.php:534
940
  msgid "Title"
941
  msgstr ""
942
 
943
+ #: includes/core/permalink-manager-admin-functions.php:509
944
+ #: includes/core/permalink-manager-admin-functions.php:535
945
  msgid "Old URI"
946
  msgstr ""
947
 
948
+ #: includes/core/permalink-manager-admin-functions.php:510
949
+ #: includes/core/permalink-manager-admin-functions.php:536
950
  msgid "New URI"
951
  msgstr ""
952
 
953
+ #: includes/core/permalink-manager-admin-functions.php:511
954
+ #: includes/core/permalink-manager-admin-functions.php:537
955
  msgid "Old Slug"
956
  msgstr ""
957
 
958
+ #: includes/core/permalink-manager-admin-functions.php:512
959
+ #: includes/core/permalink-manager-admin-functions.php:538
960
  msgid "New Slug"
961
  msgstr ""
962
 
963
+ #: includes/core/permalink-manager-admin-functions.php:534
964
  msgid "Show more details"
965
  msgstr ""
966
 
967
+ #: includes/core/permalink-manager-admin-functions.php:543
968
  msgid "List of updated items"
969
  msgstr ""
970
 
971
+ #: includes/core/permalink-manager-admin-functions.php:587
972
+ #: includes/core/permalink-manager-admin-functions.php:591
973
+ msgid "Yes"
974
+ msgstr ""
975
+
976
+ #: includes/core/permalink-manager-admin-functions.php:587
977
+ #: includes/core/permalink-manager-admin-functions.php:590
978
+ msgid "No"
979
+ msgstr ""
980
+
981
+ #: includes/core/permalink-manager-admin-functions.php:589
982
+ #, php-format
983
+ msgid "Use global settings [%s]"
984
+ msgstr ""
985
+
986
+ #: includes/core/permalink-manager-admin-functions.php:607
987
+ msgid "Close: "
988
+ msgstr ""
989
+
990
+ #: includes/core/permalink-manager-admin-functions.php:616
991
+ msgid "The custom URI cannot be edited on frontpage."
992
+ msgstr ""
993
+
994
+ #: includes/core/permalink-manager-admin-functions.php:623
995
+ msgid ""
996
+ "The custom URI can be edited only if 'Auto-update the URI' feature is not "
997
+ "enabled."
998
+ msgstr ""
999
+
1000
+ #: includes/core/permalink-manager-admin-functions.php:632
1001
+ msgid "Auto-update the URI"
1002
+ msgstr ""
1003
+
1004
+ #: includes/core/permalink-manager-admin-functions.php:633
1005
+ msgid ""
1006
+ "If enabled, the 'Current URI' field will be automatically changed to "
1007
+ "'Default URI' (displayed below) after the post is saved or updated."
1008
+ msgstr ""
1009
+
1010
+ #: includes/core/permalink-manager-admin-functions.php:641
1011
+ msgid "Default URI"
1012
+ msgstr ""
1013
+
1014
+ #: includes/core/permalink-manager-admin-functions.php:642
1015
+ msgid "Restore to Default URI"
1016
+ msgstr ""
1017
+
1018
+ #: includes/core/permalink-manager-admin-functions.php:649
1019
+ msgid "Automatic redirect for native URI enabled:"
1020
+ msgstr ""
1021
+
1022
+ #: includes/core/permalink-manager-admin-functions.php:678
1023
+ msgid "Add Extra Redirects"
1024
+ msgstr ""
1025
+
1026
+ #: includes/core/permalink-manager-admin-functions.php:758
1027
+ msgid "URI is already in use, please select another one!"
1028
+ msgstr ""
1029
+
1030
+ #. Name of the plugin
1031
+ msgid "Permalink Manager Pro"
1032
+ msgstr ""
1033
+
1034
  #. Description of the plugin
1035
  msgid ""
1036
+ "Advanced plugin that allows to set-up custom permalinks (bulk editors "
1037
+ "included), slugs and permastructures (WooCommerce compatible)."
 
1038
  msgstr ""
1039
 
1040
  #. URI of the plugin
permalink-manager.php CHANGED
@@ -4,7 +4,7 @@
4
  * Plugin Name: Permalink Manager Lite
5
  * Plugin URI: https://permalinkmanager.pro?utm_source=plugin
6
  * Description: Advanced plugin that allows to set-up custom permalinks (bulk editors included), slugs and permastructures (WooCommerce compatible).
7
- * Version: 2.0.5.7
8
  * Author: Maciej Bis
9
  * Author URI: http://maciejbis.net/
10
  * License: GPL-2.0+
@@ -21,7 +21,7 @@ if (!defined('WPINC')) {
21
  // Define the directories used to load plugin files.
22
  define( 'PERMALINK_MANAGER_PLUGIN_NAME', 'Permalink Manager' );
23
  define( 'PERMALINK_MANAGER_PLUGIN_SLUG', 'permalink-manager' );
24
- define( 'PERMALINK_MANAGER_VERSION', '2.0.5.7' );
25
  define( 'PERMALINK_MANAGER_FILE', __FILE__ );
26
  define( 'PERMALINK_MANAGER_DIR', untrailingslashit( dirname( __FILE__ ) ) );
27
  define( 'PERMALINK_MANAGER_BASENAME', plugin_basename(__FILE__) );
@@ -110,7 +110,7 @@ class Permalink_Manager_Class {
110
  * Localize this plugin
111
  */
112
  function localize_me() {
113
- load_plugin_textdomain( 'permalink-manager', false, PERMALINK_MANAGER_DIR );
114
  }
115
 
116
  /**
@@ -178,15 +178,18 @@ class Permalink_Manager_Class {
178
  */
179
  public function default_alerts($alerts) {
180
  $default_alerts = apply_filters('permalink-manager-default-alerts', array(
181
- 'october' => array(
182
  'txt' => sprintf(
183
- __("Get access to extra features: full taxonomy and WooCommerce support, possibility to use custom fields inside the permalinks and more!<br /><strong>Buy Permalink Manager Pro <a href=\"%s\" target=\"_blank\">here</a> and save 20&#37; using \"OCTOBER\" coupon code!</strong> Valid until 31.10!", "permalink-manager"),
184
- PERMALINK_MANAGER_WEBSITE
 
 
 
185
  ),
186
  'type' => 'notice-info',
187
  'show' => 'pro_hide',
188
  'plugin_only' => true,
189
- 'until' => '2017-10-31'
190
  )
191
  ));
192
 
4
  * Plugin Name: Permalink Manager Lite
5
  * Plugin URI: https://permalinkmanager.pro?utm_source=plugin
6
  * Description: Advanced plugin that allows to set-up custom permalinks (bulk editors included), slugs and permastructures (WooCommerce compatible).
7
+ * Version: 2.0.5.8
8
  * Author: Maciej Bis
9
  * Author URI: http://maciejbis.net/
10
  * License: GPL-2.0+
21
  // Define the directories used to load plugin files.
22
  define( 'PERMALINK_MANAGER_PLUGIN_NAME', 'Permalink Manager' );
23
  define( 'PERMALINK_MANAGER_PLUGIN_SLUG', 'permalink-manager' );
24
+ define( 'PERMALINK_MANAGER_VERSION', '2.0.5.8' );
25
  define( 'PERMALINK_MANAGER_FILE', __FILE__ );
26
  define( 'PERMALINK_MANAGER_DIR', untrailingslashit( dirname( __FILE__ ) ) );
27
  define( 'PERMALINK_MANAGER_BASENAME', plugin_basename(__FILE__) );
110
  * Localize this plugin
111
  */
112
  function localize_me() {
113
+ load_plugin_textdomain( 'permalink-manager', false, PERMALINK_MANAGER_DIR . "/languages" );
114
  }
115
 
116
  /**
178
  */
179
  public function default_alerts($alerts) {
180
  $default_alerts = apply_filters('permalink-manager-default-alerts', array(
181
+ 'spring' => array(
182
  'txt' => sprintf(
183
+ __("Get access to extra features: full taxonomy and WooCommerce support, possibility to use custom fields inside the permalinks and more!<br /><strong>Buy Permalink Manager Pro <a href=\"%s\" target=\"_blank\">here</a> and save %s using \"%s\" coupon code!</strong> Valid until %s!", "permalink-manager"),
184
+ PERMALINK_MANAGER_WEBSITE,
185
+ '20&#37;',
186
+ 'SPRING',
187
+ '31.03'
188
  ),
189
  'type' => 'notice-info',
190
  'show' => 'pro_hide',
191
  'plugin_only' => true,
192
+ 'until' => '2018-04-01'
193
  )
194
  ));
195