SEO Redirection Plugin - Version 9.1

Version Description

  • Important security fixes.
Download this release

Release Info

Developer osamaesh
Plugin Icon 128x128 SEO Redirection Plugin
Version 9.1
Comparing to
See all releases

Code changes from version 8.9 to 9.1

options/option_page_404.php CHANGED
@@ -21,6 +21,12 @@ if ($util->get('do_404_del') != '') {
21
  return;
22
  }
23
 
 
 
 
 
 
 
24
 
25
  if ($util->get('do_404_del') == 1) {
26
  $wpdb->query("delete from $table_name where ctime <= DATE_SUB(CURDATE(), INTERVAL 1 MONTH)");
@@ -43,6 +49,8 @@ if ($util->get_option_value('p404_discovery_status') != '1')
43
 
44
  $WPSR_get_current_parameters_ = $util->WPSR_get_current_parameters(array('search', 'page_num', 'add', 'edit'));
45
 
 
 
46
  ?>
47
 
48
  <script type="text/javascript">
@@ -73,7 +81,7 @@ $WPSR_get_current_parameters_ = $util->WPSR_get_current_parameters(array('search
73
  if (confirm('Are you sure you want to delete all 404 links?')) {
74
  var goto_url = decodeHtmlCharCodes("<?php echo sprintf('%s', esc_js($WPSR_get_current_parameters_)); ?>");
75
 
76
- window.location = goto_url + "&do_404_del=" + document.getElementById('del_404_option').value;
77
  }
78
  }
79
  </script>
21
  return;
22
  }
23
 
24
+ $WPSRnonce = $_REQUEST['_wpnonce'];
25
+
26
+ if ( ! wp_verify_nonce( $WPSRnonce, 'WPSRnonce' ) ) {
27
+ die( __( 'Security Error! Invalid Nonce.', 'seo-redirection' ) );
28
+ }
29
+
30
 
31
  if ($util->get('do_404_del') == 1) {
32
  $wpdb->query("delete from $table_name where ctime <= DATE_SUB(CURDATE(), INTERVAL 1 MONTH)");
49
 
50
  $WPSR_get_current_parameters_ = $util->WPSR_get_current_parameters(array('search', 'page_num', 'add', 'edit'));
51
 
52
+ $WPSRnonce = wp_create_nonce( 'WPSRnonce' );
53
+
54
  ?>
55
 
56
  <script type="text/javascript">
81
  if (confirm('Are you sure you want to delete all 404 links?')) {
82
  var goto_url = decodeHtmlCharCodes("<?php echo sprintf('%s', esc_js($WPSR_get_current_parameters_)); ?>");
83
 
84
+ window.location = goto_url + "&do_404_del=" + document.getElementById('del_404_option').value+"&_wpnonce=<?php echo sprintf('%s', esc_js($WPSRnonce)); ?>";
85
  }
86
  }
87
  </script>
options/option_page_history.php CHANGED
@@ -11,6 +11,18 @@ if ($util->get('del') != '') {
11
  }
12
 
13
  if ($util->get('del') == 'all') {
 
 
 
 
 
 
 
 
 
 
 
 
14
  c_clear_redirection_history();
15
 
16
  if ($util->there_is_cache() != '')
@@ -40,10 +52,13 @@ if ($util->get_option_value('history_status') != '1')
40
  <h3><?php _e("Redirection History", "seo-redirection"); ?>
41
  <hr>
42
  </h3>
 
 
 
43
  <div class="link_buttons">
44
  <table border="0" width="100%">
45
  <tr>
46
- <td width="150"><a href="<?php echo esc_url($rlink) ?>&del=all" class="button btn-custom btn-delete"><span style="padding-top: 3px;" class="dashicons dashicons-trash"></span>&nbsp;<?php _e("Clear History", "seo-redirection"); ?></a></td>
47
  <td align="right">
48
  <input onkeyup="if (event.keyCode == 13) go_search();" style="height: 30px; border-radius: 3px !important;" id="search" type="text" name="search" value="<?php echo htmlentities($util->get('search'), ENT_QUOTES) ?>" size="30">
49
  <a onclick="go_search()" href="#" class="button btn-custom btn-search"><span style="padding-top: 3px;" class="dashicons dashicons-search"></span>&nbsp;<?php _e("Search", "seo-redirection"); ?></a>
11
  }
12
 
13
  if ($util->get('del') == 'all') {
14
+
15
+
16
+ $WPSRnonce = $_REQUEST['_wpnonce'];
17
+
18
+ if ( ! wp_verify_nonce( $WPSRnonce, 'WPSRnonce' ) )
19
+ {
20
+ die( __( 'Security Error! Invalid Nonce.', 'seo-redirection' ) );
21
+ }else{
22
+ c_clear_redirection_history();
23
+ }
24
+
25
+
26
  c_clear_redirection_history();
27
 
28
  if ($util->there_is_cache() != '')
52
  <h3><?php _e("Redirection History", "seo-redirection"); ?>
53
  <hr>
54
  </h3>
55
+ <?php
56
+ $WPSRnonce = wp_create_nonce( 'WPSRnonce' );
57
+ ?>
58
  <div class="link_buttons">
59
  <table border="0" width="100%">
60
  <tr>
61
+ <td width="150"><a href="<?php echo esc_url($rlink) ?>&del=all&_wpnonce=<?php echo $WPSRnonce;?>" class="button btn-custom btn-delete"><span style="padding-top: 3px;" class="dashicons dashicons-trash"></span>&nbsp;<?php _e("Clear History", "seo-redirection"); ?></a></td>
62
  <td align="right">
63
  <input onkeyup="if (event.keyCode == 13) go_search();" style="height: 30px; border-radius: 3px !important;" id="search" type="text" name="search" value="<?php echo htmlentities($util->get('search'), ENT_QUOTES) ?>" size="30">
64
  <a onclick="go_search()" href="#" class="button btn-custom btn-search"><span style="padding-top: 3px;" class="dashicons dashicons-search"></span>&nbsp;<?php _e("Search", "seo-redirection"); ?></a>
options/option_page_history.php.bak DELETED
@@ -1,123 +0,0 @@
1
- <?php
2
- if (!defined('ABSPATH')) exit; // Exit if accessed directly
3
- global $wpdb, $table_prefix, $util;
4
- $table_name = $table_prefix . 'WP_SEO_Redirection_LOG';
5
- $rlink = $util->WPSR_get_current_parameters(array('search', 'page_num', 'add', 'edit'));
6
-
7
- if ($util->get('del') != '') {
8
- if ($util->get('del') == 'all') {
9
- c_clear_redirection_history();
10
-
11
- if ($util->there_is_cache() != '')
12
- $util->info_option_msg(__("You have a cache plugin installed", 'seo-redirection') . " <b>'" . $util->there_is_cache() . "'</b>, " . __("you have to clear cache after any changes to get the changes reflected immediately! ", 'seo-redirection'));
13
- }
14
- }
15
-
16
- if ($util->get_option_value('history_status') != '1')
17
- $util->info_option_msg(__("Redirection history property is disabled now!, you can re-enable it from options tab.", 'seo-redirection'));
18
-
19
- ?>
20
-
21
- <script type="text/javascript">
22
- //---------------------------------------------------------
23
- function go_search() {
24
- var sword = document.getElementById('search').value;
25
- if (sword != '') {
26
- window.location = "<?php echo esc_url($rlink) ?>&search=" + sword;
27
- } else {
28
- alert('<?php _e("Please input any search words!", "seo-redirection") ?>');
29
- document.getElementById('search').focus();
30
- }
31
-
32
- }
33
- </script>
34
-
35
- <h3><?php _e("Redirection History", "seo-redirection"); ?>
36
- <hr>
37
- </h3>
38
- <div class="link_buttons">
39
- <table border="0" width="100%">
40
- <tr>
41
- <td width="150"><a href="<?php echo esc_url($rlink) ?>&del=all" class="button btn-custom btn-delete"><span style="padding-top: 3px;" class="dashicons dashicons-trash"></span>&nbsp;<?php _e("Clear History", "seo-redirection"); ?></a></td>
42
- <td align="right">
43
- <input onkeyup="if (event.keyCode == 13) go_search();" style="height: 30px; border-radius: 3px !important;" id="search" type="text" name="search" value="<?php echo htmlentities($util->get('search'), ENT_QUOTES) ?>" size="30">
44
- <a onclick="go_search()" href="#" class="button btn-custom btn-search"><span style="padding-top: 3px;" class="dashicons dashicons-search"></span>&nbsp;<?php _e("Search", "seo-redirection"); ?></a>
45
- <a href="<?php echo esc_url($util->WPSR_get_current_parameters('search')) ?>" class="button btn-custom btn-search"><span style="padding-top: 3px;" class="dashicons dashicons-screenoptions"></span>&nbsp;<?php _e("Show All", "seo-redirection"); ?></a>
46
- </td>
47
- </tr>
48
- </table>
49
- </div>
50
-
51
- <?php
52
-
53
-
54
- $grid = new datagrid();
55
- $grid->set_data_source($table_name);
56
- $grid->set_table_attr('class', 'wp-list-table widefat fixed striped');
57
- $grid->set_order(" ID desc ");
58
-
59
- if ($util->get('search') != '') {
60
- $search = $util->get('search');
61
-
62
- $grid->set_filter(" rfrom like '%%$search%%' or rto like '%%$search%%' or ctime like '%%$search%%'
63
- or referrer like '%%$search%%' or country like '%%$search%%' or ip like '%%$search%%'
64
- or os like '%%$search%%' or browser like '%%$search%%' or rsrc like '%%$search%%' or rtype like '%%$search%%'
65
- ");
66
- }
67
-
68
- $grid->add_select_field('rID');
69
- $grid->add_select_field('postID');
70
- $grid->add_select_field('referrer');
71
- $grid->add_select_field('ip');
72
- $grid->add_select_field('os');
73
- $grid->add_select_field('browser');
74
- $grid->add_select_field('rsrc');
75
- $grid->add_select_field('rfrom');
76
- $grid->add_select_field('rto');
77
- $grid->add_select_field('ctime');
78
-
79
- $grid->set_table_attr('width', '100%');
80
- $grid->set_col_attr(1, 'width', '120px');
81
- $grid->set_col_attr(3, 'width', '20px');
82
- $grid->set_col_attr(3, 'align', 'center');
83
- $grid->set_col_attr(4, 'width', '20px');
84
- $grid->set_col_attr(4, 'align', 'center');
85
- $grid->set_col_attr(7, 'width', '30px');
86
- $grid->set_col_attr(7, 'align', 'center');
87
- $grid->set_col_attr(6, 'width', '75px');
88
- $grid->set_col_attr(5, 'width', '130px');
89
-
90
- $grid->set_col_attr(1, 'width', '90px', 'header');
91
- $grid->set_col_attr(3, 'width', '40px', 'header');
92
- $grid->set_col_attr(4, 'width', '40px', 'header');
93
- $grid->set_col_attr(5, 'width', '125px', 'header');
94
- $grid->set_col_attr(6, 'width', '120px', 'header');
95
- $grid->set_col_attr(7, 'width', '50px', 'header');
96
-
97
- $grid->add_php_col('db_date_y<br/>db_date_h', __('Time', 'seo-redirection'));
98
-
99
- $grid->add_php_col("<div class='arrow_from'><a target='_blank' href='db_rfrom_url'>db_rfrom</a></div><div class='arrow_to'><a target='_blank' href='db_rto_url'>db_rto</a></div>", __('Redirection', 'seo-redirection'));
100
- $grid->add_data_col('rtype', 'Type');
101
- $grid->add_php_col('db_referrer_var', __('Ref', 'seo-redirection'));
102
-
103
-
104
-
105
- if ($util->get_option_value('ip_logging_status') == 0) {
106
- $grid->add_html_col('--', __('IP', 'seo-redirection'));
107
- } else if ($util->get_option_value('ip_logging_status') == 1) {
108
- $grid->add_html_col('<a target="_blank" href="https://tools.keycdn.com/geo?host={db_ip}">{db_ip}</a>', __('IP', 'seo-redirection'));
109
- } else {
110
-
111
- $grid->add_php_col('db_ip', __('IP', 'seo-redirection'));
112
- }
113
-
114
-
115
- $grid->add_html_col('{db_os}<br/>{db_browser}', __('Agent', 'seo-redirection'));
116
-
117
- $grid->add_php_col('db_rsrc_custom', __('Class', 'seo-redirection'));
118
-
119
-
120
- $grid->run();
121
-
122
-
123
- ?>
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
readme.txt CHANGED
@@ -2,8 +2,8 @@
2
  Contributors: wp-buy, osama.esh
3
  Tags: post, admin, seo, pages, manage, 301, 404, soft 404, redirect, permalink, redirection, redirection, https, automatic redirection, htaccess, ssl, https redirection, ssl certificate, secure page, secure, force ssl, force https, seo redirection, post redirect, 404 to 301
4
  Requires at least: 4.1
5
- Tested up to: 6.0
6
- Stable tag: 8.9
7
 
8
  SEO Redirection is a powerful redirect manager to manage 301 redirects without requiring knowledge of Apache .htaccess files.
9
 
@@ -75,8 +75,12 @@ Yes, here is the plugin full knowledge base http://www.clogica.com/kb/
75
 
76
  == Changelog ==
77
 
 
 
 
 
78
  = 8.9 =
79
- * IBug fixing in reading htaccess file
80
 
81
  = 8.8 =
82
  * Important security fixes.
2
  Contributors: wp-buy, osama.esh
3
  Tags: post, admin, seo, pages, manage, 301, 404, soft 404, redirect, permalink, redirection, redirection, https, automatic redirection, htaccess, ssl, https redirection, ssl certificate, secure page, secure, force ssl, force https, seo redirection, post redirect, 404 to 301
4
  Requires at least: 4.1
5
+ Tested up to: 6.0.1
6
+ Stable tag: 9.1
7
 
8
  SEO Redirection is a powerful redirect manager to manage 301 redirects without requiring knowledge of Apache .htaccess files.
9
 
75
 
76
  == Changelog ==
77
 
78
+ = 9.1 =
79
+ * Important security fixes.
80
+
81
+
82
  = 8.9 =
83
+ * Bug fixing in reading htaccess file
84
 
85
  = 8.8 =
86
  * Important security fixes.
seo-redirection.php CHANGED
@@ -4,7 +4,7 @@ Plugin Name: SEO Redirection
4
  Plugin URI: https://www.wp-buy.com/product/seo-redirection-premium-wordpress-plugin/
5
  Description: By this plugin you can manage all your website redirection types easily.
6
  Author: wp-buy
7
- Version: 8.9
8
  Author URI: https://www.wp-buy.com
9
  Text Domain: seo-redirection
10
  */
4
  Plugin URI: https://www.wp-buy.com/product/seo-redirection-premium-wordpress-plugin/
5
  Description: By this plugin you can manage all your website redirection types easily.
6
  Author: wp-buy
7
+ Version: 9.1
8
  Author URI: https://www.wp-buy.com
9
  Text Domain: seo-redirection
10
  */