All in One SEO Pack - Version 2.3.10.2

Version Description

Download this release

Release Info

Developer hallsofmontezuma
Plugin Icon 128x128 All in One SEO Pack
Version 2.3.10.2
Comparing to
See all releases

Code changes from version 2.3.10.1 to 2.3.10.2

admin/display/dashboard_widget.php CHANGED
@@ -17,7 +17,8 @@ if ( ! class_exists( 'aioseop_dashboard_widget' ) ) {
17
  * @since 2.3.10
18
  */
19
  function aioseop_add_dashboard_widget() {
20
- if ( current_user_can( 'install_plugins' ) ) {
 
21
  wp_add_dashboard_widget( "semperplugins-rss-feed", __( 'SEO News', 'all-in-one-seo-pack' ), array(
22
  $this,
23
  'aioseop_display_rss_dashboard_widget',
@@ -26,6 +27,27 @@ if ( ! class_exists( 'aioseop_dashboard_widget' ) ) {
26
 
27
  }
28
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
29
  /**
30
  * @since 2.3.10
31
  */
@@ -40,7 +62,7 @@ if ( ! class_exists( 'aioseop_dashboard_widget' ) ) {
40
  echo '{Temporarily unable to load feed.}';
41
  return;
42
  }
43
- $rss_items = $rss->get_items( 0, 7 );
44
 
45
  $cached = array();
46
  foreach ( $rss_items as $item ) {
17
  * @since 2.3.10
18
  */
19
  function aioseop_add_dashboard_widget() {
20
+
21
+ if ( current_user_can( 'install_plugins' ) && false !== $this->show_widget() ) {
22
  wp_add_dashboard_widget( "semperplugins-rss-feed", __( 'SEO News', 'all-in-one-seo-pack' ), array(
23
  $this,
24
  'aioseop_display_rss_dashboard_widget',
27
 
28
  }
29
 
30
+ /**
31
+ * @since 2.3.10.2
32
+ */
33
+ function show_widget(){
34
+
35
+ $show = true;
36
+
37
+ if( apply_filters( 'aioseo_show_seo_news', true) === false ){
38
+ // API filter hook to disable showing SEO News dashboard widget.
39
+ return false;
40
+ }
41
+
42
+ global $aioseop_options;
43
+
44
+ if ( AIOSEOPPRO && isset( $aioseop_options['aiosp_showseonews'] ) && ! $aioseop_options['aiosp_showseonews'] ) {
45
+ return false;
46
+ }
47
+
48
+ return $show;
49
+ }
50
+
51
  /**
52
  * @since 2.3.10
53
  */
62
  echo '{Temporarily unable to load feed.}';
63
  return;
64
  }
65
+ $rss_items = $rss->get_items( 0, 4 ); // Show four items.
66
 
67
  $cached = array();
68
  foreach ( $rss_items as $item ) {
aioseop_class.php CHANGED
@@ -177,6 +177,7 @@ class All_in_One_SEO_Pack extends All_in_One_SEO_Pack_Module {
177
  'cpostactive' => __( 'Use these checkboxes to select which Post Types you want to use All in One SEO Pack with.', 'all-in-one-seo-pack' ),
178
  'taxactive' => __( 'Use these checkboxes to select which Taxonomies you want to use All in One SEO Pack with.', 'all-in-one-seo-pack' ),
179
  'cposttitles' => __( 'This allows you to set the title tags for each Custom Post Type.', 'all-in-one-seo-pack' ),
 
180
  'google_verify' => __( "Enter your verification code here to verify your site with Google Webmaster Tools.<br /><a href='http://semperplugins.com/documentation/google-webmaster-tools-verification/' target='_blank'>Click here for documentation on this setting</a>", 'all-in-one-seo-pack' ),
181
  'bing_verify' => __( "Enter your verification code here to verify your site with Bing Webmaster Tools.<br /><a href='http://semperplugins.com/documentation/bing-webmaster-verification/' target='_blank'>Click here for documentation on this setting</a>", 'all-in-one-seo-pack' ),
182
  'pinterest_verify' => __( "Enter your verification code here to verify your site with Pinterest.<br /><a href='http://semperplugins.com/documentation/pinterest-site-verification/' target='_blank'>Click here for documentation on this setting</a>", 'all-in-one-seo-pack' ),
@@ -267,6 +268,7 @@ class All_in_One_SEO_Pack extends All_in_One_SEO_Pack_Module {
267
  'cpostactive' => '#seo-on-only-these-post-types',
268
  'taxactive' => '#seo-on-only-these-taxonomies',
269
  'cposttitles' => '#custom-titles',
 
270
  'google_verify' => '',
271
  'bing_verify' => '',
272
  'pinterest_verify' => '',
@@ -578,6 +580,12 @@ class All_in_One_SEO_Pack extends All_in_One_SEO_Pack_Module {
578
  'aiosp_cpostadvanced' => 'on',
579
  ),
580
  ),
 
 
 
 
 
 
581
  'google_verify' => array(
582
  'name' => __( 'Google Webmaster Tools:', 'all-in-one-seo-pack' ),
583
  'default' => '',
@@ -1078,6 +1086,11 @@ class All_in_One_SEO_Pack extends All_in_One_SEO_Pack_Module {
1078
  'help_link' => 'http://semperplugins.com/documentation/custom-post-type-settings/',
1079
  'options' => array( 'enablecpost', 'cpostadvanced', 'taxactive', 'cpostactive', 'cposttitles' ),
1080
  ),
 
 
 
 
 
1081
  'webmaster' => array(
1082
  'name' => __( 'Webmaster Verification', 'all-in-one-seo-pack' ),
1083
  'help_link' => 'http://semperplugins.com/sections/webmaster-verification/',
@@ -1161,6 +1174,13 @@ class All_in_One_SEO_Pack extends All_in_One_SEO_Pack_Module {
1161
  ),
1162
  );
1163
 
 
 
 
 
 
 
 
1164
  if ( ! AIOSEOPPRO ) {
1165
  unset( $this->layout['cpt']['options']['2'] );
1166
  }
@@ -3152,6 +3172,7 @@ class All_in_One_SEO_Pack extends All_in_One_SEO_Pack_Module {
3152
  }
3153
  }
3154
 
 
3155
  $this->default_options['cpostactive']['initial_options'] = $all_post_types;
3156
  $this->default_options['cpostnoindex']['initial_options'] = $post_types;
3157
  $this->default_options['cpostnofollow']['initial_options'] = $post_types;
@@ -4464,12 +4485,29 @@ EOF;
4464
 
4465
  function admin_bar_menu() {
4466
 
4467
- if( apply_filters( 'aioseo_show_in_admin_bar', true) === false ){
 
4468
  // API filter hook to disable showing SEO in admin bar.
4469
  return;
4470
  }
4471
 
4472
- global $wp_admin_bar, $aioseop_admin_menu, $post;
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
4473
 
4474
  $menu_slug = plugin_basename( __FILE__ );
4475
 
@@ -4505,7 +4543,7 @@ EOF;
4505
  if ( ! empty( $blog_page ) ) {
4506
  $post = $blog_page;
4507
  }
4508
- if( ! is_home() || ( ! is_front_page() && ! is_home() ) ) {
4509
  // Don't show if we're on the home page and the home page is the latest posts.
4510
  $wp_admin_bar->add_menu( array(
4511
  'id' => 'aiosp_edit_' . $post->ID,
@@ -4515,6 +4553,7 @@ EOF;
4515
  ) );
4516
  }
4517
  }
 
4518
  }
4519
 
4520
  /**
@@ -4621,7 +4660,11 @@ EOF;
4621
 
4622
  $this->locations['aiosp']['default_options']['nonce-aioseop-edit']['default'] = wp_create_nonce( 'edit-aioseop-nonce' );
4623
 
 
4624
  global $aioseop_options;
 
 
 
4625
 
4626
  $this->update_options();
4627
 
@@ -4639,17 +4682,28 @@ EOF;
4639
  if ( isset( $_POST['aiosp_donate'] ) ) {
4640
  $donated = $_POST['aiosp_donate'];
4641
  }
 
 
 
 
 
 
 
 
 
4642
  } else {
4643
  if ( isset( $this->options['aiosp_donate'] ) ) {
4644
  $donated = $this->options['aiosp_donate'];
4645
  }
 
 
 
4646
  }
4647
 
4648
- if( apply_filters( 'aioseo_custom_menu_order', true) !== false ){
4649
- // API filter hook to disable showing SEO at the top of the menu.
4650
- add_filter( 'custom_menu_order', '__return_true' );
4651
- add_filter( 'menu_order', array( $this, 'set_menu_order' ), 11 );
4652
- }
4653
 
4654
  if ( $donated ) {
4655
  // Thank you for your donation.
177
  'cpostactive' => __( 'Use these checkboxes to select which Post Types you want to use All in One SEO Pack with.', 'all-in-one-seo-pack' ),
178
  'taxactive' => __( 'Use these checkboxes to select which Taxonomies you want to use All in One SEO Pack with.', 'all-in-one-seo-pack' ),
179
  'cposttitles' => __( 'This allows you to set the title tags for each Custom Post Type.', 'all-in-one-seo-pack' ),
180
+ 'posttypecolumns' => __( 'This lets you select which screens display the SEO Title, SEO Keywords and SEO Description columns.', 'all-in-one-seo-pack' ),
181
  'google_verify' => __( "Enter your verification code here to verify your site with Google Webmaster Tools.<br /><a href='http://semperplugins.com/documentation/google-webmaster-tools-verification/' target='_blank'>Click here for documentation on this setting</a>", 'all-in-one-seo-pack' ),
182
  'bing_verify' => __( "Enter your verification code here to verify your site with Bing Webmaster Tools.<br /><a href='http://semperplugins.com/documentation/bing-webmaster-verification/' target='_blank'>Click here for documentation on this setting</a>", 'all-in-one-seo-pack' ),
183
  'pinterest_verify' => __( "Enter your verification code here to verify your site with Pinterest.<br /><a href='http://semperplugins.com/documentation/pinterest-site-verification/' target='_blank'>Click here for documentation on this setting</a>", 'all-in-one-seo-pack' ),
268
  'cpostactive' => '#seo-on-only-these-post-types',
269
  'taxactive' => '#seo-on-only-these-taxonomies',
270
  'cposttitles' => '#custom-titles',
271
+ 'posttypecolumns' => '#show-column-labels-for-custom-post-types',
272
  'google_verify' => '',
273
  'bing_verify' => '',
274
  'pinterest_verify' => '',
580
  'aiosp_cpostadvanced' => 'on',
581
  ),
582
  ),
583
+ 'posttypecolumns' => array(
584
+ 'name' => __( 'Show Column Labels for Custom Post Types:', 'all-in-one-seo-pack' ),
585
+ 'type' => 'multicheckbox',
586
+ 'default' => array( 'post', 'page' ),
587
+ 'condshow' => array( 'aiosp_enablecpost' => 'on' ),
588
+ ),
589
  'google_verify' => array(
590
  'name' => __( 'Google Webmaster Tools:', 'all-in-one-seo-pack' ),
591
  'default' => '',
1086
  'help_link' => 'http://semperplugins.com/documentation/custom-post-type-settings/',
1087
  'options' => array( 'enablecpost', 'cpostadvanced', 'taxactive', 'cpostactive', 'cposttitles' ),
1088
  ),
1089
+ 'display' => array(
1090
+ 'name' => __( 'Display Settings', 'all-in-one-seo-pack' ),
1091
+ 'help_link' => 'http://semperplugins.com/documentation/display-settings/',
1092
+ 'options' => array( 'posttypecolumns' ),
1093
+ ),
1094
  'webmaster' => array(
1095
  'name' => __( 'Webmaster Verification', 'all-in-one-seo-pack' ),
1096
  'help_link' => 'http://semperplugins.com/sections/webmaster-verification/',
1174
  ),
1175
  );
1176
 
1177
+ if ( AIOSEOPPRO ) {
1178
+ // Add Pro options.
1179
+ $this->default_options = aioseop_add_pro_opt( $this->default_options );
1180
+ $this->help_text = aioseop_add_pro_help( $this->help_text );
1181
+ $this->layout = aioseop_add_pro_layout( $this->layout );
1182
+ }
1183
+
1184
  if ( ! AIOSEOPPRO ) {
1185
  unset( $this->layout['cpt']['options']['2'] );
1186
  }
3172
  }
3173
  }
3174
 
3175
+ $this->default_options['posttypecolumns']['initial_options'] = $post_types;
3176
  $this->default_options['cpostactive']['initial_options'] = $all_post_types;
3177
  $this->default_options['cpostnoindex']['initial_options'] = $post_types;
3178
  $this->default_options['cpostnofollow']['initial_options'] = $post_types;
4485
 
4486
  function admin_bar_menu() {
4487
 
4488
+
4489
+ if ( apply_filters( 'aioseo_show_in_admin_bar', true ) === false ) {
4490
  // API filter hook to disable showing SEO in admin bar.
4491
  return;
4492
  }
4493
 
4494
+
4495
+ global $wp_admin_bar, $aioseop_admin_menu, $post, $aioseop_options;
4496
+
4497
+ $toggle = '';
4498
+ if ( isset( $_POST['aiosp_use_original_title'] ) && isset( $_POST['aiosp_admin_bar'] ) && AIOSEOPPRO ) {
4499
+ $toggle = 'on';
4500
+ }
4501
+ if ( isset( $_POST['aiosp_use_original_title'] ) && ! isset( $_POST['aiosp_admin_bar'] ) && AIOSEOPPRO ) {
4502
+ $toggle = 'off';
4503
+ }
4504
+
4505
+ if ( ( ! isset( $aioseop_options['aiosp_admin_bar'] ) && 'off' !== $toggle ) || ( ! empty( $aioseop_options['aiosp_admin_bar'] ) && 'off' !== $toggle ) || isset( $_POST['aiosp_admin_bar'] ) || true == apply_filters( 'aioseo_show_in_admin_bar', false ) ) {
4506
+
4507
+ if ( apply_filters( 'aioseo_show_in_admin_bar', true ) === false ) {
4508
+ // API filter hook to disable showing SEO in admin bar.
4509
+ return;
4510
+ }
4511
 
4512
  $menu_slug = plugin_basename( __FILE__ );
4513
 
4543
  if ( ! empty( $blog_page ) ) {
4544
  $post = $blog_page;
4545
  }
4546
+ if ( ! is_home() || ( ! is_front_page() && ! is_home() ) ) {
4547
  // Don't show if we're on the home page and the home page is the latest posts.
4548
  $wp_admin_bar->add_menu( array(
4549
  'id' => 'aiosp_edit_' . $post->ID,
4553
  ) );
4554
  }
4555
  }
4556
+ }
4557
  }
4558
 
4559
  /**
4660
 
4661
  $this->locations['aiosp']['default_options']['nonce-aioseop-edit']['default'] = wp_create_nonce( 'edit-aioseop-nonce' );
4662
 
4663
+ $custom_menu_order = false;
4664
  global $aioseop_options;
4665
+ if ( ! isset( $aioseop_options['custom_menu_order'] ) ) {
4666
+ $custom_menu_order = true;
4667
+ }
4668
 
4669
  $this->update_options();
4670
 
4682
  if ( isset( $_POST['aiosp_donate'] ) ) {
4683
  $donated = $_POST['aiosp_donate'];
4684
  }
4685
+ if ( isset( $_POST['Submit'] ) && AIOSEOPPRO ) {
4686
+ if ( isset( $_POST['aiosp_custom_menu_order'] ) ) {
4687
+ $custom_menu_order = $_POST['aiosp_custom_menu_order'];
4688
+ } else {
4689
+ $custom_menu_order = false;
4690
+ }
4691
+ } else if ( isset( $_POST['Submit_Default'] ) || isset( $_POST['Submit_All_Default'] ) ) {
4692
+ $custom_menu_order = true;
4693
+ }
4694
  } else {
4695
  if ( isset( $this->options['aiosp_donate'] ) ) {
4696
  $donated = $this->options['aiosp_donate'];
4697
  }
4698
+ if ( isset( $this->options['aiosp_custom_menu_order'] ) ) {
4699
+ $custom_menu_order = $this->options['aiosp_custom_menu_order'];
4700
+ }
4701
  }
4702
 
4703
+ if ( ( $custom_menu_order && false !== apply_filters( 'aioseo_custom_menu_order', $custom_menu_order ) ) || true === apply_filters( 'aioseo_custom_menu_order', $custom_menu_order ) ) {
4704
+ add_filter( 'custom_menu_order', '__return_true' );
4705
+ add_filter( 'menu_order', array( $this, 'set_menu_order' ), 11 );
4706
+ }
 
4707
 
4708
  if ( $donated ) {
4709
  // Thank you for your donation.
all_in_one_seo_pack.php CHANGED
@@ -3,7 +3,7 @@
3
  Plugin Name: All In One SEO Pack
4
  Plugin URI: http://semperfiwebdesign.com
5
  Description: Out-of-the-box SEO for your WordPress blog. Features like XML Sitemaps, SEO for custom post types, SEO for blogs or business sites, SEO for ecommerce sites, and much more. Almost 30 million downloads since 2007.
6
- Version: 2.3.10.1
7
  Author: Michael Torbert
8
  Author URI: http://michaeltorbert.com
9
  Text Domain: all-in-one-seo-pack
@@ -31,14 +31,14 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
31
  * The original WordPress SEO plugin.
32
  *
33
  * @package All-in-One-SEO-Pack
34
- * @version 2.3.10.1
35
  */
36
 
37
  if ( ! defined( 'AIOSEOPPRO' ) ) {
38
  define( 'AIOSEOPPRO', false );
39
  }
40
  if ( ! defined( 'AIOSEOP_VERSION' ) ) {
41
- define( 'AIOSEOP_VERSION', '2.3.10.1' );
42
  }
43
  global $aioseop_plugin_name;
44
  $aioseop_plugin_name = 'All in One SEO Pack';
3
  Plugin Name: All In One SEO Pack
4
  Plugin URI: http://semperfiwebdesign.com
5
  Description: Out-of-the-box SEO for your WordPress blog. Features like XML Sitemaps, SEO for custom post types, SEO for blogs or business sites, SEO for ecommerce sites, and much more. Almost 30 million downloads since 2007.
6
+ Version: 2.3.10.2
7
  Author: Michael Torbert
8
  Author URI: http://michaeltorbert.com
9
  Text Domain: all-in-one-seo-pack
31
  * The original WordPress SEO plugin.
32
  *
33
  * @package All-in-One-SEO-Pack
34
+ * @version 2.3.10.2
35
  */
36
 
37
  if ( ! defined( 'AIOSEOPPRO' ) ) {
38
  define( 'AIOSEOPPRO', false );
39
  }
40
  if ( ! defined( 'AIOSEOP_VERSION' ) ) {
41
+ define( 'AIOSEOP_VERSION', '2.3.10.2' );
42
  }
43
  global $aioseop_plugin_name;
44
  $aioseop_plugin_name = 'All in One SEO Pack';
inc/aioseop_functions.php CHANGED
@@ -129,8 +129,11 @@ if ( ! function_exists( 'aioseop_addmycolumns' ) ) {
129
  *
130
  */
131
  function aioseop_addmycolumns() {
132
- global $pagenow;
133
-
 
 
 
134
  if ( ! empty( $pagenow ) && ( $pagenow === 'upload.php' ) ) {
135
  $post_type = 'attachment';
136
  } elseif ( ! isset( $_REQUEST['post_type'] ) ) {
@@ -138,7 +141,7 @@ if ( ! function_exists( 'aioseop_addmycolumns' ) ) {
138
  } else {
139
  $post_type = $_REQUEST['post_type'];
140
  }
141
-
142
  add_action( 'admin_head', 'aioseop_admin_head' );
143
  if ( $post_type === 'page' ) {
144
  add_filter( 'manage_pages_columns', 'aioseop_mrt_pcolumns' );
@@ -154,6 +157,7 @@ if ( ! function_exists( 'aioseop_addmycolumns' ) ) {
154
  } else {
155
  add_action( 'manage_posts_custom_column', 'aioseop_mrt_pccolumn', 10, 2 );
156
  }
 
157
  }
158
  }
159
 
129
  *
130
  */
131
  function aioseop_addmycolumns() {
132
+ global $aioseop_options, $pagenow;
133
+ $aiosp_posttypecolumns = Array();
134
+ if ( ! empty( $aioseop_options ) && ! empty( $aioseop_options['aiosp_posttypecolumns'] ) ) {
135
+ $aiosp_posttypecolumns = $aioseop_options['aiosp_posttypecolumns'];
136
+ }
137
  if ( ! empty( $pagenow ) && ( $pagenow === 'upload.php' ) ) {
138
  $post_type = 'attachment';
139
  } elseif ( ! isset( $_REQUEST['post_type'] ) ) {
141
  } else {
142
  $post_type = $_REQUEST['post_type'];
143
  }
144
+ if ( is_array( $aiosp_posttypecolumns ) && in_array( $post_type, $aiosp_posttypecolumns ) ) {
145
  add_action( 'admin_head', 'aioseop_admin_head' );
146
  if ( $post_type === 'page' ) {
147
  add_filter( 'manage_pages_columns', 'aioseop_mrt_pcolumns' );
157
  } else {
158
  add_action( 'manage_posts_custom_column', 'aioseop_mrt_pccolumn', 10, 2 );
159
  }
160
+ }
161
  }
162
  }
163
 
inc/aioseop_updates_class.php CHANGED
@@ -57,10 +57,10 @@ class AIOSEOP_Updates {
57
  }
58
 
59
  if( ! is_network_admin() || !isset( $_GET['activate-multi'] ) ) {
60
- set_transient( '_aioseop_activation_redirect', true, 30 ); // Sets 30 second transient for welcome screen redirect on activation.
61
  }
62
  delete_transient( 'aioseop_feed' );
63
- add_action( 'admin_init', array( $this, 'aioseop_welcome' ) );
64
 
65
  }
66
 
@@ -110,6 +110,7 @@ class AIOSEOP_Updates {
110
  ( AIOSEOPPRO && version_compare( $old_version, '2.4.9', '<' ) )
111
  ) {
112
  $this->bad_bots_remove_seznambot_201608();
 
113
  }
114
 
115
  }
57
  }
58
 
59
  if( ! is_network_admin() || !isset( $_GET['activate-multi'] ) ) {
60
+ //set_transient( '_aioseop_activation_redirect', true, 30 ); // Sets 30 second transient for welcome screen redirect on activation.
61
  }
62
  delete_transient( 'aioseop_feed' );
63
+ // add_action( 'admin_init', array( $this, 'aioseop_welcome' ) );
64
 
65
  }
66
 
110
  ( AIOSEOPPRO && version_compare( $old_version, '2.4.9', '<' ) )
111
  ) {
112
  $this->bad_bots_remove_seznambot_201608();
113
+ set_transient( '_aioseop_activation_redirect', true, 30 ); // Sets 30 second transient for welcome screen redirect on activation.
114
  }
115
 
116
  }
inc/commonstrings.php CHANGED
@@ -37,5 +37,13 @@ class AIOSP_Common_Strings {
37
  __( ' Need a license key?', 'all-in-one-seo-pack' );
38
  __( 'Notice: ', 'all-in-one-seo-pack' );
39
  __( 'Manage Licenses', 'all-in-one-seo-pack' );
 
 
 
 
 
 
 
 
40
  }
41
  }
37
  __( ' Need a license key?', 'all-in-one-seo-pack' );
38
  __( 'Notice: ', 'all-in-one-seo-pack' );
39
  __( 'Manage Licenses', 'all-in-one-seo-pack' );
40
+
41
+ // These are Pro option strings.
42
+ __( 'Show SEO News', 'all-in-one-seo-pack' );
43
+ __( 'Display Menu In Admin Bar:', 'all-in-one-seo-pack' );
44
+ __( 'Display Menu At The Top:', 'all-in-one-seo-pack' );
45
+ __( 'This displays an SEO News widget on the dashboard.', 'all-in-one-seo-pack' );
46
+ __( 'Check this to add All in One SEO Pack to the Admin Bar for easy access to your SEO settings.', 'all-in-one-seo-pack' );
47
+ __( 'Check this to move the All in One SEO Pack menu item to the top of your WordPress Dashboard menu.', 'all-in-one-seo-pack' );
48
  }
49
  }
modules/aioseop_opengraph.php CHANGED
@@ -801,12 +801,13 @@ if ( ! class_exists( 'All_in_One_SEO_Pack_Opengraph' ) ) {
801
 
802
  // Don't show this schema.org if the AMP plugin is active.
803
  if ( ! function_exists( 'amp_init' ) ) {
804
- $attr_array[] = 'itemscope';
805
- $attr_array[] = 'itemtype="http://schema.org/' . ucfirst( $type ) . '"';
 
 
 
806
  }
807
 
808
- $attr_array[] = 'prefix="og: http://ogp.me/ns#"';
809
-
810
  $attributes = apply_filters( $this->prefix . 'attributes', $attr_array );
811
  foreach ( $attributes as $attr ) {
812
  if ( strpos( $output, $attr ) === false ) {
801
 
802
  // Don't show this schema.org if the AMP plugin is active.
803
  if ( ! function_exists( 'amp_init' ) ) {
804
+ $attr_array = Array(
805
+ 'itemscope',
806
+ 'itemtype="http://schema.org/' . ucfirst( $type ) . '"',
807
+ 'prefix="og: http://ogp.me/ns#"',
808
+ );
809
  }
810
 
 
 
811
  $attributes = apply_filters( $this->prefix . 'attributes', $attr_array );
812
  foreach ( $attributes as $attr ) {
813
  if ( strpos( $output, $attr ) === false ) {
modules/aioseop_sitemap.php CHANGED
@@ -305,8 +305,10 @@ if ( ! class_exists( 'All_in_One_SEO_Pack_Sitemap' ) ) {
305
  add_action( $this->prefix . 'daily_update_cron', array( $this, 'daily_update' ) );
306
  add_action( 'init', array( $this, 'make_dynamic_xsl' ) );
307
  add_action( 'transition_post_status', array( $this, 'update_sitemap_from_posts' ), 10, 3 );
 
308
  }
309
 
 
310
  /**
311
  * Update sitemap from posts.
312
  *
@@ -792,6 +794,28 @@ if ( ! class_exists( 'All_in_One_SEO_Pack_Sitemap' ) ) {
792
  return str_replace( '\\', '/', $home_path );
793
  }
794
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
795
  /**
796
  * Scan for sitemaps on filesystem.
797
  *
@@ -815,6 +839,8 @@ if ( ! class_exists( 'All_in_One_SEO_Pack_Sitemap' ) ) {
815
  if ( ! empty( $filescan ) ) {
816
  foreach ( $filescan as $f ) {
817
  if ( ! empty( $scan1 ) && fnmatch( $scan1, $home_path . $f ) ) {
 
 
818
  $files[] = $home_path . $f;
819
  continue;
820
  }
@@ -959,8 +985,14 @@ if ( ! class_exists( 'All_in_One_SEO_Pack_Sitemap' ) ) {
959
  $problem_files[] = $f;
960
  }
961
  } else {
962
- $msg .= '<p>' . sprintf( __( 'Potential conflict with empty file %s.', 'all-in-one-seo-pack' ), $f ) . "</p>\n";
963
  $problem_files[] = $f;
 
 
 
 
 
 
964
  }
965
  }
966
  }
305
  add_action( $this->prefix . 'daily_update_cron', array( $this, 'daily_update' ) );
306
  add_action( 'init', array( $this, 'make_dynamic_xsl' ) );
307
  add_action( 'transition_post_status', array( $this, 'update_sitemap_from_posts' ), 10, 3 );
308
+ add_action( 'after_doing_aioseop_updates', array( $this, 'scan_sitemaps' ) );
309
  }
310
 
311
+
312
  /**
313
  * Update sitemap from posts.
314
  *
794
  return str_replace( '\\', '/', $home_path );
795
  }
796
 
797
+ /**
798
+ * Whitelists files from static sitemap conflict warning.
799
+ *
800
+ * For right now, this is just externally produced news sitemaps until we figure out something better.
801
+ *
802
+ * @param $file
803
+ *
804
+ * @since 2.3.10.2
805
+ *
806
+ * @return string
807
+ */
808
+ function whitelist_static_sitemaps( $file ) {
809
+
810
+ $whitelist = array( 'sitemap_news.xml', 'sitemap-news.xml' );
811
+
812
+ if ( in_array( $file, $whitelist, true ) ) {
813
+ return '';
814
+ }
815
+
816
+ return $file;
817
+ }
818
+
819
  /**
820
  * Scan for sitemaps on filesystem.
821
  *
839
  if ( ! empty( $filescan ) ) {
840
  foreach ( $filescan as $f ) {
841
  if ( ! empty( $scan1 ) && fnmatch( $scan1, $home_path . $f ) ) {
842
+
843
+ $f = $this->whitelist_static_sitemaps( $f );
844
  $files[] = $home_path . $f;
845
  continue;
846
  }
985
  $problem_files[] = $f;
986
  }
987
  } else {
988
+ $msg .= '<p>' . sprintf( __( 'Removed empty file %s.', 'all-in-one-seo-pack' ), $f ) . "</p>\n";
989
  $problem_files[] = $f;
990
+
991
+ foreach ( $problem_files as $f => $file ) {
992
+ $files[ $f ] = realpath( $file );
993
+ $this->delete_file( realpath( $file ) );
994
+ }
995
+ $problem_files = false; // Don't return anything. If it's blank, we'll take care of it here.
996
  }
997
  }
998
  }
readme.txt CHANGED
@@ -4,7 +4,7 @@ Donate link: https://www.paypal.com/cgi-bin/webscr?cmd=_donations&business=mrtor
4
  Tags: seo, all in one seo, google, twitter, page, image seo, social, search engine optimization, sitemap, WordPress SEO, meta, meta description, xml sitemap, google sitemap, sitemaps, robots meta, yahoo, bing, news sitemaps, multisite, canonical, nofollow, noindex, keywords, description, webmaster tools, google webmaster tools, google analytics
5
  Requires at least: 4.0
6
  Tested up to: 4.6
7
- Stable tag: 2.3.10.1
8
  License: GPLv2 or later
9
  License URI: http://www.gnu.org/licenses/gpl-2.0.html
10
 
@@ -21,6 +21,7 @@ One of the most downloaded plugins for WordPress (over 30 million downloads sinc
21
  First created in 2007, see why AIOSEO is one of the all time most downloaded plugins for WordPress.
22
 
23
  * XML Sitemap support - submit your sitemap to Google and Bing and improve your SEO
 
24
  * Google Analytics support
25
  * Support for SEO on Custom Post Types
26
  * Advanced Canonical URLs
4
  Tags: seo, all in one seo, google, twitter, page, image seo, social, search engine optimization, sitemap, WordPress SEO, meta, meta description, xml sitemap, google sitemap, sitemaps, robots meta, yahoo, bing, news sitemaps, multisite, canonical, nofollow, noindex, keywords, description, webmaster tools, google webmaster tools, google analytics
5
  Requires at least: 4.0
6
  Tested up to: 4.6
7
+ Stable tag: 2.3.10.2
8
  License: GPLv2 or later
9
  License URI: http://www.gnu.org/licenses/gpl-2.0.html
10
 
21
  First created in 2007, see why AIOSEO is one of the all time most downloaded plugins for WordPress.
22
 
23
  * XML Sitemap support - submit your sitemap to Google and Bing and improve your SEO
24
+ * Google AMP support (Accelerated Mobile Pages)
25
  * Google Analytics support
26
  * Support for SEO on Custom Post Types
27
  * Advanced Canonical URLs