Version Description
- Fix : Sitemap categories not properly added
- Fix : Broken link display column header
- Fix : Render meta description on frontend
Download this release
Release Info
Developer | JoomUnited |
Plugin | ![]() |
Version | 3.7.1 |
Comparing to | |
See all releases |
Code changes from version 3.7.0 to 3.7.1
- inc/class.metaseo-broken-link-table.php +4 -4
- inc/class.metaseo-content-list-table.php +1 -1
- inc/class.metaseo-opengraph.php +18 -20
- inc/class.metaseo-snippet-preview.php +4 -2
- inc/pages/content-meta.php +1 -1
- inc/pages/sitemaps/metaseo-google-sitemap.php +9 -2
- inc/pages/sitemaps/metaseo-source_posts.php +4 -4
- languages/wp-meta-seo-en_US.mo +0 -0
- readme.txt +7 -2
- wp-meta-seo.php +24 -23
inc/class.metaseo-broken-link-table.php
CHANGED
@@ -106,7 +106,7 @@ class MetaSeoBrokenLinkTable extends WP_List_Table
|
|
106 |
'col_hit' => __('Hits number', 'wp-meta-seo'),
|
107 |
'col_status' => __('Status', 'wp-meta-seo'),
|
108 |
'col_link_text' => __('Type or Link text', 'wp-meta-seo'),
|
109 |
-
'col_source' => __('Source', 'wp-meta-seo')
|
110 |
);
|
111 |
}
|
112 |
|
@@ -189,6 +189,7 @@ class MetaSeoBrokenLinkTable extends WP_List_Table
|
|
189 |
$class[] = 'sortable';
|
190 |
$class[] = $desc_first ? 'asc' : 'desc';
|
191 |
}
|
|
|
192 |
$hr = esc_url(add_query_arg(compact('orderby', 'order'), $current_url));
|
193 |
$column_name = '<a href="' . $hr . '">';
|
194 |
$column_name .= '<span>' . $column_display_name . '</span>';
|
@@ -203,9 +204,9 @@ class MetaSeoBrokenLinkTable extends WP_List_Table
|
|
203 |
}
|
204 |
|
205 |
if ($column_key === 'cb') {
|
206 |
-
echo "<th scope='col' $id $class style='padding:8px 10px;'>$
|
207 |
} else {
|
208 |
-
echo "<th scope='col' $id $class $style colspan=\"3\">$
|
209 |
}
|
210 |
}
|
211 |
}
|
@@ -280,7 +281,6 @@ class MetaSeoBrokenLinkTable extends WP_List_Table
|
|
280 |
$hidden = array();
|
281 |
$sortable = $this->get_sortable_columns();
|
282 |
$this->_column_headers = array($columns, $hidden, $sortable);
|
283 |
-
|
284 |
$query = "SELECT * FROM " . $wpdb->prefix . "wpms_links WHERE " . implode(' AND ', $where) . $orderStr;
|
285 |
if (!empty($_REQUEST['metaseo_broken_link_per_page'])) {
|
286 |
$_per_page = intval($_REQUEST['metaseo_broken_link_per_page']);
|
106 |
'col_hit' => __('Hits number', 'wp-meta-seo'),
|
107 |
'col_status' => __('Status', 'wp-meta-seo'),
|
108 |
'col_link_text' => __('Type or Link text', 'wp-meta-seo'),
|
109 |
+
'col_source' => __('Source', 'wp-meta-seo')
|
110 |
);
|
111 |
}
|
112 |
|
189 |
$class[] = 'sortable';
|
190 |
$class[] = $desc_first ? 'asc' : 'desc';
|
191 |
}
|
192 |
+
|
193 |
$hr = esc_url(add_query_arg(compact('orderby', 'order'), $current_url));
|
194 |
$column_name = '<a href="' . $hr . '">';
|
195 |
$column_name .= '<span>' . $column_display_name . '</span>';
|
204 |
}
|
205 |
|
206 |
if ($column_key === 'cb') {
|
207 |
+
echo "<th scope='col' $id $class style='padding:8px 10px;'>$column_display_name</th>";
|
208 |
} else {
|
209 |
+
echo "<th scope='col' $id $class $style colspan=\"3\">$column_display_name</th>";
|
210 |
}
|
211 |
}
|
212 |
}
|
281 |
$hidden = array();
|
282 |
$sortable = $this->get_sortable_columns();
|
283 |
$this->_column_headers = array($columns, $hidden, $sortable);
|
|
|
284 |
$query = "SELECT * FROM " . $wpdb->prefix . "wpms_links WHERE " . implode(' AND ', $where) . $orderStr;
|
285 |
if (!empty($_REQUEST['metaseo_broken_link_per_page'])) {
|
286 |
$_per_page = intval($_REQUEST['metaseo_broken_link_per_page']);
|
inc/class.metaseo-content-list-table.php
CHANGED
@@ -365,7 +365,7 @@ class MetaSeoContentListTable extends WP_List_Table
|
|
365 |
WHERE meta_key = '_metaseo_metadesc') md ON md.post_id = $wpdb->posts.ID "
|
366 |
. " LEFT JOIN (SELECT * FROM $wpdb->postmeta
|
367 |
WHERE meta_key = '_metaseo_metakeywords') mk ON mk.post_id = $wpdb->posts.ID "
|
368 |
-
. " WHERE " . implode(' AND ', $where)
|
369 |
|
370 |
$total_items = $wpdb->get_var($query);
|
371 |
$query = "SELECT DISTINCT ID, post_title, post_name, post_type, post_status,
|
365 |
WHERE meta_key = '_metaseo_metadesc') md ON md.post_id = $wpdb->posts.ID "
|
366 |
. " LEFT JOIN (SELECT * FROM $wpdb->postmeta
|
367 |
WHERE meta_key = '_metaseo_metakeywords') mk ON mk.post_id = $wpdb->posts.ID "
|
368 |
+
. " WHERE " . implode(' AND ', $where);
|
369 |
|
370 |
$total_items = $wpdb->get_var($query);
|
371 |
$query = "SELECT DISTINCT ID, post_title, post_name, post_type, post_status,
|
inc/class.metaseo-opengraph.php
CHANGED
@@ -43,7 +43,7 @@ class MetaSeoOpenGraph
|
|
43 |
$meta_title = $post->post_title;
|
44 |
}
|
45 |
|
46 |
-
return $meta_title;
|
47 |
}
|
48 |
|
49 |
/**
|
@@ -63,7 +63,7 @@ class MetaSeoOpenGraph
|
|
63 |
}
|
64 |
}
|
65 |
|
66 |
-
return $meta_title_esc;
|
67 |
}
|
68 |
|
69 |
/**
|
@@ -79,7 +79,7 @@ class MetaSeoOpenGraph
|
|
79 |
$meta_keywords = get_post_meta($id, '_metaseo_metakeywords', true);
|
80 |
$keywords = esc_attr($meta_keywords);
|
81 |
}
|
82 |
-
return $keywords;
|
83 |
}
|
84 |
|
85 |
/**
|
@@ -91,30 +91,28 @@ class MetaSeoOpenGraph
|
|
91 |
*/
|
92 |
public function getDesc($settings, $id, $content)
|
93 |
{
|
94 |
-
$
|
95 |
-
if ($
|
96 |
-
$
|
97 |
}
|
98 |
|
99 |
-
if ($
|
100 |
$content = strip_shortcodes($content);
|
101 |
$content = trim(strip_tags($content));
|
102 |
if (strlen($content) > MPMSCAT_DESC_LENGTH) {
|
103 |
-
$
|
104 |
} else {
|
105 |
-
$
|
106 |
}
|
107 |
}
|
108 |
|
109 |
-
$meta_desc_esc = esc_attr($meta_description);
|
110 |
-
|
111 |
if (get_post_meta($id, '_metaseo_metadesc', true) == '' && is_front_page()) {
|
112 |
$meta_desc_esc = esc_attr($settings['metaseo_desc_home']);
|
113 |
if ($meta_desc_esc != maybe_unserialize($meta_desc_esc)) {
|
114 |
$meta_desc_esc = '';
|
115 |
}
|
116 |
}
|
117 |
-
return $meta_desc_esc;
|
118 |
}
|
119 |
|
120 |
/**
|
@@ -134,7 +132,7 @@ class MetaSeoOpenGraph
|
|
134 |
$meta_fbtitle = $meta_title_esc;
|
135 |
}
|
136 |
|
137 |
-
return $meta_fbtitle;
|
138 |
}
|
139 |
|
140 |
/**
|
@@ -154,7 +152,7 @@ class MetaSeoOpenGraph
|
|
154 |
$meta_fbdesc = $meta_desc_esc;
|
155 |
}
|
156 |
|
157 |
-
return $meta_fbdesc;
|
158 |
}
|
159 |
|
160 |
/**
|
@@ -197,7 +195,7 @@ class MetaSeoOpenGraph
|
|
197 |
$meta_twtitle = $meta_title_esc;
|
198 |
}
|
199 |
|
200 |
-
return $meta_twtitle;
|
201 |
}
|
202 |
|
203 |
/**
|
@@ -218,7 +216,7 @@ class MetaSeoOpenGraph
|
|
218 |
$meta_twdesc = $meta_desc_esc;
|
219 |
}
|
220 |
|
221 |
-
return $meta_twdesc;
|
222 |
}
|
223 |
|
224 |
/**
|
@@ -306,8 +304,8 @@ class MetaSeoOpenGraph
|
|
306 |
$page_follow = get_post_meta($mpage_on_front, '_metaseo_metafollow', true);
|
307 |
$page_index = get_post_meta($mpage_on_front, '_metaseo_metaindex', true);
|
308 |
return array(
|
309 |
-
'title' => $title,
|
310 |
-
'desc' => $desc,
|
311 |
'page_follow' => $page_follow,
|
312 |
'page_index' => $page_index,
|
313 |
);
|
@@ -359,8 +357,8 @@ class MetaSeoOpenGraph
|
|
359 |
}
|
360 |
|
361 |
return array(
|
362 |
-
'title' => $title,
|
363 |
-
'desc' => $desc,
|
364 |
'keyword' => $meta_keywords_esc
|
365 |
);
|
366 |
}
|
43 |
$meta_title = $post->post_title;
|
44 |
}
|
45 |
|
46 |
+
return esc_html($meta_title);
|
47 |
}
|
48 |
|
49 |
/**
|
63 |
}
|
64 |
}
|
65 |
|
66 |
+
return esc_html($meta_title_esc);
|
67 |
}
|
68 |
|
69 |
/**
|
79 |
$meta_keywords = get_post_meta($id, '_metaseo_metakeywords', true);
|
80 |
$keywords = esc_attr($meta_keywords);
|
81 |
}
|
82 |
+
return esc_html($keywords);
|
83 |
}
|
84 |
|
85 |
/**
|
91 |
*/
|
92 |
public function getDesc($settings, $id, $content)
|
93 |
{
|
94 |
+
$meta_desc_esc = get_post_meta($id, '_metaseo_metadesc', true);
|
95 |
+
if ($meta_desc_esc != maybe_unserialize($meta_desc_esc)) {
|
96 |
+
$meta_desc_esc = '';
|
97 |
}
|
98 |
|
99 |
+
if ($meta_desc_esc == '') {
|
100 |
$content = strip_shortcodes($content);
|
101 |
$content = trim(strip_tags($content));
|
102 |
if (strlen($content) > MPMSCAT_DESC_LENGTH) {
|
103 |
+
$meta_desc_esc = substr($content, 0, 316) . ' ...';
|
104 |
} else {
|
105 |
+
$meta_desc_esc = $content;
|
106 |
}
|
107 |
}
|
108 |
|
|
|
|
|
109 |
if (get_post_meta($id, '_metaseo_metadesc', true) == '' && is_front_page()) {
|
110 |
$meta_desc_esc = esc_attr($settings['metaseo_desc_home']);
|
111 |
if ($meta_desc_esc != maybe_unserialize($meta_desc_esc)) {
|
112 |
$meta_desc_esc = '';
|
113 |
}
|
114 |
}
|
115 |
+
return esc_html($meta_desc_esc);
|
116 |
}
|
117 |
|
118 |
/**
|
132 |
$meta_fbtitle = $meta_title_esc;
|
133 |
}
|
134 |
|
135 |
+
return esc_html($meta_fbtitle);
|
136 |
}
|
137 |
|
138 |
/**
|
152 |
$meta_fbdesc = $meta_desc_esc;
|
153 |
}
|
154 |
|
155 |
+
return esc_html($meta_fbdesc);
|
156 |
}
|
157 |
|
158 |
/**
|
195 |
$meta_twtitle = $meta_title_esc;
|
196 |
}
|
197 |
|
198 |
+
return esc_html($meta_twtitle);
|
199 |
}
|
200 |
|
201 |
/**
|
216 |
$meta_twdesc = $meta_desc_esc;
|
217 |
}
|
218 |
|
219 |
+
return esc_html($meta_twdesc);
|
220 |
}
|
221 |
|
222 |
/**
|
304 |
$page_follow = get_post_meta($mpage_on_front, '_metaseo_metafollow', true);
|
305 |
$page_index = get_post_meta($mpage_on_front, '_metaseo_metaindex', true);
|
306 |
return array(
|
307 |
+
'title' => esc_html($title),
|
308 |
+
'desc' => esc_html($desc),
|
309 |
'page_follow' => $page_follow,
|
310 |
'page_index' => $page_index,
|
311 |
);
|
357 |
}
|
358 |
|
359 |
return array(
|
360 |
+
'title' => esc_html($title),
|
361 |
+
'desc' => esc_html($desc),
|
362 |
'keyword' => $meta_keywords_esc
|
363 |
);
|
364 |
}
|
inc/class.metaseo-snippet-preview.php
CHANGED
@@ -116,11 +116,13 @@ class WPMSEOSnippetPreview
|
|
116 |
protected function setSlug()
|
117 |
{
|
118 |
$frontpage_post_id = (int)(get_option('page_on_front'));
|
119 |
-
|
120 |
if (is_object($this->post) && isset($this->post->post_name) && $this->post->post_name !== ''
|
121 |
&& $this->post->ID !== $frontpage_post_id) {
|
122 |
$this->slug = sanitize_title($this->title);
|
123 |
-
|
|
|
|
|
124 |
}
|
125 |
}
|
126 |
|
116 |
protected function setSlug()
|
117 |
{
|
118 |
$frontpage_post_id = (int)(get_option('page_on_front'));
|
119 |
+
$permalink_structure = get_option('permalink_structure');
|
120 |
if (is_object($this->post) && isset($this->post->post_name) && $this->post->post_name !== ''
|
121 |
&& $this->post->ID !== $frontpage_post_id) {
|
122 |
$this->slug = sanitize_title($this->title);
|
123 |
+
if (!empty($permalink_structure)) {
|
124 |
+
$this->url .= esc_html($this->slug);
|
125 |
+
}
|
126 |
}
|
127 |
}
|
128 |
|
inc/pages/content-meta.php
CHANGED
@@ -62,7 +62,7 @@ if (!empty($_REQUEST['_wp_http_referer'])) {
|
|
62 |
});
|
63 |
|
64 |
$('.metaseo-metatitle').bind('input propertychange', function () {
|
65 |
-
metaseo_titlelength(this.id,
|
66 |
});
|
67 |
|
68 |
$('.metaseo-metatitle').blur(function () {
|
62 |
});
|
63 |
|
64 |
$('.metaseo-metatitle').bind('input propertychange', function () {
|
65 |
+
metaseo_titlelength(this.id, true);
|
66 |
});
|
67 |
|
68 |
$('.metaseo-metatitle').blur(function () {
|
inc/pages/sitemaps/metaseo-google-sitemap.php
CHANGED
@@ -51,5 +51,12 @@ $w = '99%';
|
|
51 |
$text = __('Bring your WordPress website SEO to the next level with the PRO Addon:
|
52 |
Sitemap for any custom post type, auto submission to the Google Search Console and more!', 'wp-meta-seo');
|
53 |
$class_btn_close = 'close_sitemap';
|
54 |
-
|
55 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
51 |
$text = __('Bring your WordPress website SEO to the next level with the PRO Addon:
|
52 |
Sitemap for any custom post type, auto submission to the Google Search Console and more!', 'wp-meta-seo');
|
53 |
$class_btn_close = 'close_sitemap';
|
54 |
+
if (!empty($_COOKIE['close_dashboard'])) {
|
55 |
+
$check = time() - (int)$_COOKIE['close_dashboard'];
|
56 |
+
$month = 30 * 24 * 60 * 60;
|
57 |
+
}
|
58 |
+
|
59 |
+
if ((empty($_COOKIE['close_dashboard']) || (!empty($_COOKIE['close_dashboard']) && $check >= $month))
|
60 |
+
&& !is_plugin_active(WPMSEO_ADDON_FILENAME)) {
|
61 |
+
require_once(WPMETASEO_PLUGIN_DIR . 'inc/pages/notification.php');
|
62 |
+
}
|
inc/pages/sitemaps/metaseo-source_posts.php
CHANGED
@@ -74,18 +74,18 @@
|
|
74 |
echo '<div class="wpms_row"><h3>';
|
75 |
echo '<div class="pure-checkbox">';
|
76 |
echo '<input for="' . $desclink_category_remove . '"
|
77 |
-
class="sitemap_addlink_categories" id="
|
78 |
type="checkbox" value="' . $post->cat_ID . '" checked>';
|
79 |
-
echo '<label for="
|
80 |
echo '</div>';
|
81 |
echo '</h3></div>';
|
82 |
} else {
|
83 |
echo '<div class="wpms_row"><h3>';
|
84 |
echo '<div class="pure-checkbox">';
|
85 |
echo '<input for="' . $desclink_category_remove . '"
|
86 |
-
class="sitemap_addlink_categories" id="
|
87 |
type="checkbox" value="' . $post->cat_ID . '">';
|
88 |
-
echo '<label for="
|
89 |
echo '</div>';
|
90 |
echo '</h3></div>';
|
91 |
}
|
74 |
echo '<div class="wpms_row"><h3>';
|
75 |
echo '<div class="pure-checkbox">';
|
76 |
echo '<input for="' . $desclink_category_remove . '"
|
77 |
+
class="sitemap_addlink_categories" id="sitemap_addlink_categories_' . $post->cat_ID . '"
|
78 |
type="checkbox" value="' . $post->cat_ID . '" checked>';
|
79 |
+
echo '<label for="sitemap_addlink_categories_' . $post->cat_ID . '">' . $post->cat_name . '</label>';
|
80 |
echo '</div>';
|
81 |
echo '</h3></div>';
|
82 |
} else {
|
83 |
echo '<div class="wpms_row"><h3>';
|
84 |
echo '<div class="pure-checkbox">';
|
85 |
echo '<input for="' . $desclink_category_remove . '"
|
86 |
+
class="sitemap_addlink_categories" id="sitemap_addlink_categories_' . $post->cat_ID . '"
|
87 |
type="checkbox" value="' . $post->cat_ID . '">';
|
88 |
+
echo '<label for="sitemap_addlink_categories_' . $post->cat_ID . '">' . $post->cat_name . '</label>';
|
89 |
echo '</div>';
|
90 |
echo '</h3></div>';
|
91 |
}
|
languages/wp-meta-seo-en_US.mo
CHANGED
Binary file
|
readme.txt
CHANGED
@@ -2,8 +2,8 @@
|
|
2 |
Contributors: JoomUnited
|
3 |
Tags: google, webmaster tools, keywords, meta, meta description, meta keywords, meta title, robots meta, search engine optimization, seo, wordpress seo, yahoo, image optimization, image resize, custom post seo, redirect, redirection, 301, broken link
|
4 |
Requires at least: 4.0
|
5 |
-
Tested up to: 4.9.
|
6 |
-
Stable tag: 3.7.
|
7 |
Requires PHP: 5.3
|
8 |
License: GPLv2 or later
|
9 |
License URI: http://www.gnu.org/licenses/gpl-2.0.html
|
@@ -276,6 +276,11 @@ Yes WP Meta SEO is compatible with Gutenberg editor since 3.7 version.
|
|
276 |
|
277 |
== Changelog ==
|
278 |
|
|
|
|
|
|
|
|
|
|
|
279 |
= 3.7.0 =
|
280 |
* Add : Compatible with Gutemberg editor
|
281 |
* Fix : Reload analysis in metabox
|
2 |
Contributors: JoomUnited
|
3 |
Tags: google, webmaster tools, keywords, meta, meta description, meta keywords, meta title, robots meta, search engine optimization, seo, wordpress seo, yahoo, image optimization, image resize, custom post seo, redirect, redirection, 301, broken link
|
4 |
Requires at least: 4.0
|
5 |
+
Tested up to: 4.9.6
|
6 |
+
Stable tag: 3.7.1
|
7 |
Requires PHP: 5.3
|
8 |
License: GPLv2 or later
|
9 |
License URI: http://www.gnu.org/licenses/gpl-2.0.html
|
276 |
|
277 |
== Changelog ==
|
278 |
|
279 |
+
= 3.7.1 =
|
280 |
+
* Fix : Sitemap categories not properly added
|
281 |
+
* Fix : Broken link display column header
|
282 |
+
* Fix : Render meta description on frontend
|
283 |
+
|
284 |
= 3.7.0 =
|
285 |
* Add : Compatible with Gutemberg editor
|
286 |
* Fix : Reload analysis in metabox
|
wp-meta-seo.php
CHANGED
@@ -4,7 +4,7 @@
|
|
4 |
* Plugin Name: WP Meta SEO
|
5 |
* Plugin URI: http://www.joomunited.com/wordpress-products/wp-meta-seo
|
6 |
* Description: WP Meta SEO is a plugin for WordPress to fill meta for content, images and main SEO info in a single view.
|
7 |
-
* Version: 3.7.
|
8 |
* Text Domain: wp-meta-seo
|
9 |
* Domain Path: /languages
|
10 |
* Author: JoomUnited
|
@@ -99,7 +99,7 @@ if (!defined('WPMSEO_VERSION')) {
|
|
99 |
/**
|
100 |
* plugin version
|
101 |
*/
|
102 |
-
define('WPMSEO_VERSION', '3.7.
|
103 |
}
|
104 |
|
105 |
if (!defined('WPMS_CLIENTID')) {
|
@@ -429,7 +429,7 @@ if (is_admin()) {
|
|
429 |
} else {
|
430 |
$id = $wp_query->post->ID;
|
431 |
}
|
432 |
-
|
433 |
$opengraph = new MetaSeoOpenGraph();
|
434 |
$meta_title = $opengraph->getTitle($is_shop, $id);
|
435 |
|
@@ -654,6 +654,7 @@ function wpmsTemplateRedirect()
|
|
654 |
'wpms_page_redirected' => 'none'
|
655 |
);
|
656 |
$wpms_settings_404 = get_option('wpms_settings_404');
|
|
|
657 |
if (is_array($wpms_settings_404)) {
|
658 |
$defaul_settings_404 = array_merge($defaul_settings_404, $wpms_settings_404);
|
659 |
}
|
@@ -703,30 +704,30 @@ function wpmsTemplateRedirect()
|
|
703 |
// redirect by rule
|
704 |
if (is_plugin_active(WPMSEO_ADDON_FILENAME)) {
|
705 |
$url = $_SERVER['REQUEST_URI'];
|
706 |
-
$
|
707 |
-
|
708 |
-
|
709 |
-
|
710 |
-
|
711 |
-
|
712 |
-
|
713 |
-
|
714 |
-
|
715 |
-
|
716 |
-
|
717 |
-
|
718 |
-
|
|
|
719 |
}
|
720 |
-
break;
|
721 |
}
|
722 |
-
}
|
723 |
|
724 |
-
|
725 |
-
|
726 |
-
|
|
|
|
|
|
|
727 |
}
|
728 |
-
wp_redirect($target, $status_redirect);
|
729 |
-
exit();
|
730 |
}
|
731 |
}
|
732 |
}
|
4 |
* Plugin Name: WP Meta SEO
|
5 |
* Plugin URI: http://www.joomunited.com/wordpress-products/wp-meta-seo
|
6 |
* Description: WP Meta SEO is a plugin for WordPress to fill meta for content, images and main SEO info in a single view.
|
7 |
+
* Version: 3.7.1
|
8 |
* Text Domain: wp-meta-seo
|
9 |
* Domain Path: /languages
|
10 |
* Author: JoomUnited
|
99 |
/**
|
100 |
* plugin version
|
101 |
*/
|
102 |
+
define('WPMSEO_VERSION', '3.7.1');
|
103 |
}
|
104 |
|
105 |
if (!defined('WPMS_CLIENTID')) {
|
429 |
} else {
|
430 |
$id = $wp_query->post->ID;
|
431 |
}
|
432 |
+
|
433 |
$opengraph = new MetaSeoOpenGraph();
|
434 |
$meta_title = $opengraph->getTitle($is_shop, $id);
|
435 |
|
654 |
'wpms_page_redirected' => 'none'
|
655 |
);
|
656 |
$wpms_settings_404 = get_option('wpms_settings_404');
|
657 |
+
|
658 |
if (is_array($wpms_settings_404)) {
|
659 |
$defaul_settings_404 = array_merge($defaul_settings_404, $wpms_settings_404);
|
660 |
}
|
704 |
// redirect by rule
|
705 |
if (is_plugin_active(WPMSEO_ADDON_FILENAME)) {
|
706 |
$url = $_SERVER['REQUEST_URI'];
|
707 |
+
if ($url != '/') {
|
708 |
+
$matches = false;
|
709 |
+
$sql = $wpdb->prepare("SELECT * FROM " . $wpdb->prefix . "wpms_links WHERE link_url != %s AND link_url LIKE %s", array('/', '%' .$url. '%'));
|
710 |
+
$all_links = $wpdb->get_results($sql);
|
711 |
+
$target = '';
|
712 |
+
$status_redirect = 302;
|
713 |
+
foreach ($all_links as $link) {
|
714 |
+
$link->link_url = str_replace('/*', '/(.*)', $link->link_url);
|
715 |
+
if ((@preg_match('@' . str_replace('@', '\\@', $link->link_url) . '@', $url, $matches) > 0) || (@preg_match('@' . str_replace('@', '\\@', $link->link_url) . '@', urldecode($url), $matches) > 0)) { // Check if our match wants this URL
|
716 |
+
$target = $link->link_url_redirect;
|
717 |
+
if ($link->type == 'add_custom') {
|
718 |
+
$status_redirect = $link->meta_title;
|
719 |
+
}
|
720 |
+
break;
|
721 |
}
|
|
|
722 |
}
|
|
|
723 |
|
724 |
+
if (!empty($target)) {
|
725 |
+
if (empty($status_redirect)) {
|
726 |
+
$status_redirect = 302;
|
727 |
+
}
|
728 |
+
wp_redirect($target, $status_redirect);
|
729 |
+
exit();
|
730 |
}
|
|
|
|
|
731 |
}
|
732 |
}
|
733 |
}
|