Permalink Manager Lite - Version 2.2.12

Version Description

(June 29, 2021) = * Dev - New filters added - 'permalink_manager_excluded_post_ids' & 'permalink_manager_excluded_term_ids' * Dev - Additional minor changes in the codebase * Fix - Canonical permalinks for blog pagination is now correctly filtered (if Yoast SEO is used)

Download this release

Release Info

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

Code changes from version 2.2.11 to 2.2.12

README.txt CHANGED
@@ -7,7 +7,7 @@ Tags: permalinks, custom permalinks, url editor, permalinks, woocommerce permali
7
  Requires at least: 4.4.0
8
  Requires PHP: 5.4
9
  Tested up to: 5.8
10
- Stable tag: 2.2.11
11
 
12
  Permalink Manager allows to easily change full URL addresses of posts, pages, custom post types, terms and WooCommerce links. You can also set different permalink formats per language or bulk change the URLs.
13
 
@@ -103,6 +103,11 @@ It is because Permalink Manager overwrites one of the core Wordpress functionali
103
 
104
  == Changelog ==
105
 
 
 
 
 
 
106
  = 2.2.11 (June 24, 2021) =
107
  * Fix - The function that automatically removes the broken URIs is no longer triggered when WP Rocket is turned on and non-logged-in user tries to access the broken URL.
108
 
7
  Requires at least: 4.4.0
8
  Requires PHP: 5.4
9
  Tested up to: 5.8
10
+ Stable tag: 2.2.12
11
 
12
  Permalink Manager allows to easily change full URL addresses of posts, pages, custom post types, terms and WooCommerce links. You can also set different permalink formats per language or bulk change the URLs.
13
 
103
 
104
  == Changelog ==
105
 
106
+ = 2.2.12 (June 29, 2021) =
107
+ * Dev - New filters added - 'permalink_manager_excluded_post_ids' & 'permalink_manager_excluded_term_ids'
108
+ * Dev - Additional minor changes in the codebase
109
+ * Fix - Canonical permalinks for blog pagination is now correctly filtered (if Yoast SEO is used)
110
+
111
  = 2.2.11 (June 24, 2021) =
112
  * Fix - The function that automatically removes the broken URIs is no longer triggered when WP Rocket is turned on and non-logged-in user tries to access the broken URL.
113
 
includes/core/permalink-manager-actions.php CHANGED
@@ -467,12 +467,12 @@ class Permalink_Manager_Actions extends Permalink_Manager_Class {
467
  $taxonomy = $wpdb->get_var($wpdb->prepare("SELECT t.taxonomy FROM $wpdb->term_taxonomy AS t WHERE t.term_id = %s LIMIT 1", $term_id));
468
 
469
  // Remove custom URIs for removed terms or disabled taxonomies
470
- $remove = (!empty($taxonomy)) ? Permalink_Manager_Helper_Functions::is_disabled($taxonomy, 'taxonomy', $check_if_exists) : true;
471
  } else if(is_numeric($element_id)) {
472
  $post_type = $wpdb->get_var("SELECT post_type FROM {$wpdb->prefix}posts WHERE ID = {$element_id} AND post_status NOT IN ('auto-draft', 'trash') AND post_type != 'nav_menu_item'");
473
 
474
  // Remove custom URIs for removed, auto-draft posts or disabled post types
475
- $remove = (!empty($post_type)) ? Permalink_Manager_Helper_Functions::is_disabled($post_type, 'post_type', $check_if_exists) : true;
476
 
477
  // Remove custom URIs for attachments redirected with Yoast's SEO Premium
478
  $yoast_permalink_options = (class_exists('WPSEO_Premium')) ? get_option('wpseo_permalinks') : array();
467
  $taxonomy = $wpdb->get_var($wpdb->prepare("SELECT t.taxonomy FROM $wpdb->term_taxonomy AS t WHERE t.term_id = %s LIMIT 1", $term_id));
468
 
469
  // Remove custom URIs for removed terms or disabled taxonomies
470
+ $remove = (!empty($taxonomy)) ? Permalink_Manager_Helper_Functions::is_taxonomy_disabled($taxonomy, $check_if_exists) : true;
471
  } else if(is_numeric($element_id)) {
472
  $post_type = $wpdb->get_var("SELECT post_type FROM {$wpdb->prefix}posts WHERE ID = {$element_id} AND post_status NOT IN ('auto-draft', 'trash') AND post_type != 'nav_menu_item'");
473
 
474
  // Remove custom URIs for removed, auto-draft posts or disabled post types
475
+ $remove = (!empty($post_type)) ? Permalink_Manager_Helper_Functions::is_post_type_disabled($post_type, $check_if_exists) : true;
476
 
477
  // Remove custom URIs for attachments redirected with Yoast's SEO Premium
478
  $yoast_permalink_options = (class_exists('WPSEO_Premium')) ? get_option('wpseo_permalinks') : array();
includes/core/permalink-manager-core-functions.php CHANGED
@@ -225,8 +225,8 @@ class Permalink_Manager_Core_Functions extends Permalink_Manager_Class {
225
  $term = get_term($term_id);
226
  $term_taxonomy = (!empty($term->taxonomy)) ? $term->taxonomy : false;
227
 
228
- // Check if taxonomy is allowed
229
- $disabled = ($term_taxonomy && Permalink_Manager_Helper_Functions::is_disabled($term_taxonomy, 'taxonomy')) ? true : false;
230
 
231
  // Proceed only if the term is not removed and its taxonomy is not disabled
232
  if(!$disabled && $term_taxonomy) {
@@ -281,8 +281,8 @@ class Permalink_Manager_Core_Functions extends Permalink_Manager_Class {
281
  $final_uri = (!empty($post_to_load->post_name)) ? $post_to_load->post_name : false;
282
  $post_type = (!empty($post_to_load->post_type)) ? $post_to_load->post_type : false;
283
 
284
- // Check if post type is allowed
285
- $disabled = ($post_type && Permalink_Manager_Helper_Functions::is_disabled($post_type, 'post_type')) ? true : false;
286
 
287
  // Proceed only if the term is not removed and its taxonomy is not disabled
288
  if(!$disabled && $post_type) {
@@ -345,9 +345,9 @@ class Permalink_Manager_Core_Functions extends Permalink_Manager_Class {
345
  */
346
  if(!empty($broken_uri) && (!empty($permalink_manager_options['general']['auto_fix_duplicates'])) && $permalink_manager_options['general']['auto_fix_duplicates'] == 1) {
347
  // Do not trigger if WP Rocket cache plugin is turned on
348
- if(!defined('WP_ROCKET_VERSION')) {
349
  $broken_element_id = (!empty($revision_id)) ? $revision_id : $element_id;
350
- $remove_broken_uri = Permalink_Manager_Actions::force_clear_single_element_uris_and_redirects($broken_element_id);
351
 
352
  // Reload page if success
353
  if($remove_broken_uri && !headers_sent()) {
@@ -425,7 +425,7 @@ class Permalink_Manager_Core_Functions extends Permalink_Manager_Class {
425
  /**
426
  * 7. Debug data
427
  */
428
- if(!empty($taxonomy)) {
429
  $content_type = "Taxonomy: {$term_taxonomy}";
430
  } else if(!empty($post_type)) {
431
  $content_type = "Post type: {$post_type}";
@@ -646,24 +646,23 @@ class Permalink_Manager_Core_Functions extends Permalink_Manager_Class {
646
  * 1D. Enhance native redirect
647
  */
648
  if($canonical_redirect && empty($wp_query->query_vars['do_not_redirect']) && !empty($queried_object) && empty($correct_permalink)) {
649
-
650
  // Affect only posts with custom URI and old URIs
651
  if(!empty($queried_object->ID) && isset($permalink_manager_uris[$queried_object->ID]) && empty($wp_query->query['preview'])) {
652
  // Ignore posts with specific statuses
653
  if(!(empty($queried_object->post_status)) && in_array($queried_object->post_status, array('draft', 'pending', 'auto-draft', 'future'))) {
654
- return '';
655
  }
656
 
657
- // Check if post type is allowed
658
- if(Permalink_Manager_Helper_Functions::is_disabled($queried_object->post_type, 'post_type')) { return ''; }
659
 
660
  // Get the real URL
661
  $correct_permalink = get_permalink($queried_object->ID);
662
  }
663
  // Affect only terms with custom URI and old URIs
664
  else if(!empty($queried_object->term_id) && isset($permalink_manager_uris["tax-{$queried_object->term_id}"]) && defined('PERMALINK_MANAGER_PRO')) {
665
- // Check if taxonomy is allowed
666
- if(Permalink_Manager_Helper_Functions::is_disabled($queried_object->taxonomy, "taxonomy")) { return ''; }
667
 
668
  // Get the real URL
669
  $correct_permalink = get_term_link($queried_object->term_id, $queried_object->taxonomy);
225
  $term = get_term($term_id);
226
  $term_taxonomy = (!empty($term->taxonomy)) ? $term->taxonomy : false;
227
 
228
+ // Check if term is allowed
229
+ $disabled = ($term_taxonomy && Permalink_Manager_Helper_Functions::is_term_excluded($term)) ? true : false;
230
 
231
  // Proceed only if the term is not removed and its taxonomy is not disabled
232
  if(!$disabled && $term_taxonomy) {
281
  $final_uri = (!empty($post_to_load->post_name)) ? $post_to_load->post_name : false;
282
  $post_type = (!empty($post_to_load->post_type)) ? $post_to_load->post_type : false;
283
 
284
+ // Check if post is allowed
285
+ $disabled = ($post_type && Permalink_Manager_Helper_Functions::is_post_excluded($post_to_load)) ? true : false;
286
 
287
  // Proceed only if the term is not removed and its taxonomy is not disabled
288
  if(!$disabled && $post_type) {
345
  */
346
  if(!empty($broken_uri) && (!empty($permalink_manager_options['general']['auto_fix_duplicates'])) && $permalink_manager_options['general']['auto_fix_duplicates'] == 1) {
347
  // Do not trigger if WP Rocket cache plugin is turned on
348
+ if(!defined('WP_ROCKET_VERSION') && is_array($permalink_manager_uris)) {
349
  $broken_element_id = (!empty($revision_id)) ? $revision_id : $element_id;
350
+ $remove_broken_uri = (!empty($broken_element_id)) ? Permalink_Manager_Actions::force_clear_single_element_uris_and_redirects($broken_element_id) : '';
351
 
352
  // Reload page if success
353
  if($remove_broken_uri && !headers_sent()) {
425
  /**
426
  * 7. Debug data
427
  */
428
+ if(!empty($term_taxonomy)) {
429
  $content_type = "Taxonomy: {$term_taxonomy}";
430
  } else if(!empty($post_type)) {
431
  $content_type = "Post type: {$post_type}";
646
  * 1D. Enhance native redirect
647
  */
648
  if($canonical_redirect && empty($wp_query->query_vars['do_not_redirect']) && !empty($queried_object) && empty($correct_permalink)) {
 
649
  // Affect only posts with custom URI and old URIs
650
  if(!empty($queried_object->ID) && isset($permalink_manager_uris[$queried_object->ID]) && empty($wp_query->query['preview'])) {
651
  // Ignore posts with specific statuses
652
  if(!(empty($queried_object->post_status)) && in_array($queried_object->post_status, array('draft', 'pending', 'auto-draft', 'future'))) {
653
+ return;
654
  }
655
 
656
+ // Check if the post is excluded
657
+ if(Permalink_Manager_Helper_Functions::is_post_excluded($queried_object)) { return; }
658
 
659
  // Get the real URL
660
  $correct_permalink = get_permalink($queried_object->ID);
661
  }
662
  // Affect only terms with custom URI and old URIs
663
  else if(!empty($queried_object->term_id) && isset($permalink_manager_uris["tax-{$queried_object->term_id}"]) && defined('PERMALINK_MANAGER_PRO')) {
664
+ // Check if the term is excluded
665
+ if(Permalink_Manager_Helper_Functions::is_term_excluded($queried_object)) { return; }
666
 
667
  // Get the real URL
668
  $correct_permalink = get_term_link($queried_object->term_id, $queried_object->taxonomy);
includes/core/permalink-manager-gutenberg.php CHANGED
@@ -13,18 +13,22 @@ class Permalink_Manager_Gutenberg extends Permalink_Manager_Class {
13
  }
14
 
15
  public function init() {
16
- global $current_screen;
17
 
18
  // Get displayed post type
19
  if(empty($current_screen->post_type)) { return; }
20
  $post_type = $current_screen->post_type;
21
 
22
- // Check if post type is disabled
23
- if(Permalink_Manager_Helper_Functions::is_disabled($post_type, 'post_type')) { return; }
24
-
25
  // Stop the hook (if needed)
26
- $show_uri_editor = apply_filters("permalink_manager_hide_uri_editor_post_{$post_type}", true);
27
- if(!$show_uri_editor) { return; }
 
 
 
 
 
 
 
28
 
29
  add_meta_box('permalink-manager', __('Permalink Manager', 'permalink-manager'), array($this, 'get_uri_editor'), '', 'side', 'high' );
30
  // wp_enqueue_script('permalink-manager-gutenberg', PERMALINK_MANAGER_URL . '/out/permalink-manager-gutenberg.js', array('wp-plugins', 'wp-edit-post', 'wp-i18n', 'wp-element'));
13
  }
14
 
15
  public function init() {
16
+ global $current_screen, $post;
17
 
18
  // Get displayed post type
19
  if(empty($current_screen->post_type)) { return; }
20
  $post_type = $current_screen->post_type;
21
 
 
 
 
22
  // Stop the hook (if needed)
23
+ $show_uri_editor = apply_filters("permalink_manager_show_uri_editor_post_{$post->post_type}", true, $post);
24
+ if(!$show_uri_editor) {
25
+ return;
26
+ }
27
+
28
+ // Check if the post is excluded
29
+ if(!empty($post->ID) && Permalink_Manager_Helper_Functions::is_post_excluded($post)) {
30
+ return;
31
+ }
32
 
33
  add_meta_box('permalink-manager', __('Permalink Manager', 'permalink-manager'), array($this, 'get_uri_editor'), '', 'side', 'high' );
34
  // wp_enqueue_script('permalink-manager-gutenberg', PERMALINK_MANAGER_URL . '/out/permalink-manager-gutenberg.js', array('wp-plugins', 'wp-edit-post', 'wp-i18n', 'wp-element'));
includes/core/permalink-manager-helper-functions.php CHANGED
@@ -225,22 +225,70 @@ class Permalink_Manager_Helper_Functions extends Permalink_Manager_Class {
225
  return apply_filters('permalink_manager_disabled_taxonomies', $disabled_taxonomies);
226
  }
227
 
228
- static public function is_disabled($content_name, $content_type = 'post_type', $check_if_exists = true) {
229
- $out = false;
 
 
 
 
 
230
 
231
- if($content_type == 'post_type') {
232
- $disabled_post_types = self::get_disabled_post_types();
233
- $post_type_exists = ($check_if_exists) ? post_type_exists($content_name) : true;
234
- $out = ((is_array($disabled_post_types) && in_array($content_name, $disabled_post_types)) || empty($post_type_exists)) ? true : false;
235
- } else {
236
- $disabled_taxonomies = self::get_disabled_taxonomies();
237
- $taxonomy_exists = ($check_if_exists) ? taxonomy_exists($content_name) : true;
238
- $out = ((is_array($disabled_taxonomies) && in_array($content_name, $disabled_taxonomies)) || empty($taxonomy_exists)) ? true : false;
239
- }
 
240
 
241
  return $out;
242
  }
243
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
244
  /**
245
  * Get all post types supported by Permalink Manager
246
  */
225
  return apply_filters('permalink_manager_disabled_taxonomies', $disabled_taxonomies);
226
  }
227
 
228
+ /**
229
+ * Check if post type should be ignored by Permalink Manager
230
+ */
231
+ static public function is_post_type_disabled($post_type, $check_if_exists = true) {
232
+ $disabled_post_types = self::get_disabled_post_types();
233
+ $post_type_exists = ($check_if_exists) ? post_type_exists($post_type) : true;
234
+ $out = ((is_array($disabled_post_types) && in_array($post_type, $disabled_post_types)) || empty($post_type_exists)) ? true : false;
235
 
236
+ return $out;
237
+ }
238
+
239
+ /**
240
+ * Check if taxonomy should be ignored by Permalink Manager
241
+ */
242
+ static public function is_taxonomy_disabled($taxonomy, $check_if_exists = true) {
243
+ $disabled_taxonomies = self::get_disabled_taxonomies();
244
+ $taxonomy_exists = ($check_if_exists) ? taxonomy_exists($taxonomy) : true;
245
+ $out = ((is_array($disabled_taxonomies) && in_array($taxonomy, $disabled_taxonomies)) || empty($taxonomy_exists)) ? true : false;
246
 
247
  return $out;
248
  }
249
 
250
+ /**
251
+ * Check if single post should be ignored by Permalink Manager
252
+ */
253
+ public static function is_post_excluded($post = null) {
254
+ $post = (is_integer($post)) ? get_post($post) : $post;
255
+
256
+ // A. Check if post type is disabled
257
+ if(!empty($post->post_type) && self::is_post_type_disabled($post->post_type)) {
258
+ return true;
259
+ }
260
+
261
+ $excluded_post_ids = apply_filters('permalink_manager_excluded_post_ids', array());
262
+
263
+ // B. Check if post ID is excluded
264
+ if(is_array($excluded_post_ids) && !empty($post->ID) && in_array($post->ID, $excluded_post_ids)) {
265
+ return true;
266
+ }
267
+
268
+ return false;
269
+ }
270
+
271
+ /**
272
+ * Check if single term should be ignored by Permalink Manager
273
+ */
274
+ public static function is_term_excluded($term = null) {
275
+ $term = (is_numeric($term)) ? get_term($term) : $term;
276
+
277
+ // A. Check if post type is disabled
278
+ if(!empty($term->taxonomy) && self::is_taxonomy_disabled($term->taxonomy)) {
279
+ return true;
280
+ }
281
+
282
+ $excluded_term_ids = apply_filters('permalink_manager_excluded_term_ids', array());
283
+
284
+ // B. Check if post ID is excluded
285
+ if(is_array($excluded_term_ids) && !empty($term->term_id) && in_array($term->term_id, $excluded_term_ids)) {
286
+ return true;
287
+ }
288
+
289
+ return false;
290
+ }
291
+
292
  /**
293
  * Get all post types supported by Permalink Manager
294
  */
includes/core/permalink-manager-third-parties.php CHANGED
@@ -576,9 +576,12 @@ class Permalink_Manager_Third_Parties extends Permalink_Manager_Class {
576
  $yoast_canonical_url = get_post_meta($element->ID, '_yoast_wpseo_canonical', true);
577
  if(!empty($yoast_canonical_url)) { return $url; }
578
 
579
- $paged = (get_query_var('page')) ? get_query_var('page') : 1;
580
- if($paged > 1) {
581
- $new_url = sprintf('%s/%d', trim($new_url, '/'), $paged);
 
 
 
582
  }
583
  } else if(!empty($element->taxonomy) && !empty($element->term_id)) {
584
  $new_url = get_term_link($element, $element->taxonomy);
@@ -627,7 +630,7 @@ class Permalink_Manager_Third_Parties extends Permalink_Manager_Class {
627
  $custom_uri = trim(preg_replace("/([^\/]+)$/", '', $wp->request), "/");
628
  }
629
 
630
- $all_uris = array_flip($permalink_manager_uris);
631
  $custom_uri_parts = explode('/', trim($custom_uri));
632
  $breadcrumbs = array();
633
  $snowball = '';
@@ -794,7 +797,7 @@ class Permalink_Manager_Third_Parties extends Permalink_Manager_Class {
794
  */
795
  function wpaiextra_uri_display($content_type, $current_values) {
796
  // Check if post type is supported
797
- if($content_type !== 'taxonomies' && Permalink_Manager_Helper_Functions::is_disabled($content_type)) {
798
  return;
799
  }
800
 
@@ -885,7 +888,7 @@ class Permalink_Manager_Third_Parties extends Permalink_Manager_Class {
885
  // Check if the imported elements are terms
886
  if($importData['post_type'] == 'taxonomies') {
887
  $is_term = true;
888
- } else if(Permalink_Manager_Helper_Functions::is_disabled($importData['post_type'], 'post_type')) {
889
  return;
890
  }
891
 
@@ -1010,7 +1013,7 @@ class Permalink_Manager_Third_Parties extends Permalink_Manager_Class {
1010
  global $permalink_manager_uris;
1011
 
1012
  // Use only for "listing" post type & custom permalink
1013
- if(empty($element->post_type) || $element->post_type !== 'job_listing' || $native_uri) { return $default_uri; }
1014
 
1015
  // A1. Listing type
1016
  if(strpos($default_uri, '%listing-type%') !== false || strpos($default_uri, '%listing_type%') !== false) {
576
  $yoast_canonical_url = get_post_meta($element->ID, '_yoast_wpseo_canonical', true);
577
  if(!empty($yoast_canonical_url)) { return $url; }
578
 
579
+ if(is_home()) {
580
+ $paged = (get_query_var('paged')) ? get_query_var('paged') : 1;
581
+ $new_url = ($paged > 1) ? sprintf('%s/%s/%d', trim($new_url, '/'), $wp_rewrite->pagination_base, $paged) : $new_url;
582
+ } else {
583
+ $paged = (get_query_var('page')) ? get_query_var('page') : 1;
584
+ $new_url = ($paged > 1) ? sprintf('%s/%d', trim($new_url, '/'), $paged) : $new_url;
585
  }
586
  } else if(!empty($element->taxonomy) && !empty($element->term_id)) {
587
  $new_url = get_term_link($element, $element->taxonomy);
630
  $custom_uri = trim(preg_replace("/([^\/]+)$/", '', $wp->request), "/");
631
  }
632
 
633
+ $all_uris = array_flip($permalink_manager_uris);
634
  $custom_uri_parts = explode('/', trim($custom_uri));
635
  $breadcrumbs = array();
636
  $snowball = '';
797
  */
798
  function wpaiextra_uri_display($content_type, $current_values) {
799
  // Check if post type is supported
800
+ if($content_type !== 'taxonomies' && Permalink_Manager_Helper_Functions::is_post_type_disabled($content_type)) {
801
  return;
802
  }
803
 
888
  // Check if the imported elements are terms
889
  if($importData['post_type'] == 'taxonomies') {
890
  $is_term = true;
891
+ } else if(Permalink_Manager_Helper_Functions::is_post_type_disabled($importData['post_type'])) {
892
  return;
893
  }
894
 
1013
  global $permalink_manager_uris;
1014
 
1015
  // Use only for "listing" post type & custom permalink
1016
+ if(empty($element->post_type) || $element->post_type !== 'job_listing') { return $default_uri; }
1017
 
1018
  // A1. Listing type
1019
  if(strpos($default_uri, '%listing-type%') !== false || strpos($default_uri, '%listing_type%') !== false) {
includes/core/permalink-manager-uri-functions-post.php CHANGED
@@ -51,7 +51,7 @@ class Permalink_Manager_URI_Functions_Post extends Permalink_Manager_Class {
51
  * Change permalinks for posts, pages & custom post types
52
  */
53
  static function custom_post_permalinks($permalink, $post) {
54
- global $wp_rewrite, $permalink_manager_uris, $permalink_manager_options;
55
 
56
  // Do not filter permalinks in Customizer
57
  if((function_exists('is_customize_preview') && is_customize_preview()) || !empty($_REQUEST['customize_url'])) { return $permalink; }
@@ -65,18 +65,19 @@ class Permalink_Manager_URI_Functions_Post extends Permalink_Manager_Class {
65
  // Do not run when metaboxes are loaded with Gutenberg
66
  if(!empty($_REQUEST['meta-box-loader']) && empty($_POST['custom_uri'])) { return $permalink; }
67
 
 
 
 
68
  $post = (is_integer($post)) ? get_post($post) : $post;
69
 
70
  // Do not run if post object is invalid
71
- if(empty($post) || empty($post->ID) || empty($post->post_type)) {
72
- return $permalink;
73
- }
74
 
75
  // Start with homepage URL
76
  $home_url = Permalink_Manager_Helper_Functions::get_permalink_base($post);
77
 
78
- // 1. Check if post type is allowed
79
- if(!empty($post->post_type) && Permalink_Manager_Helper_Functions::is_disabled($post->post_type, 'post_type') && $post->post_type !== 'attachment') { return $permalink; }
80
 
81
  // 2A. Do not change permalink of frontpage
82
  if(Permalink_Manager_Helper_Functions::is_front_page($post->ID)) {
@@ -168,7 +169,7 @@ class Permalink_Manager_URI_Functions_Post extends Permalink_Manager_Class {
168
  $post_name = (empty($post->post_name)) ? Permalink_Manager_Helper_Functions::sanitize_title($post->post_title) : $post->post_name;
169
 
170
  // 1A. Check if post type is allowed
171
- if($check_if_disabled && Permalink_Manager_Helper_Functions::is_disabled($post_type, 'post_type')) { return ''; }
172
 
173
  // 1A. Get the native permastructure
174
  if($post_type == 'attachment') {
@@ -419,9 +420,12 @@ class Permalink_Manager_URI_Functions_Post extends Permalink_Manager_Class {
419
  }
420
 
421
  // Get excluded items
422
- $exclude_posts = $wpdb->get_col("SELECT post_ID FROM {$wpdb->postmeta} AS pm LEFT JOIN {$wpdb->posts} AS p ON (pm.post_ID = p.ID) WHERE pm.meta_key = 'auto_update_uri' AND pm.meta_value = '-2' AND post_type IN ('{$post_types}')");
423
- if(!empty($exclude_posts)) {
424
- $where .= sprintf(" AND ID NOT IN ('%s') ", implode("', '", $exclude_posts));
 
 
 
425
  }
426
 
427
  // Support for attachments
@@ -485,8 +489,10 @@ class Permalink_Manager_URI_Functions_Post extends Permalink_Manager_Class {
485
  }
486
 
487
  // Filter array before saving
488
- $permalink_manager_uris = array_filter($permalink_manager_uris);
489
- update_option('permalink-manager-uris', $permalink_manager_uris);
 
 
490
 
491
  $output = array('updated' => $updated_array, 'updated_count' => $updated_slugs_count);
492
  wp_reset_postdata();
@@ -550,8 +556,10 @@ class Permalink_Manager_URI_Functions_Post extends Permalink_Manager_Class {
550
  }
551
 
552
  // Filter array before saving
553
- $permalink_manager_uris = array_filter($permalink_manager_uris);
554
- update_option('permalink-manager-uris', $permalink_manager_uris);
 
 
555
 
556
  $output = array('updated' => $updated_array, 'updated_count' => $updated_slugs_count);
557
  wp_reset_postdata();
@@ -605,8 +613,10 @@ class Permalink_Manager_URI_Functions_Post extends Permalink_Manager_Class {
605
  }
606
 
607
  // Filter array before saving & append the global
608
- $permalink_manager_uris = array_filter($old_uris);
609
- update_option('permalink-manager-uris', $permalink_manager_uris);
 
 
610
 
611
  $output = array('updated' => $updated_array, 'updated_count' => $updated_slugs_count);
612
  }
@@ -623,14 +633,14 @@ class Permalink_Manager_URI_Functions_Post extends Permalink_Manager_Class {
623
  // Detect auto drafts
624
  $autosave = (!empty($new_title) && empty($new_slug)) ? true : false;
625
 
626
- // Check if post type is disabled
627
- if(Permalink_Manager_Helper_Functions::is_disabled($post->post_type, 'post_type')) { return $html; }
628
 
629
  // Ignore drafts
630
  if(!empty($permalink_manager_options["general"]["ignore_drafts"]) && !empty($post->post_status) && $post->post_status == 'draft') { return $html; }
631
 
632
  // Stop the hook (if needed)
633
- $show_uri_editor = apply_filters("permalink_manager_show_uri_editor_post_{$post->post_type}", true);
634
  if(!$show_uri_editor) { return $html; }
635
 
636
  $new_html = preg_replace("/^(<strong>(.*)<\/strong>)(.*)/is", "$1 ", $html);
@@ -685,7 +695,7 @@ class Permalink_Manager_URI_Functions_Post extends Permalink_Manager_Class {
685
  $post_type = (!empty($current_screen->post_type)) ? $current_screen->post_type : false;
686
 
687
  // Check if post type is disabled
688
- if($post_type && Permalink_Manager_Helper_Functions::is_disabled($post_type, 'post_type')) { return $columns; }
689
 
690
  return (is_array($columns)) ? array_merge($columns, array('permalink-manager-col' => __( 'Current URI', 'permalink-manager'))) : $columns;
691
  }
@@ -735,8 +745,8 @@ class Permalink_Manager_URI_Functions_Post extends Permalink_Manager_Class {
735
 
736
  $post_object = get_post($post_id);
737
 
738
- // Check if post type is allowed
739
- if(empty($post_object->post_type) || Permalink_Manager_Helper_Functions::is_disabled($post_object->post_type, 'post_type')) { return $post_id; };
740
 
741
  // Exclude drafts
742
  if(!empty($permalink_manager_options["general"]["ignore_drafts"]) && !empty($post_object->post_status) && $post_object->post_status == 'draft') { return $post_id; }
@@ -755,7 +765,9 @@ class Permalink_Manager_URI_Functions_Post extends Permalink_Manager_Class {
755
  $new_uri = self::get_default_post_uri($post_id);
756
  $permalink_manager_uris[$post_object->ID] = $new_uri;
757
 
758
- update_option('permalink-manager-uris', $permalink_manager_uris);
 
 
759
 
760
  do_action('permalink_manager_new_post_uri', $post_id, $new_uri, $native_uri);
761
  }
@@ -786,8 +798,8 @@ class Permalink_Manager_URI_Functions_Post extends Permalink_Manager_Class {
786
  $post_id = ($is_revision) ? $is_revision : $post_id;
787
  $post = get_post($post_id);
788
 
789
- // Check if post type is allowed
790
- if(empty($post->post_type) || Permalink_Manager_Helper_Functions::is_disabled($post->post_type, 'post_type') || $post->post_type == 'nav_menu_item') { return $post_id; };
791
 
792
  // Exclude drafts
793
  if(!empty($permalink_manager_options["general"]["ignore_drafts"]) && !empty($post->post_status) && $post->post_status == 'draft') { return $post_id; }
@@ -840,8 +852,10 @@ class Permalink_Manager_URI_Functions_Post extends Permalink_Manager_Class {
840
  }
841
 
842
  // Save only changed URIs
843
- $permalink_manager_uris[$post_id] = $new_uri;
844
- update_option('permalink-manager-uris', $permalink_manager_uris);
 
 
845
 
846
  do_action('permalink_manager_updated_post_uri', $post_id, $new_uri, $old_uri, $native_uri, $default_uri, $single_update = true);
847
  }
@@ -857,7 +871,9 @@ class Permalink_Manager_URI_Functions_Post extends Permalink_Manager_Class {
857
  unset($permalink_manager_uris[$post_id]);
858
  }
859
 
860
- update_option('permalink-manager-uris', $permalink_manager_uris);
 
 
861
  }
862
 
863
  }
51
  * Change permalinks for posts, pages & custom post types
52
  */
53
  static function custom_post_permalinks($permalink, $post) {
54
+ global $wp_rewrite, $permalink_manager_uris, $permalink_manager_options, $permalink_manager_ignore_permalink_filters;
55
 
56
  // Do not filter permalinks in Customizer
57
  if((function_exists('is_customize_preview') && is_customize_preview()) || !empty($_REQUEST['customize_url'])) { return $permalink; }
65
  // Do not run when metaboxes are loaded with Gutenberg
66
  if(!empty($_REQUEST['meta-box-loader']) && empty($_POST['custom_uri'])) { return $permalink; }
67
 
68
+ // Do not filter if $permalink_manager_ignore_permalink_filters global is set
69
+ if(!empty($permalink_manager_ignore_permalink_filters)) { return $permalink; }
70
+
71
  $post = (is_integer($post)) ? get_post($post) : $post;
72
 
73
  // Do not run if post object is invalid
74
+ if(empty($post) || empty($post->ID) || empty($post->post_type)) { return $permalink; }
 
 
75
 
76
  // Start with homepage URL
77
  $home_url = Permalink_Manager_Helper_Functions::get_permalink_base($post);
78
 
79
+ // Check if the post is excluded
80
+ if(!empty($post->post_type) && Permalink_Manager_Helper_Functions::is_post_excluded($post) && $post->post_type !== 'attachment') { return $permalink; }
81
 
82
  // 2A. Do not change permalink of frontpage
83
  if(Permalink_Manager_Helper_Functions::is_front_page($post->ID)) {
169
  $post_name = (empty($post->post_name)) ? Permalink_Manager_Helper_Functions::sanitize_title($post->post_title) : $post->post_name;
170
 
171
  // 1A. Check if post type is allowed
172
+ if($check_if_disabled && Permalink_Manager_Helper_Functions::is_post_type_disabled($post_type)) { return ''; }
173
 
174
  // 1A. Get the native permastructure
175
  if($post_type == 'attachment') {
420
  }
421
 
422
  // Get excluded items
423
+ $excluded_posts_ui = $wpdb->get_col("SELECT post_ID FROM {$wpdb->postmeta} AS pm LEFT JOIN {$wpdb->posts} AS p ON (pm.post_ID = p.ID) WHERE pm.meta_key = 'auto_update_uri' AND pm.meta_value = '-2' AND post_type IN ('{$post_types}')");
424
+ $excluded_posts_hook = (array) apply_filters('permalink_manager_excluded_post_ids', array());
425
+ $excluded_posts = array_merge($excluded_posts_ui, $excluded_posts_hook);
426
+
427
+ if(!empty($excluded_posts)) {
428
+ $where .= sprintf(" AND ID NOT IN ('%s') ", implode("', '", $excluded_posts));
429
  }
430
 
431
  // Support for attachments
489
  }
490
 
491
  // Filter array before saving
492
+ if(is_array($permalink_manager_uris)) {
493
+ $permalink_manager_uris = array_filter($permalink_manager_uris);
494
+ update_option('permalink-manager-uris', $permalink_manager_uris);
495
+ }
496
 
497
  $output = array('updated' => $updated_array, 'updated_count' => $updated_slugs_count);
498
  wp_reset_postdata();
556
  }
557
 
558
  // Filter array before saving
559
+ if(is_array($permalink_manager_uris)) {
560
+ $permalink_manager_uris = array_filter($permalink_manager_uris);
561
+ update_option('permalink-manager-uris', $permalink_manager_uris);
562
+ }
563
 
564
  $output = array('updated' => $updated_array, 'updated_count' => $updated_slugs_count);
565
  wp_reset_postdata();
613
  }
614
 
615
  // Filter array before saving & append the global
616
+ if(is_array($permalink_manager_uris)) {
617
+ $permalink_manager_uris = array_filter($old_uris);
618
+ update_option('permalink-manager-uris', $permalink_manager_uris);
619
+ }
620
 
621
  $output = array('updated' => $updated_array, 'updated_count' => $updated_slugs_count);
622
  }
633
  // Detect auto drafts
634
  $autosave = (!empty($new_title) && empty($new_slug)) ? true : false;
635
 
636
+ // Check if the post is excluded
637
+ if(empty($post->post_type) || Permalink_Manager_Helper_Functions::is_post_excluded($post)) { return $html; }
638
 
639
  // Ignore drafts
640
  if(!empty($permalink_manager_options["general"]["ignore_drafts"]) && !empty($post->post_status) && $post->post_status == 'draft') { return $html; }
641
 
642
  // Stop the hook (if needed)
643
+ $show_uri_editor = apply_filters("permalink_manager_show_uri_editor_post_{$post->post_type}", true, $post);
644
  if(!$show_uri_editor) { return $html; }
645
 
646
  $new_html = preg_replace("/^(<strong>(.*)<\/strong>)(.*)/is", "$1 ", $html);
695
  $post_type = (!empty($current_screen->post_type)) ? $current_screen->post_type : false;
696
 
697
  // Check if post type is disabled
698
+ if($post_type && Permalink_Manager_Helper_Functions::is_post_type_disabled($post_type)) { return $columns; }
699
 
700
  return (is_array($columns)) ? array_merge($columns, array('permalink-manager-col' => __( 'Current URI', 'permalink-manager'))) : $columns;
701
  }
745
 
746
  $post_object = get_post($post_id);
747
 
748
+ // Check if post is allowed
749
+ if(empty($post_object->post_type) || Permalink_Manager_Helper_Functions::is_post_excluded($post_object)) { return $post_id; }
750
 
751
  // Exclude drafts
752
  if(!empty($permalink_manager_options["general"]["ignore_drafts"]) && !empty($post_object->post_status) && $post_object->post_status == 'draft') { return $post_id; }
765
  $new_uri = self::get_default_post_uri($post_id);
766
  $permalink_manager_uris[$post_object->ID] = $new_uri;
767
 
768
+ if(is_array($permalink_manager_uris)) {
769
+ update_option('permalink-manager-uris', $permalink_manager_uris);
770
+ }
771
 
772
  do_action('permalink_manager_new_post_uri', $post_id, $new_uri, $native_uri);
773
  }
798
  $post_id = ($is_revision) ? $is_revision : $post_id;
799
  $post = get_post($post_id);
800
 
801
+ // Check if post is allowed
802
+ if(empty($post->post_type) || Permalink_Manager_Helper_Functions::is_post_excluded($post)) { return $post_id; }
803
 
804
  // Exclude drafts
805
  if(!empty($permalink_manager_options["general"]["ignore_drafts"]) && !empty($post->post_status) && $post->post_status == 'draft') { return $post_id; }
852
  }
853
 
854
  // Save only changed URIs
855
+ if(is_array($permalink_manager_uris)) {
856
+ $permalink_manager_uris[$post_id] = $new_uri;
857
+ update_option('permalink-manager-uris', $permalink_manager_uris);
858
+ }
859
 
860
  do_action('permalink_manager_updated_post_uri', $post_id, $new_uri, $old_uri, $native_uri, $default_uri, $single_update = true);
861
  }
871
  unset($permalink_manager_uris[$post_id]);
872
  }
873
 
874
+ if(is_array($permalink_manager_uris)) {
875
+ update_option('permalink-manager-uris', $permalink_manager_uris);
876
+ }
877
  }
878
 
879
  }
includes/views/permalink-manager-settings.php CHANGED
@@ -98,7 +98,7 @@ class Permalink_Manager_Settings extends Permalink_Manager_Class {
98
  'input_class' => '',
99
  'description' => sprintf('%s',
100
  __('<strong>Please enable this option if you would like to copy the endpoint from source URL to the target URL during the canonical redirect.</strong>', 'permalink-manager')
101
- ),
102
  ),*/
103
  'old_slug_redirect' => array(
104
  'type' => 'single_checkbox',
98
  'input_class' => '',
99
  'description' => sprintf('%s',
100
  __('<strong>Please enable this option if you would like to copy the endpoint from source URL to the target URL during the canonical redirect.</strong>', 'permalink-manager')
101
+ )
102
  ),*/
103
  'old_slug_redirect' => array(
104
  'type' => 'single_checkbox',
includes/views/permalink-manager-uri-editor-post.php CHANGED
@@ -252,6 +252,13 @@ class Permalink_Manager_URI_Editor_Post extends WP_List_Table {
252
  } else {
253
  $sql_parts['where'] = "WHERE ((post_status IN ($this->displayed_post_statuses) AND post_type IN ($this->displayed_post_types)) {$attachment_support}) {$extra_filters} ";
254
  }
 
 
 
 
 
 
 
255
  $sql_parts['end'] = "ORDER BY {$orderby} {$order}";
256
 
257
  // Prepare the SQL query
252
  } else {
253
  $sql_parts['where'] = "WHERE ((post_status IN ($this->displayed_post_statuses) AND post_type IN ($this->displayed_post_types)) {$attachment_support}) {$extra_filters} ";
254
  }
255
+
256
+ // Do not display excluded posts in Bulk URI Editor
257
+ $excluded_posts = (array) apply_filters('permalink_manager_excluded_post_ids', array());
258
+ if(!empty($excluded_posts)) {
259
+ $sql_parts['where'] .= sprintf("AND ID NOT IN ('%s') ", implode("', '", $excluded_posts));
260
+ }
261
+
262
  $sql_parts['end'] = "ORDER BY {$orderby} {$order}";
263
 
264
  // Prepare the SQL query
languages/permalink-manager-ja.mo CHANGED
Binary file
languages/permalink-manager-ja.po CHANGED
@@ -3,7 +3,7 @@ msgstr ""
3
  "Project-Id-Version: Permalink Manager Lite\n"
4
  "Report-Msgid-Bugs-To: \n"
5
  "POT-Creation-Date: 2020-11-23 20:44+0000\n"
6
- "PO-Revision-Date: 2021-06-07 10:22+0000\n"
7
  "Last-Translator: admin\n"
8
  "Language-Team: Japanese\n"
9
  "Language: ja\n"
@@ -196,7 +196,7 @@ msgstr "以下で指定された全てのURIは、訪問者を上記の「現在
196
  msgid "Apply"
197
  msgstr "適用"
198
 
199
- #: includes/core/permalink-manager-pro-functions.php:188
200
  msgid "Arabic"
201
  msgstr "アラビア語"
202
 
@@ -268,15 +268,11 @@ msgstr "by Maciej Bis"
268
  msgid "Canonical redirect"
269
  msgstr "正規リダイレクト"
270
 
271
- #: includes/views/permalink-manager-pro-addons.php:135
272
- msgid "Check the expiration date."
273
- msgstr "有効期限を確認する"
274
-
275
- #: includes/core/permalink-manager-pro-functions.php:189
276
  msgid "Chinese"
277
  msgstr "中国語"
278
 
279
- #: includes/core/permalink-manager-uri-functions-tax.php:489
280
  msgid "Clear/leave the field empty to use the default permalink."
281
  msgstr "デフォルトのパーマリンクを使用するため、フィールドを空のままにする / クリアする"
282
 
@@ -300,20 +296,20 @@ msgstr "アクセント付き文字の変換"
300
  msgid "Count"
301
  msgstr "カウント"
302
 
303
- #: includes/core/permalink-manager-pro-functions.php:533
304
  msgid "Coupon Full URL"
305
  msgstr "クーポン フル URL"
306
 
307
- #: includes/core/permalink-manager-pro-functions.php:500
308
  msgid "Coupon Link"
309
  msgstr "クーポンリンク"
310
 
311
- #: includes/core/permalink-manager-pro-functions.php:521
312
  msgid "Coupon URI"
313
  msgstr "クーポンURI"
314
 
315
- #: includes/core/permalink-manager-uri-functions-post.php:690
316
- #: includes/core/permalink-manager-uri-functions-tax.php:521
317
  #: includes/core/permalink-manager-admin-functions.php:777
318
  #: includes/core/permalink-manager-admin-functions.php:878
319
  msgid "Current URI"
@@ -335,7 +331,7 @@ msgstr "カスタム リダイレクト"
335
  #: includes/views/permalink-manager-tools.php:70
336
  #: includes/core/permalink-manager-third-parties.php:476
337
  #: includes/core/permalink-manager-third-parties.php:810
338
- #: includes/core/permalink-manager-uri-functions-tax.php:488
339
  msgid "Custom URI"
340
  msgstr "カスタム URI"
341
 
@@ -343,7 +339,7 @@ msgstr "カスタム URI"
343
  msgid "Custom URIs"
344
  msgstr "カスタム URI"
345
 
346
- #: includes/core/permalink-manager-pro-functions.php:190
347
  msgid "Danish"
348
  msgstr "デンマーク語"
349
 
@@ -387,7 +383,7 @@ msgstr "ドキュメント"
387
  msgid "Donate"
388
  msgstr "寄付"
389
 
390
- #: includes/core/permalink-manager-pro-functions.php:191
391
  msgid "Dutch"
392
  msgstr "オランダ語"
393
 
@@ -425,7 +421,7 @@ msgid ""
425
  "permalinks & duplicated redirects."
426
  msgstr "冗長なパーマリンクと重複したリダイレクトを自動的に削除したい場合は、このオプションを有効にします。"
427
 
428
- #: includes/core/permalink-manager-pro-functions.php:192
429
  msgid "English"
430
  msgstr "英語"
431
 
@@ -445,7 +441,7 @@ msgstr "除外する投稿タイプ"
445
  msgid "Exclude drafts"
446
  msgstr ""
447
 
448
- #: includes/core/permalink-manager-pro-functions.php:151
449
  msgid ""
450
  "Expiration date could not be downloaded at this moment. Please try again in "
451
  "a few minutes."
@@ -480,7 +476,7 @@ msgstr "検索"
480
  msgid "Find and replace"
481
  msgstr "検索&置換"
482
 
483
- #: includes/core/permalink-manager-pro-functions.php:193
484
  msgid "Finnish"
485
  msgstr "フィンランド語"
486
 
@@ -500,7 +496,7 @@ msgstr "実在しないページネーションのページに404を強制表示
500
  msgid "Force HTTPS/WWW"
501
  msgstr "HTTPS/WWW 強制"
502
 
503
- #: includes/core/permalink-manager-pro-functions.php:194
504
  msgid "French"
505
  msgstr "フランス語"
506
 
@@ -513,7 +509,7 @@ msgstr "全ての URIとパーマリンク"
513
  msgid "General settings"
514
  msgstr "一般設定"
515
 
516
- #: includes/core/permalink-manager-pro-functions.php:195
517
  msgid "German"
518
  msgstr "ドイツ語"
519
 
@@ -529,11 +525,15 @@ msgstr ""
529
  "<strong>パーマリンク マネージャー Proの購入は<a href=\"%s\" target=\"_blank\">コチラ</a>! %s "
530
  "の割引 「%s」をご利用下さい。 </strong> %s まで!"
531
 
532
- #: includes/core/permalink-manager-pro-functions.php:196
 
 
 
 
533
  msgid "Hebrew"
534
  msgstr "ヘブライ語"
535
 
536
- #: includes/core/permalink-manager-pro-functions.php:197
537
  msgid "Hindi"
538
  msgstr "ヒンディー語"
539
 
@@ -726,23 +726,23 @@ msgstr "親のスラッグを継承する"
726
  msgid "Instructions"
727
  msgstr "手順"
728
 
729
- #: includes/core/permalink-manager-pro-functions.php:198
730
  msgid "Italian"
731
  msgstr "イタリア語"
732
 
733
- #: includes/core/permalink-manager-pro-functions.php:199
734
  msgid "Japanese"
735
  msgstr "日本語"
736
 
737
- #: includes/core/permalink-manager-pro-functions.php:200
738
  msgid "Korean"
739
  msgstr "韓国語"
740
 
741
- #: includes/views/permalink-manager-pro-addons.php:128
742
  msgid "Licence"
743
  msgstr "ライセンス"
744
 
745
- #: includes/views/permalink-manager-pro-addons.php:134
746
  msgid "Licence key"
747
  msgstr "ライセンスキー"
748
 
@@ -834,7 +834,7 @@ msgstr "いいえ、スラッグにアクセント付き文字を保持します
834
  msgid "No, keep special characters (.,|_+) in the slugs"
835
  msgstr "いいえ、スラッグに特殊文字(.,|_+)を保持します。"
836
 
837
- #: includes/core/permalink-manager-pro-functions.php:201
838
  msgid "Norwegian"
839
  msgstr "ノルウェー語"
840
 
@@ -872,7 +872,7 @@ msgstr "重複したパーマリンク"
872
 
873
  #: includes/core/permalink-manager-third-parties.php:806
874
  #: includes/core/permalink-manager-third-parties.php:951
875
- #: includes/core/permalink-manager-gutenberg.php:29
876
  #: includes/core/permalink-manager-admin-functions.php:111
877
  #: includes/core/permalink-manager-admin-functions.php:111
878
  #: includes/core/permalink-manager-admin-functions.php:773
@@ -930,7 +930,7 @@ msgstr "パーマ構造 翻訳"
930
  msgid "Permastructures"
931
  msgstr "パーマ構造"
932
 
933
- #: includes/core/permalink-manager-pro-functions.php:202
934
  msgid "Persian"
935
  msgstr "ペルシア語"
936
 
@@ -968,7 +968,7 @@ msgid ""
968
  "(aliases)\" option is turned on above."
969
  msgstr ""
970
 
971
- #: includes/core/permalink-manager-pro-functions.php:126
972
  #, php-format
973
  msgid ""
974
  "Please paste the licence key to access all Permalink Manager Pro updates & "
@@ -977,11 +977,11 @@ msgstr ""
977
  "<a href=\"%s\" target=\"_blank\">コチラのページ</a>にて、ライセンスキーを設定して全てのPermalink "
978
  "Manager Pro のアップデート&機能をご利用下さい。"
979
 
980
- #: includes/core/permalink-manager-pro-functions.php:203
981
  msgid "Polish"
982
  msgstr "ポーランド語"
983
 
984
- #: includes/core/permalink-manager-pro-functions.php:204
985
  msgid "Portuguese"
986
  msgstr "ポルトガル語"
987
 
@@ -1036,6 +1036,10 @@ msgstr "ネイティブ スラッグを再生成する"
1036
  msgid "Regenerate/Reset"
1037
  msgstr "再作成 / リセット"
1038
 
 
 
 
 
1039
  #: includes/views/permalink-manager-debug.php:35
1040
  msgid "Remove all custom permalinks"
1041
  msgstr "全てのカスタム パーマリンクを削除する"
@@ -1081,7 +1085,7 @@ msgstr "デフォルトのパーマ構造を復元する"
1081
  msgid "Restore Default URI"
1082
  msgstr "デフォルトのURIを復元する"
1083
 
1084
- #: includes/core/permalink-manager-pro-functions.php:205
1085
  msgid "Russian"
1086
  msgstr "ロシア語"
1087
 
@@ -1183,7 +1187,7 @@ msgstr "スラッグ"
1183
  msgid "Slugs mode"
1184
  msgstr "スラッグ モード"
1185
 
1186
- #: includes/core/permalink-manager-pro-functions.php:206
1187
  msgid "Spanish"
1188
  msgstr "スペイン語"
1189
 
@@ -1203,7 +1207,7 @@ msgstr "ご意見 / フィードバック"
1203
  msgid "Support"
1204
  msgstr "サポート"
1205
 
1206
- #: includes/core/permalink-manager-pro-functions.php:207
1207
  msgid "Swedish"
1208
  msgstr "スウェーデン語"
1209
 
@@ -1259,7 +1263,7 @@ msgstr "リダイレクトは、無事削除されました!"
1259
  msgid "The settings are saved!"
1260
  msgstr "設定は、保存されました!"
1261
 
1262
- #: includes/core/permalink-manager-pro-functions.php:522
1263
  msgid ""
1264
  "The URIs are case-insensitive, eg. <strong>BLACKFRIDAY</strong> and <strong>"
1265
  "blackfriday</strong> are equivalent."
@@ -1350,7 +1354,7 @@ msgstr "末尾のスラッシュ"
1350
  msgid "Trailing slashes redirect"
1351
  msgstr "末尾のスラッシュリダイレクト"
1352
 
1353
- #: includes/core/permalink-manager-pro-functions.php:208
1354
  msgid "Turkish"
1355
  msgstr "トルコ語"
1356
 
@@ -1472,11 +1476,11 @@ msgid ""
1472
  "redirects, eg. Yoast SEO Premium or Redirection."
1473
  msgstr ""
1474
 
1475
- #: includes/core/permalink-manager-pro-functions.php:141
1476
  msgid "You own a lifetime licence key."
1477
  msgstr "あなたは、永久ライセンスキーをお持ちです。"
1478
 
1479
- #: includes/core/permalink-manager-pro-functions.php:146
1480
  #, php-format
1481
  msgid ""
1482
  "Your licence key is valid until %s.<br />To prolong it please go to <a "
@@ -1485,7 +1489,7 @@ msgstr ""
1485
  "あなたのライセンスキーは、%s まで有効です。<br />延長するには、<a href=\"%s\" target=\"_blank\">"
1486
  "コチラのページ</a>にアクセスして詳細を確認して下さい。"
1487
 
1488
- #: includes/core/permalink-manager-pro-functions.php:136
1489
  #, php-format
1490
  msgid ""
1491
  "Your Permalink Manager Pro licence key expired! To restore access to plugin "
@@ -1495,6 +1499,6 @@ msgstr ""
1495
  "あなたのライセンスキーは有効期限が切れました!プラグインのアップデートのアクセスやテクニカルサポートを受けたい場合は、<a href=\"%s\" "
1496
  "target=\"_blank\">コチラのページ</a>にアクセスして、復元して下さい。"
1497
 
1498
- #: includes/core/permalink-manager-pro-functions.php:131
1499
  msgid "Your Permalink Manager Pro licence key is invalid!"
1500
  msgstr "あなたのライセンスキーは、無効です!"
3
  "Project-Id-Version: Permalink Manager Lite\n"
4
  "Report-Msgid-Bugs-To: \n"
5
  "POT-Creation-Date: 2020-11-23 20:44+0000\n"
6
+ "PO-Revision-Date: 2021-06-24 23:59+0000\n"
7
  "Last-Translator: admin\n"
8
  "Language-Team: Japanese\n"
9
  "Language: ja\n"
196
  msgid "Apply"
197
  msgstr "適用"
198
 
199
+ #: includes/core/permalink-manager-pro-functions.php:195
200
  msgid "Arabic"
201
  msgstr "アラビア語"
202
 
268
  msgid "Canonical redirect"
269
  msgstr "正規リダイレクト"
270
 
271
+ #: includes/core/permalink-manager-pro-functions.php:196
 
 
 
 
272
  msgid "Chinese"
273
  msgstr "中国語"
274
 
275
+ #: includes/core/permalink-manager-uri-functions-tax.php:498
276
  msgid "Clear/leave the field empty to use the default permalink."
277
  msgstr "デフォルトのパーマリンクを使用するため、フィールドを空のままにする / クリアする"
278
 
296
  msgid "Count"
297
  msgstr "カウント"
298
 
299
+ #: includes/core/permalink-manager-pro-functions.php:540
300
  msgid "Coupon Full URL"
301
  msgstr "クーポン フル URL"
302
 
303
+ #: includes/core/permalink-manager-pro-functions.php:507
304
  msgid "Coupon Link"
305
  msgstr "クーポンリンク"
306
 
307
+ #: includes/core/permalink-manager-pro-functions.php:528
308
  msgid "Coupon URI"
309
  msgstr "クーポンURI"
310
 
311
+ #: includes/core/permalink-manager-uri-functions-post.php:694
312
+ #: includes/core/permalink-manager-uri-functions-tax.php:530
313
  #: includes/core/permalink-manager-admin-functions.php:777
314
  #: includes/core/permalink-manager-admin-functions.php:878
315
  msgid "Current URI"
331
  #: includes/views/permalink-manager-tools.php:70
332
  #: includes/core/permalink-manager-third-parties.php:476
333
  #: includes/core/permalink-manager-third-parties.php:810
334
+ #: includes/core/permalink-manager-uri-functions-tax.php:497
335
  msgid "Custom URI"
336
  msgstr "カスタム URI"
337
 
339
  msgid "Custom URIs"
340
  msgstr "カスタム URI"
341
 
342
+ #: includes/core/permalink-manager-pro-functions.php:197
343
  msgid "Danish"
344
  msgstr "デンマーク語"
345
 
383
  msgid "Donate"
384
  msgstr "寄付"
385
 
386
+ #: includes/core/permalink-manager-pro-functions.php:198
387
  msgid "Dutch"
388
  msgstr "オランダ語"
389
 
421
  "permalinks & duplicated redirects."
422
  msgstr "冗長なパーマリンクと重複したリダイレクトを自動的に削除したい場合は、このオプションを有効にします。"
423
 
424
+ #: includes/core/permalink-manager-pro-functions.php:199
425
  msgid "English"
426
  msgstr "英語"
427
 
441
  msgid "Exclude drafts"
442
  msgstr ""
443
 
444
+ #: includes/core/permalink-manager-pro-functions.php:158
445
  msgid ""
446
  "Expiration date could not be downloaded at this moment. Please try again in "
447
  "a few minutes."
476
  msgid "Find and replace"
477
  msgstr "検索&置換"
478
 
479
+ #: includes/core/permalink-manager-pro-functions.php:200
480
  msgid "Finnish"
481
  msgstr "フィンランド語"
482
 
496
  msgid "Force HTTPS/WWW"
497
  msgstr "HTTPS/WWW 強制"
498
 
499
+ #: includes/core/permalink-manager-pro-functions.php:201
500
  msgid "French"
501
  msgstr "フランス語"
502
 
509
  msgid "General settings"
510
  msgstr "一般設定"
511
 
512
+ #: includes/core/permalink-manager-pro-functions.php:202
513
  msgid "German"
514
  msgstr "ドイツ語"
515
 
525
  "<strong>パーマリンク マネージャー Proの購入は<a href=\"%s\" target=\"_blank\">コチラ</a>! %s "
526
  "の割引 「%s」をご利用下さい。 </strong> %s まで!"
527
 
528
+ #: includes/views/permalink-manager-pro-addons.php:134
529
+ msgid "Get license information"
530
+ msgstr ""
531
+
532
+ #: includes/core/permalink-manager-pro-functions.php:203
533
  msgid "Hebrew"
534
  msgstr "ヘブライ語"
535
 
536
+ #: includes/core/permalink-manager-pro-functions.php:204
537
  msgid "Hindi"
538
  msgstr "ヒンディー語"
539
 
726
  msgid "Instructions"
727
  msgstr "手順"
728
 
729
+ #: includes/core/permalink-manager-pro-functions.php:205
730
  msgid "Italian"
731
  msgstr "イタリア語"
732
 
733
+ #: includes/core/permalink-manager-pro-functions.php:206
734
  msgid "Japanese"
735
  msgstr "日本語"
736
 
737
+ #: includes/core/permalink-manager-pro-functions.php:207
738
  msgid "Korean"
739
  msgstr "韓国語"
740
 
741
+ #: includes/views/permalink-manager-pro-addons.php:121
742
  msgid "Licence"
743
  msgstr "ライセンス"
744
 
745
+ #: includes/views/permalink-manager-pro-addons.php:127
746
  msgid "Licence key"
747
  msgstr "ライセンスキー"
748
 
834
  msgid "No, keep special characters (.,|_+) in the slugs"
835
  msgstr "いいえ、スラッグに特殊文字(.,|_+)を保持します。"
836
 
837
+ #: includes/core/permalink-manager-pro-functions.php:208
838
  msgid "Norwegian"
839
  msgstr "ノルウェー語"
840
 
872
 
873
  #: includes/core/permalink-manager-third-parties.php:806
874
  #: includes/core/permalink-manager-third-parties.php:951
875
+ #: includes/core/permalink-manager-gutenberg.php:33
876
  #: includes/core/permalink-manager-admin-functions.php:111
877
  #: includes/core/permalink-manager-admin-functions.php:111
878
  #: includes/core/permalink-manager-admin-functions.php:773
930
  msgid "Permastructures"
931
  msgstr "パーマ構造"
932
 
933
+ #: includes/core/permalink-manager-pro-functions.php:209
934
  msgid "Persian"
935
  msgstr "ペルシア語"
936
 
968
  "(aliases)\" option is turned on above."
969
  msgstr ""
970
 
971
+ #: includes/core/permalink-manager-pro-functions.php:133
972
  #, php-format
973
  msgid ""
974
  "Please paste the licence key to access all Permalink Manager Pro updates & "
977
  "<a href=\"%s\" target=\"_blank\">コチラのページ</a>にて、ライセンスキーを設定して全てのPermalink "
978
  "Manager Pro のアップデート&機能をご利用下さい。"
979
 
980
+ #: includes/core/permalink-manager-pro-functions.php:210
981
  msgid "Polish"
982
  msgstr "ポーランド語"
983
 
984
+ #: includes/core/permalink-manager-pro-functions.php:211
985
  msgid "Portuguese"
986
  msgstr "ポルトガル語"
987
 
1036
  msgid "Regenerate/Reset"
1037
  msgstr "再作成 / リセット"
1038
 
1039
+ #: includes/views/permalink-manager-pro-addons.php:132
1040
+ msgid "Reload the expiration date"
1041
+ msgstr "有効期限を確認する"
1042
+
1043
  #: includes/views/permalink-manager-debug.php:35
1044
  msgid "Remove all custom permalinks"
1045
  msgstr "全てのカスタム パーマリンクを削除する"
1085
  msgid "Restore Default URI"
1086
  msgstr "デフォルトのURIを復元する"
1087
 
1088
+ #: includes/core/permalink-manager-pro-functions.php:212
1089
  msgid "Russian"
1090
  msgstr "ロシア語"
1091
 
1187
  msgid "Slugs mode"
1188
  msgstr "スラッグ モード"
1189
 
1190
+ #: includes/core/permalink-manager-pro-functions.php:213
1191
  msgid "Spanish"
1192
  msgstr "スペイン語"
1193
 
1207
  msgid "Support"
1208
  msgstr "サポート"
1209
 
1210
+ #: includes/core/permalink-manager-pro-functions.php:214
1211
  msgid "Swedish"
1212
  msgstr "スウェーデン語"
1213
 
1263
  msgid "The settings are saved!"
1264
  msgstr "設定は、保存されました!"
1265
 
1266
+ #: includes/core/permalink-manager-pro-functions.php:529
1267
  msgid ""
1268
  "The URIs are case-insensitive, eg. <strong>BLACKFRIDAY</strong> and <strong>"
1269
  "blackfriday</strong> are equivalent."
1354
  msgid "Trailing slashes redirect"
1355
  msgstr "末尾のスラッシュリダイレクト"
1356
 
1357
+ #: includes/core/permalink-manager-pro-functions.php:215
1358
  msgid "Turkish"
1359
  msgstr "トルコ語"
1360
 
1476
  "redirects, eg. Yoast SEO Premium or Redirection."
1477
  msgstr ""
1478
 
1479
+ #: includes/core/permalink-manager-pro-functions.php:148
1480
  msgid "You own a lifetime licence key."
1481
  msgstr "あなたは、永久ライセンスキーをお持ちです。"
1482
 
1483
+ #: includes/core/permalink-manager-pro-functions.php:153
1484
  #, php-format
1485
  msgid ""
1486
  "Your licence key is valid until %s.<br />To prolong it please go to <a "
1489
  "あなたのライセンスキーは、%s まで有効です。<br />延長するには、<a href=\"%s\" target=\"_blank\">"
1490
  "コチラのページ</a>にアクセスして詳細を確認して下さい。"
1491
 
1492
+ #: includes/core/permalink-manager-pro-functions.php:143
1493
  #, php-format
1494
  msgid ""
1495
  "Your Permalink Manager Pro licence key expired! To restore access to plugin "
1499
  "あなたのライセンスキーは有効期限が切れました!プラグインのアップデートのアクセスやテクニカルサポートを受けたい場合は、<a href=\"%s\" "
1500
  "target=\"_blank\">コチラのページ</a>にアクセスして、復元して下さい。"
1501
 
1502
+ #: includes/core/permalink-manager-pro-functions.php:138
1503
  msgid "Your Permalink Manager Pro licence key is invalid!"
1504
  msgstr "あなたのライセンスキーは、無効です!"
languages/permalink-manager.pot CHANGED
@@ -3,7 +3,7 @@ msgid ""
3
  msgstr ""
4
  "Project-Id-Version: PACKAGE VERSION\n"
5
  "Report-Msgid-Bugs-To: \n"
6
- "POT-Creation-Date: 2021-06-07 10:20+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"
@@ -178,7 +178,7 @@ msgstr ""
178
  msgid "Apply"
179
  msgstr ""
180
 
181
- #: includes/core/permalink-manager-pro-functions.php:188
182
  msgid "Arabic"
183
  msgstr ""
184
 
@@ -250,15 +250,11 @@ msgstr ""
250
  msgid "Canonical redirect"
251
  msgstr ""
252
 
253
- #: includes/views/permalink-manager-pro-addons.php:135
254
- msgid "Check the expiration date."
255
- msgstr ""
256
-
257
- #: includes/core/permalink-manager-pro-functions.php:189
258
  msgid "Chinese"
259
  msgstr ""
260
 
261
- #: includes/core/permalink-manager-uri-functions-tax.php:489
262
  msgid "Clear/leave the field empty to use the default permalink."
263
  msgstr ""
264
 
@@ -282,20 +278,20 @@ msgstr ""
282
  msgid "Count"
283
  msgstr ""
284
 
285
- #: includes/core/permalink-manager-pro-functions.php:533
286
  msgid "Coupon Full URL"
287
  msgstr ""
288
 
289
- #: includes/core/permalink-manager-pro-functions.php:500
290
  msgid "Coupon Link"
291
  msgstr ""
292
 
293
- #: includes/core/permalink-manager-pro-functions.php:521
294
  msgid "Coupon URI"
295
  msgstr ""
296
 
297
- #: includes/core/permalink-manager-uri-functions-post.php:690
298
- #: includes/core/permalink-manager-uri-functions-tax.php:521
299
  #: includes/core/permalink-manager-admin-functions.php:777
300
  #: includes/core/permalink-manager-admin-functions.php:878
301
  msgid "Current URI"
@@ -317,7 +313,7 @@ msgstr ""
317
  #: includes/views/permalink-manager-tools.php:70
318
  #: includes/core/permalink-manager-third-parties.php:476
319
  #: includes/core/permalink-manager-third-parties.php:810
320
- #: includes/core/permalink-manager-uri-functions-tax.php:488
321
  msgid "Custom URI"
322
  msgstr ""
323
 
@@ -325,7 +321,7 @@ msgstr ""
325
  msgid "Custom URIs"
326
  msgstr ""
327
 
328
- #: includes/core/permalink-manager-pro-functions.php:190
329
  msgid "Danish"
330
  msgstr ""
331
 
@@ -369,7 +365,7 @@ msgstr ""
369
  msgid "Donate"
370
  msgstr ""
371
 
372
- #: includes/core/permalink-manager-pro-functions.php:191
373
  msgid "Dutch"
374
  msgstr ""
375
 
@@ -407,7 +403,7 @@ msgid ""
407
  "permalinks & duplicated redirects."
408
  msgstr ""
409
 
410
- #: includes/core/permalink-manager-pro-functions.php:192
411
  msgid "English"
412
  msgstr ""
413
 
@@ -426,7 +422,7 @@ msgstr ""
426
  msgid "Exclude drafts"
427
  msgstr ""
428
 
429
- #: includes/core/permalink-manager-pro-functions.php:151
430
  msgid ""
431
  "Expiration date could not be downloaded at this moment. Please try again in "
432
  "a few minutes."
@@ -461,7 +457,7 @@ msgstr ""
461
  msgid "Find and replace"
462
  msgstr ""
463
 
464
- #: includes/core/permalink-manager-pro-functions.php:193
465
  msgid "Finnish"
466
  msgstr ""
467
 
@@ -481,7 +477,7 @@ msgstr ""
481
  msgid "Force HTTPS/WWW"
482
  msgstr ""
483
 
484
- #: includes/core/permalink-manager-pro-functions.php:194
485
  msgid "French"
486
  msgstr ""
487
 
@@ -494,7 +490,7 @@ msgstr ""
494
  msgid "General settings"
495
  msgstr ""
496
 
497
- #: includes/core/permalink-manager-pro-functions.php:195
498
  msgid "German"
499
  msgstr ""
500
 
@@ -507,11 +503,15 @@ msgid ""
507
  "and save %s using \"%s\" coupon code!</strong> Valid until %s!"
508
  msgstr ""
509
 
510
- #: includes/core/permalink-manager-pro-functions.php:196
 
 
 
 
511
  msgid "Hebrew"
512
  msgstr ""
513
 
514
- #: includes/core/permalink-manager-pro-functions.php:197
515
  msgid "Hindi"
516
  msgstr ""
517
 
@@ -684,23 +684,23 @@ msgstr ""
684
  msgid "Instructions"
685
  msgstr ""
686
 
687
- #: includes/core/permalink-manager-pro-functions.php:198
688
  msgid "Italian"
689
  msgstr ""
690
 
691
- #: includes/core/permalink-manager-pro-functions.php:199
692
  msgid "Japanese"
693
  msgstr ""
694
 
695
- #: includes/core/permalink-manager-pro-functions.php:200
696
  msgid "Korean"
697
  msgstr ""
698
 
699
- #: includes/views/permalink-manager-pro-addons.php:128
700
  msgid "Licence"
701
  msgstr ""
702
 
703
- #: includes/views/permalink-manager-pro-addons.php:134
704
  msgid "Licence key"
705
  msgstr ""
706
 
@@ -792,7 +792,7 @@ msgstr ""
792
  msgid "No, keep special characters (.,|_+) in the slugs"
793
  msgstr ""
794
 
795
- #: includes/core/permalink-manager-pro-functions.php:201
796
  msgid "Norwegian"
797
  msgstr ""
798
 
@@ -828,7 +828,7 @@ msgstr ""
828
 
829
  #: includes/core/permalink-manager-third-parties.php:806
830
  #: includes/core/permalink-manager-third-parties.php:951
831
- #: includes/core/permalink-manager-gutenberg.php:29
832
  #: includes/core/permalink-manager-admin-functions.php:111
833
  #: includes/core/permalink-manager-admin-functions.php:111
834
  #: includes/core/permalink-manager-admin-functions.php:773
@@ -878,7 +878,7 @@ msgstr ""
878
  msgid "Permastructures"
879
  msgstr ""
880
 
881
- #: includes/core/permalink-manager-pro-functions.php:202
882
  msgid "Persian"
883
  msgstr ""
884
 
@@ -916,18 +916,18 @@ msgid ""
916
  "(aliases)\" option is turned on above."
917
  msgstr ""
918
 
919
- #: includes/core/permalink-manager-pro-functions.php:126
920
  #, php-format
921
  msgid ""
922
  "Please paste the licence key to access all Permalink Manager Pro updates & "
923
  "features <a href=\"%s\" target=\"_blank\">on this page</a>."
924
  msgstr ""
925
 
926
- #: includes/core/permalink-manager-pro-functions.php:203
927
  msgid "Polish"
928
  msgstr ""
929
 
930
- #: includes/core/permalink-manager-pro-functions.php:204
931
  msgid "Portuguese"
932
  msgstr ""
933
 
@@ -982,6 +982,10 @@ msgstr ""
982
  msgid "Regenerate/Reset"
983
  msgstr ""
984
 
 
 
 
 
985
  #: includes/views/permalink-manager-debug.php:35
986
  msgid "Remove all custom permalinks"
987
  msgstr ""
@@ -1027,7 +1031,7 @@ msgstr ""
1027
  msgid "Restore Default URI"
1028
  msgstr ""
1029
 
1030
- #: includes/core/permalink-manager-pro-functions.php:205
1031
  msgid "Russian"
1032
  msgstr ""
1033
 
@@ -1129,7 +1133,7 @@ msgstr ""
1129
  msgid "Slugs mode"
1130
  msgstr ""
1131
 
1132
- #: includes/core/permalink-manager-pro-functions.php:206
1133
  msgid "Spanish"
1134
  msgstr ""
1135
 
@@ -1149,7 +1153,7 @@ msgstr ""
1149
  msgid "Support"
1150
  msgstr ""
1151
 
1152
- #: includes/core/permalink-manager-pro-functions.php:207
1153
  msgid "Swedish"
1154
  msgstr ""
1155
 
@@ -1204,7 +1208,7 @@ msgstr ""
1204
  msgid "The settings are saved!"
1205
  msgstr ""
1206
 
1207
- #: includes/core/permalink-manager-pro-functions.php:522
1208
  msgid ""
1209
  "The URIs are case-insensitive, eg. <strong>BLACKFRIDAY</strong> and <strong>"
1210
  "blackfriday</strong> are equivalent."
@@ -1285,7 +1289,7 @@ msgstr ""
1285
  msgid "Trailing slashes redirect"
1286
  msgstr ""
1287
 
1288
- #: includes/core/permalink-manager-pro-functions.php:208
1289
  msgid "Turkish"
1290
  msgstr ""
1291
 
@@ -1407,18 +1411,18 @@ msgid ""
1407
  "redirects, eg. Yoast SEO Premium or Redirection."
1408
  msgstr ""
1409
 
1410
- #: includes/core/permalink-manager-pro-functions.php:141
1411
  msgid "You own a lifetime licence key."
1412
  msgstr ""
1413
 
1414
- #: includes/core/permalink-manager-pro-functions.php:146
1415
  #, php-format
1416
  msgid ""
1417
  "Your licence key is valid until %s.<br />To prolong it please go to <a "
1418
  "href=\"%s\" target=\"_blank\">this page</a> for more information."
1419
  msgstr ""
1420
 
1421
- #: includes/core/permalink-manager-pro-functions.php:136
1422
  #, php-format
1423
  msgid ""
1424
  "Your Permalink Manager Pro licence key expired! To restore access to plugin "
@@ -1426,6 +1430,6 @@ msgid ""
1426
  "this page</a>."
1427
  msgstr ""
1428
 
1429
- #: includes/core/permalink-manager-pro-functions.php:131
1430
  msgid "Your Permalink Manager Pro licence key is invalid!"
1431
  msgstr ""
3
  msgstr ""
4
  "Project-Id-Version: PACKAGE VERSION\n"
5
  "Report-Msgid-Bugs-To: \n"
6
+ "POT-Creation-Date: 2021-06-24 23:58+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"
178
  msgid "Apply"
179
  msgstr ""
180
 
181
+ #: includes/core/permalink-manager-pro-functions.php:195
182
  msgid "Arabic"
183
  msgstr ""
184
 
250
  msgid "Canonical redirect"
251
  msgstr ""
252
 
253
+ #: includes/core/permalink-manager-pro-functions.php:196
 
 
 
 
254
  msgid "Chinese"
255
  msgstr ""
256
 
257
+ #: includes/core/permalink-manager-uri-functions-tax.php:498
258
  msgid "Clear/leave the field empty to use the default permalink."
259
  msgstr ""
260
 
278
  msgid "Count"
279
  msgstr ""
280
 
281
+ #: includes/core/permalink-manager-pro-functions.php:540
282
  msgid "Coupon Full URL"
283
  msgstr ""
284
 
285
+ #: includes/core/permalink-manager-pro-functions.php:507
286
  msgid "Coupon Link"
287
  msgstr ""
288
 
289
+ #: includes/core/permalink-manager-pro-functions.php:528
290
  msgid "Coupon URI"
291
  msgstr ""
292
 
293
+ #: includes/core/permalink-manager-uri-functions-post.php:694
294
+ #: includes/core/permalink-manager-uri-functions-tax.php:530
295
  #: includes/core/permalink-manager-admin-functions.php:777
296
  #: includes/core/permalink-manager-admin-functions.php:878
297
  msgid "Current URI"
313
  #: includes/views/permalink-manager-tools.php:70
314
  #: includes/core/permalink-manager-third-parties.php:476
315
  #: includes/core/permalink-manager-third-parties.php:810
316
+ #: includes/core/permalink-manager-uri-functions-tax.php:497
317
  msgid "Custom URI"
318
  msgstr ""
319
 
321
  msgid "Custom URIs"
322
  msgstr ""
323
 
324
+ #: includes/core/permalink-manager-pro-functions.php:197
325
  msgid "Danish"
326
  msgstr ""
327
 
365
  msgid "Donate"
366
  msgstr ""
367
 
368
+ #: includes/core/permalink-manager-pro-functions.php:198
369
  msgid "Dutch"
370
  msgstr ""
371
 
403
  "permalinks & duplicated redirects."
404
  msgstr ""
405
 
406
+ #: includes/core/permalink-manager-pro-functions.php:199
407
  msgid "English"
408
  msgstr ""
409
 
422
  msgid "Exclude drafts"
423
  msgstr ""
424
 
425
+ #: includes/core/permalink-manager-pro-functions.php:158
426
  msgid ""
427
  "Expiration date could not be downloaded at this moment. Please try again in "
428
  "a few minutes."
457
  msgid "Find and replace"
458
  msgstr ""
459
 
460
+ #: includes/core/permalink-manager-pro-functions.php:200
461
  msgid "Finnish"
462
  msgstr ""
463
 
477
  msgid "Force HTTPS/WWW"
478
  msgstr ""
479
 
480
+ #: includes/core/permalink-manager-pro-functions.php:201
481
  msgid "French"
482
  msgstr ""
483
 
490
  msgid "General settings"
491
  msgstr ""
492
 
493
+ #: includes/core/permalink-manager-pro-functions.php:202
494
  msgid "German"
495
  msgstr ""
496
 
503
  "and save %s using \"%s\" coupon code!</strong> Valid until %s!"
504
  msgstr ""
505
 
506
+ #: includes/views/permalink-manager-pro-addons.php:134
507
+ msgid "Get license information"
508
+ msgstr ""
509
+
510
+ #: includes/core/permalink-manager-pro-functions.php:203
511
  msgid "Hebrew"
512
  msgstr ""
513
 
514
+ #: includes/core/permalink-manager-pro-functions.php:204
515
  msgid "Hindi"
516
  msgstr ""
517
 
684
  msgid "Instructions"
685
  msgstr ""
686
 
687
+ #: includes/core/permalink-manager-pro-functions.php:205
688
  msgid "Italian"
689
  msgstr ""
690
 
691
+ #: includes/core/permalink-manager-pro-functions.php:206
692
  msgid "Japanese"
693
  msgstr ""
694
 
695
+ #: includes/core/permalink-manager-pro-functions.php:207
696
  msgid "Korean"
697
  msgstr ""
698
 
699
+ #: includes/views/permalink-manager-pro-addons.php:121
700
  msgid "Licence"
701
  msgstr ""
702
 
703
+ #: includes/views/permalink-manager-pro-addons.php:127
704
  msgid "Licence key"
705
  msgstr ""
706
 
792
  msgid "No, keep special characters (.,|_+) in the slugs"
793
  msgstr ""
794
 
795
+ #: includes/core/permalink-manager-pro-functions.php:208
796
  msgid "Norwegian"
797
  msgstr ""
798
 
828
 
829
  #: includes/core/permalink-manager-third-parties.php:806
830
  #: includes/core/permalink-manager-third-parties.php:951
831
+ #: includes/core/permalink-manager-gutenberg.php:33
832
  #: includes/core/permalink-manager-admin-functions.php:111
833
  #: includes/core/permalink-manager-admin-functions.php:111
834
  #: includes/core/permalink-manager-admin-functions.php:773
878
  msgid "Permastructures"
879
  msgstr ""
880
 
881
+ #: includes/core/permalink-manager-pro-functions.php:209
882
  msgid "Persian"
883
  msgstr ""
884
 
916
  "(aliases)\" option is turned on above."
917
  msgstr ""
918
 
919
+ #: includes/core/permalink-manager-pro-functions.php:133
920
  #, php-format
921
  msgid ""
922
  "Please paste the licence key to access all Permalink Manager Pro updates & "
923
  "features <a href=\"%s\" target=\"_blank\">on this page</a>."
924
  msgstr ""
925
 
926
+ #: includes/core/permalink-manager-pro-functions.php:210
927
  msgid "Polish"
928
  msgstr ""
929
 
930
+ #: includes/core/permalink-manager-pro-functions.php:211
931
  msgid "Portuguese"
932
  msgstr ""
933
 
982
  msgid "Regenerate/Reset"
983
  msgstr ""
984
 
985
+ #: includes/views/permalink-manager-pro-addons.php:132
986
+ msgid "Reload the expiration date"
987
+ msgstr ""
988
+
989
  #: includes/views/permalink-manager-debug.php:35
990
  msgid "Remove all custom permalinks"
991
  msgstr ""
1031
  msgid "Restore Default URI"
1032
  msgstr ""
1033
 
1034
+ #: includes/core/permalink-manager-pro-functions.php:212
1035
  msgid "Russian"
1036
  msgstr ""
1037
 
1133
  msgid "Slugs mode"
1134
  msgstr ""
1135
 
1136
+ #: includes/core/permalink-manager-pro-functions.php:213
1137
  msgid "Spanish"
1138
  msgstr ""
1139
 
1153
  msgid "Support"
1154
  msgstr ""
1155
 
1156
+ #: includes/core/permalink-manager-pro-functions.php:214
1157
  msgid "Swedish"
1158
  msgstr ""
1159
 
1208
  msgid "The settings are saved!"
1209
  msgstr ""
1210
 
1211
+ #: includes/core/permalink-manager-pro-functions.php:529
1212
  msgid ""
1213
  "The URIs are case-insensitive, eg. <strong>BLACKFRIDAY</strong> and <strong>"
1214
  "blackfriday</strong> are equivalent."
1289
  msgid "Trailing slashes redirect"
1290
  msgstr ""
1291
 
1292
+ #: includes/core/permalink-manager-pro-functions.php:215
1293
  msgid "Turkish"
1294
  msgstr ""
1295
 
1411
  "redirects, eg. Yoast SEO Premium or Redirection."
1412
  msgstr ""
1413
 
1414
+ #: includes/core/permalink-manager-pro-functions.php:148
1415
  msgid "You own a lifetime licence key."
1416
  msgstr ""
1417
 
1418
+ #: includes/core/permalink-manager-pro-functions.php:153
1419
  #, php-format
1420
  msgid ""
1421
  "Your licence key is valid until %s.<br />To prolong it please go to <a "
1422
  "href=\"%s\" target=\"_blank\">this page</a> for more information."
1423
  msgstr ""
1424
 
1425
+ #: includes/core/permalink-manager-pro-functions.php:143
1426
  #, php-format
1427
  msgid ""
1428
  "Your Permalink Manager Pro licence key expired! To restore access to plugin "
1430
  "this page</a>."
1431
  msgstr ""
1432
 
1433
+ #: includes/core/permalink-manager-pro-functions.php:138
1434
  msgid "Your Permalink Manager Pro licence key is invalid!"
1435
  msgstr ""
out/permalink-manager-admin.js CHANGED
@@ -406,6 +406,9 @@ jQuery(document).ready(function() {
406
  type: 'POST',
407
  data: {
408
  action: 'pm_get_exp_date',
 
 
 
409
  },
410
  beforeSend: function() {
411
  var spinner = '<img src="' + permalink_manager.spinners + '/wpspin_light-2x.gif" width="16" height="16">';
406
  type: 'POST',
407
  data: {
408
  action: 'pm_get_exp_date',
409
+ licence: {
410
+ licence_key: jQuery('#permalink-manager #settings #licence_key input[type="text"]').val()
411
+ }
412
  },
413
  beforeSend: function() {
414
  var spinner = '<img src="' + permalink_manager.spinners + '/wpspin_light-2x.gif" width="16" height="16">';
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.2.11
8
  * Author: Maciej Bis
9
  * Author URI: http://maciejbis.net/
10
  * License: GPL-2.0+
@@ -25,7 +25,7 @@ if(!class_exists('Permalink_Manager_Class')) {
25
  // Define the directories used to load plugin files.
26
  define( 'PERMALINK_MANAGER_PLUGIN_NAME', 'Permalink Manager' );
27
  define( 'PERMALINK_MANAGER_PLUGIN_SLUG', 'permalink-manager' );
28
- define( 'PERMALINK_MANAGER_VERSION', '2.2.11' );
29
  define( 'PERMALINK_MANAGER_FILE', __FILE__ );
30
  define( 'PERMALINK_MANAGER_DIR', untrailingslashit(dirname(__FILE__)) );
31
  define( 'PERMALINK_MANAGER_BASENAME', plugin_basename(__FILE__));
@@ -134,11 +134,11 @@ if(!class_exists('Permalink_Manager_Class')) {
134
  // 1. Globals with data stored in DB
135
  global $permalink_manager_options, $permalink_manager_uris, $permalink_manager_permastructs, $permalink_manager_redirects, $permalink_manager_external_redirects;
136
 
137
- $this->permalink_manager_options = $permalink_manager_options = (array) apply_filters('permalink_manager_options', get_option('permalink-manager'));
138
- $this->permalink_manager_uris = $permalink_manager_uris = (array) apply_filters('permalink_manager_uris', get_option('permalink-manager-uris'));
139
- $this->permalink_manager_permastructs = $permalink_manager_permastructs = (array) apply_filters('permalink_manager_permastructs', get_option('permalink-manager-permastructs'));
140
- $this->permalink_manager_redirects = $permalink_manager_redirects = (array) apply_filters('permalink_manager_redirects', get_option('permalink-manager-redirects'));
141
- $this->permalink_manager_external_redirects = $permalink_manager_external_redirects = (array) apply_filters('permalink_manager_external_redirects', get_option('permalink-manager-external-redirects'));
142
 
143
  // 2. Globals used to display additional content (eg. alerts)
144
  global $permalink_manager_alerts, $permalink_manager_before_sections_html, $permalink_manager_after_sections_html;
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.2.12
8
  * Author: Maciej Bis
9
  * Author URI: http://maciejbis.net/
10
  * License: GPL-2.0+
25
  // Define the directories used to load plugin files.
26
  define( 'PERMALINK_MANAGER_PLUGIN_NAME', 'Permalink Manager' );
27
  define( 'PERMALINK_MANAGER_PLUGIN_SLUG', 'permalink-manager' );
28
+ define( 'PERMALINK_MANAGER_VERSION', '2.2.12' );
29
  define( 'PERMALINK_MANAGER_FILE', __FILE__ );
30
  define( 'PERMALINK_MANAGER_DIR', untrailingslashit(dirname(__FILE__)) );
31
  define( 'PERMALINK_MANAGER_BASENAME', plugin_basename(__FILE__));
134
  // 1. Globals with data stored in DB
135
  global $permalink_manager_options, $permalink_manager_uris, $permalink_manager_permastructs, $permalink_manager_redirects, $permalink_manager_external_redirects;
136
 
137
+ $this->permalink_manager_options = $permalink_manager_options = (array) apply_filters('permalink_manager_options', get_option('permalink-manager', null));
138
+ $this->permalink_manager_uris = $permalink_manager_uris = (array) apply_filters('permalink_manager_uris', get_option('permalink-manager-uris', null));
139
+ $this->permalink_manager_permastructs = $permalink_manager_permastructs = (array) apply_filters('permalink_manager_permastructs', get_option('permalink-manager-permastructs', null));
140
+ $this->permalink_manager_redirects = $permalink_manager_redirects = (array) apply_filters('permalink_manager_redirects', get_option('permalink-manager-redirects', null));
141
+ $this->permalink_manager_external_redirects = $permalink_manager_external_redirects = (array) apply_filters('permalink_manager_external_redirects', get_option('permalink-manager-external-redirects', null));
142
 
143
  // 2. Globals used to display additional content (eg. alerts)
144
  global $permalink_manager_alerts, $permalink_manager_before_sections_html, $permalink_manager_after_sections_html;