Version Description
(05/03/2021) = * NEW WordPress 5.7 compatibility * INFO Improve UI * FIX Site Title default setting * FIX Automatic Product schema without WooCommerce * FIX seopress_mu_white_label_admin_title_callback warning in multisite setup * FIX JS error at checkout preventing users to remove products
Download this release
Release Info
Developer | rainbowgeek |
Plugin | SEOPress |
Version | 4.4.0.7 |
Comparing to | |
See all releases |
Code changes from version 4.4.0.6 to 4.4.0.7
- inc/admin/admin-wizard.php +2 -0
- inc/admin/admin.php +1 -0
- inc/functions/sitemap/template-xml-sitemaps-author.php +51 -52
- readme.txt +9 -2
- seopress.php +12 -14
- src/Actions/Options/Init.php +1 -1
- src/ManualHooks/Thirds/WooCommerce/WooCommerceAnalytics.php +2 -1
- src/Thirds/WooCommerce/WooCommerceAnalyticsService.php +2 -2
- vendor/composer/InstalledVersions.php +2 -2
- vendor/composer/installed.php +2 -2
inc/admin/admin-wizard.php
CHANGED
@@ -289,6 +289,8 @@ class SEOPRESS_Admin_Setup_Wizard {
|
|
289 |
|
290 |
<br><br>
|
291 |
|
|
|
|
|
292 |
<div class="store-address-container">
|
293 |
<!-- Yoast import tool -->
|
294 |
<div id="yoast-migration-tool" class="postbox section-tool seopress-wizard-services">
|
289 |
|
290 |
<br><br>
|
291 |
|
292 |
+
<p class="description"><?php _e('You don\'t have to enable the selected SEO plugin to run the import.', 'wp-seopress'); ?></p>
|
293 |
+
|
294 |
<div class="store-address-container">
|
295 |
<!-- Yoast import tool -->
|
296 |
<div id="yoast-migration-tool" class="postbox section-tool seopress-wizard-services">
|
inc/admin/admin.php
CHANGED
@@ -798,6 +798,7 @@ class seopress_options {
|
|
798 |
<option value="wpseo-migration-tool"><?php _e('wpSEO', 'wp-seopress'); ?></option>
|
799 |
</select>
|
800 |
<br><br>
|
|
|
801 |
</div>
|
802 |
<!-- Yoast import tool -->
|
803 |
<div id="yoast-migration-tool" class="postbox section-tool">
|
798 |
<option value="wpseo-migration-tool"><?php _e('wpSEO', 'wp-seopress'); ?></option>
|
799 |
</select>
|
800 |
<br><br>
|
801 |
+
<p class="description"><?php _e('You don\'t have to enable the selected SEO plugin to run the import.', 'wp-seopress'); ?></p>
|
802 |
</div>
|
803 |
<!-- Yoast import tool -->
|
804 |
<div id="yoast-migration-tool" class="postbox section-tool">
|
inc/functions/sitemap/template-xml-sitemaps-author.php
CHANGED
@@ -1,71 +1,70 @@
|
|
1 |
<?php
|
2 |
-
|
|
|
3 |
|
4 |
//XML
|
5 |
|
6 |
//Headers
|
7 |
if (function_exists('seopress_sitemaps_headers')) {
|
8 |
-
|
9 |
}
|
10 |
|
11 |
//WPML
|
12 |
-
add_filter(
|
13 |
|
14 |
function seopress_xml_sitemap_author() {
|
15 |
-
|
16 |
-
|
17 |
-
|
18 |
|
19 |
-
|
20 |
-
|
21 |
-
if (function_exists('pll_home_url')) {
|
22 |
-
$home_url = site_url().'/';
|
23 |
-
}
|
24 |
|
25 |
-
|
|
|
|
|
26 |
|
27 |
-
|
28 |
-
$seopress_sitemaps .='<?xml-stylesheet type="text/xsl" href="'.$home_url.'sitemaps_xsl.xsl"?>';
|
29 |
-
$seopress_sitemaps .= "\n";
|
30 |
-
$seopress_sitemaps .= apply_filters('seopress_sitemaps_urlset', '<urlset xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.sitemaps.org/schemas/sitemap/0.9 http://www.sitemaps.org/schemas/sitemap/0.9/sitemap.xsd" xmlns="http://www.sitemaps.org/schemas/sitemap/0.9">' );
|
31 |
-
$args = [
|
32 |
-
'fields' => 'ID',
|
33 |
-
'orderby' => 'nicename',
|
34 |
-
'order' => 'ASC',
|
35 |
-
'has_published_posts' =>
|
36 |
-
[ 'post' ],
|
37 |
-
'blog_id' => absint(get_current_blog_id()),
|
38 |
-
'lang' => ''
|
39 |
-
];
|
40 |
-
$args = apply_filters('seopress_sitemaps_author_query', $args);
|
41 |
-
|
42 |
-
$authorslist = get_users($args);
|
43 |
|
44 |
-
|
45 |
-
|
46 |
-
|
47 |
-
|
48 |
-
|
49 |
-
|
50 |
-
|
51 |
-
|
52 |
-
|
53 |
-
|
54 |
-
|
55 |
-
|
56 |
-
|
57 |
-
$seopress_sitemaps_url .= '</loc>';
|
58 |
-
$seopress_sitemaps_url .= "\n";
|
59 |
-
$seopress_sitemaps_url .= '</url>';
|
60 |
|
61 |
-
|
62 |
-
}
|
63 |
-
$seopress_sitemaps .= '</urlset>';
|
64 |
-
$seopress_sitemaps .= "\n";
|
65 |
|
66 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
67 |
|
68 |
-
|
69 |
-
}
|
70 |
-
|
|
|
|
|
|
|
71 |
|
|
|
|
|
|
1 |
<?php
|
2 |
+
|
3 |
+
defined('ABSPATH') or exit('Please don’t call the plugin directly. Thanks :)');
|
4 |
|
5 |
//XML
|
6 |
|
7 |
//Headers
|
8 |
if (function_exists('seopress_sitemaps_headers')) {
|
9 |
+
seopress_sitemaps_headers();
|
10 |
}
|
11 |
|
12 |
//WPML
|
13 |
+
add_filter('wpml_get_home_url', 'seopress_remove_wpml_home_url_filter', 20, 5);
|
14 |
|
15 |
function seopress_xml_sitemap_author() {
|
16 |
+
if ('' !== get_query_var('seopress_cpt')) {
|
17 |
+
$path = get_query_var('seopress_cpt');
|
18 |
+
}
|
19 |
|
20 |
+
$home_url = home_url() . '/';
|
|
|
|
|
|
|
|
|
21 |
|
22 |
+
if (function_exists('pll_home_url')) {
|
23 |
+
$home_url = site_url() . '/';
|
24 |
+
}
|
25 |
|
26 |
+
$home_url = apply_filters('seopress_sitemaps_home_url', $home_url);
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
27 |
|
28 |
+
$seopress_sitemaps = '<?xml version="1.0" encoding="UTF-8"?>';
|
29 |
+
$seopress_sitemaps .= '<?xml-stylesheet type="text/xsl" href="' . $home_url . 'sitemaps_xsl.xsl"?>';
|
30 |
+
$seopress_sitemaps .= "\n";
|
31 |
+
$seopress_sitemaps .= apply_filters('seopress_sitemaps_urlset', '<urlset xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.sitemaps.org/schemas/sitemap/0.9 http://www.sitemaps.org/schemas/sitemap/0.9/sitemap.xsd" xmlns="http://www.sitemaps.org/schemas/sitemap/0.9">');
|
32 |
+
$args = [
|
33 |
+
'fields' => 'ID',
|
34 |
+
'orderby' => 'nicename',
|
35 |
+
'order' => 'ASC',
|
36 |
+
'has_published_posts' => ['post'],
|
37 |
+
'blog_id' => absint(get_current_blog_id()),
|
38 |
+
'lang' => '',
|
39 |
+
];
|
40 |
+
$args = apply_filters('seopress_sitemaps_author_query', $args);
|
|
|
|
|
|
|
41 |
|
42 |
+
$authorslist = get_users($args);
|
|
|
|
|
|
|
43 |
|
44 |
+
foreach ($authorslist as $author) {
|
45 |
+
$seopress_sitemaps_url = '';
|
46 |
+
// array with all the information needed for a sitemap url
|
47 |
+
$seopress_url = [
|
48 |
+
'loc' => htmlspecialchars(urldecode(esc_url(get_author_posts_url($author)))),
|
49 |
+
'mod' => '',
|
50 |
+
'images' => [],
|
51 |
+
];
|
52 |
+
$seopress_sitemaps_url .= "\n";
|
53 |
+
$seopress_sitemaps_url .= '<url>';
|
54 |
+
$seopress_sitemaps_url .= "\n";
|
55 |
+
$seopress_sitemaps_url .= '<loc>';
|
56 |
+
$seopress_sitemaps_url .= $seopress_url['loc'];
|
57 |
+
$seopress_sitemaps_url .= '</loc>';
|
58 |
+
$seopress_sitemaps_url .= "\n";
|
59 |
+
$seopress_sitemaps_url .= '</url>';
|
60 |
|
61 |
+
$seopress_sitemaps .= apply_filters('seopress_sitemaps_url', $seopress_sitemaps_url, $seopress_url);
|
62 |
+
}
|
63 |
+
$seopress_sitemaps .= '</urlset>';
|
64 |
+
$seopress_sitemaps .= "\n";
|
65 |
+
|
66 |
+
$seopress_sitemaps = apply_filters('seopress_sitemaps_xml_author', $seopress_sitemaps);
|
67 |
|
68 |
+
return $seopress_sitemaps;
|
69 |
+
}
|
70 |
+
echo seopress_xml_sitemap_author();
|
readme.txt
CHANGED
@@ -4,9 +4,9 @@ Contributors: rainbowgeek, gmulti, juliobox, maigret, mgris
|
|
4 |
Donate link: https://www.seopress.org/
|
5 |
Tags: SEO, XML sitemap, meta title, open graph, content analysis, knowledge graph, redirection, breadcrumbs, google analytics, rich snippets, broken link checker, Schema.org
|
6 |
Requires at least: 4.7+
|
7 |
-
Tested up to: 5.
|
8 |
Requires PHP: 5.6
|
9 |
-
Stable tag: 4.4.0.
|
10 |
License: GPLv2 or later
|
11 |
License URI: https://www.gnu.org/licenses/gpl-2.0.html
|
12 |
|
@@ -320,6 +320,13 @@ You're theme is probably using a deprecated function to handle the title. <a hre
|
|
320 |
9. Schemas metabox
|
321 |
|
322 |
== Changelog ==
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
323 |
= 4.4.0.6 (26/02/2021) =
|
324 |
* INFO Improve UI by adding a new tab (Image SEO) to the Advanced settings page
|
325 |
* FIX Quick edit metadata from posts list
|
4 |
Donate link: https://www.seopress.org/
|
5 |
Tags: SEO, XML sitemap, meta title, open graph, content analysis, knowledge graph, redirection, breadcrumbs, google analytics, rich snippets, broken link checker, Schema.org
|
6 |
Requires at least: 4.7+
|
7 |
+
Tested up to: 5.7
|
8 |
Requires PHP: 5.6
|
9 |
+
Stable tag: 4.4.0.7
|
10 |
License: GPLv2 or later
|
11 |
License URI: https://www.gnu.org/licenses/gpl-2.0.html
|
12 |
|
320 |
9. Schemas metabox
|
321 |
|
322 |
== Changelog ==
|
323 |
+
= 4.4.0.7 (05/03/2021) =
|
324 |
+
* NEW WordPress 5.7 compatibility
|
325 |
+
* INFO Improve UI
|
326 |
+
* FIX Site Title default setting
|
327 |
+
* FIX Automatic Product schema without WooCommerce
|
328 |
+
* FIX seopress_mu_white_label_admin_title_callback warning in multisite setup
|
329 |
+
* FIX JS error at checkout preventing users to remove products
|
330 |
= 4.4.0.6 (26/02/2021) =
|
331 |
* INFO Improve UI by adding a new tab (Image SEO) to the Advanced settings page
|
332 |
* FIX Quick edit metadata from posts list
|
seopress.php
CHANGED
@@ -4,7 +4,7 @@ Plugin Name: SEOPress
|
|
4 |
Plugin URI: https://www.seopress.org/
|
5 |
Description: One of the best SEO plugins for WordPress.
|
6 |
Author: SEOPress
|
7 |
-
Version: 4.4.0.
|
8 |
Author URI: https://www.seopress.org/
|
9 |
License: GPLv2
|
10 |
Text Domain: wp-seopress
|
@@ -55,7 +55,7 @@ register_deactivation_hook(__FILE__, 'seopress_deactivation');
|
|
55 |
///////////////////////////////////////////////////////////////////////////////////////////////////
|
56 |
//Define
|
57 |
///////////////////////////////////////////////////////////////////////////////////////////////////
|
58 |
-
define('SEOPRESS_VERSION', '4.4.0.
|
59 |
define('SEOPRESS_AUTHOR', 'Benjamin Denis');
|
60 |
define('SEOPRESS_PLUGIN_DIR_PATH', plugin_dir_path(__FILE__));
|
61 |
define('SEOPRESS_TEMPLATE_DIR', SEOPRESS_PLUGIN_DIR_PATH . 'templates');
|
@@ -420,6 +420,16 @@ function seopress_admin_body_class($classes) {
|
|
420 |
return $classes;
|
421 |
}
|
422 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
423 |
///////////////////////////////////////////////////////////////////////////////////////////////////
|
424 |
//3rd plugins compatibility
|
425 |
///////////////////////////////////////////////////////////////////////////////////////////////////
|
@@ -1106,18 +1116,6 @@ function seopress_notification($args) {
|
|
1106 |
* @return (string)
|
1107 |
**/
|
1108 |
function seopress_capability($cap, $context = '') {
|
1109 |
-
/**
|
1110 |
-
* Filter the capability to allow other roles to use the plugin.
|
1111 |
-
*
|
1112 |
-
* @since 3.8.2
|
1113 |
-
*
|
1114 |
-
* @author Julio Potier
|
1115 |
-
*
|
1116 |
-
* @param (string) $cap
|
1117 |
-
* @param (string) $context
|
1118 |
-
*
|
1119 |
-
* @return (string)
|
1120 |
-
**/
|
1121 |
$newcap = apply_filters('seopress_capability', $cap, $context);
|
1122 |
if ( ! current_user_can($newcap)) {
|
1123 |
return $cap;
|
4 |
Plugin URI: https://www.seopress.org/
|
5 |
Description: One of the best SEO plugins for WordPress.
|
6 |
Author: SEOPress
|
7 |
+
Version: 4.4.0.7
|
8 |
Author URI: https://www.seopress.org/
|
9 |
License: GPLv2
|
10 |
Text Domain: wp-seopress
|
55 |
///////////////////////////////////////////////////////////////////////////////////////////////////
|
56 |
//Define
|
57 |
///////////////////////////////////////////////////////////////////////////////////////////////////
|
58 |
+
define('SEOPRESS_VERSION', '4.4.0.7');
|
59 |
define('SEOPRESS_AUTHOR', 'Benjamin Denis');
|
60 |
define('SEOPRESS_PLUGIN_DIR_PATH', plugin_dir_path(__FILE__));
|
61 |
define('SEOPRESS_TEMPLATE_DIR', SEOPRESS_PLUGIN_DIR_PATH . 'templates');
|
420 |
return $classes;
|
421 |
}
|
422 |
|
423 |
+
///////////////////////////////////////////////////////////////////////////////////////////////////
|
424 |
+
//WP compatibility
|
425 |
+
///////////////////////////////////////////////////////////////////////////////////////////////////
|
426 |
+
/**
|
427 |
+
* Remove WP default meta robots (added in WP 5.7)
|
428 |
+
*
|
429 |
+
* @since 4.4.0.7
|
430 |
+
*/
|
431 |
+
remove_filter( 'wp_robots', 'wp_robots_max_image_preview_large' );
|
432 |
+
|
433 |
///////////////////////////////////////////////////////////////////////////////////////////////////
|
434 |
//3rd plugins compatibility
|
435 |
///////////////////////////////////////////////////////////////////////////////////////////////////
|
1116 |
* @return (string)
|
1117 |
**/
|
1118 |
function seopress_capability($cap, $context = '') {
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1119 |
$newcap = apply_filters('seopress_capability', $cap, $context);
|
1120 |
if ( ! current_user_can($newcap)) {
|
1121 |
return $cap;
|
src/Actions/Options/Init.php
CHANGED
@@ -190,7 +190,7 @@ class Init implements ActivationHook {
|
|
190 |
|
191 |
//Site Title
|
192 |
$titleOptions = [
|
193 |
-
'seopress_titles_home_site_title' => TagCompose::getValueWithTag(
|
194 |
'seopress_titles_home_site_desc' => TagCompose::getValueWithTag(SiteTagline::NAME),
|
195 |
];
|
196 |
|
190 |
|
191 |
//Site Title
|
192 |
$titleOptions = [
|
193 |
+
'seopress_titles_home_site_title' => TagCompose::getValueWithTag(SiteTitle::NAME),
|
194 |
'seopress_titles_home_site_desc' => TagCompose::getValueWithTag(SiteTagline::NAME),
|
195 |
];
|
196 |
|
src/ManualHooks/Thirds/WooCommerce/WooCommerceAnalytics.php
CHANGED
@@ -76,7 +76,8 @@ class WooCommerceAnalytics {
|
|
76 |
if (apply_filters('seopress_fallback_woocommerce_analytics', false)) {
|
77 |
return;
|
78 |
}
|
79 |
-
|
|
|
80 |
}
|
81 |
|
82 |
/**
|
76 |
if (apply_filters('seopress_fallback_woocommerce_analytics', false)) {
|
77 |
return;
|
78 |
}
|
79 |
+
|
80 |
+
return $this->wooCommerceAnalytics->removeFromCart($sprintf, $cartKey);
|
81 |
}
|
82 |
|
83 |
/**
|
src/Thirds/WooCommerce/WooCommerceAnalyticsService.php
CHANGED
@@ -233,11 +233,11 @@ class WooCommerceAnalyticsService {
|
|
233 |
return;
|
234 |
}
|
235 |
|
236 |
-
gtag('event', 'remove_from_cart', {'items': " . json_encode($final) .
|
237 |
})
|
238 |
|
239 |
});
|
240 |
-
</script>
|
241 |
|
242 |
$js = apply_filters('seopress_gtag_ec_remove_from_cart_checkout_ev', $js, $final);
|
243 |
|
233 |
return;
|
234 |
}
|
235 |
|
236 |
+
gtag('event', 'remove_from_cart', {'items': " . json_encode($final) . '});
|
237 |
})
|
238 |
|
239 |
});
|
240 |
+
</script>';
|
241 |
|
242 |
$js = apply_filters('seopress_gtag_ec_remove_from_cart_checkout_ev', $js, $final);
|
243 |
|
vendor/composer/InstalledVersions.php
CHANGED
@@ -29,7 +29,7 @@ private static $installed = array (
|
|
29 |
'aliases' =>
|
30 |
array (
|
31 |
),
|
32 |
-
'reference' => '
|
33 |
'name' => 'wp-seopress/wp-seopress',
|
34 |
),
|
35 |
'versions' =>
|
@@ -41,7 +41,7 @@ private static $installed = array (
|
|
41 |
'aliases' =>
|
42 |
array (
|
43 |
),
|
44 |
-
'reference' => '
|
45 |
),
|
46 |
),
|
47 |
);
|
29 |
'aliases' =>
|
30 |
array (
|
31 |
),
|
32 |
+
'reference' => '04b62bb8945e4b2983cfc8d1230addc555371136',
|
33 |
'name' => 'wp-seopress/wp-seopress',
|
34 |
),
|
35 |
'versions' =>
|
41 |
'aliases' =>
|
42 |
array (
|
43 |
),
|
44 |
+
'reference' => '04b62bb8945e4b2983cfc8d1230addc555371136',
|
45 |
),
|
46 |
),
|
47 |
);
|
vendor/composer/installed.php
CHANGED
@@ -6,7 +6,7 @@
|
|
6 |
'aliases' =>
|
7 |
array (
|
8 |
),
|
9 |
-
'reference' => '
|
10 |
'name' => 'wp-seopress/wp-seopress',
|
11 |
),
|
12 |
'versions' =>
|
@@ -18,7 +18,7 @@
|
|
18 |
'aliases' =>
|
19 |
array (
|
20 |
),
|
21 |
-
'reference' => '
|
22 |
),
|
23 |
),
|
24 |
);
|
6 |
'aliases' =>
|
7 |
array (
|
8 |
),
|
9 |
+
'reference' => '04b62bb8945e4b2983cfc8d1230addc555371136',
|
10 |
'name' => 'wp-seopress/wp-seopress',
|
11 |
),
|
12 |
'versions' =>
|
18 |
'aliases' =>
|
19 |
array (
|
20 |
),
|
21 |
+
'reference' => '04b62bb8945e4b2983cfc8d1230addc555371136',
|
22 |
),
|
23 |
),
|
24 |
);
|