SEOPress - Version 4.4.0.7

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 Icon 128x128 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 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
- defined( 'ABSPATH' ) or die( 'Please don&rsquo;t call the plugin directly. Thanks :)' );
 
3
 
4
  //XML
5
 
6
  //Headers
7
  if (function_exists('seopress_sitemaps_headers')) {
8
- seopress_sitemaps_headers();
9
  }
10
 
11
  //WPML
12
- add_filter( 'wpml_get_home_url', 'seopress_remove_wpml_home_url_filter', 20, 5 );
13
 
14
  function seopress_xml_sitemap_author() {
15
- if( get_query_var( 'seopress_cpt') !== '' ) {
16
- $path = get_query_var( 'seopress_cpt');
17
- }
18
 
19
- $home_url = home_url().'/';
20
-
21
- if (function_exists('pll_home_url')) {
22
- $home_url = site_url().'/';
23
- }
24
 
25
- $home_url = apply_filters( 'seopress_sitemaps_home_url', $home_url );
 
 
26
 
27
- $seopress_sitemaps = '<?xml version="1.0" encoding="UTF-8"?>';
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
- 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();
 
 
 
71
 
 
 
 
1
  <?php
2
+
3
+ defined('ABSPATH') or exit('Please don&rsquo;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.6
8
  Requires PHP: 5.6
9
- Stable tag: 4.4.0.6
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.6
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.6');
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(PostTitle::NAME),
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
- $this->wooCommerceAnalytics->removeFromCart($sprintf, $cartKey);
 
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' => 'dc1b13e2afd276e8e283386d16f25b759614663a',
33
  'name' => 'wp-seopress/wp-seopress',
34
  ),
35
  'versions' =>
@@ -41,7 +41,7 @@ private static $installed = array (
41
  'aliases' =>
42
  array (
43
  ),
44
- 'reference' => 'dc1b13e2afd276e8e283386d16f25b759614663a',
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' => 'dc1b13e2afd276e8e283386d16f25b759614663a',
10
  'name' => 'wp-seopress/wp-seopress',
11
  ),
12
  'versions' =>
@@ -18,7 +18,7 @@
18
  'aliases' =>
19
  array (
20
  ),
21
- 'reference' => 'dc1b13e2afd276e8e283386d16f25b759614663a',
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
  );