Permalink Manager Lite - Version 2.2.19.3

Version Description

(August 11, 2022) = * Dev - New filter added - 'permalink_manager_pre_sanitize_title' * Fix - The old slugs are saved in the '_wp_old_slug' meta key even if the native slugs are changed in the URI Editor in the Gutenberg mode. * Fix - Extra security check in the "Debug" section to prevent unauthorized users (CSRF) from removing the plugin's data.

Download this release

Release Info

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

Code changes from version 2.2.19.3.1 to 2.2.19.3

README.txt CHANGED
@@ -1,4 +1,4 @@
1
- === Permalink Manager Pro ===
2
  Contributors: mbis
3
  Donate link: https://www.paypal.me/Bismit
4
  License: GPLv2
@@ -6,8 +6,8 @@ License URI: http://www.gnu.org/licenses/gpl-2.0.html
6
  Tags: permalinks, custom permalinks, permalink, woocommerce permalinks, url editor
7
  Requires at least: 4.4.0
8
  Requires PHP: 5.4
9
- Tested up to: 6.0.1
10
- Stable tag: 2.2.19.3.1
11
 
12
  Permalink Manager lets you customize the complete URL addresses of your posts, pages, custom post types, terms, and WooCommerce links with ease without touching any core files.
13
 
@@ -42,8 +42,6 @@ Click here for additional information and to purchase <a href="https://permalink
42
  * **Custom fields support**<br/>Only Permalink Manager makes it possible to <a href="https://permalinkmanager.pro/docs/tutorials/how-to-use-custom-fields-inside-wordpress-permalinks/">add custom fields to WordPress permalinks</a> without the need for any technical skills on the part of the user.
43
  * **Extra redirects**<br/>You can define extra 301 redirects (aliases) for any post, page, or term. Additionally, you may assign a redirect URL to each post/term, which will take users to any external URL address. For each element, the redirect URLs might be specified separately.
44
 
45
- https://www.youtube.com/watch?v=KMOtAK5c7t8
46
-
47
  = Translators =
48
  * Japanese - Shinsaku Ikeda
49
 
@@ -95,9 +93,6 @@ It is because Permalink Manager overwrites one of the core Wordpress functionali
95
 
96
  == Changelog ==
97
 
98
- = 2.2.19.4 (August 16, 2022) =
99
- * Fix - The URLs with duplicated slashes (eg. example.com/sample-page////) are now handled correctly and forwarded to the canonical URL.
100
-
101
  = 2.2.19.3 (August 11, 2022) =
102
  * Dev - New filter added - 'permalink_manager_pre_sanitize_title'
103
  * Fix - The old slugs are saved in the '_wp_old_slug' meta key even if the native slugs are changed in the URI Editor in the Gutenberg mode.
1
+ === Permalink Manager Lite ===
2
  Contributors: mbis
3
  Donate link: https://www.paypal.me/Bismit
4
  License: GPLv2
6
  Tags: permalinks, custom permalinks, permalink, woocommerce permalinks, url editor
7
  Requires at least: 4.4.0
8
  Requires PHP: 5.4
9
+ Tested up to: 6.0.2
10
+ Stable tag: 2.2.19.3
11
 
12
  Permalink Manager lets you customize the complete URL addresses of your posts, pages, custom post types, terms, and WooCommerce links with ease without touching any core files.
13
 
42
  * **Custom fields support**<br/>Only Permalink Manager makes it possible to <a href="https://permalinkmanager.pro/docs/tutorials/how-to-use-custom-fields-inside-wordpress-permalinks/">add custom fields to WordPress permalinks</a> without the need for any technical skills on the part of the user.
43
  * **Extra redirects**<br/>You can define extra 301 redirects (aliases) for any post, page, or term. Additionally, you may assign a redirect URL to each post/term, which will take users to any external URL address. For each element, the redirect URLs might be specified separately.
44
 
 
 
45
  = Translators =
46
  * Japanese - Shinsaku Ikeda
47
 
93
 
94
  == Changelog ==
95
 
 
 
 
96
  = 2.2.19.3 (August 11, 2022) =
97
  * Dev - New filter added - 'permalink_manager_pre_sanitize_title'
98
  * Fix - The old slugs are saved in the '_wp_old_slug' meta key even if the native slugs are changed in the URI Editor in the Gutenberg mode.
includes/core/permalink-manager-core-functions.php CHANGED
@@ -714,7 +714,7 @@ class Permalink_Manager_Core_Functions extends Permalink_Manager_Class {
714
  /**
715
  * 3. Prevent redirect loop
716
  */
717
- if(!empty($correct_permalink) && is_string($correct_permalink) && !empty($wp->request) && !empty($redirect_type) && !in_array($redirect_type, array('slash_redirect', 'duplicated_slash_redirect'))) {
718
  $current_uri = trim($wp->request, "/");
719
  $redirect_uri = trim(parse_url($correct_permalink, PHP_URL_PATH), "/");
720
 
714
  /**
715
  * 3. Prevent redirect loop
716
  */
717
+ if(!empty($correct_permalink) && is_string($correct_permalink) && !empty($wp->request) && !empty($redirect_type) && $redirect_type !== 'slash_redirect') {
718
  $current_uri = trim($wp->request, "/");
719
  $redirect_uri = trim(parse_url($correct_permalink, PHP_URL_PATH), "/");
720
 
includes/core/permalink-manager-third-parties.php CHANGED
@@ -109,7 +109,7 @@ class Permalink_Manager_Third_Parties extends Permalink_Manager_Class {
109
 
110
  // 11. WP All Export
111
  if(class_exists('PMXE_Plugin') && (!empty($permalink_manager_options['general']['pmxi_support']))) {
112
- add_filter('wp_all_export_available_sections', array($this, 'wpae_custom_uri_section'), 9);
113
  add_filter('wp_all_export_available_data', array($this, 'wpae_custom_uri_section_fields'), 9);
114
  add_filter('wp_all_export_csv_rows', array($this,'wpae_export_custom_uri'), 10, 2);
115
  }
@@ -236,10 +236,6 @@ class Permalink_Manager_Third_Parties extends Permalink_Manager_Class {
236
  else if(!empty($_POST['_cs_nonce'])) {
237
  $wp_query->query_vars['do_not_redirect'] = 1;
238
  }
239
- // Tutor LMS
240
- else if(!empty($query_vars['tutor_dashboard_page'])) {
241
- $wp_query->query_vars['do_not_redirect'] = 1;
242
- }
243
  }
244
 
245
  // WPForo
@@ -1023,27 +1019,9 @@ class Permalink_Manager_Third_Parties extends Permalink_Manager_Class {
1023
  }
1024
 
1025
  function wpae_export_custom_uri($articles, $options) {
1026
- if((!empty($options['selected_post_type']) && $options['selected_post_type'] == 'taxonomies') || !empty($options['is_taxonomy_export'])) {
1027
- $is_term = true;
1028
- } else {
1029
- $is_term = false;
1030
- }
1031
-
1032
  foreach($articles as &$article) {
1033
  if(!empty($article['id'])) {
1034
- $item_id = $article['id'];
1035
- } else if(!empty($article['ID'])) {
1036
- $item_id = $article['ID'];
1037
- } else if(!empty($article['Term ID'])) {
1038
- $item_id = $article['Term ID'];
1039
- } else {
1040
- continue;
1041
- }
1042
-
1043
- if(!empty($is_term)) {
1044
- $article['Custom URI'] = Permalink_Manager_URI_Functions_Tax::get_term_uri($item_id);
1045
- } else {
1046
- $article['Custom URI'] = Permalink_Manager_URI_Functions_Post::get_post_uri($item_id);
1047
  }
1048
  }
1049
 
109
 
110
  // 11. WP All Export
111
  if(class_exists('PMXE_Plugin') && (!empty($permalink_manager_options['general']['pmxi_support']))) {
112
+ add_filter('pmxe_available_sections', array($this, 'wpae_custom_uri_section'), 9);
113
  add_filter('wp_all_export_available_data', array($this, 'wpae_custom_uri_section_fields'), 9);
114
  add_filter('wp_all_export_csv_rows', array($this,'wpae_export_custom_uri'), 10, 2);
115
  }
236
  else if(!empty($_POST['_cs_nonce'])) {
237
  $wp_query->query_vars['do_not_redirect'] = 1;
238
  }
 
 
 
 
239
  }
240
 
241
  // WPForo
1019
  }
1020
 
1021
  function wpae_export_custom_uri($articles, $options) {
 
 
 
 
 
 
1022
  foreach($articles as &$article) {
1023
  if(!empty($article['id'])) {
1024
+ $article['Custom URI'] = Permalink_Manager_URI_Functions_Post::get_post_uri($article['id']);
 
 
 
 
 
 
 
 
 
 
 
 
1025
  }
1026
  }
1027
 
includes/views/permalink-manager-settings.php CHANGED
@@ -193,9 +193,9 @@ class Permalink_Manager_Settings extends Permalink_Manager_Class {
193
  ),
194
  'pmxi_support' => array(
195
  'type' => 'single_checkbox',
196
- 'label' => __('WP All Import/Export support', 'permalink-manager'),
197
  'input_class' => '',
198
- 'class_exists' => array('PMXI_Plugin', 'PMXE_Plugin'),
199
  'description' => __('If disabled, the custom permalinks <strong>will not be saved</strong> for the posts imported with WP All Import plugin.', 'permalink-manager')
200
  ),
201
  'um_support' => array(
193
  ),
194
  'pmxi_support' => array(
195
  'type' => 'single_checkbox',
196
+ 'label' => __('WP All Import support', 'permalink-manager'),
197
  'input_class' => '',
198
+ 'class_exists' => 'PMXI_Plugin',
199
  'description' => __('If disabled, the custom permalinks <strong>will not be saved</strong> for the posts imported with WP All Import plugin.', 'permalink-manager')
200
  ),
201
  'um_support' => array(
permalink-manager.php CHANGED
@@ -1,10 +1,10 @@
1
  <?php
2
 
3
  /**
4
- * Plugin Name: Permalink Manager Pro
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.19.3.1
8
  * Author: Maciej Bis
9
  * Author URI: http://maciejbis.net/
10
  * License: GPL-2.0+
@@ -12,7 +12,7 @@
12
  * Text Domain: permalink-manager
13
  * Domain Path: /languages
14
  * WC requires at least: 3.0.0
15
- * WC tested up to: 6.8.0
16
  */
17
 
18
  // If this file is called directly or plugin is already defined, abort.
@@ -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.19.3.1' );
29
  define( 'PERMALINK_MANAGER_FILE', __FILE__ );
30
  define( 'PERMALINK_MANAGER_DIR', untrailingslashit(dirname(__FILE__)) );
31
  define( 'PERMALINK_MANAGER_BASENAME', plugin_basename(__FILE__));
1
  <?php
2
 
3
  /**
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.19.3
8
  * Author: Maciej Bis
9
  * Author URI: http://maciejbis.net/
10
  * License: GPL-2.0+
12
  * Text Domain: permalink-manager
13
  * Domain Path: /languages
14
  * WC requires at least: 3.0.0
15
+ * WC tested up to: 6.9.1
16
  */
17
 
18
  // If this file is called directly or plugin is already defined, abort.
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.19.3' );
29
  define( 'PERMALINK_MANAGER_FILE', __FILE__ );
30
  define( 'PERMALINK_MANAGER_DIR', untrailingslashit(dirname(__FILE__)) );
31
  define( 'PERMALINK_MANAGER_BASENAME', plugin_basename(__FILE__));