WP Meta SEO - Version 4.2.5

Version Description

  • Add : Possibility to automatically add articles to sitemaps
    • Fix : Select all posts in the sitemap
Download this release

Release Info

Developer JoomUnited
Plugin Icon 128x128 WP Meta SEO
Version 4.2.5
Comparing to
See all releases

Code changes from version 4.2.4 to 4.2.5

assets/js/metaseo_sitemap.js CHANGED
@@ -158,7 +158,7 @@
158
var wpms_save_create_sitemaps = function (link_sitemap) {
159
// show spinner
160
$('.spinner_save_sitemaps').css({'visibility': 'visible'}).show();
161
- var posts = {}, pages = {}, menus = {}, customUrl = {} ,taxonomies = [], columns_menu = {}, wpms_category_link = [], check_all_menu_items = [];
162
var custom_post_type = {};
163
// get custom post type params to save to sitemap
164
$.each(wpmseositemap.post_type,function(i,post_type){
@@ -220,6 +220,12 @@
220
}
221
});
222
223
$('.sitemap_addlink_categories').each(function (i, v) {
224
if ($(v).is(':checked')) {
225
wpms_category_link.push($(v).val());
@@ -256,7 +262,7 @@
256
var menu_id = $(v).data('menu_id');
257
columns_menu[menu_id] = $(v).val()
258
});
259
-
260
var datas = {
261
action: 'wpms_save_sitemap_settings',
262
wpms_sitemap_posts: JSON.stringify(posts),
@@ -272,6 +278,7 @@
272
wpms_sitemap_root: wpms_sitemap_root,
273
wpms_sitemap_add: wpms_sitemap_add,
274
wpms_category_link: wpms_category_link,
275
check_all_menu_items: check_all_menu_items,
276
wpms_sitemap_taxonomies: taxonomies,
277
wpms_public_name_posts: $('.public_name_posts').val(),
@@ -374,15 +381,60 @@
374
wpms_save_create_sitemaps();
375
});
376
377
// check all
378
$('.sitemap_check_all').on('click', function () {
379
var type = $(this).data('type');
380
if ($(this).is(':checked')) {
381
$('.cb_sitemaps_' + type).prop('checked', true);
382
$('.check_all_menu_items').prop('checked', true);
383
} else {
384
$('.cb_sitemaps_' + type).prop('checked', false);
385
$('.check_all_menu_items').prop('checked', false);
386
}
387
// Create sitemap automatic
388
wpms_save_create_sitemaps();
158
var wpms_save_create_sitemaps = function (link_sitemap) {
159
// show spinner
160
$('.spinner_save_sitemaps').css({'visibility': 'visible'}).show();
161
+ var posts = {}, pages = {}, menus = {}, customUrl = {} ,taxonomies = [], columns_menu = {}, wpms_category_link = [], check_all_menu_items = [], wpms_category_select_all = [];
162
var custom_post_type = {};
163
// get custom post type params to save to sitemap
164
$.each(wpmseositemap.post_type,function(i,post_type){
220
}
221
});
222
223
+ $(".xm_category_select_all").each(function (i, v) {
224
+ if ($(v).is(':checked')) {
225
+ wpms_category_select_all.push($(v).val());
226
+ }
227
+ });
228
+
229
$('.sitemap_addlink_categories').each(function (i, v) {
230
if ($(v).is(':checked')) {
231
wpms_category_link.push($(v).val());
262
var menu_id = $(v).data('menu_id');
263
columns_menu[menu_id] = $(v).val()
264
});
265
+
266
var datas = {
267
action: 'wpms_save_sitemap_settings',
268
wpms_sitemap_posts: JSON.stringify(posts),
278
wpms_sitemap_root: wpms_sitemap_root,
279
wpms_sitemap_add: wpms_sitemap_add,
280
wpms_category_link: wpms_category_link,
281
+ wpms_category_select_all: wpms_category_select_all,
282
check_all_menu_items: check_all_menu_items,
283
wpms_sitemap_taxonomies: taxonomies,
284
wpms_public_name_posts: $('.public_name_posts').val(),
381
wpms_save_create_sitemaps();
382
});
383
384
+ $('.xml_cb_customposttype_all').on('click', function () {
385
+ var posttype = $(this).data('posttype');
386
+
387
+ if ($(this).is(':checked')) {
388
+ $('.cb_sitemaps_' + posttype).prop('checked', true);
389
+ } else {
390
+ $('.cb_sitemaps_' + posttype).prop('checked', false);
391
+ }
392
+ });
393
+
394
+
395
+ $('.xm_category_select_all').on('click', function () {
396
+ var categoryID = $(this).val();
397
+ var category = $(this).data('category');
398
+
399
+ if ($(this).is(':checked')) {
400
+ $('.' + category).prop('checked', true);
401
+ is_all = 1;
402
+ } else {
403
+ $('.' + category).prop('checked', false);
404
+ is_all = 0;
405
+ }
406
+
407
+ var datas = {
408
+ action: 'wpms_sitemap_check_all_category',
409
+ wpms_sitemap_category_id: categoryID,
410
+ wpms_sitemap_cateogry_is_all: is_all,
411
+ wpms_nonce: wpms_localize.wpms_nonce
412
+ };
413
+
414
+ $.ajax({
415
+ url: ajaxurl,
416
+ method: 'POST',
417
+ dataType: 'json',
418
+ data: datas,
419
+ success: function () {
420
+ wpms_regen_sitemaps();
421
+ }
422
+ });
423
+ });
424
+
425
// check all
426
$('.sitemap_check_all').on('click', function () {
427
var type = $(this).data('type');
428
if ($(this).is(':checked')) {
429
$('.cb_sitemaps_' + type).prop('checked', true);
430
$('.check_all_menu_items').prop('checked', true);
431
+ $('.xm_category_select_all_'+ type).prop('checked', true);
432
+ $('.xml_cb_customposttype_all_' + type).prop('checked', true);
433
} else {
434
$('.cb_sitemaps_' + type).prop('checked', false);
435
$('.check_all_menu_items').prop('checked', false);
436
+ $('.xm_category_select_all_'+ type).prop('checked', false);
437
+ $('.xml_cb_customposttype_all_' + type).prop('checked', false);
438
}
439
// Create sitemap automatic
440
wpms_save_create_sitemaps();
inc/class.metaseo-sitemap.php CHANGED
@@ -61,6 +61,54 @@ class MetaSeoSitemap
61
add_action('wp_ajax_wpms_list_posts_category', array($this, 'listPostsCategory'));
62
add_action('wp_update_nav_menu', array($this, 'wpUpdateNavMenu'), 10, 1);
63
add_action('wp_update_nav_menu_item', array($this, 'wpAddNavMenuItem'), 10, 3);
64
}
65
66
/**
@@ -162,7 +210,8 @@ class MetaSeoSitemap
162
'wpms_public_name_posts' => '',
163
'wpms_sitemap_posts' => array(),
164
'wpms_sitemap_pages' => array(),
165
- 'wpms_sitemap_include_lang' => array()
166
);
167
168
if (is_plugin_active(WPMSEO_ADDON_FILENAME)) {
@@ -1118,7 +1167,7 @@ class MetaSeoSitemap
1118
$lastmod = $gglstmp_url->appendChild($xml->createElement('lastmod'));
1119
1120
$now = $wpdb->get_var(
1121
- $wpdb->prepare('SELECT post_modified FROM ' . $wpdb->posts . ', ' . $wpdb->term_relationships . ' WHERE post_status = %s AND term_taxonomy_id = %d AND $wpdb->posts.ID = $wpdb->term_relationships.object_id ORDER BY post_modified DESC', array(
1122
'publish',
1123
$term_value->term_taxonomy_id
1124
))
@@ -2429,6 +2478,9 @@ ORDER BY p.post_date DESC', array($post_type)));
2429
*/
2430
public function regenerateSitemaps($type = 'ajax')
2431
{
2432
$wpms_url_robot = get_home_path() . 'robots.txt';
2433
$wpms_url_home = site_url('/');
2434
$this->getSitemapSettings();
@@ -2668,7 +2720,8 @@ ORDER BY p.post_date DESC', array($_POST['category_id'])));
2668
'wpms_display_order_menus' => 1,
2669
'wpms_display_order_posts' => 2,
2670
'wpms_display_order_pages' => 3,
2671
- 'wpms_display_order_urls' => 4
2672
);
2673
2674
if (is_plugin_active(WPMSEO_ADDON_FILENAME)) {
@@ -2752,6 +2805,7 @@ ORDER BY p.post_date DESC', array($_POST['category_id'])));
2752
2753
update_option('_metaseo_settings_sitemap', $settings_sitemap);
2754
2755
/**
2756
* Save sitemap settings
2757
*
@@ -2760,4 +2814,130 @@ ORDER BY p.post_date DESC', array($_POST['category_id'])));
2760
do_action('wpms_save_sitemap_settings', $settings_sitemap);
2761
wp_send_json(true);
2762
}
2763
}
61
add_action('wp_ajax_wpms_list_posts_category', array($this, 'listPostsCategory'));
62
add_action('wp_update_nav_menu', array($this, 'wpUpdateNavMenu'), 10, 1);
63
add_action('wp_update_nav_menu_item', array($this, 'wpAddNavMenuItem'), 10, 3);
64
+ add_action('publish_post', array($this, 'wpAutoAddPostInSitemap'), 10, 1);
65
+ add_action('wp_ajax_wpms_sitemap_check_all_category', array($this, 'checkAllCategoryInSitemap'));
66
+ }
67
+
68
+ /**
69
+ * Fires after a post item has been updated.
70
+ *
71
+ * @param integer $postId Post ID
72
+ *
73
+ * @return void
74
+ */
75
+ public function wpAutoAddPostInSitemap($postId)
76
+ {
77
+ if (!(defined('REST_REQUEST') && REST_REQUEST)) {
78
+ $settings = get_option('_metaseo_settings_sitemap');
79
+ $category = get_the_category($postId);
80
+ $is_create_sitemap = false;
81
+ if (!empty($category)) {
82
+ foreach ($category as $cat) {
83
+ if (isset($settings['wpms_category_select_all']) && isset($settings['wpms_category_link'])
84
+ && in_array($cat->cat_ID, $settings['wpms_category_select_all'])
85
+ && in_array($cat->cat_ID, $settings['wpms_category_link'])
86
+ ) {
87
+ $is_create_sitemap = true;
88
+ }
89
+ }
90
+ }
91
+
92
+ if (!empty($settings['wpms_sitemap_posts'])) {
93
+ foreach ($settings['wpms_sitemap_posts'] as $post) {
94
+ if ((int)$post['post_id'] === $postId) {
95
+ // Exist in sitemap
96
+ $is_create_sitemap = false;
97
+ }
98
+ }
99
+ }
100
+
101
+ if ($is_create_sitemap) {
102
+ $settings['wpms_sitemap_posts'][$postId] = array(
103
+ 'post_id' => $postId,
104
+ 'priority' => '1',
105
+ 'frequency' => 'monthly'
106
+ );
107
+
108
+ update_option('_metaseo_settings_sitemap', $settings);
109
+ $this->regenerateSitemaps('submit');
110
+ }
111
+ }
112
}
113
114
/**
210
'wpms_public_name_posts' => '',
211
'wpms_sitemap_posts' => array(),
212
'wpms_sitemap_pages' => array(),
213
+ 'wpms_sitemap_include_lang' => array(),
214
+ 'wpms_category_select_all' => array()
215
);
216
217
if (is_plugin_active(WPMSEO_ADDON_FILENAME)) {
1167
$lastmod = $gglstmp_url->appendChild($xml->createElement('lastmod'));
1168
1169
$now = $wpdb->get_var(
1170
+ $wpdb->prepare('SELECT post_modified FROM ' . $wpdb->posts . ' AS posttable, ' . $wpdb->term_relationships . ' AS termrelationship WHERE post_status = %s AND term_taxonomy_id = %d AND posttable.ID = termrelationship.object_id ORDER BY post_modified DESC', array(
1171
'publish',
1172
$term_value->term_taxonomy_id
1173
))
2478
*/
2479
public function regenerateSitemaps($type = 'ajax')
2480
{
2481
+ if (! function_exists('get_home_path')) {
2482
+ include_once ABSPATH . '/wp-admin/includes/file.php';
2483
+ }
2484
$wpms_url_robot = get_home_path() . 'robots.txt';
2485
$wpms_url_home = site_url('/');
2486
$this->getSitemapSettings();
2720
'wpms_display_order_menus' => 1,
2721
'wpms_display_order_posts' => 2,
2722
'wpms_display_order_pages' => 3,
2723
+ 'wpms_display_order_urls' => 4,
2724
+ 'wpms_category_select_all' => array()
2725
);
2726
2727
if (is_plugin_active(WPMSEO_ADDON_FILENAME)) {
2805
2806
update_option('_metaseo_settings_sitemap', $settings_sitemap);
2807
2808
+ $this->updatePostInSitemapWithSelectAll();
2809
/**
2810
* Save sitemap settings
2811
*
2814
do_action('wpms_save_sitemap_settings', $settings_sitemap);
2815
wp_send_json(true);
2816
}
2817
+
2818
+ /**
2819
+ * Update all post into sitemap with select all
2820
+ *
2821
+ * @return void
2822
+ */
2823
+ public function updatePostInSitemapWithSelectAll()
2824
+ {
2825
+ $settings = get_option('_metaseo_settings_sitemap');
2826
+ $post_in_category = array();
2827
+ $post_in_sitemap = array();
2828
+
2829
+ if (!empty($settings['wpms_category_select_all'])) {
2830
+ foreach ($settings['wpms_category_select_all'] as $cat_id) {
2831
+ $args = array(
2832
+ 'numberposts' => -1,
2833
+ 'category' => $cat_id,
2834
+ 'post_type' => 'post'
2835
+ );
2836
+
2837
+ $posts = get_posts($args);
2838
+ if (!empty($posts)) {
2839
+ foreach ($posts as $post) {
2840
+ $post_in_category[] = $post->ID;
2841
+ }
2842
+ }
2843
+ }
2844
+ }
2845
+
2846
+ if (!empty($settings['wpms_sitemap_posts'])) {
2847
+ foreach ($settings['wpms_sitemap_posts'] as $value) {
2848
+ $post_in_sitemap[] = (int)$value['post_id'];
2849
+ }
2850
+ }
2851
+
2852
+
2853
+ if (!empty($post_in_category)) {
2854
+ foreach ($post_in_category as $post) {
2855
+ if (in_array($post, $post_in_sitemap)) {
2856
+ continue;
2857
+ }
2858
+
2859
+ $settings['wpms_sitemap_posts'][$post] = array(
2860
+ 'post_id' => $post,
2861
+ 'priority' => '1',
2862
+ 'frequency' => 'monthly'
2863
+ );
2864
+ }
2865
+ }
2866
+
2867
+ update_option('_metaseo_settings_sitemap', $settings);
2868
+ }
2869
+
2870
+ /**
2871
+ * Ajax generate sitemap
2872
+ *
2873
+ * @return void
2874
+ */
2875
+ public function checkAllCategoryInSitemap()
2876
+ {
2877
+ if (empty($_POST['wpms_nonce'])
2878
+ || !wp_verify_nonce($_POST['wpms_nonce'], 'wpms_nonce')) {
2879
+ die();
2880
+ }
2881
+ $post_in_category = array();
2882
+ $post_in_sitemap = array();
2883
+ $settings = get_option('_metaseo_settings_sitemap');
2884
+ $is_all = $_POST['wpms_sitemap_cateogry_is_all'];
2885
+ $cat_id = $_POST['wpms_sitemap_category_id'];
2886
+
2887
+ if (isset($_POST['wpms_sitemap_category_id'])) {
2888
+ $args = array(
2889
+ 'numberposts' => -1,
2890
+ 'category' => $cat_id,
2891
+ 'post_type' => 'post'
2892
+ );
2893
+
2894
+ $posts = get_posts($args);
2895
+ if (!empty($posts)) {
2896
+ foreach ($posts as $post) {
2897
+ $post_in_category[] = $post->ID;
2898
+ }
2899
+ }
2900
+ }
2901
+
2902
+ if (!empty($settings['wpms_sitemap_posts'])) {
2903
+ foreach ($settings['wpms_sitemap_posts'] as $value) {
2904
+ $post_in_sitemap[] = (int)$value['post_id'];
2905
+ }
2906
+ }
2907
+
2908
+ if ($is_all) {
2909
+ if ($post_in_category) {
2910
+ foreach ($post_in_category as $post) {
2911
+ if (in_array($post, $post_in_sitemap)) {
2912
+ continue;
2913
+ }
2914
+
2915
+ $settings['wpms_sitemap_posts'][$post] = array(
2916
+ 'post_id' => $post,
2917
+ 'priority' => '1',
2918
+ 'frequency' => 'monthly'
2919
+ );
2920
+ }
2921
+ }
2922
+
2923
+ array_push($settings['wpms_category_select_all'], $cat_id);
2924
+ } else {
2925
+ if (!empty($post_in_sitemap)) {
2926
+ foreach ($post_in_sitemap as $v) {
2927
+ if (in_array($v, $post_in_category)) {
2928
+ unset($settings['wpms_sitemap_posts'][$v]);
2929
+ }
2930
+ }
2931
+ }
2932
+
2933
+ foreach ($settings['wpms_category_select_all'] as $k => $val) {
2934
+ if ((int)$val === (int)$cat_id) {
2935
+ unset($settings['wpms_category_select_all'][$k]);
2936
+ }
2937
+ }
2938
+ }
2939
+ $settings['wpms_category_select_all'] = array_unique($settings['wpms_category_select_all']);
2940
+ update_option('_metaseo_settings_sitemap', $settings);
2941
+ $this->regenerateSitemaps();
2942
+ }
2943
}
inc/class.wp-metaseo.php CHANGED
@@ -46,7 +46,7 @@ class WpMetaSeo
46
*
47
* @return void
48
*/
49
- public static function pluginActivation($wp = '4.0', $php = '5.3.0')
50
{
51
global $wp_version;
52
46
*
47
* @return void
48
*/
49
+ public static function pluginActivation($wp = '4.0', $php = '5.6.0')
50
{
51
global $wp_version;
52
inc/install-wizard/content/viewEvironment.php CHANGED
@@ -24,7 +24,7 @@ defined('ABSPATH') || die('No direct script access allowed!');
24
</label>
25
26
<div class="right-checkbox">
27
- <?php if (version_compare(PHP_VERSION, '5.3', '<')) : ?>
28
<img src="<?php echo esc_url(WPMETASEO_PLUGIN_URL . '/assets/images/icon-information/icon-information.png') ?>"
29
srcset="<?php echo esc_url(WPMETASEO_PLUGIN_URL . '/assets/images/icon-information/icon-information@2x.png') ?> 2x, <?php echo esc_url(WPMETASEO_PLUGIN_URL . '/assets/images/icon-information/icon-information@3x.png') ?> 3x"
30
class="img_warning">
@@ -36,7 +36,7 @@ defined('ABSPATH') || die('No direct script access allowed!');
36
</div>
37
</div>
38
39
- <?php if (version_compare(PHP_VERSION, '5.3', '<')) : ?>
40
<p class="description text_left">
41
<?php esc_html_e('Your PHP version is ', 'wp-meta-seo'); ?>
42
<?php echo esc_html(PHP_VERSION) ?>
24
</label>
25
26
<div class="right-checkbox">
27
+ <?php if (version_compare(PHP_VERSION, '5.6', '<')) : ?>
28
<img src="<?php echo esc_url(WPMETASEO_PLUGIN_URL . '/assets/images/icon-information/icon-information.png') ?>"
29
srcset="<?php echo esc_url(WPMETASEO_PLUGIN_URL . '/assets/images/icon-information/icon-information@2x.png') ?> 2x, <?php echo esc_url(WPMETASEO_PLUGIN_URL . '/assets/images/icon-information/icon-information@3x.png') ?> 3x"
30
class="img_warning">
36
</div>
37
</div>
38
39
+ <?php if (version_compare(PHP_VERSION, '5.6', '<')) : ?>
40
<p class="description text_left">
41
<?php esc_html_e('Your PHP version is ', 'wp-meta-seo'); ?>
42
<?php echo esc_html(PHP_VERSION) ?>
inc/pages/google-analytics/google-analytics.php CHANGED
@@ -6,7 +6,7 @@
6
<h2 class="wpms_uppercase"><?php esc_html_e('Google Analytics tracking & report', 'wp-meta-seo') ?></h2>
7
<p class="ju-description"><?php esc_html_e('Enable Google Analytics tracking and reports using a Google Analytics direct connection. Require free Google Cloud credentials', 'wp-meta-seo') ?></p>
8
<p class="wpms-ga-link-document">
9
- <a class="ju-link-classic" href="<?php echo esc_url('https://www.joomunited.com/documentation/wp-meta-seo-documentation#toc-7-1-activate-analytics-tracking') ?>"
10
target="_blank"><?php esc_html_e('DOCUMENTATION', 'wp-meta-seo') ?></a>
11
<a class="ju-link-classic" href="<?php echo esc_url('https://console.cloud.google.com/apis/dashboard') ?>" style="margin-left: 15px"
12
target="_blank"><?php esc_html_e('GET GOOGLE CREDENTIALS >>', 'wp-meta-seo') ?></a>
6
<h2 class="wpms_uppercase"><?php esc_html_e('Google Analytics tracking & report', 'wp-meta-seo') ?></h2>
7
<p class="ju-description"><?php esc_html_e('Enable Google Analytics tracking and reports using a Google Analytics direct connection. Require free Google Cloud credentials', 'wp-meta-seo') ?></p>
8
<p class="wpms-ga-link-document">
9
+ <a class="ju-link-classic" href="<?php echo esc_url('https://www.joomunited.com/wordpress-documentation/wp-meta-seo/343-wp-meta-seo-google-analytics-integration') ?>"
10
target="_blank"><?php esc_html_e('DOCUMENTATION', 'wp-meta-seo') ?></a>
11
<a class="ju-link-classic" href="<?php echo esc_url('https://console.cloud.google.com/apis/dashboard') ?>" style="margin-left: 15px"
12
target="_blank"><?php esc_html_e('GET GOOGLE CREDENTIALS >>', 'wp-meta-seo') ?></a>
inc/pages/sitemaps/metaseo-google-sitemap.php CHANGED
@@ -90,12 +90,6 @@ defined('ABSPATH') || die('No direct script access allowed!');
90
echo '<div class="content-box div_wpms_save_sitemaps">
91
<button type="button" class="ju-button orange-button waves-effect waves-light wpms_save_create_sitemaps">' . esc_html__('Regenerate and save sitemaps', 'wp-meta-seo') . '</button>
92
<span class="spinner spinner_save_sitemaps"></span><label class="msg-success">' . esc_html__('Sitemap saved and regenerated', 'wp-meta-seo') . '</label></div>';
93
- if (is_plugin_active(WPMSEO_ADDON_FILENAME)) {
94
- echo '<p class="content-box description">
95
- ' . esc_html__('Sitemap automatic submission to Google Search Console on save, ', 'wp-meta-seo') . '
96
- <a href="' . esc_url(admin_url('admin.php?page=metaseo_console&tab=settings')) . '" style="color: #ff8726">
97
- ' . esc_html__('requires authentication', 'wp-meta-seo') . '</a></p>';
98
- }
99
?>
100
</form>
101
</div>
90
echo '<div class="content-box div_wpms_save_sitemaps">
91
<button type="button" class="ju-button orange-button waves-effect waves-light wpms_save_create_sitemaps">' . esc_html__('Regenerate and save sitemaps', 'wp-meta-seo') . '</button>
92
<span class="spinner spinner_save_sitemaps"></span><label class="msg-success">' . esc_html__('Sitemap saved and regenerated', 'wp-meta-seo') . '</label></div>';
93
?>
94
</form>
95
</div>
inc/pages/sitemaps/metaseo-source_posts.php CHANGED
@@ -97,6 +97,12 @@ defined('ABSPATH') || die('No direct script access allowed!');
97
} else {
98
$checked = '';
99
}
100
?>
101
<div class="wpms_row_full">
102
<div class="ju-settings-option wpms_row">
@@ -124,7 +130,8 @@ defined('ABSPATH') || die('No direct script access allowed!');
124
<div class="ju-switch-button">
125
<label class="switch">
126
<input data-category="<?php echo esc_attr($value->taxo . $value->slug) ?>"
127
- class="xm_cb_all" id="<?php echo esc_attr($value->taxo . $value->slug) ?>"
128
type="checkbox">
129
<span class="slider round"></span>
130
</label>
97
} else {
98
$checked = '';
99
}
100
+
101
+ if (in_array($value->cat_ID, $sitemap->settings_sitemap['wpms_category_select_all'])) {
102
+ $selectall_checked = 'checked';
103
+ } else {
104
+ $selectall_checked = '';
105
+ }
106
?>
107
<div class="wpms_row_full">
108
<div class="ju-settings-option wpms_row">
130
<div class="ju-switch-button">
131
<label class="switch">
132
<input data-category="<?php echo esc_attr($value->taxo . $value->slug) ?>"
133
+ class="xm_category_select_all xm_category_select_all_posts" id="<?php echo esc_attr($value->taxo . $value->slug) ?>"
134
+ value="<?php echo esc_attr($value->cat_ID) ?>" <?php echo esc_html($selectall_checked) ?>
135
type="checkbox">
136
<span class="slider round"></span>
137
</label>
languages/wp-meta-seo-en_US.mo CHANGED
Binary file
readme.txt CHANGED
@@ -2,9 +2,9 @@
2
Contributors: JoomUnited
3
Tags: google, webmaster tools, keywords, meta, meta description, meta keywords, meta title, robots meta, search engine optimization, seo, wordpress seo, yahoo, image optimization, image resize, custom post seo, redirect, redirection, 301, broken link
4
Requires at least: 4.7
5
- Tested up to: 5.4.0
6
- Stable tag: 4.2.4
7
- Requires PHP: 5.3
8
License: GPLv2 or later
9
License URI: http://www.gnu.org/licenses/gpl-2.0.html
10
@@ -49,7 +49,7 @@ WP Meta SEO gives you the control over all your SEO optimization. Bulk SEO conte
49
50
## Meta information bulk edition and image SEO =
51
52
- Editing meta information on an existing website can be veeeery long, open each post, edit, close it, open again and almost nobody was doing it. Especially if you need to edit content + image meta.
53
WP Meta SEO is going to list all posts, pages, custom post types and all images. Type your meta content and fix image size and everything is AJAX saved.
54
Plus, a bulk copy feature is available to save tons of time in your SEO optimization process:
55
@@ -169,7 +169,7 @@ The redirect manager will help you to fix all types of 404 errors you can encoun
169
170
A HTML support document is provided with WP Meta SEO on JoomUnited website
171
Feel free to ask SEO questions on our forum or here in the support section
172
- **Documentation here:** <a href="https://www.joomunited.com/documentation/wp-meta-seo-documentation" rel="friend">https://www.joomunited.com/documentation/wp-meta-seo-documentation</a>
173
174
== Installation ==
175
@@ -259,6 +259,10 @@ Yes WP Meta SEO is compatible with Gutenberg editor since 3.7 version.
259
260
== Changelog ==
261
262
= 4.2.4 =
263
* Add : Possibility to remove category prefix
264
* Fix : The loader image to display incorrectly in the metabox
2
Contributors: JoomUnited
3
Tags: google, webmaster tools, keywords, meta, meta description, meta keywords, meta title, robots meta, search engine optimization, seo, wordpress seo, yahoo, image optimization, image resize, custom post seo, redirect, redirection, 301, broken link
4
Requires at least: 4.7
5
+ Tested up to: 5.4.1
6
+ Stable tag: 4.2.5
7
+ Requires PHP: 5.6
8
License: GPLv2 or later
9
License URI: http://www.gnu.org/licenses/gpl-2.0.html
10
49
50
## Meta information bulk edition and image SEO =
51
52
+ Editing meta information on an existing website can be very long, open each post, edit, close it, open again and almost nobody was doing it. Especially if you need to edit content + image meta.
53
WP Meta SEO is going to list all posts, pages, custom post types and all images. Type your meta content and fix image size and everything is AJAX saved.
54
Plus, a bulk copy feature is available to save tons of time in your SEO optimization process:
55
169
170
A HTML support document is provided with WP Meta SEO on JoomUnited website
171
Feel free to ask SEO questions on our forum or here in the support section
172
+ **Documentation here:** <a href="https://www.joomunited.com/support/wordpress-plugins-documentation#wp-meta-seo" rel="friend">https://www.joomunited.com/support/wordpress-plugins-documentation#wp-meta-seo</a>
173
174
== Installation ==
175
259
260
== Changelog ==
261
262
+ = 4.2.5 =
263
+ * Add : Possibility to automatically add articles to sitemaps
264
+ * Fix : Select all posts in the sitemap
265
+
266
= 4.2.4 =
267
* Add : Possibility to remove category prefix
268
* Fix : The loader image to display incorrectly in the metabox
wp-meta-seo.php CHANGED
@@ -4,7 +4,7 @@
4
* Plugin Name: WP Meta SEO
5
* Plugin URI: http://www.joomunited.com/wordpress-products/wp-meta-seo
6
* Description: WP Meta SEO is a plugin for WordPress to fill meta for content, images and main SEO info in a single view.
7
- * Version: 4.2.4
8
* Text Domain: wp-meta-seo
9
* Domain Path: /languages
10
* Author: JoomUnited
@@ -17,7 +17,7 @@ if (!function_exists('add_action')) {
17
exit;
18
}
19
20
- if (version_compare(PHP_VERSION, '5.3', '<')) {
21
if (!function_exists('wpmsDisablePlugin')) {
22
/**
23
* Deactivate plugin
@@ -42,7 +42,7 @@ if (version_compare(PHP_VERSION, '5.3', '<')) {
42
function wpmsShowError()
43
{
44
echo '<div class="error"><p><strong>WP Meta SEO</strong>
45
- need at least PHP 5.3 version, please update php before installing the plugin.</p></div>';
46
}
47
}
48
@@ -87,7 +87,7 @@ if (class_exists('\Joomunited\WPMS\JUCheckRequirements')) {
87
'plugin_path' => 'wp-meta-seo/wp-meta-seo.php',
88
'plugin_textdomain' => 'wp-meta-seo',
89
'requirements' => array(
90
- 'php_version' => '5.3',
91
'php_modules' => array(
92
'curl' => 'warning',
93
'libxml' => 'warning'
@@ -132,7 +132,7 @@ if (!defined('WPMSEO_VERSION')) {
132
/**
133
* Plugin version
134
*/
135
- define('WPMSEO_VERSION', '4.2.4');
136
}
137
138
if (!defined('WPMS_CLIENTID')) {
4
* Plugin Name: WP Meta SEO
5
* Plugin URI: http://www.joomunited.com/wordpress-products/wp-meta-seo
6
* Description: WP Meta SEO is a plugin for WordPress to fill meta for content, images and main SEO info in a single view.
7
+ * Version: 4.2.5
8
* Text Domain: wp-meta-seo
9
* Domain Path: /languages
10
* Author: JoomUnited
17
exit;
18
}
19
20
+ if (version_compare(PHP_VERSION, '5.6', '<')) {
21
if (!function_exists('wpmsDisablePlugin')) {
22
/**
23
* Deactivate plugin
42
function wpmsShowError()
43
{
44
echo '<div class="error"><p><strong>WP Meta SEO</strong>
45
+ need at least PHP 5.6 version, please update php before installing the plugin.</p></div>';
46
}
47
}
48
87
'plugin_path' => 'wp-meta-seo/wp-meta-seo.php',
88
'plugin_textdomain' => 'wp-meta-seo',
89
'requirements' => array(
90
+ 'php_version' => '5.6',
91
'php_modules' => array(
92
'curl' => 'warning',
93
'libxml' => 'warning'
132
/**
133
* Plugin version
134
*/
135
+ define('WPMSEO_VERSION', '4.2.5');
136
}
137
138
if (!defined('WPMS_CLIENTID')) {