Version Description
Download this release
Release Info
Developer | hallsofmontezuma |
Plugin | All in One SEO Pack |
Version | 2.3.12.3 |
Comparing to | |
See all releases |
Code changes from version 2.3.12.2.1 to 2.3.12.3
- admin/aioseop_module_class.php +3 -0
- admin/display/credits-content.php +3 -2
- aioseop_class.php +1 -1
- all_in_one_seo_pack.php +10 -3
- i18n/all-in-one-seo-pack.pot +1 -1
- inc/aioseop_functions.php +17 -0
- inc/compatability/abstract/aiosep_compatible.php +32 -0
- inc/compatability/compat-init.php +23 -1
- inc/compatability/compat-wpml.php +72 -0
- inc/sitemap-xsl.php +70 -72
- modules/aioseop_importer_exporter.php +3 -1
- modules/aioseop_opengraph.php +1 -1
- modules/aioseop_sitemap.php +40 -18
- readme.txt +1 -1
admin/aioseop_module_class.php
CHANGED
@@ -1,6 +1,7 @@
|
|
1 |
<?php
|
2 |
/**
|
3 |
* @package All-in-One-SEO-Pack
|
|
|
4 |
*/
|
5 |
|
6 |
if ( ! class_exists( 'All_in_One_SEO_Pack_Module' ) ) {
|
@@ -1763,6 +1764,7 @@ if ( ! class_exists( 'All_in_One_SEO_Pack_Module' ) ) {
|
|
1763 |
|
1764 |
/**
|
1765 |
* Load scripts for module, can pass data to module script.
|
|
|
1766 |
*/
|
1767 |
function enqueue_scripts() {
|
1768 |
wp_enqueue_script( 'sack' );
|
@@ -1775,6 +1777,7 @@ if ( ! class_exists( 'All_in_One_SEO_Pack_Module' ) ) {
|
|
1775 |
if ( ! empty( $this->pointers ) ) {
|
1776 |
wp_enqueue_script( 'wp-pointer', false, array( 'jquery' ) );
|
1777 |
}
|
|
|
1778 |
wp_enqueue_script( 'aioseop-module-script', AIOSEOP_PLUGIN_URL . 'js/modules/aioseop_module.js', array(), AIOSEOP_VERSION );
|
1779 |
if ( ! empty( $this->script_data ) ) {
|
1780 |
aioseop_localize_script_data();
|
1 |
<?php
|
2 |
/**
|
3 |
* @package All-in-One-SEO-Pack
|
4 |
+
* @version 2.3.12.2
|
5 |
*/
|
6 |
|
7 |
if ( ! class_exists( 'All_in_One_SEO_Pack_Module' ) ) {
|
1764 |
|
1765 |
/**
|
1766 |
* Load scripts for module, can pass data to module script.
|
1767 |
+
* @since 2.3.12.3 Add missing wp_enqueue_media.
|
1768 |
*/
|
1769 |
function enqueue_scripts() {
|
1770 |
wp_enqueue_script( 'sack' );
|
1777 |
if ( ! empty( $this->pointers ) ) {
|
1778 |
wp_enqueue_script( 'wp-pointer', false, array( 'jquery' ) );
|
1779 |
}
|
1780 |
+
wp_enqueue_media();
|
1781 |
wp_enqueue_script( 'aioseop-module-script', AIOSEOP_PLUGIN_URL . 'js/modules/aioseop_module.js', array(), AIOSEOP_VERSION );
|
1782 |
if ( ! empty( $this->script_data ) ) {
|
1783 |
aioseop_localize_script_data();
|
admin/display/credits-content.php
CHANGED
@@ -37,8 +37,9 @@
|
|
37 |
|
38 |
<h3 class="wp-people-group">🌟<?php _e( 'Recent Rockstar Contributors', 'all-in-one-seo-pack' ); ?>🌟</h3>
|
39 |
<ul class="wp-people-group " id="wp-people-group-rockstars">
|
40 |
-
|
41 |
-
|
|
|
42 |
</li>
|
43 |
<li class="wp-person" id="wp-person-dougalcampbell">
|
44 |
<a class="web" target="_blank" href="https://profiles.wordpress.org/dougal/"><img alt="" class="gravatar" src="https://www.gravatar.com/avatar/81717a172b6918071fbea1a52483294b?s=60">
|
37 |
|
38 |
<h3 class="wp-people-group">🌟<?php _e( 'Recent Rockstar Contributors', 'all-in-one-seo-pack' ); ?>🌟</h3>
|
39 |
<ul class="wp-people-group " id="wp-people-group-rockstars">
|
40 |
+
/* translators: '%1$s' and '%2$s' are used as placeholders and turn the text in between into a clickable link */
|
41 |
+
<li><?php printf( __('Want to see your name and picture here as a community developer? %1$sClick here%2$s to open an issue on GitHub to report a bug, request a feature or find an issue and submit code!', 'all-in-one-seo-pack'),
|
42 |
+
'<a href="https://github.com/semperfiwebdesign/all-in-one-seo-pack" target="_blank">', '</a>'); ?>
|
43 |
</li>
|
44 |
<li class="wp-person" id="wp-person-dougalcampbell">
|
45 |
<a class="web" target="_blank" href="https://profiles.wordpress.org/dougal/"><img alt="" class="gravatar" src="https://www.gravatar.com/avatar/81717a172b6918071fbea1a52483294b?s=60">
|
aioseop_class.php
CHANGED
@@ -3070,7 +3070,7 @@ class All_in_One_SEO_Pack extends All_in_One_SEO_Pack_Module {
|
|
3070 |
|
3071 |
$post_objs = get_post_types( '', 'objects' );
|
3072 |
$pt = array_keys( $post_objs );
|
3073 |
-
$rempost = array( 'revision', 'nav_menu_item' );
|
3074 |
$pt = array_diff( $pt, $rempost );
|
3075 |
$post_types = array();
|
3076 |
|
3070 |
|
3071 |
$post_objs = get_post_types( '', 'objects' );
|
3072 |
$pt = array_keys( $post_objs );
|
3073 |
+
$rempost = array( 'revision', 'nav_menu_item', 'custom_css', 'customize_changeset' ); // Don't show these built-in types as options for CPT SEO.
|
3074 |
$pt = array_diff( $pt, $rempost );
|
3075 |
$post_types = array();
|
3076 |
|
all_in_one_seo_pack.php
CHANGED
@@ -3,7 +3,7 @@
|
|
3 |
Plugin Name: All In One SEO Pack
|
4 |
Plugin URI: https://semperplugins.com/all-in-one-seo-pack-pro-version/
|
5 |
Description: Out-of-the-box SEO for your WordPress blog. Features like XML Sitemaps, SEO for custom post types, SEO for blogs or business sites, SEO for ecommerce sites, and much more. More than 30 million downloads since 2007.
|
6 |
-
Version: 2.3.12.
|
7 |
Author: Michael Torbert
|
8 |
Author URI: https://semperplugins.com/all-in-one-seo-pack-pro-version/
|
9 |
Text Domain: all-in-one-seo-pack
|
@@ -31,14 +31,14 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
|
|
31 |
* The original WordPress SEO plugin.
|
32 |
*
|
33 |
* @package All-in-One-SEO-Pack
|
34 |
-
* @version 2.3.12.
|
35 |
*/
|
36 |
|
37 |
if ( ! defined( 'AIOSEOPPRO' ) ) {
|
38 |
define( 'AIOSEOPPRO', false );
|
39 |
}
|
40 |
if ( ! defined( 'AIOSEOP_VERSION' ) ) {
|
41 |
-
define( 'AIOSEOP_VERSION', '2.3.12.
|
42 |
}
|
43 |
global $aioseop_plugin_name;
|
44 |
$aioseop_plugin_name = 'All in One SEO Pack';
|
@@ -369,6 +369,12 @@ if ( ! function_exists( 'aiosp_action_links' ) ) {
|
|
369 |
}
|
370 |
|
371 |
if ( ! function_exists( 'aioseop_init_class' ) ) {
|
|
|
|
|
|
|
|
|
|
|
|
|
372 |
function aioseop_init_class() {
|
373 |
global $aiosp;
|
374 |
load_plugin_textdomain( 'all-in-one-seo-pack', false, dirname( plugin_basename( __FILE__ ) ) . '/i18n/' );
|
@@ -382,6 +388,7 @@ if ( ! function_exists( 'aioseop_init_class' ) ) {
|
|
382 |
require_once( AIOSEOP_PLUGIN_DIR . 'admin/meta_import.php' );
|
383 |
require_once( AIOSEOP_PLUGIN_DIR . 'inc/translations.php' );
|
384 |
require_once( AIOSEOP_PLUGIN_DIR . 'public/opengraph.php' );
|
|
|
385 |
require_once( AIOSEOP_PLUGIN_DIR . 'inc/compatability/compat-init.php');
|
386 |
require_once( AIOSEOP_PLUGIN_DIR . 'public/front.php' );
|
387 |
require_once( AIOSEOP_PLUGIN_DIR . 'public/google-analytics.php' );
|
3 |
Plugin Name: All In One SEO Pack
|
4 |
Plugin URI: https://semperplugins.com/all-in-one-seo-pack-pro-version/
|
5 |
Description: Out-of-the-box SEO for your WordPress blog. Features like XML Sitemaps, SEO for custom post types, SEO for blogs or business sites, SEO for ecommerce sites, and much more. More than 30 million downloads since 2007.
|
6 |
+
Version: 2.3.12.3
|
7 |
Author: Michael Torbert
|
8 |
Author URI: https://semperplugins.com/all-in-one-seo-pack-pro-version/
|
9 |
Text Domain: all-in-one-seo-pack
|
31 |
* The original WordPress SEO plugin.
|
32 |
*
|
33 |
* @package All-in-One-SEO-Pack
|
34 |
+
* @version 2.3.12.3
|
35 |
*/
|
36 |
|
37 |
if ( ! defined( 'AIOSEOPPRO' ) ) {
|
38 |
define( 'AIOSEOPPRO', false );
|
39 |
}
|
40 |
if ( ! defined( 'AIOSEOP_VERSION' ) ) {
|
41 |
+
define( 'AIOSEOP_VERSION', '2.3.12.3' );
|
42 |
}
|
43 |
global $aioseop_plugin_name;
|
44 |
$aioseop_plugin_name = 'All in One SEO Pack';
|
369 |
}
|
370 |
|
371 |
if ( ! function_exists( 'aioseop_init_class' ) ) {
|
372 |
+
/**
|
373 |
+
* Inits All-in-One-Seo plugin class.
|
374 |
+
*
|
375 |
+
* @since ?? // When was this added?
|
376 |
+
* @since 2.3.12.3 Loads third party compatibility class.
|
377 |
+
*/
|
378 |
function aioseop_init_class() {
|
379 |
global $aiosp;
|
380 |
load_plugin_textdomain( 'all-in-one-seo-pack', false, dirname( plugin_basename( __FILE__ ) ) . '/i18n/' );
|
388 |
require_once( AIOSEOP_PLUGIN_DIR . 'admin/meta_import.php' );
|
389 |
require_once( AIOSEOP_PLUGIN_DIR . 'inc/translations.php' );
|
390 |
require_once( AIOSEOP_PLUGIN_DIR . 'public/opengraph.php' );
|
391 |
+
require_once( AIOSEOP_PLUGIN_DIR . 'inc/compatability/abstract/aiosep_compatible.php');
|
392 |
require_once( AIOSEOP_PLUGIN_DIR . 'inc/compatability/compat-init.php');
|
393 |
require_once( AIOSEOP_PLUGIN_DIR . 'public/front.php' );
|
394 |
require_once( AIOSEOP_PLUGIN_DIR . 'public/google-analytics.php' );
|
i18n/all-in-one-seo-pack.pot
CHANGED
@@ -3495,7 +3495,7 @@ msgstr ""
|
|
3495 |
msgid ""
|
3496 |
"Out-of-the-box SEO for your WordPress blog. Features like XML Sitemaps, SEO "
|
3497 |
"for custom post types, SEO for blogs or business sites, SEO for ecommerce "
|
3498 |
-
"sites, and much more.
|
3499 |
msgstr ""
|
3500 |
|
3501 |
#. Author of the plugin/theme
|
3495 |
msgid ""
|
3496 |
"Out-of-the-box SEO for your WordPress blog. Features like XML Sitemaps, SEO "
|
3497 |
"for custom post types, SEO for blogs or business sites, SEO for ecommerce "
|
3498 |
+
"sites, and much more. More than 30 million downloads since 2007.""
|
3499 |
msgstr ""
|
3500 |
|
3501 |
#. Author of the plugin/theme
|
inc/aioseop_functions.php
CHANGED
@@ -5,6 +5,7 @@
|
|
5 |
* We'll eventually move these to a better place, and figure out ones not being used anymore.
|
6 |
*
|
7 |
* @package All-in-One-SEO-Pack
|
|
|
8 |
*/
|
9 |
|
10 |
if ( ! function_exists( 'aioseop_load_modules' ) ) {
|
@@ -956,3 +957,19 @@ function aioseop_woo_upgrade_notice_dismissed() {
|
|
956 |
|
957 |
update_user_meta( get_current_user_id(), 'aioseop_woo_upgrade_notice_dismissed', true );
|
958 |
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
5 |
* We'll eventually move these to a better place, and figure out ones not being used anymore.
|
6 |
*
|
7 |
* @package All-in-One-SEO-Pack
|
8 |
+
* @version 2.3.13
|
9 |
*/
|
10 |
|
11 |
if ( ! function_exists( 'aioseop_load_modules' ) ) {
|
957 |
|
958 |
update_user_meta( get_current_user_id(), 'aioseop_woo_upgrade_notice_dismissed', true );
|
959 |
}
|
960 |
+
|
961 |
+
/**
|
962 |
+
* Returns home_url() value compatible for any use.
|
963 |
+
* Thought for compatibility purposes.
|
964 |
+
*
|
965 |
+
* @since 2.3.12.3
|
966 |
+
*
|
967 |
+
* @param string $path Relative path to home_url().
|
968 |
+
*
|
969 |
+
* @return string url.
|
970 |
+
*/
|
971 |
+
function aioseop_home_url( $path = '/' ) {
|
972 |
+
|
973 |
+
$url = apply_filters( 'aioseop_home_url', $path );
|
974 |
+
return $path === $url ? home_url( $path ) : $url;
|
975 |
+
}
|
inc/compatability/abstract/aiosep_compatible.php
ADDED
@@ -0,0 +1,32 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
<?php
|
2 |
+
if ( ! class_exists( 'All_in_One_SEO_Pack_Compatible' ) ) {
|
3 |
+
/**
|
4 |
+
* Abstract class to be used to create compatibility with 3rd party wordpress plugins.
|
5 |
+
*
|
6 |
+
* @package All-in-One-SEO-Pack
|
7 |
+
* @author Alejandro Mostajo
|
8 |
+
* @copyright Semperfi Web Design <https://semperplugins.com/>
|
9 |
+
* @version 2.3.13
|
10 |
+
* @since 2.3.12.3
|
11 |
+
*/
|
12 |
+
abstract class All_in_One_SEO_Pack_Compatible {
|
13 |
+
/**
|
14 |
+
* Returns flag indicating if compatible plugin exists in current instalation or not.
|
15 |
+
* This function should be overwritten on child class.
|
16 |
+
* @since 2.3.12.3
|
17 |
+
*
|
18 |
+
* @return bool
|
19 |
+
*/
|
20 |
+
public function exists() {
|
21 |
+
return false;
|
22 |
+
}
|
23 |
+
|
24 |
+
/**
|
25 |
+
* Method executed by compatibility handler to declare hooks and/or any other compatibility code needed.
|
26 |
+
* @since 2.3.12.3
|
27 |
+
*/
|
28 |
+
public function hooks() {
|
29 |
+
// TODO per compatible plugin.
|
30 |
+
}
|
31 |
+
}
|
32 |
+
}
|
inc/compatability/compat-init.php
CHANGED
@@ -5,7 +5,7 @@
|
|
5 |
* Eventually we'll have subclasses for each.
|
6 |
*
|
7 |
* @package All-in-One-SEO-Pack
|
8 |
-
* @since 2.3.
|
9 |
*/
|
10 |
|
11 |
if ( ! class_exists( 'All_in_One_SEO_Pack_Compatibility' ) ) {
|
@@ -15,8 +15,18 @@ if ( ! class_exists( 'All_in_One_SEO_Pack_Compatibility' ) ) {
|
|
15 |
*
|
16 |
* @since 2.3.6
|
17 |
*/
|
|
|
18 |
class All_in_One_SEO_Pack_Compatibility {
|
19 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
20 |
/**
|
21 |
* All_in_One_SEO_Pack_Compatibility constructor.
|
22 |
*
|
@@ -32,6 +42,7 @@ if ( ! class_exists( 'All_in_One_SEO_Pack_Compatibility' ) ) {
|
|
32 |
* Load Compatibility Hooks.
|
33 |
*
|
34 |
* @since 2.3.6
|
|
|
35 |
*/
|
36 |
public function load_compatibility_hooks() {
|
37 |
// We'll use this until we set up our classes.
|
@@ -48,6 +59,10 @@ if ( ! class_exists( 'All_in_One_SEO_Pack_Compatibility' ) ) {
|
|
48 |
if ( isset( $aioseop_options['modules']['aiosp_feature_manager_options']['aiosp_feature_manager_enable_opengraph'] ) && $aioseop_options['modules']['aiosp_feature_manager_options']['aiosp_feature_manager_enable_opengraph'] === 'on' ) {
|
49 |
add_filter( 'twitter_card', array( $this, 'aioseop_disable_twitter' ) );
|
50 |
}
|
|
|
|
|
|
|
|
|
51 |
}
|
52 |
|
53 |
/**
|
@@ -120,8 +135,15 @@ if ( ! class_exists( 'All_in_One_SEO_Pack_Compatibility' ) ) {
|
|
120 |
* Load Compatibility classes.
|
121 |
*
|
122 |
* @since 2.3.6
|
|
|
123 |
*/
|
124 |
public function load_compatibility_classes() {
|
|
|
|
|
|
|
|
|
|
|
|
|
125 |
// Eventually we'll load our other classes from here.
|
126 |
$this->load_compatibility_hooks();
|
127 |
}
|
5 |
* Eventually we'll have subclasses for each.
|
6 |
*
|
7 |
* @package All-in-One-SEO-Pack
|
8 |
+
* @since 2.3.13
|
9 |
*/
|
10 |
|
11 |
if ( ! class_exists( 'All_in_One_SEO_Pack_Compatibility' ) ) {
|
15 |
*
|
16 |
* @since 2.3.6
|
17 |
*/
|
18 |
+
|
19 |
class All_in_One_SEO_Pack_Compatibility {
|
20 |
|
21 |
+
/**
|
22 |
+
* List of compatibility classes to execute and run.
|
23 |
+
*
|
24 |
+
* @since 2.3.12.3
|
25 |
+
*
|
26 |
+
* @var array
|
27 |
+
*/
|
28 |
+
protected $classes = array();
|
29 |
+
|
30 |
/**
|
31 |
* All_in_One_SEO_Pack_Compatibility constructor.
|
32 |
*
|
42 |
* Load Compatibility Hooks.
|
43 |
*
|
44 |
* @since 2.3.6
|
45 |
+
* @since 2.3.12.3 Runs hooks located in compatibility classes.
|
46 |
*/
|
47 |
public function load_compatibility_hooks() {
|
48 |
// We'll use this until we set up our classes.
|
59 |
if ( isset( $aioseop_options['modules']['aiosp_feature_manager_options']['aiosp_feature_manager_enable_opengraph'] ) && $aioseop_options['modules']['aiosp_feature_manager_options']['aiosp_feature_manager_enable_opengraph'] === 'on' ) {
|
60 |
add_filter( 'twitter_card', array( $this, 'aioseop_disable_twitter' ) );
|
61 |
}
|
62 |
+
// Run compatibility classes
|
63 |
+
for ( $i = count( $this->classes ) - 1; $i >= 0; --$i ) {
|
64 |
+
$this->classes[ $i ]->hooks();
|
65 |
+
}
|
66 |
}
|
67 |
|
68 |
/**
|
135 |
* Load Compatibility classes.
|
136 |
*
|
137 |
* @since 2.3.6
|
138 |
+
* @since 2.3.12.3 WPML compatibility loaded.
|
139 |
*/
|
140 |
public function load_compatibility_classes() {
|
141 |
+
// Load classes
|
142 |
+
require_once __DIR__.'/compat-wpml.php';
|
143 |
+
// Evaluate classes and push them into array
|
144 |
+
$target = new All_in_One_SEO_Pack_Wpml;
|
145 |
+
if ( $target->exists() )
|
146 |
+
$this->classes[] = $target;
|
147 |
// Eventually we'll load our other classes from here.
|
148 |
$this->load_compatibility_hooks();
|
149 |
}
|
inc/compatability/compat-wpml.php
ADDED
@@ -0,0 +1,72 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
<?php
|
2 |
+
if ( ! class_exists( 'All_in_One_SEO_Pack_Wpml' ) ) {
|
3 |
+
/**
|
4 |
+
* Compatibility with WPML - Wordpress Multilingual Plugin
|
5 |
+
*
|
6 |
+
* @link https://wpml.org/
|
7 |
+
* @package All-in-One-SEO-Pack
|
8 |
+
* @author Alejandro Mostajo
|
9 |
+
* @copyright Semperfi Web Design <https://semperplugins.com/>
|
10 |
+
* @version 2.3.13
|
11 |
+
*/
|
12 |
+
class All_in_One_SEO_Pack_Wpml extends All_in_One_SEO_Pack_Compatible {
|
13 |
+
/**
|
14 |
+
* Returns flag indicating if WPML is present.
|
15 |
+
*
|
16 |
+
* @since 2.3.12.3
|
17 |
+
*
|
18 |
+
* @return bool
|
19 |
+
*/
|
20 |
+
public function exists() {
|
21 |
+
return function_exists( 'icl_object_id' );
|
22 |
+
}
|
23 |
+
|
24 |
+
/**
|
25 |
+
* Declares compatibility hooks.
|
26 |
+
*
|
27 |
+
* @since 2.3.12.3
|
28 |
+
*/
|
29 |
+
public function hooks() {
|
30 |
+
add_filter( 'aioseop_home_url', array( &$this, 'aioseop_home_url' ) );
|
31 |
+
add_filter( 'aioseop_sitemap_xsl_url', array( &$this, 'aioseop_sitemap_xsl_url' ) );
|
32 |
+
}
|
33 |
+
|
34 |
+
/**
|
35 |
+
* Returns specified url filtered by wpml.
|
36 |
+
* This is needed to obtain the correct domain in which wordpress is running on.
|
37 |
+
* AIOSEOP would have ran first expecting the return of home_url().
|
38 |
+
*
|
39 |
+
* @since 2.3.12.3
|
40 |
+
*
|
41 |
+
* @param string $path Relative path or url.
|
42 |
+
*
|
43 |
+
* @param string filtered url.
|
44 |
+
*/
|
45 |
+
public function aioseop_home_url( $path ) {
|
46 |
+
$url = apply_filters( 'wpml_home_url', home_url( '/' ) );
|
47 |
+
// Remove query string
|
48 |
+
preg_match_all( '/\?[\s\S]+/', $url, $matches );
|
49 |
+
// Get base
|
50 |
+
$url = preg_replace( '/\?[\s\S]+/', '', $url);
|
51 |
+
$url = trailingslashit( $url );
|
52 |
+
$url .= preg_replace( '/\//', '', $path, 1);
|
53 |
+
// Add query string
|
54 |
+
if ( count( $matches ) > 0 && count( $matches[0] ) > 0 )
|
55 |
+
$url .= $matches[0][0];
|
56 |
+
return $url;
|
57 |
+
}
|
58 |
+
/**
|
59 |
+
* Returns XSL url without query string.
|
60 |
+
*
|
61 |
+
* @since 2.3.12.3
|
62 |
+
*
|
63 |
+
* @param string $url XSL url.
|
64 |
+
*
|
65 |
+
* @param string filtered url.
|
66 |
+
*/
|
67 |
+
public function aioseop_sitemap_xsl_url( $url )
|
68 |
+
{
|
69 |
+
return preg_replace( '/\?[\s\S]+/', '', $url);
|
70 |
+
}
|
71 |
+
}
|
72 |
+
}
|
inc/sitemap-xsl.php
CHANGED
@@ -7,11 +7,13 @@
|
|
7 |
* @package All-in-One-SEO-Pack
|
8 |
*
|
9 |
* @since 2.3.6
|
|
|
10 |
*/
|
11 |
|
12 |
echo '<?xml version="1.0" encoding="UTF-8"?>';
|
13 |
?>
|
14 |
<xsl:stylesheet version="2.0"
|
|
|
15 |
xmlns:html="http://www.w3.org/TR/REC-html40"
|
16 |
xmlns:video="http://www.google.com/schemas/sitemap-video/1.1"
|
17 |
xmlns:image="http://www.google.com/schemas/sitemap-image/1.1"
|
@@ -26,76 +28,75 @@ echo '<?xml version="1.0" encoding="UTF-8"?>';
|
|
26 |
</xsl:choose>
|
27 |
</xsl:variable>
|
28 |
<html xmlns="http://www.w3.org/1999/xhtml">
|
29 |
-
|
30 |
-
|
31 |
-
|
32 |
-
|
33 |
-
|
34 |
-
|
35 |
-
|
36 |
-
|
37 |
-
|
38 |
-
|
39 |
-
|
40 |
-
|
41 |
-
|
42 |
-
|
43 |
-
|
44 |
-
|
45 |
-
|
46 |
-
|
47 |
-
|
48 |
-
|
49 |
-
|
50 |
-
|
51 |
-
|
52 |
-
|
53 |
-
|
54 |
-
|
55 |
-
|
56 |
-
|
57 |
-
|
58 |
-
|
59 |
-
|
60 |
-
|
61 |
-
|
62 |
-
|
63 |
-
|
64 |
-
|
65 |
-
|
66 |
-
|
67 |
-
|
68 |
-
|
69 |
-
|
70 |
-
|
71 |
-
|
72 |
-
|
73 |
-
|
74 |
-
|
75 |
-
|
76 |
-
|
77 |
-
|
78 |
-
|
79 |
-
|
80 |
-
|
81 |
-
|
82 |
-
|
83 |
-
|
84 |
-
|
85 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
86 |
<xsl:when test="$fileType='Sitemap'">
|
87 |
-
|
88 |
-
<xsl:otherwise
|
89 |
-
</xsl:choose
|
90 |
-
|
91 |
-
|
92 |
-
<xsl:when test="$fileType='Sitemap'">
|
93 |
-
<xsl:call-template name="sitemapTable"/></xsl:when>
|
94 |
-
<xsl:otherwise><xsl:call-template name="siteindexTable"/></xsl:otherwise>
|
95 |
-
</xsl:choose>
|
96 |
-
|
97 |
-
</div>
|
98 |
-
</body>
|
99 |
</html>
|
100 |
</xsl:template>
|
101 |
<xsl:template name="siteindexTable">
|
@@ -177,9 +178,6 @@ echo '<?xml version="1.0" encoding="UTF-8"?>';
|
|
177 |
<xsl:value-of select="concat(substring(sitemap:lastmod,0,11),concat(' ', substring(sitemap:lastmod,12,5)))"/>
|
178 |
</td>
|
179 |
<td>
|
180 |
-
|
181 |
-
|
182 |
-
|
183 |
</td>
|
184 |
</tr>
|
185 |
</xsl:for-each>
|
7 |
* @package All-in-One-SEO-Pack
|
8 |
*
|
9 |
* @since 2.3.6
|
10 |
+
* @since 2.3.12.3 Refactoring indentation and added xmlns fix for Chrome rendering.
|
11 |
*/
|
12 |
|
13 |
echo '<?xml version="1.0" encoding="UTF-8"?>';
|
14 |
?>
|
15 |
<xsl:stylesheet version="2.0"
|
16 |
+
xmlns="http://www.w3.org/1999/xhtml"
|
17 |
xmlns:html="http://www.w3.org/TR/REC-html40"
|
18 |
xmlns:video="http://www.google.com/schemas/sitemap-video/1.1"
|
19 |
xmlns:image="http://www.google.com/schemas/sitemap-image/1.1"
|
28 |
</xsl:choose>
|
29 |
</xsl:variable>
|
30 |
<html xmlns="http://www.w3.org/1999/xhtml">
|
31 |
+
<head>
|
32 |
+
<title>
|
33 |
+
<xsl:choose><xsl:when test="$fileType='Sitemap'">Sitemap</xsl:when>
|
34 |
+
<xsl:otherwise>Sitemap Index</xsl:otherwise>
|
35 |
+
</xsl:choose>
|
36 |
+
</title>
|
37 |
+
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
|
38 |
+
<style type="text/css">
|
39 |
+
body {
|
40 |
+
margin: 0;
|
41 |
+
font-family: Helvetica, Arial, sans-serif;
|
42 |
+
font-size: 68.5%;
|
43 |
+
}
|
44 |
+
#content-head {
|
45 |
+
background-color: #4275f4;
|
46 |
+
padding: 20px 40px;
|
47 |
+
}
|
48 |
+
#content-head h1,
|
49 |
+
#content-head p,
|
50 |
+
#content-head a {
|
51 |
+
color: #fff;
|
52 |
+
font-size: 1.2em;
|
53 |
+
}
|
54 |
+
#content-head h1 {
|
55 |
+
font-size: 2em;
|
56 |
+
}
|
57 |
+
table {
|
58 |
+
margin: 20px 40px;
|
59 |
+
border: none;
|
60 |
+
border-collapse: collapse;
|
61 |
+
}
|
62 |
+
table {
|
63 |
+
font-size: 1em;
|
64 |
+
width: 75%;
|
65 |
+
}
|
66 |
+
th {
|
67 |
+
border-bottom: 1px solid #ccc;
|
68 |
+
text-align: left;
|
69 |
+
padding: 15px 5px;
|
70 |
+
font-size: 14px;
|
71 |
+
}
|
72 |
+
td {
|
73 |
+
padding: 10px 5px;
|
74 |
+
border-left: 3px solid #fff;
|
75 |
+
}
|
76 |
+
tr.stripe {
|
77 |
+
background-color: #f7f7f7;
|
78 |
+
}
|
79 |
+
</style>
|
80 |
+
</head>
|
81 |
+
<body>
|
82 |
+
<div id="content">
|
83 |
+
<div id="content-head">
|
84 |
+
<h1>XML Sitemap</h1>
|
85 |
+
<p>Generated by <a href="https://semperplugins.com">All in One </a> <a href="https://semperplugins.com/all-in-one-seo-pack-pro-version/">SEO</a>, this is an XML Sitemap, meant to be consumed by search engines like Google or Bing.<br/>
|
86 |
+
You can find more information about XML sitemaps at <a href="http://sitemaps.org">sitemaps.org</a>.</p>
|
87 |
+
<p><xsl:choose>
|
88 |
+
<xsl:when test="$fileType='Sitemap'">
|
89 |
+
This sitemap contains <xsl:value-of select="count(sitemap:urlset/sitemap:url)"></xsl:value-of> URLs</xsl:when>
|
90 |
+
<xsl:otherwise>This sitemap index contains <xsl:value-of select="count(sitemap:sitemapindex/sitemap:sitemap)"></xsl:value-of> sitemaps</xsl:otherwise>
|
91 |
+
</xsl:choose></p>
|
92 |
+
</div>
|
93 |
+
<xsl:choose>
|
94 |
<xsl:when test="$fileType='Sitemap'">
|
95 |
+
<xsl:call-template name="sitemapTable"/></xsl:when>
|
96 |
+
<xsl:otherwise><xsl:call-template name="siteindexTable"/></xsl:otherwise>
|
97 |
+
</xsl:choose>
|
98 |
+
</div>
|
99 |
+
</body>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
100 |
</html>
|
101 |
</xsl:template>
|
102 |
<xsl:template name="siteindexTable">
|
178 |
<xsl:value-of select="concat(substring(sitemap:lastmod,0,11),concat(' ', substring(sitemap:lastmod,12,5)))"/>
|
179 |
</td>
|
180 |
<td>
|
|
|
|
|
|
|
181 |
</td>
|
182 |
</tr>
|
183 |
</xsl:for-each>
|
modules/aioseop_importer_exporter.php
CHANGED
@@ -120,10 +120,12 @@ if ( ! class_exists( 'All_in_One_SEO_Pack_Importer_Exporter' ) ) {
|
|
120 |
|
121 |
function debug_post_types() {
|
122 |
$post_types = $this->get_post_type_titles();
|
123 |
-
$rempost
|
124 |
'attachment' => 1,
|
125 |
'revision' => 1,
|
126 |
'nav_menu_item' => 1,
|
|
|
|
|
127 |
);
|
128 |
$this->default_options['export_post_types']['initial_options'] = array_diff_key(
|
129 |
$post_types,
|
120 |
|
121 |
function debug_post_types() {
|
122 |
$post_types = $this->get_post_type_titles();
|
123 |
+
$rempost = array(
|
124 |
'attachment' => 1,
|
125 |
'revision' => 1,
|
126 |
'nav_menu_item' => 1,
|
127 |
+
'custom_css' => 1,
|
128 |
+
'customize_changeset' => 1,
|
129 |
);
|
130 |
$this->default_options['export_post_types']['initial_options'] = array_diff_key(
|
131 |
$post_types,
|
modules/aioseop_opengraph.php
CHANGED
@@ -1341,7 +1341,7 @@ END;
|
|
1341 |
'filter_metabox_options',
|
1342 |
), 10, 3 );
|
1343 |
$post_types = $this->get_post_type_titles();
|
1344 |
-
$rempost
|
1345 |
$post_types = array_diff_key( $post_types, $rempost );
|
1346 |
$this->default_options['types']['initial_options'] = $post_types;
|
1347 |
foreach ( $post_types as $slug => $name ) {
|
1341 |
'filter_metabox_options',
|
1342 |
), 10, 3 );
|
1343 |
$post_types = $this->get_post_type_titles();
|
1344 |
+
$rempost = array( 'revision' => 1, 'nav_menu_item' => 1, 'custom_css' => 1, 'customize_changeset' => 1 );
|
1345 |
$post_types = array_diff_key( $post_types, $rempost );
|
1346 |
$this->default_options['types']['initial_options'] = $post_types;
|
1347 |
foreach ( $post_types as $slug => $name ) {
|
modules/aioseop_sitemap.php
CHANGED
@@ -3,6 +3,7 @@
|
|
3 |
* Sitemap class.
|
4 |
*
|
5 |
* @package All-in-One-SEO-Pack
|
|
|
6 |
*/
|
7 |
|
8 |
if ( ! class_exists( 'All_in_One_SEO_Pack_Sitemap' ) ) {
|
@@ -603,6 +604,9 @@ if ( ! class_exists( 'All_in_One_SEO_Pack_Sitemap' ) ) {
|
|
603 |
*
|
604 |
* Add in options for status display on settings page, sitemap rewriting on multisite.
|
605 |
*
|
|
|
|
|
|
|
606 |
* @param $options
|
607 |
*
|
608 |
* @return mixed
|
@@ -614,7 +618,7 @@ if ( ! class_exists( 'All_in_One_SEO_Pack_Sitemap' ) ) {
|
|
614 |
if ( isset( $options[ $this->prefix . 'max_posts' ] ) && ( ( $options[ $this->prefix . 'max_posts' ] <= 0 ) || ( $options[ $this->prefix . 'max_posts' ] >= 50000 ) ) ) {
|
615 |
$options[ $this->prefix . 'max_posts' ] = 50000;
|
616 |
}
|
617 |
-
$url
|
618 |
|
619 |
$options[ $this->prefix . 'link' ] = sprintf( __( 'Click here to %s.', 'all-in-one-seo-pack' ), '<a href="' . esc_url( $url ) . '" target="_blank">' . __( 'view your sitemap', 'all-in-one-seo-pack' ) . '</a>' );
|
620 |
$options[ $this->prefix . 'link' ] .= __( ' Your sitemap has been created', 'all-in-one-seo-pack' );
|
@@ -1276,13 +1280,18 @@ if ( ! class_exists( 'All_in_One_SEO_Pack_Sitemap' ) ) {
|
|
1276 |
/**
|
1277 |
* Build a url to the sitemap.
|
1278 |
*
|
|
|
|
|
|
|
1279 |
* @return string
|
1280 |
*/
|
1281 |
function get_sitemap_url() {
|
1282 |
-
|
|
|
1283 |
if ( $this->options["{$this->prefix}gzipped"] ) {
|
1284 |
-
$
|
1285 |
}
|
|
|
1286 |
|
1287 |
return $url;
|
1288 |
}
|
@@ -1524,6 +1533,9 @@ if ( ! class_exists( 'All_in_One_SEO_Pack_Sitemap' ) ) {
|
|
1524 |
/**
|
1525 |
* Build an index of sitemaps used.
|
1526 |
*
|
|
|
|
|
|
|
1527 |
* @return array
|
1528 |
*/
|
1529 |
function get_sitemap_index_filenames() {
|
@@ -1542,8 +1554,9 @@ if ( ! class_exists( 'All_in_One_SEO_Pack_Sitemap' ) ) {
|
|
1542 |
}
|
1543 |
$options["{$this->prefix}posttypes"] = array_diff( $options["{$this->prefix}posttypes"], array( 'all' ) );
|
1544 |
$options["{$this->prefix}taxonomies"] = array_diff( $options["{$this->prefix}taxonomies"], array( 'all' ) );
|
1545 |
-
|
1546 |
-
$files[]
|
|
|
1547 |
if ( ! empty( $options["{$this->prefix}posttypes"] ) ) {
|
1548 |
$prio = $this->get_default_priority( 'post' );
|
1549 |
$freq = $this->get_default_frequency( 'post' );
|
@@ -1563,21 +1576,21 @@ if ( ! class_exists( 'All_in_One_SEO_Pack_Sitemap' ) ) {
|
|
1563 |
$count = 1;
|
1564 |
for ( $post_count = 0; $post_count < $post_counts[ $sm ]; $post_count += $this->max_posts ) {
|
1565 |
$files[] = array(
|
1566 |
-
'loc' =>
|
1567 |
'priority' => $prio,
|
1568 |
'changefreq' => $freq,
|
1569 |
);
|
1570 |
}
|
1571 |
} else {
|
1572 |
$files[] = array(
|
1573 |
-
'loc' =>
|
1574 |
'priority' => $prio,
|
1575 |
'changefreq' => $freq,
|
1576 |
);
|
1577 |
}
|
1578 |
} else {
|
1579 |
$files[] = array(
|
1580 |
-
'loc' =>
|
1581 |
'priority' => $prio,
|
1582 |
'changefreq' => $freq,
|
1583 |
);
|
@@ -1586,14 +1599,14 @@ if ( ! class_exists( 'All_in_One_SEO_Pack_Sitemap' ) ) {
|
|
1586 |
}
|
1587 |
if ( $this->option_isset( 'archive' ) ) {
|
1588 |
$files[] = array(
|
1589 |
-
'loc' =>
|
1590 |
'priority' => $this->get_default_priority( 'archive' ),
|
1591 |
'changefreq' => $this->get_default_frequency( 'archive' ),
|
1592 |
);
|
1593 |
}
|
1594 |
if ( $this->option_isset( 'author' ) ) {
|
1595 |
$files[] = array(
|
1596 |
-
'loc' =>
|
1597 |
'priority' => $this->get_default_priority( 'author' ),
|
1598 |
'changefreq' => $this->get_default_frequency( 'author' ),
|
1599 |
);
|
@@ -1608,21 +1621,21 @@ if ( ! class_exists( 'All_in_One_SEO_Pack_Sitemap' ) ) {
|
|
1608 |
$count = 1;
|
1609 |
for ( $tc = 0; $tc < $term_count; $tc += $this->max_posts ) {
|
1610 |
$files[] = array(
|
1611 |
-
'loc' =>
|
1612 |
'priority' => $this->get_default_priority( 'taxonomies' ),
|
1613 |
'changefreq' => $this->get_default_frequency( 'taxonomies' ),
|
1614 |
);
|
1615 |
}
|
1616 |
} else {
|
1617 |
$files[] = array(
|
1618 |
-
'loc' =>
|
1619 |
'priority' => $this->get_default_priority( 'taxonomies' ),
|
1620 |
'changefreq' => $this->get_default_frequency( 'taxonomies' ),
|
1621 |
);
|
1622 |
}
|
1623 |
} else {
|
1624 |
$files[] = array(
|
1625 |
-
'loc' =>
|
1626 |
'priority' => $this->get_default_priority( 'taxonomies' ),
|
1627 |
'changefreq' => $this->get_default_frequency( 'taxonomies' ),
|
1628 |
);
|
@@ -1789,6 +1802,9 @@ if ( ! class_exists( 'All_in_One_SEO_Pack_Sitemap' ) ) {
|
|
1789 |
/**
|
1790 |
* Get simple sitemap.
|
1791 |
*
|
|
|
|
|
|
|
1792 |
* @return array
|
1793 |
*/
|
1794 |
function get_simple_sitemap() {
|
@@ -1803,7 +1819,7 @@ if ( ! class_exists( 'All_in_One_SEO_Pack_Sitemap' ) ) {
|
|
1803 |
$prio = $this->get_all_post_priority_data( $options["{$this->prefix}posttypes"] );
|
1804 |
|
1805 |
$home = array(
|
1806 |
-
'loc' =>
|
1807 |
'priority' => $this->get_default_priority( 'homepage' ),
|
1808 |
'changefreq' => $this->get_default_frequency( 'homepage' ),
|
1809 |
);
|
@@ -1892,10 +1908,11 @@ if ( ! class_exists( 'All_in_One_SEO_Pack_Sitemap' ) ) {
|
|
1892 |
* @see https://semperplugins.com/documentation/aioseop_sitemap_xsl_url/
|
1893 |
*
|
1894 |
* @since 2.3.6
|
|
|
1895 |
*/
|
1896 |
function get_sitemap_xsl() {
|
1897 |
|
1898 |
-
return esc_url( apply_filters( 'aioseop_sitemap_xsl_url',
|
1899 |
}
|
1900 |
|
1901 |
/**
|
@@ -2213,15 +2230,17 @@ if ( ! class_exists( 'All_in_One_SEO_Pack_Sitemap' ) ) {
|
|
2213 |
|
2214 |
/**
|
2215 |
* Gets additional pages.
|
2216 |
-
*
|
2217 |
* Return data for user entered additional pages.
|
2218 |
*
|
|
|
|
|
|
|
2219 |
* @return array|mixed|void
|
2220 |
*/
|
2221 |
function get_addl_pages_only() {
|
2222 |
$pages = array();
|
2223 |
if ( ! empty( $this->options[ $this->prefix . 'addl_pages' ] ) ) {
|
2224 |
-
$siteurl = parse_url(
|
2225 |
foreach ( $this->options[ $this->prefix . 'addl_pages' ] as $k => $v ) {
|
2226 |
$url = parse_url( $k );
|
2227 |
if ( empty( $url['scheme'] ) ) {
|
@@ -2266,12 +2285,15 @@ if ( ! class_exists( 'All_in_One_SEO_Pack_Sitemap' ) ) {
|
|
2266 |
/**
|
2267 |
* Return data for user entered additional pages and extra pages.
|
2268 |
*
|
|
|
|
|
|
|
2269 |
* @return array|mixed|void
|
2270 |
*/
|
2271 |
function get_addl_pages() {
|
2272 |
$home = array();
|
2273 |
$home = array(
|
2274 |
-
'loc' =>
|
2275 |
'priority' => $this->get_default_priority( 'homepage' ),
|
2276 |
'changefreq' => $this->get_default_frequency( 'homepage' ),
|
2277 |
);
|
3 |
* Sitemap class.
|
4 |
*
|
5 |
* @package All-in-One-SEO-Pack
|
6 |
+
* @version 2.3.13
|
7 |
*/
|
8 |
|
9 |
if ( ! class_exists( 'All_in_One_SEO_Pack_Sitemap' ) ) {
|
604 |
*
|
605 |
* Add in options for status display on settings page, sitemap rewriting on multisite.
|
606 |
*
|
607 |
+
* @since 2.3.6
|
608 |
+
* @since 2.3.12.3 Refactored to use aioseop_home_url() for compatibility purposes.
|
609 |
+
*
|
610 |
* @param $options
|
611 |
*
|
612 |
* @return mixed
|
618 |
if ( isset( $options[ $this->prefix . 'max_posts' ] ) && ( ( $options[ $this->prefix . 'max_posts' ] <= 0 ) || ( $options[ $this->prefix . 'max_posts' ] >= 50000 ) ) ) {
|
619 |
$options[ $this->prefix . 'max_posts' ] = 50000;
|
620 |
}
|
621 |
+
$url = aioseop_home_url( '/' . $options[ $this->prefix . 'filename' ] . '.xml' );
|
622 |
|
623 |
$options[ $this->prefix . 'link' ] = sprintf( __( 'Click here to %s.', 'all-in-one-seo-pack' ), '<a href="' . esc_url( $url ) . '" target="_blank">' . __( 'view your sitemap', 'all-in-one-seo-pack' ) . '</a>' );
|
624 |
$options[ $this->prefix . 'link' ] .= __( ' Your sitemap has been created', 'all-in-one-seo-pack' );
|
1280 |
/**
|
1281 |
* Build a url to the sitemap.
|
1282 |
*
|
1283 |
+
* @since 2.3.6
|
1284 |
+
* @since 2.3.12.3 Refactored to use aioseop_home_url() for compatibility purposes.
|
1285 |
+
*
|
1286 |
* @return string
|
1287 |
*/
|
1288 |
function get_sitemap_url() {
|
1289 |
+
|
1290 |
+
$gz = '';
|
1291 |
if ( $this->options["{$this->prefix}gzipped"] ) {
|
1292 |
+
$gz .= '.gz';
|
1293 |
}
|
1294 |
+
$url = aioseop_home_url( '/' . $this->options["{$this->prefix}filename"] . ".xml$gz" );
|
1295 |
|
1296 |
return $url;
|
1297 |
}
|
1533 |
/**
|
1534 |
* Build an index of sitemaps used.
|
1535 |
*
|
1536 |
+
* @since 2.3.6
|
1537 |
+
* @since 2.3.12.3 Refactored to use aioseop_home_url() for compatibility purposes.
|
1538 |
+
*
|
1539 |
* @return array
|
1540 |
*/
|
1541 |
function get_sitemap_index_filenames() {
|
1554 |
}
|
1555 |
$options["{$this->prefix}posttypes"] = array_diff( $options["{$this->prefix}posttypes"], array( 'all' ) );
|
1556 |
$options["{$this->prefix}taxonomies"] = array_diff( $options["{$this->prefix}taxonomies"], array( 'all' ) );
|
1557 |
+
|
1558 |
+
$files[] = array( 'loc' => aioseop_home_url( '/' . $prefix . '_addl' . $suffix ) );
|
1559 |
+
|
1560 |
if ( ! empty( $options["{$this->prefix}posttypes"] ) ) {
|
1561 |
$prio = $this->get_default_priority( 'post' );
|
1562 |
$freq = $this->get_default_frequency( 'post' );
|
1576 |
$count = 1;
|
1577 |
for ( $post_count = 0; $post_count < $post_counts[ $sm ]; $post_count += $this->max_posts ) {
|
1578 |
$files[] = array(
|
1579 |
+
'loc' => aioseop_home_url ( '/' . $prefix . '_' . $sm . '_' . ( $count ++ ) . $suffix ),
|
1580 |
'priority' => $prio,
|
1581 |
'changefreq' => $freq,
|
1582 |
);
|
1583 |
}
|
1584 |
} else {
|
1585 |
$files[] = array(
|
1586 |
+
'loc' => aioseop_home_url ( '/' . $prefix . '_' . $sm . $suffix ),
|
1587 |
'priority' => $prio,
|
1588 |
'changefreq' => $freq,
|
1589 |
);
|
1590 |
}
|
1591 |
} else {
|
1592 |
$files[] = array(
|
1593 |
+
'loc' => aioseop_home_url ( '/' . $prefix . '_' . $sm . $suffix ),
|
1594 |
'priority' => $prio,
|
1595 |
'changefreq' => $freq,
|
1596 |
);
|
1599 |
}
|
1600 |
if ( $this->option_isset( 'archive' ) ) {
|
1601 |
$files[] = array(
|
1602 |
+
'loc' => aioseop_home_url ( '/' . $prefix . '_archive' . $suffix ),
|
1603 |
'priority' => $this->get_default_priority( 'archive' ),
|
1604 |
'changefreq' => $this->get_default_frequency( 'archive' ),
|
1605 |
);
|
1606 |
}
|
1607 |
if ( $this->option_isset( 'author' ) ) {
|
1608 |
$files[] = array(
|
1609 |
+
'loc' => aioseop_home_url ( '/' . $prefix . '_author' . $suffix ),
|
1610 |
'priority' => $this->get_default_priority( 'author' ),
|
1611 |
'changefreq' => $this->get_default_frequency( 'author' ),
|
1612 |
);
|
1621 |
$count = 1;
|
1622 |
for ( $tc = 0; $tc < $term_count; $tc += $this->max_posts ) {
|
1623 |
$files[] = array(
|
1624 |
+
'loc' => aioseop_home_url ( '/' . $prefix . '_' . $sm . '_' . ( $count ++ ) . $suffix ),
|
1625 |
'priority' => $this->get_default_priority( 'taxonomies' ),
|
1626 |
'changefreq' => $this->get_default_frequency( 'taxonomies' ),
|
1627 |
);
|
1628 |
}
|
1629 |
} else {
|
1630 |
$files[] = array(
|
1631 |
+
'loc' => aioseop_home_url ( '/' . $prefix . '_' . $sm . $suffix ),
|
1632 |
'priority' => $this->get_default_priority( 'taxonomies' ),
|
1633 |
'changefreq' => $this->get_default_frequency( 'taxonomies' ),
|
1634 |
);
|
1635 |
}
|
1636 |
} else {
|
1637 |
$files[] = array(
|
1638 |
+
'loc' => aioseop_home_url ( '/' . $prefix . '_' . $sm . $suffix ),
|
1639 |
'priority' => $this->get_default_priority( 'taxonomies' ),
|
1640 |
'changefreq' => $this->get_default_frequency( 'taxonomies' ),
|
1641 |
);
|
1802 |
/**
|
1803 |
* Get simple sitemap.
|
1804 |
*
|
1805 |
+
* @since 2.3.6
|
1806 |
+
* @since 2.3.12.3 Refactored to use aioseop_home_url() for compatibility purposes.
|
1807 |
+
*
|
1808 |
* @return array
|
1809 |
*/
|
1810 |
function get_simple_sitemap() {
|
1819 |
$prio = $this->get_all_post_priority_data( $options["{$this->prefix}posttypes"] );
|
1820 |
|
1821 |
$home = array(
|
1822 |
+
'loc' => aioseop_home_url(),
|
1823 |
'priority' => $this->get_default_priority( 'homepage' ),
|
1824 |
'changefreq' => $this->get_default_frequency( 'homepage' ),
|
1825 |
);
|
1908 |
* @see https://semperplugins.com/documentation/aioseop_sitemap_xsl_url/
|
1909 |
*
|
1910 |
* @since 2.3.6
|
1911 |
+
* @since 2.3.12.3 Refactored to use aioseop_home_url() for compatibility purposes.
|
1912 |
*/
|
1913 |
function get_sitemap_xsl() {
|
1914 |
|
1915 |
+
return esc_url( apply_filters( 'aioseop_sitemap_xsl_url', aioseop_home_url( '/sitemap.xsl' ) ) );
|
1916 |
}
|
1917 |
|
1918 |
/**
|
2230 |
|
2231 |
/**
|
2232 |
* Gets additional pages.
|
|
|
2233 |
* Return data for user entered additional pages.
|
2234 |
*
|
2235 |
+
* @since 2.3.6
|
2236 |
+
* @since 2.3.12.3 Refactored to use aioseop_home_url() for compatibility purposes.
|
2237 |
+
*
|
2238 |
* @return array|mixed|void
|
2239 |
*/
|
2240 |
function get_addl_pages_only() {
|
2241 |
$pages = array();
|
2242 |
if ( ! empty( $this->options[ $this->prefix . 'addl_pages' ] ) ) {
|
2243 |
+
$siteurl = parse_url( aioseop_home_url() );
|
2244 |
foreach ( $this->options[ $this->prefix . 'addl_pages' ] as $k => $v ) {
|
2245 |
$url = parse_url( $k );
|
2246 |
if ( empty( $url['scheme'] ) ) {
|
2285 |
/**
|
2286 |
* Return data for user entered additional pages and extra pages.
|
2287 |
*
|
2288 |
+
* @since 2.3.6
|
2289 |
+
* @since 2.3.12.3 Refactored to use aioseop_home_url() for compatibility purposes.
|
2290 |
+
*
|
2291 |
* @return array|mixed|void
|
2292 |
*/
|
2293 |
function get_addl_pages() {
|
2294 |
$home = array();
|
2295 |
$home = array(
|
2296 |
+
'loc' => aioseop_home_url(),
|
2297 |
'priority' => $this->get_default_priority( 'homepage' ),
|
2298 |
'changefreq' => $this->get_default_frequency( 'homepage' ),
|
2299 |
);
|
readme.txt
CHANGED
@@ -4,7 +4,7 @@ Donate link: https://www.paypal.com/cgi-bin/webscr?cmd=_donations&business=mrtor
|
|
4 |
Tags: seo, all in one seo, google, twitter, page, image seo, social, search engine optimization, sitemap, WordPress SEO, meta, meta description, xml sitemap, google sitemap, sitemaps, robots meta, yahoo, bing, news sitemaps, multisite, canonical, nofollow, noindex, keywords, description, webmaster tools, google webmaster tools, google analytics
|
5 |
Requires at least: 4.0
|
6 |
Tested up to: 4.7
|
7 |
-
Stable tag: 2.3.12.
|
8 |
License: GPLv2 or later
|
9 |
License URI: http://www.gnu.org/licenses/gpl-2.0.html
|
10 |
|
4 |
Tags: seo, all in one seo, google, twitter, page, image seo, social, search engine optimization, sitemap, WordPress SEO, meta, meta description, xml sitemap, google sitemap, sitemaps, robots meta, yahoo, bing, news sitemaps, multisite, canonical, nofollow, noindex, keywords, description, webmaster tools, google webmaster tools, google analytics
|
5 |
Requires at least: 4.0
|
6 |
Tested up to: 4.7
|
7 |
+
Stable tag: 2.3.12.3
|
8 |
License: GPLv2 or later
|
9 |
License URI: http://www.gnu.org/licenses/gpl-2.0.html
|
10 |
|