All in One SEO Pack - Version 2.0.4.1

Version Description

Download this release

Release Info

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

Code changes from version 2.0.4 to 2.0.4.1

aioseop_class.php CHANGED
@@ -61,96 +61,23 @@ class All_in_One_SEO_Pack extends All_in_One_SEO_Pack_Module {
61
  $this->store_option = true;
62
  $this->file = __FILE__; // the current file
63
  parent::__construct();
64
- $this->default_options = array(
65
- "donate"=> Array(
66
- 'name' => __( 'I enjoy this plugin and have made a donation:', 'all_in_one_seo_pack' ),
67
- 'help_text' => __( "All donations support continued development of this free software.", 'all_in_one_seo_pack' ),
68
- 'default' => 0),
69
-
70
- "can"=> Array(
71
- 'name' => __( 'Canonical URLs:', 'all_in_one_seo_pack' ),
72
- 'help_text' => __( "This option will automatically generate Canonical URLs for your entire WordPress installation. This will help to prevent duplicate content penalties by <a href='http://googlewebmastercentral.blogspot.com/2009/02/specify-your-canonical.html' target='_blank'>Google</a>.<br /><a href='http://semperplugins.com/documentation/general-settings/' target='_blank'>Click here for documentation on this setting</a>", 'all_in_one_seo_pack' ),
73
- 'default' => 1),
74
-
75
- "use_original_title"=> Array(
76
- 'name' => __( 'Use Original Title:', 'all_in_one_seo_pack' ),
77
- 'help_text' => __( "Use wp_title to set the title; disable this option if you run into conflicts with the title being set by your theme or another plugin.<br /><a href='http://semperplugins.com/documentation/general-settings/' target='_blank'>Click here for documentation on this setting</a>", 'all_in_one_seo_pack' ),
78
- 'type' => 'radio',
79
- 'default' => 0,
80
- 'initial_options' => Array( 1 => __( 'Enabled', 'all_in_one_seo_pack' ),
81
- 0 => __( 'Disabled', 'all_in_one_seo_pack' ) )
82
- ),
83
-
84
- "do_log"=> Array(
85
- 'name' => __( 'Log important events:', 'all_in_one_seo_pack' ),
86
- 'help_text' => __( "Check this and All in One SEO Pack will create a log of important events (all_in_one_seo_pack.log) in its plugin directory which might help debugging. Make sure this directory is writable.<br /><a href='http://semperplugins.com/documentation/general-settings/' target='_blank'>Click here for documentation on this setting</a>", 'all_in_one_seo_pack' ),
87
- 'default' => null ),
88
-
89
- "home_title"=> Array(
90
- 'name' => __( 'Home Title:', 'all_in_one_seo_pack' ),
91
- 'help_text' => __( "As the name implies, this will be the Meta Title of your homepage. This is independent of any other option. If not set, the default Site Title (found in WordPress under Settings, General, Site Title) will be used.<br /><a href='http://semperplugins.com/documentation/home-page-settings/' target='_blank'>Click here for documentation on this setting</a>", 'all_in_one_seo_pack' ),
92
- 'default' => null, 'type' => 'textarea', 'sanitize' => 'text' ),
93
-
94
- "home_description"=> Array(
95
- 'name' => __( 'Home Description:', 'all_in_one_seo_pack' ),
96
- 'help_text' => __( "This will be the Meta Description for your homepage. This is independent of any other option. The default is no Meta Description at all if this is not set.<br /><a href='http://semperplugins.com/documentation/home-page-settings/' target='_blank'>Click here for documentation on this setting</a>", 'all_in_one_seo_pack' ),
97
- 'default' => '', 'type' => 'textarea', 'sanitize' => 'text' ),
98
-
99
- "home_keywords"=> Array(
100
- 'name' => __( 'Home Keywords (comma separated):', 'all_in_one_seo_pack' ),
101
- 'help_text' => __( "Enter a comma separated list of your most important keywords for your site that will be written as Meta Keywords on your homepage. Don\'t stuff everything in here.<br /><a href='http://semperplugins.com/documentation/home-page-settings/' target='_blank'>Click here for documentation on this setting</a>", 'all_in_one_seo_pack' ),
102
- 'default' => null, 'type' => 'textarea', 'sanitize' => 'text',
103
- 'condshow' => Array( "aiosp_togglekeywords" => 0 ) ),
104
-
105
- "togglekeywords" => Array(
106
- 'name' => __( 'Use Keywords:', 'all_in_one_seo_pack' ),
107
- 'help_text' => __( "This option allows you to toggle the use of Meta Keywords throughout the whole of the site.<br /><a href='http://semperplugins.com/documentation/keyword-settings/' target='_blank'>Click here for documentation on this setting</a>", 'all_in_one_seo_pack' ),
108
- 'default' => 0,
109
- 'type' => 'radio',
110
- 'initial_options' => Array( 0 => __( 'Enabled', 'all_in_one_seo_pack' ),
111
- 1 => __( 'Disabled', 'all_in_one_seo_pack' ) )
112
- ),
113
-
114
- "use_categories"=> Array(
115
- 'name' => __( 'Use Categories for Meta Keywords:', 'all_in_one_seo_pack' ),
116
- 'help_text' => __( "Check this if you want your categories for a given post used as the Meta Keywords for this post (in addition to any keywords you specify on the Edit Post screen).<br /><a href='http://semperplugins.com/documentation/keyword-settings/' target='_blank'>Click here for documentation on this setting</a>", 'all_in_one_seo_pack' ),
117
- 'default' => 0,
118
- 'condshow' => Array( "aiosp_togglekeywords" => 0 ) ),
119
-
120
- "use_tags_as_keywords" => Array(
121
- 'name' => __( 'Use Tags for Meta Keywords:', 'all_in_one_seo_pack' ),
122
- 'help_text' => __( "Check this if you want your tags for a given post used as the Meta Keywords for this post (in addition to any keywords you specify on the Edit Post screen).<br /><a href='http://semperplugins.com/documentation/keyword-settings/' target='_blank'>Click here for documentation on this setting</a>", 'all_in_one_seo_pack' ),
123
- 'default' => 1,
124
- 'condshow' => Array( "aiosp_togglekeywords" => 0 ) ),
125
-
126
- "dynamic_postspage_keywords"=> Array(
127
- 'name' => __( 'Dynamically Generate Keywords for Posts Page:', 'all_in_one_seo_pack' ),
128
- 'help_text' => __( "Check this if you want your keywords on your Posts page (set in WordPress under Settings, Reading, Front Page Displays) to be dynamically generated from the keywords of the posts showing on that page. If unchecked, it will use the keywords set in the Edit Page screen for the Posts page.<br /><a href='http://semperplugins.com/documentation/keyword-settings/' target='_blank'>Click here for documentation on this setting</a>", 'all_in_one_seo_pack' ),
129
- 'default' => 1,
130
- 'condshow' => Array( "aiosp_togglekeywords" => 0 ) ),
131
-
132
- "rewrite_titles"=> Array(
133
- 'name' => __( 'Rewrite Titles:', 'all_in_one_seo_pack' ),
134
- 'help_text' => __( "Note that this is all about the title tag. This is what you see in your browser's window title bar. This is NOT visible on a page, only in the title bar and in the source code. If enabled, all page, post, category, search and archive page titles get rewritten. You can specify the format for most of them. For example: Using the default post title format below, Rewrite Titles will write all post titles as 'Post Title | Blog Name'. If you have manually defined a title using All in One SEO Pack, this will become the title of your post in the format string.<br /><a href='http://semperplugins.com/documentation/title-settings/' target='_blank'>Click here for documentation on this setting</a>", 'all_in_one_seo_pack' ),
135
- 'default' => 1,
136
- 'type' => 'radio',
137
- 'initial_options' => Array( 1 => __( 'Enabled', 'all_in_one_seo_pack' ),
138
- 0 => __( 'Disabled', 'all_in_one_seo_pack' ) )
139
- ),
140
-
141
- "cap_titles"=> Array(
142
- 'name' => __( 'Capitalize Titles:', 'all_in_one_seo_pack' ),
143
- 'help_text' => __( "Check this and Search Page Titles and Tag Page Titles will have the first letter of each word capitalized.<br /><a href='http://semperplugins.com/documentation/title-settings/' target='_blank'>Click here for documentation on this setting</a>", 'all_in_one_seo_pack' ),
144
- 'default' => 1),
145
-
146
- "cap_cats"=> Array(
147
- 'name' => __( 'Capitalize Category Titles:', 'all_in_one_seo_pack' ),
148
- 'help_text' => __( "Check this and Category Titles will have the first letter of each word capitalized.<br /><a href='http://semperplugins.com/documentation/title-settings/' target='_blank'>Click here for documentation on this setting</a>", 'all_in_one_seo_pack' ),
149
- 'default' => 1),
150
-
151
- "page_title_format"=> Array(
152
- 'name' => __( 'Page Title Format:', 'all_in_one_seo_pack' ),
153
- 'help_text' =>
154
  __( "This controls the format of the title tag for Pages.<br /><a href='http://semperplugins.com/documentation/title-settings/' target='_blank'>Click here for documentation on this setting</a><br />The following macros are supported:", 'all_in_one_seo_pack' )
155
  . '<ul><li>' . __( '%blog_title% - Your blog title', 'all_in_one_seo_pack' ) . '</li><li>' .
156
  __( '%blog_description% - Your blog description', 'all_in_one_seo_pack' ) . '</li><li>' .
@@ -162,13 +89,7 @@ class All_in_One_SEO_Pack extends All_in_One_SEO_Pack_Module {
162
  __( "%page_author_firstname% - This page's author' first name (capitalized)", 'all_in_one_seo_pack' ) . '</li><li>' .
163
  __( "%page_author_lastname% - This page's author' last name (capitalized)", 'all_in_one_seo_pack' ) . '</li>' .
164
  '</ul>',
165
- 'type' => 'text',
166
- 'default' => '%page_title% | %blog_title%',
167
- 'condshow' => Array( "aiosp_rewrite_titles" => 1 ) ),
168
-
169
- "post_title_format"=> Array(
170
- 'name' => __( 'Post Title Format:', 'all_in_one_seo_pack' ),
171
- 'help_text' =>
172
  __( "This controls the format of the title tag for Posts.<br /><a href='http://semperplugins.com/documentation/title-settings/' target='_blank'>Click here for documentation on this setting</a><br />The following macros are supported:", 'all_in_one_seo_pack' )
173
  . '<ul><li>' . __( '%blog_title% - Your blog title', 'all_in_one_seo_pack' ) . '</li><li>' .
174
  __( '%blog_description% - Your blog description', 'all_in_one_seo_pack' ) . '</li><li>' .
@@ -180,25 +101,13 @@ class All_in_One_SEO_Pack extends All_in_One_SEO_Pack_Module {
180
  __( "%post_author_firstname% - This post's author' first name (capitalized)", 'all_in_one_seo_pack' ) . '</li><li>' .
181
  __( "%post_author_lastname% - This post's author' last name (capitalized)", 'all_in_one_seo_pack' ) . '</li>' .
182
  '</ul>',
183
- 'type' => 'text',
184
- 'default' => '%post_title% | %blog_title%',
185
- 'condshow' => Array( "aiosp_rewrite_titles" => 1 ) ),
186
-
187
- "category_title_format"=> Array(
188
- 'name' => __( 'Category Title Format:', 'all_in_one_seo_pack' ),
189
- 'help_text' =>
190
  __( "This controls the format of the title tag for Category Archives.<br /><a href='http://semperplugins.com/documentation/title-settings/' target='_blank'>Click here for documentation on this setting</a><br />The following macros are supported:", 'all_in_one_seo_pack' ) .
191
  '<ul><li>' . __( '%blog_title% - Your blog title', 'all_in_one_seo_pack' ) . '</li><li>' .
192
  __( '%blog_description% - Your blog description', 'all_in_one_seo_pack' ) . '</li><li>' .
193
  __( '%category_title% - The original title of the category', 'all_in_one_seo_pack' ) . '</li><li>' .
194
  __( '%category_description% - The description of the category', 'all_in_one_seo_pack' ) . '</li></ul>',
195
- 'type' => 'text',
196
- 'default' => '%category_title% | %blog_title%',
197
- 'condshow' => Array( "aiosp_rewrite_titles" => 1 ) ),
198
-
199
- "archive_title_format"=> Array(
200
- 'name' => __( 'Date Archive Title Format:', 'all_in_one_seo_pack' ),
201
- 'help_text' =>
202
  __( "This controls the format of the title tag for Date Archives.<br /><a href='http://semperplugins.com/documentation/title-settings/' target='_blank'>Click here for documentation on this setting</a><br />The following macros are supported:", 'all_in_one_seo_pack' ) .
203
  '<ul><li>' . __( '%blog_title% - Your blog title', 'all_in_one_seo_pack' ) . '</li><li>' .
204
  __( '%blog_description% - Your blog description', 'all_in_one_seo_pack' ) . '</li><li>' .
@@ -206,276 +115,311 @@ class All_in_One_SEO_Pack extends All_in_One_SEO_Pack_Module {
206
  __( '%day% - The original archive day given by wordpress, e.g. "17"', 'all_in_one_seo_pack' ) . '</li><li>' .
207
  __( '%month% - The original archive month given by wordpress, e.g. "August"', 'all_in_one_seo_pack' ) . '</li><li>' .
208
  __( '%year% - The original archive year given by wordpress, e.g. "2007"', 'all_in_one_seo_pack' ) . '</li></ul>',
209
- 'type' => 'text',
210
- 'default' => '%date% | %blog_title%',
211
- 'condshow' => Array( "aiosp_rewrite_titles" => 1 ) ),
212
-
213
- "author_title_format"=> Array(
214
- 'name' => __( 'Author Archive Title Format:', 'all_in_one_seo_pack' ),
215
- 'help_text' =>
216
  __( "This controls the format of the title tag for Author Archives.<br /><a href='http://semperplugins.com/documentation/title-settings/' target='_blank'>Click here for documentation on this setting</a><br />The following macros are supported:", 'all_in_one_seo_pack' ) .
217
  '<ul><li>' . __( '%blog_title% - Your blog title', 'all_in_one_seo_pack' ) . '</li><li>' .
218
  __( '%blog_description% - Your blog description', 'all_in_one_seo_pack' ) . '</li><li>' .
219
  __( '%author% - The original archive title given by wordpress, e.g. "Steve" or "John Smith"', 'all_in_one_seo_pack' ) . '</li></ul>',
220
- 'type' => 'text',
221
- 'default' => '%author% | %blog_title%',
222
- 'condshow' => Array( "aiosp_rewrite_titles" => 1 ) ),
223
-
224
- "tag_title_format"=> Array(
225
- 'name' => __( 'Tag Title Format:', 'all_in_one_seo_pack' ),
226
- 'help_text' =>
227
  __( "This controls the format of the title tag for Tag Archives.<br /><a href='http://semperplugins.com/documentation/title-settings/' target='_blank'>Click here for documentation on this setting</a><br />The following macros are supported:", 'all_in_one_seo_pack' ) .
228
  '<ul><li>' . __( '%blog_title% - Your blog title', 'all_in_one_seo_pack' ) . '</li><li>' .
229
  __( '%blog_description% - Your blog description', 'all_in_one_seo_pack' ) . '</li><li>' .
230
  __( '%tag% - The name of the tag', 'all_in_one_seo_pack' ) . '</li></ul>',
231
- 'type' => 'text',
232
- 'default' => '%tag% | %blog_title%',
233
- 'condshow' => Array( "aiosp_rewrite_titles" => 1 ) ),
234
-
235
- "search_title_format"=> Array(
236
- 'name' => __( 'Search Title Format:', 'all_in_one_seo_pack' ),
237
- 'help_text' =>
238
  __( "This controls the format of the title tag for the Search page.<br /><a href='http://semperplugins.com/documentation/title-settings/' target='_blank'>Click here for documentation on this setting</a><br />The following macros are supported:", 'all_in_one_seo_pack' ) .
239
  '<ul><li>' . __( '%blog_title% - Your blog title', 'all_in_one_seo_pack' ) . '</li><li>' .
240
  __( '%blog_description% - Your blog description', 'all_in_one_seo_pack' ) . '</li><li>' .
241
  __( '%search% - What was searched for', 'all_in_one_seo_pack' ) . '</li></ul>',
242
- 'type' => 'text',
243
- 'default' => '%search% | %blog_title%',
244
- 'condshow' => Array( "aiosp_rewrite_titles" => 1 ) ),
245
-
246
- "description_format"=> Array(
247
- 'name' => __( 'Description Format', 'all_in_one_seo_pack' ),
248
- 'help_text' => __( "This controls the format of Meta Descriptions.<br /><a href='http://semperplugins.com/documentation/title-settings/' target='_blank'>Click here for documentation on this setting</a><br />The following macros are supported:", 'all_in_one_seo_pack' ) .
249
  '<ul><li>' . __( '%blog_title% - Your blog title', 'all_in_one_seo_pack' ) . '</li><li>' .
250
  __( '%blog_description% - Your blog description', 'all_in_one_seo_pack' ) . '</li><li>' .
251
  __( '%description% - The original description as determined by the plugin, e.g. the excerpt if one is set or an auto-generated one if that option is set', 'all_in_one_seo_pack' ) . '</li><li>' .
252
  __( '%wp_title% - The original wordpress title, e.g. post_title for posts', 'all_in_one_seo_pack' ) . '</li></ul>',
253
- 'type' => 'text',
254
- 'default' => '%description%',
255
- 'condshow' => Array( "aiosp_rewrite_titles" => 1 ) ),
256
-
257
- "404_title_format"=> Array(
258
- 'name' => __( '404 Title Format:', 'all_in_one_seo_pack' ),
259
- 'help_text' => __( "This controls the format of the title tag for the 404 page.<br /><a href='http://semperplugins.com/documentation/title-settings/' target='_blank'>Click here for documentation on this setting</a><br />The following macros are supported:", 'all_in_one_seo_pack' ) .
260
  '<ul><li>' . __( '%blog_title% - Your blog title', 'all_in_one_seo_pack' ) . '</li><li>' .
261
  __( '%blog_description% - Your blog description', 'all_in_one_seo_pack' ) . '</li><li>' .
262
  __( '%request_url% - The original URL path, like "/url-that-does-not-exist/"', 'all_in_one_seo_pack' ) . '</li><li>' .
263
  __( '%request_words% - The URL path in human readable form, like "Url That Does Not Exist"', 'all_in_one_seo_pack' ) . '</li><li>' .
264
  __( '%404_title% - Additional 404 title input"', 'all_in_one_seo_pack' ) . '</li></ul>',
265
- 'type' => 'text',
266
- 'default' => 'Nothing found for %request_words%',
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
267
  'condshow' => Array( "aiosp_rewrite_titles" => 1 ) ),
268
-
269
  "paged_format"=> Array(
270
  'name' => __( 'Paged Format:', 'all_in_one_seo_pack' ),
271
- 'help_text' => __( "This string gets appended/prepended to titles of paged index pages (like home or archive pages).<br /><a href='http://semperplugins.com/documentation/title-settings/' target='_blank'>Click here for documentation on this setting</a>", 'all_in_one_seo_pack' )
272
- . __( 'The following macros are supported:', 'all_in_one_seo_pack' )
273
- . '<ul><li>' . __( '%page% - The page number', 'all_in_one_seo_pack' ) . '</li></ul>',
274
- 'type' => 'text',
275
- 'default' => ' - Part %page%',
276
  'condshow' => Array( "aiosp_rewrite_titles" => 1 ) ),
277
-
278
  "enablecpost"=> Array(
279
  'name' => __( 'SEO for Custom Post Types:', 'all_in_one_seo_pack' ),
280
- 'help_text' => __( "Check this if you want to use All in One SEO Pack with any Custom Post Types on this site.<br /><a href='http://semperplugins.com/documentation/custom-post-type-settings/' target='_blank'>Click here for documentation on this setting</a>", 'all_in_one_seo_pack' ),
281
  'default' => 'on',
282
  'type' => 'radio',
283
  'initial_options' => Array( 'on' => __( 'Enabled', 'all_in_one_seo_pack' ),
284
  0 => __( 'Disabled', 'all_in_one_seo_pack' ) )
285
  ),
286
-
287
  "cpostadvanced" => Array(
288
  'name' => __( 'Enable Advanced Options:', 'all_in_one_seo_pack' ),
289
- 'help_text' => __( "This will show or hide the advanced options for SEO for Custom Post Types.<br /><a href='http://semperplugins.com/documentation/custom-post-type-settings/' target='_blank'>Click here for documentation on this setting</a>", 'all_in_one_seo_pack' ),
290
- 'default' => 0,
291
- 'type' => 'radio',
292
  'initial_options' => Array( 'on' => __( 'Enabled', 'all_in_one_seo_pack' ),
293
  0 => __( 'Disabled', 'all_in_one_seo_pack' ) ),
294
  'label' => null,
295
  'condshow' => Array( "aiosp_enablecpost" => 'on' )
296
  ),
297
-
298
  "cpostactive" => Array(
299
  'name' => __( 'SEO on only these post types:', 'all_in_one_seo_pack' ),
300
- 'help_text' => __( "Use these checkboxes to select which Post Types you want to use All in One SEO Pack with.<br /><a href='http://semperplugins.com/documentation/custom-post-type-settings/' target='_blank'>Click here for documentation on this setting</a>", 'all_in_one_seo_pack' ),
301
- 'type' => 'multicheckbox',
302
- 'default' => array('post', 'page'),
 
 
 
 
 
 
 
 
303
  'condshow' => Array( 'aiosp_enablecpost' => 'on', 'aiosp_cpostadvanced' => 'on' )
304
  ),
305
-
306
  "cposttitles" => Array(
307
  'name' => __( 'Custom titles:', 'all_in_one_seo_pack' ),
308
- 'help_text' => __( "This allows you to set the title tags for each Custom Post Type.<br /><a href='http://semperplugins.com/documentation/custom-post-type-settings/' target='_blank'>Click here for documentation on this setting</a>", 'all_in_one_seo_pack' ),
309
- 'type' => 'checkbox',
310
- 'default' => 0,
311
  'condshow' => Array( 'aiosp_enablecpost' => 'on', 'aiosp_cpostadvanced' => 'on' )
312
  ),
313
-
314
  "posttypecolumns" => Array(
315
- 'name' => __( 'Show SEO Columns:', 'all_in_one_seo_pack' ),
316
- 'help_text' => __( "This lets you select which screens display the SEO Title, SEO Keywords and SEO Description columns.<br /><a href='http://semperplugins.com/documentation/display-settings/' target='_blank'>Click here for documentation on this setting</a>", 'all_in_one_seo_pack' ),
317
- 'type' => 'multicheckbox',
318
- 'default' => array('post', 'page') ),
319
-
320
  "admin_bar" => Array(
321
- 'name' => __( 'Display Menu In Admin Bar:', 'all_in_one_seo_pack' ),
322
- 'help_text' => __( "Check this to add All in One SEO Pack to the Admin Bar for easy access to your SEO settings.<br /><a href='http://semperplugins.com/documentation/display-settings/' target='_blank'>Click here for documentation on this setting</a>", 'all_in_one_seo_pack' ),
323
- 'default' => 'on',
324
  ),
325
-
326
  "custom_menu_order" => Array(
327
- 'name' => __( 'Display Menu At The Top:', 'all_in_one_seo_pack' ),
328
- 'help_text' => __( "Check this to move the All in One SEO Pack menu item to the top of your WordPress Dashboard menu.<br /><a href='http://semperplugins.com/documentation/display-settings/' target='_blank'>Click here for documentation on this setting</a>", 'all_in_one_seo_pack' ),
329
- 'default' => 'on',
330
  ),
331
-
332
  "google_verify" => Array(
333
- 'name' => __( 'Google Webmaster Tools:', 'all_in_one_seo_pack' ),
334
- 'help_text' => __( "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' ),
335
- 'default' => '', 'type' => 'text' ),
336
-
337
  "bing_verify" => Array(
338
- 'name' => __( 'Bing Webmaster Center:', 'all_in_one_seo_pack' ),
339
- 'help_text' => __( "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' ),
340
- 'default' => '', 'type' => 'text' ),
341
-
342
  "pinterest_verify" => Array(
343
- 'name' => __( 'Pinterest Site Verification:', 'all_in_one_seo_pack' ),
344
- 'help_text' => __( "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' ),
345
- 'default' => '', 'type' => 'text' ),
346
-
347
  "google_publisher"=> Array(
348
- 'name' => __( 'Google Plus Default Profile:', 'all_in_one_seo_pack' ),
349
- 'help_text' => __( "Enter your Google Plus Profile URL here to link your site to your Google Plus account for authorship.<br /><a href='http://semperplugins.com/documentation/google-settings/' target='_blank'>Click here for documentation on this setting</a>", 'all_in_one_seo_pack' ),
350
- 'default' => '', 'type' => 'text' ),
351
-
352
  "google_disable_profile"=> Array(
353
- 'name' => __( 'Disable Google Plus Profile:', 'all_in_one_seo_pack' ),
354
- 'help_text' => __( "Check this to remove the Google Plus field from the user profile screen.<br /><a href='http://semperplugins.com/documentation/google-settings/' target='_blank'>Click here for documentation on this setting</a>", 'all_in_one_seo_pack' ),
355
- 'default' => 0, 'type' => 'checkbox' ),
356
-
357
  "google_analytics_id"=> Array(
358
  'name' => __( 'Google Analytics ID:', 'all_in_one_seo_pack' ),
359
- 'help_text' => __( "Enter your Google Analytics ID here to track visitor behavior on your site using Google Analytics.<br /><a href='http://semperplugins.com/documentation/google-analytics/' target='_blank'>Click here for documentation on this setting</a>", 'all_in_one_seo_pack' ),
360
  'default' => null, 'type' => 'text' ),
361
-
362
  "ga_use_universal_analytics" => Array(
363
  'name' => __( 'Use Universal Analytics:', 'all_in_one_seo_pack' ),
364
- 'help_text' => __( "Use the new Universal Analytics tracking code for Google Analytics; do this for new analytics accounts.", 'all_in_one_seo_pack' ),
365
  'default' => 0,
366
  'condshow' => Array( 'aiosp_google_analytics_id' => Array( 'lhs' => 'aiosp_google_analytics_id', 'op' => '!=', 'rhs' => '' ) ) ),
367
-
368
- "google_analytics_legacy_id"=> Array(
369
- 'name' => __( 'Google Analytics Legacy ID:', 'all_in_one_seo_pack' ),
370
- 'help_text' => __( "Enter your old Google Analytics ID here if you wish to continue tracking your site with an old GA Google Analytics tracking code in addition to using the new Universal Analytics code.", 'all_in_one_seo_pack' ),
371
- 'default' => null, 'type' => 'text',
372
- 'condshow' => Array( 'aiosp_google_analytics_id' => Array( 'lhs' => 'aiosp_google_analytics_id', 'op' => '!=', 'rhs' => '' ), "aiosp_ga_use_universal_analytics" => 'on' ) ),
373
-
374
  "ga_domain"=> Array(
375
  'name' => __( 'Tracking Domain:', 'all_in_one_seo_pack' ),
376
  'type' => 'text',
377
- 'help_text' => __( "Enter your domain name if you have enabled tracking of Subdomains in Google Analytics.<br /><a href='http://semperplugins.com/documentation/google-settings/' target='_blank'>Click here for documentation on this setting</a>", 'all_in_one_seo_pack' ),
378
  'condshow' => Array( 'aiosp_google_analytics_id' => Array( 'lhs' => 'aiosp_google_analytics_id', 'op' => '!=', 'rhs' => '' ) ) ),
379
-
380
  "ga_multi_domain"=> Array(
381
  'name' => __( 'Track Multiple Domains:', 'all_in_one_seo_pack' ),
382
- 'help_text' => __( "Check this if you have enabled tracking of Multiple top-level domains in Google Analytics.<br /><a href='http://semperplugins.com/documentation/google-settings/' target='_blank'>Click here for documentation on this setting</a>", 'all_in_one_seo_pack' ),
383
  'default' => 0,
384
  'condshow' => Array( 'aiosp_google_analytics_id' => Array( 'lhs' => 'aiosp_google_analytics_id', 'op' => '!=', 'rhs' => '' ) ) ),
385
-
386
  "ga_track_outbound_links"=> Array(
387
  'name' => __( 'Track Outbound Links:', 'all_in_one_seo_pack' ),
388
- 'help_text' => __( "Check this if you want to track outbound links with Google Analytics.<br /><a href='http://semperplugins.com/documentation/google-settings/' target='_blank'>Click here for documentation on this setting</a>", 'all_in_one_seo_pack' ),
389
  'default' => 0,
390
  'condshow' => Array( 'aiosp_google_analytics_id' => Array( 'lhs' => 'aiosp_google_analytics_id', 'op' => '!=', 'rhs' => '' ) ) ),
391
-
392
- "cpostnoindex" => Array(
393
- 'name' => __( 'Default NOINDEX settings:', 'all_in_one_seo_pack' ),
394
- 'help_text' => __( "Set the default NOINDEX setting for each Post Type.<br /><a href='http://semperplugins.com/documentation/noindex-settings/' target='_blank'>Click here for documentation on this setting</a>", 'all_in_one_seo_pack' ),
395
- 'type' => 'multicheckbox',
396
- 'default' => array(),
397
- 'condshow' => Array( 'aiosp_enablecpost' => 'on', 'aiosp_cpostadvanced' => 'on' )
398
- ),
399
-
400
- "cpostnofollow" => Array(
401
- 'name' => __( 'Default NOFOLLOW settings:', 'all_in_one_seo_pack' ),
402
- 'help_text' => __( "Set the default NOFOLLOW setting for each Post Type.<br /><a href='http://semperplugins.com/documentation/noindex-settings/' target='_blank'>Click here for documentation on this setting</a>", 'all_in_one_seo_pack' ),
403
- 'type' => 'multicheckbox',
404
- 'default' => array(),
405
- 'condshow' => Array( 'aiosp_enablecpost' => 'on', 'aiosp_cpostadvanced' => 'on' )
406
- ),
407
-
408
  "category_noindex"=> Array(
409
- 'name' => __( 'Use NOINDEX for Category Archives:', 'all_in_one_seo_pack' ),
410
- 'help_text' => __( "Check this to ask search engines not to index Category Archives. Useful for avoiding duplicate content.<br /><a href='http://semperplugins.com/documentation/noindex-settings/' target='_blank'>Click here for documentation on this setting</a>", 'all_in_one_seo_pack' ),
411
  'default' => 1),
412
-
413
  "archive_date_noindex"=> Array(
414
- 'name' => __( 'Use NOINDEX for Date Archives:', 'all_in_one_seo_pack' ),
415
- 'help_text' => __( "Check this to ask search engines not to index Date Archives. Useful for avoiding duplicate content.<br /><a href='http://semperplugins.com/documentation/noindex-settings/' target='_blank'>Click here for documentation on this setting</a>", 'all_in_one_seo_pack' ),
416
  'default' => 1),
417
-
418
  "archive_author_noindex"=> Array(
419
- 'name' => __( 'Use NOINDEX for Author Archives:', 'all_in_one_seo_pack' ),
420
- 'help_text' => __( "Check this to ask search engines not to index Author Archives. Useful for avoiding duplicate content.<br /><a href='http://semperplugins.com/documentation/noindex-settings/' target='_blank'>Click here for documentation on this setting</a>", 'all_in_one_seo_pack' ),
421
  'default' => 1),
422
-
423
  "tags_noindex"=> Array(
424
- 'name' => __( 'Use NOINDEX for Tag Archives:', 'all_in_one_seo_pack' ),
425
- 'help_text' => __( "Check this to ask search engines not to index Tag Archives. Useful for avoiding duplicate content.<br /><a href='http://semperplugins.com/documentation/noindex-settings/' target='_blank'>Click here for documentation on this setting</a>", 'all_in_one_seo_pack' ),
426
  'default' => 0),
427
-
428
  "search_noindex"=> Array(
429
- 'name' => __( 'Use NOINDEX for the Search page:', 'all_in_one_seo_pack' ),
430
- 'help_text' => __( "Check this to ask search engines not to index the Search page. Useful for avoiding duplicate content.<br /><a href='http://semperplugins.com/documentation/noindex-settings/' target='_blank'>Click here for documentation on this setting</a>", 'all_in_one_seo_pack' ),
431
  'default' => 0),
432
-
433
  "generate_descriptions"=> Array(
434
  'name' => __( 'Autogenerate Descriptions:', 'all_in_one_seo_pack' ),
435
- 'help_text' => __( "Check this and your Meta Descriptions will be auto-generated from your excerpt or content.<br /><a href='http://semperplugins.com/documentation/advanced-settings/' target='_blank'>Click here for documentation on this setting</a>", 'all_in_one_seo_pack' ),
436
  'default' => 1),
437
-
438
  "hide_paginated_descriptions"=> Array(
439
  'name' => __( 'Remove Descriptions For Paginated Pages:', 'all_in_one_seo_pack' ),
440
- 'help_text' => __( "Check this and your Meta Descriptions will be removed from page 2 or later of paginated content.<br /><a href='http://semperplugins.com/documentation/advanced-settings/' target='_blank'>Click here for documentation on this setting</a>", 'all_in_one_seo_pack' ),
441
  'default' => 0),
442
-
443
  "unprotect_meta"=> Array(
444
  'name' => __( 'Unprotect Post Meta Fields:', 'all_in_one_seo_pack' ),
445
- 'help_text' => __( "Check this to unprotect internal postmeta fields for use with XMLRPC. If you don't know what that is, leave it unchecked.<br /><a href='http://semperplugins.com/documentation/advanced-settings/' target='_blank'>Click here for documentation on this setting</a>", 'all_in_one_seo_pack' ),
446
  'default' => 0),
447
-
448
  "ex_pages" => Array(
449
  'name' => __( 'Exclude Pages:', 'all_in_one_seo_pack' ),
450
- 'help_text' => __( "Enter a comma separated list of pages here to be excluded by All in One SEO Pack. This is helpful when using plugins which generate their own non-WordPress dynamic pages. Ex: <em>/forum/, /contact/</em> For instance, if you want to exclude the virtual pages generated by a forum plugin, all you have to do is add forum or /forum or /forum/ or and any URL with the word \"forum\" in it, such as http://mysite.com/forum or http://mysite.com/forum/someforumpage here and it will be excluded from All in One SEO Pack.<br /><a href='http://semperplugins.com/documentation/advanced-settings/' target='_blank'>Click here for documentation on this setting</a>", 'all_in_one_seo_pack' ),
451
  'type' => 'textarea', 'default' => '' ),
452
-
453
  "post_meta_tags"=> Array(
454
  'name' => __( 'Additional Post Headers:', 'all_in_one_seo_pack' ),
455
- 'help_text' => __( "What you enter here will be copied verbatim to the header of all Posts. You can enter whatever additional headers you want here, even references to stylesheets.<br /><a href='http://semperplugins.com/documentation/advanced-settings/' target='_blank'>Click here for documentation on this setting</a>", 'all_in_one_seo_pack' ),
456
  'type' => 'textarea', 'default' => '', 'sanitize' => 'default' ),
457
-
458
  "page_meta_tags"=> Array(
459
  'name' => __( 'Additional Page Headers:', 'all_in_one_seo_pack' ),
460
- 'help_text' => __( "What you enter here will be copied verbatim to the header of all Pages. You can enter whatever additional headers you want here, even references to stylesheets.<br /><a href='http://semperplugins.com/documentation/advanced-settings/' target='_blank'>Click here for documentation on this setting</a>", 'all_in_one_seo_pack' ),
461
  'type' => 'textarea', 'default' => '', 'sanitize' => 'default' ),
462
-
463
  "front_meta_tags"=> Array(
464
  'name' => __( 'Additional Front Page Headers:', 'all_in_one_seo_pack' ),
465
- 'help_text' => __( "What you enter here will be copied verbatim to the header of the front page if you have set a static page in Settings, Reading, Front Page Displays. You can enter whatever additional headers you want here, even references to stylesheets. This will fall back to using Additional Page Headers if you have them set and nothing is entered here.<br /><a href='http://semperplugins.com/documentation/advanced-settings/' target='_blank'>Click here for documentation on this setting</a>", 'all_in_one_seo_pack' ),
466
  'type' => 'textarea', 'default' => '', 'sanitize' => 'default' ),
467
-
468
  "home_meta_tags"=> Array(
469
  'name' => __( 'Additional Blog Page Headers:', 'all_in_one_seo_pack' ),
470
- 'help_text' => __( "What you enter here will be copied verbatim to the header of the home page if you have Front page displays your latest posts selected in Settings, Reading.  It will also be copied verbatim to the header on the Posts page if you have one set in Settings, Reading. You can enter whatever additional headers you want here, even references to stylesheets.<br /><a href='http://semperplugins.com/documentation/advanced-settings/' target='_blank'>Click here for documentation on this setting</a>", 'all_in_one_seo_pack' ),
471
  'type' => 'textarea', 'default' => '', 'sanitize' => 'default' ),
472
-
 
 
473
  );
474
 
475
-
476
  $this->locations = Array(
477
  'default' => Array( 'name' => $this->name, 'prefix' => 'aiosp_', 'type' => 'settings', 'options' => null ),
478
- 'aiosp' => Array( 'name' => $this->plugin_name, 'type' => 'metabox', 'prefix' => '',
479
  'options' => Array( 'edit', 'nonce-aioseop-edit', 'upgrade', 'snippet', 'title', 'description', 'keywords', 'noindex', 'nofollow', 'noodp', 'noydir', 'titleatr', 'menulabel', 'sitemap_exclude', 'disable', 'disable_analytics' ),
480
  'default_options' => Array(
481
  'edit' => Array( 'type' => 'hidden', 'default' => 'aiosp_edit', 'prefix' => true, 'nowrap' => 1 ),
@@ -484,7 +428,7 @@ class All_in_One_SEO_Pack extends All_in_One_SEO_Pack_Module {
484
  'default' => '<a target="__blank" href="http://semperplugins.com/plugins/all-in-one-seo-pack-pro-version/?loc=meta">'
485
  . __( 'Upgrade to All in One SEO Pack Pro Version', 'all_in_one_seo_pack' ) . '</a>'
486
  ),
487
- 'snippet' => Array( 'name' => __( 'Preview Snippet', 'all_in_one_seo_pack' ), 'type' => 'custom', 'help_text' => __( 'A preview of what this page might look like in search engine results.', 'all_in_one_seo_pack' ), 'label' => 'top',
488
  'default' => '
489
  <script>
490
  jQuery(document).ready(function() {
@@ -497,21 +441,29 @@ class All_in_One_SEO_Pack extends All_in_One_SEO_Pack_Module {
497
  });
498
  </script>
499
  <div class="preview_snippet"><div id="aioseop_snippet"><h3><a id="aioseop_snippet_title">%s</a></h3><div><div><cite id="aioseop_snippet_link">%s</cite></div><span id="aioseop_snippet_description">%s</span></div></div></div>' ),
500
- 'title' => Array( 'name' => __( 'Title', 'all_in_one_seo_pack' ), 'type' => 'text', 'help_text' => __( 'A custom title that shows up in the title tag for this page.', 'all_in_one_seo_pack' ), 'count' => true, 'size' => 60 ),
501
- 'description' => Array( 'name' => __( 'Description', 'all_in_one_seo_pack' ), 'type' => 'textarea', 'help_text' => __( 'The META description for this page. This will override any autogenerated descriptions.', 'all_in_one_seo_pack' ), 'count' => true, 'cols' => 80, 'rows' => 2 ),
502
- 'keywords' => Array( 'name' => __( 'Keywords (comma separated)', 'all_in_one_seo_pack' ), 'type' => 'text', 'help_text' => __( 'A comma separated list of your most important keywords for this page that will be written as META keywords.', 'all_in_one_seo_pack' ) ),
503
- 'noindex' => Array( 'name' => __( "Robots Meta NOINDEX", 'all_in_one_seo_pack' ), 'default' => '', 'help_text' => __( 'Check this box to ask search engines not to index this page.', 'all_in_one_seo_pack' ) ),
504
- 'nofollow' => Array( 'name' => __( "Robots Meta NOFOLLOW", 'all_in_one_seo_pack' ), 'default' => '', 'help_text' => __( 'Check this box to ask search engines not to follow links from this page.', 'all_in_one_seo_pack' ) ),
505
- 'noodp' => Array( 'name' => __( "Robots Meta NOODP", 'all_in_one_seo_pack' ), 'help_text' => __( 'Check this box to ask search engines not to use descriptions from the Open Directory Project for this page.', 'all_in_one_seo_pack' ) ),
506
- 'noydir' => Array( 'name' => __( "Robots Meta NOYDIR", 'all_in_one_seo_pack' ), 'help_text' => __( 'Check this box to ask Yahoo! not to use descriptions from the Yahoo! directory for this page.', 'all_in_one_seo_pack' ) ),
507
- 'titleatr' => Array( 'name' => __( 'Title Attribute', 'all_in_one_seo_pack' ), 'type' => 'text', 'help_text' => __( 'Set the title attribute for menu links.', 'all_in_one_seo_pack' ), 'size' => 60 ),
508
- 'menulabel' => Array( 'name' => __( 'Menu Label', 'all_in_one_seo_pack' ), 'type' => 'text', 'help_text' => __( 'Set the label for this page menu item.', 'all_in_one_seo_pack' ), 'size' => 60 ),
509
- 'sitemap_exclude' => Array( 'name' => __( 'Exclude From Sitemap', 'all_in_one_seo_pack' ), 'help_text' => __( "Don't display this page in the sitemap.", 'all_in_one_seo_pack' ) ),
510
- 'disable' => Array( 'name' => __( 'Disable on this page/post', 'all_in_one_seo_pack' ), 'help_text' => __( 'Disable SEO on this page.', 'all_in_one_seo_pack' ) ),
511
- 'disable_analytics' => Array( 'name' => __( 'Disable Google Analytics', 'all_in_one_seo_pack' ), 'help_text' => __( 'Disable Google Analytics on this page.', 'all_in_one_seo_pack' ), 'condshow' => Array( 'aiosp_disable' => 'on' ) ) ),
512
  'display' => null )
513
  );
514
-
 
 
 
 
 
 
 
 
515
  $this->layout = Array(
516
  'default' => Array(
517
  'name' => __( 'General Settings', 'all_in_one_seo_pack' ),
@@ -546,13 +498,13 @@ class All_in_One_SEO_Pack extends All_in_One_SEO_Pack_Module {
546
  ),
547
  'webmaster' => Array(
548
  'name' => __( 'Webmaster Verification', 'all_in_one_seo_pack' ),
549
- 'help_link' => 'http://semperplugins.com/documentation/google-webmaster-tools-verification/',
550
  'options' => Array( "google_verify", "bing_verify", "pinterest_verify" )
551
  ),
552
  'google' => Array(
553
  'name' => __( 'Google Settings', 'all_in_one_seo_pack' ),
554
  'help_link' => 'http://semperplugins.com/documentation/google-settings/',
555
- 'options' => Array( "google_publisher", "google_disable_profile", "google_analytics_id", "ga_use_universal_analytics", "google_analytics_legacy_id", "ga_domain", "ga_multi_domain", "ga_track_outbound_links" )
556
  ),
557
  'noindex' => Array(
558
  'name' => __( 'Noindex Settings', 'all_in_one_seo_pack' ),
@@ -779,7 +731,7 @@ class All_in_One_SEO_Pack extends All_in_One_SEO_Pack_Module {
779
  }
780
 
781
  $this->setting_options();
782
- add_filter( "{$this->prefix}display_options", Array( $this, 'filter_options' ), 10, 3 );
783
  parent::add_page_hooks();
784
  }
785
 
@@ -807,7 +759,7 @@ class All_in_One_SEO_Pack extends All_in_One_SEO_Pack_Module {
807
 
808
  function enqueue_scripts() {
809
  add_filter( "{$this->prefix}display_settings", Array( $this, 'filter_settings' ), 10, 3 );
810
- add_filter( "{$this->prefix}display_options", Array( $this, 'filter_options' ), 10, 3 );
811
  parent::enqueue_scripts();
812
  }
813
 
@@ -931,6 +883,8 @@ class All_in_One_SEO_Pack extends All_in_One_SEO_Pack_Module {
931
  <p>
932
  <a target="_blank" title="<?php _e('All in One SEO Plugin Support Forum', 'all_in_one_seo_pack' ); ?>"
933
  href="http://semperplugins.com/support/"><?php _e('Support Forum', 'all_in_one_seo_pack' ); ?></a>
 
 
934
  | <strong><a target="_blank" title="<?php _e('Pro Version', 'all_in_one_seo_pack' ); ?>"
935
  href="http://semperplugins.com/plugins/all-in-one-seo-pack-pro-version/?loc=side">
936
  <?php _e('UPGRADE TO PRO VERSION', 'all_in_one_seo_pack' ); ?></a></strong></p>
@@ -1123,12 +1077,12 @@ class All_in_One_SEO_Pack extends All_in_One_SEO_Pack_Module {
1123
  if ( $aiosp_disable ) return;
1124
  if( empty( $aioseop_options['aiosp_enablecpost'] ) ) {
1125
  $wp_post_types = get_post_types( Array( '_builtin' => true ) ); // don't display meta if SEO isn't enabled on custom post types -- pdb
1126
- if( !is_singular( $wp_post_types ) ) return;
1127
  } else {
1128
  if ( !empty( $aioseop_options['aiosp_cpostadvanced'] ) ) {
1129
  $wp_post_types = $aioseop_options['aiosp_cpostactive'];
1130
  if ( empty( $aioseop_options['aiosp_cpostactive'] ) ) return;
1131
- if( !is_singular( $wp_post_types ) ) return;
1132
  }
1133
  }
1134
  }
@@ -1257,9 +1211,9 @@ class All_in_One_SEO_Pack extends All_in_One_SEO_Pack_Module {
1257
 
1258
  $robots_meta = '';
1259
 
1260
- if ( ( is_category() && $aioseop_options['aiosp_category_noindex'] ) || ( !is_category() && is_archive() &&!$is_tag
1261
- && ( ( $aioseop_options['aiosp_archive_date_noindex'] && is_date() ) || ( $aioseop_options['aiosp_archive_author_noindex'] && is_author() ) ) )
1262
- || ( $aioseop_options['aiosp_tags_noindex'] && $is_tag ) || ( $aioseop_options['aiosp_search_noindex'] && is_search() ) ) {
1263
  $robots_meta = 'noindex,follow';
1264
  } else {
1265
  if ( is_single() || is_page() ) {
@@ -1402,28 +1356,59 @@ class All_in_One_SEO_Pack extends All_in_One_SEO_Pack_Module {
1402
  }
1403
  }
1404
 
1405
- if ( !empty( $prev ) ) $meta_string .= "<link rel='prev' href='" . $prev . "' />\n";
1406
- if ( !empty( $next ) ) $meta_string .= "<link rel='next' href='" . $next . "' />\n";
1407
 
 
 
1408
 
1409
  if ( $meta_string != null ) echo "$meta_string\n";
1410
 
1411
  if ( ( $aioseop_options['aiosp_can'] ) && ( $url = $this->aiosp_mrt_get_url( $wp_query ) ) ) {
1412
  $url = apply_filters( 'aioseop_canonical_url',$url );
1413
- echo "".'<link rel="canonical" href="'.$url.'" />'."\n";
 
1414
  }
1415
  do_action( 'aioseop_modules_wp_head' );
1416
  echo "<!-- /all in one seo pack -->\n";
1417
  }
1418
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1419
  function universal_analytics() {
1420
  global $aioseop_options;
1421
  $analytics = '';
1422
  if ( !empty( $aioseop_options['aiosp_ga_use_universal_analytics'] ) ) {
1423
  $allow_linker = '';
 
 
 
 
 
1424
  if ( !empty( $aioseop_options['aiosp_ga_multi_domain'] ) ) {
1425
- $allow_linker = ", { 'allowLinker': true }";
1426
  }
 
 
 
 
 
 
 
 
 
1427
  $analytics =<<<EOF
1428
  <script>
1429
  (function(i,s,o,g,r,a,m){i['GoogleAnalyticsObject']=r;i[r]=i[r]||function(){
@@ -1431,7 +1416,7 @@ function universal_analytics() {
1431
  m=s.getElementsByTagName(o)[0];a.async=1;a.src=g;m.parentNode.insertBefore(a,m)
1432
  })(window,document,'script','//www.google-analytics.com/analytics.js','ga');
1433
 
1434
- ga('create', '{$aioseop_options["aiosp_google_analytics_id"]}'{$allow_linker});
1435
  ga('send', 'pageview');
1436
  </script>
1437
 
@@ -1447,15 +1432,11 @@ function aiosp_google_analytics() {
1447
  ob_start();
1448
  $analytics = $this->universal_analytics();
1449
  echo $analytics;
1450
- if ( empty( $analytics ) || ( !empty( $aioseop_options['aiosp_google_analytics_legacy_id'] ) ) ) {
1451
  ?> <script type="text/javascript">
1452
  var _gaq = _gaq || [];
1453
  _gaq.push(['_setAccount', '<?php
1454
- if ( !empty( $aioseop_options['aiosp_google_analytics_legacy_id'] ) ) {
1455
- echo $aioseop_options['aiosp_google_analytics_legacy_id'];
1456
- } else {
1457
  echo $aioseop_options['aiosp_google_analytics_id'];
1458
- }
1459
  ?>']);
1460
  <?php if ( !empty( $aioseop_options['aiosp_ga_multi_domain'] ) ) {
1461
  ?> _gaq.push(['_setAllowLinker', true]);
@@ -1463,12 +1444,7 @@ function aiosp_google_analytics() {
1463
  }
1464
  ?>
1465
  <?php if ( !empty( $aioseop_options['aiosp_ga_domain'] ) ) {
1466
- $domain = $aioseop_options['aiosp_ga_domain'];
1467
- $domain = trim( $domain );
1468
- $domain = $this->strtolower( $domain );
1469
- if ( $this->strpos( $domain, "http://" ) === 0 ) $domain = $this->substr( $domain, 7 );
1470
- elseif ( $this->strpos( $domain, "https://" ) === 0 ) $domain = $this->substr( $domain, 8 );
1471
- $domain = untrailingslashit( $domain );
1472
  ?> _gaq.push(['_setDomainName', '<?php echo $domain; ?>']);
1473
  <?php
1474
  }
@@ -1487,7 +1463,7 @@ function aiosp_google_analytics() {
1487
  <?php if ( !empty( $aioseop_options['aiosp_ga_use_universal_analytics'] ) ) { ?>
1488
  ga(category, action);
1489
  <?php }
1490
- if ( empty( $aioseop_options['aiosp_ga_use_universal_analytics'] ) || !empty( $aioseop_options['aiosp_google_analytics_legacy_id'] ) ) { ?>
1491
  _gat._getTrackerByName()._trackEvent(category, action);
1492
  <?php } ?>
1493
  if ( link.target == '_blank' ) return true;
@@ -1505,8 +1481,21 @@ function aiosp_google_analytics() {
1505
  }
1506
  return result;
1507
  }
 
 
 
 
 
 
 
 
 
 
 
 
 
1508
 
1509
- window.onload = function () {
1510
  var links = document.getElementsByTagName('a');
1511
  for (var x=0; x < links.length; x++) {
1512
  if (typeof links[x] == 'undefined') continue;
@@ -1519,7 +1508,7 @@ function aiosp_google_analytics() {
1519
  }
1520
  }
1521
  }
1522
- };
1523
  </script>
1524
  <?php
1525
  }
@@ -1970,7 +1959,7 @@ function aiosp_google_analytics() {
1970
  $author = $this->internationalize( $this->get_original_title( '', false ) );
1971
  $title_format = $aioseop_options['aiosp_author_title_format'];
1972
  $new_title = str_replace( '%author%', $author, $title_format );
1973
- } else {
1974
  global $wp_query;
1975
  $date = $this->internationalize( $this->get_original_title( '', false ) );
1976
  $title_format = $aioseop_options['aiosp_archive_title_format'];
@@ -1988,7 +1977,7 @@ function aiosp_google_analytics() {
1988
  $new_title = str_replace( '%monthnum%', $monthnum, $new_title );
1989
  $new_title = str_replace( '%month%', $month, $new_title );
1990
  $new_title = str_replace( '%year%', get_query_var( 'year' ), $new_title );
1991
- }
1992
  $new_title = str_replace( '%blog_title%', $this->internationalize( get_bloginfo( 'name' ) ), $new_title );
1993
  $new_title = str_replace( '%blog_description%', $this->internationalize( get_bloginfo( 'description' ) ), $new_title );
1994
  $title = trim( $new_title );
@@ -2287,10 +2276,7 @@ function aiosp_google_analytics() {
2287
  $this->update_options( );
2288
 
2289
  $this->add_admin_pointers();
2290
- if ( !empty( $this->pointers ) )
2291
- foreach( $this->pointers as $k => $p )
2292
- if ( !empty( $p["pointer_scope"] ) && ( $p["pointer_scope"] == 'global' ) )
2293
- unset( $this->pointers[$k] );
2294
 
2295
  $donated = false;
2296
  if ( ( isset( $_POST ) ) && ( isset( $_POST['module'] ) ) && ( isset( $_POST['nonce-aioseop'] ) ) && ( $_POST['module'] == 'All_in_One_SEO_Pack' ) && ( wp_verify_nonce( $_POST['nonce-aioseop'], 'aioseop-nonce' ) ) ) {
@@ -2323,6 +2309,13 @@ function aiosp_google_analytics() {
2323
  );
2324
  }
2325
 
 
 
 
 
 
 
 
2326
  if ( $this->options['aiosp_enablecpost'] ) {
2327
  if ( !empty( $this->options['aiosp_cpostadvanced'] ) ) {
2328
  $this->locations['aiosp']['display'] = $this->options['aiosp_cpostactive'];
@@ -2362,8 +2355,8 @@ function aiosp_google_analytics() {
2362
  $title = $m[0]['title'];
2363
  if ( $title != $this->plugin_name ) $title = $this->plugin_name . ' - ' . $title;
2364
  if ( $tab_num <= 1 ) {
2365
- if ( !empty( $m[0]['help_link'] ) )
2366
- $title .= "<a class='aioseop_help_text_link aioseop_meta_box_help' target='_blank' href='" . $m[0]['help_link'] . "'>" . __( 'Help', 'all_in_one_seo_pack' ) . "</a>";
2367
  add_meta_box( $m[0]['id'], $title, $m[0]['callback'], $m[0]['post_type'], $m[0]['context'], $m[0]['priority'], $m[0]['callback_args'] );
2368
  } elseif ( $tab_num > 1 ) {
2369
  add_meta_box( $m[0]['id'] . '_tabbed', $title, Array( $this, 'display_tabbed_metabox' ), $m[0]['post_type'], $m[0]['context'], $m[0]['priority'], $m );
@@ -2373,9 +2366,9 @@ function aiosp_google_analytics() {
2373
  } else {
2374
  foreach ( $metaboxes as $m ) {
2375
  $title = $m['title'];
 
2376
  if ( !empty( $m['help_link'] ) )
2377
  $title .= "<a class='aioseop_help_text_link aioseop_meta_box_help' target='_blank' href='" . $m['help_link'] . "'>" . __( 'Help', 'all_in_one_seo_pack' ) . "</a>";
2378
- if ( $title != $this->plugin_name ) $title = $this->plugin_name . ' - ' . $title;
2379
  add_meta_box( $m['id'], $title, $m['callback'], $m['post_type'], $m['context'], $m['priority'], $m['callback_args'] );
2380
  }
2381
  }
61
  $this->store_option = true;
62
  $this->file = __FILE__; // the current file
63
  parent::__construct();
64
+
65
+ $help_text = Array(
66
+ "donate" => __( "All donations support continued development of this free software.", 'all_in_one_seo_pack'),
67
+ "can" => __( "This option will automatically generate Canonical URLs for your entire WordPress installation. This will help to prevent duplicate content penalties by <a href=\'http://googlewebmastercentral.blogspot.com/2009/02/specify-your-canonical.html\' target=\'_blank\'>Google</a>.", 'all_in_one_seo_pack'),
68
+ "use_original_title" => __( "Use wp_title to set the title; disable this option if you run into conflicts with the title being set by your theme or another plugin.<br /><a href='http://semperplugins.com/documentation/general-settings/' target='_blank'>Click here for documentation on this setting</a>", 'all_in_one_seo_pack' ),
69
+ "do_log" => __( "Check this and All in One SEO Pack will create a log of important events (all_in_one_seo_pack.log) in its plugin directory which might help debugging. Make sure this directory is writable.<br /><a href='http://semperplugins.com/documentation/general-settings/' target='_blank'>Click here for documentation on this setting</a>", 'all_in_one_seo_pack' ),
70
+ "home_title" => __( "As the name implies, this will be the Meta Title of your homepage. This is independent of any other option. If not set, the default Site Title (found in WordPress under Settings, General, Site Title) will be used.<br /><a href='http://semperplugins.com/documentation/home-page-settings/' target='_blank'>Click here for documentation on this setting</a>", 'all_in_one_seo_pack' ),
71
+ "home_description" => __( "This will be the Meta Description for your homepage. This is independent of any other option. The default is no Meta Description at all if this is not set.<br /><a href='http://semperplugins.com/documentation/home-page-settings/' target='_blank'>Click here for documentation on this setting</a>", 'all_in_one_seo_pack' ),
72
+ "home_keywords" => __( "Enter a comma separated list of your most important keywords for your site that will be written as Meta Keywords on your homepage. Don\'t stuff everything in here.<br /><a href='http://semperplugins.com/documentation/home-page-settings/' target='_blank'>Click here for documentation on this setting</a>", 'all_in_one_seo_pack' ),
73
+ "togglekeywords" => __( "This option allows you to toggle the use of Meta Keywords throughout the whole of the site.<br /><a href='http://semperplugins.com/documentation/keyword-settings/' target='_blank'>Click here for documentation on this setting</a>", 'all_in_one_seo_pack' ),
74
+ "use_categories" => __( "Check this if you want your categories for a given post used as the Meta Keywords for this post (in addition to any keywords you specify on the Edit Post screen).<br /><a href='http://semperplugins.com/documentation/keyword-settings/' target='_blank'>Click here for documentation on this setting</a>", 'all_in_one_seo_pack' ),
75
+ "use_tags_as_keywords" => __( "Check this if you want your tags for a given post used as the Meta Keywords for this post (in addition to any keywords you specify on the Edit Post screen).<br /><a href='http://semperplugins.com/documentation/keyword-settings/' target='_blank'>Click here for documentation on this setting</a>", 'all_in_one_seo_pack' ),
76
+ "dynamic_postspage_keywords"=> __( "Check this if you want your keywords on your Posts page (set in WordPress under Settings, Reading, Front Page Displays) to be dynamically generated from the keywords of the posts showing on that page. If unchecked, it will use the keywords set in the edit page screen for the posts page.<br /><a href='http://semperplugins.com/documentation/keyword-settings/' target='_blank'>Click here for documentation on this setting</a>", 'all_in_one_seo_pack'),
77
+ "rewrite_titles" => __( "Note that this is all about the title tag. This is what you see in your browser's window title bar. This is NOT visible on a page, only in the title bar and in the source code. If enabled, all page, post, category, search and archive page titles get rewritten. You can specify the format for most of them. For example: Using the default post title format below, Rewrite Titles will write all post titles as 'Post Title | Blog Name'. If you have manually defined a title using All in One SEO Pack, this will become the title of your post in the format string.<br /><a href='http://semperplugins.com/documentation/title-settings/' target='_blank'>Click here for documentation on this setting</a>", 'all_in_one_seo_pack' ),
78
+ "cap_titles" => __( "Check this and Search Page Titles and Tag Page Titles will have the first letter of each word capitalized.<br /><a href='http://semperplugins.com/documentation/title-settings/' target='_blank'>Click here for documentation on this setting</a>", 'all_in_one_seo_pack' ),
79
+ "cap_cats" => __( "Check this and Category Titles will have the first letter of each word capitalized.<br /><a href='http://semperplugins.com/documentation/title-settings/' target='_blank'>Click here for documentation on this setting</a>", 'all_in_one_seo_pack'),
80
+ "page_title_format" =>
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
81
  __( "This controls the format of the title tag for Pages.<br /><a href='http://semperplugins.com/documentation/title-settings/' target='_blank'>Click here for documentation on this setting</a><br />The following macros are supported:", 'all_in_one_seo_pack' )
82
  . '<ul><li>' . __( '%blog_title% - Your blog title', 'all_in_one_seo_pack' ) . '</li><li>' .
83
  __( '%blog_description% - Your blog description', 'all_in_one_seo_pack' ) . '</li><li>' .
89
  __( "%page_author_firstname% - This page's author' first name (capitalized)", 'all_in_one_seo_pack' ) . '</li><li>' .
90
  __( "%page_author_lastname% - This page's author' last name (capitalized)", 'all_in_one_seo_pack' ) . '</li>' .
91
  '</ul>',
92
+ "post_title_format" =>
 
 
 
 
 
 
93
  __( "This controls the format of the title tag for Posts.<br /><a href='http://semperplugins.com/documentation/title-settings/' target='_blank'>Click here for documentation on this setting</a><br />The following macros are supported:", 'all_in_one_seo_pack' )
94
  . '<ul><li>' . __( '%blog_title% - Your blog title', 'all_in_one_seo_pack' ) . '</li><li>' .
95
  __( '%blog_description% - Your blog description', 'all_in_one_seo_pack' ) . '</li><li>' .
101
  __( "%post_author_firstname% - This post's author' first name (capitalized)", 'all_in_one_seo_pack' ) . '</li><li>' .
102
  __( "%post_author_lastname% - This post's author' last name (capitalized)", 'all_in_one_seo_pack' ) . '</li>' .
103
  '</ul>',
104
+ "category_title_format" =>
 
 
 
 
 
 
105
  __( "This controls the format of the title tag for Category Archives.<br /><a href='http://semperplugins.com/documentation/title-settings/' target='_blank'>Click here for documentation on this setting</a><br />The following macros are supported:", 'all_in_one_seo_pack' ) .
106
  '<ul><li>' . __( '%blog_title% - Your blog title', 'all_in_one_seo_pack' ) . '</li><li>' .
107
  __( '%blog_description% - Your blog description', 'all_in_one_seo_pack' ) . '</li><li>' .
108
  __( '%category_title% - The original title of the category', 'all_in_one_seo_pack' ) . '</li><li>' .
109
  __( '%category_description% - The description of the category', 'all_in_one_seo_pack' ) . '</li></ul>',
110
+ "archive_title_format" =>
 
 
 
 
 
 
111
  __( "This controls the format of the title tag for Date Archives.<br /><a href='http://semperplugins.com/documentation/title-settings/' target='_blank'>Click here for documentation on this setting</a><br />The following macros are supported:", 'all_in_one_seo_pack' ) .
112
  '<ul><li>' . __( '%blog_title% - Your blog title', 'all_in_one_seo_pack' ) . '</li><li>' .
113
  __( '%blog_description% - Your blog description', 'all_in_one_seo_pack' ) . '</li><li>' .
115
  __( '%day% - The original archive day given by wordpress, e.g. "17"', 'all_in_one_seo_pack' ) . '</li><li>' .
116
  __( '%month% - The original archive month given by wordpress, e.g. "August"', 'all_in_one_seo_pack' ) . '</li><li>' .
117
  __( '%year% - The original archive year given by wordpress, e.g. "2007"', 'all_in_one_seo_pack' ) . '</li></ul>',
118
+ "author_title_format" =>
 
 
 
 
 
 
119
  __( "This controls the format of the title tag for Author Archives.<br /><a href='http://semperplugins.com/documentation/title-settings/' target='_blank'>Click here for documentation on this setting</a><br />The following macros are supported:", 'all_in_one_seo_pack' ) .
120
  '<ul><li>' . __( '%blog_title% - Your blog title', 'all_in_one_seo_pack' ) . '</li><li>' .
121
  __( '%blog_description% - Your blog description', 'all_in_one_seo_pack' ) . '</li><li>' .
122
  __( '%author% - The original archive title given by wordpress, e.g. "Steve" or "John Smith"', 'all_in_one_seo_pack' ) . '</li></ul>',
123
+ "tag_title_format" =>
 
 
 
 
 
 
124
  __( "This controls the format of the title tag for Tag Archives.<br /><a href='http://semperplugins.com/documentation/title-settings/' target='_blank'>Click here for documentation on this setting</a><br />The following macros are supported:", 'all_in_one_seo_pack' ) .
125
  '<ul><li>' . __( '%blog_title% - Your blog title', 'all_in_one_seo_pack' ) . '</li><li>' .
126
  __( '%blog_description% - Your blog description', 'all_in_one_seo_pack' ) . '</li><li>' .
127
  __( '%tag% - The name of the tag', 'all_in_one_seo_pack' ) . '</li></ul>',
128
+ "search_title_format" =>
 
 
 
 
 
 
129
  __( "This controls the format of the title tag for the Search page.<br /><a href='http://semperplugins.com/documentation/title-settings/' target='_blank'>Click here for documentation on this setting</a><br />The following macros are supported:", 'all_in_one_seo_pack' ) .
130
  '<ul><li>' . __( '%blog_title% - Your blog title', 'all_in_one_seo_pack' ) . '</li><li>' .
131
  __( '%blog_description% - Your blog description', 'all_in_one_seo_pack' ) . '</li><li>' .
132
  __( '%search% - What was searched for', 'all_in_one_seo_pack' ) . '</li></ul>',
133
+ "description_format" => __( "This controls the format of Meta Descriptions.<br /><a href='http://semperplugins.com/documentation/title-settings/' target='_blank'>Click here for documentation on this setting</a><br />The following macros are supported:", 'all_in_one_seo_pack' ) .
 
 
 
 
 
 
134
  '<ul><li>' . __( '%blog_title% - Your blog title', 'all_in_one_seo_pack' ) . '</li><li>' .
135
  __( '%blog_description% - Your blog description', 'all_in_one_seo_pack' ) . '</li><li>' .
136
  __( '%description% - The original description as determined by the plugin, e.g. the excerpt if one is set or an auto-generated one if that option is set', 'all_in_one_seo_pack' ) . '</li><li>' .
137
  __( '%wp_title% - The original wordpress title, e.g. post_title for posts', 'all_in_one_seo_pack' ) . '</li></ul>',
138
+ "404_title_format" => __( "This controls the format of the title tag for the 404 page.<br /><a href='http://semperplugins.com/documentation/title-settings/' target='_blank'>Click here for documentation on this setting</a><br />The following macros are supported:", 'all_in_one_seo_pack' ) .
 
 
 
 
 
 
139
  '<ul><li>' . __( '%blog_title% - Your blog title', 'all_in_one_seo_pack' ) . '</li><li>' .
140
  __( '%blog_description% - Your blog description', 'all_in_one_seo_pack' ) . '</li><li>' .
141
  __( '%request_url% - The original URL path, like "/url-that-does-not-exist/"', 'all_in_one_seo_pack' ) . '</li><li>' .
142
  __( '%request_words% - The URL path in human readable form, like "Url That Does Not Exist"', 'all_in_one_seo_pack' ) . '</li><li>' .
143
  __( '%404_title% - Additional 404 title input"', 'all_in_one_seo_pack' ) . '</li></ul>',
144
+ "paged_format" => __( "This string gets appended/prepended to titles of paged index pages (like home or archive pages).<br /><a href='http://semperplugins.com/documentation/title-settings/' target='_blank'>Click here for documentation on this setting</a>", 'all_in_one_seo_pack' )
145
+ . __( 'The following macros are supported:', 'all_in_one_seo_pack' )
146
+ . '<ul><li>' . __( '%page% - The page number', 'all_in_one_seo_pack' ) . '</li></ul>',
147
+ "enablecpost" => __( "Check this if you want to use All in One SEO Pack with any Custom Post Types on this site.<br /><a href='http://semperplugins.com/documentation/custom-post-type-settings/' target='_blank'>Click here for documentation on this setting</a>", 'all_in_one_seo_pack' ),
148
+ "cpostadvanced" => __( "This will show or hide the advanced options for SEO for Custom Post Types.<br /><a href='http://semperplugins.com/documentation/custom-post-type-settings/' target='_blank'>Click here for documentation on this setting</a>", 'all_in_one_seo_pack' ),
149
+ "cpostactive" => __( "Use these checkboxes to select which Post Types you want to use All in One SEO Pack with.<br /><a href='http://semperplugins.com/documentation/custom-post-type-settings/' target='_blank'>Click here for documentation on this setting</a>", 'all_in_one_seo_pack' ),
150
+ "cposttitles" => __( "This allows you to set the title tags for each Custom Post Type.<br /><a href='http://semperplugins.com/documentation/custom-post-type-settings/' target='_blank'>Click here for documentation on this setting</a>", 'all_in_one_seo_pack' ),
151
+ "posttypecolumns" => __( "This lets you select which screens display the SEO Title, SEO Keywords and SEO Description columns.<br /><a href='http://semperplugins.com/documentation/display-settings/' target='_blank'>Click here for documentation on this setting</a>", 'all_in_one_seo_pack' ),
152
+ "admin_bar" => __( "Check this to add All in One SEO Pack to the Admin Bar for easy access to your SEO settings.<br /><a href='http://semperplugins.com/documentation/display-settings/' target='_blank'>Click here for documentation on this setting</a>", 'all_in_one_seo_pack' ),
153
+ "custom_menu_order" => __( "Check this to move the All in One SEO Pack menu item to the top of your WordPress Dashboard menu.<br /><a href='http://semperplugins.com/documentation/display-settings/' target='_blank'>Click here for documentation on this setting</a>", 'all_in_one_seo_pack' ),
154
+ "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' ),
155
+ "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' ),
156
+ "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' ),
157
+ "google_publisher" => __( "Enter your Google Plus Profile URL here to link your site to your Google Plus account for authorship.<br /><a href='http://semperplugins.com/documentation/google-settings/' target='_blank'>Click here for documentation on this setting</a>", 'all_in_one_seo_pack' ),
158
+ "google_disable_profile"=> __( "Check this to remove the Google Plus field from the user profile screen.<br /><a href='http://semperplugins.com/documentation/google-settings/' target='_blank'>Click here for documentation on this setting</a>", 'all_in_one_seo_pack' ),
159
+ "google_analytics_id" => __( "Enter your Google Analytics ID here to track visitor behavior on your site using Google Analytics.<br /><a href='http://semperplugins.com/documentation/google-analytics/' target='_blank'>Click here for documentation on this setting</a>", 'all_in_one_seo_pack' ),
160
+ "ga_use_universal_analytics" => __( "Use the new Universal Analytics tracking code for Google Analytics; do this for new analytics accounts.", 'all_in_one_seo_pack' ),
161
+ "ga_domain" => __( "Enter your domain name if you have enabled tracking of Subdomains in Google Analytics.<br /><a href='http://semperplugins.com/documentation/google-settings/' target='_blank'>Click here for documentation on this setting</a>", 'all_in_one_seo_pack' ),
162
+ "ga_multi_domain" => __( "Check this if you have enabled tracking of Multiple top-level domains in Google Analytics.<br /><a href='http://semperplugins.com/documentation/google-settings/' target='_blank'>Click here for documentation on this setting</a>", 'all_in_one_seo_pack' ),
163
+ "ga_track_outbound_links"=> __( "Check this if you want to track outbound links with Google Analytics.<br /><a href='http://semperplugins.com/documentation/google-settings/' target='_blank'>Click here for documentation on this setting</a>", 'all_in_one_seo_pack' ),
164
+ "cpostnoindex" => __( "Set the default NOINDEX setting for each Post Type.<br /><a href='http://semperplugins.com/documentation/noindex-settings/' target='_blank'>Click here for documentation on this setting</a>", 'all_in_one_seo_pack' ),
165
+ "cpostnofollow" => __( "Set the default NOFOLLOW setting for each Post Type.<br /><a href='http://semperplugins.com/documentation/noindex-settings/' target='_blank'>Click here for documentation on this setting</a>", 'all_in_one_seo_pack' ),
166
+ "category_noindex" => __( "Check this to ask search engines not to index Category Archives. Useful for avoiding duplicate content.<br /><a href='http://semperplugins.com/documentation/noindex-settings/' target='_blank'>Click here for documentation on this setting</a>", 'all_in_one_seo_pack' ),
167
+ "archive_date_noindex" => __( "Check this to ask search engines not to index Date Archives. Useful for avoiding duplicate content.<br /><a href='http://semperplugins.com/documentation/noindex-settings/' target='_blank'>Click here for documentation on this setting</a>", 'all_in_one_seo_pack' ),
168
+ "archive_author_noindex"=> __( "Check this to ask search engines not to index Author Archives. Useful for avoiding duplicate content.<br /><a href='http://semperplugins.com/documentation/noindex-settings/' target='_blank'>Click here for documentation on this setting</a>", 'all_in_one_seo_pack' ),
169
+ "tags_noindex" => __( "Check this to ask search engines not to index Tag Archives. Useful for avoiding duplicate content.<br /><a href='http://semperplugins.com/documentation/noindex-settings/' target='_blank'>Click here for documentation on this setting</a>", 'all_in_one_seo_pack' ),
170
+ "search_noindex" => __( "Check this to ask search engines not to index the Search page. Useful for avoiding duplicate content.<br /><a href='http://semperplugins.com/documentation/noindex-settings/' target='_blank'>Click here for documentation on this setting</a>", 'all_in_one_seo_pack' ),
171
+ "generate_descriptions" => __( "Check this and your Meta Descriptions will be auto-generated from your excerpt or content.<br /><a href='http://semperplugins.com/documentation/advanced-settings/' target='_blank'>Click here for documentation on this setting</a>", 'all_in_one_seo_pack' ),
172
+ "hide_paginated_descriptions"=> __( "Check this and your Meta Descriptions will be removed from page 2 or later of paginated content.<br /><a href='http://semperplugins.com/documentation/advanced-settings/' target='_blank'>Click here for documentation on this setting</a>", 'all_in_one_seo_pack' ),
173
+ "unprotect_meta" => __( "Check this to unprotect internal postmeta fields for use with XMLRPC. If you don't know what that is, leave it unchecked.<br /><a href='http://semperplugins.com/documentation/advanced-settings/' target='_blank'>Click here for documentation on this setting</a>", 'all_in_one_seo_pack' ),
174
+ "ex_pages" => __( "Enter a comma separated list of pages here to be excluded by All in One SEO Pack. This is helpful when using plugins which generate their own non-WordPress dynamic pages. Ex: <em>/forum/, /contact/</em> For instance, if you want to exclude the virtual pages generated by a forum plugin, all you have to do is add forum or /forum or /forum/ or and any URL with the word \"forum\" in it, such as http://mysite.com/forum or http://mysite.com/forum/someforumpage here and it will be excluded from All in One SEO Pack.<br /><a href='http://semperplugins.com/documentation/advanced-settings/' target='_blank'>Click here for documentation on this setting</a>", 'all_in_one_seo_pack' ),
175
+ "post_meta_tags" => __( "What you enter here will be copied verbatim to the header of all Posts. You can enter whatever additional headers you want here, even references to stylesheets.<br /><a href='http://semperplugins.com/documentation/advanced-settings/' target='_blank'>Click here for documentation on this setting</a>", 'all_in_one_seo_pack' ),
176
+ "page_meta_tags" => __( "What you enter here will be copied verbatim to the header of all Pages. You can enter whatever additional headers you want here, even references to stylesheets.<br /><a href='http://semperplugins.com/documentation/advanced-settings/' target='_blank'>Click here for documentation on this setting</a>", 'all_in_one_seo_pack' ),
177
+ "front_meta_tags" => __( "What you enter here will be copied verbatim to the header of the front page if you have set a static page in Settings, Reading, Front Page Displays. You can enter whatever additional headers you want here, even references to stylesheets. This will fall back to using Additional Page Headers if you have them set and nothing is entered here.<br /><a href='http://semperplugins.com/documentation/advanced-settings/' target='_blank'>Click here for documentation on this setting</a>", 'all_in_one_seo_pack' ),
178
+ "home_meta_tags" => __( "What you enter here will be copied verbatim to the header of the home page if you have Front page displays your latest posts selected in Settings, Reading.  It will also be copied verbatim to the header on the Posts page if you have one set in Settings, Reading. You can enter whatever additional headers you want here, even references to stylesheets.<br /><a href='http://semperplugins.com/documentation/advanced-settings/' target='_blank'>Click here for documentation on this setting</a>", 'all_in_one_seo_pack' ),
179
+ );
180
+
181
+ $meta_help_text = Array(
182
+ 'snippet' => __( 'A preview of what this page might look like in search engine results.', 'all_in_one_seo_pack' ),
183
+ 'title' => __( 'A custom title that shows up in the title tag for this page.', 'all_in_one_seo_pack' ),
184
+ 'description' => __( 'The META description for this page. This will override any autogenerated descriptions.', 'all_in_one_seo_pack' ),
185
+ 'keywords' => __( 'A comma separated list of your most important keywords for this page that will be written as META keywords.', 'all_in_one_seo_pack' ),
186
+ 'noindex' => __( 'Check this box to ask search engines not to index this page.', 'all_in_one_seo_pack' ),
187
+ 'nofollow' => __( 'Check this box to ask search engines not to follow links from this page.', 'all_in_one_seo_pack' ),
188
+ 'noodp' => __( 'Check this box to ask search engines not to use descriptions from the Open Directory Project for this page.', 'all_in_one_seo_pack' ),
189
+ 'noydir' => __( 'Check this box to ask Yahoo! not to use descriptions from the Yahoo! directory for this page.', 'all_in_one_seo_pack' ),
190
+ 'titleatr' => __( 'Set the title attribute for menu links.', 'all_in_one_seo_pack' ),
191
+ 'menulabel' => __( 'Set the label for this page menu item.', 'all_in_one_seo_pack' ),
192
+ 'sitemap_exclude' => __( "Don't display this page in the sitemap.", 'all_in_one_seo_pack' ),
193
+ 'disable' => __( 'Disable SEO on this page.', 'all_in_one_seo_pack' ),
194
+ 'disable_analytics' => __( 'Disable Google Analytics on this page.', 'all_in_one_seo_pack' )
195
+ );
196
+
197
+ $this->default_options = array(
198
+ "donate" => Array(
199
+ 'name' => __( 'I enjoy this plugin and have made a donation:', 'all_in_one_seo_pack' ) ),
200
+ "home_title"=> Array(
201
+ 'name' => __( 'Home Title:', 'all_in_one_seo_pack' ),
202
+ 'default' => null, 'type' => 'textarea', 'sanitize' => 'text' ),
203
+ "home_description"=> Array(
204
+ 'name' => __( 'Home Description:', 'all_in_one_seo_pack' ),
205
+ 'default' => '', 'type' => 'textarea', 'sanitize' => 'text' ),
206
+ "togglekeywords" => Array(
207
+ 'name' => __( 'Use Keywords:', 'all_in_one_seo_pack' ),
208
+ 'default' => 0,
209
+ 'type' => 'radio',
210
+ 'initial_options' => Array( 0 => __( 'Enabled', 'all_in_one_seo_pack' ),
211
+ 1 => __( 'Disabled', 'all_in_one_seo_pack' ) )
212
+ ),
213
+ "home_keywords"=> Array(
214
+ 'name' => __( 'Home Keywords (comma separated):', 'all_in_one_seo_pack' ),
215
+ 'default' => null, 'type' => 'textarea', 'sanitize' => 'text',
216
+ 'condshow' => Array( "aiosp_togglekeywords" => 0 ) ),
217
+ "can"=> Array(
218
+ 'name' => __( 'Canonical URLs:', 'all_in_one_seo_pack' ),
219
+ 'default' => 1),
220
+ "rewrite_titles"=> Array(
221
+ 'name' => __( 'Rewrite Titles:', 'all_in_one_seo_pack' ),
222
+ 'default' => 1,
223
+ 'type' => 'radio',
224
+ 'initial_options' => Array( 1 => __( 'Enabled', 'all_in_one_seo_pack' ),
225
+ 0 => __( 'Disabled', 'all_in_one_seo_pack' ) )
226
+ ),
227
+ "force_rewrites"=> Array(
228
+ 'name' => __( 'Force Rewrites:', 'all_in_one_seo_pack' ),
229
+ 'default' => 1,
230
+ 'type' => 'hidden',
231
+ 'prefix' => $this->prefix,
232
+ 'initial_options' => Array( 1 => __( 'Enabled', 'all_in_one_seo_pack' ),
233
+ 0 => __( 'Disabled', 'all_in_one_seo_pack' ) )
234
+ ),
235
+ "use_original_title"=> Array(
236
+ 'name' => __( 'Use Original Title:', 'all_in_one_seo_pack' ),
237
+ 'type' => 'radio',
238
+ 'default' => 0,
239
+ 'initial_options' => Array( 1 => __( 'Enabled', 'all_in_one_seo_pack' ),
240
+ 0 => __( 'Disabled', 'all_in_one_seo_pack' ) )
241
+ ),
242
+ "cap_titles"=> Array(
243
+ 'name' => __( 'Capitalize Titles:', 'all_in_one_seo_pack' ), 'default' => 1),
244
+ "cap_cats"=> Array(
245
+ 'name' => __( 'Capitalize Category Titles:', 'all_in_one_seo_pack' ), 'default' => 1),
246
+ "page_title_format"=> Array(
247
+ 'name' => __( 'Page Title Format:', 'all_in_one_seo_pack' ),
248
+ 'type' => 'text', 'default' => '%page_title% | %blog_title%',
249
+ 'condshow' => Array( "aiosp_rewrite_titles" => 1 ) ),
250
+ "post_title_format"=> Array(
251
+ 'name' => __( 'Post Title Format:', 'all_in_one_seo_pack' ),
252
+ 'type' => 'text', 'default' => '%post_title% | %blog_title%',
253
+ 'condshow' => Array( "aiosp_rewrite_titles" => 1 ) ),
254
+ "category_title_format"=> Array(
255
+ 'name' => __( 'Category Title Format:', 'all_in_one_seo_pack' ),
256
+ 'type' => 'text', 'default' => '%category_title% | %blog_title%',
257
+ 'condshow' => Array( "aiosp_rewrite_titles" => 1 ) ),
258
+ "archive_title_format"=> Array(
259
+ 'name' => __( 'Date Archive Title Format:', 'all_in_one_seo_pack' ),
260
+ 'type' => 'text', 'default' => '%date% | %blog_title%',
261
+ 'condshow' => Array( "aiosp_rewrite_titles" => 1 ) ),
262
+ "author_title_format"=> Array(
263
+ 'name' => __( 'Author Archive Title Format:', 'all_in_one_seo_pack' ),
264
+ 'type' => 'text', 'default' => '%author% | %blog_title%',
265
+ 'condshow' => Array( "aiosp_rewrite_titles" => 1 ) ),
266
+ "tag_title_format"=> Array(
267
+ 'name' => __( 'Tag Title Format:', 'all_in_one_seo_pack' ),
268
+ 'type' => 'text', 'default' => '%tag% | %blog_title%',
269
+ 'condshow' => Array( "aiosp_rewrite_titles" => 1 ) ),
270
+ "search_title_format"=> Array(
271
+ 'name' => __( 'Search Title Format:', 'all_in_one_seo_pack' ),
272
+ 'type' => 'text', 'default' => '%search% | %blog_title%',
273
+ 'condshow' => Array( "aiosp_rewrite_titles" => 1 ) ),
274
+ "description_format"=> Array(
275
+ 'name' => __( 'Description Format', 'all_in_one_seo_pack' ),
276
+ 'type' => 'text', 'default' => '%description%',
277
+ 'condshow' => Array( "aiosp_rewrite_titles" => 1 ) ),
278
+ "404_title_format"=> Array(
279
+ 'name' => __( '404 Title Format:', 'all_in_one_seo_pack' ),
280
+ 'type' => 'text', 'default' => 'Nothing found for %request_words%',
281
  'condshow' => Array( "aiosp_rewrite_titles" => 1 ) ),
 
282
  "paged_format"=> Array(
283
  'name' => __( 'Paged Format:', 'all_in_one_seo_pack' ),
284
+ 'type' => 'text', 'default' => ' - Part %page%',
 
 
 
 
285
  'condshow' => Array( "aiosp_rewrite_titles" => 1 ) ),
 
286
  "enablecpost"=> Array(
287
  'name' => __( 'SEO for Custom Post Types:', 'all_in_one_seo_pack' ),
 
288
  'default' => 'on',
289
  'type' => 'radio',
290
  'initial_options' => Array( 'on' => __( 'Enabled', 'all_in_one_seo_pack' ),
291
  0 => __( 'Disabled', 'all_in_one_seo_pack' ) )
292
  ),
 
293
  "cpostadvanced" => Array(
294
  'name' => __( 'Enable Advanced Options:', 'all_in_one_seo_pack' ),
295
+ 'default' => 0, 'type' => 'radio',
 
 
296
  'initial_options' => Array( 'on' => __( 'Enabled', 'all_in_one_seo_pack' ),
297
  0 => __( 'Disabled', 'all_in_one_seo_pack' ) ),
298
  'label' => null,
299
  'condshow' => Array( "aiosp_enablecpost" => 'on' )
300
  ),
 
301
  "cpostactive" => Array(
302
  'name' => __( 'SEO on only these post types:', 'all_in_one_seo_pack' ),
303
+ 'type' => 'multicheckbox', 'default' => array('post', 'page'),
304
+ 'condshow' => Array( 'aiosp_enablecpost' => 'on', 'aiosp_cpostadvanced' => 'on' )
305
+ ),
306
+ "cpostnoindex" => Array(
307
+ 'name' => __( 'Default to NOINDEX:', 'all_in_one_seo_pack' ),
308
+ 'type' => 'multicheckbox', 'default' => array(),
309
+ 'condshow' => Array( 'aiosp_enablecpost' => 'on', 'aiosp_cpostadvanced' => 'on' )
310
+ ),
311
+ "cpostnofollow" => Array(
312
+ 'name' => __( 'Default to NOFOLLOW:', 'all_in_one_seo_pack' ),
313
+ 'type' => 'multicheckbox', 'default' => array(),
314
  'condshow' => Array( 'aiosp_enablecpost' => 'on', 'aiosp_cpostadvanced' => 'on' )
315
  ),
 
316
  "cposttitles" => Array(
317
  'name' => __( 'Custom titles:', 'all_in_one_seo_pack' ),
318
+ 'type' => 'checkbox', 'default' => 0,
 
 
319
  'condshow' => Array( 'aiosp_enablecpost' => 'on', 'aiosp_cpostadvanced' => 'on' )
320
  ),
 
321
  "posttypecolumns" => Array(
322
+ 'name' => __( 'Show Column Labels for Custom Post Types:', 'all_in_one_seo_pack' ),
323
+ 'type' => 'multicheckbox', 'default' => array('post', 'page') ),
 
 
 
324
  "admin_bar" => Array(
325
+ 'name' => __( 'Display Menu In Admin Bar:', 'all_in_one_seo_pack' ), 'default' => 'on',
 
 
326
  ),
 
327
  "custom_menu_order" => Array(
328
+ 'name' => __( 'Display Menu At The Top:', 'all_in_one_seo_pack' ), 'default' => 'on',
 
 
329
  ),
 
330
  "google_verify" => Array(
331
+ 'name' => __( 'Google Webmaster Tools:', 'all_in_one_seo_pack' ), 'default' => '', 'type' => 'text'
332
+ ),
 
 
333
  "bing_verify" => Array(
334
+ 'name' => __( 'Bing Webmaster Center:', 'all_in_one_seo_pack' ), 'default' => '', 'type' => 'text'
335
+ ),
 
 
336
  "pinterest_verify" => Array(
337
+ 'name' => __( 'Pinterest Site Verification:', 'all_in_one_seo_pack' ), 'default' => '', 'type' => 'text'
338
+ ),
 
 
339
  "google_publisher"=> Array(
340
+ 'name' => __( 'Google Plus Default Profile:', 'all_in_one_seo_pack' ), 'default' => '', 'type' => 'text'
341
+ ),
 
 
342
  "google_disable_profile"=> Array(
343
+ 'name' => __( 'Disable Google Plus Profile:', 'all_in_one_seo_pack' ), 'default' => 0, 'type' => 'checkbox'
344
+ ),
 
 
345
  "google_analytics_id"=> Array(
346
  'name' => __( 'Google Analytics ID:', 'all_in_one_seo_pack' ),
 
347
  'default' => null, 'type' => 'text' ),
 
348
  "ga_use_universal_analytics" => Array(
349
  'name' => __( 'Use Universal Analytics:', 'all_in_one_seo_pack' ),
 
350
  'default' => 0,
351
  'condshow' => Array( 'aiosp_google_analytics_id' => Array( 'lhs' => 'aiosp_google_analytics_id', 'op' => '!=', 'rhs' => '' ) ) ),
 
 
 
 
 
 
 
352
  "ga_domain"=> Array(
353
  'name' => __( 'Tracking Domain:', 'all_in_one_seo_pack' ),
354
  'type' => 'text',
 
355
  'condshow' => Array( 'aiosp_google_analytics_id' => Array( 'lhs' => 'aiosp_google_analytics_id', 'op' => '!=', 'rhs' => '' ) ) ),
 
356
  "ga_multi_domain"=> Array(
357
  'name' => __( 'Track Multiple Domains:', 'all_in_one_seo_pack' ),
 
358
  'default' => 0,
359
  'condshow' => Array( 'aiosp_google_analytics_id' => Array( 'lhs' => 'aiosp_google_analytics_id', 'op' => '!=', 'rhs' => '' ) ) ),
 
360
  "ga_track_outbound_links"=> Array(
361
  'name' => __( 'Track Outbound Links:', 'all_in_one_seo_pack' ),
 
362
  'default' => 0,
363
  'condshow' => Array( 'aiosp_google_analytics_id' => Array( 'lhs' => 'aiosp_google_analytics_id', 'op' => '!=', 'rhs' => '' ) ) ),
364
+ "use_categories"=> Array(
365
+ 'name' => __( 'Use Categories for META keywords:', 'all_in_one_seo_pack' ),
366
+ 'default' => 0,
367
+ 'condshow' => Array( "aiosp_togglekeywords" => 0 ) ),
368
+ "use_tags_as_keywords" => Array(
369
+ 'name' => __( 'Use Tags for META keywords:', 'all_in_one_seo_pack' ),
370
+ 'default' => 1,
371
+ 'condshow' => Array( "aiosp_togglekeywords" => 0 ) ),
372
+ "dynamic_postspage_keywords"=> Array(
373
+ 'name' => __( 'Dynamically Generate Keywords for Posts Page:', 'all_in_one_seo_pack' ),
374
+ 'default' => 1,
375
+ 'condshow' => Array( "aiosp_togglekeywords" => 0 ) ),
 
 
 
 
 
376
  "category_noindex"=> Array(
377
+ 'name' => __( 'Use noindex for Categories:', 'all_in_one_seo_pack' ),
 
378
  'default' => 1),
 
379
  "archive_date_noindex"=> Array(
380
+ 'name' => __( 'Use noindex for Date Archives:', 'all_in_one_seo_pack' ),
 
381
  'default' => 1),
 
382
  "archive_author_noindex"=> Array(
383
+ 'name' => __( 'Use noindex for Author Archives:', 'all_in_one_seo_pack' ),
 
384
  'default' => 1),
 
385
  "tags_noindex"=> Array(
386
+ 'name' => __( 'Use noindex for Tag Archives:', 'all_in_one_seo_pack' ),
 
387
  'default' => 0),
 
388
  "search_noindex"=> Array(
389
+ 'name' => __( 'Use noindex for the Search page:', 'all_in_one_seo_pack' ),
 
390
  'default' => 0),
 
391
  "generate_descriptions"=> Array(
392
  'name' => __( 'Autogenerate Descriptions:', 'all_in_one_seo_pack' ),
 
393
  'default' => 1),
 
394
  "hide_paginated_descriptions"=> Array(
395
  'name' => __( 'Remove Descriptions For Paginated Pages:', 'all_in_one_seo_pack' ),
 
396
  'default' => 0),
 
397
  "unprotect_meta"=> Array(
398
  'name' => __( 'Unprotect Post Meta Fields:', 'all_in_one_seo_pack' ),
 
399
  'default' => 0),
 
400
  "ex_pages" => Array(
401
  'name' => __( 'Exclude Pages:', 'all_in_one_seo_pack' ),
 
402
  'type' => 'textarea', 'default' => '' ),
 
403
  "post_meta_tags"=> Array(
404
  'name' => __( 'Additional Post Headers:', 'all_in_one_seo_pack' ),
 
405
  'type' => 'textarea', 'default' => '', 'sanitize' => 'default' ),
 
406
  "page_meta_tags"=> Array(
407
  'name' => __( 'Additional Page Headers:', 'all_in_one_seo_pack' ),
 
408
  'type' => 'textarea', 'default' => '', 'sanitize' => 'default' ),
 
409
  "front_meta_tags"=> Array(
410
  'name' => __( 'Additional Front Page Headers:', 'all_in_one_seo_pack' ),
 
411
  'type' => 'textarea', 'default' => '', 'sanitize' => 'default' ),
 
412
  "home_meta_tags"=> Array(
413
  'name' => __( 'Additional Blog Page Headers:', 'all_in_one_seo_pack' ),
 
414
  'type' => 'textarea', 'default' => '', 'sanitize' => 'default' ),
415
+ "do_log"=> Array(
416
+ 'name' => __( 'Log important events:', 'all_in_one_seo_pack' ),
417
+ 'default' => null ),
418
  );
419
 
 
420
  $this->locations = Array(
421
  'default' => Array( 'name' => $this->name, 'prefix' => 'aiosp_', 'type' => 'settings', 'options' => null ),
422
+ 'aiosp' => Array( 'name' => $this->plugin_name, 'type' => 'metabox', 'prefix' => '', 'help_link' => 'http://semperplugins.com/sections/postpage-settings/',
423
  'options' => Array( 'edit', 'nonce-aioseop-edit', 'upgrade', 'snippet', 'title', 'description', 'keywords', 'noindex', 'nofollow', 'noodp', 'noydir', 'titleatr', 'menulabel', 'sitemap_exclude', 'disable', 'disable_analytics' ),
424
  'default_options' => Array(
425
  'edit' => Array( 'type' => 'hidden', 'default' => 'aiosp_edit', 'prefix' => true, 'nowrap' => 1 ),
428
  'default' => '<a target="__blank" href="http://semperplugins.com/plugins/all-in-one-seo-pack-pro-version/?loc=meta">'
429
  . __( 'Upgrade to All in One SEO Pack Pro Version', 'all_in_one_seo_pack' ) . '</a>'
430
  ),
431
+ 'snippet' => Array( 'name' => __( 'Preview Snippet', 'all_in_one_seo_pack' ), 'type' => 'custom', 'label' => 'top',
432
  'default' => '
433
  <script>
434
  jQuery(document).ready(function() {
441
  });
442
  </script>
443
  <div class="preview_snippet"><div id="aioseop_snippet"><h3><a id="aioseop_snippet_title">%s</a></h3><div><div><cite id="aioseop_snippet_link">%s</cite></div><span id="aioseop_snippet_description">%s</span></div></div></div>' ),
444
+ 'title' => Array( 'name' => __( 'Title', 'all_in_one_seo_pack' ), 'type' => 'text', 'count' => true, 'size' => 60 ),
445
+ 'description' => Array( 'name' => __( 'Description', 'all_in_one_seo_pack' ), 'type' => 'textarea', 'count' => true, 'cols' => 80, 'rows' => 2 ),
446
+ 'keywords' => Array( 'name' => __( 'Keywords (comma separated)', 'all_in_one_seo_pack' ), 'type' => 'text' ),
447
+ 'noindex' => Array( 'name' => __( "Robots Meta NOINDEX", 'all_in_one_seo_pack' ), 'default' => '' ),
448
+ 'nofollow' => Array( 'name' => __( "Robots Meta NOFOLLOW", 'all_in_one_seo_pack' ), 'default' => '' ),
449
+ 'noodp' => Array( 'name' => __( "Robots Meta NOODP", 'all_in_one_seo_pack' ) ),
450
+ 'noydir' => Array( 'name' => __( "Robots Meta NOYDIR", 'all_in_one_seo_pack' ) ),
451
+ 'titleatr' => Array( 'name' => __( 'Title Attribute', 'all_in_one_seo_pack' ), 'type' => 'text', 'size' => 60 ),
452
+ 'menulabel' => Array( 'name' => __( 'Menu Label', 'all_in_one_seo_pack' ), 'type' => 'text', 'size' => 60 ),
453
+ 'sitemap_exclude' => Array( 'name' => __( 'Exclude From Sitemap', 'all_in_one_seo_pack' ) ),
454
+ 'disable' => Array( 'name' => __( 'Disable on this page/post', 'all_in_one_seo_pack' ) ),
455
+ 'disable_analytics' => Array( 'name' => __( 'Disable Google Analytics', 'all_in_one_seo_pack' ), 'condshow' => Array( 'aiosp_disable' => 'on' ) ) ),
456
  'display' => null )
457
  );
458
+
459
+ if ( !empty( $help_text ) )
460
+ foreach( $help_text as $k => $v )
461
+ $this->default_options[$k]['help_text'] = $v;
462
+
463
+ if ( !empty( $meta_help_text ) )
464
+ foreach( $meta_help_text as $k => $v )
465
+ $this->locations['aiosp']['default_options'][$k]['help_text'] = $v;
466
+
467
  $this->layout = Array(
468
  'default' => Array(
469
  'name' => __( 'General Settings', 'all_in_one_seo_pack' ),
498
  ),
499
  'webmaster' => Array(
500
  'name' => __( 'Webmaster Verification', 'all_in_one_seo_pack' ),
501
+ 'help_link' => 'http://semperplugins.com/sections/webmaster-verification/',
502
  'options' => Array( "google_verify", "bing_verify", "pinterest_verify" )
503
  ),
504
  'google' => Array(
505
  'name' => __( 'Google Settings', 'all_in_one_seo_pack' ),
506
  'help_link' => 'http://semperplugins.com/documentation/google-settings/',
507
+ 'options' => Array( "google_publisher", "google_disable_profile", "google_analytics_id", "ga_use_universal_analytics", "ga_domain", "ga_multi_domain", "ga_track_outbound_links" )
508
  ),
509
  'noindex' => Array(
510
  'name' => __( 'Noindex Settings', 'all_in_one_seo_pack' ),
731
  }
732
 
733
  $this->setting_options();
734
+ add_filter( "{$this->prefix}display_options", Array( $this, 'filter_options' ), 10, 2 );
735
  parent::add_page_hooks();
736
  }
737
 
759
 
760
  function enqueue_scripts() {
761
  add_filter( "{$this->prefix}display_settings", Array( $this, 'filter_settings' ), 10, 3 );
762
+ add_filter( "{$this->prefix}display_options", Array( $this, 'filter_options' ), 10, 2 );
763
  parent::enqueue_scripts();
764
  }
765
 
883
  <p>
884
  <a target="_blank" title="<?php _e('All in One SEO Plugin Support Forum', 'all_in_one_seo_pack' ); ?>"
885
  href="http://semperplugins.com/support/"><?php _e('Support Forum', 'all_in_one_seo_pack' ); ?></a>
886
+ | <a target="_blank" title="<?php _e( 'All in One SEO Plugin Changelog', 'all_in_one_seo_pack' ); ?>"
887
+ href="http://semperfiwebdesign.com/blog/all-in-one-seo-pack/all-in-one-seo-pack-release-history/"><?php _e( 'Changelog', 'all_in_one_seo_pack' ); ?></a>
888
  | <strong><a target="_blank" title="<?php _e('Pro Version', 'all_in_one_seo_pack' ); ?>"
889
  href="http://semperplugins.com/plugins/all-in-one-seo-pack-pro-version/?loc=side">
890
  <?php _e('UPGRADE TO PRO VERSION', 'all_in_one_seo_pack' ); ?></a></strong></p>
1077
  if ( $aiosp_disable ) return;
1078
  if( empty( $aioseop_options['aiosp_enablecpost'] ) ) {
1079
  $wp_post_types = get_post_types( Array( '_builtin' => true ) ); // don't display meta if SEO isn't enabled on custom post types -- pdb
1080
+ if( !is_singular( $wp_post_types ) && !is_front_page() ) return;
1081
  } else {
1082
  if ( !empty( $aioseop_options['aiosp_cpostadvanced'] ) ) {
1083
  $wp_post_types = $aioseop_options['aiosp_cpostactive'];
1084
  if ( empty( $aioseop_options['aiosp_cpostactive'] ) ) return;
1085
+ if( !is_singular( $wp_post_types ) && !is_front_page() ) return;
1086
  }
1087
  }
1088
  }
1211
 
1212
  $robots_meta = '';
1213
 
1214
+ if ( ( is_category() && !empty( $aioseop_options['aiosp_category_noindex'] ) ) || ( !is_category() && is_archive() && !$is_tag
1215
+ && ( ( is_date() && !empty( $aioseop_options['aiosp_archive_date_noindex'] ) ) || ( is_author() && !empty( $aioseop_options['aiosp_archive_author_noindex'] ) ) ) )
1216
+ || ( $is_tag && !empty( $aioseop_options['aiosp_tags_noindex'] ) ) || ( is_search() && !empty( $aioseop_options['aiosp_search_noindex'] ) ) ) {
1217
  $robots_meta = 'noindex,follow';
1218
  } else {
1219
  if ( is_single() || is_page() ) {
1356
  }
1357
  }
1358
 
1359
+ $prev = apply_filters( 'aioseop_prev_link', $prev );
1360
+ $next = apply_filters( 'aioseop_next_link', $next );
1361
 
1362
+ if ( !empty( $prev ) ) $meta_string .= "<link rel='prev' href='" . esc_url( $prev ) . "' />\n";
1363
+ if ( !empty( $next ) ) $meta_string .= "<link rel='next' href='" . esc_url( $next ) . "' />\n";
1364
 
1365
  if ( $meta_string != null ) echo "$meta_string\n";
1366
 
1367
  if ( ( $aioseop_options['aiosp_can'] ) && ( $url = $this->aiosp_mrt_get_url( $wp_query ) ) ) {
1368
  $url = apply_filters( 'aioseop_canonical_url',$url );
1369
+ if ( !empty( $url ) )
1370
+ echo '<link rel="canonical" href="'. esc_url( $url ) . '" />'."\n";
1371
  }
1372
  do_action( 'aioseop_modules_wp_head' );
1373
  echo "<!-- /all in one seo pack -->\n";
1374
  }
1375
 
1376
+ function get_analytics_domain() {
1377
+ global $aioseop_options;
1378
+ $domain = '';
1379
+ if ( !empty( $aioseop_options['aiosp_ga_domain'] ) ) {
1380
+ $domain = $aioseop_options['aiosp_ga_domain'];
1381
+ $domain = trim( $domain );
1382
+ $domain = $this->strtolower( $domain );
1383
+ if ( $this->strpos( $domain, "http://" ) === 0 ) $domain = $this->substr( $domain, 7 );
1384
+ elseif ( $this->strpos( $domain, "https://" ) === 0 ) $domain = $this->substr( $domain, 8 );
1385
+ $domain = untrailingslashit( $domain );
1386
+ }
1387
+ return $domain;
1388
+ }
1389
+
1390
  function universal_analytics() {
1391
  global $aioseop_options;
1392
  $analytics = '';
1393
  if ( !empty( $aioseop_options['aiosp_ga_use_universal_analytics'] ) ) {
1394
  $allow_linker = '';
1395
+ $cookie_domain = $this->get_analytics_domain();
1396
+ if ( !empty( $cookie_domain ) ) {
1397
+ $cookie_domain = esc_js( $cookie_domain );
1398
+ $cookie_domain = "'cookieDomain': '{$cookie_domain}'";
1399
+ }
1400
  if ( !empty( $aioseop_options['aiosp_ga_multi_domain'] ) ) {
1401
+ $allow_linker = "'allowLinker': true";
1402
  }
1403
+ $js_options = Array();
1404
+ foreach( Array( 'cookie_domain', 'allow_linker' ) as $opts ) {
1405
+ if ( !empty( $$opts ) ) $js_options[] = $$opts;
1406
+ }
1407
+ if ( !empty( $js_options ) ) {
1408
+ $js_options = join( ',', $js_options );
1409
+ $js_options = ', { ' . $js_options . ' } ';
1410
+ } else $js_options = '';
1411
+ $analytics_id = esc_js( $aioseop_options["aiosp_google_analytics_id"] );
1412
  $analytics =<<<EOF
1413
  <script>
1414
  (function(i,s,o,g,r,a,m){i['GoogleAnalyticsObject']=r;i[r]=i[r]||function(){
1416
  m=s.getElementsByTagName(o)[0];a.async=1;a.src=g;m.parentNode.insertBefore(a,m)
1417
  })(window,document,'script','//www.google-analytics.com/analytics.js','ga');
1418
 
1419
+ ga('create', '{$analytics_id}'{$js_options});
1420
  ga('send', 'pageview');
1421
  </script>
1422
 
1432
  ob_start();
1433
  $analytics = $this->universal_analytics();
1434
  echo $analytics;
1435
+ if ( empty( $analytics ) ) {
1436
  ?> <script type="text/javascript">
1437
  var _gaq = _gaq || [];
1438
  _gaq.push(['_setAccount', '<?php
 
 
 
1439
  echo $aioseop_options['aiosp_google_analytics_id'];
 
1440
  ?>']);
1441
  <?php if ( !empty( $aioseop_options['aiosp_ga_multi_domain'] ) ) {
1442
  ?> _gaq.push(['_setAllowLinker', true]);
1444
  }
1445
  ?>
1446
  <?php if ( !empty( $aioseop_options['aiosp_ga_domain'] ) ) {
1447
+ $domain = $this->get_analytics_domain();
 
 
 
 
 
1448
  ?> _gaq.push(['_setDomainName', '<?php echo $domain; ?>']);
1449
  <?php
1450
  }
1463
  <?php if ( !empty( $aioseop_options['aiosp_ga_use_universal_analytics'] ) ) { ?>
1464
  ga(category, action);
1465
  <?php }
1466
+ if ( empty( $aioseop_options['aiosp_ga_use_universal_analytics'] ) ) { ?>
1467
  _gat._getTrackerByName()._trackEvent(category, action);
1468
  <?php } ?>
1469
  if ( link.target == '_blank' ) return true;
1481
  }
1482
  return result;
1483
  }
1484
+ function aiosp_addLoadEvent(func) {
1485
+ var oldonload = window.onload;
1486
+ if (typeof window.onload != 'function') {
1487
+ window.onload = func;
1488
+ } else {
1489
+ window.onload = function() {
1490
+ if (oldonload) {
1491
+ oldonload();
1492
+ }
1493
+ func();
1494
+ }
1495
+ }
1496
+ }
1497
 
1498
+ aiosp_addLoadEvent(function () {
1499
  var links = document.getElementsByTagName('a');
1500
  for (var x=0; x < links.length; x++) {
1501
  if (typeof links[x] == 'undefined') continue;
1508
  }
1509
  }
1510
  }
1511
+ });
1512
  </script>
1513
  <?php
1514
  }
1959
  $author = $this->internationalize( $this->get_original_title( '', false ) );
1960
  $title_format = $aioseop_options['aiosp_author_title_format'];
1961
  $new_title = str_replace( '%author%', $author, $title_format );
1962
+ } else if ( is_date() ) {
1963
  global $wp_query;
1964
  $date = $this->internationalize( $this->get_original_title( '', false ) );
1965
  $title_format = $aioseop_options['aiosp_archive_title_format'];
1977
  $new_title = str_replace( '%monthnum%', $monthnum, $new_title );
1978
  $new_title = str_replace( '%month%', $month, $new_title );
1979
  $new_title = str_replace( '%year%', get_query_var( 'year' ), $new_title );
1980
+ } else return false;
1981
  $new_title = str_replace( '%blog_title%', $this->internationalize( get_bloginfo( 'name' ) ), $new_title );
1982
  $new_title = str_replace( '%blog_description%', $this->internationalize( get_bloginfo( 'description' ) ), $new_title );
1983
  $title = trim( $new_title );
2276
  $this->update_options( );
2277
 
2278
  $this->add_admin_pointers();
2279
+
 
 
 
2280
 
2281
  $donated = false;
2282
  if ( ( isset( $_POST ) ) && ( isset( $_POST['module'] ) ) && ( isset( $_POST['nonce-aioseop'] ) ) && ( $_POST['module'] == 'All_in_One_SEO_Pack' ) && ( wp_verify_nonce( $_POST['nonce-aioseop'], 'aioseop-nonce' ) ) ) {
2309
  );
2310
  }
2311
 
2312
+ if ( !empty( $this->pointers ) )
2313
+ foreach( $this->pointers as $k => $p )
2314
+ if ( !empty( $p["pointer_scope"] ) && ( $p["pointer_scope"] == 'global' ) )
2315
+ unset( $this->pointers[$k] );
2316
+
2317
+ $this->filter_pointers();
2318
+
2319
  if ( $this->options['aiosp_enablecpost'] ) {
2320
  if ( !empty( $this->options['aiosp_cpostadvanced'] ) ) {
2321
  $this->locations['aiosp']['display'] = $this->options['aiosp_cpostactive'];
2355
  $title = $m[0]['title'];
2356
  if ( $title != $this->plugin_name ) $title = $this->plugin_name . ' - ' . $title;
2357
  if ( $tab_num <= 1 ) {
2358
+ if ( !empty( $m[0]['callback_args']['help_link'] ) )
2359
+ $title .= "<a class='aioseop_help_text_link aioseop_meta_box_help' target='_blank' href='" . $m[0]['callback_args']['help_link'] . "'>" . __( 'Help', 'all_in_one_seo_pack' ) . "</a>";
2360
  add_meta_box( $m[0]['id'], $title, $m[0]['callback'], $m[0]['post_type'], $m[0]['context'], $m[0]['priority'], $m[0]['callback_args'] );
2361
  } elseif ( $tab_num > 1 ) {
2362
  add_meta_box( $m[0]['id'] . '_tabbed', $title, Array( $this, 'display_tabbed_metabox' ), $m[0]['post_type'], $m[0]['context'], $m[0]['priority'], $m );
2366
  } else {
2367
  foreach ( $metaboxes as $m ) {
2368
  $title = $m['title'];
2369
+ if ( $title != $this->plugin_name ) $title = $this->plugin_name . ' - ' . $title;
2370
  if ( !empty( $m['help_link'] ) )
2371
  $title .= "<a class='aioseop_help_text_link aioseop_meta_box_help' target='_blank' href='" . $m['help_link'] . "'>" . __( 'Help', 'all_in_one_seo_pack' ) . "</a>";
 
2372
  add_meta_box( $m['id'], $title, $m['callback'], $m['post_type'], $m['context'], $m['priority'], $m['callback_args'] );
2373
  }
2374
  }
aioseop_functions.php CHANGED
@@ -36,7 +36,7 @@ if ( !function_exists( 'aioseop_update_settings_check' ) ) {
36
 
37
  // WPML has now attached to filters, read settings again so they can be translated
38
  $aioseop_options = get_option( 'aioseop_options' );
39
-
40
  if ( !empty( $aioseop_options['aiosp_archive_noindex'] ) ) { // migrate setting for noindex archives
41
  $aioseop_options['aiosp_archive_date_noindex'] = $aioseop_options['aiosp_archive_author_noindex'] = $aioseop_options['aiosp_archive_noindex'];
42
  unset( $aioseop_options['aiosp_archive_noindex'] );
@@ -137,7 +137,7 @@ if ( !function_exists( 'aioseop_mrt_pcolumns' ) ) {
137
  if ( empty( $aioseop_options['aiosp_togglekeywords'] ) )
138
  $aioseopc['seokeywords'] = __( 'SEO Keywords', 'all_in_one_seo_pack' );
139
  return $aioseopc;
140
- }
141
  }
142
 
143
  if ( !function_exists( 'aioseop_admin_head' ) ) {
@@ -200,7 +200,7 @@ if ( !function_exists( 'aioseop_ajax_save_meta' ) ) {
200
  $output .= 'onclick=\'aioseop_ajax_edit_meta_form(' . $post_id . ', ' . json_encode( $label ) . ', "' . $target . '");return false;\' title="' . __('Edit') . '">';
201
  $output .= '<img class="aioseop_edit_button" id="aioseop_edit_id" src="' . AIOSEOP_PLUGIN_IMAGES_URL . '/cog_edit.png" /></a>';
202
  die( "jQuery('div#aioseop_" . $target . "_" . $post_id . "').fadeOut('fast', function() {
203
- jQuery('div#aioseop_" . $target . "_" . $post_id . "').html(" . json_encode( $output ) . ").fadeIn('fast');
204
  });" );
205
  }
206
  }
@@ -235,8 +235,8 @@ if ( !function_exists( 'aioseop_ajax_save_url' ) ) {
235
  $module->add_page_hooks();
236
  $_POST = $module->get_current_options( $_POST, null );
237
  $module->handle_settings_updates( null );
238
- $options = $module->get_current_options( Array(), null );
239
- $output = $module->display_custom_options( '', Array( 'name' => 'aiosp_sitemap_addl_pages', 'type' => 'custom', 'save' => true, 'value' => $options['aiosp_sitemap_addl_pages'], 'attr' => '' ) );
240
  $output = str_replace( "'", "\'", $output );
241
  $output = str_replace( "\n", '\n', $output );
242
  die( sprintf( AIOSEOP_AJAX_MSG_TMPL, $output ) );
@@ -256,13 +256,15 @@ if ( !function_exists( 'aioseop_ajax_delete_url' ) ) {
256
  $_POST['location'] = null;
257
  $_POST['Submit'] = 'ajax';
258
  $module->add_page_hooks();
259
- $_POST = $module->get_current_options( $_POST, null );
 
 
260
  if ( !empty( $_POST['aiosp_sitemap_addl_pages'] ) && ( !empty( $_POST['aiosp_sitemap_addl_pages'][ $options ] ) ) ) {
261
  unset( $_POST['aiosp_sitemap_addl_pages'][ $options ] );
262
  if ( empty( $_POST['aiosp_sitemap_addl_pages'] ) )
263
  $_POST['aiosp_sitemap_addl_pages'] = '';
264
  else
265
- $_POST['aiosp_sitemap_addl_pages'] = serialize( $_POST['aiosp_sitemap_addl_pages'] );
266
  $module->handle_settings_updates( null );
267
  $options = $module->get_current_options( Array(), null );
268
  $output = $module->display_custom_options( '', Array( 'name' => 'aiosp_sitemap_addl_pages', 'type' => 'custom', 'save' => true, 'value' => $options['aiosp_sitemap_addl_pages'], 'attr' => '' ) );
@@ -370,10 +372,10 @@ if ( !function_exists( 'aioseop_mrt_pccolumn' ) ) {
370
  id="aioseop_<?php print $target; ?>_<?php echo $id; ?>"
371
  style="float:left;">
372
  <?php $content = htmlspecialchars( stripslashes( get_post_meta( $id, "_aioseop_" . $target, TRUE ) ) );
373
- if( !empty($content) ): $label = esc_js( $content );
374
- else: $label = ''; $content = '<strong><i>No ' . $target . '</i></strong>' ; endif;
375
- print $content . '<a id="' . $target . 'editlink' . $id . '" href="javascript:void(0);" onclick=\'aioseop_ajax_edit_meta_form(' .
376
- $id . ', "' . str_replace( Array( '"', '&quot;' ), Array( '\x22', '\x22' ), esc_js( $label ) ) . '", "' . $target . '");return false;\' title="' . __('Edit') . '">';
377
  print "<img class='aioseop_edit_button'
378
  id='aioseop_edit_id'
379
  src='" . AIOSEOP_PLUGIN_IMAGES_URL . "cog_edit.png' /></a>";
@@ -515,3 +517,12 @@ if ( !function_exists( 'json_decode' ) ) {
515
  return $services_json->decode( $arg );
516
  }
517
  }
 
 
 
 
 
 
 
 
 
36
 
37
  // WPML has now attached to filters, read settings again so they can be translated
38
  $aioseop_options = get_option( 'aioseop_options' );
39
+
40
  if ( !empty( $aioseop_options['aiosp_archive_noindex'] ) ) { // migrate setting for noindex archives
41
  $aioseop_options['aiosp_archive_date_noindex'] = $aioseop_options['aiosp_archive_author_noindex'] = $aioseop_options['aiosp_archive_noindex'];
42
  unset( $aioseop_options['aiosp_archive_noindex'] );
137
  if ( empty( $aioseop_options['aiosp_togglekeywords'] ) )
138
  $aioseopc['seokeywords'] = __( 'SEO Keywords', 'all_in_one_seo_pack' );
139
  return $aioseopc;
140
+ }
141
  }
142
 
143
  if ( !function_exists( 'aioseop_admin_head' ) ) {
200
  $output .= 'onclick=\'aioseop_ajax_edit_meta_form(' . $post_id . ', ' . json_encode( $label ) . ', "' . $target . '");return false;\' title="' . __('Edit') . '">';
201
  $output .= '<img class="aioseop_edit_button" id="aioseop_edit_id" src="' . AIOSEOP_PLUGIN_IMAGES_URL . '/cog_edit.png" /></a>';
202
  die( "jQuery('div#aioseop_" . $target . "_" . $post_id . "').fadeOut('fast', function() {
203
+ jQuery('div#aioseop_" . $target . "_" . $post_id . "').html('" . addslashes_gpc($output) . "').fadeIn('fast');
204
  });" );
205
  }
206
  }
235
  $module->add_page_hooks();
236
  $_POST = $module->get_current_options( $_POST, null );
237
  $module->handle_settings_updates( null );
238
+ $options = $module->get_current_options( Array(), null );
239
+ $output .= $module->display_custom_options( '', Array( 'name' => 'aiosp_sitemap_addl_pages', 'type' => 'custom', 'save' => true, 'value' => $options['aiosp_sitemap_addl_pages'], 'attr' => '' ) );
240
  $output = str_replace( "'", "\'", $output );
241
  $output = str_replace( "\n", '\n', $output );
242
  die( sprintf( AIOSEOP_AJAX_MSG_TMPL, $output ) );
256
  $_POST['location'] = null;
257
  $_POST['Submit'] = 'ajax';
258
  $module->add_page_hooks();
259
+ $_POST = (Array)$module->get_current_options( $_POST, null );
260
+ if ( !empty( $_POST['aiosp_sitemap_addl_pages'] ) && ( is_object( $_POST['aiosp_sitemap_addl_pages'] ) ) )
261
+ $_POST['aiosp_sitemap_addl_pages'] = (Array)$_POST['aiosp_sitemap_addl_pages'];
262
  if ( !empty( $_POST['aiosp_sitemap_addl_pages'] ) && ( !empty( $_POST['aiosp_sitemap_addl_pages'][ $options ] ) ) ) {
263
  unset( $_POST['aiosp_sitemap_addl_pages'][ $options ] );
264
  if ( empty( $_POST['aiosp_sitemap_addl_pages'] ) )
265
  $_POST['aiosp_sitemap_addl_pages'] = '';
266
  else
267
+ $_POST['aiosp_sitemap_addl_pages'] = json_encode( $_POST['aiosp_sitemap_addl_pages'] );
268
  $module->handle_settings_updates( null );
269
  $options = $module->get_current_options( Array(), null );
270
  $output = $module->display_custom_options( '', Array( 'name' => 'aiosp_sitemap_addl_pages', 'type' => 'custom', 'save' => true, 'value' => $options['aiosp_sitemap_addl_pages'], 'attr' => '' ) );
372
  id="aioseop_<?php print $target; ?>_<?php echo $id; ?>"
373
  style="float:left;">
374
  <?php $content = htmlspecialchars( stripslashes( get_post_meta( $id, "_aioseop_" . $target, TRUE ) ) );
375
+ if( !empty($content) ): $label = esc_js( $content );
376
+ else: $label = ''; $content = '<strong><i>No ' . $target . '</i></strong>' ; endif;
377
+ print $content . '<a id="' . $target . 'editlink' . $id . '" href="javascript:void(0);" onclick=\'aioseop_ajax_edit_meta_form(' .
378
+ $id . ', "' . str_replace( Array( '"', '&quot;' ), Array( '\x22', '\x22' ), esc_js( $label ) ) . '", "' . $target . '");return false;\' title="' . __('Edit') . '">';
379
  print "<img class='aioseop_edit_button'
380
  id='aioseop_edit_id'
381
  src='" . AIOSEOP_PLUGIN_IMAGES_URL . "cog_edit.png' /></a>";
517
  return $services_json->decode( $arg );
518
  }
519
  }
520
+
521
+ /***
522
+ * fnmatch() doesn't exist on Windows pre PHP 5.3
523
+ */
524
+ if( !function_exists( 'fnmatch' ) ) {
525
+ function fnmatch( $pattern, $string ) {
526
+ return preg_match( "#^" . strtr( preg_quote( $pattern, '#' ), array( '\*' => '.*', '\?' => '.' ) ) . "$#i", $string );
527
+ }
528
+ }
aioseop_module_class.php CHANGED
@@ -990,9 +990,13 @@ if ( !class_exists( 'All_in_One_SEO_Pack_Module' ) ) {
990
  if ( !empty( $options['count'] ) ) {
991
  $size = 60;
992
  if ( isset( $options['size'] ) ) $size = $options['size'];
993
- elseif ( isset( $options['rows'] ) && isset( $options['cols'] ) ) $size = $options['rows'] * $options['cols'];
 
 
 
 
994
  $buf .= "<br /><input readonly type='text' name='{$prefix}length$n' size='3' maxlength='3' style='width:53px;height:23px;margin:0px;padding:0px 0px 0px 10px;' value='" . $this->strlen($value) . "' />"
995
- . sprintf( __(' characters. Most search engines use a maximum of %s chars for the %s.', 'all_in_one_seo_pack'), $size, $this->strtolower( $options['name'] ) );
996
  }
997
  return $buf;
998
  }
990
  if ( !empty( $options['count'] ) ) {
991
  $size = 60;
992
  if ( isset( $options['size'] ) ) $size = $options['size'];
993
+ elseif ( isset( $options['rows'] ) && isset( $options['cols'] ) ) $size = $options['rows'] * $options['cols'];
994
+ if ( isset( $options['count_desc'] ) )
995
+ $count_desc = $options['count_desc'];
996
+ else
997
+ $count_desc = __( ' characters. Most search engines use a maximum of %s chars for the %s.', 'all_in_one_seo_pack' );
998
  $buf .= "<br /><input readonly type='text' name='{$prefix}length$n' size='3' maxlength='3' style='width:53px;height:23px;margin:0px;padding:0px 0px 0px 10px;' value='" . $this->strlen($value) . "' />"
999
+ . sprintf( $count_desc, $size, $this->strtolower( $options['name'] ) );
1000
  }
1001
  return $buf;
1002
  }
aioseop_sitemap.php CHANGED
@@ -33,7 +33,7 @@ if ( !class_exists( 'All_in_One_SEO_Pack_Sitemap' ) ) {
33
  "archive" => __( "Include Date Archives in your sitemap.<br /><a href='http://semperplugins.com/documentation/xml-sitemaps-module/' target='_blank'>Click here for documentation on this setting</a>", 'all_in_one_seo_pack' ),
34
  "author" => __( "Include Author Archives in your sitemap.<br /><a href='http://semperplugins.com/documentation/xml-sitemaps-module/' target='_blank'>Click here for documentation on this setting</a>", 'all_in_one_seo_pack' ),
35
  "gzipped" => __( "Create a compressed sitemap file in .xml.gz format.<br /><a href='http://semperplugins.com/documentation/xml-sitemaps-module/' target='_blank'>Click here for documentation on this setting</a>", 'all_in_one_seo_pack' ),
36
- "robots" => __( 'Places a link to your Sitemap.xml into your virtual Robots.txt file.', 'all_in_one_seo_pack' ),
37
  "rewrite" => __( "Places a link to the sitemap file in your virtual Robots.txt file which WordPress creates.<br /><a href='http://semperplugins.com/documentation/xml-sitemaps-module/' target='_blank'>Click here for documentation on this setting</a>", 'all_in_one_seo_pack' ),
38
  "debug" => __( "Use rewrites to generate your sitemap on the fly. NOTE: This is required for WordPress Multisite.<br /><a href='http://semperplugins.com/documentation/xml-sitemaps-module/' target='_blank'>Click here for documentation on this setting</a>", 'all_in_one_seo_pack'),
39
  "addl_url" => __( 'URL to the page.', 'all_in_one_seo_pack' ),
33
  "archive" => __( "Include Date Archives in your sitemap.<br /><a href='http://semperplugins.com/documentation/xml-sitemaps-module/' target='_blank'>Click here for documentation on this setting</a>", 'all_in_one_seo_pack' ),
34
  "author" => __( "Include Author Archives in your sitemap.<br /><a href='http://semperplugins.com/documentation/xml-sitemaps-module/' target='_blank'>Click here for documentation on this setting</a>", 'all_in_one_seo_pack' ),
35
  "gzipped" => __( "Create a compressed sitemap file in .xml.gz format.<br /><a href='http://semperplugins.com/documentation/xml-sitemaps-module/' target='_blank'>Click here for documentation on this setting</a>", 'all_in_one_seo_pack' ),
36
+ "robots" => __( "Places a link to your Sitemap.xml into your virtual Robots.txt file.<br /><a href='http://semperplugins.com/documentation/xml-sitemaps-module/' target='_blank'>Click here for documentation on this setting</a>", 'all_in_one_seo_pack' ),
37
  "rewrite" => __( "Places a link to the sitemap file in your virtual Robots.txt file which WordPress creates.<br /><a href='http://semperplugins.com/documentation/xml-sitemaps-module/' target='_blank'>Click here for documentation on this setting</a>", 'all_in_one_seo_pack' ),
38
  "debug" => __( "Use rewrites to generate your sitemap on the fly. NOTE: This is required for WordPress Multisite.<br /><a href='http://semperplugins.com/documentation/xml-sitemaps-module/' target='_blank'>Click here for documentation on this setting</a>", 'all_in_one_seo_pack'),
39
  "addl_url" => __( 'URL to the page.', 'all_in_one_seo_pack' ),
all_in_one_seo_pack.php CHANGED
@@ -2,8 +2,8 @@
2
  /*
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. <a href="admin.php?page=all-in-one-seo-pack/aioseop_class.php">Options configuration panel</a> | <a href="http://semperplugins.com/plugins/">Upgrade to Pro Version</a> | <a href="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">Donate</a> | <a href="http://semperplugins.com/support/" >Support</a> | <a href="https://www.amazon.com/wishlist/1NFQ133FNCOOA/ref=wl_web" target="_blank" title="Amazon Wish List">Amazon Wishlist</a>
6
- Version: 2.0.4
7
  Author: Michael Torbert
8
  Author URI: http://michaeltorbert.com
9
  */
@@ -30,11 +30,11 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
30
 
31
  /**
32
  * @package All-in-One-SEO-Pack
33
- * @version 2.0.4
34
  */
35
 
36
  if ( ! defined( 'AIOSEOP_VERSION' ) )
37
- define( 'AIOSEOP_VERSION', '2.0.4' );
38
 
39
  if ( ! defined( 'AIOSEOP_PLUGIN_DIR' ) ) {
40
  define( 'AIOSEOP_PLUGIN_DIR', plugin_dir_path( __FILE__ ) );
2
  /*
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. <a href="admin.php?page=all-in-one-seo-pack/aioseop_class.php">Options configuration panel</a> | <a href="http://semperplugins.com/plugins/all-in-one-seo-pack-pro-version/?loc=plugins" target="_blank">Upgrade to Pro Version</a> | <a href="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">Donate</a> | <a href="http://semperplugins.com/support/" >Support</a> | <a href="https://www.amazon.com/wishlist/1NFQ133FNCOOA/ref=wl_web" target="_blank" title="Amazon Wish List">Amazon Wishlist</a>
6
+ Version: 2.0.4.1
7
  Author: Michael Torbert
8
  Author URI: http://michaeltorbert.com
9
  */
30
 
31
  /**
32
  * @package All-in-One-SEO-Pack
33
+ * @version 2.0.4.1
34
  */
35
 
36
  if ( ! defined( 'AIOSEOP_VERSION' ) )
37
+ define( 'AIOSEOP_VERSION', '2.0.4.1' );
38
 
39
  if ( ! defined( 'AIOSEOP_PLUGIN_DIR' ) ) {
40
  define( 'AIOSEOP_PLUGIN_DIR', plugin_dir_path( __FILE__ ) );
readme.txt CHANGED
@@ -3,7 +3,7 @@ Contributors: hallsofmontezuma
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: all in one, all in one seo, all in one seo pack, seo, search engine optimization, google
5
  Requires at least: 3.3
6
- Tested up to: 3.6.1
7
  Stable tag: trunk
8
 
9
  All in One SEO Pack is a WordPress SEO plugin to automatically optimize your Wordpress blog for Search Engines such as Google.
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: all in one, all in one seo, all in one seo pack, seo, search engine optimization, google
5
  Requires at least: 3.3
6
+ Tested up to: 3.7.1
7
  Stable tag: trunk
8
 
9
  All in One SEO Pack is a WordPress SEO plugin to automatically optimize your Wordpress blog for Search Engines such as Google.