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 | 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
|
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.
|
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,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) &&
|
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('
|
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 |
-
$
|
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
|
197 |
'input_class' => '',
|
198 |
-
'class_exists' =>
|
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
|
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,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.
|
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
|
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__));
|