All in One SEO Pack - Version 2.3.4.2

Version Description

Download this release

Release Info

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

Code changes from version 2.3.4 to 2.3.4.2

README.md DELETED
@@ -1,28 +0,0 @@
1
- # All in One SEO Pack
2
-
3
- Most Downloaded WordPress plugin... almost 30 million downloads
4
-
5
- ## Help
6
-
7
- Read the [documentation](http://semperplugins.com/documentation/)
8
-
9
- ## Installation
10
-
11
- Typically the one-click installer... run bleeding edge coming soon
12
-
13
- ## Contributing
14
-
15
- 1. Create your feature branch: `git checkout -b my-new-feature`
16
- 2. Commit your changes: `git commit -am 'Add some feature'`
17
- 3. Push to the branch: `git push origin my-new-feature`
18
- 4. Submit a pull request :D
19
-
20
- ## Supercharge!
21
-
22
- [Upgrade to Pro Version](http://semperplugins.com/plugins/all-in-one-seo-pack-pro-version/)
23
-
24
- ## Acknowledgements
25
-
26
- * Coffee
27
- * Bacon
28
- * Coffee
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
admin/aioseop_module_class.php CHANGED
@@ -508,7 +508,6 @@ if ( !class_exists( 'All_in_One_SEO_Pack_Module' ) ) {
508
  "wsr-agent",
509
  "WWW-Collector-E",
510
  "Xenu",
511
- "yandex",
512
  "Zao",
513
  "Zeus",
514
  "ZyBORG",
@@ -1229,6 +1228,9 @@ if ( !class_exists( 'All_in_One_SEO_Pack_Module' ) ) {
1229
 
1230
  /**
1231
  * Load scripts and styles for metaboxes.
 
 
 
1232
  */
1233
  function enqueue_metabox_scripts( ) {
1234
  $screen = '';
508
  "wsr-agent",
509
  "WWW-Collector-E",
510
  "Xenu",
 
511
  "Zao",
512
  "Zeus",
513
  "ZyBORG",
1228
 
1229
  /**
1230
  * Load scripts and styles for metaboxes.
1231
+ *
1232
+ * edit-tags exists only for pre 4.5 support... remove when we drop 4.5 support.
1233
+ * Also, that check and others should be pulled out into their own functions
1234
  */
1235
  function enqueue_metabox_scripts( ) {
1236
  $screen = '';
admin/meta_import.php CHANGED
@@ -36,6 +36,10 @@ class WPSEO_Import_AIOSEO_Hooks extends WPSEO_Import_Hooks {
36
  }
37
  }
38
  }else{
 
 
 
 
39
  delete_user_meta( get_current_user_id(), 'aioseop_yst_detected_notice_dismissed' );
40
  }
41
 
36
  }
37
  }
38
  }else{
39
+ add_action( 'init', 'mi_aioseop_yst_detected_notice_dismissed' );
40
+ }
41
+
42
+ function mi_aioseop_yst_detected_notice_dismissed(){
43
  delete_user_meta( get_current_user_id(), 'aioseop_yst_detected_notice_dismissed' );
44
  }
45
 
aioseop_class.php CHANGED
@@ -1083,21 +1083,20 @@ class All_in_One_SEO_Pack extends All_in_One_SEO_Pack_Module {
1083
 
1084
  function add_page_hooks() {
1085
 
1086
- global $aioseop_options;
1087
 
1088
  $post_objs = get_post_types( '', 'objects' );
1089
  $pt = array_keys( $post_objs );
1090
  $rempost = array( 'revision', 'nav_menu_item' );
1091
  $pt = array_diff( $pt, $rempost );
1092
  $post_types = Array();
1093
- $default_posttypes = Array('Posts','Pages','Media');
1094
 
1095
  $aiosp_enablecpost = '';
1096
  if (isset($_REQUEST['aiosp_enablecpost'])) $aiosp_enablecpost = $_REQUEST['aiosp_enablecpost'];
1097
 
1098
  foreach ( $pt as $p ) {
1099
  if ( !empty( $post_objs[$p]->label ) ){
1100
- if (in_array($post_objs[$p]->label,$default_posttypes) && empty( $aioseop_options['aiosp_enablecpost'] )){
1101
  $post_types[$p] = $post_objs[$p]->label;
1102
  }elseif (!empty( $aioseop_options['aiosp_enablecpost'] ) || $aiosp_enablecpost == 'on' ) {
1103
  $post_types[$p] = $post_objs[$p]->label;
@@ -1107,6 +1106,13 @@ class All_in_One_SEO_Pack extends All_in_One_SEO_Pack_Module {
1107
  $post_types[$p] = $p;
1108
  }
1109
  }
 
 
 
 
 
 
 
1110
  $taxes = get_taxonomies( '', 'objects' );
1111
  $tx = array_keys( $taxes );
1112
  $remtax = array( 'nav_menu', 'link_category', 'post_format' );
@@ -1118,7 +1124,7 @@ class All_in_One_SEO_Pack extends All_in_One_SEO_Pack_Module {
1118
  else
1119
  $taxes[$t] = $t;
1120
  $this->default_options["posttypecolumns"]['initial_options'] = $post_types;
1121
- $this->default_options["cpostactive"]['initial_options'] = $post_types;
1122
  $this->default_options["cpostnoindex"]['initial_options'] = $post_types;
1123
  $this->default_options["cpostnofollow"]['initial_options'] = $post_types;
1124
  $this->default_options["cpostnoodp"]['initial_options'] = $post_types;
@@ -2167,7 +2173,7 @@ function aiosp_google_analytics() {
2167
  if ( !empty( $aioseop_options['aiosp_ga_advanced_options'] ) && !empty( $aioseop_options['aiosp_ga_exclude_users'] ) ) {
2168
  if ( is_user_logged_in() ) {
2169
  global $current_user;
2170
- if ( empty( $current_user ) ) get_currentuserinfo();
2171
  if ( !empty( $current_user ) ) {
2172
  $intersect = array_intersect( $aioseop_options['aiosp_ga_exclude_users'], $current_user->roles );
2173
  if ( !empty( $intersect ) ) return;
@@ -3422,7 +3428,7 @@ EOF;
3422
 
3423
  if ( $custom_menu_order ) {
3424
  add_filter( 'custom_menu_order', '__return_true' );
3425
- add_filter( 'menu_order', array( $this, 'set_menu_order' ) );
3426
  }
3427
 
3428
  if ( $donated ) {
@@ -3463,10 +3469,8 @@ EOF;
3463
  $this->locations['aiosp']['display'] = Array( 'post', 'page' );
3464
  }
3465
 
3466
- if ( $custom_menu_order )
3467
  add_menu_page( $menu_name, $menu_name, apply_filters( 'manage_aiosp', 'aiosp_manage_seo' ) , $file, Array( $this, 'display_settings_page' ) );
3468
- else
3469
- add_utility_page( $menu_name, $menu_name, apply_filters( 'manage_aiosp', 'aiosp_manage_seo' ), $file, Array( $this, 'display_settings_page' ) );
3470
 
3471
  add_meta_box('aioseop-list', __( "Join Our Mailing List", 'all-in-one-seo-pack' ), array( 'aiosp_metaboxes', 'display_extra_metaboxes'), 'aioseop_metaboxes', 'normal', 'core');
3472
  if ( AIOSEOPPRO ){
1083
 
1084
  function add_page_hooks() {
1085
 
1086
+ global $aioseop_options;
1087
 
1088
  $post_objs = get_post_types( '', 'objects' );
1089
  $pt = array_keys( $post_objs );
1090
  $rempost = array( 'revision', 'nav_menu_item' );
1091
  $pt = array_diff( $pt, $rempost );
1092
  $post_types = Array();
 
1093
 
1094
  $aiosp_enablecpost = '';
1095
  if (isset($_REQUEST['aiosp_enablecpost'])) $aiosp_enablecpost = $_REQUEST['aiosp_enablecpost'];
1096
 
1097
  foreach ( $pt as $p ) {
1098
  if ( !empty( $post_objs[$p]->label ) ){
1099
+ if ( $post_objs[$p]->_builtin && empty( $aioseop_options['aiosp_enablecpost'] )){
1100
  $post_types[$p] = $post_objs[$p]->label;
1101
  }elseif (!empty( $aioseop_options['aiosp_enablecpost'] ) || $aiosp_enablecpost == 'on' ) {
1102
  $post_types[$p] = $post_objs[$p]->label;
1106
  $post_types[$p] = $p;
1107
  }
1108
  }
1109
+
1110
+ foreach ($pt as $p){
1111
+ if ( !empty( $post_objs[$p]->label)){
1112
+ $all_post_types[$p] = $post_objs[$p]->label;
1113
+ }
1114
+ }
1115
+
1116
  $taxes = get_taxonomies( '', 'objects' );
1117
  $tx = array_keys( $taxes );
1118
  $remtax = array( 'nav_menu', 'link_category', 'post_format' );
1124
  else
1125
  $taxes[$t] = $t;
1126
  $this->default_options["posttypecolumns"]['initial_options'] = $post_types;
1127
+ $this->default_options["cpostactive"]['initial_options'] = $all_post_types;
1128
  $this->default_options["cpostnoindex"]['initial_options'] = $post_types;
1129
  $this->default_options["cpostnofollow"]['initial_options'] = $post_types;
1130
  $this->default_options["cpostnoodp"]['initial_options'] = $post_types;
2173
  if ( !empty( $aioseop_options['aiosp_ga_advanced_options'] ) && !empty( $aioseop_options['aiosp_ga_exclude_users'] ) ) {
2174
  if ( is_user_logged_in() ) {
2175
  global $current_user;
2176
+ if ( empty( $current_user ) ) wp_get_current_user();
2177
  if ( !empty( $current_user ) ) {
2178
  $intersect = array_intersect( $aioseop_options['aiosp_ga_exclude_users'], $current_user->roles );
2179
  if ( !empty( $intersect ) ) return;
3428
 
3429
  if ( $custom_menu_order ) {
3430
  add_filter( 'custom_menu_order', '__return_true' );
3431
+ add_filter( 'menu_order', array( $this, 'set_menu_order' ), 11 );
3432
  }
3433
 
3434
  if ( $donated ) {
3469
  $this->locations['aiosp']['display'] = Array( 'post', 'page' );
3470
  }
3471
 
3472
+
3473
  add_menu_page( $menu_name, $menu_name, apply_filters( 'manage_aiosp', 'aiosp_manage_seo' ) , $file, Array( $this, 'display_settings_page' ) );
 
 
3474
 
3475
  add_meta_box('aioseop-list', __( "Join Our Mailing List", 'all-in-one-seo-pack' ), array( 'aiosp_metaboxes', 'display_extra_metaboxes'), 'aioseop_metaboxes', 'normal', 'core');
3476
  if ( AIOSEOPPRO ){
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.4
7
  Author: Michael Torbert
8
  Author URI: http://michaeltorbert.com
9
  Text Domain: all-in-one-seo-pack
@@ -29,11 +29,11 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
29
 
30
  /**
31
  * @package All-in-One-SEO-Pack
32
- * @version 2.3.4
33
  */
34
 
35
  if(!defined('AIOSEOPPRO')) define('AIOSEOPPRO', false);
36
- if ( ! defined( 'AIOSEOP_VERSION' ) ) define( 'AIOSEOP_VERSION', '2.3.4' );
37
  global $aioseop_plugin_name;
38
  $aioseop_plugin_name = 'All in One SEO Pack';
39
 
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.4.2
7
  Author: Michael Torbert
8
  Author URI: http://michaeltorbert.com
9
  Text Domain: all-in-one-seo-pack
29
 
30
  /**
31
  * @package All-in-One-SEO-Pack
32
+ * @version 2.3.4.2
33
  */
34
 
35
  if(!defined('AIOSEOPPRO')) define('AIOSEOPPRO', false);
36
+ if ( ! defined( 'AIOSEOP_VERSION' ) ) define( 'AIOSEOP_VERSION', '2.3.4.2' );
37
  global $aioseop_plugin_name;
38
  $aioseop_plugin_name = 'All in One SEO Pack';
39
 
css/modules/aioseop_module.css CHANGED
@@ -270,8 +270,6 @@ div.aioseop_tip_icon:before {
270
  #wincher22 {
271
  background-image: url(../../modules/images/banner22.jpg);
272
  }
273
- }
274
-
275
  .aioseop_content {
276
  min-width: 760px;
277
  clear: left;
270
  #wincher22 {
271
  background-image: url(../../modules/images/banner22.jpg);
272
  }
 
 
273
  .aioseop_content {
274
  min-width: 760px;
275
  clear: left;
i18n/all-in-one-seo-pack-es_AR.mo CHANGED
Binary file
i18n/all-in-one-seo-pack-lt.mo ADDED
Binary file
i18n/all-in-one-seo-pack-nl.mo ADDED
Binary file
i18n/all-in-one-seo-pack-sq.mo CHANGED
Binary file
inc/aioseop_updates_class.php CHANGED
@@ -50,7 +50,8 @@ class aioseop_updates {
50
  $this->do_feature_updates();
51
 
52
  }
53
-
 
54
  function do_version_updates( $old_version ) {
55
  global $aioseop_options;
56
 
@@ -60,6 +61,14 @@ class aioseop_updates {
60
  ) {
61
  $this->bad_bots_201603();
62
  }
 
 
 
 
 
 
 
 
63
 
64
  /*
65
  if (
@@ -96,9 +105,12 @@ class aioseop_updates {
96
  */
97
 
98
  /**
99
- * Remove overzealous 'DOC' entry which is causing false-positive bad
100
- * bot blocking.
101
- */
 
 
 
102
  function bad_bots_201603() {
103
  global $aiosp, $aioseop_options;
104
  // Remove 'DOC' from bad bots list to avoid false positives
@@ -125,4 +137,40 @@ class aioseop_updates {
125
  }
126
  }
127
  }
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
128
  }
50
  $this->do_feature_updates();
51
 
52
  }
53
+
54
+ //TODO: the compare here should be extracted into a function
55
  function do_version_updates( $old_version ) {
56
  global $aioseop_options;
57
 
61
  ) {
62
  $this->bad_bots_201603();
63
  }
64
+
65
+ if (
66
+ ( !AIOSEOPPRO && version_compare( $old_version, '2.3.4.1', '<' ) ) ||
67
+ ( AIOSEOPPRO && version_compare( $old_version, '2.4.4.1', '<' ) )
68
+ ) {
69
+ $this->bad_bots_remove_yandex_201604();
70
+ }
71
+
72
 
73
  /*
74
  if (
105
  */
106
 
107
  /**
108
+ * Remove overzealous 'DOC' entry which is causing false-positive bad
109
+ * bot blocking.
110
+ *
111
+ * @since 2.3.3
112
+ *
113
+ */
114
  function bad_bots_201603() {
115
  global $aiosp, $aioseop_options;
116
  // Remove 'DOC' from bad bots list to avoid false positives
137
  }
138
  }
139
  }
140
+
141
+ /**
142
+ * Remove 'yandex' entry. This is a major Russian search engine, and no longer needs to be blocked.
143
+ *
144
+ * @since 2.3.4.1
145
+ *
146
+ **/
147
+
148
+ function bad_bots_remove_yandex_201604() {
149
+ global $aiosp, $aioseop_options;
150
+ // Remove 'yandex' from bad bots list to avoid false positives
151
+ if ( isset( $aioseop_options['modules']['aiosp_bad_robots_options']['aiosp_bad_robots_blocklist'] ) ) {
152
+ $list = $aioseop_options['modules']['aiosp_bad_robots_options']['aiosp_bad_robots_blocklist'];
153
+ $list = str_replace(array( "yandex\r\n", "yandex\n"), '', $list);
154
+ $aioseop_options['modules']['aiosp_bad_robots_options']['aiosp_bad_robots_blocklist'] = $list;
155
+ update_option( 'aioseop_options', $aioseop_options );
156
+ $aiosp->update_class_option( $aioseop_options );
157
+
158
+ if ( isset( $aioseop_options['modules']['aiosp_bad_robots_options']['aiosp_bad_robots_htaccess_rules'] ) && 'on' === $aioseop_options['modules']['aiosp_bad_robots_options']['aiosp_bad_robots_htaccess_rules'] ){
159
+
160
+ if (!class_exists( 'All_in_One_SEO_Pack_Bad_Robots' ) ) {
161
+ require_once( AIOSEOP_PLUGIN_DIR . 'admin/aioseop_module_class.php');
162
+ require_once( AIOSEOP_PLUGIN_DIR . 'modules/aioseop_bad_robots.php');
163
+ }
164
+
165
+ $aiosp_reset_htaccess = new All_in_One_SEO_Pack_Bad_Robots;
166
+ $aiosp_reset_htaccess->generate_htaccess_blocklist();
167
+ }
168
+
169
+ if ( !isset( $aioseop_options['modules']['aiosp_bad_robots_options']['aiosp_bad_robots_htaccess_rules'] ) && extract_from_markers( get_home_path() . '.htaccess', 'Bad Bot Blocker' ) ){
170
+ insert_with_markers( get_home_path() . '.htaccess', 'Bad Bot Blocker', '' );
171
+ }
172
+ }
173
+ }
174
+
175
+
176
  }
inc/aiosp_common.php CHANGED
@@ -45,7 +45,7 @@ class aiosp_common {
45
  $hyperlink = '<a ';
46
  if( $target ) $hyperlink .= "target=\"$target\" ";
47
  if( $title ) $hyperlink .= "title=\"$title\" ";
48
- $hyperlink .= "href=\"$url\">$title</a>";
49
 
50
  return $hyperlink;
51
  }
45
  $hyperlink = '<a ';
46
  if( $target ) $hyperlink .= "target=\"$target\" ";
47
  if( $title ) $hyperlink .= "title=\"$title\" ";
48
+ $hyperlink .= "href=\"$url\">$anchor</a>";
49
 
50
  return $hyperlink;
51
  }
js/modules/aioseop_module.js CHANGED
@@ -338,8 +338,8 @@ jQuery(document).ready(function() {
338
  var stringref = jQuery(this).attr("href").split('#')[1];
339
  jQuery('.aioseop_tab:not(#'+stringref+')').hide('slow');
340
  jQuery('.aioseop_tab#' + stringref).show('slow');
341
- jQuery('.aioseop_header_tab[href!=#'+stringref+']').removeClass('active');
342
- jQuery('.aioseop_header_tab[href=#' + stringref+']').addClass('active');
343
  return false;
344
  });
345
  });
338
  var stringref = jQuery(this).attr("href").split('#')[1];
339
  jQuery('.aioseop_tab:not(#'+stringref+')').hide('slow');
340
  jQuery('.aioseop_tab#' + stringref).show('slow');
341
+ jQuery('.aioseop_header_tab[href!="#'+stringref+'"]').removeClass('active');
342
+ jQuery('.aioseop_header_tab[href="#' + stringref+'"]').addClass('active');
343
  return false;
344
  });
345
  });
readme.txt CHANGED
@@ -1,10 +1,10 @@
1
  === All in One SEO Pack ===
2
  Contributors: hallsofmontezuma, wpsmort, dougal, pbaylies, arnaudbroes
3
  Donate link: https://www.paypal.com/cgi-bin/webscr?cmd=_donations&business=mrtorbert%40gmail%2ecom&item_name=All%20In%20One%20SEO%20Pack&item_number=Support%20Open%20Source&no_shipping=0&no_note=1&tax=0&currency_code=USD&lc=US&bn=PP%2dDonationsBF&charset=UTF%2d8
4
- Tags: seo, SEO, all in one seo, widget, Post, plugin, admin, posts, shortcode, sidebar, google, twitter, page, images, comments, image, social, search engine optimization, sitemap, WordPress SEO, meta, meta description, xml sitemap, xml sitemaps, google sitemap, sitemaps, robots meta, rss, rss footer, yahoo, bing, news sitemaps, XML News Sitemaps, multisite, canonical, nofollow, noindex, keywords, meta keywords, description, webmaster tools, google webmaster tools, google analytics, seo pack
5
  Requires at least: 3.3
6
  Tested up to: 4.5
7
- Stable tag: 2.3.4
8
  License: GPLv2 or later
9
  License URI: http://www.gnu.org/licenses/gpl-2.0.html
10
 
1
  === All in One SEO Pack ===
2
  Contributors: hallsofmontezuma, wpsmort, dougal, pbaylies, arnaudbroes
3
  Donate link: https://www.paypal.com/cgi-bin/webscr?cmd=_donations&business=mrtorbert%40gmail%2ecom&item_name=All%20In%20One%20SEO%20Pack&item_number=Support%20Open%20Source&no_shipping=0&no_note=1&tax=0&currency_code=USD&lc=US&bn=PP%2dDonationsBF&charset=UTF%2d8
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: 3.3
6
  Tested up to: 4.5
7
+ Stable tag: 2.3.4.2
8
  License: GPLv2 or later
9
  License URI: http://www.gnu.org/licenses/gpl-2.0.html
10