Platinum SEO Pack - Version 2.1.4

Version Description

  • 2020-06-23 - You can now set a preferred Term for every POST. This can be set for the chosen Preferred Taxonomy. Fixed a bug in sitemap date display. Introduced an analyse button in Analysis screen which will calculate the metrics for the most recent unsaved changes in content. Adds nofollow to Post comment feed links as suggested by Google. the plugin will also hide the main comment feed link by default.
Download this release

Release Info

Developer Rajesh Babu
Plugin Icon 128x128 Platinum SEO Pack
Version 2.1.4
Comparing to
See all releases

Code changes from version 2.1.3 to 2.1.4

Changelog.txt CHANGED
@@ -1,3 +1,7 @@
 
 
 
 
1
  = 2.1.3 =
2
  * 2020-06-12 - Integrated the latest WordPress sitemap files.
3
 
1
+ = 2.1.4 =
2
+ * 2020-06-23 - You can now set a preferred Term for every POST. This can be set for the chosen Preferred Taxonomy.
3
+ Fixed a bug in sitemap date display. Introduced an analyse button in Analysis screen which will calculate the metrics for the most recent unsaved changes in content. Adds nofollow to Post comment feed links as suggested by Google. the plugin will also hide the main comment feed link by default.
4
+
5
  = 2.1.3 =
6
  * 2020-06-12 - Integrated the latest WordPress sitemap files.
7
 
platinum-seo-pack.php CHANGED
@@ -4,7 +4,7 @@
4
  Plugin Name: Platinum SEO Pack
5
  Plugin URI: https://techblissonline.com/platinum-wordpress-seo-plugin/
6
  Description: Complete SEO and Social optimization solution for your Wordpress blog/site. It is Simple, Uncomplicated and User friendly with several useful features.
7
- Version: 2.1.3
8
  Author: Techblissonline.com (Rajesh)
9
  Author URI: https://techblissonline.com/
10
  Text Domain: platinum-seo-pack
4
  Plugin Name: Platinum SEO Pack
5
  Plugin URI: https://techblissonline.com/platinum-wordpress-seo-plugin/
6
  Description: Complete SEO and Social optimization solution for your Wordpress blog/site. It is Simple, Uncomplicated and User friendly with several useful features.
7
+ Version: 2.1.4
8
  Author: Techblissonline.com (Rajesh)
9
  Author URI: https://techblissonline.com/
10
  Text Domain: platinum-seo-pack
psp-include/generators/psp_pts_seo_metas.php CHANGED
@@ -838,6 +838,7 @@ class PspPtsSeoMetas {
838
  $psp_post_meta_data['redirect_to_url'] = !empty($wp_post_meta_data_arr['_techblissonline_psp_redirect_to_url'][0]) ? $wp_post_meta_data_arr['_techblissonline_psp_redirect_to_url'][0] : '';
839
  $psp_post_meta_data['redirect_status_code'] = !empty($wp_post_meta_data_arr['_techblissonline_psp_redirect_status_code'][0]) ? $wp_post_meta_data_arr['_techblissonline_psp_redirect_status_code'][0] : '';
840
  $psp_post_meta_data['preferred_tax'] = !empty($wp_post_meta_data_arr['_techblissonline_psp_preferred_taxonomy'][0]) ? $wp_post_meta_data_arr['_techblissonline_psp_preferred_taxonomy'][0] : '';
 
841
  $psp_post_meta_data['schema_string'] = !empty($wp_post_meta_data_arr['_techblissonline_psp_schema_string'][0]) ? $wp_post_meta_data_arr['_techblissonline_psp_schema_string'][0] : '';
842
 
843
  $psp_post_disablers = !empty($wp_post_meta_data_arr['_techblissonline_psp_disable_flags'][0]) ? unserialize($wp_post_meta_data_arr['_techblissonline_psp_disable_flags'][0]) : array();
@@ -964,10 +965,17 @@ class PspPtsSeoMetas {
964
  wp_list_categories($args);
965
  ****/
966
  $preferred_tax = !empty($psp_post_meta['preferred_tax']) ? $psp_post_meta['preferred_tax'] : 'category';
967
- $categories = get_the_terms( $post, $preferred_tax );
968
  //sort by ID
969
  //if ($categories) usort($categories, array('PspPtsSeoMetas','pspcmp'));
970
- $categoryname = isset($categories[0]->name) ? $categories[0]->name : '';
 
 
 
 
 
 
 
971
 
972
  $title_format = !empty($current_ptype_format['title']) ? $current_ptype_format['title'] : '';
973
  $psp_post_title_format = isset($psp_post_meta['titleformat']) ? $psp_post_meta['titleformat'] : $title_format;
@@ -1227,6 +1235,7 @@ class PspPtsSeoMetas {
1227
  $psp_post_meta_data['redirect_to_url'] = !empty($wp_post_meta_data_arr['_techblissonline_psp_redirect_to_url'][0]) ? $wp_post_meta_data_arr['_techblissonline_psp_redirect_to_url'][0] : '';
1228
  $psp_post_meta_data['redirect_status_code'] = !empty($wp_post_meta_data_arr['_techblissonline_psp_redirect_status_code'][0]) ? $wp_post_meta_data_arr['_techblissonline_psp_redirect_status_code'][0] : '';
1229
  $psp_post_meta_data['preferred_tax'] = !empty($wp_post_meta_data_arr['_techblissonline_psp_preferred_taxonomy'][0]) ? $wp_post_meta_data_arr['_techblissonline_psp_preferred_taxonomy'][0] : '';
 
1230
  $psp_post_meta_data['schema_string'] = !empty($wp_post_meta_data_arr['_techblissonline_psp_schema_string'][0]) ? $wp_post_meta_data_arr['_techblissonline_psp_schema_string'][0] : '';
1231
 
1232
  $psp_post_disablers = !empty($wp_post_meta_data_arr['_techblissonline_psp_disable_flags'][0]) ? unserialize($wp_post_meta_data_arr['_techblissonline_psp_disable_flags'][0]) : array();
838
  $psp_post_meta_data['redirect_to_url'] = !empty($wp_post_meta_data_arr['_techblissonline_psp_redirect_to_url'][0]) ? $wp_post_meta_data_arr['_techblissonline_psp_redirect_to_url'][0] : '';
839
  $psp_post_meta_data['redirect_status_code'] = !empty($wp_post_meta_data_arr['_techblissonline_psp_redirect_status_code'][0]) ? $wp_post_meta_data_arr['_techblissonline_psp_redirect_status_code'][0] : '';
840
  $psp_post_meta_data['preferred_tax'] = !empty($wp_post_meta_data_arr['_techblissonline_psp_preferred_taxonomy'][0]) ? $wp_post_meta_data_arr['_techblissonline_psp_preferred_taxonomy'][0] : '';
841
+ $psp_post_meta_data['preferred_term'] = !empty($wp_post_meta_data_arr['_techblissonline_psp_preferred_term'][0]) ? $wp_post_meta_data_arr['_techblissonline_psp_preferred_term'][0] : '';
842
  $psp_post_meta_data['schema_string'] = !empty($wp_post_meta_data_arr['_techblissonline_psp_schema_string'][0]) ? $wp_post_meta_data_arr['_techblissonline_psp_schema_string'][0] : '';
843
 
844
  $psp_post_disablers = !empty($wp_post_meta_data_arr['_techblissonline_psp_disable_flags'][0]) ? unserialize($wp_post_meta_data_arr['_techblissonline_psp_disable_flags'][0]) : array();
965
  wp_list_categories($args);
966
  ****/
967
  $preferred_tax = !empty($psp_post_meta['preferred_tax']) ? $psp_post_meta['preferred_tax'] : 'category';
968
+ //$categories = get_the_terms( $post, $preferred_tax ); //commented 15/06/2020
969
  //sort by ID
970
  //if ($categories) usort($categories, array('PspPtsSeoMetas','pspcmp'));
971
+ if ( !empty($psp_post_meta['preferred_term'] )) {
972
+ $termobj = get_term_by('id', $psp_post_meta['preferred_term'], $preferred_tax);
973
+ $categoryname = isset($termobj) ? $termobj->name : '';
974
+ //$categoryname = !empty($psp_post_meta['preferred_term']) ? $psp_post_meta['preferred_term'] : 'category';
975
+ } else {
976
+ $categories = get_the_terms( $post, $preferred_tax ); //introduced 15/06/2020
977
+ $categoryname = isset($categories[0]->name) ? $categories[0]->name : '';
978
+ }
979
 
980
  $title_format = !empty($current_ptype_format['title']) ? $current_ptype_format['title'] : '';
981
  $psp_post_title_format = isset($psp_post_meta['titleformat']) ? $psp_post_meta['titleformat'] : $title_format;
1235
  $psp_post_meta_data['redirect_to_url'] = !empty($wp_post_meta_data_arr['_techblissonline_psp_redirect_to_url'][0]) ? $wp_post_meta_data_arr['_techblissonline_psp_redirect_to_url'][0] : '';
1236
  $psp_post_meta_data['redirect_status_code'] = !empty($wp_post_meta_data_arr['_techblissonline_psp_redirect_status_code'][0]) ? $wp_post_meta_data_arr['_techblissonline_psp_redirect_status_code'][0] : '';
1237
  $psp_post_meta_data['preferred_tax'] = !empty($wp_post_meta_data_arr['_techblissonline_psp_preferred_taxonomy'][0]) ? $wp_post_meta_data_arr['_techblissonline_psp_preferred_taxonomy'][0] : '';
1238
+ $psp_post_meta_data['preferred_term'] = !empty($wp_post_meta_data_arr['_techblissonline_psp_preferred_term'][0]) ? $wp_post_meta_data_arr['_techblissonline_psp_preferred_term'][0] : '';
1239
  $psp_post_meta_data['schema_string'] = !empty($wp_post_meta_data_arr['_techblissonline_psp_schema_string'][0]) ? $wp_post_meta_data_arr['_techblissonline_psp_schema_string'][0] : '';
1240
 
1241
  $psp_post_disablers = !empty($wp_post_meta_data_arr['_techblissonline_psp_disable_flags'][0]) ? unserialize($wp_post_meta_data_arr['_techblissonline_psp_disable_flags'][0]) : array();
psp-include/settings/js/snippetpreview.js CHANGED
@@ -1 +1 @@
1
- function escapeRegExp(e){return e.replace(/[\-\[\]\/\{\}\(\)\*\+\?\.\\\^\$\|]/g,"\\$&")}function wordCount(e){var t=e.match(/\S+/g);return t?t.length:0}function pspSortArray(e,t){var s=[],i=[];for(let r=0;r<e.length;r++)i=[],void 0!==(i=wp.data.select("core").getEntityRecord("taxonomy",t,e[r]))&&(s[r]=i.name);return s?(s.sort(),s[0]):"%"+t+"%"}function pspSortClassicArray(e,t){var s=[];return jQuery('input[name="'+e+'"]:checked').each(function(){s.push(jQuery(this).parent("label").text())}),s&&s.length?(s.sort(),s[0]):"%"+t+"%"}function boldWords(e){var t=e,s=jQuery("#psp_seo_meta\\[keywords\\]").val().match(/\S+/g);if(s)for(i=0;i<s.length;i++)t=(t=t.replace(new RegExp("(^|[\\W])("+escapeRegExp(s[i])+")([\\W]|$)","gi"),"$1<b>$2</b>$3")).replace(new RegExp("(^|[\\W])("+escapeRegExp(s[i])+")([\\W]|$)","gi"),"$1<b>$2</b>$3");return t}function boldText(e){var t=e,s=jQuery("#psp_seo_meta\\[keywords\\]").val().match(/\S+/g);if(s)for(i=0;i<s.length;i++)t=t.replace(new RegExp("("+escapeRegExp(s[i])+")","gi"),"<b>$1</b>");return t}function htmlEncode(e){return jQuery("<div/>").text(e).html()}function setGtbUrlPreview(e){var t="";(t=e)&&(t=t.replace(/^https?\:\/\//i,""));var s=htmlEncode(t),i=(s=s.replace(/\/$/,"")).length;jQuery("#permalinkSizer").html(s);var r=s=s.replace(/([^https?:\/\/])(\/)/g,"$1 > ");t=s,jQuery("#urlSizer").html(s),jQuery("#murlSizer").html(r);var n=new RegExp("W(.*)$");for(trimmed=!1;jQuery("#urlSizer").width()>566;){var a=s;a=(a=(a=(a=a.substring(0,a.length-1)).trim()).replace(/\>$/,"")).trim(),jQuery("#urlSizer").html(a),s=a,trimmed=!0}trimmed&&(s+=" ...",jQuery("#urlSizer").html(s)),info=i+" characters, ",jQuery("#urlInfo").html(s.length+" characters, "+jQuery("#urlSizer").width()+" pixels"),jQuery("#urlSizer").width()<=584?jQuery("#urlInfo").html(info+'<span style="color:green;">'+jQuery("#urlSizer").width()+"/584 pixels</span>"):jQuery("#urlInfo").html(info+'<span style="color:red;">'+jQuery("#urlSizer").width()+"/584 pixels</span>"),jQuery("#techblissonlineSnippetUrl").html(s),mtrimmed=!1;for(var l=r;r.length>42;)r=jQuery.trim(r.replace(" ...","")),(l=(l=(l=jQuery.trim(l.replace(n,""))).trim()).replace(/\>$/,"")).length>=42&&(l=(l=jQuery.trim(r.replace(" ...",""))).substring(0,l.length-1)),l=l.trim(),r=l+=" ...",mtrimmed=!0;mtrimmed&&jQuery("#murlSizer").html(r),info=r.length+" characters, ",jQuery("#murlInfo").html(r.length+" characters, "+jQuery("#murlSizer").width()+" pixels"),jQuery("#murlSizer").width()<=282?jQuery("#murlInfo").html(info+'<span style="color:green;">'+jQuery("#urlSizer").width()+" pixels</span>"):jQuery("#murlInfo").html(info+'<span style="color:red;">'+jQuery("#murlSizer").width()+" pixels</span>"),jQuery("#techblissonlineMSnippetUrl").html(r)}function setUrlPreview(){var e=jQuery.trim(jQuery("#pspHomePermalink").text())+"slug-name/",t=!1;if(window.wpEditorL10n&&wpEditorL10n.tinymce&&wpEditorL10n.tinymce.settings&&(t=wpEditorL10n.tinymce.settings),jQuery("#editable-post-name").length){e=jQuery.trim(jQuery("#sample-permalink").text());var s=jQuery.trim(jQuery("#editable-post-name").text());e=(e=e.replace(s,"")).replace(/\/$/g,"")}else jQuery("#name").length?e=jQuery.trim(jQuery("#pspPostPermalink").text()):jQuery("#slug").length?e=jQuery.trim(jQuery("#pspPostPermalink").text()):t&&wp.data&&wp.data.select&&(e=wp.data.select("core/editor").getPermalink(),wp.data.subscribe(function(){setGtbUrlPreview(wp.data.select("core/editor").getPermalink())}));if(jQuery("#new-post-slug").length>0)e+=jQuery("#new-post-slug").val();else if(jQuery("#editable-post-name-full").length){e+=jQuery("#editable-post-name-full").text()}e&&(e=e.replace(/^https?\:\/\//i,""));var i=htmlEncode(e),r=i.length;r=(i=i.replace(/\/$/,"")).length;jQuery("#permalinkSizer").html(i);var n=i=i.replace(/([^https?:\/\/])(\/)/g,"$1 > ");e=i,jQuery("#urlSizer").html(i),jQuery("#murlSizer").html(n);var a=new RegExp("W(.*)$");for(trimmed=!1;jQuery("#urlSizer").width()>584;){var l=i;l=(l=(l=(l=l.substring(0,l.length-1)).trim()).replace(/\>$/,"")).trim(),jQuery("#urlSizer").html(l),i=l,trimmed=!0}trimmed&&(i+=" ..."),info=r+" characters, ",jQuery("#urlInfo").html(r+" characters, "+jQuery("#urlSizer").width()+" pixels"),jQuery("#urlSizer").width()<=584?jQuery("#urlInfo").html(info+'<span style="color:green;">'+jQuery("#urlSizer").width()+"/584 pixels</span>"):jQuery("#urlInfo").html(info+'<span style="color:red;">'+jQuery("#urlSizer").width()+"/584 pixels</span>"),jQuery("#techblissonlineSnippetUrl").html(i),mtrimmed=!1;for(var o=n;o.length>42;)n=jQuery.trim(n.replace(" ...","")),(o=(o=(o=jQuery.trim(o.replace(a,""))).trim()).replace(/\>$/,"")).length>=42&&(o=(o=jQuery.trim(n.replace(" ...",""))).substring(0,o.length-1)),o=o.trim(),n=o+=" ...",mtrimmed=!0;mtrimmed&&jQuery("#murlSizer").html(n),info=n.length+" characters, ",jQuery("#murlInfo").html(n.length+" characters, "+jQuery("#murlSizer").width()+" pixels"),jQuery("#murlSizer").width()<=282?jQuery("#murlInfo").html(info+'<span style="color:green;">'+jQuery("#urlSizer").width()+" pixels</span>"):jQuery("#murlInfo").html(info+'<span style="color:red;">'+jQuery("#murlSizer").width()+" pixels</span>"),jQuery("#techblissonlineMSnippetUrl").html(n)}function stripTrailingSlash(e){return"/"==e.substr(-1)?e.substr(0,e.length-1):e}function setGtbTitlePreview(e,t){var s=jQuery("#psp_seo_meta\\[titleformat\\]").val(),i=!1,r=!1;jQuery("#psp_seo_meta\\[disable_title_format\\]:checked").length>0&&(i=!0),jQuery("#psp_seo_meta\\[disable_psp\\]:checked").length>0&&(r=!0),i&&(s="%seo_title%"),r&&(s="%wp_title%");var n=jQuery("#pspPostTypeArrayFormat").text(),a=JSON.parse(n),l=jQuery("#psp_seo_meta\\[title\\]"),o=s.replace("%seo_title%",e);if(""===e&&(o=o.replace("%seo_title%",l.attr("placeholder"))),o=(o=(o=(o=(o=(o=o.replace("%wp_title%",a.wp_title)).replace("%site_name%",a.site_name)).replace("%site_description%",a.site_description)).replace("%category%",t)).replace("%taxonomy%",t)).replace(/%sep%/g,a.sep),""!==(o=(o=jQuery.trim(o)).trim(a.sep))){var p=htmlEncode(o),c=p;jQuery("#titleSizer").html(p),jQuery("#actualTitleSizer").html(p);var d=new RegExp("sw+(.*)$");trimmed=!1;for(var u=p;jQuery("#titleSizer").width()>584;)p=jQuery.trim(p.replace(" ...","")),(u=jQuery.trim(u.replace(d,""))).length>=p.length&&(u=u.substring(0,u.length-1)),p=u+" ...",jQuery("#titleSizer").html(p),trimmed=!0;trimmed,jQuery("#titleSizer").html(p),mtrimmed=!1;for(var h=c;h.length>78;)c=jQuery.trim(c.replace(" ...","")),(h=jQuery.trim(h.replace(d,""))).length>=78&&(h=(h=jQuery.trim(h.replace(" ...",""))).substring(0,h.length-1)),c=h+=" ...",mtrimmed=!0;mtrimmed,jQuery("#mtitleSizer").html(c),info=jQuery("<textarea />").html(p).text().length+" characters, "+wordCount(p)+" words ",jQuery("#titleInfo").html(p.length+" characters, "+jQuery("#titleSizer").width()+" pixels, "+wordCount(p)+" words"),jQuery("#titleSizer").width()<=584?jQuery("#titleInfo").html(info+'<span style="color:green;">'+jQuery("#titleSizer").width()+"/584 pixels</span>"):jQuery("#titleInfo").html(info+'<span style="color:red;">'+jQuery("#titleSizer").width()+"/584 pixels</span>"),minfo=jQuery("<textarea />").html(c).text().length+" characters/ 78 characters "+wordCount(c)+" words ",jQuery("#mtitleInfo").html(c.length+" characters, "+jQuery("#mtitleSizer").width()+" pixels, "+wordCount(c)+" words"),c.length<=78?jQuery("#mtitleInfo").html('<span style="color:green;">'+minfo+"</span> "+jQuery("#mtitleSizer").width()+" pixels"):jQuery("#mtitleInfo").html('<span style="color:red;">'+minfo+"</span> "+jQuery("#mtitleSizer").width()+" pixels"),jQuery("#techblissonlineSnippetTitle").html(p),jQuery("#techblissonlineMSnippetTitle").html(c),setPSPSeoAnalysis()}}function setTitlePreview(){var e,t,s="",i="",r="",n=!1,a="";window.wpEditorL10n&&wpEditorL10n.tinymce&&wpEditorL10n.tinymce.settings&&(n=wpEditorL10n.tinymce.settings);var l=jQuery("#pspPostTypeArrayFormat").text(),o=JSON.parse(l),p=jQuery("#psp_seo_meta\\[titleformat\\]").val(),c=!1,d=!1,u=!1;jQuery("#psp_seo_meta\\[disable_title_format\\]:checked").length>0&&(c=!0),jQuery("#psp_seo_meta\\[disable_title\\]:checked").length>0&&(d=!0),jQuery("#psp_seo_meta\\[disable_psp\\]:checked").length>0&&(u=!0);a=o.category,p.toLowerCase().indexOf("%wp_title%");var h=jQuery("#title"),m=jQuery("#psp_seo_meta\\[title\\]");i=m.attr("placeholder");var y=jQuery("#psp_seo_meta\\[preferred_tax\\]"),g="categories",j="post_category[]",Q="category";if(y&&y.val()&&"category"!==(Q=jQuery("#psp_seo_meta\\[preferred_tax\\] option:selected").text())&&(g=Q,j="tax_input["+Q+"][]"),h&&(a=pspSortClassicArray(j,Q)),!m.val()||d||u?(jQuery("#title").val()?i=jQuery.trim(jQuery("#title").val()):jQuery("#name").val()?i=jQuery.trim(jQuery("#name").val()):n&&wp.data&&wp.data.select&&(i=wp.data.select("core/editor").getEditedPostAttribute("title"),t=wp.data.select("core/editor").getEditedPostAttribute(g),a="%"+Q+"%",void 0!==t&&t.length>0&&(a=pspSortArray(t,Q)),wp.data.subscribe(function(){i=wp.data.select("core/editor").getEditedPostAttribute("title"),t=wp.data.select("core/editor").getEditedPostAttribute(g),a="%"+Q+"%",void 0!==t&&t.length>0&&(a=pspSortArray(t,Q)),void 0===i&&(m=jQuery("#psp_seo_meta\\[title\\]")),""===i&&(m=jQuery("#psp_seo_meta\\[title\\]"),i=m.attr("placeholder")),a&&setGtbTitlePreview(i,a)})),s=i,(c||u)&&(p="%wp_title%"),s=(s=(s=(s=(s=(s=(s=p.replace("%seo_title%",i)).replace("%wp_title%",i)).replace("%site_name%",o.site_name)).replace("%site_description%",o.site_description)).replace("%taxonomy%",a)).replace("%category%",a)).replace(/%sep%/g,o.sep),s=(s=jQuery.trim(s)).trim(o.sep)):(s=m.val(),r=m.val(),jQuery("#title").val()?i=jQuery.trim(jQuery("#title").val()):jQuery("#name").val()?i=jQuery.trim(jQuery("#name").val()):n&&wp.data&&wp.data.select&&(i=wp.data.select("core/editor").getEditedPostAttribute("title"),e=wp.data.select("core/editor").getEditedPostAttribute(g),a="%"+Q+"%",void 0!==e&&e.length>0&&(a=pspSortArray(e,Q)),wp.data.subscribe(function(){i=wp.data.select("core/editor").getEditedPostAttribute("title"),e=wp.data.select("core/editor").getEditedPostAttribute(g),a="%"+Q+"%",r=m.val(),void 0!==e&&e.length>0&&(a=pspSortArray(e,Q)),r&&a&&setGtbTitlePreview(r,a)})),c&&(p="%seo_title%"),s=(s=(s=(s=(s=(s=(s=p.replace("%seo_title%",r)).replace("%wp_title%",i)).replace("%site_name%",o.site_name)).replace("%site_description%",o.site_description)).replace("%taxonomy%",a)).replace("%category%",a)).replace(/%sep%/g,o.sep),s=(s=jQuery.trim(s)).trim(o.sep)),""!==s){""===i||n||i;var f=htmlEncode(s),w=f;jQuery("#titleSizer").html(f),jQuery("#actualTitleSizer").html(f);var v=new RegExp("sw+(.*)$"),S=f;for(trimmed=!1;jQuery("#titleSizer").width()>584;)f=jQuery.trim(f.replace(" ...","")),(S=jQuery.trim(S.replace(v,""))).length>=f.length&&(S=S.substring(0,S.length-1)),f=S+" ...",jQuery("#titleSizer").text(f),trimmed=!0;trimmed,jQuery("#titleSizer").text(f),jQuery("body").append(jQuery("#titleSizer")).width(),jQuery("body#titleSizer").remove(),info=jQuery("<textarea />").html(f).text().length+" characters, "+wordCount(f)+" words ",jQuery("#titleInfo").html(f.length+" characters, "+jQuery("#titleSizer").width()+" pixels, "+wordCount(f)+" words"),jQuery("#titleSizer").width()<=584?jQuery("#titleInfo").html(info+'<span style="color:green;">'+jQuery("#titleSizer").width()+"/584 pixels</span>"):jQuery("#titleInfo").html(info+'<span style="color:red;">'+jQuery("#titleSizer").width()+"/584 pixels</span>"),jQuery("#techblissonlineSnippetTitle").html(f);var _=w;for(mtrimmed=!1;_.length>78;)w=jQuery.trim(w.replace(" ...","")),(_=jQuery.trim(_.replace(v,""))).length>=78&&(_=(_=jQuery.trim(_.replace(" ...",""))).substring(0,_.length-1)),w=_+=" ...",mtrimmed=!0;mtrimmed,jQuery("#mtitleSizer").text(w),jQuery("body").append(jQuery("#mtitleSizer")).width(),jQuery("body#mtitleSizer").remove(),minfo=jQuery("<textarea />").html(w).text().length+" characters/ 78 characters "+wordCount(w)+" words ",jQuery("#mtitleInfo").html(w.length+" characters, "+jQuery("#mtitleSizer").width()+" pixels, "+wordCount(w)+" words"),w.length<=78?jQuery("#mtitleInfo").html('<span style="color:green;">'+minfo+"</span> "+jQuery("#mtitleSizer").width()+" pixels"):jQuery("#mtitleInfo").html('<span style="color:red;">'+minfo+"</span> "+jQuery("#mtitleSizer").width()+" pixels"),jQuery("#techblissonlineMSnippetTitle").html(w),setPSPSeoAnalysis()}}function setDescriptionPreview(){var e,t=!1,s=jQuery("#psp_seo_meta\\[description\\]");window.wpEditorL10n&&wpEditorL10n.tinymce&&wpEditorL10n.tinymce.settings&&(t=wpEditorL10n.tinymce.settings);var i=jQuery.trim(jQuery("#psp_seo_meta\\[maxsnippet\\]").val()),r=i;parseInt(i)<0&&(i=230,r=285),jQuery.inArray(parseInt(i),[-1,0,1,2,3,4])>-1&&(i=230,r=285),""===i&&(i=230,r=285),i=parseInt(i),r=parseInt(r);var n="",a=!1,l=!1,o=jQuery("#pspPostTypeArrayFormat").text();if(e=JSON.parse(o).autogendesc,jQuery("#psp_seo_meta\\[disable_psp\\]:checked").length>0&&(a=!0),jQuery("#psp_seo_meta\\[disable_description\\]:checked").length>0&&(l=!0),""!==n||a||l||(n=jQuery.trim(jQuery("#psp_seo_meta\\[description\\]").val())),""===n){if(""===n&&t&&wp.data&&wp.data.select){var p=wp.data.select("core/editor").getEditedPostContent();return""!==e&&(n=(n=p.replace(/(<([^>]+)>)/gi,"")).substring(0,r)),n||(n=s.attr("placeholder")),void setGTBDescPreview(n)}var c=jQuery.trim(jQuery("#content").val());if(!s.val()||a||l)return""!==e&&(n=(n=c.replace(/(<([^>]+)>)/gi,"")).substring(0,r)),n||(n=s.attr("placeholder")),void setGTBDescPreview(n)}return n?void setGTBDescPreview(n):void 0}function setGTBDescPreview(e){jQuery("#psp_seo_meta\\[description\\]");var t=e;placeholder_desc=e;var s=jQuery.trim(jQuery("#psp_seo_meta\\[maxsnippet\\]").val()),i=s;parseInt(s)<0&&(s=230,i=285),jQuery.inArray(parseInt(s),[-1,0,1,2,3,4])>-1&&(s=230,i=285),""===s&&(s=230,i=285),s=parseInt(s),i=parseInt(i);var r=htmlEncode(t),n=r+=" ...";jQuery("#descriptionSizer").html(r),jQuery("#mdescriptionSizer").html(n);for(var a=new RegExp("sw+(.*)$"),l=r;l.length>s;)r=jQuery.trim(r.replace(" ...","")),l=jQuery.trim(l.replace(a,"")),t=jQuery.trim(t.replace(a,"")),l.length>=s&&(l=(l=jQuery.trim(l.replace(" ...",""))).substring(0,l.length-1),t=t.substring(0,t.length-1)),l+=" ...";r=l,jQuery("#descriptionSizer").html(r);for(var o=n;o.length>i;)n=jQuery.trim(n.replace(" ...","")),(o=jQuery.trim(o.replace(a,""))).length>=i&&(o=(o=jQuery.trim(o.replace(" ...",""))).substring(0,o.length-1)),o+=" ...";n=o,jQuery("#descriptionSizer").html(n),jQuery("body").append(jQuery("#descriptionSizer")).width(),jQuery("body").append(jQuery("#mdescriptionSizer")).width(),jQuery("body").remove("#descriptionSizer"),jQuery("body").remove("#mdescriptionSizer"),jQuery("#descriptionInfo").html(r.length+" characters, "+jQuery("#descriptionSizer").width()+" pixels, "+wordCount(r)+" words"),info=jQuery("#descriptionSizer").width()+" pixels, "+wordCount(r)+" words ",jQuery("#mdescriptionInfo").html(n.length+" characters, "+jQuery("#mdescriptionSizer").width()+" pixels, "+wordCount(n)+" words"),minfo=jQuery("#mdescriptionSizer").width()+" pixels, "+wordCount(n)+" words ",r.length<=146?jQuery("#descriptionInfo").html(info+'<span style="color:green;">'+r.length+"/~170 characters"):r.length<=160?jQuery("#descriptionInfo").html(info+'<span style="color:orange;">'+r.length+"/~170 characters</span>"):r.length<=166?jQuery("#descriptionInfo").html(info+'<span style="color:purple;">'+r.length+"/~170 characters</span>"):jQuery("#descriptionInfo").html(info+'<span style="color:red;">'+r.length+"/~170 characters</span>"),n.length<=146?jQuery("#mdescriptionInfo").html(minfo+'<span style="color:green;">'+n.length+"/~170 characters"):n.length<=160?jQuery("#mdescriptionInfo").html(minfo+'<span style="color:orange;">'+n.length+"/~170 characters</span>"):n.length<=166?jQuery("#mdescriptionInfo").html(minfo+'<span style="color:purple;">'+n.length+"/~170 characters</span>"):jQuery("#mdescriptionInfo").html(minfo+'<span style="color:red;">'+n.length+"/~170 characters</span>"),jQuery("#techblissonlineSnippetDescription").html(r),jQuery("#techblissonlineMSnippetDescription").html(n)}function updateDateText(){var e=htmlEncode(jQuery.trim(jQuery("#DateText").val()));e.length>0?jQuery("#resultDateText").html(e+" - "):jQuery("#resultDateText").html("")}function setPSPSeoAnalysis(){var e,t=!1,s="",i="";window.wpEditorL10n&&wpEditorL10n.tinymce&&wpEditorL10n.tinymce.settings&&(t=wpEditorL10n.tinymce.settings),t&&wp.data&&wp.data.select?(""==(i=wp.data.select("core/editor").getEditedPostContent())&&(i=wp.data.select("core/editor").getEditedPostAttribute("content")),s=wp.data.select("core/editor").getEditedPostAttribute("title")):(i=jQuery.trim(jQuery("#content").val()),s=jQuery.trim(jQuery("#title").val()));var r=[],n=0;e=i,""!=i&&(i=(i=(i=(i=i.replace(/(<([^>]+)>)/gi,"")).replace(/['"]+/g,"")).replace(/[^a-zA-Z]+/g," ")).toLowerCase(),r=i.split(/[\/\s]+/),n=r.length);var a,l=window.location.hostname,o=!1,p=!1;a=jQuery("<div />",{html:e}).find("a").map(function(){if(jQuery(this).attr("href")&&(-1==jQuery(this).attr("href").indexOf(l)&&(o=!0),-1!==jQuery(this).attr("href").indexOf(l)&&(p=!0)),""!==jQuery(this).text())return jQuery(this).text()}).get();var c;c=jQuery(e).find("img").map(function(){if(jQuery(this).attr("alt")&&""!==jQuery(this).attr("alt"))return jQuery(this).attr("alt")}).get();var d=!1,u=jQuery(e).find("img");void 0!==u&&u.length>0&&(d=!0);var h=!1,m=jQuery("<div />",{html:e}).find("h2, h3, h4, h5, h6");void 0!==m&&m.length>0&&(h=!0);var y;y=jQuery("<div />",{html:e}).find("h1").map(function(){if(""!==jQuery(this).text())return jQuery(this).text()}).get();var g;g=jQuery("<div />",{html:e}).find("h2").map(function(){if(""!==jQuery(this).text())return jQuery(this).text()}).get();var j=jQuery("#urlSizer").html(),Q=jQuery("#techblissonlineSnippetTitle").html(),f=jQuery("#techblissonlineSnippetDescription").val(),w=jQuery("#psp_seo_meta\\[description\\]").val(),v=jQuery("#psp_seo_meta\\[schema_string\\]").val(),S=!1,_=!1;""!==w&&(_=!0),""!==v&&"Invalid JSON Schema"!==v&&(S=!0);var x=jQuery.trim(jQuery("#permalinkSizer").html()),b=jQuery.trim(jQuery("#actualTitleSizer").html());jQuery("#actualTitleSizers").html(b);var z=0,P=0,E=0;""!==x&&(z=x.length),""!==x&&jQuery("#permalinkSizer").width(),""!==b&&(P=jQuery("<textarea />").html(b).text().length),""!==b&&(E=jQuery("#actualTitleSizer").width()),0==E&&(E=jQuery("#actualTitleSizers").width()-1),""!==j&&(j=j.trim());var k=0,T=0,I=0,C=0,A="",L=[0,2,4],U=[1,3,4],D=[],R=jQuery("#psp_seo_meta\\[keywords\\]").val();if(void 0!==R&&(D=R.split(",")),A+='<div class="psp-bs">',A+='<div class="container-fluid">',A+="<h1>Platinum SEO Analysis</h1>",A+='<p>This is a basic content analysis of this page and your focus keywords. Assigning a score does not mean anything and so we do not do that. Rather, make sure that all these basic recommendations are adhered to. We also recommend you to try our <a href="https://techblissonline.com/tools/" target="_blank">Techblissonline SEO Tools</a> for a detailed analysis of your pages and your competitor pages for your focus keywords, co-occuring words (related entities) and improve your content accordingly. </p>',A+='<div class="panel-group">',A+='<div class="row"><div class="col-sm-12">',A+='<div class="panel panel-primary">',A+='<div class="panel-heading">General</div>',A+='<div class="panel-body">',A+="<ul>",z>0&&z<75?A=A+'<li><span class="dashicons dashicons-yes-alt"></span> URL Length is '+z+" characters </li>":z>75&&(A=A+'<li><span class="psp-info dashicons dashicons-info"></span> URL lLength is '+z+' characters <a href="#" class="psptip" data-toggle="tooltip" data-placement="top" title="URL might get truncated in Google SERPS if it is more than 75 characters wide. "><sup><span class="dashicons dashicons-info"></span></sup></a></li>'),P>0&&P<70?A=A+'<li><span class="dashicons dashicons-yes-alt"></span> SEO Title lLength is '+P+" characters </li>":P>70&&(A=A+'<li><span class="dashicons dashicons-dismiss"></span> Actual SEO Title lLength is '+P+' characters. <a href="#" class="psptip" data-toggle="tooltip" data-placement="top" title="Title might get truncated in Google SERPS if it is more than 70 characters wide. "><sup><span class="dashicons dashicons-info"></span></sup></a></li>'),E>0&&E<574?A=A+'<li><span class="dashicons dashicons-yes-alt"></span> SEO Title pixel width is '+E+" pixels </li>":E>574&&(A=A+'<li><span class="dashicons dashicons-dismiss"></span> SEO Title pixel width is '+E+' pixels including Title format. <a href="#" class="psptip" data-toggle="tooltip" data-placement="top" title="Title might get truncated in Google SERPS if it is more than 574 pixels wide. "><sup><span class="dashicons dashicons-info"></span></sup></a></li>'),A+=_?'<li><span class="dashicons dashicons-yes-alt"></span> Platinum SEO Description is used </li>':'<li><span class="dashicons dashicons-dismiss"></span> Platinum SEO Description field is not filled in. You may have an auto-generated description. <a href="#" class="psptip" data-toggle="tooltip" data-placement="top" title="Using optimized description improves CTR from search and social engines"><sup><span class="dashicons dashicons-info"></span></sup></a></li>',A+=S?'<li><span class="dashicons dashicons-yes-alt"></span> Json Schema is used on this page using Platinum SEO </li>':'<li><span class="dashicons dashicons-dismiss"></span> Json Schema is not used on this page using Platinum SEO <a href="#" class="psptip" data-toggle="tooltip" data-placement="top" title="Using Json Schema has a positive impact on Google. Use our Schema generator tool to generate and add one in the Advanced SEO section."><sup><span class="dashicons dashicons-info"></span></sup></a></li>',""!=i&&(A=n>0&&n>500?A+'<li><span class="dashicons dashicons-yes-alt"></span> Total number of words in Content is '+n+' <a href="#" class="psptip" data-toggle="tooltip" data-placement="top" title="Content length does not matter as long as user intent is matched for the topic covered. Write related articles and link them internally "><sup><span class="dashicons dashicons-info"></span></sup></a></li>':A+'<li><span class="psp-info dashicons dashicons-info"></span> Total number of words in Content is '+n+' <a href="#" class="psptip" data-toggle="tooltip" data-placement="top" title="Content length does not matter as long as user intent is matched for the topic covered. Write related articles and link them internally "><sup><span class="dashicons dashicons-info"></span></sup></a></li>',A+=d?'<li><span class="dashicons dashicons-yes-alt"></span> Images used in Content </li>':'<li><span class="dashicons dashicons-dismiss"></span> Images not used in Content <a href="#" class="psptip" data-toggle="tooltip" data-placement="top" title="Using relevant high quality images can increase user engagement and bring in more traffic"><sup><span class="dashicons dashicons-info"></span></sup></a></li>',A+=p?'<li><span class="dashicons dashicons-yes-alt"></span> Internal links used in content. </li>':'<li><span class="dashicons dashicons-dismiss"></span> Internal links not used in Content <a href="#" class="psptip" data-toggle="tooltip" data-placement="top" title="Linking to other relevant internal resources improves Time on site. "><sup><span class="dashicons dashicons-info"></span></sup></a></li>',A+=o?'<li><span class="dashicons dashicons-yes-alt"></span> External links found in content. Referring to an authoritative source on which the underlying research for the content was done or linking to the creator of the product the page is about, is always a good practice that improves trust. </li>':'<li><span class="psp-info dashicons dashicons-info"></span> External links not found in Content.Referring to an authoritative source on which the underlying research for the content was done or linking to the creator of the product this page is about, is always a good practice that improves trust. <a href="#" class="psptip" data-toggle="tooltip" data-placement="top" title="Linking to other relevant external resources as references improves trust on content. "><sup><span class="dashicons dashicons-info"></span></sup></a></li>',h&&(A+='<li><span class="dashicons dashicons-yes-alt"></span> Subheaders like h2 are used in Content </li>')),A+="</ul>",A+="</div>",A+="</div>",A+="</div></div>",(void 0!==D||D.length<1)&&""==R)return A+="</div>",A+="</div></div>",void jQuery("#techblissonlineseoanalysis").html(A);jQuery.each(D,function(e,t){if(k=0,T=0,I=0,C=0,searchlc=t.toLowerCase().trim(),!(""==searchlc||e>4)){if(jQuery.each([y,g,c,a],function(e,t){jQuery.each(t,function(t,s){-1!==s.toLowerCase().trim().indexOf(searchlc)&&(0==e&&(k+=1),1==e&&(T+=1),2==e&&(I+=1),3==e&&(C+=1))})}),jQuery.inArray(parseInt(e),L)>-1&&(A+='<div class="row">'),A+='<div class="col-sm-6">',A=(A+='<div class="panel panel-primary">')+'<div class="panel-heading">'+t+"</div>",A+='<div class="panel-body">',A+="<ul>",j&&(searchlcurl=searchlc.replace(/ /g,"-"),-1!==j.search(searchlcurl)?A+='<li><span class="dashicons dashicons-yes-alt"></span> Used in URL </li>':A+='<li><span class="dashicons dashicons-dismiss"></span> Not used in URL </li>'),Q&&(psplctitle=Q.toLowerCase().trim(),-1!==psplctitle.search(searchlc)?(A+='<li><span class="dashicons dashicons-yes-alt"></span> Used in Title </li>',psplctitle.indexOf(searchlc)<20?A+='<li><span class="dashicons dashicons-yes-alt"></span> Found in the beginning of Title </li>':A+='<li><span class="dashicons dashicons-dismiss"></span> Not found in the beginning of Title </li>'):A+='<li><span class="dashicons dashicons-dismiss"></span> Not used in Title </li>'),f&&(psplcdesc=f.toLowerCase().trim(),-1!==psplcdesc.search(searchlc)?(psplcdesc,A+='<li><span class="dashicons dashicons-yes-alt"></span> Used in Meta Description </li>'):A+='<li><span class="dashicons dashicons-dismiss"></span> Not used in Meta Description </li>'),s&&(psplcwptitle=s.toLowerCase().trim(),-1!==psplcwptitle.search(searchlc)?A+='<li><span class="dashicons dashicons-yes-alt"></span> Used in h1 tag (Wordpress Title) </li>':A+='<li><span class="dashicons dashicons-dismiss"></span> Not used in h1 tag (Wordpress Title) </li>'),A+="</ul>",""==i)return A+="</div>",A+="</div>",A+="</div>",void(jQuery.inArray(parseInt(e),U)>-1&&(A+="</div>"));var l,o=[];o=(l=pspGetCounOfIndices(searchlc,r,!1))[1],pspkd=0,pspkeycounter=0,n>0&&o&&(pspkd=o.length/n*100);var p=l[0];p&&(pspkeycounter=p.length),A+="<ul>",o.length>0?(A=pspkd.toFixed(2)<3?A+'<li><span class="dashicons dashicons-yes-alt"></span> Used in content '+o.length+" time(s) </li>":A+'<li><span class="dashicons dashicons-dismiss"></span> Used in content '+o.length+" time(s) </li>",pspkeycounter>0&&pspkeycounter<6?A=A+'<li><li><span class="dashicons dashicons-yes-alt"></span> Found in first 100 words of content '+pspkeycounter+" time(s) </li>":0==pspkeycounter?A+='<li><span class="dashicons dashicons-dismiss"></span> Not found in first 100 words of content </li>':A=A+'<li><span class="dashicons dashicons-dismiss"></span> Found in first 100 words of content '+pspkeycounter+" time(s) </li>",A=pspkd.toFixed(2)<3?A+'<li><span class="dashicons dashicons-yes-alt"></span> Keyword Density of '+t+" is "+pspkd.toFixed(2):A+'<li><span class="dashicons dashicons-dismiss"></span> Keyword Density of '+t+" is "+pspkd.toFixed(2)):A+='<li><span class="dashicons dashicons-dismiss"></span> Not used in Content </li>',k>0&&(A=A+'<li><span class="dashicons dashicons-yes-alt"></span> Used in other h1 tags '+k+" time(s) </li>"),T>0?A=A+'<li><span class="dashicons dashicons-yes-alt"></span> Used in h2 tags '+T+" time(s) </li>":A+='<li><span class="dashicons dashicons-dismiss"></span> Not used in h2 tags </li>',I>0?A=A+'<li><span class="dashicons dashicons-yes-alt"></span> Used in image alt attributes '+I+" time(s) </li>":A+='<li><span class="dashicons dashicons-dismiss"></span> Not used in image alt attributes </li>',C>0?A=A+'<li><span class="dashicons dashicons-yes-alt"></span> Used in anchor texts '+C+" time(s) </li>":A+='<li><span class="dashicons dashicons-dismiss"></span> Not used in anchor texts </li>',A+="</ul>",A+="</div>",A+="</div>",A+="</div>",jQuery.inArray(parseInt(e),U)>-1&&(A+="</div>")}}),A+="</div>",A+="</div></div>",jQuery("#techblissonlineseoanalysis").html(A)}function pspGetCounOfIndices(e,t,s){if(0==e.length)return[];var i,r=[],n=[],a=[];s||(e=e.toLowerCase()),i=t.length;for(let a=0;a<i;a++)str=t[a],str&&(s||(str=str.toLowerCase()),str.indexOf(e,0)>-1&&(n.push(str),a<100&&r.push(str)));return a.push(r),a.push(n),a}function updateAll(){setUrlPreview(),setTitlePreview(),setDescriptionPreview()}String.prototype.trimEnd=function(e){e=e||" ";for(var t=this.length-1;t>=0&&this.charAt(t)==e;t--);return this.substring(0,t+1)},jQuery(document).ready(function(){jQuery("#URL").keyup(function(){setUrlPreview()}),jQuery(document).on("keyup","#new-post-slug",function(){setUrlPreview()}),jQuery(document).on("click",".cancel, .save",function(){setUrlPreview()}),jQuery('input[name="post_category[]"]').click(function(){setTitlePreview()}),jQuery("input[name^='tax_input[']").click(function(){setTitlePreview()}),jQuery("#psp_seo_meta\\[title\\]").keyup(function(){setTitlePreview()}),jQuery("#title").keyup(function(){setTitlePreview()}),jQuery("#name").keyup(function(){setTitlePreview()}),jQuery("#psp_seo_meta\\[titleformat\\]").bind("change",function(){setTitlePreview()}),jQuery("#psp_seo_meta\\[titleformat\\]").on("change",function(){setTitlePreview()}),jQuery("#psp_seo_meta\\[preferred_tax\\]").on("change",function(){setTitlePreview()}),jQuery("#psp_seo_meta\\[disable_title_format\\]").on("change",function(){setTitlePreview()}),jQuery("#psp_seo_meta\\[disable_title\\]").on("change",function(){setTitlePreview()}),jQuery("#psp_seo_meta\\[disable_psp\\]").on("change",function(){setTitlePreview(),setDescriptionPreview()}),jQuery("#psp_seo_meta\\[disable_description\\]").on("change",function(){setDescriptionPreview()}),jQuery("#psp_seo_meta\\[description\\]").keyup(function(){setDescriptionPreview()}),jQuery("#content").keyup(function(){setDescriptionPreview()}),jQuery("#psp_seo_meta\\[maxsnippet\\]").on("change",function(){setDescriptionPreview()}),jQuery("#DateText").keyup(function(){updateDateText()}),jQuery("#psp_seo_meta\\[keywords\\]").keyup(function(){setPSPSeoAnalysis()}),jQuery("#psp_analyse_btn").on("click",function(){updateAll()}),updateAll()});
1
+ function escapeRegExp(e){return e.replace(/[\-\[\]\/\{\}\(\)\*\+\?\.\\\^\$\|]/g,"\\$&")}function wordCount(e){var t=e.match(/\S+/g);return t?t.length:0}function arraysEqual(e,t){if(void 0===e||void 0===t)return!1;if(e===t)return!0;if(null===e||null===t)return!1;if(e.length!=t.length)return!1;e=e.sort(),t=t.sort();for(var s=0;s<e.length;++s)if(e[s]!==t[s])return!1;return!0}function pspContainsPT(e){if(jQuery("#psp_seo_meta\\[preferred_term\\]").val()>0){var t=jQuery("#psp_seo_meta\\[preferred_term\\] option:selected").text();return!(e&&jQuery.inArray(t,e)>-1)&&(alert("Make sure that you change the preferred term before saving as you have deselected "+t),jQuery("#psp_seo_meta\\[preferred_term\\]").val(""),!0)}}function pspSelectedTerms(e,t){var s,r=[],i=jQuery("#psp_terms_json_str").val(),a=JSON.parse(i);return jQuery.each(a,function(i,a){i===t&&(s=0,jQuery.each(a,function(t,i){jQuery.inArray(parseInt(i.id),e)>-1&&(r[s]=i.name.trim(),s++)}))}),r.sort(),r}function pspSelectedTermsClassic(e){var t=[];return jQuery('input[name="'+e+'"]:checked').each(function(){t.push(jQuery(this).parent("label").text().trim())}),t.sort(),t}function isTermSelected(){var e=jQuery("#psp_seo_meta\\[preferred_tax\\]"),t=jQuery("#psp_seo_meta\\[preferred_term\\]"),s=jQuery("#psp_seo_meta\\[preferred_term\\] option:selected").text(),r=jQuery("#psp_seo_meta\\[preferred_term\\]").val();if(r){var i,a="categories",n="post_category[]",l="category",o=t.attr("oldValue"),p=!1;window.wpEditorL10n&&wpEditorL10n.tinymce&&wpEditorL10n.tinymce.settings&&(p=wpEditorL10n.tinymce.settings),e&&e.val()&&"category"!==(l=jQuery("#psp_seo_meta\\[preferred_tax\\] option:selected").text())&&(a=l,n="tax_input["+l+"][]"),p&&wp.data&&wp.data.select?(taxarray=wp.data.select("core/editor").getEditedPostAttribute(a),i=pspSelectedTerms(taxarray,l)):i=pspSelectedTermsClassic(n),r&&(i.length>0?jQuery.inArray(s.trim(),i)>-1||""===r||(alert("Select this Term "+s+" if you want to set it as preferred term"),t.val(o)):(alert("Select this Term "+s+" if you want to set it as preferred term"),t.val("")))}}function pspPopulateTerms(){preferredTaxElem=jQuery("#psp_seo_meta\\[preferred_tax\\]"),preferredTermElem=jQuery("#psp_seo_meta\\[preferred_term\\]");var e=preferredTaxElem.val();jQuery("#psp_seo_meta\\[preferred_term\\]").html("");var t=jQuery("#psp_terms_json_str").val(),s=JSON.parse(t);preferredTermElem.append('<option value="">Select a Term</option>'),jQuery.each(s,function(t,s){t===e&&jQuery.each(s,function(e,t){preferredTermElem.append('<option value="'+t.id+'">'+t.name+"</option>")})})}function boldWords(e){var t=e,s=jQuery("#psp_seo_meta\\[keywords\\]").val().match(/\S+/g);if(s)for(i=0;i<s.length;i++)t=(t=t.replace(new RegExp("(^|[\\W])("+escapeRegExp(s[i])+")([\\W]|$)","gi"),"$1<b>$2</b>$3")).replace(new RegExp("(^|[\\W])("+escapeRegExp(s[i])+")([\\W]|$)","gi"),"$1<b>$2</b>$3");return t}function boldText(e){var t=e,s=jQuery("#psp_seo_meta\\[keywords\\]").val().match(/\S+/g);if(s)for(i=0;i<s.length;i++)t=t.replace(new RegExp("("+escapeRegExp(s[i])+")","gi"),"<b>$1</b>");return t}function htmlEncode(e){return jQuery("<div/>").text(e).html()}function setGtbUrlPreview(e){var t="";(t=e)&&(t=t.replace(/^https?\:\/\//i,""));var s=htmlEncode(t),r=(s=s.replace(/\/$/,"")).length;jQuery("#permalinkSizer").html(s);var i=s=s.replace(/([^https?:\/\/])(\/)/g,"$1 > ");t=s,jQuery("#urlSizer").html(s),jQuery("#murlSizer").html(i);var a=new RegExp("W(.*)$");for(trimmed=!1;jQuery("#urlSizer").width()>566;){var n=s;n=(n=(n=(n=n.substring(0,n.length-1)).trim()).replace(/\>$/,"")).trim(),jQuery("#urlSizer").html(n),s=n,trimmed=!0}trimmed&&(s+=" ...",jQuery("#urlSizer").html(s)),info=r+" characters, ",jQuery("#urlInfo").html(s.length+" characters, "+jQuery("#urlSizer").width()+" pixels"),jQuery("#urlSizer").width()<=584?jQuery("#urlInfo").html(info+'<span style="color:green;">'+jQuery("#urlSizer").width()+"/584 pixels</span>"):jQuery("#urlInfo").html(info+'<span style="color:red;">'+jQuery("#urlSizer").width()+"/584 pixels</span>"),jQuery("#techblissonlineSnippetUrl").html(s),mtrimmed=!1;for(var l=i;i.length>42;)i=jQuery.trim(i.replace(" ...","")),(l=(l=(l=jQuery.trim(l.replace(a,""))).trim()).replace(/\>$/,"")).length>=42&&(l=(l=jQuery.trim(i.replace(" ...",""))).substring(0,l.length-1)),l=l.trim(),i=l+=" ...",mtrimmed=!0;mtrimmed&&jQuery("#murlSizer").html(i),info=i.length+" characters, ",jQuery("#murlInfo").html(i.length+" characters, "+jQuery("#murlSizer").width()+" pixels"),jQuery("#murlSizer").width()<=282?jQuery("#murlInfo").html(info+'<span style="color:green;">'+jQuery("#urlSizer").width()+" pixels</span>"):jQuery("#murlInfo").html(info+'<span style="color:red;">'+jQuery("#murlSizer").width()+" pixels</span>"),jQuery("#techblissonlineMSnippetUrl").html(i)}function setUrlPreview(){var e=jQuery.trim(jQuery("#pspHomePermalink").text())+"slug-name/";if(window.wpEditorL10n&&wpEditorL10n.tinymce&&wpEditorL10n.tinymce.settings&&wpEditorL10n.tinymce.settings,jQuery("#editable-post-name").length){e=jQuery.trim(jQuery("#sample-permalink").text());var t=jQuery.trim(jQuery("#editable-post-name").text());e=(e=e.replace(t,"")).replace(/\/$/g,"")}else jQuery("#name").length?e=jQuery.trim(jQuery("#pspPostPermalink").text()):jQuery("#slug").length&&(e=jQuery.trim(jQuery("#pspPostPermalink").text()));if(jQuery("#new-post-slug").length>0)e+=jQuery("#new-post-slug").val();else if(jQuery("#editable-post-name-full").length){e+=jQuery("#editable-post-name-full").text()}e&&(e=e.replace(/^https?\:\/\//i,""));var s=htmlEncode(e),r=s.length;r=(s=s.replace(/\/$/,"")).length;jQuery("#permalinkSizer").html(s);var i=s=s.replace(/([^https?:\/\/])(\/)/g,"$1 > ");e=s,jQuery("#urlSizer").html(s),jQuery("#murlSizer").html(i);var a=new RegExp("W(.*)$");for(trimmed=!1;jQuery("#urlSizer").width()>584;){var n=s;n=(n=(n=(n=n.substring(0,n.length-1)).trim()).replace(/\>$/,"")).trim(),jQuery("#urlSizer").html(n),s=n,trimmed=!0}trimmed&&(s+=" ..."),info=r+" characters, ",jQuery("#urlInfo").html(r+" characters, "+jQuery("#urlSizer").width()+" pixels"),jQuery("#urlSizer").width()<=584?jQuery("#urlInfo").html(info+'<span style="color:green;">'+jQuery("#urlSizer").width()+"/584 pixels</span>"):jQuery("#urlInfo").html(info+'<span style="color:red;">'+jQuery("#urlSizer").width()+"/584 pixels</span>"),jQuery("#techblissonlineSnippetUrl").html(s),mtrimmed=!1;for(var l=i;l.length>42;)i=jQuery.trim(i.replace(" ...","")),(l=(l=(l=jQuery.trim(l.replace(a,""))).trim()).replace(/\>$/,"")).length>=42&&(l=(l=jQuery.trim(i.replace(" ...",""))).substring(0,l.length-1)),l=l.trim(),i=l+=" ...",mtrimmed=!0;mtrimmed&&jQuery("#murlSizer").html(i),info=i.length+" characters, ",jQuery("#murlInfo").html(i.length+" characters, "+jQuery("#murlSizer").width()+" pixels"),jQuery("#murlSizer").width()<=282?jQuery("#murlInfo").html(info+'<span style="color:green;">'+jQuery("#urlSizer").width()+" pixels</span>"):jQuery("#murlInfo").html(info+'<span style="color:red;">'+jQuery("#murlSizer").width()+" pixels</span>"),jQuery("#techblissonlineMSnippetUrl").html(i)}function stripTrailingSlash(e){return"/"==e.substr(-1)?e.substr(0,e.length-1):e}function setGtbTitlePreview(e,t){var s=jQuery("#psp_seo_meta\\[titleformat\\]").val(),r=!1,i=!1;jQuery("#psp_seo_meta\\[disable_title_format\\]:checked").length>0&&(r=!0),jQuery("#psp_seo_meta\\[disable_psp\\]:checked").length>0&&(i=!0),r&&(s="%seo_title%"),i&&(s="%wp_title%");var a=jQuery("#pspPostTypeArrayFormat").text(),n=JSON.parse(a),l=jQuery("#psp_seo_meta\\[title\\]"),o=s.replace("%seo_title%",e);if(""===e&&(o=o.replace("%seo_title%",l.attr("placeholder"))),o=(o=(o=(o=(o=(o=o.replace("%wp_title%",n.wp_title)).replace("%site_name%",n.site_name)).replace("%site_description%",n.site_description)).replace("%category%",t)).replace("%taxonomy%",t)).replace(/%sep%/g,n.sep),""!==(o=(o=jQuery.trim(o)).trim(n.sep))){var p=htmlEncode(o),c=p;jQuery("#titleSizer").html(p),jQuery("#actualTitleSizer").html(p);var d=new RegExp("sw+(.*)$");trimmed=!1;for(var u=p;jQuery("#titleSizer").width()>584;)p=jQuery.trim(p.replace(" ...","")),(u=jQuery.trim(u.replace(d,""))).length>=p.length&&(u=u.substring(0,u.length-1)),p=u+" ...",jQuery("#titleSizer").html(p),trimmed=!0;trimmed,jQuery("#titleSizer").html(p),mtrimmed=!1;for(var h=c;h.length>78;)c=jQuery.trim(c.replace(" ...","")),(h=jQuery.trim(h.replace(d,""))).length>=78&&(h=(h=jQuery.trim(h.replace(" ...",""))).substring(0,h.length-1)),c=h+=" ...",mtrimmed=!0;mtrimmed,jQuery("#mtitleSizer").html(c),info=jQuery("<textarea />").html(p).text().length+" characters, "+wordCount(p)+" words ",jQuery("#titleInfo").html(p.length+" characters, "+jQuery("#titleSizer").width()+" pixels, "+wordCount(p)+" words"),jQuery("#titleSizer").width()<=584?jQuery("#titleInfo").html(info+'<span style="color:green;">'+jQuery("#titleSizer").width()+"/584 pixels</span>"):jQuery("#titleInfo").html(info+'<span style="color:red;">'+jQuery("#titleSizer").width()+"/584 pixels</span>"),minfo=jQuery("<textarea />").html(c).text().length+" characters/ 78 characters "+wordCount(c)+" words ",jQuery("#mtitleInfo").html(c.length+" characters, "+jQuery("#mtitleSizer").width()+" pixels, "+wordCount(c)+" words"),c.length<=78?jQuery("#mtitleInfo").html('<span style="color:green;">'+minfo+"</span> "+jQuery("#mtitleSizer").width()+" pixels"):jQuery("#mtitleInfo").html('<span style="color:red;">'+minfo+"</span> "+jQuery("#mtitleSizer").width()+" pixels"),jQuery("#techblissonlineSnippetTitle").html(p),jQuery("#techblissonlineMSnippetTitle").html(c),setPSPSeoAnalysis()}}function setTitlePreview(){var e,t,s="",r="",i="",a=!1,n="",l=[];window.wpEditorL10n&&wpEditorL10n.tinymce&&wpEditorL10n.tinymce.settings&&(a=wpEditorL10n.tinymce.settings);var o=jQuery("#pspPostTypeArrayFormat").text(),p=JSON.parse(o),c=jQuery("#psp_seo_meta\\[titleformat\\]").val(),d=!1,u=!1,h=!1;jQuery("#psp_seo_meta\\[disable_title_format\\]:checked").length>0&&(d=!0),jQuery("#psp_seo_meta\\[disable_title\\]:checked").length>0&&(u=!0),jQuery("#psp_seo_meta\\[disable_psp\\]:checked").length>0&&(h=!0);n=p.category,c.toLowerCase().indexOf("%wp_title%");var m=jQuery("#title"),y=jQuery("#psp_seo_meta\\[title\\]");r=y.attr("placeholder");var g=jQuery("#psp_seo_meta\\[preferred_tax\\]"),j=jQuery("#psp_seo_meta\\[preferred_term\\]"),Q="categories",f="post_category[]",v="category";if(g&&g.val()&&"category"!==(v=jQuery("#psp_seo_meta\\[preferred_tax\\] option:selected").text())&&(Q=v,f="tax_input["+v+"][]"),!a&&m&&(pspContainsPT(l=pspSelectedTermsClassic(f)),n=j&&j.val()?jQuery("#psp_seo_meta\\[preferred_term\\] option:selected").text():l&&l.length>0?l[0]:"%"+v+"%"),!y.val()||u||h?(jQuery("#title").val()?r=jQuery.trim(jQuery("#title").val()):jQuery("#name").val()?r=jQuery.trim(jQuery("#name").val()):a&&wp.data&&wp.data.select&&(n=p.category,j&&j.val()&&(n=jQuery("#psp_seo_meta\\[preferred_term\\] option:selected").text()),""===(r=wp.data.select("core/editor").getEditedPostAttribute("title"))&&(r=y.attr("placeholder")),n||(n="%"+v+"%"),void 0===(t=wp.data.select("core/editor").getEditedPostAttribute(Q))&&(n="%"+v+"%"),void 0!==t&&0===t.length&&(n="%"+v+"%",pspContainsPT(t)),void 0!==t&&t.length>0&&(pspContainsPT(l=pspSelectedTerms(t,v)),n=j&&j.val()?jQuery("#psp_seo_meta\\[preferred_term\\] option:selected").text():l[0])),s=r,(d||h)&&(c="%wp_title%"),s=(s=(s=(s=(s=(s=(s=c.replace("%seo_title%",r)).replace("%wp_title%",r)).replace("%site_name%",p.site_name)).replace("%site_description%",p.site_description)).replace("%taxonomy%",n)).replace("%category%",n)).replace(/%sep%/g,p.sep),s=(s=jQuery.trim(s)).trim(p.sep)):(s=y.val(),i=y.val(),jQuery("#title").val()?r=jQuery.trim(jQuery("#title").val()):jQuery("#name").val()?r=jQuery.trim(jQuery("#name").val()):a&&wp.data&&wp.data.select&&(n=p.category,j&&j.val()&&(n=jQuery("#psp_seo_meta\\[preferred_term\\] option:selected").text()),r=wp.data.select("core/editor").getEditedPostAttribute("title"),n||(n="%"+v+"%"),void 0===(e=wp.data.select("core/editor").getEditedPostAttribute(Q))&&(n="%"+v+"%"),void 0!==e&&0===e.length&&(n="%"+v+"%",pspContainsPT(l)),void 0!==e&&e.length>0&&(pspContainsPT(l=pspSelectedTerms(e,v)),j&&j.val()?n=jQuery("#psp_seo_meta\\[preferred_term\\] option:selected").text():l.length>0&&(n=l[0]))),d&&(c="%seo_title%"),s=(s=(s=(s=(s=(s=(s=c.replace("%seo_title%",i)).replace("%wp_title%",r)).replace("%site_name%",p.site_name)).replace("%site_description%",p.site_description)).replace("%taxonomy%",n)).replace("%category%",n)).replace(/%sep%/g,p.sep),s=(s=jQuery.trim(s)).trim(p.sep)),""!==s){""===r||a||r;var w=htmlEncode(s),_=w;jQuery("#titleSizer").html(w),jQuery("#actualTitleSizer").html(w);var S=new RegExp("sw+(.*)$"),x=w;for(trimmed=!1;jQuery("#titleSizer").width()>584;)w=jQuery.trim(w.replace(" ...","")),(x=jQuery.trim(x.replace(S,""))).length>=w.length&&(x=x.substring(0,x.length-1)),w=x+" ...",jQuery("#titleSizer").text(w),trimmed=!0;trimmed,jQuery("#titleSizer").text(w),jQuery("body").append(jQuery("#titleSizer")).width(),jQuery("body#titleSizer").remove(),info=jQuery("<textarea />").html(w).text().length+" characters, "+wordCount(w)+" words ",jQuery("#titleInfo").html(w.length+" characters, "+jQuery("#titleSizer").width()+" pixels, "+wordCount(w)+" words"),jQuery("#titleSizer").width()<=584?jQuery("#titleInfo").html(info+'<span style="color:green;">'+jQuery("#titleSizer").width()+"/584 pixels</span>"):jQuery("#titleInfo").html(info+'<span style="color:red;">'+jQuery("#titleSizer").width()+"/584 pixels</span>"),jQuery("#techblissonlineSnippetTitle").html(w);var b=_;for(mtrimmed=!1;b.length>78;)_=jQuery.trim(_.replace(" ...","")),(b=jQuery.trim(b.replace(S,""))).length>=78&&(b=(b=jQuery.trim(b.replace(" ...",""))).substring(0,b.length-1)),_=b+=" ...",mtrimmed=!0;mtrimmed,jQuery("#mtitleSizer").text(_),jQuery("body").append(jQuery("#mtitleSizer")).width(),jQuery("body#mtitleSizer").remove(),minfo=jQuery("<textarea />").html(_).text().length+" characters/ 78 characters "+wordCount(_)+" words ",jQuery("#mtitleInfo").html(_.length+" characters, "+jQuery("#mtitleSizer").width()+" pixels, "+wordCount(_)+" words"),_.length<=78?jQuery("#mtitleInfo").html('<span style="color:green;">'+minfo+"</span> "+jQuery("#mtitleSizer").width()+" pixels"):jQuery("#mtitleInfo").html('<span style="color:red;">'+minfo+"</span> "+jQuery("#mtitleSizer").width()+" pixels"),jQuery("#techblissonlineMSnippetTitle").html(_),setPSPSeoAnalysis()}}function setDescriptionPreview(){var e,t=!1,s=jQuery("#psp_seo_meta\\[description\\]");window.wpEditorL10n&&wpEditorL10n.tinymce&&wpEditorL10n.tinymce.settings&&(t=wpEditorL10n.tinymce.settings);var r=jQuery.trim(jQuery("#psp_seo_meta\\[maxsnippet\\]").val()),i=r;parseInt(r)<0&&(r=230,i=285),jQuery.inArray(parseInt(r),[-1,0,1,2,3,4])>-1&&(r=230,i=285),""===r&&(r=230,i=285),r=parseInt(r),i=parseInt(i);var a="",n=!1,l=!1,o=jQuery("#pspPostTypeArrayFormat").text();if(e=JSON.parse(o).autogendesc,jQuery("#psp_seo_meta\\[disable_psp\\]:checked").length>0&&(n=!0),jQuery("#psp_seo_meta\\[disable_description\\]:checked").length>0&&(l=!0),""!==a||n||l||(a=jQuery.trim(jQuery("#psp_seo_meta\\[description\\]").val())),""===a){if(""===a&&t&&wp.data&&wp.data.select){var p=wp.data.select("core/editor").getEditedPostContent();return""!==e&&(a=(a=p.replace(/(<([^>]+)>)/gi,"")).substring(0,i)),a||(a=s.attr("placeholder")),void setGTBDescPreview(a)}var c=jQuery.trim(jQuery("#content").val());if(!s.val()||n||l)return""!==e&&(a=(a=c.replace(/(<([^>]+)>)/gi,"")).substring(0,i)),a||(a=s.attr("placeholder")),void setGTBDescPreview(a)}return a?void setGTBDescPreview(a):void 0}function setGTBDescPreview(e){jQuery("#psp_seo_meta\\[description\\]");var t=e;placeholder_desc=e;var s=jQuery.trim(jQuery("#psp_seo_meta\\[maxsnippet\\]").val()),r=s;parseInt(s)<0&&(s=230,r=285),jQuery.inArray(parseInt(s),[-1,0,1,2,3,4])>-1&&(s=230,r=285),""===s&&(s=230,r=285),s=parseInt(s),r=parseInt(r);var i=htmlEncode(t),a=i+=" ...";jQuery("#descriptionSizer").html(i),jQuery("#mdescriptionSizer").html(a);for(var n=new RegExp("sw+(.*)$"),l=i;l.length>s;)i=jQuery.trim(i.replace(" ...","")),l=jQuery.trim(l.replace(n,"")),t=jQuery.trim(t.replace(n,"")),l.length>=s&&(l=(l=jQuery.trim(l.replace(" ...",""))).substring(0,l.length-1),t=t.substring(0,t.length-1)),l+=" ...";i=l,jQuery("#descriptionSizer").html(i);for(var o=a;o.length>r;)a=jQuery.trim(a.replace(" ...","")),(o=jQuery.trim(o.replace(n,""))).length>=r&&(o=(o=jQuery.trim(o.replace(" ...",""))).substring(0,o.length-1)),o+=" ...";a=o,jQuery("#descriptionSizer").html(a),jQuery("body").append(jQuery("#descriptionSizer")).width(),jQuery("body").append(jQuery("#mdescriptionSizer")).width(),jQuery("body").remove("#descriptionSizer"),jQuery("body").remove("#mdescriptionSizer"),jQuery("#descriptionInfo").html(i.length+" characters, "+jQuery("#descriptionSizer").width()+" pixels, "+wordCount(i)+" words"),info=jQuery("#descriptionSizer").width()+" pixels, "+wordCount(i)+" words ",jQuery("#mdescriptionInfo").html(a.length+" characters, "+jQuery("#mdescriptionSizer").width()+" pixels, "+wordCount(a)+" words"),minfo=jQuery("#mdescriptionSizer").width()+" pixels, "+wordCount(a)+" words ",i.length<=146?jQuery("#descriptionInfo").html(info+'<span style="color:green;">'+i.length+"/~170 characters"):i.length<=160?jQuery("#descriptionInfo").html(info+'<span style="color:orange;">'+i.length+"/~170 characters</span>"):i.length<=166?jQuery("#descriptionInfo").html(info+'<span style="color:purple;">'+i.length+"/~170 characters</span>"):jQuery("#descriptionInfo").html(info+'<span style="color:red;">'+i.length+"/~170 characters</span>"),a.length<=146?jQuery("#mdescriptionInfo").html(minfo+'<span style="color:green;">'+a.length+"/~170 characters"):a.length<=160?jQuery("#mdescriptionInfo").html(minfo+'<span style="color:orange;">'+a.length+"/~170 characters</span>"):a.length<=166?jQuery("#mdescriptionInfo").html(minfo+'<span style="color:purple;">'+a.length+"/~170 characters</span>"):jQuery("#mdescriptionInfo").html(minfo+'<span style="color:red;">'+a.length+"/~170 characters</span>"),jQuery("#techblissonlineSnippetDescription").html(i),jQuery("#techblissonlineMSnippetDescription").html(a)}function pspSubscribe(){var e=!1;if(window.wpEditorL10n&&wpEditorL10n.tinymce&&wpEditorL10n.tinymce.settings&&(e=wpEditorL10n.tinymce.settings),e){var t,s=jQuery("#psp_seo_meta\\[title\\]"),r=jQuery("#psp_seo_meta\\[preferred_tax\\]"),i=jQuery("#psp_seo_meta\\[preferred_term\\]"),a=!1,n=!1,l="",o="",p=[],c=[],d="category",u="categories",h=!0,m=!0,y=jQuery.trim(jQuery("#pspHomePermalink").text())+"slug-name/",g="",j=!1,Q="",f=[];wp.data.subscribe(function(){if(l=s.val(),g=wp.data.select("core/editor").getPermalink(),permalink_change=!0,y===g&&(permalink_change=!1),y=g,g&&permalink_change)setGtbUrlPreview(g);else if(jQuery("#psp_seo_meta\\[disable_title\\]:checked").length>0&&(a=!0),jQuery("#psp_seo_meta\\[disable_psp\\]:checked").length>0&&(n=!0),r&&r.val()?(d=jQuery("#psp_seo_meta\\[preferred_tax\\] option:selected").text(),u="category"!==d?d:"categories"):u="categories",c=wp.data.select("core/editor").getEditedPostAttribute(u),arraysEqual(p,c)&&(h=!1),!l||a||n||h){if(!l||a||n){if(o=wp.data.select("core/editor").getEditedPostAttribute("title"),t===o&&(m=!1),!m&&!h)return m=!0,void(h=!0);t=o,m=!0}h=!0,p=c,Q="%"+d+"%",j||void 0===c||0!==c.length||(j=pspContainsPT(c)),void 0!==c&&c.length>0&&(f=pspSelectedTerms(c,d),j=pspContainsPT(f),Q=i&&i.val()?jQuery("#psp_seo_meta\\[preferred_term\\] option:selected").text():f[0]),(!l||a||n)&&(void 0===o&&(s=jQuery("#psp_seo_meta\\[title\\]"),o=s.attr("placeholder")),""===o&&(s=jQuery("#psp_seo_meta\\[title\\]"),o=s.attr("placeholder")),o&&Q&&setGtbTitlePreview(o,Q)),!l||a||n||Q&&setGtbTitlePreview(l,Q)}else h=!0})}}function updateDateText(){var e=htmlEncode(jQuery.trim(jQuery("#DateText").val()));e.length>0?jQuery("#resultDateText").html(e+" - "):jQuery("#resultDateText").html("")}function setPSPSeoAnalysis(){var e,t=!1,s="",r="";window.wpEditorL10n&&wpEditorL10n.tinymce&&wpEditorL10n.tinymce.settings&&(t=wpEditorL10n.tinymce.settings),t&&wp.data&&wp.data.select?(""==(r=wp.data.select("core/editor").getEditedPostContent())&&(r=wp.data.select("core/editor").getEditedPostAttribute("content")),s=wp.data.select("core/editor").getEditedPostAttribute("title")):(r=jQuery.trim(jQuery("#content").val()),s=jQuery.trim(jQuery("#title").val()));var i=[],a=0;e=r,""!=r&&(r=(r=(r=(r=r.replace(/(<([^>]+)>)/gi,"")).replace(/['"]+/g,"")).replace(/[^a-zA-Z]+/g," ")).toLowerCase(),i=r.split(/[\/\s]+/),a=i.length);var n,l=window.location.hostname,o=!1,p=!1;n=jQuery("<div />",{html:e}).find("a").map(function(){if(jQuery(this).attr("href")&&(-1==jQuery(this).attr("href").indexOf(l)&&(o=!0),-1!==jQuery(this).attr("href").indexOf(l)&&(p=!0)),""!==jQuery(this).text())return jQuery(this).text()}).get();var c;c=jQuery(e).find("img").map(function(){if(jQuery(this).attr("alt")&&""!==jQuery(this).attr("alt"))return jQuery(this).attr("alt")}).get();var d=!1,u=jQuery(e).find("img");void 0!==u&&u.length>0&&(d=!0);var h=!1,m=jQuery("<div />",{html:e}).find("h2, h3, h4, h5, h6");void 0!==m&&m.length>0&&(h=!0);var y;y=jQuery("<div />",{html:e}).find("h1").map(function(){if(""!==jQuery(this).text())return jQuery(this).text()}).get();var g;g=jQuery("<div />",{html:e}).find("h2").map(function(){if(""!==jQuery(this).text())return jQuery(this).text()}).get();var j=jQuery("#urlSizer").html(),Q=jQuery("#techblissonlineSnippetTitle").html(),f=jQuery("#techblissonlineSnippetDescription").val(),v=jQuery("#psp_seo_meta\\[description\\]").val(),w=jQuery("#psp_seo_meta\\[schema_string\\]").val(),_=!1,S=!1;""!==v&&(S=!0),""!==w&&"Invalid JSON Schema"!==w&&(_=!0);var x=jQuery.trim(jQuery("#permalinkSizer").html()),b=jQuery.trim(jQuery("#actualTitleSizer").html());jQuery("#actualTitleSizers").html(b);var T=0,P=0,z=0;""!==x&&(T=x.length),""!==x&&jQuery("#permalinkSizer").width(),""!==b&&(P=jQuery("<textarea />").html(b).text().length),""!==b&&(z=jQuery("#actualTitleSizer").width()),0==z&&(z=jQuery("#actualTitleSizers").width()-1),""!==j&&(j=j.trim());var E=0,k=0,I=0,C=0,L="",A=[0,2,4],U=[1,3,4],D=[],O=jQuery("#psp_seo_meta\\[keywords\\]").val();if(void 0!==O&&(D=O.split(",")),L+='<div class="psp-bs">',L+='<div class="container-fluid">',L+="<h1>Platinum SEO Analysis</h1>",L+='<p>This is a basic content analysis of this page and your focus keywords. Assigning a score does not mean anything and so we do not do that. Rather, make sure that all these basic recommendations are adhered to. We also recommend you to try our <a href="https://techblissonline.com/tools/" target="_blank">Techblissonline SEO Tools</a> for a detailed analysis of your pages and your competitor pages for your focus keywords, co-occuring words (related entities) and improve your content accordingly. </p>',L+='<div class="panel-group">',L+='<div class="row"><div class="col-sm-12">',L+='<div class="panel panel-primary">',L+='<div class="panel-heading">General</div>',L+='<div class="panel-body">',L+="<ul>",T>0&&T<75?L=L+'<li><span class="dashicons dashicons-yes-alt"></span> URL Length is '+T+" characters </li>":T>75&&(L=L+'<li><span class="psp-info dashicons dashicons-info"></span> URL lLength is '+T+' characters <a href="#" class="psptip" data-toggle="tooltip" data-placement="top" title="URL might get truncated in Google SERPS if it is more than 75 characters wide. "><sup><span class="dashicons dashicons-info"></span></sup></a></li>'),P>0&&P<70?L=L+'<li><span class="dashicons dashicons-yes-alt"></span> SEO Title lLength is '+P+" characters </li>":P>70&&(L=L+'<li><span class="dashicons dashicons-dismiss"></span> Actual SEO Title lLength is '+P+' characters. <a href="#" class="psptip" data-toggle="tooltip" data-placement="top" title="Title might get truncated in Google SERPS if it is more than 70 characters wide. "><sup><span class="dashicons dashicons-info"></span></sup></a></li>'),z>0&&z<574?L=L+'<li><span class="dashicons dashicons-yes-alt"></span> SEO Title pixel width is '+z+" pixels </li>":z>574&&(L=L+'<li><span class="dashicons dashicons-dismiss"></span> SEO Title pixel width is '+z+' pixels including Title format. <a href="#" class="psptip" data-toggle="tooltip" data-placement="top" title="Title might get truncated in Google SERPS if it is more than 574 pixels wide. "><sup><span class="dashicons dashicons-info"></span></sup></a></li>'),L+=S?'<li><span class="dashicons dashicons-yes-alt"></span> Platinum SEO Description is used </li>':'<li><span class="dashicons dashicons-dismiss"></span> Platinum SEO Description field is not filled in. You may have an auto-generated description. <a href="#" class="psptip" data-toggle="tooltip" data-placement="top" title="Using optimized description improves CTR from search and social engines"><sup><span class="dashicons dashicons-info"></span></sup></a></li>',L+=_?'<li><span class="dashicons dashicons-yes-alt"></span> Json Schema is used on this page using Platinum SEO </li>':'<li><span class="dashicons dashicons-dismiss"></span> Json Schema is not used on this page using Platinum SEO <a href="#" class="psptip" data-toggle="tooltip" data-placement="top" title="Using Json Schema has a positive impact on Google. Use our Schema generator tool to generate and add one in the Advanced SEO section."><sup><span class="dashicons dashicons-info"></span></sup></a></li>',""!=r&&(L=a>0&&a>500?L+'<li><span class="dashicons dashicons-yes-alt"></span> Total number of words in Content is '+a+' <a href="#" class="psptip" data-toggle="tooltip" data-placement="top" title="Content length does not matter as long as user intent is matched for the topic covered. Write related articles and link them internally "><sup><span class="dashicons dashicons-info"></span></sup></a></li>':L+'<li><span class="psp-info dashicons dashicons-info"></span> Total number of words in Content is '+a+' <a href="#" class="psptip" data-toggle="tooltip" data-placement="top" title="Content length does not matter as long as user intent is matched for the topic covered. Write related articles and link them internally "><sup><span class="dashicons dashicons-info"></span></sup></a></li>',L+=d?'<li><span class="dashicons dashicons-yes-alt"></span> Images used in Content </li>':'<li><span class="dashicons dashicons-dismiss"></span> Images not used in Content <a href="#" class="psptip" data-toggle="tooltip" data-placement="top" title="Using relevant high quality images can increase user engagement and bring in more traffic"><sup><span class="dashicons dashicons-info"></span></sup></a></li>',L+=p?'<li><span class="dashicons dashicons-yes-alt"></span> Internal links used in content. </li>':'<li><span class="dashicons dashicons-dismiss"></span> Internal links not used in Content <a href="#" class="psptip" data-toggle="tooltip" data-placement="top" title="Linking to other relevant internal resources improves Time on site. "><sup><span class="dashicons dashicons-info"></span></sup></a></li>',L+=o?'<li><span class="dashicons dashicons-yes-alt"></span> External links found in content. Referring to an authoritative source on which the underlying research for the content was done or linking to the creator of the product the page is about, is always a good practice that improves trust. </li>':'<li><span class="psp-info dashicons dashicons-info"></span> External links not found in Content.Referring to an authoritative source on which the underlying research for the content was done or linking to the creator of the product this page is about, is always a good practice that improves trust. <a href="#" class="psptip" data-toggle="tooltip" data-placement="top" title="Linking to other relevant external resources as references improves trust on content. "><sup><span class="dashicons dashicons-info"></span></sup></a></li>',h&&(L+='<li><span class="dashicons dashicons-yes-alt"></span> Subheaders like h2 are used in Content </li>')),L+="</ul>",L+="</div>",L+="</div>",L+="</div></div>",(void 0!==D||D.length<1)&&""==O)return L+="</div>",L+="</div></div>",void jQuery("#techblissonlineseoanalysis").html(L);jQuery.each(D,function(e,t){if(E=0,k=0,I=0,C=0,searchlc=t.toLowerCase().trim(),!(""==searchlc||e>4)){if(jQuery.each([y,g,c,n],function(e,t){jQuery.each(t,function(t,s){-1!==s.toLowerCase().trim().indexOf(searchlc)&&(0==e&&(E+=1),1==e&&(k+=1),2==e&&(I+=1),3==e&&(C+=1))})}),jQuery.inArray(parseInt(e),A)>-1&&(L+='<div class="row">'),L+='<div class="col-sm-6">',L=(L+='<div class="panel panel-primary">')+'<div class="panel-heading">'+t+"</div>",L+='<div class="panel-body">',L+="<ul>",j&&(searchlcurl=searchlc.replace(/ /g,"-"),-1!==j.search(searchlcurl)?L+='<li><span class="dashicons dashicons-yes-alt"></span> Used in URL </li>':L+='<li><span class="dashicons dashicons-dismiss"></span> Not used in URL </li>'),Q&&(psplctitle=Q.toLowerCase().trim(),-1!==psplctitle.search(searchlc)?(L+='<li><span class="dashicons dashicons-yes-alt"></span> Used in Title </li>',psplctitle.indexOf(searchlc)<20?L+='<li><span class="dashicons dashicons-yes-alt"></span> Found in the beginning of Title </li>':L+='<li><span class="dashicons dashicons-dismiss"></span> Not found in the beginning of Title </li>'):L+='<li><span class="dashicons dashicons-dismiss"></span> Not used in Title </li>'),f&&(psplcdesc=f.toLowerCase().trim(),-1!==psplcdesc.search(searchlc)?(psplcdesc,L+='<li><span class="dashicons dashicons-yes-alt"></span> Used in Meta Description </li>'):L+='<li><span class="dashicons dashicons-dismiss"></span> Not used in Meta Description </li>'),s&&(psplcwptitle=s.toLowerCase().trim(),-1!==psplcwptitle.search(searchlc)?L+='<li><span class="dashicons dashicons-yes-alt"></span> Used in h1 tag (Wordpress Title) </li>':L+='<li><span class="dashicons dashicons-dismiss"></span> Not used in h1 tag (Wordpress Title) </li>'),L+="</ul>",""==r)return L+="</div>",L+="</div>",L+="</div>",void(jQuery.inArray(parseInt(e),U)>-1&&(L+="</div>"));var l,o=[];o=(l=pspGetCounOfIndices(searchlc,i,!1))[1],pspkd=0,pspkeycounter=0,a>0&&o&&(pspkd=o.length/a*100);var p=l[0];p&&(pspkeycounter=p.length),L+="<ul>",o.length>0?(L=pspkd.toFixed(2)<3?L+'<li><span class="dashicons dashicons-yes-alt"></span> Used in content '+o.length+" time(s) </li>":L+'<li><span class="dashicons dashicons-dismiss"></span> Used in content '+o.length+" time(s) </li>",pspkeycounter>0&&pspkeycounter<6?L=L+'<li><li><span class="dashicons dashicons-yes-alt"></span> Found in first 100 words of content '+pspkeycounter+" time(s) </li>":0==pspkeycounter?L+='<li><span class="dashicons dashicons-dismiss"></span> Not found in first 100 words of content </li>':L=L+'<li><span class="dashicons dashicons-dismiss"></span> Found in first 100 words of content '+pspkeycounter+" time(s) </li>",L=pspkd.toFixed(2)<3?L+'<li><span class="dashicons dashicons-yes-alt"></span> Keyword Density of '+t+" is "+pspkd.toFixed(2):L+'<li><span class="dashicons dashicons-dismiss"></span> Keyword Density of '+t+" is "+pspkd.toFixed(2)):L+='<li><span class="dashicons dashicons-dismiss"></span> Not used in Content </li>',E>0&&(L=L+'<li><span class="dashicons dashicons-yes-alt"></span> Used in other h1 tags '+E+" time(s) </li>"),k>0?L=L+'<li><span class="dashicons dashicons-yes-alt"></span> Used in h2 tags '+k+" time(s) </li>":L+='<li><span class="dashicons dashicons-dismiss"></span> Not used in h2 tags </li>',I>0?L=L+'<li><span class="dashicons dashicons-yes-alt"></span> Used in image alt attributes '+I+" time(s) </li>":L+='<li><span class="dashicons dashicons-dismiss"></span> Not used in image alt attributes </li>',C>0?L=L+'<li><span class="dashicons dashicons-yes-alt"></span> Used in anchor texts '+C+" time(s) </li>":L+='<li><span class="dashicons dashicons-dismiss"></span> Not used in anchor texts </li>',L+="</ul>",L+="</div>",L+="</div>",L+="</div>",jQuery.inArray(parseInt(e),U)>-1&&(L+="</div>")}}),L+="</div>",L+="</div></div>",jQuery("#techblissonlineseoanalysis").html(L)}function pspGetCounOfIndices(e,t,s){if(0==e.length)return[];var r,i=[],a=[],n=[];s||(e=e.toLowerCase()),r=t.length;for(let n=0;n<r;n++)str=t[n],str&&(s||(str=str.toLowerCase()),str.indexOf(e,0)>-1&&(a.push(str),n<100&&i.push(str)));return n.push(i),n.push(a),n}function updateAll(){setUrlPreview(),setTitlePreview(),setDescriptionPreview()}String.prototype.trimEnd=function(e){e=e||" ";for(var t=this.length-1;t>=0&&this.charAt(t)==e;t--);return this.substring(0,t+1)},jQuery(document).ready(function(){jQuery("#URL").keyup(function(){setUrlPreview()}),jQuery(document).on("keyup","#new-post-slug",function(){setUrlPreview()}),jQuery(document).on("click",".cancel, .save",function(){setUrlPreview()}),jQuery('input[name="post_category[]"]').click(function(){setTitlePreview()}),jQuery("input[name^='tax_input[']").click(function(){setTitlePreview()}),jQuery("#psp_seo_meta\\[title\\]").keyup(function(){setTitlePreview()}),jQuery("#title").keyup(function(){setTitlePreview()}),jQuery("#name").keyup(function(){setTitlePreview()}),jQuery("#psp_seo_meta\\[titleformat\\]").bind("change",function(){setTitlePreview()}),jQuery("#psp_seo_meta\\[titleformat\\]").on("change",function(){setTitlePreview()}),jQuery("#psp_seo_meta\\[preferred_tax\\]").on("change",function(){pspPopulateTerms(),setTitlePreview()}),jQuery("#psp_seo_meta\\[preferred_term\\]").on("focus",function(){previousTerm=jQuery(this).val(),jQuery(this).attr("oldValue",previousTerm)}).on("change",function(){isTermSelected(),setTitlePreview()}),jQuery("#psp_seo_meta\\[disable_title_format\\]").on("change",function(){setTitlePreview()}),jQuery("#psp_seo_meta\\[disable_title\\]").on("change",function(){setTitlePreview()}),jQuery("#psp_seo_meta\\[disable_psp\\]").on("change",function(){setTitlePreview(),setDescriptionPreview()}),jQuery("#psp_seo_meta\\[disable_description\\]").on("change",function(){setDescriptionPreview()}),jQuery("#psp_seo_meta\\[description\\]").keyup(function(){setDescriptionPreview()}),jQuery("#content").keyup(function(){setDescriptionPreview()}),jQuery("#psp_seo_meta\\[maxsnippet\\]").on("change",function(){setDescriptionPreview()}),jQuery("#DateText").keyup(function(){updateDateText()}),jQuery("#psp_seo_meta\\[keywords\\]").keyup(function(){setPSPSeoAnalysis()}),jQuery("#psp_analyse_btn").on("click",function(){setPSPSeoAnalysis()}),updateAll(),pspSubscribe()});
psp-include/settings/psp_analysis_metabox_renderer.php CHANGED
@@ -16,7 +16,7 @@ Author URI: https://techblissonline.com/
16
  <td><input type="text" name="psp_seo_meta[keywords]" id="psp_seo_meta[keywords]" value="<?php echo ( isset($psp_seo_meta['keywords']) ? esc_attr($psp_seo_meta['keywords']) : ''); ?>"><br />
17
  <p class="description"><?php esc_html_e('Set comma separated keywords or entities for this post/page. These are used as the Focus or primary keywords for Platinum SEO Analysis of this page. If you intend using these in meta keywords tag, which is not supported by Google and many other Search Engines, you should turn it on sitewide in Platinum SEO General setthings. By default, these are used for your internal Post/Page analysis only.', 'platinum-seo-pack'); ?></p>
18
  <p class="description"><strong><?php esc_html_e('Enter comma separated focus keywords in the input above and find the analysis below', 'platinum-seo-pack'); ?></strong></p>
19
- <div class="psp-bs"><input style="width:20%;display:block;margin:auto" id="psp_analyse_btn" class="psp_analyser btn btn-primary" type="hidden" value="Analyse" /></div>
20
  </td>
21
  </tr>
22
  </table>
16
  <td><input type="text" name="psp_seo_meta[keywords]" id="psp_seo_meta[keywords]" value="<?php echo ( isset($psp_seo_meta['keywords']) ? esc_attr($psp_seo_meta['keywords']) : ''); ?>"><br />
17
  <p class="description"><?php esc_html_e('Set comma separated keywords or entities for this post/page. These are used as the Focus or primary keywords for Platinum SEO Analysis of this page. If you intend using these in meta keywords tag, which is not supported by Google and many other Search Engines, you should turn it on sitewide in Platinum SEO General setthings. By default, these are used for your internal Post/Page analysis only.', 'platinum-seo-pack'); ?></p>
18
  <p class="description"><strong><?php esc_html_e('Enter comma separated focus keywords in the input above and find the analysis below', 'platinum-seo-pack'); ?></strong></p>
19
+ <div class="psp-bs"><input style="width:20%;display:block;margin:auto" id="psp_analyse_btn" class="psp_analyser btn btn-primary" type="button" value="Analyse" /></div>
20
  </td>
21
  </tr>
22
  </table>
psp-include/settings/psp_basic_metabox_renderer.php CHANGED
@@ -119,6 +119,7 @@ label {
119
  </style>
120
  <div id="psp-basic">
121
  <div id="psp-basic-settings">
 
122
  <table class="form-table">
123
  <tr class="form-field">
124
  <th style="width:20%;" scope="row" valign="top"><label for="psp_seo_meta[title]"><?php esc_html_e('SEO Title: ', 'platinum-seo-pack'); ?></label><br /><?php if ($psp_type == "posttype" && (!$psp_posttype_metabox_advanced_hidden || is_super_admin())) { ?><?php if( isset($psp_seo_meta['disable_title']) && $psp_seo_meta['disable_title']) { $distit_checked = ' checked="checked" '; } else { $distit_checked = ""; }
@@ -178,6 +179,15 @@ label {
178
  } ?></select><p class="description"><?php esc_html_e(' Select the preferred taxonomy whose term you prefer to use for this page, if the page is tagged to multiple taxonomies.', 'platinum-seo-pack'); ?></p>
179
  </td>
180
  </tr>
 
 
 
 
 
 
 
 
 
181
  <?php }} ?>
182
  <?php if ($psp_type == "posttype" && (!$psp_posttype_metabox_advanced_hidden || is_super_admin())) { ?>
183
  <tr class="form-field">
119
  </style>
120
  <div id="psp-basic">
121
  <div id="psp-basic-settings">
122
+ <input type="hidden" name="psp_terms_json_str" id="psp_terms_json_str" value='<?php echo ( isset($psp_bc_tax_terms_string) ? $psp_bc_tax_terms_string : ''); ?>' />
123
  <table class="form-table">
124
  <tr class="form-field">
125
  <th style="width:20%;" scope="row" valign="top"><label for="psp_seo_meta[title]"><?php esc_html_e('SEO Title: ', 'platinum-seo-pack'); ?></label><br /><?php if ($psp_type == "posttype" && (!$psp_posttype_metabox_advanced_hidden || is_super_admin())) { ?><?php if( isset($psp_seo_meta['disable_title']) && $psp_seo_meta['disable_title']) { $distit_checked = ' checked="checked" '; } else { $distit_checked = ""; }
179
  } ?></select><p class="description"><?php esc_html_e(' Select the preferred taxonomy whose term you prefer to use for this page, if the page is tagged to multiple taxonomies.', 'platinum-seo-pack'); ?></p>
180
  </td>
181
  </tr>
182
+ <tr class="form-field">
183
+ <th style="width:20%;" scope="row" valign="top"><label for="psp_seo_meta[preferred_term]"><?php esc_html_e('Preferred Term for this Page: ', 'platinum-seo-pack'); ?></label></th>
184
+ <td><select id="psp_seo_meta[preferred_term]" name="psp_seo_meta[preferred_term]" oldValue=""><?php
185
+ foreach($psp_bc_tax_term_items as $key => $val) {
186
+ $selected = (isset($psp_seo_meta['preferred_term']) && $psp_seo_meta['preferred_term']==$key) ? 'selected="selected"' : '';
187
+ echo "<option value='".esc_attr($key)."' ".esc_attr($selected).">".esc_html($val)."</option>";
188
+ } ?></select><p class="description"><?php esc_html_e(' Select the preferred Term under the selected Preferred Taxonomy that you like to use for this page.', 'platinum-seo-pack'); ?></p>
189
+ </td>
190
+ </tr>
191
  <?php }} ?>
192
  <?php if ($psp_type == "posttype" && (!$psp_posttype_metabox_advanced_hidden || is_super_admin())) { ?>
193
  <tr class="form-field">
psp-include/settings/psp_settings.php CHANGED
@@ -15,6 +15,7 @@ class PspSettings {
15
 
16
  public $custom_taxonomies = array();
17
  public $custom_post_types = array();
 
18
  public $psp_wmt_instance;
19
  public $psp_tools_instance;
20
  public $psp_pre_instance;
@@ -2842,7 +2843,7 @@ class PspSettings {
2842
  wp_enqueue_media();
2843
  wp_enqueue_script( 'psp-meta-box', plugins_url( '/js/pspmetabox.js', __FILE__ ), array( 'jquery-ui-tabs') );
2844
  //wp_enqueue_script( 'psp-image-uploader', plugins_url( '/js/pspmediauploader.js', __FILE__ ), array( 'jquery' ) );
2845
- wp_enqueue_script( 'psp-meta-box-snippet', plugins_url( '/js/snippetpreview.js', __FILE__ ),'', '2.1.2');
2846
  //wp_enqueue_script( 'psp-social', plugins_url( '/js/pspsocialhandler.js', __FILE__ ), array( 'jquery' ) );
2847
  //wp_enqueue_script( 'psp-cm', plugins_url( '/js/cm.js', __FILE__ ), array(), false, true);
2848
 
@@ -3088,7 +3089,7 @@ class PspSettings {
3088
  //wp_enqueue_media();
3089
  wp_enqueue_script( 'psp-meta-box', plugins_url( '/js/pspmetabox.js', __FILE__ ), array( 'jquery-ui-tabs') );
3090
  //wp_enqueue_script( 'psp-image-uploader', plugins_url( '/js/pspmediauploader.js', __FILE__ ), array( 'jquery' ) );
3091
- wp_enqueue_script( 'psp-meta-box-snippet', plugins_url( '/js/snippetpreview.js', __FILE__ ), '', '2.1.2');
3092
  //wp_enqueue_script( 'psp-social', plugins_url( '/js/pspsocialhandler.js', __FILE__ ), array( 'jquery' ) );
3093
 
3094
  $psp_cm_json_settings['codeEditor'] = wp_enqueue_code_editor(array('type' => 'json', 'codemirror'=> array('autoRefresh' => true)));
@@ -3330,7 +3331,7 @@ class PspSettings {
3330
  //wp_enqueue_media();
3331
  wp_enqueue_script( 'psp-meta-box', plugins_url( '/js/pspmetabox.js', __FILE__ ), array('jquery', 'jquery-ui-tabs' ) );
3332
  //wp_enqueue_script( 'psp-image-uploader', plugins_url( '/js/pspmediauploader.js', __FILE__ ), array( 'jquery' ) );
3333
- wp_enqueue_script( 'psp-meta-box-snippet', plugins_url( '/js/snippetpreview.js', __FILE__ ), '', '2.1.2');
3334
  //wp_enqueue_script( 'psp-social', plugins_url( '/js/pspsocialhandler.js', __FILE__ ), array( 'jquery' ) );
3335
 
3336
  $psp_cm_json_settings['codeEditor'] = wp_enqueue_code_editor(array('type' => 'json', 'codemirror'=> array('autoRefresh' => true)));
@@ -3559,6 +3560,8 @@ class PspSettings {
3559
  $psp_post_meta['redirect_status_code'] = !empty($wp_post_meta_data_arr['_techblissonline_psp_redirect_status_code'][0]) ? esc_attr($wp_post_meta_data_arr['_techblissonline_psp_redirect_status_code'][0]) : '';
3560
  $psp_post_meta['preferred_tax'] = !empty($wp_post_meta_data_arr['_techblissonline_psp_preferred_taxonomy'][0]) ? esc_attr($wp_post_meta_data_arr['_techblissonline_psp_preferred_taxonomy'][0]) : '';
3561
 
 
 
3562
  $psp_post_disablers = !empty($wp_post_meta_data_arr['_techblissonline_psp_disable_flags'][0]) ? unserialize($wp_post_meta_data_arr['_techblissonline_psp_disable_flags'][0]) : array();
3563
  //$psp_social_meta = unserialize($wp_post_meta_data_arr['_techblissonline_psp_social_data'][0]);
3564
 
@@ -3643,6 +3646,51 @@ class PspSettings {
3643
  $psp_taxonomies = array_combine($psp_all_taxonomies, $psp_all_taxonomies);
3644
  $default = array( "" => "Select a Taxonomy" );
3645
  $psp_bc_taxonomies = array_merge((array)$default, (array)$psp_taxonomies);
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
3646
  //available tags array
3647
  //$pspavailableTags = ['seo_title', 'wp_title', 'category', 'site_name', 'site_description'];
3648
  $pspavailableTags = ['sep', 'seo_title', 'wp_title', 'taxonomy', 'site_name', 'site_description'];
@@ -4118,6 +4166,14 @@ class PspSettings {
4118
  delete_metadata( 'platinumseo', $post_id, '_techblissonline_psp_preferred_taxonomy');
4119
  }
4120
 
 
 
 
 
 
 
 
 
4121
  //update disable flags
4122
  $psp_post_seo_data_disablers = array();
4123
 
@@ -4678,6 +4734,29 @@ class PspSettings {
4678
  }
4679
  }
4680
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
4681
  $psp_sanitized_seo_data['disable_title'] = '';
4682
  if ( isset( $psp_seo_data['disable_title'] ) ) {
4683
  $psp_sanitized_seo_data['disable_title'] = !is_null(filter_var($psp_seo_data['disable_title'],FILTER_VALIDATE_BOOLEAN,FILTER_NULL_ON_FAILURE)) ? $psp_seo_data['disable_title'] : '';
15
 
16
  public $custom_taxonomies = array();
17
  public $custom_post_types = array();
18
+ public $psp_bc_tax_term_items = array();
19
  public $psp_wmt_instance;
20
  public $psp_tools_instance;
21
  public $psp_pre_instance;
2843
  wp_enqueue_media();
2844
  wp_enqueue_script( 'psp-meta-box', plugins_url( '/js/pspmetabox.js', __FILE__ ), array( 'jquery-ui-tabs') );
2845
  //wp_enqueue_script( 'psp-image-uploader', plugins_url( '/js/pspmediauploader.js', __FILE__ ), array( 'jquery' ) );
2846
+ wp_enqueue_script( 'psp-meta-box-snippet', plugins_url( '/js/snippetpreview.js', __FILE__ ),'', '2.1.4');
2847
  //wp_enqueue_script( 'psp-social', plugins_url( '/js/pspsocialhandler.js', __FILE__ ), array( 'jquery' ) );
2848
  //wp_enqueue_script( 'psp-cm', plugins_url( '/js/cm.js', __FILE__ ), array(), false, true);
2849
 
3089
  //wp_enqueue_media();
3090
  wp_enqueue_script( 'psp-meta-box', plugins_url( '/js/pspmetabox.js', __FILE__ ), array( 'jquery-ui-tabs') );
3091
  //wp_enqueue_script( 'psp-image-uploader', plugins_url( '/js/pspmediauploader.js', __FILE__ ), array( 'jquery' ) );
3092
+ wp_enqueue_script( 'psp-meta-box-snippet', plugins_url( '/js/snippetpreview.js', __FILE__ ), '', '2.1.4');
3093
  //wp_enqueue_script( 'psp-social', plugins_url( '/js/pspsocialhandler.js', __FILE__ ), array( 'jquery' ) );
3094
 
3095
  $psp_cm_json_settings['codeEditor'] = wp_enqueue_code_editor(array('type' => 'json', 'codemirror'=> array('autoRefresh' => true)));
3331
  //wp_enqueue_media();
3332
  wp_enqueue_script( 'psp-meta-box', plugins_url( '/js/pspmetabox.js', __FILE__ ), array('jquery', 'jquery-ui-tabs' ) );
3333
  //wp_enqueue_script( 'psp-image-uploader', plugins_url( '/js/pspmediauploader.js', __FILE__ ), array( 'jquery' ) );
3334
+ wp_enqueue_script( 'psp-meta-box-snippet', plugins_url( '/js/snippetpreview.js', __FILE__ ), '', '2.1.4');
3335
  //wp_enqueue_script( 'psp-social', plugins_url( '/js/pspsocialhandler.js', __FILE__ ), array( 'jquery' ) );
3336
 
3337
  $psp_cm_json_settings['codeEditor'] = wp_enqueue_code_editor(array('type' => 'json', 'codemirror'=> array('autoRefresh' => true)));
3560
  $psp_post_meta['redirect_status_code'] = !empty($wp_post_meta_data_arr['_techblissonline_psp_redirect_status_code'][0]) ? esc_attr($wp_post_meta_data_arr['_techblissonline_psp_redirect_status_code'][0]) : '';
3561
  $psp_post_meta['preferred_tax'] = !empty($wp_post_meta_data_arr['_techblissonline_psp_preferred_taxonomy'][0]) ? esc_attr($wp_post_meta_data_arr['_techblissonline_psp_preferred_taxonomy'][0]) : '';
3562
 
3563
+ $psp_post_meta['preferred_term'] = !empty($wp_post_meta_data_arr['_techblissonline_psp_preferred_term'][0]) ? esc_attr($wp_post_meta_data_arr['_techblissonline_psp_preferred_term'][0]) : '';
3564
+
3565
  $psp_post_disablers = !empty($wp_post_meta_data_arr['_techblissonline_psp_disable_flags'][0]) ? unserialize($wp_post_meta_data_arr['_techblissonline_psp_disable_flags'][0]) : array();
3566
  //$psp_social_meta = unserialize($wp_post_meta_data_arr['_techblissonline_psp_social_data'][0]);
3567
 
3646
  $psp_taxonomies = array_combine($psp_all_taxonomies, $psp_all_taxonomies);
3647
  $default = array( "" => "Select a Taxonomy" );
3648
  $psp_bc_taxonomies = array_merge((array)$default, (array)$psp_taxonomies);
3649
+ //build tax terms
3650
+ $psp_bc_tax_terms = array();
3651
+ $psp_bc_tax_term_items = array( "" => "Select a Term" );
3652
+ $psp_bc_tax_terms_string = "";
3653
+ foreach($psp_bc_taxonomies as $key => $val) {
3654
+
3655
+ $taxonomyterms = array();
3656
+
3657
+ $termobjects = get_terms( array(
3658
+ 'taxonomy' => $key,
3659
+ 'hide_empty' => false,
3660
+ ) );
3661
+
3662
+ if ( ! empty( $termobjects ) && ! is_wp_error( $termobjects ) ){
3663
+ $i = 0;
3664
+ foreach ( $termobjects as $termobject ) {
3665
+
3666
+ if (isset($psp_seo_meta['preferred_tax']) && $psp_seo_meta['preferred_tax']==$key) {
3667
+ $psp_bc_tax_term_items[$termobject->term_id] = $termobject->name;
3668
+ }
3669
+
3670
+ $taxonomyterms[$i]["id"] = '"'.$termobject->term_id.'"';
3671
+ $taxonomyterms[$i]["name"] = $termobject->name;
3672
+ $i = $i + 1;
3673
+ }
3674
+
3675
+ if ( ! empty( $taxonomyterms ) ) {
3676
+ //$psp_bc_tax_terms_arr[$key] = $taxonomyterms;
3677
+ //$psp_bc_tax_terms[$key] = '['.str_replace('""', '"', wp_unslash(json_encode($taxonomyterms))).']';
3678
+ $psp_bc_tax_terms[$key] = str_replace('""', '"', wp_unslash(json_encode($taxonomyterms)));
3679
+ }
3680
+
3681
+ }
3682
+
3683
+ }
3684
+ //error_log(print_r($psp_bc_tax_term_items, true));
3685
+ $this->psp_bc_tax_term_items = $psp_bc_tax_term_items;
3686
+ //error_log(print_r($this->psp_bc_tax_term_items, true));
3687
+ $psp_search_arr = array('"[', ']"');
3688
+ $psp_replace_arr = array('[', ']');
3689
+ $psp_bc_tax_terms_json = json_encode($psp_bc_tax_terms);
3690
+ //$psp_bc_tax_terms_string = '['.str_replace($psp_search_arr, $psp_replace_arr, wp_unslash($psp_bc_tax_terms_json)) .']';
3691
+ $psp_bc_tax_terms_string = str_replace($psp_search_arr, $psp_replace_arr, wp_unslash($psp_bc_tax_terms_json)) ;
3692
+
3693
+
3694
  //available tags array
3695
  //$pspavailableTags = ['seo_title', 'wp_title', 'category', 'site_name', 'site_description'];
3696
  $pspavailableTags = ['sep', 'seo_title', 'wp_title', 'taxonomy', 'site_name', 'site_description'];
4166
  delete_metadata( 'platinumseo', $post_id, '_techblissonline_psp_preferred_taxonomy');
4167
  }
4168
 
4169
+ if (!empty($psp_post_seo_data['preferred_term'])) {
4170
+ //update_post_meta( $post_id, '_techblissonline_psp_preferred_term', $psp_post_seo_data['preferred_term'] );
4171
+ update_metadata( 'platinumseo', $post_id, '_techblissonline_psp_preferred_term', $psp_post_seo_data['preferred_term'] );
4172
+ } else {
4173
+ //delete_post_meta( $post_id, '_techblissonline_psp_preferred_term');
4174
+ delete_metadata( 'platinumseo', $post_id, '_techblissonline_psp_preferred_term');
4175
+ }
4176
+
4177
  //update disable flags
4178
  $psp_post_seo_data_disablers = array();
4179
 
4734
  }
4735
  }
4736
 
4737
+ $psp_sanitized_seo_data['preferred_term'] = '';
4738
+ if ( isset( $psp_seo_data['preferred_term'] ) ) {
4739
+ if ( !empty( $psp_sanitized_seo_data['preferred_tax'] ) ) {
4740
+
4741
+ $psp_sanitized_seo_data['preferred_term'] = sanitize_text_field( $psp_seo_data['preferred_term'] );
4742
+ $psp_bc_tax_term_items = array();
4743
+ $termobjects = get_terms( array(
4744
+ 'taxonomy' => $psp_sanitized_seo_data['preferred_tax'],
4745
+ 'hide_empty' => true,
4746
+ ) );
4747
+ if ( ! empty( $termobjects ) ) {
4748
+ foreach ( $termobjects as $term ) {
4749
+ $psp_bc_tax_term_items[] = $term->term_id;
4750
+ }
4751
+ }
4752
+ //$psp_bc_tax_term_items = $this->psp_bc_tax_term_items;
4753
+ //error_log(print_r($psp_bc_tax_term_items, true));
4754
+ if (!in_array($psp_sanitized_seo_data['preferred_term'], $psp_bc_tax_term_items)) {
4755
+ $psp_sanitized_seo_data['preferred_term'] = '';
4756
+ }
4757
+ }
4758
+ }
4759
+
4760
  $psp_sanitized_seo_data['disable_title'] = '';
4761
  if ( isset( $psp_seo_data['disable_title'] ) ) {
4762
  $psp_sanitized_seo_data['disable_title'] = !is_null(filter_var($psp_seo_data['disable_title'],FILTER_VALIDATE_BOOLEAN,FILTER_NULL_ON_FAILURE)) ? $psp_seo_data['disable_title'] : '';
psp-include/sitemap/sitemap-image.xsl CHANGED
@@ -93,7 +93,7 @@
93
  </a>
94
  </td>
95
  <td>
96
- <xsl:value-of select="concat(substring(sitemap:lastmod,0,10),concat(' ', substring(sitemap:lastmod,12,8)))"/>
97
  </td>
98
  <xsl:for-each select="image:image">
99
  <tr class="image">
93
  </a>
94
  </td>
95
  <td>
96
+ <xsl:value-of select="concat(substring(sitemap:lastmod,0,11),concat(' ', substring(sitemap:lastmod,12,8)))"/>
97
  </td>
98
  <xsl:for-each select="image:image">
99
  <tr class="image">
psp-include/utilities/psp_helper.php CHANGED
@@ -19,7 +19,7 @@ class PspHelper {
19
  * as description. Touch only if you know what you're doing
20
  */
21
  private $min_description_length = 1;
22
- private $version = "2.1.3";
23
 
24
  public $sitename = "";
25
  public $sitedescription = "";
19
  * as description. Touch only if you know what you're doing
20
  */
21
  private $min_description_length = 1;
22
+ private $version = "2.1.4";
23
 
24
  public $sitename = "";
25
  public $sitedescription = "";
psp_main.php CHANGED
@@ -104,6 +104,10 @@ class PspMain {
104
  if ($psp_hide_feed_links) {
105
  remove_action('wp_head','feed_links_extra', 3);
106
  remove_action( 'wp_head', 'feed_links', 2 );
 
 
 
 
107
  }
108
  //hide rsd link
109
  $psp_hide_rsd_link = isset($psp_settings['hide_rsd_link']) ? $psp_settings['hide_rsd_link'] : '';
@@ -276,12 +280,97 @@ class PspMain {
276
  'psp_ignore_notice' => '1',
277
  'action' => 'psp_delete_adminnotice',
278
  'nonce' => wp_create_nonce('psp_delete_adminnotice'),
279
- ] ) ) .'" style="float:right; display:block; border:none;">'.esc_html__( 'Dismiss permanently', 'platinum-seo-pack' ) .'</a>'.'<br>'. esc_html__( 'See What has Changed in this', 'platinum-seo-pack' ).'<a href="https://techblissonline.com/platinum-wordpress-seo-plugin/#what-is-new" target="_blank"> '.esc_html__( ' Version ', 'platinum-seo-pack' ).'2.1.3'.esc_html__( ' and earlier Versions!', 'platinum-seo-pack' ) .'</a>'; ?></p></strong>
280
  </div>
281
- <?php
282
  }
283
  }
284
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
285
  public function psp_disable_404_redirect_guessing( $url ) {
286
  return ( is_404() ) ? false : $url;
287
  }
104
  if ($psp_hide_feed_links) {
105
  remove_action('wp_head','feed_links_extra', 3);
106
  remove_action( 'wp_head', 'feed_links', 2 );
107
+ } else {
108
+ remove_action('wp_head','feed_links_extra', 3);
109
+ add_action('wp_head', array($this, 'psp_feed_links_extra'), 10, 1);
110
+ add_filter('feed_links_show_comments_feed', array($this, 'psp_feed_links_show_comments_feed'), 10, 1);
111
  }
112
  //hide rsd link
113
  $psp_hide_rsd_link = isset($psp_settings['hide_rsd_link']) ? $psp_settings['hide_rsd_link'] : '';
280
  'psp_ignore_notice' => '1',
281
  'action' => 'psp_delete_adminnotice',
282
  'nonce' => wp_create_nonce('psp_delete_adminnotice'),
283
+ ] ) ) .'" style="float:right; display:block; border:none;">'.esc_html__( 'Dismiss permanently', 'platinum-seo-pack' ) .'</a>'.'<br>'. esc_html__( 'See What has Changed in this', 'platinum-seo-pack' ).'<a href="https://techblissonline.com/platinum-wordpress-seo-plugin/#what-is-new" target="_blank" rel="noopener"> '.esc_html__( ' Version ', 'platinum-seo-pack' ).'2.1.4'.esc_html__( ' and earlier Versions!', 'platinum-seo-pack' ) .'</a>'.'<br>'.esc_html__( 'Like this Plugin? Pls. give it a rating WordPress plugin Page', 'platinum-seo-pack' ).'<a href="https://wordpress.org/plugins/platinum-seo-pack/" target="_blank" rel="noopener">'.esc_html__(' here','platinum-seo-pack' ).'</a>'; ?></p></strong>
284
  </div>
285
+ <?php
286
  }
287
  }
288
 
289
+ public function psp_feed_links_show_comments_feed( $show=true ) {
290
+ return false;
291
+ }
292
+
293
+ public function psp_feed_links_extra( $args = array() ) {
294
+ $defaults = array(
295
+ /* translators: Separator between blog name and feed type in feed links. */
296
+ 'separator' => _x( '&raquo;', 'feed link' ),
297
+ /* translators: 1: Blog name, 2: Separator (raquo), 3: Post title. */
298
+ 'singletitle' => __( '%1$s %2$s %3$s Comments Feed' ),
299
+ /* translators: 1: Blog name, 2: Separator (raquo), 3: Category name. */
300
+ 'cattitle' => __( '%1$s %2$s %3$s Category Feed' ),
301
+ /* translators: 1: Blog name, 2: Separator (raquo), 3: Tag name. */
302
+ 'tagtitle' => __( '%1$s %2$s %3$s Tag Feed' ),
303
+ /* translators: 1: Blog name, 2: Separator (raquo), 3: Term name, 4: Taxonomy singular name. */
304
+ 'taxtitle' => __( '%1$s %2$s %3$s %4$s Feed' ),
305
+ /* translators: 1: Blog name, 2: Separator (raquo), 3: Author name. */
306
+ 'authortitle' => __( '%1$s %2$s Posts by %3$s Feed' ),
307
+ /* translators: 1: Blog name, 2: Separator (raquo), 3: Search query. */
308
+ 'searchtitle' => __( '%1$s %2$s Search Results for &#8220;%3$s&#8221; Feed' ),
309
+ /* translators: 1: Blog name, 2: Separator (raquo), 3: Post type name. */
310
+ 'posttypetitle' => __( '%1$s %2$s %3$s Feed' ),
311
+ );
312
+
313
+ $args = wp_parse_args( $args, $defaults );
314
+
315
+ if ( is_singular() ) {
316
+ $id = 0;
317
+ $post = get_post( $id );
318
+
319
+ if ( comments_open() || pings_open() || $post->comment_count > 0 ) {
320
+ $title = sprintf( $args['singletitle'], get_bloginfo( 'name' ), $args['separator'], the_title_attribute( array( 'echo' => false ) ) );
321
+ $href = get_post_comments_feed_link( $post->ID );
322
+
323
+ if ( isset( $title ) && isset( $href ) ) {
324
+ echo '<link rel="alternate nofollow" type="' . feed_content_type() . '" title="' . esc_attr( $title ) . '" href="' . esc_url( $href ) . '" />' . "\n";
325
+ }
326
+ return;
327
+ }
328
+ } elseif ( is_post_type_archive() ) {
329
+ $post_type = get_query_var( 'post_type' );
330
+ if ( is_array( $post_type ) ) {
331
+ $post_type = reset( $post_type );
332
+ }
333
+
334
+ $post_type_obj = get_post_type_object( $post_type );
335
+ $title = sprintf( $args['posttypetitle'], get_bloginfo( 'name' ), $args['separator'], $post_type_obj->labels->name );
336
+ $href = get_post_type_archive_feed_link( $post_type_obj->name );
337
+ } elseif ( is_category() ) {
338
+ $term = get_queried_object();
339
+
340
+ if ( $term ) {
341
+ $title = sprintf( $args['cattitle'], get_bloginfo( 'name' ), $args['separator'], $term->name );
342
+ $href = get_category_feed_link( $term->term_id );
343
+ }
344
+ } elseif ( is_tag() ) {
345
+ $term = get_queried_object();
346
+
347
+ if ( $term ) {
348
+ $title = sprintf( $args['tagtitle'], get_bloginfo( 'name' ), $args['separator'], $term->name );
349
+ $href = get_tag_feed_link( $term->term_id );
350
+ }
351
+ } elseif ( is_tax() ) {
352
+ $term = get_queried_object();
353
+
354
+ if ( $term ) {
355
+ $tax = get_taxonomy( $term->taxonomy );
356
+ $title = sprintf( $args['taxtitle'], get_bloginfo( 'name' ), $args['separator'], $term->name, $tax->labels->singular_name );
357
+ $href = get_term_feed_link( $term->term_id, $term->taxonomy );
358
+ }
359
+ } elseif ( is_author() ) {
360
+ $author_id = intval( get_query_var( 'author' ) );
361
+
362
+ $title = sprintf( $args['authortitle'], get_bloginfo( 'name' ), $args['separator'], get_the_author_meta( 'display_name', $author_id ) );
363
+ $href = get_author_feed_link( $author_id );
364
+ } elseif ( is_search() ) {
365
+ $title = sprintf( $args['searchtitle'], get_bloginfo( 'name' ), $args['separator'], get_search_query( false ) );
366
+ $href = get_search_feed_link();
367
+ }
368
+
369
+ if ( isset( $title ) && isset( $href ) ) {
370
+ echo '<link rel="alternate" type="' . feed_content_type() . '" title="' . esc_attr( $title ) . '" href="' . esc_url( $href ) . '" />' . "\n";
371
+ }
372
+ }
373
+
374
  public function psp_disable_404_redirect_guessing( $url ) {
375
  return ( is_404() ) ? false : $url;
376
  }
readme.txt CHANGED
@@ -4,9 +4,9 @@ Donate link: https://www.patreon.com/join/techblissonline
4
  Plugin link: https://techblissonline.com/platinum-wordpress-seo-plugin/
5
  Tags: seo, wordpress seo, plugin, google seo, platinum seo, schema, schema markup, Json schema
6
  Requires at least: 4.0
7
- Tested up to: 5.4.1
8
  Requires PHP: 5.6
9
- Stable tag: 2.1.3
10
  License: GPLv2 or later
11
  License URI: https://www.gnu.org/licenses/gpl-2.0.html
12
 
@@ -46,6 +46,7 @@ Some features:
46
  21) Add index, noindex, follow or nofollow, noodp, noydir, noarchive, nosnippet meta tags to any post/page.
47
  22) Integration with wordPress Core SiteMap.
48
  23) Plenty of other features.
 
49
 
50
  == Installation ==
51
 
@@ -69,6 +70,12 @@ Please read these **[FAQs](https://techblissonline.com/platinum-seo-pack-faq/)**
69
  4. Social Settings for Facebook, Twitter, Pinterest and LinkedIn. Generates Open Grah Tags and Twitter compatible Tags.
70
 
71
  == Changelog ==
 
 
 
 
 
 
72
  = 2.1.3 =
73
  * 2020-06-12 - Integrated the latest WordPress sitemap files.
74
 
4
  Plugin link: https://techblissonline.com/platinum-wordpress-seo-plugin/
5
  Tags: seo, wordpress seo, plugin, google seo, platinum seo, schema, schema markup, Json schema
6
  Requires at least: 4.0
7
+ Tested up to: 5.4.2
8
  Requires PHP: 5.6
9
+ Stable tag: 2.1.4
10
  License: GPLv2 or later
11
  License URI: https://www.gnu.org/licenses/gpl-2.0.html
12
 
46
  21) Add index, noindex, follow or nofollow, noodp, noydir, noarchive, nosnippet meta tags to any post/page.
47
  22) Integration with wordPress Core SiteMap.
48
  23) Plenty of other features.
49
+ 24) Set a preferred Term for every POST
50
 
51
  == Installation ==
52
 
70
  4. Social Settings for Facebook, Twitter, Pinterest and LinkedIn. Generates Open Grah Tags and Twitter compatible Tags.
71
 
72
  == Changelog ==
73
+ = 2.1.4 =
74
+ * 2020-06-23 - You can now set a preferred Term for every POST. This can be set for the chosen Preferred Taxonomy.
75
+ Fixed a bug in sitemap date display.
76
+ Introduced an analyse button in Analysis screen which will calculate the metrics for the most recent unsaved changes in content.
77
+ Adds nofollow to Post comment feed links as suggested by Google. the plugin will also hide the main comment feed link by default.
78
+
79
  = 2.1.3 =
80
  * 2020-06-12 - Integrated the latest WordPress sitemap files.
81