SEOPress - Version 3.8.7

Version Description

Read our blog post * NEW Import post and term metadata from Premium SEO Pack plugin (https://www.seopress.org/support/guides/import-post-and-terms-metadata-from-premium-seo-pack-to-seopress/) * NEW Italian translation (by entersys.it) * NEW Custom breadcrumbs title for term taxonomy * NEW Custom og:image for custom post type archive * NEW 'seopress_remove_pro_settings_tabs' hook to hide specific SEOPress PRO settings tabs (https://www.seopress.org/support/hooks/hide-specific-pro-tabs-settings/) * NEW 'seopress_sitemaps_news_keywords_value' hook to filter keywords in News sitemap (https://www.seopress.org/support/hooks/filter-keywords-in-xml-news-sitemap/) * NEW Sol currency for schemas * INFO Redirections: import CSV file with comma or semicolon separator * INFO Improve compatibility with BeTheme WordPress theme * INFO Improve searchbox in Redirections CPT * INFO Improve compatibility with the Block Editor (Gutenberg) * INFO Add a warning indicator if the post is noindex on Advanced tab (SEO metabox) * INFO i18n translations * INFO "keywords in permalinks" verification removed for homepage (because no slug) * INFO Refactoring import tool * INFO Refactoring GA custom dimensions * INFO Display Video sitemap tab in SEO metabox only if Video sitemap option is enabled * INFO Update plugin updater * INFO Redirects are now priority over 404 if redirect identical to a 404 error from the list of redirects * FIX Product currency for automatic schema if manually set * FIX Trailing slash for News and Video XML sitemaps (no impact for SEO/Search Console) * FIX White label: "Remove "You like SEOPress? Don't forget to rate it 5 stars!" on SEOPress post type (Schemas, Redirections...) * FIX Display content before / after each post in RSS feeds if full text displayed * FIX Redirections with status "published" only are now redirected * FIX Import redirections from CSV whose URLs contains + signs

Download this release

Release Info

Developer rainbowgeek
Plugin Icon 128x128 SEOPress
Version 3.8.7
Comparing to
See all releases

Code changes from version 3.8.6 to 3.8.7

assets/css/seopress.css CHANGED
@@ -236,6 +236,7 @@
236
  position: relative;
237
  }
238
 
 
239
  #seopress_content_analysis .gr-analysis-title .impact {
240
  position: absolute;
241
  left: 10px;
@@ -263,6 +264,7 @@
263
  box-shadow: 0 0 5px #e39f48;
264
  }
265
 
 
266
  #seopress_content_analysis .gr-analysis .impact.high {
267
  background: #e25950;
268
  box-shadow: 0 0 5px #e25950;
@@ -278,6 +280,14 @@
278
  font-weight: bold;
279
  }
280
 
 
 
 
 
 
 
 
 
281
  #seopress_content_analysis .gr-analysis-title button {
282
  background: #fff;
283
  border: 0;
@@ -838,7 +848,7 @@
838
  border-bottom: none;
839
  }
840
 
841
- #seopress_cpt .wrap-seopress-counters, #seopress_pro_cpt .wrap-seopress-counters {
842
  text-align: right;
843
  background: #e9ecef;
844
  padding: 2px 5px;
@@ -847,7 +857,7 @@
847
  justify-content: flex-end;
848
  border-radius: 0 0 .25rem .25rem;
849
  }
850
- #seopress_cpt .sp-progress, #seopress_pro_cpt .sp-progress {
851
  display: -ms-flexbox;
852
  display: flex;
853
  height: 1rem;
@@ -856,7 +866,7 @@
856
  background-color: #e9ecef;
857
  border-radius: .25rem .25rem 0 0;
858
  }
859
- #seopress_cpt .sp-progress-bar, #seopress_pro_cpt .sp-progress-bar {
860
  display: -ms-flexbox;
861
  display: flex;
862
  -ms-flex-direction: column;
236
  position: relative;
237
  }
238
 
239
+ #seopress_cpt .impact,
240
  #seopress_content_analysis .gr-analysis-title .impact {
241
  position: absolute;
242
  left: 10px;
264
  box-shadow: 0 0 5px #e39f48;
265
  }
266
 
267
+ #seopress_cpt .impact.high,
268
  #seopress_content_analysis .gr-analysis .impact.high {
269
  background: #e25950;
270
  box-shadow: 0 0 5px #e25950;
280
  font-weight: bold;
281
  }
282
 
283
+ #seopress_cpt .impact.high {
284
+ position: relative;
285
+ top: calc(50% - 18px);
286
+ display: inline-block;
287
+ left: inherit;
288
+ right: -10px;
289
+ }
290
+
291
  #seopress_content_analysis .gr-analysis-title button {
292
  background: #fff;
293
  border: 0;
848
  border-bottom: none;
849
  }
850
 
851
+ #seopress_cpt .wrap-seopress-counters, #seopress_pro_cpt .wrap-seopress-counters, .seopress-styles .wrap-seopress-counters, .seopress-setup .wrap-seopress-counters {
852
  text-align: right;
853
  background: #e9ecef;
854
  padding: 2px 5px;
857
  justify-content: flex-end;
858
  border-radius: 0 0 .25rem .25rem;
859
  }
860
+ #seopress_cpt .sp-progress, #seopress_pro_cpt .sp-progress, .seopress-styles .sp-progress, .seopress-setup .sp-progress {
861
  display: -ms-flexbox;
862
  display: flex;
863
  height: 1rem;
866
  background-color: #e9ecef;
867
  border-radius: .25rem .25rem 0 0;
868
  }
869
+ #seopress_cpt .sp-progress-bar, #seopress_pro_cpt .sp-progress-bar, .seopress-styles .sp-progress-bar, .seopress-setup .sp-progress-bar {
870
  display: -ms-flexbox;
871
  display: flex;
872
  -ms-flex-direction: column;
assets/css/seopress.min.css CHANGED
@@ -1 +1 @@
1
- #adminmenu div.wp-menu-image.dashicons-admin-seopress::before,#seopress-header #seopress-admin h1::before{content:"\e800";font-family:seopress!important;font-weight:700;font-size:12px;line-height:20px}#seopress-header #seopress-admin h1::before,.seopress-page-list .seopress-feature h3,.seopress-styles .seopress-option h1{-moz-osx-font-smoothing:grayscale;-webkit-font-smoothing:antialiased}@font-face{font-family:seopress;src:url(../fonts/seopress.eot?81521271);src:url(../fonts/seopress.eot?81521271#iefix) format('embedded-opentype'),url(../fonts/seopress.woff?81521271) format('woff2'),url(../fonts/seopress.woff?81521271) format('woff'),url(../fonts/seopress.ttf?81521271) format('truetype'),url(../fonts/seopress.svg?81521271#seopress) format('svg');font-weight:400;font-style:normal}[class*=" icon-seopress"],[class^=icon-seopress-]{font-family:seopress!important;font-size:14px!important;line-height:24px!important}#tab_seopress_titles_archives .form-table th:empty,#tab_seopress_titles_single .form-table th:empty,#tab_seopress_titles_tax .form-table th:empty{display:none}.icon-seopress-seopress:before{content:"\e800"}.sp-tooltip{position:relative;margin-left:5px;display:inline-block;cursor:help;vertical-align:bottom;text-align:center}.sp-tooltip .dashicons{color:#666}.sp-tooltip .sp-tooltiptext{visibility:hidden;position:absolute;z-index:999999999;width:300px;right:-303px;padding:20px;top:25px;font-weight:400;box-shadow:0 3px 30px rgba(25,30,35,.1);border:1px solid #e2e4e7;background:#fff;word-break:break-word}.sp-tooltip .sp-tooltiptext::before{border:8px solid #e2e4e7;top:-8px}.sp-tooltip .sp-tooltiptext::after{border:8px solid #fff;top:-6px}.sp-tooltip .sp-tooltiptext::after,.sp-tooltip .sp-tooltiptext::before{border-bottom-style:solid;border-left-color:transparent;border-right-color:transparent;border-top:none;margin-left:-10px;content:"";position:absolute;height:0;width:0;line-height:0;left:30px}.sp-tooltip:hover .sp-tooltiptext{visibility:visible}.sp-tooltip .sp-tooltip-headings{font-size:18px;font-weight:600;margin-bottom:20px;display:block}.sp-tooltip .sp-tooltip-desc{margin-bottom:20px;display:block;border-bottom:1px solid #e2e4e7;padding-bottom:20px;font-size:13px}.sp-tooltip .sp-tooltip-code{font-family:Menlo,Monaco,Andale Mono,Courier New,monospace;display:block;word-break:break-all;color:#42b72a;font-size:11px}.analysis-score .sp-tooltip{vertical-align:middle;font-size:.75em}#seopress_content_analysis a{color:#0073aa}#seopress_content_analysis .wrap-seopress-analysis{display:inline-block;width:100%}#seopress_content_analysis .col-left{width:calc(50% - 30px);float:left;margin-right:30px}#seopress_content_analysis .col-right{float:right;width:50%}#seopress_content_analysis #seopress_suggestions{display:inline-block;width:100%;margin:0;height:auto;padding:20px 0}#seopress_content_analysis #seopress_suggestions li{list-style:none;margin:5px;display:inline-block}#seopress_content_analysis .analysis-score{clear:both;border-top:1px solid #e2e4e7;display:flex;justify-content:space-between;align-items:center}.column-seopress_score .analysis-score{display:flex;align-content:center}#seopress_content_analysis .analysis-score p,.column-seopress_score .analysis-score p{font-weight:700;font-size:1.2em}#seopress_content_analysis .analysis-score svg,.column-seopress_score .analysis-score svg{display:inline-block;height:30px;width:30px;margin:0;border-radius:100%;position:relative;font-weight:600;shape-rendering:geometricprecision;font-size:.5rem;vertical-align:middle;margin-right:15px}.column-seopress_score .analysis-score p,.column-seopress_score .analysis-score svg{margin:0}@keyframes loadingPulse{0%{stroke:#adc5d2}50%{stroke:#00a0d2}100%{stroke:#adc5d2}}#seopress_content_analysis .analysis-score .loading #bar{stroke-dashoffset:0!important;stroke:#adc5d2!important;animation:loadingPulse 3s infinite ease-in-out}#seopress_content_analysis .analysis-score .good #bar,.column-seopress_score .analysis-score #bar.good{stroke:#46b450}#seopress_content_analysis .analysis-score .notgood #bar,.column-seopress_score .analysis-score #bar.notgood{stroke-dashoffset:565;stroke:#ffb900}#seopress_content_analysis .analysis-score svg circle,.column-seopress_score .analysis-score svg circle{stroke-dashoffset:0;transition:stroke-dashoffset 1s linear;stroke:#ccc;stroke-width:2em}#seopress_content_analysis .gr-analysis{clear:both}#seopress_content_analysis .gr-analysis-title{border-top:1px solid #e2e4e7;position:relative}#seopress_content_analysis .gr-analysis-title .impact{position:absolute;left:10px;top:calc(50% - 5px);width:10px;height:10px;border-radius:50px;padding:0;margin:0;border:1px solid #fff}#seopress_content_analysis .gr-analysis .impact.good{background:#46b450;box-shadow:0 0 5px #46b450}#seopress_content_analysis .gr-analysis .impact.low{background:#ffde24;box-shadow:0 0 5px #ffde24}#seopress_content_analysis .gr-analysis .impact.medium{background:#e39f48;box-shadow:0 0 5px #e39f48}#seopress_content_analysis .gr-analysis .impact.high{background:#e25950;box-shadow:0 0 5px #e25950}#seopress_content_analysis .gr-analysis-content .impact.high{background:#e25950;box-shadow:none;color:#fff;padding:2px 4px;margin-left:5px;border-radius:4px;font-weight:700}#seopress_content_analysis .gr-analysis-title button{background:#fff;border:0;cursor:pointer;display:block;margin:0;position:relative;text-align:left;width:100%;padding:15px 30px;align-items:center;transition:all .3s linear}#seopress_content_analysis .gr-analysis-title button:hover{background:#f3f4f5}#seopress_content_analysis .gr-analysis-title button:focus{color:#191e23;border:none;box-shadow:none;outline-offset:-2px;outline:1px dotted #555d66}#seopress_content_analysis .gr-analysis-title button .sp-arrow::after{content:"\f343";font-family:Dashicons;position:absolute;right:10px;top:calc(50% - 7px)}#seopress_content_analysis .gr-analysis-title button.open .sp-arrow::after{content:"\f347"}#seopress_content_analysis .gr-analysis-content{padding:0 1rem .5rem 1rem;display:none;width:100%;border-top:1px solid #e2e4e7;box-sizing:border-box}#seopress_content_analysis h3{margin:0;font-size:1em}#seopress_content_analysis h4{border-bottom:1px solid #e2e4e7;padding-bottom:.5rem;text-transform:uppercase;font-size:.85em;position:-webkit-sticky;position:sticky;top:0;background:#fff}#seopress_content_analysis .wrap-analysis-img ul{display:flex;flex-wrap:wrap}#seopress_content_analysis .wrap-analysis-img ul li{padding:0;text-align:left;cursor:default}#seopress_content_analysis .wrap-analysis-img h4{border-bottom:1px solid #ddd;padding-bottom:10px}#seopress_content_analysis .wrap-analysis-img ul li img{max-width:150px;max-height:150px;object-fit:cover;border:1px solid #f3f4f5;cursor:default;padding:1px}#seopress_cpt .notice{padding:10px 14px}#seopress-analysis-tabs .dashicons,#seopress_cpt .dashicons{vertical-align:middle}#seopress-analysis-tabs{clear:both}#seopress_cpt .inside{margin:0;padding:0}#seopress_cpt .ui-tabs .ui-tabs-nav{display:inline-block;min-height:26px;position:relative;width:100%;z-index:10;margin:0;border-radius:0;padding:0;background:#f3f4f5;border:none}#seopress_cpt .ui-helper-clearfix:after{content:none}.seopress_page_seopress-titles #seopress-tabs .form-table td,.seopress_page_seopress-titles #seopress_content_analysis .form-table td{padding:0}#seopress_cpt .ui-tabs .ui-tabs-panel{background:#fff;border-radius:0;display:inline-block;padding:1em 1.4em;width:100%;box-sizing:border-box}#seopress_content_analysis .dashicons-info,#seopress_cpt .ui-tabs .ui-tabs-panel .dashicons-info,#seopress_pro_cpt .dashicons-info{font-size:16px;vertical-align:middle;height:16px;width:16px}#seopress_cpt .ui-tabs .ui-tabs-nav li,#seopress_cpt .ui-tabs-anchor{cursor:pointer!important}#seopress_cpt .ui-tabs .ui-tabs-nav li.ui-tabs-active{position:relative;z-index:60;cursor:pointer;border-radius:0;border-bottom:3px solid #0085ba}#seopress_content_analysis label,#seopress_cpt #tabs-1 label,#seopress_cpt #tabs-2 label[for=seopress_robots_breadcrumbs_meta],#seopress_cpt #tabs-2 label[for=seopress_robots_canonical_meta],#seopress_cpt #tabs-2 label[for=seopress_robots_primary_cat_meta],#seopress_cpt #tabs-3 label,#seopress_cpt #tabs-4 label,#seopress_cpt #tabs-5 label,#seopress_cpt #tabs-6 label,#seopress_cpt .subsection-title,#seopress_pro_cpt label{display:block;margin:20px 0 5px;font-weight:700}#seopress_cpt .wp-color-result{margin:0}#seopress_content_analysis input[type=text],#seopress_cpt #tabs-1 input,#seopress_cpt #tabs-2 input[type=text],#seopress_cpt #tabs-3 input[type=text],#seopress_cpt #tabs-3 textarea,#seopress_cpt #tabs-4 input[type=text],#seopress_cpt #tabs-5 input[type=text],#seopress_cpt #tabs-6 input[type=text],#seopress_cpt #tabs-6 textarea{width:100%;display:inline-block}#seopress_cpt #tabs-1 input{width:100%}#seopress_cpt #tabs-6 input[type=number]{width:30%;min-width:200px}#seopress_cpt #tabs-6 #wrap-videos .video:first-child .remove-video{display:none}#seopress_cpt select{width:300px}#seopress_cpt #tabs-4 select{width:250px;display:inline}#seopress_cpt #tabs-4 #seopress_redirections_value_meta{width:calc(100% - 258px);float:right}#seopress_cpt #tabs-6{padding:0}#seopress_cpt #tabs-6 #wrap-videos .video .accordion-section-content,#seopress_cpt #tabs-6>p{padding:0 1.4em}#seopress_cpt #tabs-6 #wrap-videos .video .accordion-section-content{padding:0 1.4em 1em}#seopress_cpt #tabs-6 #wrap-videos .video{border-top:1px solid #eee}#seopress_cpt #tabs-6 #wrap-videos .video .accordion-section-title{border-left:none;border-right:none;font-size:1em;padding:1em 1.4em}#seopress_cpt #tabs-6 #wrap-videos .video:last-child .accordion-section-content,#seopress_cpt #tabs-6 #wrap-videos .video:last-child .accordion-section-title{border-bottom:1px solid #eee}#seopress_cpt #tabs-6 #wrap-videos .video .inside{padding:0}#seopress_cpt #tabs-4 #seopress_redirections_enabled,#seopress_cpt #tabs-5 #seopress_news_disabled,#seopress_cpt #tabs-5 #seopress_news_standout,#seopress_cpt #tabs-6 #seopress_video_disabled,#seopress_cpt #tabs-6 .family-friendly label,#seopress_cpt #tabs-6 .internal_video label{font-weight:400}#seopress_cpt #tabs-6 #wrap-videos .video:nth-child(odd){background:#fdfdfd}#seopress_content_analysis .advise,#seopress_cpt .advise,#seopress_pro_cpt .advise,.seopress-option .advise{margin:5px;display:block;color:red;font-style:italic}#seopress_cpt #tabs-6 #wrap-videos .video .advise{color:#555}#seopress_content_analysis .mandatory,#seopress_cpt .mandatory{color:#c00}#seopress_cpt .box-left{float:left;width:49%;margin-right:1%}#seopress_cpt .box-right{float:left;width:49%;margin-left:1%}#seopress_cpt #tabs-3 .box-left{width:44%}#seopress_cpt #tabs-3 .box-right{width:54%}@media only screen and (max-width:1200px){#seopress_cpt .box-left,#seopress_cpt .box-right{float:none;width:100%;margin:0}}@media only screen and (max-width:1500px){#seopress_cpt #tabs-3 .box-left,#seopress_cpt #tabs-3 .box-right{float:none;width:100%;margin:0}}#edittag #seopress_cpt #tabs-3 .box-left,#edittag #seopress_cpt #tabs-3 .box-right{float:none;width:100%;margin:0}#seopress-tabs .seopress_media_upload,#seopress_pro_cpt .seopress_media_upload{margin-top:.5rem}#seopress_cpt .google-snippet-preview{font-family:arial,sans-serif;word-break:break-all}#seopress_cpt .google-snippet-preview.mobile-preview .wrap-snippet{margin:0 0 10px 0;box-shadow:0 1px 6px rgba(32,33,36,.28);border-radius:8px;padding:12px 16px}#seopress_cpt .google-snippet-preview>p{word-break:normal}#seopress_cpt .google-snippet-preview .snippet-title,#seopress_cpt .google-snippet-preview .snippet-title-custom,#seopress_cpt .google-snippet-preview .snippet-title-default{color:#1a0dab;font-size:18px;font-weight:400;line-height:21.6px}#seopress_cpt .google-snippet-preview.mobile-preview .snippet-title,#seopress_cpt .google-snippet-preview.mobile-preview .snippet-title-custom,#seopress_cpt .google-snippet-preview.mobile-preview .snippet-title-default{font-size:16px;line-height:20px;margin-bottom:12px}#seopress_cpt .google-snippet-preview .snippet-permalink{color:#006621;font-size:14px;font-style:normal;font-weight:400;line-height:16px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}#seopress_cpt .google-snippet-preview .wrap-snippet .wrap-m-icon-permalink,#seopress_cpt .google-snippet-preview.mobile-preview .snippet-permalink{display:none}#seopress_cpt .google-snippet-preview.mobile-preview .wrap-m-icon-permalink{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;margin-bottom:12px;display:flex}#seopress_cpt .google-snippet-preview.mobile-preview .wrap-m-icon-permalink .snippet-permalink{display:block;color:#3c4043;font-size:12px}#seopress_cpt .google-snippet-preview.mobile-preview .snippet-favicon{margin-right:12px;vertical-align:middle}#seopress_cpt .google-snippet-preview.mobile-preview .snippet-favicon img{width:16px;height:16px;max-width:inherit}#seopress_cpt .google-snippet-preview.mobile-preview .wrap-snippet .snippet-permalink:first-child{color:#3c4043;white-space:nowrap;font-size:12px;display:block}#seopress_cpt .google-snippet-preview .snippet-description,#seopress_cpt .google-snippet-preview .snippet-description-custom,#seopress_cpt .google-snippet-preview .snippet-description-default{color:#545454;font-size:14px;font-weight:400;line-height:18.2px;display:inline}#seopress_cpt .google-snippet-preview.mobile-preview .snippet-description,#seopress_cpt .google-snippet-preview.mobile-preview .snippet-description-custom,#seopress_cpt .google-snippet-preview.mobile-preview .snippet-description-default{color:#3c4043;font-size:14px;line-height:20px}#seopress_cpt .google-snippet-preview .snippet-date{color:grey;display:inline}#seopress_cpt .facebook-snippet-box{color:#4b4f56;font-size:14px;width:524px}#seopress_cpt .facebook-snippet-box .notice,#seopress_cpt .twitter-snippet-box .notice{padding:10px 14px;margin:0 0 10px 0;box-sizing:border-box;width:100%}#seopress_cpt .facebook-snippet-box .notice span,#seopress_cpt .twitter-snippet-box .notice span{font-weight:700}#seopress_cpt .snippet-meta{display:flex;overflow:hidden;max-height:12px}#seopress_cpt .fb-by,#seopress_cpt .snippet-fb-site-name,#seopress_cpt .snippet-fb-url{color:#606770;font-size:12px;white-space:normal;line-height:11px;text-transform:uppercase;-webkit-box-orient:vertical;display:-webkit-box;text-overflow:ellipsis}#seopress_cpt .fb-sep{padding-left:5px;padding-right:5px;color:#606770;line-height:11px;font-size:12px}#seopress_cpt .facebook-snippet-box .facebook-snippet-text{border:1px solid #dadde1;background-color:#f2f3f5;padding:10px 12px}#seopress_cpt .facebook-snippet-box .title-desc{max-height:46px;overflow:hidden}#seopress_cpt .facebook-snippet-box .snippet-fb-title,#seopress_cpt .facebook-snippet-box .snippet-fb-title-custom,#seopress_cpt .facebook-snippet-box .snippet-fb-title-default{font-size:16px;line-height:20px;margin:3px 0 0;padding-top:2px;color:#1d2129;font-weight:700;overflow:hidden;-webkit-box-orient:vertical;display:-webkit-box;text-overflow:ellipsis;white-space:normal;word-break:break-word;max-height:22px}#seopress_cpt .facebook-snippet-box .snippet-fb-description,#seopress_cpt .facebook-snippet-box .snippet-fb-description-custom,#seopress_cpt .facebook-snippet-box .snippet-fb-description-default{color:#606770;font-size:14px;line-height:20px;word-break:break-word;font-family:Helvetica,Arial,sans-serif;max-height:80px;overflow:hidden;-webkit-box-orient:vertical;display:-webkit-box;text-overflow:ellipsis;white-space:normal;width:100%}#seopress_cpt .facebook-snippet-box img{display:block;height:274px;width:524px;object-fit:cover;background-color:#edeff0;text-align:center;border-bottom:none}#seopress_cpt .twitter-snippet-box{color:#4b4f56;font-size:14px;width:436px}#seopress_cpt .snippet-twitter-url{color:#8899a6;font-size:14px;white-space:normal;line-height:11px;text-transform:uppercase;-webkit-box-orient:vertical;display:-webkit-box;text-overflow:ellipsis}#seopress_cpt .twitter-snippet-box .twitter-snippet-text{border:1px solid #dadde1;background-color:#fff;padding:10px 12px;border-radius:0 0 10px 10px}#seopress_cpt .twitter-snippet-box .title-desc{max-height:46px;overflow:hidden}#seopress_cpt .twitter-snippet-box .snippet-twitter-img,#seopress_cpt .twitter-snippet-box .snippet-twitter-img-custom,#seopress_cpt .twitter-snippet-box .snippet-twitter-img-default{border-radius:10px 10px 0 0;overflow:hidden}#seopress_cpt .twitter-snippet-box .snippet-twitter-title,#seopress_cpt .twitter-snippet-box .snippet-twitter-title-custom,#seopress_cpt .twitter-snippet-box .snippet-twitter-title-default{font-size:1em;line-height:20px;margin-bottom:5px;max-height:1.3em;color:#000;font-weight:700;overflow:hidden;-webkit-box-orient:vertical;display:-webkit-box;text-overflow:ellipsis;white-space:normal;word-break:break-word}#seopress_cpt .twitter-snippet-box .snippet-twitter-description,#seopress_cpt .twitter-snippet-box .snippet-twitter-description-custom,#seopress_cpt .twitter-snippet-box .snippet-twitter-description-default{color:#000;font-size:14px;line-height:20px;word-break:break-word;font-family:Helvetica,Arial,sans-serif;max-height:80px;overflow:hidden;-webkit-box-orient:vertical;display:-webkit-box;text-overflow:ellipsis;white-space:normal;width:100%}#seopress_cpt .twitter-snippet-box img{display:block;height:200px;width:436px;object-fit:cover;background-color:#edeff0;text-align:center;border-bottom:none}#seopress_cpt .wrap-seopress-counters,#seopress_pro_cpt .wrap-seopress-counters{text-align:right;background:#e9ecef;padding:2px 5px;display:flex;font-size:12px;justify-content:flex-end;border-radius:0 0 .25rem .25rem}#seopress_cpt .sp-progress,#seopress_pro_cpt .sp-progress{display:-ms-flexbox;display:flex;height:1rem;overflow:hidden;font-size:.75rem;background-color:#e9ecef;border-radius:.25rem .25rem 0 0}#seopress_cpt .sp-progress-bar,#seopress_pro_cpt .sp-progress-bar{display:-ms-flexbox;display:flex;-ms-flex-direction:column;flex-direction:column;-ms-flex-pack:center;justify-content:center;color:#fff;text-align:center;white-space:nowrap;background-color:#0085ba;transition:width .6s ease}#seopress_cpt #seopress_titles_desc_counters,#seopress_cpt #seopress_titles_title_counters,#seopress_pro_cpt #seopress_rich_snippets_articles_counters,#seopress_pro_cpt #seopress_rich_snippets_courses_counters{display:inline;margin-right:5px}#seopress_cpt #seopress_titles_desc_counters_val,#seopress_cpt #seopress_titles_title_counters_val,#seopress_pro_cpt #seopress_rich_snippets_articles_counters_val,#seopress_pro_cpt #seopress_rich_snippets_courses_counters_val{display:inline;font-weight:700}#term-seopress #seopress_cpt{width:95%}.fixed .column-seopress_ps,.fixed .column-seopress_score,.fixed .column-seopress_w3c,.fixed .column-seopress_words{width:6%}.fixed .column-seopress_nofollow,.fixed .column-seopress_noindex{width:8%}@media only screen and (max-width:1200px){.fixed .column-seopress_nofollow,.fixed .column-seopress_noindex,.fixed .column-seopress_ps,.fixed .column-seopress_score,.fixed .column-seopress_w3c,.fixed .column-seopress_words{width:10%}}#seopress_cpt .ui-tabs{position:relative;padding:0;border:none;font-family:inherit;font-size:inherit;display:inline-block;width:100%}#seopress_cpt .ui-tabs .ui-tabs-nav li{list-style:none;display:inline-block;position:relative;top:2px;padding:0 5px;white-space:nowrap;margin:0;border:none;background:0 0}#seopress_cpt .ui-tabs .ui-tabs-nav li a{display:inline-block;padding:5px 10px}#seopress-admin-tabs.ui-tabs-vertical .ui-tabs-nav li a,#seopress_cpt .ui-tabs-vertical .ui-tabs-nav li a{display:block}#seopress_cpt .ui-tabs .ui-tabs-nav li.ui-tabs-active{margin-bottom:2px;padding-bottom:1px}#seopress_cpt .ui-tabs .ui-tabs-nav li.ui-state-disabled a,#seopress_cpt .ui-tabs .ui-tabs-nav li.ui-tabs-active a,#seopress_cpt .ui-tabs .ui-tabs-nav li.ui-tabs-loading a{color:#191e23;font-weight:700}#seopress_cpt .ui-tabs .ui-tabs-nav li a,#seopress_cpt .ui-tabs-collapsible .ui-tabs-nav li.ui-tabs-active a{cursor:pointer;color:#191e23;text-decoration:none;height:40px;line-height:40px}#seopress_cpt .ui-tabs-vertical{width:55em}#seopress_cpt .ui-tabs-vertical .ui-tabs-nav{padding:.2em .1em .2em .2em;float:left;width:12em}#seopress_cpt .ui-tabs-vertical .ui-tabs-nav li{clear:left;width:100%;border-bottom-width:1px!important;border-right-width:0!important;margin:0 -1px .2em 0}#seopress_cpt .ui-tabs-vertical .ui-tabs-nav li.ui-tabs-active{padding-bottom:0;padding-right:.1em;border-right-width:1px}#seopress_cpt .ui-tabs-vertical .ui-tabs-panel{padding:1em;float:right;width:40em}#seopress_cpt .ui-tabs .ui-tabs-nav li a .dashicons{margin-right:2px}#tab-panel-seopress_titles_help_tab li span{font-weight:700;margin-right:10px}#seopress_content_analysis .dashicons-no-alt,#seopress_content_analysis .dashicons-yes,#seopress_pro_cpt .dashicons-no-alt,#seopress_pro_cpt .dashicons-yes{color:#fff;background:#12bd10;border-radius:50px;margin-right:10px}#seopress_content_analysis .dashicons-no-alt,#seopress_pro_cpt .dashicons-no-alt{background:#e25950}body.seopress-styles{background:#f8fafd}#seopress-admin-tabs.ui-tabs{position:relative;padding:.2em;border:none;font-family:inherit;font-size:inherit}#seopress-admin-tabs.ui-tabs .ui-tabs-nav li{list-style:none;float:left;position:relative;top:0;margin:-1px .2em 0 0;padding:0;white-space:nowrap;border:none;background:0 0}#seopress-admin-tabs.ui-tabs .ui-tabs-nav li a{float:left;padding:.38em 1em .75rem;outline:0;border-bottom:2px solid #fff}#seopress-admin-tabs.ui-tabs .ui-tabs-nav li.ui-tabs-active{margin-bottom:-1px}#seopress-admin-tabs.ui-tabs .ui-tabs-nav li.ui-state-disabled a,#seopress-admin-tabs.ui-tabs .ui-tabs-nav li.ui-tabs-active a,#seopress-admin-tabs.ui-tabs .ui-tabs-nav li.ui-tabs-loading a{cursor:text;border-bottom:2px solid #23282d;color:#23282d}#seopress-admin-tabs.ui-tabs .ui-tabs-nav li a,#seopress-admin-tabs.ui-tabs-collapsible .ui-tabs-nav li.ui-tabs-active a{cursor:pointer;color:#0073aa;text-decoration:none}#seopress-admin-tabs.ui-tabs-vertical{width:55em}#seopress-admin-tabs.ui-tabs-vertical .ui-tabs-nav{padding:.2em .1em .2em .2em;float:left;width:12em}#seopress-admin-tabs.ui-tabs-vertical .ui-tabs-nav li{clear:left;width:100%;border-bottom-width:1px!important;border-right-width:0!important;margin:0 -1px .2em 0}#seopress-admin-tabs.ui-tabs-vertical .ui-tabs-nav li.ui-tabs-active{padding-bottom:0;padding-right:.1em;border-right-width:1px}#seopress-admin-tabs.ui-tabs-vertical .ui-tabs-panel{padding:1em;float:right;width:40em}.seopress-styles .seopress-option{margin:10px auto 0;max-width:90%;padding:1rem;background:#fff;box-shadow:0 15px 35px rgba(50,50,93,.1),0 5px 15px rgba(0,0,0,.1);border-radius:4px}.seopress-styles .seopress-option h1{font-size:16px;font-weight:700;color:#3297d3;text-transform:uppercase;z-index:100;border-bottom:1px solid #eee;padding-bottom:20px}.seopress-styles .seopress-option h1 .dashicons,.seopress-styles .seopress-option h2 .dashicons{margin:0 10px;font-size:40px;width:40px;height:40px;vertical-align:middle}.seopress-styles .seopress-option .link-archive{font-size:14px}.seopress-styles .seopress-option .link-archive .dashicons{font-size:18px;width:20px;height:20px;margin:inherit}.seopress-styles .seopress-option h1>.dashicons{font-size:30px;width:30px;height:30px;background:#c4f0ff;border-radius:6px;padding:10px;margin-left:10px;color:#0085ba}.seopress-styles .seopress-option .metabox-holder h2 .dashicons{font-size:16px}.seopress-option h1 .feature-state .dashicons{font-size:16px;width:16px;height:16px;vertical-align:middle;margin:0 10px 0 0}.seopress-styles .wrap{margin:20px 0 0 0;display:flex;position:relative}@media only screen and (max-width:1024px){.seopress-styles .wrap{display:inline-block;width:100%}}#seopress-admin-tabs.wrap{display:block;box-shadow:0 7px 14px 0 rgba(60,66,87,.12),0 3px 6px 0 rgba(0,0,0,.12);width:64rem;margin:0 auto}.seopress-styles .seopress-option .submit{background:#fff;text-align:center;border-top:1px solid #f1f1f1;padding-top:20px;padding-bottom:20px;margin:0}.seopress-styles .seopress-option #seopress-aio-migrate,.seopress-styles .seopress-option #seopress-rk-migrate,.seopress-styles .seopress-option #seopress-seo-framework-migrate,.seopress-styles .seopress-option #seopress-squirrly-migrate,.seopress-styles .seopress-option #seopress-yoast-migrate,.seopress-styles .seopress-option #submit{color:#fff;text-decoration:none;border:none;border-radius:4px;padding-right:20px;padding-left:20px;line-height:34px;text-transform:uppercase;min-height:34px;transition:all .3s linear;text-shadow:none;box-shadow:0 7px 14px rgba(50,50,93,.1),0 3px 6px rgba(0,0,0,.1);margin-right:15px;background:#6a7c94;position:relative;height:auto;z-index:10}.seopress-styles .seopress-option #seopress-aio-migrate:hover,.seopress-styles .seopress-option #seopress-rk-migrate:hover,.seopress-styles .seopress-option #seopress-seo-framework-migrate:hover,.seopress-styles .seopress-option #seopress-squirrly-migrate:hover,.seopress-styles .seopress-option #seopress-yoast-migrate:hover,.seopress-styles .seopress-option #submit:hover{text-decoration:none;color:#fff;background:#232323}.seopress-styles #wpcontent{padding-left:0}.seopress-styles pre{color:#42b72a;background:#f5f6f7;font-family:Menlo,Monaco,Andale Mono,Courier New,monospace;padding:7px}.seopress-styles #seopress-navbar{padding:10px .5rem;height:56px;margin:0 auto;width:64rem;box-sizing:border-box;position:relative}#seopress-header{margin:0 auto;position:relative;width:100%}#seopress-header #seopress-admin h1{line-height:40px;margin:0;display:inline-block;height:40px;width:40px;background-size:100%;background-repeat:no-repeat}#seopress-header #seopress-admin h1::before{font-size:14px;line-height:40px;position:absolute;border-radius:6px;font-weight:400;color:#fff;width:40px;height:40px;text-align:center;background:#3a4afb;background:-moz-linear-gradient(45deg,#3a4afb 0,#47bea5 100%);background:-webkit-linear-gradient(45deg,#3a4afb 0,#47bea5 100%);background:linear-gradient(45deg,#3a4afb 0,#47bea5 100%)}#seopress-header #seopress-admin h1:hover{cursor:pointer}#seopress-header #seopress-admin h1>a{text-decoration:none;color:inherit}#seopress-header #seopress-admin .seopress-quick-access{background:#fff;box-shadow:0 50px 100px rgba(50,50,93,.1),0 15px 35px rgba(50,50,93,.2),0 5px 15px rgba(0,0,0,.1);border-radius:4px;overflow:hidden;position:relative;font-size:17px;line-height:40px;white-space:nowrap;transform:rotate3d(1,1,0,-15deg);transform-origin:100% 0;opacity:0;will-change:transform,opacity;transition-property:transform,opacity;transition-duration:.25s;z-index:300;padding:0;display:block;width:64rem;top:0;visibility:hidden;cursor:auto;left:-.5rem}#seopress-header #seopress-admin h1:hover .seopress-quick-access{transform:none;opacity:1;pointer-events:auto;visibility:visible}#seopress-header #seopress-admin .seopress-quick-access>ul{padding:20px;margin:0;float:left;width:100%;box-sizing:border-box}#seopress-header #seopress-admin h1 .seopress-quick-access li{text-decoration:none;display:inline-block;width:50%;margin:0;float:left;padding:10px 0}#seopress-header #seopress-admin h1 .seopress-quick-access li .dashicons{vertical-align:middle;background:#b7e1f3;border-radius:50%;padding:5px;margin-right:15px}#seopress-header #seopress-admin h1 .seopress-quick-access li a{text-decoration:none;font-size:15px;line-height:30px;text-transform:uppercase;display:block;width:100%;transition:all .3s linear;color:#3297d3}#seopress-header #seopress-admin h1 .seopress-quick-access li a:hover{color:#647a88}#seopress-header #seopress-admin h1 .seopress-info-version{position:relative;left:50px;top:0;font-size:14px;width:100px;display:block}#seopress-header #seopress-admin .wpc-info-version{font-size:14px;left:310px;position:absolute;text-indent:0;top:85px}#seopress-header #seopress-notice{float:right;line-height:40px}#seopress-header #seopress-notice p{font-size:16px}#seopress-header #seopress-notice .dashicons{color:#6f8096;text-decoration:none;line-height:40px}#seopress-header #seopress-notice div.small{font-size:13px;display:inline}#seopress-footer-credits{font-style:italic}#seopress-footer-credits .wporg-ratings{display:inline}#seopress-footer-credits .wporg-ratings a{text-decoration:none}.seopress-option .seopress-settings{float:left;max-width:750px;width:100%}.seopress-option #seopress-edd-license-btn,.seopress-option #seopress-refresh{float:left}.wp-admin-ui_page_seopress-import-export .postbox{margin-right:20px}.seopress-option #side-sortables .accordion-section-content{padding:0}.seopress-option .seopress-settings label{margin:0 0 0 10px}.wrap-seopress-tab-content{position:relative;display:block;width:100%;max-width:64rem;margin:0 auto;box-sizing:border-box}#seopress-admin-tabs .seopress-tab{padding:1.5rem;visibility:hidden;overflow:hidden;opacity:0;transition:all .2s ease;transform:translateX(-15px);position:absolute;top:0;box-sizing:border-box}#seopress-admin-tabs .seopress-tab.active{visibility:visible;overflow:inherit;opacity:1;transform:translateX(0);display:inherit;position:relative}#seopress-tabs .seopress-tab{padding:0 1.5rem;width:calc(100% - 230px);display:none}@media only screen and (max-width:1024px){#seopress-tabs .seopress-tab{width:100%}}#seopress-tabs .seopress-tab.active{display:inline-block;border-left:1px solid #eee}@media only screen and (max-width:1024px){#seopress-tabs .seopress-tab.active{width:100%;padding:0;border-left:none;border-top:1px solid #eee}}.seopress-option input[type=password],.seopress-option input[type=text],.seopress-option textarea{min-width:485px}@media only screen and (max-width:1024px){.seopress-option input[type=password],.seopress-option input[type=text],.seopress-option textarea{min-width:inherit;width:100%}}#seopress_htaccess_file{width:100%}.seopress-option textarea{min-height:100px}.seopress-option #side-sortables .highlight{border:1px dashed #ccc;display:block;width:382px;height:40px;background:0 0}.seopress-option #side-sortables .accordion-section{margin-bottom:9px;width:382px}.seopress-option #side-sortables .accordion-section h3{cursor:move;border:1px solid #e5e5e5;background:#fafafa}.seopress-option #side-sortables .accordion-section .inside{padding:10px 10px 24px;border-width:0 1px 1px;border-style:solid;box-shadow:0 1px 1px rgba(0,0,0,.04);border-color:#e5e5e5;display:inline-block;width:calc(100% - 22px);height:100%}.seopress-option #side-sortables .accordion-section .inside ul{padding-left:10px;margin-bottom:0;padding-top:2px;padding-bottom:2px}.seopress-option #side-sortables .accordion-section .inside ul li{border-left:2px solid #ccc;padding-left:10px;margin-bottom:10px}.seopress-option #side-sortables .accordion-section .inside ul li:first-child{border-bottom:1px dotted #e5e5e5;border-left:0;padding-bottom:10px;font-weight:700;margin-left:-15px;margin-bottom:10px}.seopress-notice #message{margin:5px 10px 2px 0}#seopress-notice a{position:relative;text-decoration:none}#seopress-notice a .tooltip{white-space:pre;z-index:200;padding:2px 5px;font-weight:500;font-size:12px;color:#aab7c4;background:#fff;box-shadow:0 1px 2px 0 rgba(49,49,93,.1),0 0 1px 0 rgba(0,0,0,.1);border-radius:2px;position:absolute;opacity:0;top:30px;transition:opacity .2s ease;visibility:hidden;line-height:20px;left:-100%;overflow:hidden}#seopress-notice a:hover .tooltip{opacity:1;visibility:visible}.seopress-page-list{margin:1.5rem auto}.seopress-option .dashicons,.seopress-page-list .dashicons{vertical-align:middle;margin-right:5px;color:#6f8096}#seopress-admin-tabs .ui-tabs-nav,#seopress-notifications-center,.seopress-get-started,.seopress-page-list .seopress-feature,.seopress-useful-tools{margin:0 auto 20px;max-width:64rem;padding:2rem;width:100%;border-radius:0 0 4px 4px;box-sizing:border-box}.seopress-get-started{margin-top:20px;background:#fff url(../img/bg-hero-support.svg) no-repeat 95% 50%/contain;position:relative;box-sizing:border-box;box-shadow:0 7px 14px 0 rgba(60,66,87,.12),0 3px 6px 0 rgba(0,0,0,.12)}.seopress-get-started .inside{max-width:calc(100% - 380px)}.seopress-get-started .preheader{text-transform:uppercase;font-size:.8rem;font-weight:600}.seopress-get-started h2{font-size:1.85em;margin:15px 0 0 0;font-weight:400}.seopress-get-started p{margin-bottom:20px}.seopress-get-started a .dashicons{vertical-align:middle;text-decoration:none;color:#6a7c94}.seopress-get-started a.button-primary .dashicons{color:#fff}.seopress-get-started a.btn-link .dashicons{margin-right:5px}.seopress-get-started a.btn-link{margin:0 0 0 10px}#seopress-notifications-center,.seopress-useful-tools{background:#fff;padding:0}.seopress-page-list .seopress-feature{padding:0;position:relative;overflow:hidden;transition-duration:.15s;display:flex;margin:0;background:#fff;box-shadow:0 7px 14px 0 rgba(60,66,87,.12),0 3px 6px 0 rgba(0,0,0,.12);flex-wrap:wrap;border-radius:4px;width:100%;height:100%}.seopress-page-list .seopress-feature p{color:#6b7c93;font-size:14px;margin-bottom:30px}#seopress-notifications-center{margin-top:0}#seopress-admin-tabs .ui-tabs-nav{display:flex;padding-top:1rem;padding-bottom:0}.seopress-page-list .seopress-feature .img-tool{height:50px;width:50px;background:#c4f0ff;position:relative;border-radius:6px}.seopress-page-list .seopress-feature .img-tool .dashicons{color:#217ab7;font-size:30px;text-align:left;vertical-align:middle;width:100%;height:100%;position:absolute;top:calc(50% - 15px);left:calc(50% - 15px);margin:0}.seopress-page-list .seopress-feature .inner{margin:0;display:inline-block;padding:1.5rem;width:100%;height:100%;box-sizing:border-box}.seopress-page-list .seopress-feature h3{margin:1rem 0 0 0;font-size:16px;font-weight:700;color:#3297d3;text-transform:uppercase}.seopress-page-list .seopress-feature h3 .dashicons{font-size:16px;margin-left:5px;vertical-align:middle}#seopress-content .seopress-page-list .seopress-feature a,#seopress-notifications-center .seopress-alert .button-primary,.seopress-get-started .button-primary,.seopress-option .seopress-feature a,.seopress-useful-tools .widget .button-primary{color:#fff;text-decoration:none;border:none;border-radius:4px;padding-right:20px;padding-left:20px;line-height:34px;text-transform:uppercase;min-height:34px;transition:all .3s linear;text-shadow:none;box-shadow:0 7px 14px rgba(50,50,93,.1),0 3px 6px rgba(0,0,0,.1);background:#6a7c94;position:relative;height:auto;display:flex;flex-wrap:wrap}#seopress-content .seopress-page-list .seopress-feature a.button-secondary{padding-left:30px}#seopress-content .seopress-page-list .seopress-feature a.button-secondary::before,#seopress-notifications-center .seopress-alert .button-primary::after{content:"\f111";font-family:Dashicons;position:absolute;left:10px;top:1px;-moz-osx-font-smoothing:grayscale;-webkit-font-smoothing:antialiased;font-size:16px}#seopress-content .seopress-page-list .wrap-btn{display:inline-flex;margin-bottom:2rem;flex-direction:column}#seopress-content .seopress-page-list .seopress-feature a.view-redirects,#seopress-notifications-center .seopress-alert .button-primary,.seopress-get-started .button,.seopress-option .button{color:#6a7c94;background:#fff;font-weight:500;transition:all .3s linear;text-shadow:none;text-transform:uppercase;padding-right:20px;padding-left:20px;line-height:34px;min-height:34px;margin:10px 0;border-radius:4px;box-shadow:transparent 0 0 0 0,transparent 0 0 0 0,rgba(0,0,0,.12) 0 1px 1px 0,rgba(60,66,87,.16) 0 0 0 1px,transparent 0 0 0 0,transparent 0 0 0 0,rgba(60,66,87,.12) 0 2px 5px 0;vertical-align:baseline;display:inline-flex;align-items:center;border:none;margin-right:.5rem;cursor:pointer}.seopress-get-started .button{color:#fff;background:#6259e6;box-shadow:none}.seopress-option .wp-picker-container button{box-shadow:none;border:1px solid #0071a1;border-radius:3px;background:#f3f5f6;text-transform:none}.seopress-option .wp-picker-container input[type=text].wp-color-picker{min-width:inherit}.seopress-option .wp-picker-container .wp-picker-clear{box-shadow:none;text-transform:none;border-radius:0;background:0 0}.seopress-option .wp-picker-container .wp-picker-clear:hover{background:0 0;text-decoration:currentColor;color:inherit}.seopress-option .button .dashicons{font-size:16px}#seopress-content .seopress-page-list .seopress-feature a.view-redirects{padding-left:30px}#seopress-notifications-center .seopress-alert .button-primary::after{content:"\f344";left:inherit;right:10px}#seopress-content .seopress-page-list .seopress-feature a.view-redirects::before{content:"\f177"}#seopress-content .seopress-page-list .seopress-feature a:hover,#seopress-notifications-center .seopress-alert .button-primary:hover,.seopress-get-started .button-primary:hover,.seopress-option .button:hover,.seopress-option .seopress-feature a:hover,.seopress-useful-tools .widget .button-primary:hover{text-decoration:none;color:#fff;background:#232323}.seopress-get-started .button .dashicons{transition:all .3s linear}.seopress-get-started .button:hover .dashicons{color:#fff}#seopress-content .seopress-page-list .seopress-feature .seopress-doc:focus,#seopress-content .seopress-page-list .seopress-feature a:focus,#seopress-content .seopress-page-list .seopress-feature a:focus.button-secondary,#seopress-content a:focus,#seopress-notifications-center .seopress-alert .button-primary:focus,.seopress-option #seopress-tabs .seopress-doc:focus,.seopress-option .seopress-feature a:focus,.seopress-styles .seopress-option #seopress-aio-migrate:focus,.seopress-styles .seopress-option #seopress-yoast-migrate:focus,.seopress-styles .seopress-option #submit:focus,.seopress-useful-tools .widget .button-primary:focus{box-shadow:0 1px 0 #0073aa,0 0 2px 1px #33b3db;background:#008ec2;border-color:#006799;color:#fff}#seopress-admin-tabs .nav-tab-wrapper a.nav-tab-active:focus{color:inherit}#seopress-notifications-center .seopress-alert .button-primary{margin:5px 0;padding-right:30px}#seopress-notifications-center h2,.seopress-useful-tools h2{margin:5px 0 15px 5px;display:inline-block;width:100%}#seopress-notifications-center .dashicons,.seopress-useful-tools .dashicons{margin-right:10px}#seopress-notifications-center .seopress-alert{padding:1.5rem 2rem 1.2rem 1rem;border-bottom:1px solid #e6ebf1;width:calc(100% - 3rem);flex:1 1 auto;position:relative;transition:all 150ms ease;align-items:center;display:flex;justify-content:space-between}#seopress-notifications-center .seopress-alert:last-child{margin-bottom:0;border-bottom:none}#seopress-notifications-center .seopress-alert:hover{cursor:default}#seopress-notifications-center .dashicons{display:flex;align-self:normal;width:48px;height:48px;color:#d7dade;font-size:48px;padding:0 1rem}#seopress-notifications-center .seopress-alert p{margin:0}#seopress-notifications-center .notice-left{flex:1}#seopress-notifications-center .notice-left>p:first-child{color:#1a1f36;font-weight:500}#seopress-notifications-center .notice-right{padding:1rem 0 0 0;display:flex}#seopress-notifications-center .seopress-alert.impact::after{content:"";width:10px;height:10px;border-radius:50px;position:absolute;right:1rem;top:1rem}#seopress-notifications-center .seopress-alert.impact.low::after{background:#ffde24}#seopress-notifications-center .seopress-alert.impact.medium::after{background:#e39f48}#seopress-notifications-center .seopress-alert.impact.high::after{background:#e25950}#seopress-notifications-center .seopress-alert.impact.info::after{background:#0085ba}#seopress-notifications-center .seopress-alert.dashicons{color:#6f8096}#seopress-notifications-center .dashicons.remove-notice,.seopress-get-started .remove-notice{position:absolute;right:0;color:#6b7c93;font-size:20px;height:30px;width:30px;vertical-align:middle;top:1.2rem;line-height:30px;padding:5px;transition:all .3s linear;margin:0;display:block}.seopress-get-started .remove-notice{top:10px;right:10px}#seopress-notifications-center .dashicons.remove-notice:hover,.seopress-get-started .remove-notice:hover{color:#1a1f36;cursor:pointer}#seopress-content .seopress-page-list .seopress-feature .seopress-doc,.seopress-option #seopress-tabs .seopress-doc{background:0 0;padding:0;text-decoration:none;color:inherit;box-shadow:none;position:absolute;right:.5rem;top:1rem}#seopress-content .seopress-page-list .seopress-feature .seopress-doc:hover,.seopress-option #seopress-tabs .seopress-doc:hover{color:#747474;background:0 0}#seopress-content .seopress-page-list .seopress-feature .seopress-doc:hover .dashicons{color:#232323}.seopress-option .seopress-table{background:#fff;border:1px solid #ccc}.seopress-option .seopress-table th{padding:15px 10px;vertical-align:middle}.wp-admin-ui_page_seopress-roles .seopress-option .seopress-table th{min-width:200px}.seopress-option .seopress-table .seopress-settings-section{background:#f1f1f1}.seopress-option .seopress-table .seopress-table-head .seopress-feature{border-bottom:1px solid #ccc;font-weight:700;background:#f1f1f1}#seopress-content .feature-state,.seopress-option .feature-state{font-style:italic;font-size:10px;display:inline-block;background:rgba(0,140,135,.1);padding:2px 10px;border-radius:25px;color:#444;font-weight:400;text-transform:none;-moz-osx-font-smoothing:initial;-webkit-font-smoothing:initial}@media only screen and (max-width:768px){#seopress-content .feature-state,.seopress-option .feature-state{display:none}}.seopress-option .seopress_wrap_single_cpt .feature-state,.seopress-option .seopress_wrap_tax .feature-state{padding:2px 12px;margin:0 0 .5rem .5rem}.seopress-option #tab_seopress_titles_archives h2,.seopress-option #tab_seopress_titles_single h2,.seopress-option #tab_seopress_titles_tax h2{margin:2em 0 1em 0;border-top:1px solid #eee;padding:1em 0 0 0}.seopress-option #tab_seopress_titles_archives h2:first-child,.seopress-option #tab_seopress_titles_single h2:first-child,.seopress-option #tab_seopress_titles_tax h2:first-child{border-top:none;margin:0 0 1em 0}#seopress_cpt .tag-title,#seopress_pro_cpt .tag-title,.seopress-button,.seopress-option .tag-title{cursor:pointer;font-weight:500;border-radius:4px;transition:all .3s linear}#seopress-content .feature-state-on,#seopress-content .feature-state.feature-state-on,.seopress-option .feature-state-on,.seopress-option .feature-state.feature-state-on{display:inline-block}#seopress-content .feature-state-off,.seopress-option .feature-state-off{display:none}.seopress-option .postbox .inside li{list-style:square inside;padding-left:5px}#tab_seopress_page_speed .inside li{list-style:none;padding-left:0;word-break:break-word}.seopress-option .log{margin:0;text-transform:uppercase;display:inline-block;vertical-align:middle;padding:5px;color:#13bf11;font-style:italic}.seopress-option input[type=text].seopress-admin-menu-input{min-width:inherit;width:100%}.seopress_page_seopress-import-export .postbox{width:calc(100% - 20px)}#seopress_cpt .wrap-tags,#seopress_pro_cpt .wrap-tags,.seopress-option .wrap-tags{position:relative;display:inline-block;width:100%;margin-bottom:10px}#seopress_cpt .tag-title,#seopress_pro_cpt .tag-title,.seopress-option .tag-title{padding:4px 8px;position:relative;top:5px;left:0;font-size:11px;float:left;margin-right:5px;user-select:none;margin-bottom:5px;background:#fff;color:#6b7c93;box-shadow:0 0 0 .5px rgba(50,50,93,.17),0 2px 5px 0 rgba(50,50,93,.12),0 3px 9px 0 rgba(50,50,93,.08),0 1px 1.5px 0 rgba(0,0,0,.08),0 1px 2px 0 rgba(0,0,0,.08)}#seopress_cpt .tag-title:active,#seopress_cpt .tag-title:focus,#seopress_cpt .tag-title:hover,#seopress_pro_cpt .tag-title:active,#seopress_pro_cpt .tag-title:focus,#seopress_pro_cpt .tag-title:hover,.seopress-option .tag-title:active,.seopress-option .tag-title:focus,.seopress-option .tag-title:hover{background:#232323;color:#fff;user-select:none}#seopress_cpt .tag-title .dashicons,#seopress_pro_cpt .tag-title .dashicons,.seopress-option .tag-title .dashicons{padding:0;height:16px;width:16px;font-size:16px;margin-right:5px;vertical-align:middle}.seopress-button{text-transform:uppercase;background:#fff;border-color:#c8d7e1;border-style:solid;border-width:1px 1px 2px;color:#2e4453;display:inline-block;margin:0;outline:0;overflow:hidden;text-overflow:ellipsis;text-decoration:none;vertical-align:top;box-sizing:border-box;font-size:14px;line-height:20px;padding:6px 8px 6px;-webkit-appearance:none;-moz-appearance:none;appearance:none}.seopress-button:hover{border-color:#a8bece;color:#00a0d2}.seopress-button .dashicons{vertical-align:middle}#seopress-content #tab_seopress_seo_tools.seopress-useful-tools .widget{border-right:1px solid #e6ebf1;margin:0;padding:0 20px;width:calc(50% - 2px);box-sizing:border-box;display:inline-block;vertical-align:top}#seopress-content #tab_seopress_seo_tools.seopress-useful-tools .widget:first-child{width:100%;display:block;clear:both;border-right:none;border-bottom:1px solid #e6ebf1;padding-bottom:20px;margin-bottom:20px}#seopress-content #tab_seopress_seo_tools.seopress-useful-tools .widget:last-child{border-right:none}#seopress-content .seopress-useful-tools .widget-reverse ul{background:#fff}#seopress-content .seopress-useful-tools .widget-reverse li{padding:10px;margin:0;border-bottom:1px solid #e6ebf1}#seopress-content .seopress-useful-tools .widget-reverse li:hover{background:#f5f7fa}#seopress-content .seopress-useful-tools .widget-title{text-transform:uppercase;margin:0 0 10px;font-size:13px;padding:10px 0;color:#24b47e}#seopress-content .seopress-reverse label,#seopress-content .seopress-useful-tools .widget-whois ul li span{font-weight:700}#seopress-content #seopress-reverse-url{width:100%;margin:10px 0}#seopress-content .widget-reverse p{margin:0}.post-type-seopress_backlinks .wp-list-table .column-seopress_backlinks_url{width:35%}.post-type-seopress_backlinks .wp-list-table .column-seopress_backlinks_anchor_text{width:20%}.seopress-styles #screen-meta{margin:0;position:relative;background-color:#fff;border-bottom:0 solid #f2f2f2;border-top:none;-webkit-box-shadow:0 0 0 1px rgba(136,152,170,.1),0 15px 35px 0 rgba(49,49,93,.1),0 5px 15px 0 rgba(0,0,0,.08);box-shadow:0 0 0 1px rgba(136,152,170,.1),0 15px 35px 0 rgba(49,49,93,.1),0 5px 15px 0 rgba(0,0,0,.08);top:0}.seopress-styles #contextual-help-link-wrap,.seopress-styles #screen-options-link-wrap{float:right;height:28px;margin:0 0 0 6px;border:1px solid #f2f2f2;border-top:none;background:#fff;-webkit-box-shadow:0 0 0 1px rgba(136,152,170,.1),0 15px 35px 0 rgba(49,49,93,.1),0 5px 15px 0 rgba(0,0,0,.08);box-shadow:0 0 0 1px rgba(136,152,170,.1),0 15px 35px 0 rgba(49,49,93,.1),0 5px 15px 0 rgba(0,0,0,.08)}.seopress-styles #screen-meta-links .show-settings{box-shadow:none}.seopress-styles #screen-meta-links .screen-meta-toggle{position:relative;top:0;z-index:2000}.seopress-styles #contextual-help-back{background:#f8fafd}.seopress-styles .contextual-help-tabs .active{border-left:2px solid #3297d3;background:#f8fafd}#seopress-content input.toggle,#seopress_cpt input.toggle,.seopress-option input.toggle{max-height:0;max-width:0;opacity:0;position:relative}.seopress-feature input.toggle{display:block}.wrap-toggle-preview{position:relative}.wrap-toggle-preview p{font-weight:700;margin:0 0 1rem 0}#seopress_cpt input.toggle,.seopress_wrap_single_cpt input.toggle,.seopress_wrap_tax input.toggle{margin:0;border:none;min-width:0}#seopress_content_analysis span.label,#seopress_cpt span.label{outline:0;color:#fff;box-shadow:none;background:#555d66;padding:2px 4px;border-radius:4px;font-weight:700}#seopress-content input.toggle+label,#seopress_cpt #tabs-1 input.toggle+label,.seopress-option input.toggle+label{display:inline-block;position:relative;box-shadow:inset 0 0 0 1px #d5d5d5;text-indent:-5000px;height:20px;width:40px;border-radius:15px}#seopress_cpt #tabs-1 input.toggle+label{margin:0}.wrap-toggle-checkboxes input.toggle+label{float:left;margin-right:10px}#seopress-content input.toggle+label:before,#seopress_cpt input.toggle+label:before,.seopress-option input.toggle+label:before{content:"";position:absolute;display:block;height:20px;width:30px;top:0;left:0;border-radius:15px;background:rgba(19,191,17,0);-moz-transition:.25s ease-in-out;-webkit-transition:.25s ease-in-out;transition:.25s ease-in-out}#seopress-content input.toggle+label:after,#seopress_cpt input.toggle+label:after,.seopress-option input.toggle+label:after{content:"";position:absolute;display:block;height:20px;width:20px;top:0;left:0;border-radius:15px;background:#fff;box-shadow:inset 0 0 0 1px rgba(0,0,0,.2),0 2px 4px rgba(0,0,0,.2);-moz-transition:.25s ease-in-out;-webkit-transition:.25s ease-in-out;transition:.25s ease-in-out}#seopress_cpt input.toggle+label,#seopress_cpt input.toggle+label:before,.seopress_wrap_single_cpt input.toggle+label,.seopress_wrap_single_cpt input.toggle+label:before,.seopress_wrap_tax input.toggle+label,.seopress_wrap_tax input.toggle+label:before{width:40px;height:20px}#seopress_cpt input.toggle+label:after,.seopress_wrap_single_cpt input.toggle+label:after,.seopress_wrap_tax input.toggle+label:after{width:20px;height:20px}#seopress-content input.toggle[data-toggle="1"]+label:before,#seopress_cpt input.toggle[data-toggle="1"]+label:before,.seopress-option input.toggle[data-toggle="1"]+label:before{width:40px;background:#3197d3}#seopress_cpt input.toggle[data-toggle="1"]+label:before,.seopress_wrap_single_cpt input.toggle[data-toggle="1"]+label:before,.seopress_wrap_tax input.toggle[data-toggle="1"]+label:before{width:40px;background:#3197d3}#seopress-content input.toggle[data-toggle="1"]+label:after,#seopress_cpt input.toggle[data-toggle="1"]+label:after,.seopress-option input.toggle[data-toggle="1"]+label:after{left:20px;box-shadow:inset 0 0 0 1px #3197d3,0 2px 4px rgba(0,0,0,.2)}#seopress_cpt input.toggle[data-toggle="1"]+label:after,.seopress_wrap_single_cpt input.toggle[data-toggle="1"]+label:after,.seopress_wrap_tax input.toggle[data-toggle="1"]+label:after{box-shadow:inset 0 0 0 1px #3197d3,0 2px 4px rgba(0,0,0,.2)}#seopress-content .seopress-page-list{position:relative;display:grid;max-width:64rem;grid-gap:20px 20px;grid-template-columns:repeat(3,1fr)}#seopress-notice-save{position:fixed;color:#fff;padding:15px 40px;font-size:.9rem;text-transform:uppercase;text-align:center;border-radius:0;background:rgba(74,184,102,.9);bottom:0;right:0;z-index:500;width:100%;font-weight:700}#seopress-notice-save .dashicons{color:#fff}.seopress_page_seopress-pro-page #wpcontent{background:#f4f7fa}.seopress-option .wrap div.nav-tab-wrapper{margin:0 0 0 -26px;padding:0 0 0 10px;line-height:inherit;width:230px;z-index:95;font-weight:400;display:block;border-bottom:none}@media only screen and (max-width:1024px){.seopress-option .wrap div.nav-tab-wrapper{width:100%;margin:0;padding:0}}#seopress-admin-tabs.wrap div.nav-tab-wrapper{margin:20px auto 0;max-width:64rem;width:100%;border-bottom:1px solid #e6ebf1;padding:0;line-height:inherit;position:-webkit-sticky;position:sticky;background:#f5f7fa;z-index:100;top:31px;border-radius:4px 4px 0 0;font-weight:400;overflow:hidden;display:flex;align-items:center;justify-content:space-between;box-sizing:border-box}#seopress-admin-tabs #tab_seopress_notifications.seopress-tab{background:0 0;padding:0;border-radius:0}.seopress-option .nav-tab{border:0 solid #ccc;background:0 0;opacity:.5;padding:6px 30px 6px 10px;transition:opacity .3s linear;color:#191e23;margin:0;float:none;display:inline-block;width:100%;text-align:left;font-weight:400;box-sizing:border-box;white-space:normal}#seopress-admin-tabs .nav-tab{border:0 solid #ccc;background:0 0;opacity:.5;padding:14px 20px;transition:opacity .3s linear;color:#191e23;margin:0;box-shadow:inset -1px 0 #e3e8ee;float:none;display:inline-block;text-align:center;font-weight:400}#seopress-admin-tabs .nav-tab{width:100%}#seopress-admin-tabs .nav-tab-active,#seopress-admin-tabs .nav-tab-active:hover,.seopress-option .about-wrap h2 .nav-tab-active,.seopress-option .nav-tab-active,.seopress-option .nav-tab-active:hover{background-color:#fff}#seopress-admin-tabs .nav-tab-active,#seopress-admin-tabs .nav-tab-active:focus,#seopress-admin-tabs .nav-tab-active:focus:active,#seopress-admin-tabs .nav-tab-active:hover,#seopress-admin-tabs .nav-tab:focus,.nav-tab-active:focus,.seopress-option .nav-tab-active,.seopress-option .nav-tab-active:focus:active,.seopress-option .nav-tab-active:hover,.seopress-option .nav-tab:focus{opacity:1;outline:0;font-weight:600;position:relative;color:#191e23;border-left:3px solid #0085ba;background:rgba(0,133,186,.1)}#seopress-admin-tabs .nav-tab-active,#seopress-admin-tabs .nav-tab-active:focus,#seopress-admin-tabs .nav-tab-active:focus:active,#seopress-admin-tabs .nav-tab-active:hover,#seopress-admin-tabs .nav-tab:focus{border-bottom:3px solid #3197d3;border-left:none;background:#fff}#seopress-admin-tabs .nav-tab:hover,.seopress-option .nav-tab:hover{opacity:1}#seopress-admin-tabs .nav-tab:focus,.seopress-option .nav-tab:focus{outline:0;box-shadow:none}.seopress-option .section-tool{border:none;box-shadow:none;background:0 0;position:relative}.seopress-option .section-tool::after{content:'';background:#dedede;height:1px;width:100%;display:block}.seopress-option .sp-section-header{border-bottom:1px solid #eee;margin:0 0 1rem 0;width:100%;display:flex;position:relative;align-items:center;padding-bottom:.5rem}.seopress-option .sp-section-header::after{position:absolute;content:'';background:#0085ba;height:2px;width:40px;bottom:0;left:0}.seopress-option .sp-section-header h2{font-size:1.5em}.seopress-option .sp-section-header>.dashicons{color:#0085ba;padding:10px;border-radius:6px;margin-right:10px;background:#c4f0ff}.seopress-option .sp-section-header .wrap-toggle-checkboxes{display:flex}.seopress-styles .wrap .notice{margin:5px 0 15px 15px}
1
+ #adminmenu div.wp-menu-image.dashicons-admin-seopress::before,#seopress-header #seopress-admin h1::before{content:"\e800";font-family:seopress!important;font-weight:700;font-size:12px;line-height:20px}#seopress-header #seopress-admin h1::before,.seopress-page-list .seopress-feature h3,.seopress-styles .seopress-option h1{-moz-osx-font-smoothing:grayscale;-webkit-font-smoothing:antialiased}@font-face{font-family:seopress;src:url(../fonts/seopress.eot?81521271);src:url(../fonts/seopress.eot?81521271#iefix) format('embedded-opentype'),url(../fonts/seopress.woff?81521271) format('woff2'),url(../fonts/seopress.woff?81521271) format('woff'),url(../fonts/seopress.ttf?81521271) format('truetype'),url(../fonts/seopress.svg?81521271#seopress) format('svg');font-weight:400;font-style:normal}[class*=" icon-seopress"],[class^=icon-seopress-]{font-family:seopress!important;font-size:14px!important;line-height:24px!important}#tab_seopress_titles_archives .form-table th:empty,#tab_seopress_titles_single .form-table th:empty,#tab_seopress_titles_tax .form-table th:empty{display:none}.icon-seopress-seopress:before{content:"\e800"}.sp-tooltip{position:relative;margin-left:5px;display:inline-block;cursor:help;vertical-align:bottom;text-align:left}.sp-tooltip .dashicons{color:#666}.sp-tooltip .sp-tooltiptext{visibility:hidden;position:absolute;z-index:999999999;width:300px;right:-303px;padding:20px;top:25px;font-weight:400;box-shadow:0 3px 30px rgba(25,30,35,.1);border:1px solid #e2e4e7;background:#fff;word-break:break-word}.sp-tooltip .sp-tooltiptext::before{border:8px solid #e2e4e7;top:-8px}.sp-tooltip .sp-tooltiptext::after{border:8px solid #fff;top:-6px}.sp-tooltip .sp-tooltiptext::after,.sp-tooltip .sp-tooltiptext::before{border-bottom-style:solid;border-left-color:transparent;border-right-color:transparent;border-top:none;margin-left:-10px;content:"";position:absolute;height:0;width:0;line-height:0;left:30px}.sp-tooltip:hover .sp-tooltiptext{visibility:visible}.sp-tooltip .sp-tooltip-headings{font-size:18px;font-weight:600;margin-bottom:20px;display:block}.sp-tooltip .sp-tooltip-desc{margin-bottom:20px;display:block;border-bottom:1px solid #e2e4e7;padding-bottom:20px;font-size:13px}.sp-tooltip .sp-tooltip-code{font-family:Menlo,Monaco,Andale Mono,Courier New,monospace;display:block;word-break:break-all;color:#42b72a;font-size:11px}.analysis-score .sp-tooltip{vertical-align:middle;font-size:.75em}#seopress_content_analysis a{color:#0073aa}#seopress_content_analysis .wrap-seopress-analysis{display:inline-block;width:100%}#seopress_content_analysis .col-left{width:calc(50% - 30px);float:left;margin-right:30px}#seopress_content_analysis .col-right{float:right;width:50%}#seopress_content_analysis #seopress_suggestions{display:inline-block;width:100%;margin:0;height:auto;padding:20px 0}#seopress_content_analysis #seopress_suggestions li{list-style:none;margin:5px;display:inline-block}#seopress_content_analysis .analysis-score{clear:both;border-top:1px solid #e2e4e7;display:flex;justify-content:space-between;align-items:center}.column-seopress_score .analysis-score{display:flex;align-content:center}#seopress_content_analysis .analysis-score p,.column-seopress_score .analysis-score p{font-weight:700;font-size:1.2em}#seopress_content_analysis .analysis-score svg,.column-seopress_score .analysis-score svg{display:inline-block;height:30px;width:30px;margin:0;border-radius:100%;position:relative;font-weight:600;shape-rendering:geometricprecision;font-size:.5rem;vertical-align:middle;margin-right:15px}.column-seopress_score .analysis-score p,.column-seopress_score .analysis-score svg{margin:0}@keyframes loadingPulse{0%{stroke:#adc5d2}50%{stroke:#00a0d2}100%{stroke:#adc5d2}}#seopress_content_analysis .analysis-score .loading #bar{stroke-dashoffset:0!important;stroke:#adc5d2!important;animation:loadingPulse 3s infinite ease-in-out}#seopress_content_analysis .analysis-score .good #bar,.column-seopress_score .analysis-score #bar.good{stroke:#46b450}#seopress_content_analysis .analysis-score .notgood #bar,.column-seopress_score .analysis-score #bar.notgood{stroke-dashoffset:565;stroke:#ffb900}#seopress_content_analysis .analysis-score svg circle,.column-seopress_score .analysis-score svg circle{stroke-dashoffset:0;transition:stroke-dashoffset 1s linear;stroke:#ccc;stroke-width:2em}#seopress_content_analysis .gr-analysis{clear:both}#seopress_content_analysis .gr-analysis-title{border-top:1px solid #e2e4e7;position:relative}#seopress_content_analysis .gr-analysis-title .impact,#seopress_cpt .impact{position:absolute;left:10px;top:calc(50% - 5px);width:10px;height:10px;border-radius:50px;padding:0;margin:0;border:1px solid #fff}#seopress_content_analysis .gr-analysis .impact.good{background:#46b450;box-shadow:0 0 5px #46b450}#seopress_content_analysis .gr-analysis .impact.low{background:#ffde24;box-shadow:0 0 5px #ffde24}#seopress_content_analysis .gr-analysis .impact.medium{background:#e39f48;box-shadow:0 0 5px #e39f48}#seopress_content_analysis .gr-analysis .impact.high,#seopress_cpt .impact.high{background:#e25950;box-shadow:0 0 5px #e25950}#seopress_content_analysis .gr-analysis-content .impact.high{background:#e25950;box-shadow:none;color:#fff;padding:2px 4px;margin-left:5px;border-radius:4px;font-weight:700}#seopress_cpt .impact.high{position:relative;top:calc(50% - 18px);display:inline-block;left:inherit;right:-10px}#seopress_content_analysis .gr-analysis-title button{background:#fff;border:0;cursor:pointer;display:block;margin:0;position:relative;text-align:left;width:100%;padding:15px 30px;align-items:center;transition:all .3s linear}#seopress_content_analysis .gr-analysis-title button:hover{background:#f3f4f5}#seopress_content_analysis .gr-analysis-title button:focus{color:#191e23;border:none;box-shadow:none;outline-offset:-2px;outline:1px dotted #555d66}#seopress_content_analysis .gr-analysis-title button .sp-arrow::after{content:"\f343";font-family:Dashicons;position:absolute;right:10px;top:calc(50% - 7px)}#seopress_content_analysis .gr-analysis-title button.open .sp-arrow::after{content:"\f347"}#seopress_content_analysis .gr-analysis-content{padding:0 1rem .5rem 1rem;display:none;width:100%;border-top:1px solid #e2e4e7;box-sizing:border-box}#seopress_content_analysis h3{margin:0;font-size:1em}#seopress_content_analysis h4{border-bottom:1px solid #e2e4e7;padding-bottom:.5rem;text-transform:uppercase;font-size:.85em;position:-webkit-sticky;position:sticky;top:0;background:#fff}#seopress_content_analysis .wrap-analysis-img ul{display:flex;flex-wrap:wrap}#seopress_content_analysis .wrap-analysis-img ul li{padding:0;text-align:left;cursor:default}#seopress_content_analysis .wrap-analysis-img h4{border-bottom:1px solid #ddd;padding-bottom:10px}#seopress_content_analysis .wrap-analysis-img ul li img{max-width:150px;max-height:150px;object-fit:cover;border:1px solid #f3f4f5;cursor:default;padding:1px}#seopress_cpt .notice{padding:10px 14px}#seopress-analysis-tabs .dashicons,#seopress_cpt .dashicons{vertical-align:middle}#seopress-analysis-tabs{clear:both}#seopress_cpt .inside{margin:0;padding:0}#seopress_cpt .ui-tabs .ui-tabs-nav{display:inline-block;min-height:26px;position:relative;width:100%;z-index:10;margin:0;border-radius:0;padding:0;background:#f3f4f5;border:none}#seopress_cpt .ui-helper-clearfix:after{content:none}.seopress_page_seopress-titles #seopress-tabs .form-table td,.seopress_page_seopress-titles #seopress_content_analysis .form-table td{padding:0}#seopress_cpt .ui-tabs .ui-tabs-panel{background:#fff;border-radius:0;display:inline-block;padding:1em 1.4em;width:100%;box-sizing:border-box}#seopress_content_analysis .dashicons-info,#seopress_cpt .ui-tabs .ui-tabs-panel .dashicons-info,#seopress_pro_cpt .dashicons-info{font-size:16px;vertical-align:middle;height:16px;width:16px}#seopress_cpt .ui-tabs .ui-tabs-nav li,#seopress_cpt .ui-tabs-anchor{cursor:pointer!important}#seopress_cpt .ui-tabs .ui-tabs-nav li.ui-tabs-active{position:relative;z-index:60;cursor:pointer;border-radius:0;border-bottom:3px solid #0085ba}#seopress_content_analysis label,#seopress_cpt #tabs-1 label,#seopress_cpt #tabs-2 label[for=seopress_robots_breadcrumbs_meta],#seopress_cpt #tabs-2 label[for=seopress_robots_canonical_meta],#seopress_cpt #tabs-2 label[for=seopress_robots_primary_cat_meta],#seopress_cpt #tabs-3 label,#seopress_cpt #tabs-4 label,#seopress_cpt #tabs-5 label,#seopress_cpt #tabs-6 label,#seopress_cpt .subsection-title,#seopress_pro_cpt label{display:block;margin:20px 0 5px;font-weight:700}#seopress_cpt .wp-color-result{margin:0}#seopress_content_analysis input[type=text],#seopress_cpt #tabs-1 input,#seopress_cpt #tabs-2 input[type=text],#seopress_cpt #tabs-3 input[type=text],#seopress_cpt #tabs-3 textarea,#seopress_cpt #tabs-4 input[type=text],#seopress_cpt #tabs-5 input[type=text],#seopress_cpt #tabs-6 input[type=text],#seopress_cpt #tabs-6 textarea{width:100%;display:inline-block}#seopress_cpt #tabs-1 input{width:100%}#seopress_cpt #tabs-6 input[type=number]{width:30%;min-width:200px}#seopress_cpt #tabs-6 #wrap-videos .video:first-child .remove-video{display:none}#seopress_cpt select{width:300px}#seopress_cpt #tabs-4 select{width:250px;display:inline}#seopress_cpt #tabs-4 #seopress_redirections_value_meta{width:calc(100% - 258px);float:right}#seopress_cpt #tabs-6{padding:0}#seopress_cpt #tabs-6 #wrap-videos .video .accordion-section-content,#seopress_cpt #tabs-6>p{padding:0 1.4em}#seopress_cpt #tabs-6 #wrap-videos .video .accordion-section-content{padding:0 1.4em 1em}#seopress_cpt #tabs-6 #wrap-videos .video{border-top:1px solid #eee}#seopress_cpt #tabs-6 #wrap-videos .video .accordion-section-title{border-left:none;border-right:none;font-size:1em;padding:1em 1.4em}#seopress_cpt #tabs-6 #wrap-videos .video:last-child .accordion-section-content,#seopress_cpt #tabs-6 #wrap-videos .video:last-child .accordion-section-title{border-bottom:1px solid #eee}#seopress_cpt #tabs-6 #wrap-videos .video .inside{padding:0}#seopress_cpt #tabs-4 #seopress_redirections_enabled,#seopress_cpt #tabs-5 #seopress_news_disabled,#seopress_cpt #tabs-5 #seopress_news_standout,#seopress_cpt #tabs-6 #seopress_video_disabled,#seopress_cpt #tabs-6 .family-friendly label,#seopress_cpt #tabs-6 .internal_video label{font-weight:400}#seopress_cpt #tabs-6 #wrap-videos .video:nth-child(odd){background:#fdfdfd}#seopress_content_analysis .advise,#seopress_cpt .advise,#seopress_pro_cpt .advise,.seopress-option .advise{margin:5px;display:block;color:red;font-style:italic}#seopress_cpt #tabs-6 #wrap-videos .video .advise{color:#555}#seopress_content_analysis .mandatory,#seopress_cpt .mandatory{color:#c00}#seopress_cpt .box-left{float:left;width:49%;margin-right:1%}#seopress_cpt .box-right{float:left;width:49%;margin-left:1%}#seopress_cpt #tabs-3 .box-left{width:44%}#seopress_cpt #tabs-3 .box-right{width:54%}@media only screen and (max-width:1200px){#seopress_cpt .box-left,#seopress_cpt .box-right{float:none;width:100%;margin:0}}@media only screen and (max-width:1500px){#seopress_cpt #tabs-3 .box-left,#seopress_cpt #tabs-3 .box-right{float:none;width:100%;margin:0}}#edittag #seopress_cpt #tabs-3 .box-left,#edittag #seopress_cpt #tabs-3 .box-right{float:none;width:100%;margin:0}#seopress-tabs .seopress_media_upload,#seopress_pro_cpt .seopress_media_upload{margin-top:.5rem}#seopress_cpt .google-snippet-preview{font-family:arial,sans-serif;word-break:break-all}#seopress_cpt .google-snippet-preview.mobile-preview .wrap-snippet{margin:0 0 10px 0;box-shadow:0 1px 6px rgba(32,33,36,.28);border-radius:8px;padding:12px 16px}#seopress_cpt .google-snippet-preview>p{word-break:normal}#seopress_cpt .google-snippet-preview .snippet-title,#seopress_cpt .google-snippet-preview .snippet-title-custom,#seopress_cpt .google-snippet-preview .snippet-title-default{color:#1a0dab;font-size:18px;font-weight:400;line-height:21.6px}#seopress_cpt .google-snippet-preview.mobile-preview .snippet-title,#seopress_cpt .google-snippet-preview.mobile-preview .snippet-title-custom,#seopress_cpt .google-snippet-preview.mobile-preview .snippet-title-default{font-size:16px;line-height:20px;margin-bottom:12px}#seopress_cpt .google-snippet-preview .snippet-permalink{color:#006621;font-size:14px;font-style:normal;font-weight:400;line-height:16px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}#seopress_cpt .google-snippet-preview .wrap-snippet .wrap-m-icon-permalink,#seopress_cpt .google-snippet-preview.mobile-preview .snippet-permalink{display:none}#seopress_cpt .google-snippet-preview.mobile-preview .wrap-m-icon-permalink{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;margin-bottom:12px;display:flex}#seopress_cpt .google-snippet-preview.mobile-preview .wrap-m-icon-permalink .snippet-permalink{display:block;color:#3c4043;font-size:12px}#seopress_cpt .google-snippet-preview.mobile-preview .snippet-favicon{margin-right:12px;vertical-align:middle}#seopress_cpt .google-snippet-preview.mobile-preview .snippet-favicon img{width:16px;height:16px;max-width:inherit}#seopress_cpt .google-snippet-preview.mobile-preview .wrap-snippet .snippet-permalink:first-child{color:#3c4043;white-space:nowrap;font-size:12px;display:block}#seopress_cpt .google-snippet-preview .snippet-description,#seopress_cpt .google-snippet-preview .snippet-description-custom,#seopress_cpt .google-snippet-preview .snippet-description-default{color:#545454;font-size:14px;font-weight:400;line-height:18.2px;display:inline}#seopress_cpt .google-snippet-preview.mobile-preview .snippet-description,#seopress_cpt .google-snippet-preview.mobile-preview .snippet-description-custom,#seopress_cpt .google-snippet-preview.mobile-preview .snippet-description-default{color:#3c4043;font-size:14px;line-height:20px}#seopress_cpt .google-snippet-preview .snippet-date{color:grey;display:inline}#seopress_cpt .facebook-snippet-box{color:#4b4f56;font-size:14px;width:524px}#seopress_cpt .facebook-snippet-box .notice,#seopress_cpt .twitter-snippet-box .notice{padding:10px 14px;margin:0 0 10px 0;box-sizing:border-box;width:100%}#seopress_cpt .facebook-snippet-box .notice span,#seopress_cpt .twitter-snippet-box .notice span{font-weight:700}#seopress_cpt .snippet-meta{display:flex;overflow:hidden;max-height:12px}#seopress_cpt .fb-by,#seopress_cpt .snippet-fb-site-name,#seopress_cpt .snippet-fb-url{color:#606770;font-size:12px;white-space:normal;line-height:11px;text-transform:uppercase;-webkit-box-orient:vertical;display:-webkit-box;text-overflow:ellipsis}#seopress_cpt .fb-sep{padding-left:5px;padding-right:5px;color:#606770;line-height:11px;font-size:12px}#seopress_cpt .facebook-snippet-box .facebook-snippet-text{border:1px solid #dadde1;background-color:#f2f3f5;padding:10px 12px}#seopress_cpt .facebook-snippet-box .title-desc{max-height:46px;overflow:hidden}#seopress_cpt .facebook-snippet-box .snippet-fb-title,#seopress_cpt .facebook-snippet-box .snippet-fb-title-custom,#seopress_cpt .facebook-snippet-box .snippet-fb-title-default{font-size:16px;line-height:20px;margin:3px 0 0;padding-top:2px;color:#1d2129;font-weight:700;overflow:hidden;-webkit-box-orient:vertical;display:-webkit-box;text-overflow:ellipsis;white-space:normal;word-break:break-word;max-height:22px}#seopress_cpt .facebook-snippet-box .snippet-fb-description,#seopress_cpt .facebook-snippet-box .snippet-fb-description-custom,#seopress_cpt .facebook-snippet-box .snippet-fb-description-default{color:#606770;font-size:14px;line-height:20px;word-break:break-word;font-family:Helvetica,Arial,sans-serif;max-height:80px;overflow:hidden;-webkit-box-orient:vertical;display:-webkit-box;text-overflow:ellipsis;white-space:normal;width:100%}#seopress_cpt .facebook-snippet-box img{display:block;height:274px;width:524px;object-fit:cover;background-color:#edeff0;text-align:center;border-bottom:none}#seopress_cpt .twitter-snippet-box{color:#4b4f56;font-size:14px;width:436px}#seopress_cpt .snippet-twitter-url{color:#8899a6;font-size:14px;white-space:normal;line-height:11px;text-transform:uppercase;-webkit-box-orient:vertical;display:-webkit-box;text-overflow:ellipsis}#seopress_cpt .twitter-snippet-box .twitter-snippet-text{border:1px solid #dadde1;background-color:#fff;padding:10px 12px;border-radius:0 0 10px 10px}#seopress_cpt .twitter-snippet-box .title-desc{max-height:46px;overflow:hidden}#seopress_cpt .twitter-snippet-box .snippet-twitter-img,#seopress_cpt .twitter-snippet-box .snippet-twitter-img-custom,#seopress_cpt .twitter-snippet-box .snippet-twitter-img-default{border-radius:10px 10px 0 0;overflow:hidden}#seopress_cpt .twitter-snippet-box .snippet-twitter-title,#seopress_cpt .twitter-snippet-box .snippet-twitter-title-custom,#seopress_cpt .twitter-snippet-box .snippet-twitter-title-default{font-size:1em;line-height:20px;margin-bottom:5px;max-height:1.3em;color:#000;font-weight:700;overflow:hidden;-webkit-box-orient:vertical;display:-webkit-box;text-overflow:ellipsis;white-space:normal;word-break:break-word}#seopress_cpt .twitter-snippet-box .snippet-twitter-description,#seopress_cpt .twitter-snippet-box .snippet-twitter-description-custom,#seopress_cpt .twitter-snippet-box .snippet-twitter-description-default{color:#000;font-size:14px;line-height:20px;word-break:break-word;font-family:Helvetica,Arial,sans-serif;max-height:80px;overflow:hidden;-webkit-box-orient:vertical;display:-webkit-box;text-overflow:ellipsis;white-space:normal;width:100%}#seopress_cpt .twitter-snippet-box img{display:block;height:200px;width:436px;object-fit:cover;background-color:#edeff0;text-align:center;border-bottom:none}#seopress_cpt .wrap-seopress-counters,#seopress_pro_cpt .wrap-seopress-counters,.seopress-setup .wrap-seopress-counters,.seopress-styles .wrap-seopress-counters{text-align:right;background:#e9ecef;padding:2px 5px;display:flex;font-size:12px;justify-content:flex-end;border-radius:0 0 .25rem .25rem}#seopress_cpt .sp-progress,#seopress_pro_cpt .sp-progress,.seopress-setup .sp-progress,.seopress-styles .sp-progress{display:-ms-flexbox;display:flex;height:1rem;overflow:hidden;font-size:.75rem;background-color:#e9ecef;border-radius:.25rem .25rem 0 0}#seopress_cpt .sp-progress-bar,#seopress_pro_cpt .sp-progress-bar,.seopress-setup .sp-progress-bar,.seopress-styles .sp-progress-bar{display:-ms-flexbox;display:flex;-ms-flex-direction:column;flex-direction:column;-ms-flex-pack:center;justify-content:center;color:#fff;text-align:center;white-space:nowrap;background-color:#0085ba;transition:width .6s ease}#seopress_cpt #seopress_titles_desc_counters,#seopress_cpt #seopress_titles_title_counters,#seopress_pro_cpt #seopress_rich_snippets_articles_counters,#seopress_pro_cpt #seopress_rich_snippets_courses_counters{display:inline;margin-right:5px}#seopress_cpt #seopress_titles_desc_counters_val,#seopress_cpt #seopress_titles_title_counters_val,#seopress_pro_cpt #seopress_rich_snippets_articles_counters_val,#seopress_pro_cpt #seopress_rich_snippets_courses_counters_val{display:inline;font-weight:700}#term-seopress #seopress_cpt{width:95%}.fixed .column-seopress_ps,.fixed .column-seopress_score,.fixed .column-seopress_w3c,.fixed .column-seopress_words{width:6%}.fixed .column-seopress_nofollow,.fixed .column-seopress_noindex{width:8%}@media only screen and (max-width:1200px){.fixed .column-seopress_nofollow,.fixed .column-seopress_noindex,.fixed .column-seopress_ps,.fixed .column-seopress_score,.fixed .column-seopress_w3c,.fixed .column-seopress_words{width:10%}}#seopress_cpt .ui-tabs{position:relative;padding:0;border:none;font-family:inherit;font-size:inherit;display:inline-block;width:100%}#seopress_cpt .ui-tabs .ui-tabs-nav li{list-style:none;display:inline-block;position:relative;top:2px;padding:0 5px;white-space:nowrap;margin:0;border:none;background:0 0}#seopress_cpt .ui-tabs .ui-tabs-nav li a{display:inline-block;padding:5px 10px}#seopress-admin-tabs.ui-tabs-vertical .ui-tabs-nav li a,#seopress_cpt .ui-tabs-vertical .ui-tabs-nav li a{display:block}#seopress_cpt .ui-tabs .ui-tabs-nav li.ui-tabs-active{margin-bottom:2px;padding-bottom:1px}#seopress_cpt .ui-tabs .ui-tabs-nav li.ui-state-disabled a,#seopress_cpt .ui-tabs .ui-tabs-nav li.ui-tabs-active a,#seopress_cpt .ui-tabs .ui-tabs-nav li.ui-tabs-loading a{color:#191e23;font-weight:700}#seopress_cpt .ui-tabs .ui-tabs-nav li a,#seopress_cpt .ui-tabs-collapsible .ui-tabs-nav li.ui-tabs-active a{cursor:pointer;color:#191e23;text-decoration:none;height:40px;line-height:40px}#seopress_cpt .ui-tabs-vertical{width:55em}#seopress_cpt .ui-tabs-vertical .ui-tabs-nav{padding:.2em .1em .2em .2em;float:left;width:12em}#seopress_cpt .ui-tabs-vertical .ui-tabs-nav li{clear:left;width:100%;border-bottom-width:1px!important;border-right-width:0!important;margin:0 -1px .2em 0}#seopress_cpt .ui-tabs-vertical .ui-tabs-nav li.ui-tabs-active{padding-bottom:0;padding-right:.1em;border-right-width:1px}#seopress_cpt .ui-tabs-vertical .ui-tabs-panel{padding:1em;float:right;width:40em}#seopress_cpt .ui-tabs .ui-tabs-nav li a .dashicons{margin-right:2px}#tab-panel-seopress_titles_help_tab li span{font-weight:700;margin-right:10px}#seopress_content_analysis .dashicons-no-alt,#seopress_content_analysis .dashicons-yes,#seopress_pro_cpt .dashicons-no-alt,#seopress_pro_cpt .dashicons-yes{color:#fff;background:#12bd10;border-radius:50px;margin-right:10px}#seopress_content_analysis .dashicons-no-alt,#seopress_pro_cpt .dashicons-no-alt{background:#e25950}body.seopress-styles{background:#f8fafd}#seopress-admin-tabs.ui-tabs{position:relative;padding:.2em;border:none;font-family:inherit;font-size:inherit}#seopress-admin-tabs.ui-tabs .ui-tabs-nav li{list-style:none;float:left;position:relative;top:0;margin:-1px .2em 0 0;padding:0;white-space:nowrap;border:none;background:0 0}#seopress-admin-tabs.ui-tabs .ui-tabs-nav li a{float:left;padding:.38em 1em .75rem;outline:0;border-bottom:2px solid #fff}#seopress-admin-tabs.ui-tabs .ui-tabs-nav li.ui-tabs-active{margin-bottom:-1px}#seopress-admin-tabs.ui-tabs .ui-tabs-nav li.ui-state-disabled a,#seopress-admin-tabs.ui-tabs .ui-tabs-nav li.ui-tabs-active a,#seopress-admin-tabs.ui-tabs .ui-tabs-nav li.ui-tabs-loading a{cursor:text;border-bottom:2px solid #23282d;color:#23282d}#seopress-admin-tabs.ui-tabs .ui-tabs-nav li a,#seopress-admin-tabs.ui-tabs-collapsible .ui-tabs-nav li.ui-tabs-active a{cursor:pointer;color:#0073aa;text-decoration:none}#seopress-admin-tabs.ui-tabs-vertical{width:55em}#seopress-admin-tabs.ui-tabs-vertical .ui-tabs-nav{padding:.2em .1em .2em .2em;float:left;width:12em}#seopress-admin-tabs.ui-tabs-vertical .ui-tabs-nav li{clear:left;width:100%;border-bottom-width:1px!important;border-right-width:0!important;margin:0 -1px .2em 0}#seopress-admin-tabs.ui-tabs-vertical .ui-tabs-nav li.ui-tabs-active{padding-bottom:0;padding-right:.1em;border-right-width:1px}#seopress-admin-tabs.ui-tabs-vertical .ui-tabs-panel{padding:1em;float:right;width:40em}.seopress-styles .seopress-option{margin:10px auto 0;max-width:90%;padding:1rem;background:#fff;box-shadow:0 15px 35px rgba(50,50,93,.1),0 5px 15px rgba(0,0,0,.1);border-radius:4px}.seopress-styles .seopress-option h1{font-size:16px;font-weight:700;color:#3297d3;text-transform:uppercase;z-index:100;border-bottom:1px solid #eee;padding-bottom:20px}.seopress-styles .seopress-option h1 .dashicons,.seopress-styles .seopress-option h2 .dashicons{margin:0 10px;font-size:40px;width:40px;height:40px;vertical-align:middle}.seopress-styles .seopress-option .link-archive{font-size:14px}.seopress-styles .seopress-option .link-archive .dashicons{font-size:18px;width:20px;height:20px;margin:inherit}.seopress-styles .seopress-option h1>.dashicons{font-size:30px;width:30px;height:30px;background:#c4f0ff;border-radius:6px;padding:10px;margin-left:10px;color:#0085ba}.seopress-styles .seopress-option .metabox-holder h2 .dashicons{font-size:16px}.seopress-option h1 .feature-state .dashicons{font-size:16px;width:16px;height:16px;vertical-align:middle;margin:0 10px 0 0}.seopress-styles .wrap{margin:20px 0 0 0;display:flex;position:relative}@media only screen and (max-width:1024px){.seopress-styles .wrap{display:inline-block;width:100%}}#seopress-admin-tabs.wrap{display:block;box-shadow:0 7px 14px 0 rgba(60,66,87,.12),0 3px 6px 0 rgba(0,0,0,.12);width:64rem;margin:0 auto}.seopress-styles .seopress-option .submit{background:#fff;text-align:center;border-top:1px solid #f1f1f1;padding-top:20px;padding-bottom:20px;margin:0}.seopress-styles .seopress-option #seopress-aio-migrate,.seopress-styles .seopress-option #seopress-rk-migrate,.seopress-styles .seopress-option #seopress-seo-framework-migrate,.seopress-styles .seopress-option #seopress-squirrly-migrate,.seopress-styles .seopress-option #seopress-yoast-migrate,.seopress-styles .seopress-option #submit{color:#fff;text-decoration:none;border:none;border-radius:4px;padding-right:20px;padding-left:20px;line-height:34px;text-transform:uppercase;min-height:34px;transition:all .3s linear;text-shadow:none;box-shadow:0 7px 14px rgba(50,50,93,.1),0 3px 6px rgba(0,0,0,.1);margin-right:15px;background:#6a7c94;position:relative;height:auto;z-index:10}.seopress-styles .seopress-option #seopress-aio-migrate:hover,.seopress-styles .seopress-option #seopress-rk-migrate:hover,.seopress-styles .seopress-option #seopress-seo-framework-migrate:hover,.seopress-styles .seopress-option #seopress-squirrly-migrate:hover,.seopress-styles .seopress-option #seopress-yoast-migrate:hover,.seopress-styles .seopress-option #submit:hover{text-decoration:none;color:#fff;background:#232323}.seopress-styles #wpcontent{padding-left:0}.seopress-styles pre{color:#42b72a;background:#f5f6f7;font-family:Menlo,Monaco,Andale Mono,Courier New,monospace;padding:7px}.seopress-styles #seopress-navbar{padding:10px .5rem;height:56px;margin:0 auto;width:64rem;box-sizing:border-box;position:relative}#seopress-header{margin:0 auto;position:relative;width:100%}#seopress-header #seopress-admin h1{line-height:40px;margin:0;display:inline-block;height:40px;width:40px;background-size:100%;background-repeat:no-repeat}#seopress-header #seopress-admin h1::before{font-size:14px;line-height:40px;position:absolute;border-radius:6px;font-weight:400;color:#fff;width:40px;height:40px;text-align:center;background:#3a4afb;background:-moz-linear-gradient(45deg,#3a4afb 0,#47bea5 100%);background:-webkit-linear-gradient(45deg,#3a4afb 0,#47bea5 100%);background:linear-gradient(45deg,#3a4afb 0,#47bea5 100%)}#seopress-header #seopress-admin h1:hover{cursor:pointer}#seopress-header #seopress-admin h1>a{text-decoration:none;color:inherit}#seopress-header #seopress-admin .seopress-quick-access{background:#fff;box-shadow:0 50px 100px rgba(50,50,93,.1),0 15px 35px rgba(50,50,93,.2),0 5px 15px rgba(0,0,0,.1);border-radius:4px;overflow:hidden;position:relative;font-size:17px;line-height:40px;white-space:nowrap;transform:rotate3d(1,1,0,-15deg);transform-origin:100% 0;opacity:0;will-change:transform,opacity;transition-property:transform,opacity;transition-duration:.25s;z-index:300;padding:0;display:block;width:64rem;top:0;visibility:hidden;cursor:auto;left:-.5rem}#seopress-header #seopress-admin h1:hover .seopress-quick-access{transform:none;opacity:1;pointer-events:auto;visibility:visible}#seopress-header #seopress-admin .seopress-quick-access>ul{padding:20px;margin:0;float:left;width:100%;box-sizing:border-box}#seopress-header #seopress-admin h1 .seopress-quick-access li{text-decoration:none;display:inline-block;width:50%;margin:0;float:left;padding:10px 0}#seopress-header #seopress-admin h1 .seopress-quick-access li .dashicons{vertical-align:middle;background:#b7e1f3;border-radius:50%;padding:5px;margin-right:15px}#seopress-header #seopress-admin h1 .seopress-quick-access li a{text-decoration:none;font-size:15px;line-height:30px;text-transform:uppercase;display:block;width:100%;transition:all .3s linear;color:#3297d3}#seopress-header #seopress-admin h1 .seopress-quick-access li a:hover{color:#647a88}#seopress-header #seopress-admin h1 .seopress-info-version{position:relative;left:50px;top:0;font-size:14px;width:100px;display:block}#seopress-header #seopress-admin .wpc-info-version{font-size:14px;left:310px;position:absolute;text-indent:0;top:85px}#seopress-header #seopress-notice{float:right;line-height:40px}#seopress-header #seopress-notice p{font-size:16px}#seopress-header #seopress-notice .dashicons{color:#6f8096;text-decoration:none;line-height:40px}#seopress-header #seopress-notice div.small{font-size:13px;display:inline}#seopress-footer-credits{font-style:italic}#seopress-footer-credits .wporg-ratings{display:inline}#seopress-footer-credits .wporg-ratings a{text-decoration:none}.seopress-option .seopress-settings{float:left;max-width:750px;width:100%}.seopress-option #seopress-edd-license-btn,.seopress-option #seopress-refresh{float:left}.wp-admin-ui_page_seopress-import-export .postbox{margin-right:20px}.seopress-option #side-sortables .accordion-section-content{padding:0}.seopress-option .seopress-settings label{margin:0 0 0 10px}.wrap-seopress-tab-content{position:relative;display:block;width:100%;max-width:64rem;margin:0 auto;box-sizing:border-box}#seopress-admin-tabs .seopress-tab{padding:1.5rem;visibility:hidden;overflow:hidden;opacity:0;transition:all .2s ease;transform:translateX(-15px);position:absolute;top:0;box-sizing:border-box}#seopress-admin-tabs .seopress-tab.active{visibility:visible;overflow:inherit;opacity:1;transform:translateX(0);display:inherit;position:relative}#seopress-tabs .seopress-tab{padding:0 1.5rem;width:calc(100% - 230px);display:none}@media only screen and (max-width:1024px){#seopress-tabs .seopress-tab{width:100%}}#seopress-tabs .seopress-tab.active{display:inline-block;border-left:1px solid #eee}@media only screen and (max-width:1024px){#seopress-tabs .seopress-tab.active{width:100%;padding:0;border-left:none;border-top:1px solid #eee}}.seopress-option input[type=password],.seopress-option input[type=text],.seopress-option textarea{min-width:485px}@media only screen and (max-width:1024px){.seopress-option input[type=password],.seopress-option input[type=text],.seopress-option textarea{min-width:inherit;width:100%}}#seopress_htaccess_file{width:100%}.seopress-option textarea{min-height:100px}.seopress-option #side-sortables .highlight{border:1px dashed #ccc;display:block;width:382px;height:40px;background:0 0}.seopress-option #side-sortables .accordion-section{margin-bottom:9px;width:382px}.seopress-option #side-sortables .accordion-section h3{cursor:move;border:1px solid #e5e5e5;background:#fafafa}.seopress-option #side-sortables .accordion-section .inside{padding:10px 10px 24px;border-width:0 1px 1px;border-style:solid;box-shadow:0 1px 1px rgba(0,0,0,.04);border-color:#e5e5e5;display:inline-block;width:calc(100% - 22px);height:100%}.seopress-option #side-sortables .accordion-section .inside ul{padding-left:10px;margin-bottom:0;padding-top:2px;padding-bottom:2px}.seopress-option #side-sortables .accordion-section .inside ul li{border-left:2px solid #ccc;padding-left:10px;margin-bottom:10px}.seopress-option #side-sortables .accordion-section .inside ul li:first-child{border-bottom:1px dotted #e5e5e5;border-left:0;padding-bottom:10px;font-weight:700;margin-left:-15px;margin-bottom:10px}.seopress-notice #message{margin:5px 10px 2px 0}#seopress-notice a{position:relative;text-decoration:none}#seopress-notice a .tooltip{white-space:pre;z-index:200;padding:2px 5px;font-weight:500;font-size:12px;color:#aab7c4;background:#fff;box-shadow:0 1px 2px 0 rgba(49,49,93,.1),0 0 1px 0 rgba(0,0,0,.1);border-radius:2px;position:absolute;opacity:0;top:30px;transition:opacity .2s ease;visibility:hidden;line-height:20px;left:-100%;overflow:hidden}#seopress-notice a:hover .tooltip{opacity:1;visibility:visible}.seopress-page-list{margin:1.5rem auto}.seopress-option .dashicons,.seopress-page-list .dashicons{vertical-align:middle;margin-right:5px;color:#6f8096}#seopress-admin-tabs .ui-tabs-nav,#seopress-notifications-center,.seopress-get-started,.seopress-page-list .seopress-feature,.seopress-useful-tools{margin:0 auto 20px;max-width:64rem;padding:2rem;width:100%;border-radius:0 0 4px 4px;box-sizing:border-box}.seopress-get-started{margin-top:20px;background:#fff url(../img/bg-hero-support.svg) no-repeat 95% 50%/contain;position:relative;box-sizing:border-box;box-shadow:0 7px 14px 0 rgba(60,66,87,.12),0 3px 6px 0 rgba(0,0,0,.12)}.seopress-get-started .inside{max-width:calc(100% - 380px)}.seopress-get-started .preheader{text-transform:uppercase;font-size:.8rem;font-weight:600}.seopress-get-started h2{font-size:1.85em;margin:15px 0 0 0;font-weight:400}.seopress-get-started p{margin-bottom:20px}.seopress-get-started a .dashicons{vertical-align:middle;text-decoration:none;color:#6a7c94}.seopress-get-started a.button-primary .dashicons{color:#fff}.seopress-get-started a.btn-link .dashicons{margin-right:5px}.seopress-get-started a.btn-link{margin:0 0 0 10px}#seopress-notifications-center,.seopress-useful-tools{background:#fff;padding:0}.seopress-page-list .seopress-feature{padding:0;position:relative;overflow:hidden;transition-duration:.15s;display:flex;margin:0;background:#fff;box-shadow:0 7px 14px 0 rgba(60,66,87,.12),0 3px 6px 0 rgba(0,0,0,.12);flex-wrap:wrap;border-radius:4px;width:100%;height:100%}.seopress-page-list .seopress-feature p{color:#6b7c93;font-size:14px;margin-bottom:30px}#seopress-notifications-center{margin-top:0}#seopress-admin-tabs .ui-tabs-nav{display:flex;padding-top:1rem;padding-bottom:0}.seopress-page-list .seopress-feature .img-tool{height:50px;width:50px;background:#c4f0ff;position:relative;border-radius:6px}.seopress-page-list .seopress-feature .img-tool .dashicons{color:#217ab7;font-size:30px;text-align:left;vertical-align:middle;width:100%;height:100%;position:absolute;top:calc(50% - 15px);left:calc(50% - 15px);margin:0}.seopress-page-list .seopress-feature .inner{margin:0;display:inline-block;padding:1.5rem;width:100%;height:100%;box-sizing:border-box}.seopress-page-list .seopress-feature h3{margin:1rem 0 0 0;font-size:16px;font-weight:700;color:#3297d3;text-transform:uppercase}.seopress-page-list .seopress-feature h3 .dashicons{font-size:16px;margin-left:5px;vertical-align:middle}#seopress-content .seopress-page-list .seopress-feature a,#seopress-notifications-center .seopress-alert .button-primary,.seopress-get-started .button-primary,.seopress-option .seopress-feature a,.seopress-useful-tools .widget .button-primary{color:#fff;text-decoration:none;border:none;border-radius:4px;padding-right:20px;padding-left:20px;line-height:34px;text-transform:uppercase;min-height:34px;transition:all .3s linear;text-shadow:none;box-shadow:0 7px 14px rgba(50,50,93,.1),0 3px 6px rgba(0,0,0,.1);background:#6a7c94;position:relative;height:auto;display:flex;flex-wrap:wrap}#seopress-content .seopress-page-list .seopress-feature a.button-secondary{padding-left:30px}#seopress-content .seopress-page-list .seopress-feature a.button-secondary::before,#seopress-notifications-center .seopress-alert .button-primary::after{content:"\f111";font-family:Dashicons;position:absolute;left:10px;top:1px;-moz-osx-font-smoothing:grayscale;-webkit-font-smoothing:antialiased;font-size:16px}#seopress-content .seopress-page-list .wrap-btn{display:inline-flex;margin-bottom:2rem;flex-direction:column}#seopress-content .seopress-page-list .seopress-feature a.view-redirects,#seopress-notifications-center .seopress-alert .button-primary,.seopress-get-started .button,.seopress-option .button{color:#6a7c94;background:#fff;font-weight:500;transition:all .3s linear;text-shadow:none;text-transform:uppercase;padding-right:20px;padding-left:20px;line-height:34px;min-height:34px;margin:10px 0;border-radius:4px;box-shadow:transparent 0 0 0 0,transparent 0 0 0 0,rgba(0,0,0,.12) 0 1px 1px 0,rgba(60,66,87,.16) 0 0 0 1px,transparent 0 0 0 0,transparent 0 0 0 0,rgba(60,66,87,.12) 0 2px 5px 0;vertical-align:baseline;display:inline-flex;align-items:center;border:none;margin-right:.5rem;cursor:pointer}.seopress-get-started .button{color:#fff;background:#6259e6;box-shadow:none}.seopress-option .wp-picker-container button{box-shadow:none;border:1px solid #0071a1;border-radius:3px;background:#f3f5f6;text-transform:none}.seopress-option .wp-picker-container input[type=text].wp-color-picker{min-width:inherit}.seopress-option .wp-picker-container .wp-picker-clear{box-shadow:none;text-transform:none;border-radius:0;background:0 0}.seopress-option .wp-picker-container .wp-picker-clear:hover{background:0 0;text-decoration:currentColor;color:inherit}.seopress-option .button .dashicons{font-size:16px}#seopress-content .seopress-page-list .seopress-feature a.view-redirects{padding-left:30px}#seopress-notifications-center .seopress-alert .button-primary::after{content:"\f344";left:inherit;right:10px}#seopress-content .seopress-page-list .seopress-feature a.view-redirects::before{content:"\f177"}#seopress-content .seopress-page-list .seopress-feature a:hover,#seopress-notifications-center .seopress-alert .button-primary:hover,.seopress-get-started .button-primary:hover,.seopress-option .button:hover,.seopress-option .seopress-feature a:hover,.seopress-useful-tools .widget .button-primary:hover{text-decoration:none;color:#fff;background:#232323}.seopress-get-started .button .dashicons{transition:all .3s linear}.seopress-get-started .button:hover .dashicons{color:#fff}#seopress-content .seopress-page-list .seopress-feature .seopress-doc:focus,#seopress-content .seopress-page-list .seopress-feature a:focus,#seopress-content .seopress-page-list .seopress-feature a:focus.button-secondary,#seopress-content a:focus,#seopress-notifications-center .seopress-alert .button-primary:focus,.seopress-option #seopress-tabs .seopress-doc:focus,.seopress-option .seopress-feature a:focus,.seopress-styles .seopress-option #seopress-aio-migrate:focus,.seopress-styles .seopress-option #seopress-yoast-migrate:focus,.seopress-styles .seopress-option #submit:focus,.seopress-useful-tools .widget .button-primary:focus{box-shadow:0 1px 0 #0073aa,0 0 2px 1px #33b3db;background:#008ec2;border-color:#006799;color:#fff}#seopress-admin-tabs .nav-tab-wrapper a.nav-tab-active:focus{color:inherit}#seopress-notifications-center .seopress-alert .button-primary{margin:5px 0;padding-right:30px}#seopress-notifications-center h2,.seopress-useful-tools h2{margin:5px 0 15px 5px;display:inline-block;width:100%}#seopress-notifications-center .dashicons,.seopress-useful-tools .dashicons{margin-right:10px}#seopress-notifications-center .seopress-alert{padding:1.5rem 2rem 1.2rem 1rem;border-bottom:1px solid #e6ebf1;width:calc(100% - 3rem);flex:1 1 auto;position:relative;transition:all 150ms ease;align-items:center;display:flex;justify-content:space-between}#seopress-notifications-center .seopress-alert:last-child{margin-bottom:0;border-bottom:none}#seopress-notifications-center .seopress-alert:hover{cursor:default}#seopress-notifications-center .dashicons{display:flex;align-self:normal;width:48px;height:48px;color:#d7dade;font-size:48px;padding:0 1rem}#seopress-notifications-center .seopress-alert p{margin:0}#seopress-notifications-center .notice-left{flex:1}#seopress-notifications-center .notice-left>p:first-child{color:#1a1f36;font-weight:500}#seopress-notifications-center .notice-right{padding:1rem 0 0 0;display:flex}#seopress-notifications-center .seopress-alert.impact::after{content:"";width:10px;height:10px;border-radius:50px;position:absolute;right:1rem;top:1rem}#seopress-notifications-center .seopress-alert.impact.low::after{background:#ffde24}#seopress-notifications-center .seopress-alert.impact.medium::after{background:#e39f48}#seopress-notifications-center .seopress-alert.impact.high::after{background:#e25950}#seopress-notifications-center .seopress-alert.impact.info::after{background:#0085ba}#seopress-notifications-center .seopress-alert.dashicons{color:#6f8096}#seopress-notifications-center .dashicons.remove-notice,.seopress-get-started .remove-notice{position:absolute;right:0;color:#6b7c93;font-size:20px;height:30px;width:30px;vertical-align:middle;top:1.2rem;line-height:30px;padding:5px;transition:all .3s linear;margin:0;display:block}.seopress-get-started .remove-notice{top:10px;right:10px}#seopress-notifications-center .dashicons.remove-notice:hover,.seopress-get-started .remove-notice:hover{color:#1a1f36;cursor:pointer}#seopress-content .seopress-page-list .seopress-feature .seopress-doc,.seopress-option #seopress-tabs .seopress-doc{background:0 0;padding:0;text-decoration:none;color:inherit;box-shadow:none;position:absolute;right:.5rem;top:1rem}#seopress-content .seopress-page-list .seopress-feature .seopress-doc:hover,.seopress-option #seopress-tabs .seopress-doc:hover{color:#747474;background:0 0}#seopress-content .seopress-page-list .seopress-feature .seopress-doc:hover .dashicons{color:#232323}.seopress-option .seopress-table{background:#fff;border:1px solid #ccc}.seopress-option .seopress-table th{padding:15px 10px;vertical-align:middle}.wp-admin-ui_page_seopress-roles .seopress-option .seopress-table th{min-width:200px}.seopress-option .seopress-table .seopress-settings-section{background:#f1f1f1}.seopress-option .seopress-table .seopress-table-head .seopress-feature{border-bottom:1px solid #ccc;font-weight:700;background:#f1f1f1}#seopress-content .feature-state,.seopress-option .feature-state{font-style:italic;font-size:10px;display:inline-block;background:rgba(0,140,135,.1);padding:2px 10px;border-radius:25px;color:#444;font-weight:400;text-transform:none;-moz-osx-font-smoothing:initial;-webkit-font-smoothing:initial}@media only screen and (max-width:768px){#seopress-content .feature-state,.seopress-option .feature-state{display:none}}.seopress-option .seopress_wrap_single_cpt .feature-state,.seopress-option .seopress_wrap_tax .feature-state{padding:2px 12px;margin:0 0 .5rem .5rem}.seopress-option #tab_seopress_titles_archives h2,.seopress-option #tab_seopress_titles_single h2,.seopress-option #tab_seopress_titles_tax h2{margin:2em 0 1em 0;border-top:1px solid #eee;padding:1em 0 0 0}.seopress-option #tab_seopress_titles_archives h2:first-child,.seopress-option #tab_seopress_titles_single h2:first-child,.seopress-option #tab_seopress_titles_tax h2:first-child{border-top:none;margin:0 0 1em 0}#seopress_cpt .tag-title,#seopress_pro_cpt .tag-title,.seopress-button,.seopress-option .tag-title{cursor:pointer;font-weight:500;border-radius:4px;transition:all .3s linear}#seopress-content .feature-state-on,#seopress-content .feature-state.feature-state-on,.seopress-option .feature-state-on,.seopress-option .feature-state.feature-state-on{display:inline-block}#seopress-content .feature-state-off,.seopress-option .feature-state-off{display:none}.seopress-option .postbox .inside li{list-style:square inside;padding-left:5px}#tab_seopress_page_speed .inside li{list-style:none;padding-left:0;word-break:break-word}.seopress-option .log{margin:0;text-transform:uppercase;display:inline-block;vertical-align:middle;padding:5px;color:#13bf11;font-style:italic}.seopress-option input[type=text].seopress-admin-menu-input{min-width:inherit;width:100%}.seopress_page_seopress-import-export .postbox{width:calc(100% - 20px)}#seopress_cpt .wrap-tags,#seopress_pro_cpt .wrap-tags,.seopress-option .wrap-tags{position:relative;display:inline-block;width:100%;margin-bottom:10px}#seopress_cpt .tag-title,#seopress_pro_cpt .tag-title,.seopress-option .tag-title{padding:4px 8px;position:relative;top:5px;left:0;font-size:11px;float:left;margin-right:5px;user-select:none;margin-bottom:5px;background:#fff;color:#6b7c93;box-shadow:0 0 0 .5px rgba(50,50,93,.17),0 2px 5px 0 rgba(50,50,93,.12),0 3px 9px 0 rgba(50,50,93,.08),0 1px 1.5px 0 rgba(0,0,0,.08),0 1px 2px 0 rgba(0,0,0,.08)}#seopress_cpt .tag-title:active,#seopress_cpt .tag-title:focus,#seopress_cpt .tag-title:hover,#seopress_pro_cpt .tag-title:active,#seopress_pro_cpt .tag-title:focus,#seopress_pro_cpt .tag-title:hover,.seopress-option .tag-title:active,.seopress-option .tag-title:focus,.seopress-option .tag-title:hover{background:#232323;color:#fff;user-select:none}#seopress_cpt .tag-title .dashicons,#seopress_pro_cpt .tag-title .dashicons,.seopress-option .tag-title .dashicons{padding:0;height:16px;width:16px;font-size:16px;margin-right:5px;vertical-align:middle}.seopress-button{text-transform:uppercase;background:#fff;border-color:#c8d7e1;border-style:solid;border-width:1px 1px 2px;color:#2e4453;display:inline-block;margin:0;outline:0;overflow:hidden;text-overflow:ellipsis;text-decoration:none;vertical-align:top;box-sizing:border-box;font-size:14px;line-height:20px;padding:6px 8px 6px;-webkit-appearance:none;-moz-appearance:none;appearance:none}.seopress-button:hover{border-color:#a8bece;color:#00a0d2}.seopress-button .dashicons{vertical-align:middle}#seopress-content #tab_seopress_seo_tools.seopress-useful-tools .widget{border-right:1px solid #e6ebf1;margin:0;padding:0 20px;width:calc(50% - 2px);box-sizing:border-box;display:inline-block;vertical-align:top}#seopress-content #tab_seopress_seo_tools.seopress-useful-tools .widget:first-child{width:100%;display:block;clear:both;border-right:none;border-bottom:1px solid #e6ebf1;padding-bottom:20px;margin-bottom:20px}#seopress-content #tab_seopress_seo_tools.seopress-useful-tools .widget:last-child{border-right:none}#seopress-content .seopress-useful-tools .widget-reverse ul{background:#fff}#seopress-content .seopress-useful-tools .widget-reverse li{padding:10px;margin:0;border-bottom:1px solid #e6ebf1}#seopress-content .seopress-useful-tools .widget-reverse li:hover{background:#f5f7fa}#seopress-content .seopress-useful-tools .widget-title{text-transform:uppercase;margin:0 0 10px;font-size:13px;padding:10px 0;color:#24b47e}#seopress-content .seopress-reverse label,#seopress-content .seopress-useful-tools .widget-whois ul li span{font-weight:700}#seopress-content #seopress-reverse-url{width:100%;margin:10px 0}#seopress-content .widget-reverse p{margin:0}.post-type-seopress_backlinks .wp-list-table .column-seopress_backlinks_url{width:35%}.post-type-seopress_backlinks .wp-list-table .column-seopress_backlinks_anchor_text{width:20%}.seopress-styles #screen-meta{margin:0;position:relative;background-color:#fff;border-bottom:0 solid #f2f2f2;border-top:none;-webkit-box-shadow:0 0 0 1px rgba(136,152,170,.1),0 15px 35px 0 rgba(49,49,93,.1),0 5px 15px 0 rgba(0,0,0,.08);box-shadow:0 0 0 1px rgba(136,152,170,.1),0 15px 35px 0 rgba(49,49,93,.1),0 5px 15px 0 rgba(0,0,0,.08);top:0}.seopress-styles #contextual-help-link-wrap,.seopress-styles #screen-options-link-wrap{float:right;height:28px;margin:0 0 0 6px;border:1px solid #f2f2f2;border-top:none;background:#fff;-webkit-box-shadow:0 0 0 1px rgba(136,152,170,.1),0 15px 35px 0 rgba(49,49,93,.1),0 5px 15px 0 rgba(0,0,0,.08);box-shadow:0 0 0 1px rgba(136,152,170,.1),0 15px 35px 0 rgba(49,49,93,.1),0 5px 15px 0 rgba(0,0,0,.08)}.seopress-styles #screen-meta-links .show-settings{box-shadow:none}.seopress-styles #screen-meta-links .screen-meta-toggle{position:relative;top:0;z-index:2000}.seopress-styles #contextual-help-back{background:#f8fafd}.seopress-styles .contextual-help-tabs .active{border-left:2px solid #3297d3;background:#f8fafd}#seopress-content input.toggle,#seopress_cpt input.toggle,.seopress-option input.toggle{max-height:0;max-width:0;opacity:0;position:relative}.seopress-feature input.toggle{display:block}.wrap-toggle-preview{position:relative}.wrap-toggle-preview p{font-weight:700;margin:0 0 1rem 0}#seopress_cpt input.toggle,.seopress_wrap_single_cpt input.toggle,.seopress_wrap_tax input.toggle{margin:0;border:none;min-width:0}#seopress_content_analysis span.label,#seopress_cpt span.label{outline:0;color:#fff;box-shadow:none;background:#555d66;padding:2px 4px;border-radius:4px;font-weight:700}#seopress-content input.toggle+label,#seopress_cpt #tabs-1 input.toggle+label,.seopress-option input.toggle+label{display:inline-block;position:relative;box-shadow:inset 0 0 0 1px #d5d5d5;text-indent:-5000px;height:20px;width:40px;border-radius:15px}#seopress_cpt #tabs-1 input.toggle+label{margin:0}.wrap-toggle-checkboxes input.toggle+label{float:left;margin-right:10px}#seopress-content input.toggle+label:before,#seopress_cpt input.toggle+label:before,.seopress-option input.toggle+label:before{content:"";position:absolute;display:block;height:20px;width:30px;top:0;left:0;border-radius:15px;background:rgba(19,191,17,0);-moz-transition:.25s ease-in-out;-webkit-transition:.25s ease-in-out;transition:.25s ease-in-out}#seopress-content input.toggle+label:after,#seopress_cpt input.toggle+label:after,.seopress-option input.toggle+label:after{content:"";position:absolute;display:block;height:20px;width:20px;top:0;left:0;border-radius:15px;background:#fff;box-shadow:inset 0 0 0 1px rgba(0,0,0,.2),0 2px 4px rgba(0,0,0,.2);-moz-transition:.25s ease-in-out;-webkit-transition:.25s ease-in-out;transition:.25s ease-in-out}#seopress_cpt input.toggle+label,#seopress_cpt input.toggle+label:before,.seopress_wrap_single_cpt input.toggle+label,.seopress_wrap_single_cpt input.toggle+label:before,.seopress_wrap_tax input.toggle+label,.seopress_wrap_tax input.toggle+label:before{width:40px;height:20px}#seopress_cpt input.toggle+label:after,.seopress_wrap_single_cpt input.toggle+label:after,.seopress_wrap_tax input.toggle+label:after{width:20px;height:20px}#seopress-content input.toggle[data-toggle="1"]+label:before,#seopress_cpt input.toggle[data-toggle="1"]+label:before,.seopress-option input.toggle[data-toggle="1"]+label:before{width:40px;background:#3197d3}#seopress_cpt input.toggle[data-toggle="1"]+label:before,.seopress_wrap_single_cpt input.toggle[data-toggle="1"]+label:before,.seopress_wrap_tax input.toggle[data-toggle="1"]+label:before{width:40px;background:#3197d3}#seopress-content input.toggle[data-toggle="1"]+label:after,#seopress_cpt input.toggle[data-toggle="1"]+label:after,.seopress-option input.toggle[data-toggle="1"]+label:after{left:20px;box-shadow:inset 0 0 0 1px #3197d3,0 2px 4px rgba(0,0,0,.2)}#seopress_cpt input.toggle[data-toggle="1"]+label:after,.seopress_wrap_single_cpt input.toggle[data-toggle="1"]+label:after,.seopress_wrap_tax input.toggle[data-toggle="1"]+label:after{box-shadow:inset 0 0 0 1px #3197d3,0 2px 4px rgba(0,0,0,.2)}#seopress-content .seopress-page-list{position:relative;display:grid;max-width:64rem;grid-gap:20px 20px;grid-template-columns:repeat(3,1fr)}#seopress-notice-save{position:fixed;color:#fff;padding:15px 40px;font-size:.9rem;text-transform:uppercase;text-align:center;border-radius:0;background:rgba(74,184,102,.9);bottom:0;right:0;z-index:500;width:100%;font-weight:700}#seopress-notice-save .dashicons{color:#fff}.seopress_page_seopress-pro-page #wpcontent{background:#f4f7fa}.seopress-option .wrap div.nav-tab-wrapper{margin:0 0 0 -26px;padding:0 0 0 10px;line-height:inherit;width:230px;z-index:95;font-weight:400;display:block;border-bottom:none}@media only screen and (max-width:1024px){.seopress-option .wrap div.nav-tab-wrapper{width:100%;margin:0;padding:0}}#seopress-admin-tabs.wrap div.nav-tab-wrapper{margin:20px auto 0;max-width:64rem;width:100%;border-bottom:1px solid #e6ebf1;padding:0;line-height:inherit;position:-webkit-sticky;position:sticky;background:#f5f7fa;z-index:100;top:31px;border-radius:4px 4px 0 0;font-weight:400;overflow:hidden;display:flex;align-items:center;justify-content:space-between;box-sizing:border-box}#seopress-admin-tabs #tab_seopress_notifications.seopress-tab{background:0 0;padding:0;border-radius:0}.seopress-option .nav-tab{border:0 solid #ccc;background:0 0;opacity:.5;padding:6px 30px 6px 10px;transition:opacity .3s linear;color:#191e23;margin:0;float:none;display:inline-block;width:100%;text-align:left;font-weight:400;box-sizing:border-box;white-space:normal}#seopress-admin-tabs .nav-tab{border:0 solid #ccc;background:0 0;opacity:.5;padding:14px 20px;transition:opacity .3s linear;color:#191e23;margin:0;box-shadow:inset -1px 0 #e3e8ee;float:none;display:inline-block;text-align:center;font-weight:400}#seopress-admin-tabs .nav-tab{width:100%}#seopress-admin-tabs .nav-tab-active,#seopress-admin-tabs .nav-tab-active:hover,.seopress-option .about-wrap h2 .nav-tab-active,.seopress-option .nav-tab-active,.seopress-option .nav-tab-active:hover{background-color:#fff}#seopress-admin-tabs .nav-tab-active,#seopress-admin-tabs .nav-tab-active:focus,#seopress-admin-tabs .nav-tab-active:focus:active,#seopress-admin-tabs .nav-tab-active:hover,#seopress-admin-tabs .nav-tab:focus,.nav-tab-active:focus,.seopress-option .nav-tab-active,.seopress-option .nav-tab-active:focus:active,.seopress-option .nav-tab-active:hover,.seopress-option .nav-tab:focus{opacity:1;outline:0;font-weight:600;position:relative;color:#191e23;border-left:3px solid #0085ba;background:rgba(0,133,186,.1)}#seopress-admin-tabs .nav-tab-active,#seopress-admin-tabs .nav-tab-active:focus,#seopress-admin-tabs .nav-tab-active:focus:active,#seopress-admin-tabs .nav-tab-active:hover,#seopress-admin-tabs .nav-tab:focus{border-bottom:3px solid #3197d3;border-left:none;background:#fff}#seopress-admin-tabs .nav-tab:hover,.seopress-option .nav-tab:hover{opacity:1}#seopress-admin-tabs .nav-tab:focus,.seopress-option .nav-tab:focus{outline:0;box-shadow:none}.seopress-option .section-tool{border:none;box-shadow:none;background:0 0;position:relative}.seopress-option .section-tool::after{content:'';background:#dedede;height:1px;width:100%;display:block}.seopress-option .sp-section-header{border-bottom:1px solid #eee;margin:0 0 1rem 0;width:100%;display:flex;position:relative;align-items:center;padding-bottom:.5rem}.seopress-option .sp-section-header::after{position:absolute;content:'';background:#0085ba;height:2px;width:40px;bottom:0;left:0}.seopress-option .sp-section-header h2{font-size:1.5em}.seopress-option .sp-section-header>.dashicons{color:#0085ba;padding:10px;border-radius:6px;margin-right:10px;background:#c4f0ff}.seopress-option .sp-section-header .wrap-toggle-checkboxes{display:flex}.seopress-styles .wrap .notice{margin:5px 0 15px 15px}
assets/js/seopress-block-editor.js CHANGED
@@ -1,16 +1,15 @@
1
  //Retrieve title / meta-desc from source code
2
  jQuery(document).ready(function($) {
3
-
4
-
5
-
6
  const { subscribe, select } = wp.data;
7
  let hasSaved = false;
8
 
9
  subscribe( () => {
10
- var isSavingPost = wp.data.select('core/editor').isSavingPost();
11
  var isAutosavingPost = wp.data.select('core/editor').isAutosavingPost();
 
 
12
 
13
- if (isSavingPost && !isAutosavingPost && !hasSaved) {
14
 
15
  $.ajax({
16
  method : 'GET',
@@ -37,6 +36,7 @@ let hasSaved = false;
37
  typeof s.data.tw_title ==="undefined" ? tw_title = "" : tw_title = s.data.tw_title.values;
38
  typeof s.data.tw_desc ==="undefined" ? tw_desc = "" : tw_desc = s.data.tw_desc.values;
39
  typeof s.data.tw_img ==="undefined" ? tw_img = "" : tw_img = s.data.tw_img.values;
 
40
 
41
  var data_arr = {og_title : og_title,
42
  og_desc : og_desc,
@@ -58,6 +58,17 @@ let hasSaved = false;
58
  }
59
  }
60
 
 
 
 
 
 
 
 
 
 
 
 
61
  // Google Preview
62
  $("#seopress_cpt .google-snippet-preview .snippet-title").html(s.data.title),
63
  $("#seopress_cpt .google-snippet-preview .snippet-title-default").html(s.data.title),
@@ -116,6 +127,6 @@ let hasSaved = false;
116
  },
117
  });
118
  }
119
- hasSaved = !! isSavingPost;
120
  });
121
  });
1
  //Retrieve title / meta-desc from source code
2
  jQuery(document).ready(function($) {
 
 
 
3
  const { subscribe, select } = wp.data;
4
  let hasSaved = false;
5
 
6
  subscribe( () => {
7
+ //var isSavingPost = wp.data.select('core/editor').isSavingPost();
8
  var isAutosavingPost = wp.data.select('core/editor').isAutosavingPost();
9
+ var isSavingMetaBoxes = wp.data.select('core/edit-post').isSavingMetaBoxes();
10
+
11
 
12
+ if (isSavingMetaBoxes && !isAutosavingPost && !hasSaved) {
13
 
14
  $.ajax({
15
  method : 'GET',
36
  typeof s.data.tw_title ==="undefined" ? tw_title = "" : tw_title = s.data.tw_title.values;
37
  typeof s.data.tw_desc ==="undefined" ? tw_desc = "" : tw_desc = s.data.tw_desc.values;
38
  typeof s.data.tw_img ==="undefined" ? tw_img = "" : tw_img = s.data.tw_img.values;
39
+ typeof s.data.meta_robots ==="undefined" ? meta_robots = "" : meta_robots = s.data.meta_robots[0];
40
 
41
  var data_arr = {og_title : og_title,
42
  og_desc : og_desc,
58
  }
59
  }
60
 
61
+ // Meta Robots
62
+ meta_robots = meta_robots.toString();
63
+
64
+ $("#sp-advanced-alert").empty();
65
+
66
+ var if_noindex = new RegExp('noindex');
67
+
68
+ if(if_noindex.test(meta_robots)){
69
+ $("#sp-advanced-alert").append('<span class="impact high" aria-hidden="true"></span>');
70
+ }
71
+
72
  // Google Preview
73
  $("#seopress_cpt .google-snippet-preview .snippet-title").html(s.data.title),
74
  $("#seopress_cpt .google-snippet-preview .snippet-title-default").html(s.data.title),
127
  },
128
  });
129
  }
130
+ hasSaved = !! isSavingMetaBoxes; //isSavingPost != 0;
131
  });
132
  });
assets/js/seopress-block-editor.min.js CHANGED
@@ -1 +1 @@
1
- jQuery(document).ready(function(e){const{subscribe:t,select:s}=wp.data;let i=!1;t(()=>{var t=wp.data.select("core/editor").isSavingPost(),s=wp.data.select("core/editor").isAutosavingPost();!t||s||i||e.ajax({method:"GET",url:seopressAjaxRealPreview.seopress_real_preview,data:{action:"seopress_do_real_preview",post_id:e("#seopress-tabs").attr("data_id"),tax_name:e("#seopress-tabs").attr("data_tax"),origin:e("#seopress-tabs").attr("data_origin"),post_type:e("#seopress_launch_analysis").attr("data_post_type"),seopress_analysis_target_kw:e("#seopress_analysis_target_kw_meta").val(),_ajax_nonce:seopressAjaxRealPreview.seopress_nonce},beforeSend:function(){e(".analysis-score p span").fadeIn().text(seopressAjaxRealPreview.i18n.progress),e(".analysis-score p").addClass("loading")},success:function(t){void 0===t.data.og_title?og_title="":og_title=t.data.og_title.values,void 0===t.data.og_desc?og_desc="":og_desc=t.data.og_desc.values,void 0===t.data.og_img?og_img="":og_img=t.data.og_img.values,void 0===t.data.og_url?og_url="":og_url=t.data.og_url.host,void 0===t.data.og_site_name?og_site_name="":og_site_name=t.data.og_site_name.values,void 0===t.data.tw_title?tw_title="":tw_title=t.data.tw_title.values,void 0===t.data.tw_desc?tw_desc="":tw_desc=t.data.tw_desc.values,void 0===t.data.tw_img?tw_img="":tw_img=t.data.tw_img.values;var s={og_title:og_title,og_desc:og_desc,og_img:og_img,og_url:og_url,og_site_name:og_site_name,tw_title:tw_title,tw_desc:tw_desc,tw_img:tw_img};for(var i in s)s.length&&(i=s[i].length>1?s[i].slice(-1)[0]:s[i][0]);e("#seopress_cpt .google-snippet-preview .snippet-title").html(t.data.title),e("#seopress_cpt .google-snippet-preview .snippet-title-default").html(t.data.title),e("#seopress_titles_title_meta").attr("placeholder",t.data.title),e("#seopress_cpt .google-snippet-preview .snippet-description").html(t.data.meta_desc),e("#seopress_cpt .google-snippet-preview .snippet-description-default").html(t.data.meta_desc),e("#seopress_titles_desc_meta").attr("placeholder",t.data.meta_desc),s.og_title&&(e("#seopress_cpt #seopress_social_fb_title_meta").attr("placeholder",s.og_title[0]),e("#seopress_cpt .facebook-snippet-preview .snippet-fb-title").html(s.og_title[0]),e("#seopress_cpt .facebook-snippet-preview .snippet-fb-title-default").html(s.og_title[0])),s.og_desc&&(e("#seopress_cpt #seopress_social_fb_desc_meta").attr("placeholder",s.og_desc[0]),e("#seopress_cpt .facebook-snippet-preview .snippet-fb-description").html(s.og_desc[0]),e("#seopress_cpt .facebook-snippet-preview .snippet-fb-description-default").html(s.og_desc[0])),s.og_img&&(e("#seopress_cpt #seopress_social_fb_img_meta").attr("placeholder",s.og_img[0]),e("#seopress_cpt .facebook-snippet-preview .snippet-fb-img img").attr("src",s.og_img[0]),e("#seopress_cpt .facebook-snippet-preview .snippet-fb-img-default img").attr("src",s.og_img[0])),e("#seopress_cpt .facebook-snippet-preview .snippet-fb-url").html(s.og_url),e("#seopress_cpt .facebook-snippet-preview .snippet-fb-site-name").html(s.og_site_name),s.tw_title&&(e("#seopress_cpt #seopress_social_twitter_title_meta").attr("placeholder",s.tw_title[0]),e("#seopress_cpt .twitter-snippet-preview .snippet-twitter-title").html(s.tw_title[0]),e("#seopress_cpt .twitter-snippet-preview .snippet-twitter-title-default").html(s.tw_title[0])),s.tw_desc&&(e("#seopress_cpt #seopress_social_twitter_desc_meta").attr("placeholder",s.tw_desc[0]),e("#seopress_cpt .twitter-snippet-preview .snippet-twitter-description").html(s.tw_desc[0]),e("#seopress_cpt .twitter-snippet-preview .snippet-twitter-description-default").html(s.tw_desc[0])),s.tw_img&&(e("#seopress_cpt #seopress_social_twitter_img_meta").attr("placeholder",s.tw_img[0]),e("#seopress_cpt .twitter-snippet-preview .snippet-twitter-img img").attr("src",s.tw_img[0]),e("#seopress_cpt .twitter-snippet-preview .snippet-twitter-img-default img").attr("src",s.tw_img[0])),e("#seopress_cpt .twitter-snippet-preview .snippet-twitter-url").html(s.og_url),e("#seopress_cpt #seopress_robots_canonical_meta").attr("placeholder",t.data.canonical),e("#seopress-analysis-tabs").load(" #seopress-analysis-tabs-1","",sp_ca_toggle),e(".analysis-score p").removeClass("loading")}}),i=!!t})});
1
+ jQuery(document).ready(function(e){const{subscribe:t,select:s}=wp.data;let a=!1;t(()=>{var t=wp.data.select("core/editor").isAutosavingPost(),s=wp.data.select("core/edit-post").isSavingMetaBoxes();!s||t||a||e.ajax({method:"GET",url:seopressAjaxRealPreview.seopress_real_preview,data:{action:"seopress_do_real_preview",post_id:e("#seopress-tabs").attr("data_id"),tax_name:e("#seopress-tabs").attr("data_tax"),origin:e("#seopress-tabs").attr("data_origin"),post_type:e("#seopress_launch_analysis").attr("data_post_type"),seopress_analysis_target_kw:e("#seopress_analysis_target_kw_meta").val(),_ajax_nonce:seopressAjaxRealPreview.seopress_nonce},beforeSend:function(){e(".analysis-score p span").fadeIn().text(seopressAjaxRealPreview.i18n.progress),e(".analysis-score p").addClass("loading")},success:function(t){void 0===t.data.og_title?og_title="":og_title=t.data.og_title.values,void 0===t.data.og_desc?og_desc="":og_desc=t.data.og_desc.values,void 0===t.data.og_img?og_img="":og_img=t.data.og_img.values,void 0===t.data.og_url?og_url="":og_url=t.data.og_url.host,void 0===t.data.og_site_name?og_site_name="":og_site_name=t.data.og_site_name.values,void 0===t.data.tw_title?tw_title="":tw_title=t.data.tw_title.values,void 0===t.data.tw_desc?tw_desc="":tw_desc=t.data.tw_desc.values,void 0===t.data.tw_img?tw_img="":tw_img=t.data.tw_img.values,void 0===t.data.meta_robots?meta_robots="":meta_robots=t.data.meta_robots[0];var s={og_title:og_title,og_desc:og_desc,og_img:og_img,og_url:og_url,og_site_name:og_site_name,tw_title:tw_title,tw_desc:tw_desc,tw_img:tw_img};for(var a in s)s.length&&(a=s[a].length>1?s[a].slice(-1)[0]:s[a][0]);meta_robots=meta_robots.toString(),e("#sp-advanced-alert").empty(),new RegExp("noindex").test(meta_robots)&&e("#sp-advanced-alert").append('<span class="impact high" aria-hidden="true"></span>'),e("#seopress_cpt .google-snippet-preview .snippet-title").html(t.data.title),e("#seopress_cpt .google-snippet-preview .snippet-title-default").html(t.data.title),e("#seopress_titles_title_meta").attr("placeholder",t.data.title),e("#seopress_cpt .google-snippet-preview .snippet-description").html(t.data.meta_desc),e("#seopress_cpt .google-snippet-preview .snippet-description-default").html(t.data.meta_desc),e("#seopress_titles_desc_meta").attr("placeholder",t.data.meta_desc),s.og_title&&(e("#seopress_cpt #seopress_social_fb_title_meta").attr("placeholder",s.og_title[0]),e("#seopress_cpt .facebook-snippet-preview .snippet-fb-title").html(s.og_title[0]),e("#seopress_cpt .facebook-snippet-preview .snippet-fb-title-default").html(s.og_title[0])),s.og_desc&&(e("#seopress_cpt #seopress_social_fb_desc_meta").attr("placeholder",s.og_desc[0]),e("#seopress_cpt .facebook-snippet-preview .snippet-fb-description").html(s.og_desc[0]),e("#seopress_cpt .facebook-snippet-preview .snippet-fb-description-default").html(s.og_desc[0])),s.og_img&&(e("#seopress_cpt #seopress_social_fb_img_meta").attr("placeholder",s.og_img[0]),e("#seopress_cpt .facebook-snippet-preview .snippet-fb-img img").attr("src",s.og_img[0]),e("#seopress_cpt .facebook-snippet-preview .snippet-fb-img-default img").attr("src",s.og_img[0])),e("#seopress_cpt .facebook-snippet-preview .snippet-fb-url").html(s.og_url),e("#seopress_cpt .facebook-snippet-preview .snippet-fb-site-name").html(s.og_site_name),s.tw_title&&(e("#seopress_cpt #seopress_social_twitter_title_meta").attr("placeholder",s.tw_title[0]),e("#seopress_cpt .twitter-snippet-preview .snippet-twitter-title").html(s.tw_title[0]),e("#seopress_cpt .twitter-snippet-preview .snippet-twitter-title-default").html(s.tw_title[0])),s.tw_desc&&(e("#seopress_cpt #seopress_social_twitter_desc_meta").attr("placeholder",s.tw_desc[0]),e("#seopress_cpt .twitter-snippet-preview .snippet-twitter-description").html(s.tw_desc[0]),e("#seopress_cpt .twitter-snippet-preview .snippet-twitter-description-default").html(s.tw_desc[0])),s.tw_img&&(e("#seopress_cpt #seopress_social_twitter_img_meta").attr("placeholder",s.tw_img[0]),e("#seopress_cpt .twitter-snippet-preview .snippet-twitter-img img").attr("src",s.tw_img[0]),e("#seopress_cpt .twitter-snippet-preview .snippet-twitter-img-default img").attr("src",s.tw_img[0])),e("#seopress_cpt .twitter-snippet-preview .snippet-twitter-url").html(s.og_url),e("#seopress_cpt #seopress_robots_canonical_meta").attr("placeholder",t.data.canonical),e("#seopress-analysis-tabs").load(" #seopress-analysis-tabs-1","",sp_ca_toggle),e(".analysis-score p").removeClass("loading")}}),a=!!s})});
assets/js/seopress-counters.js CHANGED
@@ -62,7 +62,7 @@ function sp_titles_counters() {
62
  jQuery('#seopress_titles_title_counters_progress').attr('aria-valuenow',progress),
63
  jQuery('#seopress_titles_title_counters_progress').text(progress +'%'),
64
  jQuery('#seopress_titles_title_counters_progress').css('width',progress +'%')
65
- })
66
  }
67
 
68
  function sp_meta_desc_counters() {
@@ -130,7 +130,7 @@ function sp_meta_desc_counters() {
130
  jQuery('#seopress_titles_desc_counters_progress').text(progress +'%'),
131
  jQuery('#seopress_titles_desc_counters_progress').css('width',progress +'%')
132
 
133
- }), jQuery("#excerpt, .editor-post-excerpt textarea").keyup(function(e) {
134
  var meta_desc_val = jQuery("#seopress_titles_desc_meta").val();
135
  var meta_desc_placeholder = jQuery("#seopress_titles_desc_meta").attr("placeholder");
136
 
@@ -151,43 +151,38 @@ function sp_meta_desc_counters() {
151
  jQuery('#seopress_titles_desc_counters_progress').attr('aria-valuenow',progress),
152
  jQuery('#seopress_titles_desc_counters_progress').text(progress +'%'),
153
  jQuery('#seopress_titles_desc_counters_progress').css('width',progress +'%')
154
- })
155
  }
156
 
157
  function pixelTitle(e) {
158
- inputText = e;
159
- font = "18px Arial";
160
-
161
- canvas = document.createElement("canvas");
162
- context = canvas.getContext("2d");
163
- context.font = font;
164
- width = context.measureText(inputText).width;
165
- formattedWidth = Math.ceil(width);
166
-
167
- return formattedWidth;
168
  }
169
 
170
  function pixelDesc(e) {
171
- inputText = e;
172
- font = "14px Arial";
173
-
174
- canvas = document.createElement("canvas");
175
- context = canvas.getContext("2d");
176
- context.font = font;
177
- width = context.measureText(inputText).width;
178
- formattedWidth = Math.ceil(width);
179
-
180
- return formattedWidth;
181
  }
182
 
183
- function sp_is_valid_url(str) {
184
- var pattern = new RegExp('^(https?:\\/\\/)?'+ // protocol
185
- '((([a-z\\d]([a-z\\d-]*[a-z\\d])*)\\.)+[a-z]{2,}|'+ // domain name
186
- '((\\d{1,3}\\.){3}\\d{1,3}))'+ // OR ip (v4) address
187
- '(\\:\\d+)?(\\/[-a-z\\d%_.~+]*)*'+ // port and path
188
- '(\\?[;&a-z\\d%_.~+=-]*)?'+ // query string
189
- '(\\#[-a-z\\d_]*)?$','i'); // fragment locator
190
- return !!pattern.test(str);
191
  }
192
 
193
  function sp_social_img(social_slug) {
@@ -244,7 +239,7 @@ function sp_social_img(social_slug) {
244
  });
245
  }
246
  } else {
247
- jQuery(".snippet-"+social_slug+"-img-alert.alert3").css("display", "block");
248
  }
249
  }
250
 
@@ -334,64 +329,76 @@ jQuery(document).ready(function(e) {
334
  } else {
335
  jQuery("#seopress_cpt .google-snippet-preview").removeClass("mobile-preview");
336
  }
337
- jQuery('#toggle-preview').on('click', function() {
338
  jQuery('#toggle-preview').attr('data-toggle', jQuery('#toggle-preview').attr('data-toggle') == '1' ? '0' : '1');
339
- jQuery("#seopress_cpt .google-snippet-preview").toggleClass("mobile-preview");
340
- });
341
- function s() {
342
- e.ajax({
343
- method: "GET",
344
- url: seopressAjaxRealPreview.seopress_real_preview,
345
- data: {
346
- action: "seopress_do_real_preview",
347
- post_id: e("#seopress-tabs").attr("data_id"),
348
- tax_name: e("#seopress-tabs").attr("data_tax"),
349
- origin: e("#seopress-tabs").attr("data_origin"),
350
- post_type: e("#seopress_launch_analysis").attr("data_post_type"),
351
- seopress_analysis_target_kw: e("#seopress_analysis_target_kw_meta").val(),
352
- _ajax_nonce: seopressAjaxRealPreview.seopress_nonce
353
  },
354
  beforeSend: function() {
355
  e(".analysis-score p span").fadeIn().text(seopressAjaxRealPreview.i18n.progress),
356
  e(".analysis-score p").addClass('loading')
357
  },
358
  success: function(s) {
359
- typeof s.data.og_title ==="undefined" ? og_title = "" : og_title = s.data.og_title.values;
360
- typeof s.data.og_desc ==="undefined" ? og_desc = "" : og_desc = s.data.og_desc.values;
361
- typeof s.data.og_img ==="undefined" ? og_img = "" : og_img = s.data.og_img.values;
362
- typeof s.data.og_url ==="undefined" ? og_url = "" : og_url = s.data.og_url.host;
363
- typeof s.data.og_site_name ==="undefined" ? og_site_name = "" : og_site_name = s.data.og_site_name.values;
364
- typeof s.data.tw_title ==="undefined" ? tw_title = "" : tw_title = s.data.tw_title.values;
365
- typeof s.data.tw_desc ==="undefined" ? tw_desc = "" : tw_desc = s.data.tw_desc.values;
366
- typeof s.data.tw_img ==="undefined" ? tw_img = "" : tw_img = s.data.tw_img.values;
367
-
368
- var data_arr = {og_title : og_title,
369
- og_desc : og_desc,
370
- og_img : og_img,
371
- og_url : og_url,
372
- og_site_name : og_site_name,
373
- tw_title : tw_title,
374
- tw_desc : tw_desc,
375
- tw_img : tw_img
376
- };
377
-
378
- for (var key in data_arr) {
379
- if (data_arr.length) {
380
- if (data_arr[key].length > 1) {
381
- key = data_arr[key].slice(-1)[0];
382
- } else {
383
- key = data_arr[key][0];
384
- }
385
- }
386
- }
 
 
 
 
 
 
 
 
 
 
 
 
387
 
388
  // Google Preview
389
- e("#seopress_cpt .google-snippet-preview .snippet-title").html(s.data.title),
390
- e("#seopress_cpt .google-snippet-preview .snippet-title-default").html(s.data.title),
391
- e("#seopress_titles_title_meta").attr("placeholder", s.data.title),
392
- e("#seopress_cpt .google-snippet-preview .snippet-description").html(s.data.meta_desc),
393
- e("#seopress_cpt .google-snippet-preview .snippet-description-default").html(s.data.meta_desc),
394
- e("#seopress_titles_desc_meta").attr("placeholder", s.data.meta_desc)
395
 
396
  // Facebook Preview
397
  if (data_arr.og_title) {
@@ -412,8 +419,8 @@ jQuery(document).ready(function(e) {
412
  e("#seopress_cpt .facebook-snippet-preview .snippet-fb-img-default img").attr("src", data_arr.og_img[0])
413
  }
414
 
415
- e("#seopress_cpt .facebook-snippet-preview .snippet-fb-url").html(data_arr.og_url),
416
- e("#seopress_cpt .facebook-snippet-preview .snippet-fb-site-name").html(data_arr.og_site_name)
417
 
418
  // Twitter Preview
419
  if (data_arr.tw_title) {
@@ -436,7 +443,7 @@ jQuery(document).ready(function(e) {
436
 
437
  e("#seopress_cpt .twitter-snippet-preview .snippet-twitter-url").html(data_arr.og_url),
438
 
439
- e("#seopress_cpt #seopress_robots_canonical_meta").attr("placeholder", s.data.canonical),
440
 
441
  e("#seopress-analysis-tabs").load(" #seopress-analysis-tabs-1", '', sp_ca_toggle),
442
  e(".analysis-score p").removeClass('loading'),
@@ -446,12 +453,12 @@ jQuery(document).ready(function(e) {
446
  sp_titles_counters(),
447
  sp_meta_desc_counters(),
448
  sp_social()
449
- }
450
- })
451
- }
452
  s(),
453
  e("#seopress_launch_analysis").on("click", function() {
454
- s()
455
  }),
456
  sp_ca_toggle()
457
  });
62
  jQuery('#seopress_titles_title_counters_progress').attr('aria-valuenow',progress),
63
  jQuery('#seopress_titles_title_counters_progress').text(progress +'%'),
64
  jQuery('#seopress_titles_title_counters_progress').css('width',progress +'%')
65
+ })
66
  }
67
 
68
  function sp_meta_desc_counters() {
130
  jQuery('#seopress_titles_desc_counters_progress').text(progress +'%'),
131
  jQuery('#seopress_titles_desc_counters_progress').css('width',progress +'%')
132
 
133
+ }), jQuery("#excerpt, .editor-post-excerpt textarea").keyup(function(e) {
134
  var meta_desc_val = jQuery("#seopress_titles_desc_meta").val();
135
  var meta_desc_placeholder = jQuery("#seopress_titles_desc_meta").attr("placeholder");
136
 
151
  jQuery('#seopress_titles_desc_counters_progress').attr('aria-valuenow',progress),
152
  jQuery('#seopress_titles_desc_counters_progress').text(progress +'%'),
153
  jQuery('#seopress_titles_desc_counters_progress').css('width',progress +'%')
154
+ })
155
  }
156
 
157
  function pixelTitle(e) {
158
+ inputText = e;
159
+ font = "18px Arial";
160
+
161
+ canvas = document.createElement("canvas");
162
+ context = canvas.getContext("2d");
163
+ context.font = font;
164
+ width = context.measureText(inputText).width;
165
+ formattedWidth = Math.ceil(width);
166
+
167
+ return formattedWidth;
168
  }
169
 
170
  function pixelDesc(e) {
171
+ inputText = e;
172
+ font = "14px Arial";
173
+
174
+ canvas = document.createElement("canvas");
175
+ context = canvas.getContext("2d");
176
+ context.font = font;
177
+ width = context.measureText(inputText).width;
178
+ formattedWidth = Math.ceil(width);
179
+
180
+ return formattedWidth;
181
  }
182
 
183
+ function sp_is_valid_url(string) {
184
+ var res = string.match(/(http(s)?:\/\/.)?(www\.)?[-a-zA-Z0-9@:%._\+~#=]{2,256}\.[a-z]{2,6}\b([-a-zA-Z0-9@:%_\+.~#?&//=]*)/g);
185
+ return (res !== null)
 
 
 
 
 
186
  }
187
 
188
  function sp_social_img(social_slug) {
239
  });
240
  }
241
  } else {
242
+ jQuery(".snippet-"+social_slug+"-img-alert.alert5").css("display", "block");
243
  }
244
  }
245
 
329
  } else {
330
  jQuery("#seopress_cpt .google-snippet-preview").removeClass("mobile-preview");
331
  }
332
+ jQuery('#toggle-preview').on('click', function() {
333
  jQuery('#toggle-preview').attr('data-toggle', jQuery('#toggle-preview').attr('data-toggle') == '1' ? '0' : '1');
334
+ jQuery("#seopress_cpt .google-snippet-preview").toggleClass("mobile-preview");
335
+ });
336
+ function s() {
337
+ e.ajax({
338
+ method: "GET",
339
+ url: seopressAjaxRealPreview.seopress_real_preview,
340
+ data: {
341
+ action: "seopress_do_real_preview",
342
+ post_id: e("#seopress-tabs").attr("data_id"),
343
+ tax_name: e("#seopress-tabs").attr("data_tax"),
344
+ origin: e("#seopress-tabs").attr("data_origin"),
345
+ post_type: e("#seopress_launch_analysis").attr("data_post_type"),
346
+ seopress_analysis_target_kw: e("#seopress_analysis_target_kw_meta").val(),
347
+ _ajax_nonce: seopressAjaxRealPreview.seopress_nonce
348
  },
349
  beforeSend: function() {
350
  e(".analysis-score p span").fadeIn().text(seopressAjaxRealPreview.i18n.progress),
351
  e(".analysis-score p").addClass('loading')
352
  },
353
  success: function(s) {
354
+ typeof s.data.og_title ==="undefined" ? og_title = "" : og_title = s.data.og_title.values;
355
+ typeof s.data.og_desc ==="undefined" ? og_desc = "" : og_desc = s.data.og_desc.values;
356
+ typeof s.data.og_img ==="undefined" ? og_img = "" : og_img = s.data.og_img.values;
357
+ typeof s.data.og_url ==="undefined" ? og_url = "" : og_url = s.data.og_url.host;
358
+ typeof s.data.og_site_name ==="undefined" ? og_site_name = "" : og_site_name = s.data.og_site_name.values;
359
+ typeof s.data.tw_title ==="undefined" ? tw_title = "" : tw_title = s.data.tw_title.values;
360
+ typeof s.data.tw_desc ==="undefined" ? tw_desc = "" : tw_desc = s.data.tw_desc.values;
361
+ typeof s.data.tw_img ==="undefined" ? tw_img = "" : tw_img = s.data.tw_img.values;
362
+ typeof s.data.meta_robots ==="undefined" ? meta_robots = "" : meta_robots = s.data.meta_robots[0];
363
+
364
+ var data_arr = {og_title : og_title,
365
+ og_desc : og_desc,
366
+ og_img : og_img,
367
+ og_url : og_url,
368
+ og_site_name : og_site_name,
369
+ tw_title : tw_title,
370
+ tw_desc : tw_desc,
371
+ tw_img : tw_img
372
+ };
373
+
374
+ for (var key in data_arr) {
375
+ if (data_arr.length) {
376
+ if (data_arr[key].length > 1) {
377
+ key = data_arr[key].slice(-1)[0];
378
+ } else {
379
+ key = data_arr[key][0];
380
+ }
381
+ }
382
+ }
383
+
384
+ // Meta Robots
385
+ meta_robots = meta_robots.toString();
386
+
387
+ e("#sp-advanced-alert").empty();
388
+
389
+ var if_noindex = new RegExp('noindex');
390
+
391
+ if(if_noindex.test(meta_robots)){
392
+ e("#sp-advanced-alert").append('<span class="impact high" aria-hidden="true"></span>');
393
+ }
394
 
395
  // Google Preview
396
+ e("#seopress_cpt .google-snippet-preview .snippet-title").html(s.data.title),
397
+ e("#seopress_cpt .google-snippet-preview .snippet-title-default").html(s.data.title),
398
+ e("#seopress_titles_title_meta").attr("placeholder", s.data.title),
399
+ e("#seopress_cpt .google-snippet-preview .snippet-description").html(s.data.meta_desc),
400
+ e("#seopress_cpt .google-snippet-preview .snippet-description-default").html(s.data.meta_desc),
401
+ e("#seopress_titles_desc_meta").attr("placeholder", s.data.meta_desc)
402
 
403
  // Facebook Preview
404
  if (data_arr.og_title) {
419
  e("#seopress_cpt .facebook-snippet-preview .snippet-fb-img-default img").attr("src", data_arr.og_img[0])
420
  }
421
 
422
+ e("#seopress_cpt .facebook-snippet-preview .snippet-fb-url").html(data_arr.og_url),
423
+ e("#seopress_cpt .facebook-snippet-preview .snippet-fb-site-name").html(data_arr.og_site_name)
424
 
425
  // Twitter Preview
426
  if (data_arr.tw_title) {
443
 
444
  e("#seopress_cpt .twitter-snippet-preview .snippet-twitter-url").html(data_arr.og_url),
445
 
446
+ e("#seopress_cpt #seopress_robots_canonical_meta").attr("placeholder", s.data.canonical),
447
 
448
  e("#seopress-analysis-tabs").load(" #seopress-analysis-tabs-1", '', sp_ca_toggle),
449
  e(".analysis-score p").removeClass('loading'),
453
  sp_titles_counters(),
454
  sp_meta_desc_counters(),
455
  sp_social()
456
+ }
457
+ })
458
+ }
459
  s(),
460
  e("#seopress_launch_analysis").on("click", function() {
461
+ s()
462
  }),
463
  sp_ca_toggle()
464
  });
assets/js/seopress-counters.min.js CHANGED
@@ -1 +1 @@
1
- function sp_titles_counters(){var e=jQuery("#seopress_titles_title_meta").val(),t=jQuery("#seopress_titles_title_meta").attr("placeholder");if(jQuery("#seopress_titles_title_counters").after('<div id="seopress_titles_title_counters_val">/ 60</div>'),e.length>0?(jQuery("#seopress_titles_title_counters").text(e.length),jQuery("#seopress_titles_title_pixel").text(pixelTitle(e))):t.length&&(jQuery("#seopress_titles_title_counters").text(t.length),jQuery("#seopress_titles_title_pixel").text(pixelTitle(t))),e.length>60?jQuery("#seopress_titles_title_counters").css("color","red"):t.length>60&&jQuery("#seopress_titles_title_counters").css("color","red"),pixelTitle(e)>568?jQuery("#seopress_titles_title_pixel").css("color","red"):pixelTitle(t)>568&&jQuery("#seopress_titles_title_pixel").css("color","red"),e.length)var s=Math.round(pixelTitle(e)/568*100);else s=Math.round(pixelTitle(t)/568*100);s>=100&&(s=100),jQuery("#seopress_titles_title_counters_progress").attr("aria-valuenow",s),jQuery("#seopress_titles_title_counters_progress").text(s+"%"),jQuery("#seopress_titles_title_counters_progress").css("width",s+"%"),jQuery("#seopress_titles_title_meta, #seopress-tag-single-title, #seopress-tag-single-site-title, #seopress-tag-single-sep").on("keyup paste change click",function(e){var t=jQuery("#seopress_titles_title_meta").val(),s=jQuery("#seopress_titles_title_meta").attr("placeholder");if(jQuery("#seopress_titles_title_counters").css("color","inherit"),jQuery("#seopress_titles_title_pixel").css("color","inherit"),t.length>60&&jQuery("#seopress_titles_title_counters").css("color","red"),pixelTitle(t)>568&&jQuery("#seopress_titles_title_pixel").css("color","red"),0==t.length&&(s.length>60&&jQuery("#seopress_titles_title_counters").css("color","red"),pixelTitle(s)>568&&jQuery("#seopress_titles_title_pixel").css("color","red")),t.length>0?(jQuery("#seopress_titles_title_counters").text(t.length),jQuery("#seopress_titles_title_pixel").text(pixelTitle(t))):s.length&&(jQuery("#seopress_titles_title_counters").text(s.length),jQuery("#seopress_titles_title_pixel").text(pixelTitle(s))),t.length>0?(jQuery(".snippet-title-custom").text(e.target.value),jQuery(".snippet-title").css("display","none"),jQuery(".snippet-title-custom").css("display","block"),jQuery(".snippet-title-default").css("display","none")):0==t.length&&(jQuery(".snippet-title-default").css("display","block"),jQuery(".snippet-title-custom").css("display","none"),jQuery(".snippet-title").css("display","none")),t.length)var i=Math.round(pixelTitle(t)/568*100);else i=Math.round(pixelTitle(s)/568*100);i>=100&&(i=100),jQuery("#seopress_titles_title_counters_progress").attr("aria-valuenow",i),jQuery("#seopress_titles_title_counters_progress").text(i+"%"),jQuery("#seopress_titles_title_counters_progress").css("width",i+"%")})}function sp_meta_desc_counters(){var e=jQuery("#seopress_titles_desc_meta").val(),t=jQuery("#seopress_titles_desc_meta").attr("placeholder");if(jQuery("#seopress_titles_desc_counters").after('<div id="seopress_titles_desc_counters_val">/ 160</div>'),e.length>0?(jQuery("#seopress_titles_desc_counters").text(e.length),jQuery("#seopress_titles_desc_pixel").text(pixelDesc(e))):t.length&&(jQuery("#seopress_titles_desc_counters").text(t.length),jQuery("#seopress_titles_desc_pixel").text(pixelDesc(t))),e.length>160?jQuery("#seopress_titles_desc_counters").css("color","red"):t.length>160&&jQuery("#seopress_titles_desc_counters").css("color","red"),pixelDesc(e)>940?jQuery("#seopress_titles_desc_pixel").css("color","red"):pixelDesc(t)>940&&jQuery("#seopress_titles_desc_pixel").css("color","red"),e.length)var s=Math.round(pixelDesc(e)/940*100);else s=Math.round(pixelDesc(t)/940*100);s>=100&&(s=100),jQuery("#seopress_titles_desc_counters_progress").attr("aria-valuenow",s),jQuery("#seopress_titles_desc_counters_progress").text(s+"%"),jQuery("#seopress_titles_desc_counters_progress").css("width",s+"%"),jQuery("#seopress_titles_desc_meta, #seopress-tag-single-excerpt").on("keyup paste change click",function(e){var t=jQuery("#seopress_titles_desc_meta").val(),s=jQuery("#seopress_titles_desc_meta").attr("placeholder");if(jQuery("#seopress_titles_desc_counters").css("color","inherit"),jQuery("#seopress_titles_desc_pixel").css("color","inherit"),t.length>160&&jQuery("#seopress_titles_desc_counters").css("color","red"),pixelDesc(t)>940&&jQuery("#seopress_titles_desc_pixel").css("color","red"),0==t.length&&(s.length>160&&jQuery("#seopress_titles_desc_counters").css("color","red"),pixelDesc(s)>940&&jQuery("#seopress_titles_desc_pixel").css("color","red")),t.length>0?(jQuery("#seopress_titles_desc_counters").text(t.length),jQuery("#seopress_titles_desc_pixel").text(pixelDesc(t))):s.length&&(jQuery("#seopress_titles_desc_counters").text(s.length),jQuery("#seopress_titles_desc_pixel").text(pixelDesc(s))),t.length>0?(jQuery(".snippet-description-custom").text(e.target.value),jQuery(".snippet-description").css("display","none"),jQuery(".snippet-description-custom").css("display","inline"),jQuery(".snippet-description-default").css("display","none")):0==t.length&&(jQuery(".snippet-description-default").css("display","inline"),jQuery(".snippet-description-custom").css("display","none"),jQuery(".snippet-description").css("display","none")),t.length)var i=Math.round(pixelDesc(t)/940*100);else i=Math.round(pixelDesc(s)/940*100);i>=100&&(i=100),jQuery("#seopress_titles_desc_counters_progress").attr("aria-valuenow",i),jQuery("#seopress_titles_desc_counters_progress").text(i+"%"),jQuery("#seopress_titles_desc_counters_progress").css("width",i+"%")}),jQuery("#excerpt, .editor-post-excerpt textarea").keyup(function(e){var t=jQuery("#seopress_titles_desc_meta").val(),s=jQuery("#seopress_titles_desc_meta").attr("placeholder");if(0==t.length&&0==jQuery(".snippet-description-custom").val().length&&(jQuery(".snippet-description-custom").text(e.target.value),jQuery(".snippet-description").css("display","none"),jQuery(".snippet-description-custom").css("display","inline"),jQuery(".snippet-description-default").css("display","none")),t.length)var i=t.length;else i=s.length;i>=100&&(i=100),jQuery("#seopress_titles_desc_counters_progress").attr("aria-valuenow",i),jQuery("#seopress_titles_desc_counters_progress").text(i+"%"),jQuery("#seopress_titles_desc_counters_progress").css("width",i+"%")})}function pixelTitle(e){return inputText=e,font="18px Arial",canvas=document.createElement("canvas"),context=canvas.getContext("2d"),context.font=font,width=context.measureText(inputText).width,formattedWidth=Math.ceil(width),formattedWidth}function pixelDesc(e){return inputText=e,font="14px Arial",canvas=document.createElement("canvas"),context=canvas.getContext("2d"),context.font=font,width=context.measureText(inputText).width,formattedWidth=Math.ceil(width),formattedWidth}function sp_is_valid_url(e){return!!new RegExp("^(https?:\\/\\/)?((([a-z\\d]([a-z\\d-]*[a-z\\d])*)\\.)+[a-z]{2,}|((\\d{1,3}\\.){3}\\d{1,3}))(\\:\\d+)?(\\/[-a-z\\d%_.~+]*)*(\\?[;&a-z\\d%_.~+=-]*)?(\\#[-a-z\\d_]*)?$","i").test(e)}function sp_social_img(e){if(jQuery(".snippet-"+e+"-img-alert").css("display","none"),""==(t=jQuery("#seopress_social_"+e+"_img_meta").val()))var t=jQuery("#seopress_social_"+e+"_img_meta").attr("placeholder");!0===sp_is_valid_url(t)?(t.length>0?(jQuery(".snippet-"+e+"-img-custom img").attr("src",t),jQuery(".snippet-"+e+"-img").css("display","none"),jQuery(".snippet-"+e+"-img-custom").css("display","block"),jQuery(".snippet-"+e+"-img-default").css("display","none")):0==t.length&&(jQuery(".snippet-"+e+"-img-default").css("display","block"),jQuery(".snippet-"+e+"-img-custom").css("display","none"),jQuery(".snippet-"+e+"-img").css("display","none")),t.length>0&&jQuery.get(t).done(function(){var s=t.split(/\#|\?/)[0].split(".").pop().trim();if(-1==["jpg","jpeg","gif","png"].indexOf(s))jQuery(".snippet-"+e+"-img-alert.alert1").css("display","block");else{var i=new Image;i.src=t,jQuery(i).one("load",function(){pic_real_width=parseInt(i.width),pic_real_height=parseInt(i.height),"fb"==e?(min_width=200,min_height=200):(min_width=144,min_height=144),(pic_real_width<min_width||pic_real_height<min_height)&&jQuery(".snippet-"+e+"-img-alert.alert2").css("display","block"),ratio_img=(pic_real_width/pic_real_height).toFixed(2),jQuery(".snippet-"+e+"-img-alert.alert4").css("display","block"),jQuery(".snippet-"+e+"-img-alert.alert4 span").text(ratio_img)})}}).fail(function(){jQuery(".snippet-"+e+"-img-alert.alert3").css("display","block")})):jQuery(".snippet-"+e+"-img-alert.alert3").css("display","block")}function sp_social(){jQuery("#seopress_social_fb_title_meta, #seopress-tag-single-title, #seopress-tag-single-site-title, #seopress-tag-single-sep").on("keyup paste change click",function(e){var t=jQuery("#seopress_social_fb_title_meta").val();t.length>0?(jQuery(".snippet-fb-title-custom").text(e.target.value),jQuery(".snippet-fb-title").css("display","none"),jQuery(".snippet-fb-title-custom").css("display","block"),jQuery(".snippet-fb-title-default").css("display","none")):0==t.length&&(jQuery(".snippet-fb-title-default").css("display","block"),jQuery(".snippet-fb-title-custom").css("display","none"),jQuery(".snippet-fb-title").css("display","none"))}),jQuery("#seopress_social_fb_desc_meta").on("keyup paste change click",function(e){var t=jQuery("#seopress_social_fb_desc_meta").val();t.length>0?(jQuery(".snippet-fb-description-custom").text(e.target.value),jQuery(".snippet-fb-description").css("display","none"),jQuery(".snippet-fb-description-custom").css("display","block"),jQuery(".snippet-fb-description-default").css("display","none")):0==t.length&&(jQuery(".snippet-fb-description-default").css("display","block"),jQuery(".snippet-fb-description-custom").css("display","none"),jQuery(".snippet-fb-description").css("display","none"))}),sp_social_img("fb"),jQuery("#seopress_social_fb_img_meta").on("keyup paste change click",function(){sp_social_img("fb")}),jQuery("#seopress_social_twitter_title_meta").on("keyup paste change click",function(e){var t=jQuery("#seopress_social_twitter_title_meta").val();t.length>0?(jQuery(".snippet-twitter-title-custom").text(e.target.value),jQuery(".snippet-twitter-title").css("display","none"),jQuery(".snippet-twitter-title-custom").css("display","block"),jQuery(".snippet-twitter-title-default").css("display","none")):0==t.length&&(jQuery(".snippet-twitter-title-default").css("display","block"),jQuery(".snippet-twitter-title-custom").css("display","none"),jQuery(".snippet-twitter-title").css("display","none"))}),jQuery("#seopress_social_twitter_desc_meta").on("keyup paste change click",function(e){var t=jQuery("#seopress_social_twitter_desc_meta").val();t.length>0?(jQuery(".snippet-twitter-description-custom").text(e.target.value),jQuery(".snippet-twitter-description").css("display","none"),jQuery(".snippet-twitter-description-custom").css("display","block"),jQuery(".snippet-twitter-description-default").css("display","none")):0==t.length&&(jQuery(".snippet-twitter-description-default").css("display","block"),jQuery(".snippet-twitter-description-custom").css("display","none"),jQuery(".snippet-twitter-description").css("display","none"))}),sp_social_img("twitter"),jQuery("#seopress_social_twitter_img_meta").on("keyup paste change click",function(){sp_social_img("twitter")})}function sp_ca_toggle(){var e=!1;jQuery(".gr-analysis-title .btn-toggle").on("click",function(t){e&&(event.stopImmediatePropagation(),event.preventDefault(),e=!1),jQuery(this).toggleClass("open"),jQuery(this).parent().parent().next(".gr-analysis-content").toggle()}),jQuery("#expand-all").on("click",function(e){e.preventDefault(),jQuery(".gr-analysis-content").show()}),jQuery("#close-all").on("click",function(e){e.preventDefault(),jQuery(".gr-analysis-content").hide()})}jQuery(document).ready(function(e){function t(){e.ajax({method:"GET",url:seopressAjaxRealPreview.seopress_real_preview,data:{action:"seopress_do_real_preview",post_id:e("#seopress-tabs").attr("data_id"),tax_name:e("#seopress-tabs").attr("data_tax"),origin:e("#seopress-tabs").attr("data_origin"),post_type:e("#seopress_launch_analysis").attr("data_post_type"),seopress_analysis_target_kw:e("#seopress_analysis_target_kw_meta").val(),_ajax_nonce:seopressAjaxRealPreview.seopress_nonce},beforeSend:function(){e(".analysis-score p span").fadeIn().text(seopressAjaxRealPreview.i18n.progress),e(".analysis-score p").addClass("loading")},success:function(t){void 0===t.data.og_title?og_title="":og_title=t.data.og_title.values,void 0===t.data.og_desc?og_desc="":og_desc=t.data.og_desc.values,void 0===t.data.og_img?og_img="":og_img=t.data.og_img.values,void 0===t.data.og_url?og_url="":og_url=t.data.og_url.host,void 0===t.data.og_site_name?og_site_name="":og_site_name=t.data.og_site_name.values,void 0===t.data.tw_title?tw_title="":tw_title=t.data.tw_title.values,void 0===t.data.tw_desc?tw_desc="":tw_desc=t.data.tw_desc.values,void 0===t.data.tw_img?tw_img="":tw_img=t.data.tw_img.values;var s={og_title:og_title,og_desc:og_desc,og_img:og_img,og_url:og_url,og_site_name:og_site_name,tw_title:tw_title,tw_desc:tw_desc,tw_img:tw_img};for(var i in s)s.length&&(i=s[i].length>1?s[i].slice(-1)[0]:s[i][0]);e("#seopress_cpt .google-snippet-preview .snippet-title").html(t.data.title),e("#seopress_cpt .google-snippet-preview .snippet-title-default").html(t.data.title),e("#seopress_titles_title_meta").attr("placeholder",t.data.title),e("#seopress_cpt .google-snippet-preview .snippet-description").html(t.data.meta_desc),e("#seopress_cpt .google-snippet-preview .snippet-description-default").html(t.data.meta_desc),e("#seopress_titles_desc_meta").attr("placeholder",t.data.meta_desc),s.og_title&&(e("#seopress_cpt #seopress_social_fb_title_meta").attr("placeholder",s.og_title[0]),e("#seopress_cpt .facebook-snippet-preview .snippet-fb-title").html(s.og_title[0]),e("#seopress_cpt .facebook-snippet-preview .snippet-fb-title-default").html(s.og_title[0])),s.og_desc&&(e("#seopress_cpt #seopress_social_fb_desc_meta").attr("placeholder",s.og_desc[0]),e("#seopress_cpt .facebook-snippet-preview .snippet-fb-description").html(s.og_desc[0]),e("#seopress_cpt .facebook-snippet-preview .snippet-fb-description-default").html(s.og_desc[0])),s.og_img&&(e("#seopress_cpt #seopress_social_fb_img_meta").attr("placeholder",s.og_img[0]),e("#seopress_cpt .facebook-snippet-preview .snippet-fb-img img").attr("src",s.og_img[0]),e("#seopress_cpt .facebook-snippet-preview .snippet-fb-img-default img").attr("src",s.og_img[0])),e("#seopress_cpt .facebook-snippet-preview .snippet-fb-url").html(s.og_url),e("#seopress_cpt .facebook-snippet-preview .snippet-fb-site-name").html(s.og_site_name),s.tw_title&&(e("#seopress_cpt #seopress_social_twitter_title_meta").attr("placeholder",s.tw_title[0]),e("#seopress_cpt .twitter-snippet-preview .snippet-twitter-title").html(s.tw_title[0]),e("#seopress_cpt .twitter-snippet-preview .snippet-twitter-title-default").html(s.tw_title[0])),s.tw_desc&&(e("#seopress_cpt #seopress_social_twitter_desc_meta").attr("placeholder",s.tw_desc[0]),e("#seopress_cpt .twitter-snippet-preview .snippet-twitter-description").html(s.tw_desc[0]),e("#seopress_cpt .twitter-snippet-preview .snippet-twitter-description-default").html(s.tw_desc[0])),s.tw_img&&(e("#seopress_cpt #seopress_social_twitter_img_meta").attr("placeholder",s.tw_img[0]),e("#seopress_cpt .twitter-snippet-preview .snippet-twitter-img img").attr("src",s.tw_img[0]),e("#seopress_cpt .twitter-snippet-preview .snippet-twitter-img-default img").attr("src",s.tw_img[0])),e("#seopress_cpt .twitter-snippet-preview .snippet-twitter-url").html(s.og_url),e("#seopress_cpt #seopress_robots_canonical_meta").attr("placeholder",t.data.canonical),e("#seopress-analysis-tabs").load(" #seopress-analysis-tabs-1","",sp_ca_toggle),e(".analysis-score p").removeClass("loading"),e(" #seopress_titles_title_counters_val").remove(),e(" #seopress_titles_desc_counters_val").remove(),sp_titles_counters(),sp_meta_desc_counters(),sp_social()}})}"1"==jQuery("#toggle-preview").attr("data-toggle")?jQuery("#seopress_cpt .google-snippet-preview").addClass("mobile-preview"):jQuery("#seopress_cpt .google-snippet-preview").removeClass("mobile-preview"),jQuery("#toggle-preview").on("click",function(){jQuery("#toggle-preview").attr("data-toggle","1"==jQuery("#toggle-preview").attr("data-toggle")?"0":"1"),jQuery("#seopress_cpt .google-snippet-preview").toggleClass("mobile-preview")}),t(),e("#seopress_launch_analysis").on("click",function(){t()}),sp_ca_toggle()});
1
+ function sp_titles_counters(){var e=jQuery("#seopress_titles_title_meta").val(),t=jQuery("#seopress_titles_title_meta").attr("placeholder");if(jQuery("#seopress_titles_title_counters").after('<div id="seopress_titles_title_counters_val">/ 60</div>'),e.length>0?(jQuery("#seopress_titles_title_counters").text(e.length),jQuery("#seopress_titles_title_pixel").text(pixelTitle(e))):t.length&&(jQuery("#seopress_titles_title_counters").text(t.length),jQuery("#seopress_titles_title_pixel").text(pixelTitle(t))),e.length>60?jQuery("#seopress_titles_title_counters").css("color","red"):t.length>60&&jQuery("#seopress_titles_title_counters").css("color","red"),pixelTitle(e)>568?jQuery("#seopress_titles_title_pixel").css("color","red"):pixelTitle(t)>568&&jQuery("#seopress_titles_title_pixel").css("color","red"),e.length)var s=Math.round(pixelTitle(e)/568*100);else s=Math.round(pixelTitle(t)/568*100);s>=100&&(s=100),jQuery("#seopress_titles_title_counters_progress").attr("aria-valuenow",s),jQuery("#seopress_titles_title_counters_progress").text(s+"%"),jQuery("#seopress_titles_title_counters_progress").css("width",s+"%"),jQuery("#seopress_titles_title_meta, #seopress-tag-single-title, #seopress-tag-single-site-title, #seopress-tag-single-sep").on("keyup paste change click",function(e){var t=jQuery("#seopress_titles_title_meta").val(),s=jQuery("#seopress_titles_title_meta").attr("placeholder");if(jQuery("#seopress_titles_title_counters").css("color","inherit"),jQuery("#seopress_titles_title_pixel").css("color","inherit"),t.length>60&&jQuery("#seopress_titles_title_counters").css("color","red"),pixelTitle(t)>568&&jQuery("#seopress_titles_title_pixel").css("color","red"),0==t.length&&(s.length>60&&jQuery("#seopress_titles_title_counters").css("color","red"),pixelTitle(s)>568&&jQuery("#seopress_titles_title_pixel").css("color","red")),t.length>0?(jQuery("#seopress_titles_title_counters").text(t.length),jQuery("#seopress_titles_title_pixel").text(pixelTitle(t))):s.length&&(jQuery("#seopress_titles_title_counters").text(s.length),jQuery("#seopress_titles_title_pixel").text(pixelTitle(s))),t.length>0?(jQuery(".snippet-title-custom").text(e.target.value),jQuery(".snippet-title").css("display","none"),jQuery(".snippet-title-custom").css("display","block"),jQuery(".snippet-title-default").css("display","none")):0==t.length&&(jQuery(".snippet-title-default").css("display","block"),jQuery(".snippet-title-custom").css("display","none"),jQuery(".snippet-title").css("display","none")),t.length)var i=Math.round(pixelTitle(t)/568*100);else i=Math.round(pixelTitle(s)/568*100);i>=100&&(i=100),jQuery("#seopress_titles_title_counters_progress").attr("aria-valuenow",i),jQuery("#seopress_titles_title_counters_progress").text(i+"%"),jQuery("#seopress_titles_title_counters_progress").css("width",i+"%")})}function sp_meta_desc_counters(){var e=jQuery("#seopress_titles_desc_meta").val(),t=jQuery("#seopress_titles_desc_meta").attr("placeholder");if(jQuery("#seopress_titles_desc_counters").after('<div id="seopress_titles_desc_counters_val">/ 160</div>'),e.length>0?(jQuery("#seopress_titles_desc_counters").text(e.length),jQuery("#seopress_titles_desc_pixel").text(pixelDesc(e))):t.length&&(jQuery("#seopress_titles_desc_counters").text(t.length),jQuery("#seopress_titles_desc_pixel").text(pixelDesc(t))),e.length>160?jQuery("#seopress_titles_desc_counters").css("color","red"):t.length>160&&jQuery("#seopress_titles_desc_counters").css("color","red"),pixelDesc(e)>940?jQuery("#seopress_titles_desc_pixel").css("color","red"):pixelDesc(t)>940&&jQuery("#seopress_titles_desc_pixel").css("color","red"),e.length)var s=Math.round(pixelDesc(e)/940*100);else s=Math.round(pixelDesc(t)/940*100);s>=100&&(s=100),jQuery("#seopress_titles_desc_counters_progress").attr("aria-valuenow",s),jQuery("#seopress_titles_desc_counters_progress").text(s+"%"),jQuery("#seopress_titles_desc_counters_progress").css("width",s+"%"),jQuery("#seopress_titles_desc_meta, #seopress-tag-single-excerpt").on("keyup paste change click",function(e){var t=jQuery("#seopress_titles_desc_meta").val(),s=jQuery("#seopress_titles_desc_meta").attr("placeholder");if(jQuery("#seopress_titles_desc_counters").css("color","inherit"),jQuery("#seopress_titles_desc_pixel").css("color","inherit"),t.length>160&&jQuery("#seopress_titles_desc_counters").css("color","red"),pixelDesc(t)>940&&jQuery("#seopress_titles_desc_pixel").css("color","red"),0==t.length&&(s.length>160&&jQuery("#seopress_titles_desc_counters").css("color","red"),pixelDesc(s)>940&&jQuery("#seopress_titles_desc_pixel").css("color","red")),t.length>0?(jQuery("#seopress_titles_desc_counters").text(t.length),jQuery("#seopress_titles_desc_pixel").text(pixelDesc(t))):s.length&&(jQuery("#seopress_titles_desc_counters").text(s.length),jQuery("#seopress_titles_desc_pixel").text(pixelDesc(s))),t.length>0?(jQuery(".snippet-description-custom").text(e.target.value),jQuery(".snippet-description").css("display","none"),jQuery(".snippet-description-custom").css("display","inline"),jQuery(".snippet-description-default").css("display","none")):0==t.length&&(jQuery(".snippet-description-default").css("display","inline"),jQuery(".snippet-description-custom").css("display","none"),jQuery(".snippet-description").css("display","none")),t.length)var i=Math.round(pixelDesc(t)/940*100);else i=Math.round(pixelDesc(s)/940*100);i>=100&&(i=100),jQuery("#seopress_titles_desc_counters_progress").attr("aria-valuenow",i),jQuery("#seopress_titles_desc_counters_progress").text(i+"%"),jQuery("#seopress_titles_desc_counters_progress").css("width",i+"%")}),jQuery("#excerpt, .editor-post-excerpt textarea").keyup(function(e){var t=jQuery("#seopress_titles_desc_meta").val(),s=jQuery("#seopress_titles_desc_meta").attr("placeholder");if(0==t.length&&0==jQuery(".snippet-description-custom").val().length&&(jQuery(".snippet-description-custom").text(e.target.value),jQuery(".snippet-description").css("display","none"),jQuery(".snippet-description-custom").css("display","inline"),jQuery(".snippet-description-default").css("display","none")),t.length)var i=t.length;else i=s.length;i>=100&&(i=100),jQuery("#seopress_titles_desc_counters_progress").attr("aria-valuenow",i),jQuery("#seopress_titles_desc_counters_progress").text(i+"%"),jQuery("#seopress_titles_desc_counters_progress").css("width",i+"%")})}function pixelTitle(e){return inputText=e,font="18px Arial",canvas=document.createElement("canvas"),context=canvas.getContext("2d"),context.font=font,width=context.measureText(inputText).width,formattedWidth=Math.ceil(width),formattedWidth}function pixelDesc(e){return inputText=e,font="14px Arial",canvas=document.createElement("canvas"),context=canvas.getContext("2d"),context.font=font,width=context.measureText(inputText).width,formattedWidth=Math.ceil(width),formattedWidth}function sp_is_valid_url(e){return null!==e.match(/(http(s)?:\/\/.)?(www\.)?[-a-zA-Z0-9@:%._\+~#=]{2,256}\.[a-z]{2,6}\b([-a-zA-Z0-9@:%_\+.~#?&\/\/=]*)/g)}function sp_social_img(e){if(jQuery(".snippet-"+e+"-img-alert").css("display","none"),""==(t=jQuery("#seopress_social_"+e+"_img_meta").val()))var t=jQuery("#seopress_social_"+e+"_img_meta").attr("placeholder");!0===sp_is_valid_url(t)?(t.length>0?(jQuery(".snippet-"+e+"-img-custom img").attr("src",t),jQuery(".snippet-"+e+"-img").css("display","none"),jQuery(".snippet-"+e+"-img-custom").css("display","block"),jQuery(".snippet-"+e+"-img-default").css("display","none")):0==t.length&&(jQuery(".snippet-"+e+"-img-default").css("display","block"),jQuery(".snippet-"+e+"-img-custom").css("display","none"),jQuery(".snippet-"+e+"-img").css("display","none")),t.length>0&&jQuery.get(t).done(function(){var s=t.split(/\#|\?/)[0].split(".").pop().trim();if(-1==["jpg","jpeg","gif","png"].indexOf(s))jQuery(".snippet-"+e+"-img-alert.alert1").css("display","block");else{var i=new Image;i.src=t,jQuery(i).one("load",function(){pic_real_width=parseInt(i.width),pic_real_height=parseInt(i.height),"fb"==e?(min_width=200,min_height=200):(min_width=144,min_height=144),(pic_real_width<min_width||pic_real_height<min_height)&&jQuery(".snippet-"+e+"-img-alert.alert2").css("display","block"),ratio_img=(pic_real_width/pic_real_height).toFixed(2),jQuery(".snippet-"+e+"-img-alert.alert4").css("display","block"),jQuery(".snippet-"+e+"-img-alert.alert4 span").text(ratio_img)})}}).fail(function(){jQuery(".snippet-"+e+"-img-alert.alert3").css("display","block")})):jQuery(".snippet-"+e+"-img-alert.alert5").css("display","block")}function sp_social(){jQuery("#seopress_social_fb_title_meta, #seopress-tag-single-title, #seopress-tag-single-site-title, #seopress-tag-single-sep").on("keyup paste change click",function(e){var t=jQuery("#seopress_social_fb_title_meta").val();t.length>0?(jQuery(".snippet-fb-title-custom").text(e.target.value),jQuery(".snippet-fb-title").css("display","none"),jQuery(".snippet-fb-title-custom").css("display","block"),jQuery(".snippet-fb-title-default").css("display","none")):0==t.length&&(jQuery(".snippet-fb-title-default").css("display","block"),jQuery(".snippet-fb-title-custom").css("display","none"),jQuery(".snippet-fb-title").css("display","none"))}),jQuery("#seopress_social_fb_desc_meta").on("keyup paste change click",function(e){var t=jQuery("#seopress_social_fb_desc_meta").val();t.length>0?(jQuery(".snippet-fb-description-custom").text(e.target.value),jQuery(".snippet-fb-description").css("display","none"),jQuery(".snippet-fb-description-custom").css("display","block"),jQuery(".snippet-fb-description-default").css("display","none")):0==t.length&&(jQuery(".snippet-fb-description-default").css("display","block"),jQuery(".snippet-fb-description-custom").css("display","none"),jQuery(".snippet-fb-description").css("display","none"))}),sp_social_img("fb"),jQuery("#seopress_social_fb_img_meta").on("keyup paste change click",function(){sp_social_img("fb")}),jQuery("#seopress_social_twitter_title_meta").on("keyup paste change click",function(e){var t=jQuery("#seopress_social_twitter_title_meta").val();t.length>0?(jQuery(".snippet-twitter-title-custom").text(e.target.value),jQuery(".snippet-twitter-title").css("display","none"),jQuery(".snippet-twitter-title-custom").css("display","block"),jQuery(".snippet-twitter-title-default").css("display","none")):0==t.length&&(jQuery(".snippet-twitter-title-default").css("display","block"),jQuery(".snippet-twitter-title-custom").css("display","none"),jQuery(".snippet-twitter-title").css("display","none"))}),jQuery("#seopress_social_twitter_desc_meta").on("keyup paste change click",function(e){var t=jQuery("#seopress_social_twitter_desc_meta").val();t.length>0?(jQuery(".snippet-twitter-description-custom").text(e.target.value),jQuery(".snippet-twitter-description").css("display","none"),jQuery(".snippet-twitter-description-custom").css("display","block"),jQuery(".snippet-twitter-description-default").css("display","none")):0==t.length&&(jQuery(".snippet-twitter-description-default").css("display","block"),jQuery(".snippet-twitter-description-custom").css("display","none"),jQuery(".snippet-twitter-description").css("display","none"))}),sp_social_img("twitter"),jQuery("#seopress_social_twitter_img_meta").on("keyup paste change click",function(){sp_social_img("twitter")})}function sp_ca_toggle(){var e=!1;jQuery(".gr-analysis-title .btn-toggle").on("click",function(t){e&&(event.stopImmediatePropagation(),event.preventDefault(),e=!1),jQuery(this).toggleClass("open"),jQuery(this).parent().parent().next(".gr-analysis-content").toggle()}),jQuery("#expand-all").on("click",function(e){e.preventDefault(),jQuery(".gr-analysis-content").show()}),jQuery("#close-all").on("click",function(e){e.preventDefault(),jQuery(".gr-analysis-content").hide()})}jQuery(document).ready(function(e){function t(){e.ajax({method:"GET",url:seopressAjaxRealPreview.seopress_real_preview,data:{action:"seopress_do_real_preview",post_id:e("#seopress-tabs").attr("data_id"),tax_name:e("#seopress-tabs").attr("data_tax"),origin:e("#seopress-tabs").attr("data_origin"),post_type:e("#seopress_launch_analysis").attr("data_post_type"),seopress_analysis_target_kw:e("#seopress_analysis_target_kw_meta").val(),_ajax_nonce:seopressAjaxRealPreview.seopress_nonce},beforeSend:function(){e(".analysis-score p span").fadeIn().text(seopressAjaxRealPreview.i18n.progress),e(".analysis-score p").addClass("loading")},success:function(t){void 0===t.data.og_title?og_title="":og_title=t.data.og_title.values,void 0===t.data.og_desc?og_desc="":og_desc=t.data.og_desc.values,void 0===t.data.og_img?og_img="":og_img=t.data.og_img.values,void 0===t.data.og_url?og_url="":og_url=t.data.og_url.host,void 0===t.data.og_site_name?og_site_name="":og_site_name=t.data.og_site_name.values,void 0===t.data.tw_title?tw_title="":tw_title=t.data.tw_title.values,void 0===t.data.tw_desc?tw_desc="":tw_desc=t.data.tw_desc.values,void 0===t.data.tw_img?tw_img="":tw_img=t.data.tw_img.values,void 0===t.data.meta_robots?meta_robots="":meta_robots=t.data.meta_robots[0];var s={og_title:og_title,og_desc:og_desc,og_img:og_img,og_url:og_url,og_site_name:og_site_name,tw_title:tw_title,tw_desc:tw_desc,tw_img:tw_img};for(var i in s)s.length&&(i=s[i].length>1?s[i].slice(-1)[0]:s[i][0]);meta_robots=meta_robots.toString(),e("#sp-advanced-alert").empty(),new RegExp("noindex").test(meta_robots)&&e("#sp-advanced-alert").append('<span class="impact high" aria-hidden="true"></span>'),e("#seopress_cpt .google-snippet-preview .snippet-title").html(t.data.title),e("#seopress_cpt .google-snippet-preview .snippet-title-default").html(t.data.title),e("#seopress_titles_title_meta").attr("placeholder",t.data.title),e("#seopress_cpt .google-snippet-preview .snippet-description").html(t.data.meta_desc),e("#seopress_cpt .google-snippet-preview .snippet-description-default").html(t.data.meta_desc),e("#seopress_titles_desc_meta").attr("placeholder",t.data.meta_desc),s.og_title&&(e("#seopress_cpt #seopress_social_fb_title_meta").attr("placeholder",s.og_title[0]),e("#seopress_cpt .facebook-snippet-preview .snippet-fb-title").html(s.og_title[0]),e("#seopress_cpt .facebook-snippet-preview .snippet-fb-title-default").html(s.og_title[0])),s.og_desc&&(e("#seopress_cpt #seopress_social_fb_desc_meta").attr("placeholder",s.og_desc[0]),e("#seopress_cpt .facebook-snippet-preview .snippet-fb-description").html(s.og_desc[0]),e("#seopress_cpt .facebook-snippet-preview .snippet-fb-description-default").html(s.og_desc[0])),s.og_img&&(e("#seopress_cpt #seopress_social_fb_img_meta").attr("placeholder",s.og_img[0]),e("#seopress_cpt .facebook-snippet-preview .snippet-fb-img img").attr("src",s.og_img[0]),e("#seopress_cpt .facebook-snippet-preview .snippet-fb-img-default img").attr("src",s.og_img[0])),e("#seopress_cpt .facebook-snippet-preview .snippet-fb-url").html(s.og_url),e("#seopress_cpt .facebook-snippet-preview .snippet-fb-site-name").html(s.og_site_name),s.tw_title&&(e("#seopress_cpt #seopress_social_twitter_title_meta").attr("placeholder",s.tw_title[0]),e("#seopress_cpt .twitter-snippet-preview .snippet-twitter-title").html(s.tw_title[0]),e("#seopress_cpt .twitter-snippet-preview .snippet-twitter-title-default").html(s.tw_title[0])),s.tw_desc&&(e("#seopress_cpt #seopress_social_twitter_desc_meta").attr("placeholder",s.tw_desc[0]),e("#seopress_cpt .twitter-snippet-preview .snippet-twitter-description").html(s.tw_desc[0]),e("#seopress_cpt .twitter-snippet-preview .snippet-twitter-description-default").html(s.tw_desc[0])),s.tw_img&&(e("#seopress_cpt #seopress_social_twitter_img_meta").attr("placeholder",s.tw_img[0]),e("#seopress_cpt .twitter-snippet-preview .snippet-twitter-img img").attr("src",s.tw_img[0]),e("#seopress_cpt .twitter-snippet-preview .snippet-twitter-img-default img").attr("src",s.tw_img[0])),e("#seopress_cpt .twitter-snippet-preview .snippet-twitter-url").html(s.og_url),e("#seopress_cpt #seopress_robots_canonical_meta").attr("placeholder",t.data.canonical),e("#seopress-analysis-tabs").load(" #seopress-analysis-tabs-1","",sp_ca_toggle),e(".analysis-score p").removeClass("loading"),e(" #seopress_titles_title_counters_val").remove(),e(" #seopress_titles_desc_counters_val").remove(),sp_titles_counters(),sp_meta_desc_counters(),sp_social()}})}"1"==jQuery("#toggle-preview").attr("data-toggle")?jQuery("#seopress_cpt .google-snippet-preview").addClass("mobile-preview"):jQuery("#seopress_cpt .google-snippet-preview").removeClass("mobile-preview"),jQuery("#toggle-preview").on("click",function(){jQuery("#toggle-preview").attr("data-toggle","1"==jQuery("#toggle-preview").attr("data-toggle")?"0":"1"),jQuery("#seopress_cpt .google-snippet-preview").toggleClass("mobile-preview")}),t(),e("#seopress_launch_analysis").on("click",function(){t()}),sp_ca_toggle()});
assets/js/seopress-media-uploader.js CHANGED
@@ -1,31 +1,57 @@
1
  jQuery(document).ready(function($){
2
- const array = ["#seopress_social_knowledge_img", "#seopress_social_twitter_img", "#seopress_social_fb_img"]
3
- array.forEach(function (item) {
4
- var mediaUploader;
5
- $(item + '_upload').click(function(e) {
6
- e.preventDefault();
7
- // If the uploader object has already been created, reopen the dialog
8
- if (mediaUploader) {
9
- mediaUploader.open();
10
- return;
11
- }
12
- // Extend the wp.media object
13
- mediaUploader = wp.media.frames.file_frame = wp.media({
14
- title: 'Choose Image',
15
- button: {
16
- text: 'Choose Image'
17
- }, multiple: false });
18
-
19
- // When a file is selected, grab the URL and set it as the text field's value
20
- mediaUploader.on('select', function() {
21
- attachment = mediaUploader.state().get('selection').first().toJSON();
22
- $(item + '_meta').val(attachment.url);
23
- if(item == '#seopress_social_fb_img') { sp_social_img('fb'); }
24
- if(item == '#seopress_social_twitter_img') { sp_social_img('twitter'); }
25
- });
26
-
27
- // Open the uploader dialog
28
- mediaUploader.open();
29
- });
30
- });
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
31
  });
1
  jQuery(document).ready(function($){
2
+ var mediaUploader;
3
+ $('.button.seopress_social_facebook_img_cpt').click(function(e) {
4
+ e.preventDefault();
5
+
6
+ var url_field = $(this).parent().find('input[type=text]');
7
+ // Extend the wp.media object
8
+ mediaUploader = wp.media.frames.file_frame = wp.media({
9
+ title: 'Choose Image',
10
+ button: {
11
+ text: 'Choose Image'
12
+ }, multiple: false });
13
+
14
+ // When a file is selected, grab the URL and set it as the text field's value
15
+ mediaUploader.on('select', function() {
16
+ attachment = mediaUploader.state().get('selection').first().toJSON();
17
+ $(url_field).val(attachment.url);
18
+ });
19
+ // Open the uploader dialog
20
+ mediaUploader.open();
21
+ });
22
+
23
+ const array = [
24
+ "#seopress_social_knowledge_img",
25
+ "#seopress_social_twitter_img",
26
+ "#seopress_social_fb_img"
27
+ ]
28
+
29
+ array.forEach(function (item) {
30
+ var mediaUploader;
31
+ $(item + '_upload').click(function(e) {
32
+ e.preventDefault();
33
+ // If the uploader object has already been created, reopen the dialog
34
+ if (mediaUploader) {
35
+ mediaUploader.open();
36
+ return;
37
+ }
38
+ // Extend the wp.media object
39
+ mediaUploader = wp.media.frames.file_frame = wp.media({
40
+ title: 'Choose Image',
41
+ button: {
42
+ text: 'Choose Image'
43
+ }, multiple: false });
44
+
45
+ // When a file is selected, grab the URL and set it as the text field's value
46
+ mediaUploader.on('select', function() {
47
+ attachment = mediaUploader.state().get('selection').first().toJSON();
48
+ $(item + '_meta').val(attachment.url);
49
+ if(item == '#seopress_social_fb_img') { sp_social_img('fb'); }
50
+ if(item == '#seopress_social_twitter_img') { sp_social_img('twitter'); }
51
+ });
52
+
53
+ // Open the uploader dialog
54
+ mediaUploader.open();
55
+ });
56
+ });
57
  });
assets/js/seopress-media-uploader.min.js CHANGED
@@ -1 +1 @@
1
- jQuery(document).ready(function(e){["#seopress_social_knowledge_img","#seopress_social_twitter_img","#seopress_social_fb_img"].forEach(function(t){var s;e(t+"_upload").click(function(o){o.preventDefault(),s?s.open():((s=wp.media.frames.file_frame=wp.media({title:"Choose Image",button:{text:"Choose Image"},multiple:!1})).on("select",function(){attachment=s.state().get("selection").first().toJSON(),e(t+"_meta").val(attachment.url),"#seopress_social_fb_img"==t&&sp_social_img("fb"),"#seopress_social_twitter_img"==t&&sp_social_img("twitter")}),s.open())})})});
1
+ jQuery(document).ready(function(e){var t;e(".button.seopress_social_facebook_img_cpt").click(function(o){o.preventDefault();var i=e(this).parent().find("input[type=text]");(t=wp.media.frames.file_frame=wp.media({title:"Choose Image",button:{text:"Choose Image"},multiple:!1})).on("select",function(){attachment=t.state().get("selection").first().toJSON(),e(i).val(attachment.url)}),t.open()});["#seopress_social_knowledge_img","#seopress_social_twitter_img","#seopress_social_fb_img"].forEach(function(t){var o;e(t+"_upload").click(function(i){i.preventDefault(),o?o.open():((o=wp.media.frames.file_frame=wp.media({title:"Choose Image",button:{text:"Choose Image"},multiple:!1})).on("select",function(){attachment=o.state().get("selection").first().toJSON(),e(t+"_meta").val(attachment.url),"#seopress_social_fb_img"==t&&sp_social_img("fb"),"#seopress_social_twitter_img"==t&&sp_social_img("twitter")}),o.open())})})});
assets/js/seopress-migrate.js CHANGED
@@ -22,267 +22,97 @@ jQuery(document).ready(function($) {
22
  }
23
  }).trigger('change');
24
 
25
- //Yoast SEO
26
- $('#seopress-yoast-migrate').on('click', function(e) {
27
- e.preventDefault();
28
- self.process_offset( 0, self );
29
- });
30
- process_offset = function( offset, self ) {
31
- $.ajax({
32
- method : 'POST',
33
- url : seopressAjaxMigrate.seopress_yoast_migrate.seopress_yoast_migration,
34
- data : {
35
- action: 'seopress_yoast_migration',
36
- offset: offset,
37
- _ajax_nonce: seopressAjaxMigrate.seopress_yoast_migrate.seopress_nonce,
38
- },
39
- success : function( data ) {
40
- if( 'done' == data.data.offset ) {
41
- $('#seopress-yoast-migrate').removeAttr("disabled");
42
- $( '.spinner' ).css( "visibility", "hidden" );
43
- $( '#yoast-migration-tool .log' ).html(seopressAjaxMigrate.i18n.migration);
44
- } else {
45
- self.process_offset( parseInt( data.data.offset ), self );
46
- }
47
- },
48
- });
49
- };
50
- $('#seopress-yoast-migrate').on('click', function() {
51
- $(this).attr("disabled", "disabled");
52
- $( '#yoast-migration-tool .spinner' ).css( "visibility", "visible" );
53
- $( '#yoast-migration-tool .spinner' ).css( "float", "none" );
54
- $( '#yoast-migration-tool .log' ).html('');
55
- });
56
-
57
- //All In One
58
- $('#seopress-aio-migrate').on('click', function(e2) {
59
- e2.preventDefault();
60
- self.process_offset2( 0, self );
61
- });
62
- process_offset2 = function( offset2, self ) {
63
- $.ajax({
64
- method : 'POST',
65
- url : seopressAjaxMigrate.seopress_aio_migrate.seopress_aio_migration,
66
- data : {
67
- action: 'seopress_aio_migration',
68
- offset2: offset2,
69
- _ajax_nonce: seopressAjaxMigrate.seopress_aio_migrate.seopress_nonce,
70
- },
71
- success : function( data ) {
72
- if( 'done' == data.data.offset2 ) {
73
- $('#seopress-aio-migrate').removeAttr("disabled");
74
- $( '.spinner' ).css( "visibility", "hidden" );
75
- $( '#aio-migration-tool .log' ).html(seopressAjaxMigrate.i18n.migration);
76
- } else {
77
- self.process_offset2( parseInt( data.data.offset2 ), self );
78
- }
79
- },
80
- });
81
- };
82
-
83
- $('#seopress-aio-migrate').on('click', function() {
84
- $(this).attr("disabled", "disabled");
85
- $( '#aio-migration-tool .spinner' ).css( "visibility", "visible" );
86
- $( '#aio-migration-tool .spinner' ).css( "float", "none" );
87
- $( '#aio-migration-tool .log' ).html('');
88
- });
89
-
90
- //SEO Framework
91
- $('#seopress-seo-framework-migrate').on('click', function(e3) {
92
- e3.preventDefault();
93
- self.process_offset3( 0, self );
94
- });
95
- process_offset3 = function( offset3, self ) {
96
- $.ajax({
97
- method : 'POST',
98
- url : seopressAjaxMigrate.seopress_seo_framework_migrate.seopress_seo_framework_migration,
99
- data : {
100
- action: 'seopress_seo_framework_migration',
101
- offset3: offset3,
102
- _ajax_nonce: seopressAjaxMigrate.seopress_seo_framework_migrate.seopress_nonce,
103
- },
104
- success : function( data ) {
105
- if( 'done' == data.data.offset3 ) {
106
- $('#seopress-seo-framework-migrate').removeAttr("disabled");
107
- $( '.spinner' ).css( "visibility", "hidden" );
108
- $( '#seo-framework-migration-tool .log' ).html(seopressAjaxMigrate.i18n.migration);
109
- } else {
110
- self.process_offset3( parseInt( data.data.offset3 ), self );
111
- }
112
- },
113
  });
114
- };
115
-
116
- $('#seopress-seo-framework-migrate').on('click', function() {
117
- $(this).attr("disabled", "disabled");
118
- $( '#seo-framework-migration-tool .spinner' ).css( "visibility", "visible" );
119
- $( '#seo-framework-migration-tool .spinner' ).css( "float", "none" );
120
- $( '#seo-framework-migration-tool .log' ).html('');
121
- });
122
 
123
- //RK
124
- $('#seopress-rk-migrate').on('click', function(e4) {
125
- e4.preventDefault();
126
- self.process_offset4( 0, self );
127
- });
128
- process_offset4 = function( offset4, self ) {
129
- $.ajax({
130
- method : 'POST',
131
- url : seopressAjaxMigrate.seopress_rk_migrate.seopress_rk_migration,
132
- data : {
133
- action: 'seopress_rk_migration',
134
- offset4: offset4,
135
- _ajax_nonce: seopressAjaxMigrate.seopress_rk_migrate.seopress_nonce,
136
- },
137
- success : function( data ) {
138
- if( 'done' == data.data.offset4 ) {
139
- $('#seopress-rk-migrate').removeAttr("disabled");
140
- $( '.spinner' ).css( "visibility", "hidden" );
141
- $( '#rk-migration-tool .log' ).html(seopressAjaxMigrate.i18n.migration);
142
- } else {
143
- self.process_offset4( parseInt( data.data.offset4 ), self );
144
- }
145
- },
146
- });
147
- };
148
-
149
- $('#seopress-rk-migrate').on('click', function() {
150
- $(this).attr("disabled", "disabled");
151
- $( '#rk-migration-tool .spinner' ).css( "visibility", "visible" );
152
- $( '#rk-migration-tool .spinner' ).css( "float", "none" );
153
- $( '#rk-migration-tool .log' ).html('');
154
- });
155
-
156
- //Squirrly
157
- $('#seopress-squirrly-migrate').on('click', function(e5) {
158
- e5.preventDefault();
159
- self.process_offset5( 0, self );
160
- });
161
- process_offset5 = function( offset5, self ) {
162
- $.ajax({
163
- method : 'POST',
164
- url : seopressAjaxMigrate.seopress_squirrly_migrate.seopress_squirrly_migration,
165
- data : {
166
- action: 'seopress_squirrly_migration',
167
- offset5: offset5,
168
- _ajax_nonce: seopressAjaxMigrate.seopress_squirrly_migrate.seopress_nonce,
169
- },
170
- success : function( data ) {
171
- if( 'done' == data.data.offset5 ) {
172
- $('#seopress-squirrly-migrate').removeAttr("disabled");
173
- $( '.spinner' ).css( "visibility", "hidden" );
174
- $( '#squirrly-migration-tool .log' ).html(seopressAjaxMigrate.i18n.migration);
175
- } else {
176
- self.process_offset5( parseInt( data.data.offset5 ), self );
177
- }
178
- },
179
- });
180
- };
181
-
182
- $('#seopress-squirrly-migrate').on('click', function() {
183
- $(this).attr("disabled", "disabled");
184
- $( '#squirrly-migration-tool .spinner' ).css( "visibility", "visible" );
185
- $( '#squirrly-migration-tool .spinner' ).css( "float", "none" );
186
- $( '#squirrly-migration-tool .log' ).html('');
187
- });
188
-
189
- //SEO Ultimate
190
- $('#seopress-seo-ultimate-migrate').on('click', function(e7) {
191
- e7.preventDefault();
192
- self.process_offset7( 0, self );
193
- });
194
- process_offset7 = function( offset7, self ) {
195
- $.ajax({
196
- method : 'POST',
197
- url : seopressAjaxMigrate.seopress_seo_ultimate_migrate.seopress_seo_ultimate_migration,
198
- data : {
199
- action: 'seopress_seo_ultimate_migration',
200
- offset7: offset7,
201
- _ajax_nonce: seopressAjaxMigrate.seopress_seo_ultimate_migrate.seopress_nonce,
202
- },
203
- success : function( data ) {
204
- if( 'done' == data.data.offset7 ) {
205
- $('#seopress-seo-ultimate-migrate').removeAttr("disabled");
206
- $( '.spinner' ).css( "visibility", "hidden" );
207
- $( '#seo-ultimate-migration-tool .log' ).html(seopressAjaxMigrate.i18n.migration);
208
- } else {
209
- self.process_offset7( parseInt( data.data.offset7 ), self );
210
- }
211
- },
212
- });
213
- };
214
-
215
- $('#seopress-seo-ultimate-migrate').on('click', function() {
216
- $(this).attr("disabled", "disabled");
217
- $( '#seo-ultimate-migration-tool .spinner' ).css( "visibility", "visible" );
218
- $( '#seo-ultimate-migration-tool .spinner' ).css( "float", "none" );
219
- $( '#seo-ultimate-migration-tool .log' ).html('');
220
- });
221
-
222
- //WP Meta SEO
223
- $('#seopress-wp-meta-seo-migrate').on('click', function(e8) {
224
- e8.preventDefault();
225
- self.process_offset8( 0, self );
226
- });
227
- process_offset8 = function( offset8, self ) {
228
- $.ajax({
229
- method : 'POST',
230
- url : seopressAjaxMigrate.seopress_wp_meta_seo_migrate.seopress_wp_meta_seo_migration,
231
- data : {
232
- action: 'seopress_wp_meta_seo_migration',
233
- offset8: offset8,
234
- _ajax_nonce: seopressAjaxMigrate.seopress_wp_meta_seo_migrate.seopress_nonce,
235
- },
236
- success : function( data ) {
237
- if( 'done' == data.data.offset8 ) {
238
- $('#seopress-wp-meta-seo-migrate').removeAttr("disabled");
239
- $( '.spinner' ).css( "visibility", "hidden" );
240
- $( '#wp-meta-seo-migration-tool .log' ).html(seopressAjaxMigrate.i18n.migration);
241
- } else {
242
- self.process_offset8( parseInt( data.data.offset8 ), self );
243
- }
244
- },
245
- });
246
- };
247
-
248
- $('#seopress-wp-meta-seo-migrate').on('click', function() {
249
- $(this).attr("disabled", "disabled");
250
- $( '#wp-meta-seo-migration-tool .spinner' ).css( "visibility", "visible" );
251
- $( '#wp-meta-seo-migration-tool .spinner' ).css( "float", "none" );
252
- $( '#wp-meta-seo-migration-tool .log' ).html('');
253
- });
254
-
255
- //Export metadata to CSV
256
- $('#seopress-metadata-export').on('click', function(e6) {
257
- e6.preventDefault();
258
- self.process_offset6( 0, self );
259
- });
260
- process_offset6 = function( offset6, self ) {
261
- $.ajax({
262
- method : 'POST',
263
- url : seopressAjaxMigrate.seopress_metadata_csv.seopress_metadata_export,
264
- data : {
265
- action: 'seopress_metadata_export',
266
- offset6: offset6,
267
- _ajax_nonce: seopressAjaxMigrate.seopress_metadata_csv.seopress_nonce,
268
- },
269
- success : function( data ) {
270
- if( 'done' == data.data.offset6 && data.data.url !='' ) {
271
- $('#seopress-metadata-export').removeAttr("disabled");
272
- $( '.spinner' ).css( "visibility", "hidden" );
273
- $( '#seopress-metadata-tool .log' ).html(seopressAjaxMigrate.i18n.export);
274
- $(location).attr('href',data.data.url);
275
- } else {
276
- self.process_offset6( parseInt( data.data.offset6 ), self );
277
- }
278
- },
279
  });
280
- };
281
-
282
- $('#seopress-metadata-export').on('click', function() {
283
- $(this).attr("disabled", "disabled");
284
- $( '#seopress-metadata-tool .spinner' ).css( "visibility", "visible" );
285
- $( '#seopress-metadata-tool .spinner' ).css( "float", "none" );
286
- $( '#seopress-metadata-tool .log' ).html('');
287
  });
288
  });
22
  }
23
  }).trigger('change');
24
 
25
+ //Import from SEO plugins
26
+ const seo_plugins = ["yoast","aio","seo-framework","rk","squirrly","seo-ultimate","wp-meta-seo","premium-seo-pack","metadata"]
27
+ seo_plugins.forEach(function (item) {
28
+ $('#seopress-'+item+'-migrate').on('click', function(e) {
29
+ e.preventDefault();
30
+ id = item;
31
+ switch (e.srcElement.id) {
32
+ case 'seopress-yoast-migrate':
33
+ url = seopressAjaxMigrate.seopress_yoast_migrate.seopress_yoast_migration;
34
+ action = 'seopress_yoast_migration';
35
+ _ajax_nonce = seopressAjaxMigrate.seopress_yoast_migrate.seopress_nonce;
36
+ break;
37
+ case 'seopress-aio-migrate':
38
+ url = seopressAjaxMigrate.seopress_aio_migrate.seopress_aio_migration;
39
+ action = 'seopress_aio_migration';
40
+ _ajax_nonce = seopressAjaxMigrate.seopress_aio_migrate.seopress_nonce;
41
+ break;
42
+ case 'seopress-seo-framework-migrate':
43
+ url = seopressAjaxMigrate.seopress_seo_framework_migrate.seopress_seo_framework_migration;
44
+ action = 'seopress_seo_framework_migration';
45
+ _ajax_nonce = seopressAjaxMigrate.seopress_seo_framework_migrate.seopress_nonce;
46
+ break;
47
+ case 'seopress-rk-migrate':
48
+ url = seopressAjaxMigrate.seopress_rk_migrate.seopress_rk_migration;
49
+ action = 'seopress_rk_migration';
50
+ _ajax_nonce = seopressAjaxMigrate.seopress_rk_migrate.seopress_nonce;
51
+ break;
52
+ case 'seopress-squirrly-migrate':
53
+ url = seopressAjaxMigrate.seopress_squirrly_migrate.seopress_squirrly_migration;
54
+ action = 'seopress_squirrly_migration';
55
+ _ajax_nonce = seopressAjaxMigrate.seopress_squirrly_migrate.seopress_nonce;
56
+ break;
57
+ case 'seopress-seo-ultimate-migrate':
58
+ url = seopressAjaxMigrate.seopress_seo_ultimate_migrate.seopress_seo_ultimate_migration;
59
+ action = 'seopress_seo_ultimate_migration';
60
+ _ajax_nonce = seopressAjaxMigrate.seopress_seo_ultimate_migrate.seopress_nonce;
61
+ break;
62
+ case 'seopress-wp-meta-seo-migrate':
63
+ url = seopressAjaxMigrate.seopress_wp_meta_seo_migrate.seopress_wp_meta_seo_migration;
64
+ action = 'seopress_wp_meta_seo_migration';
65
+ _ajax_nonce = seopressAjaxMigrate.seopress_wp_meta_seo_migrate.seopress_nonce;
66
+ break;
67
+ case 'seopress-premium-seo-pack-migrate':
68
+ url = seopressAjaxMigrate.seopress_premium_seo_pack_migrate.seopress_premium_seo_pack_migration;
69
+ action = 'seopress_premium_seo_pack_migration';
70
+ _ajax_nonce = seopressAjaxMigrate.seopress_premium_seo_pack_migrate.seopress_nonce;
71
+ break;
72
+ case 'seopress-metadata-migrate':
73
+ url = seopressAjaxMigrate.seopress_metadata_csv.seopress_metadata_export;
74
+ action = 'seopress_metadata_export';
75
+ _ajax_nonce = seopressAjaxMigrate.seopress_metadata_csv.seopress_nonce;
76
+ break;
77
+ default:
78
+ }
79
+ self.process_offset( 0, self, url, action, _ajax_nonce, id );
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
80
  });
 
 
 
 
 
 
 
 
81
 
82
+ process_offset = function( offset, self, url, action, _ajax_nonce, id ) {
83
+
84
+ i18n = seopressAjaxMigrate.i18n.migration;
85
+ if (id =='metadata') {
86
+ i18n = seopressAjaxMigrate.i18n.export;
87
+ }
88
+ $.ajax({
89
+ method : 'POST',
90
+ url : url,
91
+ data : {
92
+ action: action,
93
+ offset: offset,
94
+ _ajax_nonce: _ajax_nonce,
95
+ },
96
+ success : function( data ) {
97
+ if ('done' == data.data.offset) {
98
+ $('#seopress-'+id+'-migrate').removeAttr("disabled");
99
+ $( '.spinner' ).css( "visibility", "hidden" );
100
+ $( '#'+id+'-migration-tool .log' ).html(i18n);
101
+
102
+ if (data.data.url !='') {
103
+ $(location).attr('href',data.data.url);
104
+ }
105
+ } else {
106
+ self.process_offset( parseInt( data.data.offset ), self, url, action, _ajax_nonce, id );
107
+ }
108
+ },
109
+ });
110
+ };
111
+ $('#seopress-'+item+'-migrate').on('click', function() {
112
+ $(this).attr("disabled", "disabled");
113
+ $( '#'+item+'-migration-tool .spinner' ).css( "visibility", "visible" );
114
+ $( '#'+item+'-migration-tool .spinner' ).css( "float", "none" );
115
+ $( '#'+item+'-migration-tool .log' ).html('');
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
116
  });
 
 
 
 
 
 
 
117
  });
118
  });
assets/js/seopress-migrate.min.js CHANGED
@@ -1 +1 @@
1
- jQuery(document).ready(function(e){e("#select-wizard-redirects, #select-wizard-import").change(function(s){s.preventDefault(),"none"==e(this).val()?e("#select-wizard-redirects option, #select-wizard-import option").each(function(){var s=e(this).val();e("#"+s).hide()}):(e("#select-wizard-redirects option:selected, #select-wizard-import option:selected").each(function(){var s=e(this).val();e("#"+s).show()}),e("#select-wizard-redirects option:not(:selected), #select-wizard-import option:not(:selected)").each(function(){var s=e(this).val();e("#"+s).hide()}))}).trigger("change"),e("#seopress-yoast-migrate").on("click",function(e){e.preventDefault(),self.process_offset(0,self)}),process_offset=function(s,o){e.ajax({method:"POST",url:seopressAjaxMigrate.seopress_yoast_migrate.seopress_yoast_migration,data:{action:"seopress_yoast_migration",offset:s,_ajax_nonce:seopressAjaxMigrate.seopress_yoast_migrate.seopress_nonce},success:function(s){"done"==s.data.offset?(e("#seopress-yoast-migrate").removeAttr("disabled"),e(".spinner").css("visibility","hidden"),e("#yoast-migration-tool .log").html(seopressAjaxMigrate.i18n.migration)):o.process_offset(parseInt(s.data.offset),o)}})},e("#seopress-yoast-migrate").on("click",function(){e(this).attr("disabled","disabled"),e("#yoast-migration-tool .spinner").css("visibility","visible"),e("#yoast-migration-tool .spinner").css("float","none"),e("#yoast-migration-tool .log").html("")}),e("#seopress-aio-migrate").on("click",function(e){e.preventDefault(),self.process_offset2(0,self)}),process_offset2=function(s,o){e.ajax({method:"POST",url:seopressAjaxMigrate.seopress_aio_migrate.seopress_aio_migration,data:{action:"seopress_aio_migration",offset2:s,_ajax_nonce:seopressAjaxMigrate.seopress_aio_migrate.seopress_nonce},success:function(s){"done"==s.data.offset2?(e("#seopress-aio-migrate").removeAttr("disabled"),e(".spinner").css("visibility","hidden"),e("#aio-migration-tool .log").html(seopressAjaxMigrate.i18n.migration)):o.process_offset2(parseInt(s.data.offset2),o)}})},e("#seopress-aio-migrate").on("click",function(){e(this).attr("disabled","disabled"),e("#aio-migration-tool .spinner").css("visibility","visible"),e("#aio-migration-tool .spinner").css("float","none"),e("#aio-migration-tool .log").html("")}),e("#seopress-seo-framework-migrate").on("click",function(e){e.preventDefault(),self.process_offset3(0,self)}),process_offset3=function(s,o){e.ajax({method:"POST",url:seopressAjaxMigrate.seopress_seo_framework_migrate.seopress_seo_framework_migration,data:{action:"seopress_seo_framework_migration",offset3:s,_ajax_nonce:seopressAjaxMigrate.seopress_seo_framework_migrate.seopress_nonce},success:function(s){"done"==s.data.offset3?(e("#seopress-seo-framework-migrate").removeAttr("disabled"),e(".spinner").css("visibility","hidden"),e("#seo-framework-migration-tool .log").html(seopressAjaxMigrate.i18n.migration)):o.process_offset3(parseInt(s.data.offset3),o)}})},e("#seopress-seo-framework-migrate").on("click",function(){e(this).attr("disabled","disabled"),e("#seo-framework-migration-tool .spinner").css("visibility","visible"),e("#seo-framework-migration-tool .spinner").css("float","none"),e("#seo-framework-migration-tool .log").html("")}),e("#seopress-rk-migrate").on("click",function(e){e.preventDefault(),self.process_offset4(0,self)}),process_offset4=function(s,o){e.ajax({method:"POST",url:seopressAjaxMigrate.seopress_rk_migrate.seopress_rk_migration,data:{action:"seopress_rk_migration",offset4:s,_ajax_nonce:seopressAjaxMigrate.seopress_rk_migrate.seopress_nonce},success:function(s){"done"==s.data.offset4?(e("#seopress-rk-migrate").removeAttr("disabled"),e(".spinner").css("visibility","hidden"),e("#rk-migration-tool .log").html(seopressAjaxMigrate.i18n.migration)):o.process_offset4(parseInt(s.data.offset4),o)}})},e("#seopress-rk-migrate").on("click",function(){e(this).attr("disabled","disabled"),e("#rk-migration-tool .spinner").css("visibility","visible"),e("#rk-migration-tool .spinner").css("float","none"),e("#rk-migration-tool .log").html("")}),e("#seopress-squirrly-migrate").on("click",function(e){e.preventDefault(),self.process_offset5(0,self)}),process_offset5=function(s,o){e.ajax({method:"POST",url:seopressAjaxMigrate.seopress_squirrly_migrate.seopress_squirrly_migration,data:{action:"seopress_squirrly_migration",offset5:s,_ajax_nonce:seopressAjaxMigrate.seopress_squirrly_migrate.seopress_nonce},success:function(s){"done"==s.data.offset5?(e("#seopress-squirrly-migrate").removeAttr("disabled"),e(".spinner").css("visibility","hidden"),e("#squirrly-migration-tool .log").html(seopressAjaxMigrate.i18n.migration)):o.process_offset5(parseInt(s.data.offset5),o)}})},e("#seopress-squirrly-migrate").on("click",function(){e(this).attr("disabled","disabled"),e("#squirrly-migration-tool .spinner").css("visibility","visible"),e("#squirrly-migration-tool .spinner").css("float","none"),e("#squirrly-migration-tool .log").html("")}),e("#seopress-seo-ultimate-migrate").on("click",function(e){e.preventDefault(),self.process_offset7(0,self)}),process_offset7=function(s,o){e.ajax({method:"POST",url:seopressAjaxMigrate.seopress_seo_ultimate_migrate.seopress_seo_ultimate_migration,data:{action:"seopress_seo_ultimate_migration",offset7:s,_ajax_nonce:seopressAjaxMigrate.seopress_seo_ultimate_migrate.seopress_nonce},success:function(s){"done"==s.data.offset7?(e("#seopress-seo-ultimate-migrate").removeAttr("disabled"),e(".spinner").css("visibility","hidden"),e("#seo-ultimate-migration-tool .log").html(seopressAjaxMigrate.i18n.migration)):o.process_offset7(parseInt(s.data.offset7),o)}})},e("#seopress-seo-ultimate-migrate").on("click",function(){e(this).attr("disabled","disabled"),e("#seo-ultimate-migration-tool .spinner").css("visibility","visible"),e("#seo-ultimate-migration-tool .spinner").css("float","none"),e("#seo-ultimate-migration-tool .log").html("")}),e("#seopress-wp-meta-seo-migrate").on("click",function(e){e.preventDefault(),self.process_offset8(0,self)}),process_offset8=function(s,o){e.ajax({method:"POST",url:seopressAjaxMigrate.seopress_wp_meta_seo_migrate.seopress_wp_meta_seo_migration,data:{action:"seopress_wp_meta_seo_migration",offset8:s,_ajax_nonce:seopressAjaxMigrate.seopress_wp_meta_seo_migrate.seopress_nonce},success:function(s){"done"==s.data.offset8?(e("#seopress-wp-meta-seo-migrate").removeAttr("disabled"),e(".spinner").css("visibility","hidden"),e("#wp-meta-seo-migration-tool .log").html(seopressAjaxMigrate.i18n.migration)):o.process_offset8(parseInt(s.data.offset8),o)}})},e("#seopress-wp-meta-seo-migrate").on("click",function(){e(this).attr("disabled","disabled"),e("#wp-meta-seo-migration-tool .spinner").css("visibility","visible"),e("#wp-meta-seo-migration-tool .spinner").css("float","none"),e("#wp-meta-seo-migration-tool .log").html("")}),e("#seopress-metadata-export").on("click",function(e){e.preventDefault(),self.process_offset6(0,self)}),process_offset6=function(s,o){e.ajax({method:"POST",url:seopressAjaxMigrate.seopress_metadata_csv.seopress_metadata_export,data:{action:"seopress_metadata_export",offset6:s,_ajax_nonce:seopressAjaxMigrate.seopress_metadata_csv.seopress_nonce},success:function(s){"done"==s.data.offset6&&""!=s.data.url?(e("#seopress-metadata-export").removeAttr("disabled"),e(".spinner").css("visibility","hidden"),e("#seopress-metadata-tool .log").html(seopressAjaxMigrate.i18n.export),e(location).attr("href",s.data.url)):o.process_offset6(parseInt(s.data.offset6),o)}})},e("#seopress-metadata-export").on("click",function(){e(this).attr("disabled","disabled"),e("#seopress-metadata-tool .spinner").css("visibility","visible"),e("#seopress-metadata-tool .spinner").css("float","none"),e("#seopress-metadata-tool .log").html("")})});
1
+ jQuery(document).ready(function(e){e("#select-wizard-redirects, #select-wizard-import").change(function(s){s.preventDefault(),"none"==e(this).val()?e("#select-wizard-redirects option, #select-wizard-import option").each(function(){var s=e(this).val();e("#"+s).hide()}):(e("#select-wizard-redirects option:selected, #select-wizard-import option:selected").each(function(){var s=e(this).val();e("#"+s).show()}),e("#select-wizard-redirects option:not(:selected), #select-wizard-import option:not(:selected)").each(function(){var s=e(this).val();e("#"+s).hide()}))}).trigger("change");["yoast","aio","seo-framework","rk","squirrly","seo-ultimate","wp-meta-seo","premium-seo-pack","metadata"].forEach(function(s){e("#seopress-"+s+"-migrate").on("click",function(e){switch(e.preventDefault(),id=s,e.srcElement.id){case"seopress-yoast-migrate":url=seopressAjaxMigrate.seopress_yoast_migrate.seopress_yoast_migration,action="seopress_yoast_migration",_ajax_nonce=seopressAjaxMigrate.seopress_yoast_migrate.seopress_nonce;break;case"seopress-aio-migrate":url=seopressAjaxMigrate.seopress_aio_migrate.seopress_aio_migration,action="seopress_aio_migration",_ajax_nonce=seopressAjaxMigrate.seopress_aio_migrate.seopress_nonce;break;case"seopress-seo-framework-migrate":url=seopressAjaxMigrate.seopress_seo_framework_migrate.seopress_seo_framework_migration,action="seopress_seo_framework_migration",_ajax_nonce=seopressAjaxMigrate.seopress_seo_framework_migrate.seopress_nonce;break;case"seopress-rk-migrate":url=seopressAjaxMigrate.seopress_rk_migrate.seopress_rk_migration,action="seopress_rk_migration",_ajax_nonce=seopressAjaxMigrate.seopress_rk_migrate.seopress_nonce;break;case"seopress-squirrly-migrate":url=seopressAjaxMigrate.seopress_squirrly_migrate.seopress_squirrly_migration,action="seopress_squirrly_migration",_ajax_nonce=seopressAjaxMigrate.seopress_squirrly_migrate.seopress_nonce;break;case"seopress-seo-ultimate-migrate":url=seopressAjaxMigrate.seopress_seo_ultimate_migrate.seopress_seo_ultimate_migration,action="seopress_seo_ultimate_migration",_ajax_nonce=seopressAjaxMigrate.seopress_seo_ultimate_migrate.seopress_nonce;break;case"seopress-wp-meta-seo-migrate":url=seopressAjaxMigrate.seopress_wp_meta_seo_migrate.seopress_wp_meta_seo_migration,action="seopress_wp_meta_seo_migration",_ajax_nonce=seopressAjaxMigrate.seopress_wp_meta_seo_migrate.seopress_nonce;break;case"seopress-premium-seo-pack-migrate":url=seopressAjaxMigrate.seopress_premium_seo_pack_migrate.seopress_premium_seo_pack_migration,action="seopress_premium_seo_pack_migration",_ajax_nonce=seopressAjaxMigrate.seopress_premium_seo_pack_migrate.seopress_nonce;break;case"seopress-metadata-migrate":url=seopressAjaxMigrate.seopress_metadata_csv.seopress_metadata_export,action="seopress_metadata_export",_ajax_nonce=seopressAjaxMigrate.seopress_metadata_csv.seopress_nonce}self.process_offset(0,self,url,action,_ajax_nonce,id)}),process_offset=function(s,r,a,o,t,i){i18n=seopressAjaxMigrate.i18n.migration,"metadata"==i&&(i18n=seopressAjaxMigrate.i18n.export),e.ajax({method:"POST",url:a,data:{action:o,offset:s,_ajax_nonce:t},success:function(s){"done"==s.data.offset?(e("#seopress-"+i+"-migrate").removeAttr("disabled"),e(".spinner").css("visibility","hidden"),e("#"+i+"-migration-tool .log").html(i18n),""!=s.data.url&&e(location).attr("href",s.data.url)):r.process_offset(parseInt(s.data.offset),r,a,o,t,i)}})},e("#seopress-"+s+"-migrate").on("click",function(){e(this).attr("disabled","disabled"),e("#"+s+"-migration-tool .spinner").css("visibility","visible"),e("#"+s+"-migration-tool .spinner").css("float","none"),e("#"+s+"-migration-tool .log").html("")})})});
contributors.txt CHANGED
@@ -3,9 +3,11 @@ Great people who contributed to this plugin :
3
  Developers:
4
  - Benjamin Denis: contact@seopress.org / @wp_seopress
5
  - Julio Potier: @juliobox
 
6
 
7
  SEO consultant:
8
  - Alan Cladx: @cladxxx
 
9
 
10
  A11Y:
11
  - Thierry Pigot: @thierrypigot
@@ -18,8 +20,9 @@ Beta testers / feedbacks:
18
  - Sébastien Serre: @sebastienserre
19
  - Ludovic Riaudel: @lriaudel
20
  - Philippe Fronzes: @novaldi64
 
21
 
22
- Integrations:
23
  - The Admin Columns PRO team
24
  - The Polylang team
25
  - The WPML team
@@ -34,11 +37,11 @@ Translators:
34
  - Japan: WP-Translations
35
  - Hindi: WP-Translations
36
  - Dutch: WP-Translations
37
- - Italian: Déborah Donnier @deborahdonnier
38
  - Vietnamese: Anh
39
  - Russian: WP-Translations
40
  - Tamil: Sankar Srinivasan
41
- - Brazilian Portuguese: Daniel Pechmann
42
  - Telugu: Manoj Kumar
43
  - Indonesian: Tomtom
44
  - Bulgarian: @ilivanov
3
  Developers:
4
  - Benjamin Denis: contact@seopress.org / @wp_seopress
5
  - Julio Potier: @juliobox
6
+ - Mickael Gris: @mgris
7
 
8
  SEO consultant:
9
  - Alan Cladx: @cladxxx
10
+ - Neil McCarthy: @GoodnessNeil
11
 
12
  A11Y:
13
  - Thierry Pigot: @thierrypigot
20
  - Sébastien Serre: @sebastienserre
21
  - Ludovic Riaudel: @lriaudel
22
  - Philippe Fronzes: @novaldi64
23
+ - Déborah Donnier @deborahdonnier
24
 
25
+ Integrations (https://www.seopress.org/integrations/):
26
  - The Admin Columns PRO team
27
  - The Polylang team
28
  - The WPML team
37
  - Japan: WP-Translations
38
  - Hindi: WP-Translations
39
  - Dutch: WP-Translations
40
+ - Italian: entersys.it
41
  - Vietnamese: Anh
42
  - Russian: WP-Translations
43
  - Tamil: Sankar Srinivasan
44
+ - Brazilian Portuguese: WP-Translations
45
  - Telugu: Manoj Kumar
46
  - Indonesian: Tomtom
47
  - Bulgarian: @ilivanov
inc/admin/admin-features-list.php CHANGED
@@ -90,7 +90,7 @@
90
  'title' => __('Insights','wp-seopress'),
91
  'desc' => __('Track your keyword positions and backlinks directly in your WordPress.', 'wp-seopress'),
92
  'btn_secondary' => [
93
- admin_url( 'admin.php?page=seopress-insights#tab=tab_seopress_insights_settings' ) => __('Manage','wp-seopress')
94
  ],
95
  'help' => [
96
  'en' => 'https://www.seopress.org/insights/?utm_source=plugin&utm_medium=wp-admin&utm_campaign=seopress',
@@ -293,19 +293,6 @@
293
  ],
294
  'filter' => 'seopress_remove_feature_bot'
295
  ];
296
- $features['backlinks'] = [
297
- 'icon' => 'dashicons-admin-links',
298
- 'title' => __('Backlinks','wp-seopress'),
299
- 'desc' => __('Check your backlinks with Majestic API.', 'wp-seopress'),
300
- 'btn_primary' => [
301
- admin_url( 'edit.php?post_type=seopress_backlinks' ) => __('See backlinks','wp-seopress')
302
- ],
303
- 'btn_secondary' => [
304
- admin_url( 'admin.php?page=seopress-pro-page#tab=tab_seopress_backlinks' ) => __('Manage','wp-seopress')
305
- ],
306
- 'filter' => 'seopress_remove_feature_backlinks',
307
- 'toggle' => false
308
- ];
309
  $features['rewrite'] = [
310
  'icon' => 'dashicons-admin-links',
311
  'title' => __('URL Rewriting','wp-seopress'),
90
  'title' => __('Insights','wp-seopress'),
91
  'desc' => __('Track your keyword positions and backlinks directly in your WordPress.', 'wp-seopress'),
92
  'btn_secondary' => [
93
+ admin_url( 'admin.php?page=seopress-insights' ) => __('Manage','wp-seopress')
94
  ],
95
  'help' => [
96
  'en' => 'https://www.seopress.org/insights/?utm_source=plugin&utm_medium=wp-admin&utm_campaign=seopress',
293
  ],
294
  'filter' => 'seopress_remove_feature_bot'
295
  ];
 
 
 
 
 
 
 
 
 
 
 
 
 
296
  $features['rewrite'] = [
297
  'icon' => 'dashicons-admin-links',
298
  'title' => __('URL Rewriting','wp-seopress'),
inc/admin/admin-header.php CHANGED
@@ -63,7 +63,7 @@ function seopress_admin_header() { ?>
63
  <?php include_once( ABSPATH . 'wp-admin/includes/plugin.php' );
64
  if ( is_plugin_active( 'wp-seopress-insights/seopress-insights.php' ) ) { ?>
65
  <li>
66
- <a href="<?php echo admin_url( 'admin.php?page=seopress-insights#tab=tab_seopress_insights_settings' ); ?>">
67
  <span class="dashicons dashicons-chart-bar"></span>
68
  <?php _e( 'Insights', 'wp-seopress' ); ?>
69
  </a>
@@ -139,12 +139,6 @@ function seopress_admin_header() { ?>
139
  <?php _e( 'Broken links', 'wp-seopress' ); ?>
140
  </a>
141
  </li>
142
- <li>
143
- <a href="<?php echo admin_url( 'edit.php?post_type=seopress_backlinks' ); ?>">
144
- <span class="dashicons dashicons-admin-links"></span>
145
- <?php _e( 'Backlinks', 'wp-seopress' ); ?>
146
- </a>
147
- </li>
148
  <li>
149
  <a href="<?php echo admin_url( 'admin.php?page=seopress-pro-page#tab=tab_seopress_rewrite' ); ?>">
150
  <span class="dashicons dashicons-admin-links"></span>
63
  <?php include_once( ABSPATH . 'wp-admin/includes/plugin.php' );
64
  if ( is_plugin_active( 'wp-seopress-insights/seopress-insights.php' ) ) { ?>
65
  <li>
66
+ <a href="<?php echo admin_url( 'admin.php?page=seopress-insights' ); ?>">
67
  <span class="dashicons dashicons-chart-bar"></span>
68
  <?php _e( 'Insights', 'wp-seopress' ); ?>
69
  </a>
139
  <?php _e( 'Broken links', 'wp-seopress' ); ?>
140
  </a>
141
  </li>
 
 
 
 
 
 
142
  <li>
143
  <a href="<?php echo admin_url( 'admin.php?page=seopress-pro-page#tab=tab_seopress_rewrite' ); ?>">
144
  <span class="dashicons dashicons-admin-links"></span>
inc/admin/admin-metaboxes-content-analysis-form.php CHANGED
@@ -1,184 +1,183 @@
1
  <?php
2
  defined( 'ABSPATH' ) or die( 'Please don&rsquo;t call the plugin directly. Thanks :)' );
3
  echo '<div class="wrap-seopress-analysis">
4
- <p>
5
- '.__('Enter a few keywords for analysis to help you write optimized content.','wp-seopress').'
6
- </p>
7
- <p>
8
- <span class="label">Did you know?</span> '.__('Writing content for your users is the most important thing! If it doesn‘t feel natural, your visitors will leave your site, Google will know it and your ranking will be affected.','wp-seopress').'
9
- </p>
10
- <div class="col-left">
11
- <p>
12
- <label for="seopress_analysis_target_kw_meta">'. __( 'Target keywords', 'wp-seopress' ) .'
13
- '. seopress_tooltip(__('Target keywords','wp-seopress'), __('Separate target keywords with commas. Do not use spaces after the commas, unless you want to include them','wp-seopress'), esc_html('my super keyword,another keyword,keyword')).'
14
- </label>
15
- <input id="seopress_analysis_target_kw_meta" type="text" name="seopress_analysis_target_kw" placeholder="'.esc_html__('Enter your target keywords','wp-seopress').'" aria-label="'.__('Target keywords','wp-seopress').'" value="'.esc_attr($seopress_analysis_target_kw).'" />
16
- </p>';
17
- if (empty($seopress_analysis_data)) {
18
- echo '<div id="seopress_launch_analysis" class="button" data_id="'.get_the_ID().'" data_post_type="'.get_current_screen()->post_type.'">'.__('Analyze my content','wp-seopress').'</div>';
19
- } else {
20
- echo '<div id="seopress_launch_analysis" class="button" data_id="'.get_the_ID().'" data_post_type="'.get_current_screen()->post_type.'">'.__('Refresh analysis','wp-seopress').'</div>';
21
- }
22
-
23
- echo '<br><p><span class="howto">'.__('To get the most accurate analysis, save your post first.','wp-seopress').'</span></p>';
24
  echo '</div>';
25
  if ( is_plugin_active( 'wp-seopress-pro/seopress-pro.php' ) ) {
26
- echo '<div class="col-right">
27
- <p>
28
- <label for="seopress_google_suggest_kw_meta">'. __( 'Google suggestions', 'wp-seopress' ) .'
29
- '. seopress_tooltip(__('Google suggestions','wp-seopress'), __('Enter a keyword, or a phrase, to find the top 10 Google suggestions instantly. This is useful if you want to work with the long tail technique.','wp-seopress'), esc_html('my super keyword,another keyword,keyword')).'
30
- </label>
31
- <input id="seopress_google_suggest_kw_meta" type="text" name="seopress_google_suggest_kw" placeholder="Get suggestions from Google" aria-label="Google suggestions" value="">
32
- </p>
33
- <button id="seopress_get_suggestions" type="button" class="button">'.__('Get suggestions!','wp-seopress').'</button>
34
- ';
35
- echo "<ul id='seopress_suggestions'></ul>";
36
-
37
-
38
- if (get_locale() !='') {
39
- $locale = substr(get_locale(), 0, 2);
40
- $country_code = substr(get_locale(), -2);
41
- } else {
42
- $locale = 'en';
43
- $country_code = 'US';
44
- }
45
-
46
- echo "<script>
47
- function seopress_google_suggest(data){
48
- var raw_suggestions = String(data);
49
-
50
- var suggestions_array = raw_suggestions.split(',');
51
-
52
- var i;
53
- for (i = 0; i < 10; i++) {
54
- document.getElementById('seopress_suggestions').innerHTML += '<li><a href=\"#\" class=\"sp-suggest-btn button button-small\">'+suggestions_array[i]+'</a></li>';
55
- }
56
-
57
- jQuery('.sp-suggest-btn').click(function(e) {
58
- e.preventDefault();
59
- if(jQuery('#seopress_analysis_target_kw_meta').val().length == 0){
60
- jQuery('#seopress_analysis_target_kw_meta').val(jQuery(this).text() + ',');
61
- } else {
62
- str = jQuery('#seopress_analysis_target_kw_meta').val();
63
- str = str.replace(/,\s*$/, '');
64
- jQuery('#seopress_analysis_target_kw_meta').val(str+','+jQuery(this).text());
65
- }
66
- });
67
- }
68
- jQuery('#seopress_get_suggestions').on('click', function(data) {
69
- data.preventDefault();
70
-
71
- document.getElementById('seopress_suggestions').innerHTML = '';
72
-
73
- var kws = jQuery('#seopress_google_suggest_kw_meta').val();
74
-
75
- if (kws) {
76
- var script = document.createElement('script');
77
- script.src = 'https://www.google.com/complete/search?client=firefox&hl=".$locale."&q='+kws+'&gl=".$country_code."&callback=seopress_google_suggest';
78
- document.body.appendChild(script);
79
- }
80
- });
81
- </script>
82
- </div>";
83
  }
84
 
85
  //Analyzes
86
  $analyzes = array(
87
- 'schemas'=> array(
88
- 'title' => __('Structured data types','wp-seopress-pro'),
89
- 'impact' => 'good',
90
- 'desc' => NULL
91
- ),
92
- 'old_post'=> array(
93
- 'title' => __('Last modified date','wp-seopress-pro'),
94
- 'impact' => 'good',
95
- 'desc' => NULL
96
- ),
97
- 'words_counter'=> array(
98
- 'title' => __('Words counter','wp-seopress-pro'),
99
- 'impact' => 'good',
100
- 'desc' => NULL
101
- ),
102
- 'keywords_density'=> array(
103
- 'title' => __('Keywords density','wp-seopress-pro'),
104
- 'impact' => NULL,
105
- 'desc' => NULL
106
- ),
107
- 'keywords_permalink'=> array(
108
- 'title' => __('Keywords in permalink','wp-seopress-pro'),
109
- 'impact' => NULL,
110
- 'desc' => NULL
111
- ),
112
- 'headings'=> array(
113
- 'title' => __('Headings','wp-seopress-pro'),
114
- 'impact' => 'good',
115
- 'desc' => NULL
116
- ),
117
- 'meta_title'=> array(
118
- 'title' => __('Meta title','wp-seopress-pro'),
119
- 'impact' => NULL,
120
- 'desc' => NULL
121
- ),
122
- 'meta_desc'=> array(
123
- 'title' => __('Meta description','wp-seopress-pro'),
124
- 'impact' => NULL,
125
- 'desc' => NULL
126
- ),
127
- 'social'=> array(
128
- 'title' => __('Social meta tags','wp-seopress-pro'),
129
- 'impact' => 'good',
130
- 'desc' => NULL
131
- ),
132
- 'robots'=> array(
133
- 'title' => __('Meta robots','wp-seopress-pro'),
134
- 'impact' => 'good',
135
- 'desc' => NULL
136
- ),
137
- 'img_alt'=> array(
138
- 'title' => __('Alternative texts of images','wp-seopress-pro'),
139
- 'impact' => 'good',
140
- 'desc' => NULL
141
- ),
142
- 'nofollow_links'=> array(
143
- 'title' => __('NoFollow Links','wp-seopress-pro'),
144
- 'impact' => 'good',
145
- 'desc' => NULL
146
- ),
147
- 'outbound_links'=> array(
148
- 'title' => __('Outbound Links','wp-seopress-pro'),
149
- 'impact' => 'good',
150
- 'desc' => NULL
151
- ),
152
  );
153
 
154
  //Schemas
155
  if (!empty($seopress_analysis_data['json']) || isset($seopress_analysis_data['json'])) {
156
- $desc = '<p>'.__('We found these schemas in the source code of this page:','wp-seopress').'</p>';
157
-
158
- $desc .= '<ul>';
159
- $json_ld = array_filter($seopress_analysis_data['json']);
160
- foreach(array_count_values($json_ld) as $key => $value) {
161
- $html = NULL;
162
- if ($value > 1) {
163
- $html = '<span class="impact high">'.__('duplicated schema - x','wp-seopress').$value.'</span>';
164
- $analyzes['schemas']['impact'] = 'high';
165
- }
166
- $desc .= '<li><span class="dashicons dashicons-minus"></span>'.$key.$html.'</li>';
167
- }
168
- $desc .= '</ul>';
169
- $analyzes['schemas']['desc'] = $desc;
170
  } else {
171
- $analyzes['schemas']['impact'] = 'medium';
172
- $analyzes['schemas']['desc'] = '<p>'.__('No schemas found in the source code of this page.','wp-seopress').'</p>';
173
  }
174
 
175
  //Old post
176
  $desc = NULL;
177
  if( strtotime( $post->post_modified ) < strtotime('-365 days') ) {
178
- $analyzes['old_post']['impact'] = 'medium';
179
- $desc = '<p><span class="dashicons dashicons-no-alt"></span>'.__('This post is a little old!','wp-seopress').'</p>';
180
  } else {
181
- $desc = '<p><span class="dashicons dashicons-yes"></span>'.__('The last modified date of this article is less than 1 year. Cool!','wp-seopress').'</p>';
182
  }
183
  $desc .= '<p>'.__('Search engines love fresh content. Regularly update your articles without having to rewrite your content entirely and give them a boost in search rankings. SEOPress takes care of the technical part.','wp-seopress').'</p>';
184
  $analyzes['old_post']['desc'] = $desc;
@@ -186,214 +185,221 @@ $analyzes['old_post']['desc'] = $desc;
186
  //Word counters
187
  $desc = NULL;
188
  if (isset($seopress_analysis_data['words_counter']) || isset($seopress_analysis_data['words_counter_unique'])) {
189
- $desc = '<p>'.__('Words counter is not a direct ranking factor. But, your content must be as qualitative as possible, with relevant and unique information. To fulfill these conditions, your article requires a minimum of paragraphs, so words.','wp-seopress').'</p>
190
- <ul>
191
- <li>'.$seopress_analysis_data['words_counter'].' '.__('words found.','wp-seopress').'</li>
192
- <li>'.$seopress_analysis_data['words_counter_unique'].' '.__('unique words found.','wp-seopress').'</li>';
193
-
194
- if ($seopress_analysis_data['words_counter'] >= 299) {
195
- $desc .= '<li><span class="dashicons dashicons-yes"></span>'.__('Your content is composed of more than 300 words, which is the minimum for a post.','wp-seopress').'</li>';
196
- } else {
197
- $desc .= '<li><span class="dashicons dashicons-no-alt"></span>'.__('Your content is too short. Add a few more paragraphs!','wp-seopress').'</li>';
198
- $analyzes['words_counter']['impact'] = 'medium';
199
- }
200
- $desc .= '</ul>';
201
-
202
- $analyzes['words_counter']['desc'] = $desc;
203
  } else {
204
- $analyzes['words_counter']['desc'] = '<p><span class="dashicons dashicons-no-alt"></span>'.__('No content? Add a few more paragraphs!','wp-seopress').'</p>';
205
- $analyzes['words_counter']['impact'] = 'high';
206
  }
207
 
208
  //Keywords density
209
  if (!empty($seopress_analysis_data['kws_density']['matches']) && isset($seopress_analysis_data['words_counter'])) {
210
- $target_kws_density = $seopress_analysis_data['kws_density']['matches'];
211
-
212
- $desc = '<ul>';
213
- foreach ($target_kws_density as $key => $value) {
214
- foreach ($value as $_key => $_value) {
215
- $kw_count = count($_value);
216
- }
217
- $kw_name = $key;
218
- $kw_density = round($kw_count/$seopress_analysis_data['words_counter']*100, 2);
219
- $desc .= '<li><span class="dashicons dashicons-minus"></span>'.sprintf(esc_html__('%s was found %d times in your content, a keyword density of %s%%','wp-seopress'), $kw_name, $kw_count, $kw_density).'</li>';
220
- }
221
- $desc .= '</ul>';
222
- $desc .= '<p class="description">'.__('Learn more about <a href="https://www.youtube.com/watch?v=Rk4qgQdp2UA" target="_blank">keywords stuffing</a>.','wp-seopress').'</p>';
223
- $analyzes['keywords_density']['impact'] = 'good';
224
- $analyzes['keywords_density']['desc'] = $desc;
225
  } else {
226
- $analyzes['keywords_density']['desc'] = '<p>'.__('We were unable to calculate the density of your keywords. You probably haven‘t added any content or your target keywords were not find in your post content.','wp-seopress').'</p>';
227
- $analyzes['keywords_density']['impact'] = 'high';
228
  }
229
 
230
  //Keywords in permalink
231
  if (!empty($seopress_analysis_data['kws_permalink']['matches'])) {
232
- $desc = '<p><span class="dashicons dashicons-yes"></span>'.__('Cool, one of your target keyword is used in your permalink.','wp-seopress').'</p>';
233
-
234
- $target_kws_permalink = $seopress_analysis_data['kws_permalink']['matches'];
235
-
236
- $desc .= '<ul>';
237
- foreach ($target_kws_permalink as $key => $value) {
238
- $desc .= '<li><span class="dashicons dashicons-minus"></span>'.$key.'</li>';
239
- }
240
- $desc .= '</ul>';
241
- $analyzes['keywords_permalink']['desc'] = $desc;
242
- $analyzes['keywords_permalink']['impact'] = 'good';
243
  } else {
244
- $analyzes['keywords_permalink']['desc'] = '<p><span class="dashicons dashicons-no-alt"></span>'.__('You should add one of your target keyword in your permalink.','wp-seopress').'</p>';
245
- $analyzes['keywords_permalink']['impact'] = 'medium';
 
 
 
 
 
 
246
  }
247
 
 
248
  //Headings
249
  //H1
250
  $desc = NULL;
251
  if (!empty($seopress_analysis_data['h1']['matches'])) {
252
- $desc .= '<h4>'.__('H1 (Heading 1)','wp-seopress').'</h4>';
253
-
254
- $count = $seopress_analysis_data['h1']['nomatches']['count'];
255
-
256
- $target_kws_h1 = $seopress_analysis_data['h1']['matches'];
257
-
258
- $all_h1 = $seopress_analysis_data['h1']['values'];
259
-
260
- $desc .= '<p><span class="dashicons dashicons-yes"></span>'.__('Target keywords were found in Heading 1 (H1).','wp-seopress').'</p>';
261
-
262
- $desc .= '<ul>';
263
-
264
- foreach ($target_kws_h1 as $key => $value) {
265
- foreach ($value as $_key => $_value) {
266
- $kw_count = count($value);
267
- }
268
- $kw_name = $key;
269
- $desc .= '<li><span class="dashicons dashicons-minus"></span>'.sprintf(esc_html__('%s was found %d times.','wp-seopress'), $kw_name, $kw_count).'</li>';
270
- }
271
-
272
- $desc .= '</ul>';
273
- if ($count > 1) {
274
- $desc .= '<p><span class="dashicons dashicons-no-alt"></span>'.sprintf(esc_html__('We found %d Heading 1 (H1) in your content.','wp-seopress'), $count).'</p>';
275
- $desc .= '<p>'.__('You should not use more than one H1 heading in your post content. The rule is simple: only one H1 for each web page. It is better for both SEO and accessibility. Below, the list:','wp-seopress').'</p>';
276
- $analyzes['headings']['impact'] = 'high';
277
- }
278
-
279
- if (!empty($all_h1)) {
280
- $desc .= '<ul>';
281
- foreach($all_h1 as $h1) {
282
- $desc .= '<li><span class="dashicons dashicons-minus"></span>'.$h1.'</li>';
283
- }
284
- $desc .= '</ul>';
285
- }
286
  }
287
 
288
  //H2
289
  $desc .= '<h4>'.__('H2 (Heading 2)','wp-seopress').'</h4>';
290
  if (!empty($seopress_analysis_data['h2']['matches'])) {
291
- $desc .= '<p><span class="dashicons dashicons-yes"></span>'.__('Target keywords were found in Heading 2 (H2).','wp-seopress').'</p>';
292
- $desc .= '<ul>';
293
- $target_kws_h2 = $seopress_analysis_data['h2']['matches'];
294
- foreach ($target_kws_h2 as $key => $value) {
295
- foreach ($value as $_key => $_value) {
296
- $kw_count = count($value);
297
- }
298
- $kw_name = $key;
299
- $desc .= '<li><span class="dashicons dashicons-minus"></span>'.sprintf(esc_html__('%s was found %d times.','wp-seopress'), $kw_name, $kw_count).'</li>';
300
- }
301
- $desc .= '</ul>';
302
  } else {
303
- $desc .= '<p><span class="dashicons dashicons-no-alt"></span>'.__('None of your target keywords were found in Heading 2 (H2).','wp-seopress').'</p>';
304
- if ($analyzes['headings']['impact'] != 'high') {
305
- $analyzes['headings']['impact'] = 'medium';
306
- }
307
  }
308
 
309
  //H3
310
  $desc .= '<h4>'.__('H3 (Heading 3)','wp-seopress').'</h4>';
311
  if (!empty($seopress_analysis_data['h3']['matches'])) {
312
- $desc .= '<p><span class="dashicons dashicons-yes"></span>'.__('Target keywords were found in Heading 3 (H3).','wp-seopress').'</p>';
313
- $desc .= '<ul>';
314
- $target_kws_h3 = $seopress_analysis_data['h3']['matches'];
315
- foreach ($target_kws_h3 as $key => $value) {
316
- foreach ($value as $_key => $_value) {
317
- $kw_count = count($value);
318
- }
319
- $kw_name = $key;
320
- $desc .= '<li><span class="dashicons dashicons-minus"></span>'.sprintf(esc_html__('%s was found %d times.','wp-seopress'), $kw_name, $kw_count).'</li>';
321
- }
322
- $desc .= '</ul>';
323
  } else {
324
- $desc .= '<p><span class="dashicons dashicons-no-alt"></span>'.__('None of your target keywords were found in Heading 3 (H3).','wp-seopress').'</p>';
325
- if ($analyzes['headings']['impact'] != 'high') {
326
- $analyzes['headings']['impact'] = 'medium';
327
- }
328
  }
329
  $analyzes['headings']['desc'] = $desc;
330
 
331
  //Meta Title
332
  if ($seopress_titles_title !='') {
333
- $desc = NULL;
334
- if (!empty($seopress_analysis_data['meta_title']['matches'])) {
335
- $desc .= '<p><span class="dashicons dashicons-yes"></span>'.__('Target keywords were found in the Meta Title.','wp-seopress').'</p>';
336
- $desc .= '<ul>';
337
- $target_kws_title = $seopress_analysis_data['meta_title']['matches'];
338
- foreach ($target_kws_title as $key => $value) {
339
- foreach ($value as $_key => $_value) {
340
- $kw_count = count($_value);
341
- }
342
- $kw_name = $key;
343
- $desc .= '<li><span class="dashicons dashicons-minus"></span>'.sprintf(esc_html__('%s was found %d times.','wp-seopress'), $kw_name, $kw_count).'</li>';
344
- }
345
- $desc .= '</ul>';
346
- $analyzes['meta_title']['impact'] = 'good';
347
- } else {
348
- $analyzes['meta_title']['impact'] = 'medium';
349
- $desc .= '<p><span class="dashicons dashicons-no-alt"></span>'.__('None of your target keywords were found in the Meta Title.','wp-seopress').'</p>';
350
- }
351
-
352
- if (mb_strlen($seopress_titles_title) > 65 ) {
353
- $analyzes['meta_title']['impact'] = 'medium';
354
- $desc .= '<p><span class="dashicons dashicons-no-alt"></span>'.__('Your custom title is too long.','wp-seopress').'</p>';
355
- } else {
356
- $analyzes['meta_title']['impact'] = 'good';
357
- $desc .= '<p><span class="dashicons dashicons-yes"></span>'.__('The length of your title is correct','wp-seopress').'</p>';
358
- }
359
- $analyzes['meta_title']['desc'] = $desc;
360
  } else {
361
- $analyzes['meta_title']['impact'] = 'medium';
362
- $analyzes['meta_title']['desc'] = '<p><span class="dashicons dashicons-no-alt"></span>'.__('No custom title is set for this post. If the global meta title suits you, you can ignore this recommendation.','wp-seopress').'</p>';
363
  }
364
 
365
  //Meta description
366
  if ($seopress_titles_desc !='') {
367
- $desc = NULL;
368
- if (!empty($seopress_analysis_data['meta_description']['matches'])) {
369
- $desc .= '<p><span class="dashicons dashicons-yes"></span>'.__('Target keywords were found in the Meta description.','wp-seopress').'</p>';
370
- $desc .= '<ul>';
371
- $target_kws_desc = $seopress_analysis_data['meta_description']['matches'];
372
- foreach ($target_kws_desc as $key => $value) {
373
- foreach ($value as $_key => $_value) {
374
- $kw_count = count($_value);
375
- }
376
- $kw_name = $key;
377
- $desc .= '<li><span class="dashicons dashicons-minus"></span>'.sprintf(esc_html__('%s was found %d times.','wp-seopress'), $kw_name, $kw_count).'</li>';
378
- }
379
- $desc .= '</ul>';
380
- $analyzes['meta_desc']['impact'] = 'good';
381
- } else {
382
- $analyzes['meta_desc']['impact'] = 'medium';
383
- $desc .= '<p><span class="dashicons dashicons-no-alt"></span>'.__('None of your target keywords were found in the Meta description.','wp-seopress').'</p>';
384
- }
385
-
386
- if (mb_strlen($seopress_titles_desc) > 160 ) {
387
- $analyzes['meta_desc']['impact'] = 'medium';
388
- $desc .= '<p><span class="dashicons dashicons-no-alt"></span>'.__('You custom meta description is too long.','wp-seopress').'</p>';
389
- } else {
390
- $analyzes['meta_desc']['impact'] = 'good';
391
- $desc .= '<p><span class="dashicons dashicons-yes"></span>'.__('The length of your meta description is correct','wp-seopress').'</p>';
392
- }
393
- $analyzes['meta_desc']['desc'] = $desc;
394
  } else {
395
- $analyzes['meta_desc']['impact'] = 'medium';
396
- $analyzes['meta_desc']['desc'] = '<p><span class="dashicons dashicons-no-alt"></span>'.__('No custom meta description is set for this post. If the global meta description suits you, you can ignore this recommendation.','wp-seopress').'</p>';
397
  }
398
 
399
  //Social tags
@@ -403,28 +409,28 @@ $desc = NULL;
403
  $desc .= '<h4>'.__('Open Graph Title','wp-seopress').'</h4>';
404
 
405
  if (!empty($seopress_analysis_data['og_title']['count'])) {
406
- $count = $seopress_analysis_data['og_title']['count'];
407
-
408
- $all_og_title = $seopress_analysis_data['og_title']['values'];
409
-
410
- if ($count > 1) {
411
- $analyzes['social']['impact'] = 'high';
412
- $desc .= '<p><span class="dashicons dashicons-no-alt"></span>'.sprintf(esc_html__('We found %d og:title in your content.','wp-seopress'), $count).'</p>';
413
- $desc .= '<p>'.__('You should not use more than one og:title in your post content to avoid conflicts when sharing on social networks. Facebook will take the last og:title tag from your source code. Below, the list:','wp-seopress').'</p>';
414
- } else {
415
- $desc .= '<p><span class="dashicons dashicons-yes"></span>'.__('We found an Open Graph Title tag in your source code.','wp-seopress').'</p>';
416
- }
417
-
418
- if (!empty($all_og_title)) {
419
- $desc .= '<ul>';
420
- foreach($all_og_title as $og_title) {
421
- $desc .= '<li><span class="dashicons dashicons-minus"></span>'.$og_title.'</li>';
422
- }
423
- $desc .= '</ul>';
424
- }
425
  } else {
426
- $analyzes['social']['impact'] = 'high';
427
- $desc .= '<p><span class="dashicons dashicons-no-alt"></span>'.__('Your Open Graph Title is missing!','wp-seopress').'</p>';
428
  }
429
 
430
  //og:description
@@ -432,28 +438,28 @@ $desc .= '<h4>'.__('Open Graph Description','wp-seopress').'</h4>';
432
 
433
  if (!empty($seopress_analysis_data['og_desc']['count'])) {
434
 
435
- $count = $seopress_analysis_data['og_desc']['count'];
436
-
437
- $all_og_desc = $seopress_analysis_data['og_desc']['values'];
438
-
439
- if ($count > 1) {
440
- $analyzes['social']['impact'] = 'high';
441
- $desc .= '<p><span class="dashicons dashicons-no-alt"></span>'.sprintf(esc_html__('We found %d og:description in your content.','wp-seopress'), $count).'</p>';
442
- $desc .= '<p>'.__('You should not use more than one og:description in your post content to avoid conflicts when sharing on social networks. Facebook will take the last og:description tag from your source code. Below, the list:','wp-seopress').'</p>';
443
- } else {
444
- $desc .= '<p><span class="dashicons dashicons-yes"></span>'.__('We found an Open Graph Description tag in your source code.','wp-seopress').'</p>';
445
- }
446
-
447
- if (!empty($all_og_desc)) {
448
- $desc .= '<ul>';
449
- foreach($all_og_desc as $og_desc) {
450
- $desc .= '<li><span class="dashicons dashicons-minus"></span>'.$og_desc.'</li>';
451
- }
452
- $desc .= '</ul>';
453
- }
454
  } else {
455
- $analyzes['social']['impact'] = 'high';
456
- $desc .= '<p><span class="dashicons dashicons-no-alt"></span>'.__('Your Open Graph Description is missing!','wp-seopress').'</p>';
457
  }
458
 
459
  //og:image
@@ -461,24 +467,24 @@ $desc .= '<h4>'.__('Open Graph Image','wp-seopress').'</h4>';
461
 
462
  if (!empty($seopress_analysis_data['og_img']['count'])) {
463
 
464
- $count = $seopress_analysis_data['og_img']['count'];
465
 
466
- $all_og_img = $seopress_analysis_data['og_img']['values'];
467
 
468
- if ($count > 0) {
469
- $desc .= '<p><span class="dashicons dashicons-yes"></span>'.sprintf(esc_html__('We found %d og:image in your content.','wp-seopress'), $count).'</p>';
470
- }
471
 
472
- if (!empty($all_og_img)) {
473
- $desc .= '<ul>';
474
- foreach($all_og_img as $og_img) {
475
- $desc .= '<li><span class="dashicons dashicons-minus"></span>'.$og_img.'</li>';
476
- }
477
- $desc .= '</ul>';
478
- }
479
  } else {
480
- $analyzes['social']['impact'] = 'high';
481
- $desc .= '<p><span class="dashicons dashicons-no-alt"></span>'.__('Your Open Graph Image is missing!','wp-seopress').'</p>';
482
  }
483
 
484
  //og:url
@@ -486,28 +492,28 @@ $desc .= '<h4>'.__('Open Graph URL','wp-seopress').'</h4>';
486
 
487
  if (!empty($seopress_analysis_data['og_url']['count'])) {
488
 
489
- $count = $seopress_analysis_data['og_url']['count'];
490
-
491
- $all_og_url = $seopress_analysis_data['og_url']['values'];
492
-
493
- if ($count > 1) {
494
- $analyzes['social']['impact'] = 'high';
495
- $desc .= '<p><span class="dashicons dashicons-no-alt"></span>'.sprintf(esc_html__('We found %d og:url in your content.','wp-seopress'), $count).'</p>';
496
- $desc .= '<p>'.__('You should not use more than one og:url in your post content to avoid conflicts when sharing on social networks. Facebook will take the last og:url tag from your source code. Below, the list:','wp-seopress').'</p>';
497
- } else {
498
- $desc .= '<p><span class="dashicons dashicons-yes"></span>'.__('We found an Open Graph URL tag in your source code.','wp-seopress').'</p>';
499
- }
500
-
501
- if (!empty($all_og_url)) {
502
- $desc .= '<ul>';
503
- foreach($all_og_url as $og_url) {
504
- $desc .= '<li><span class="dashicons dashicons-minus"></span>'.$og_url.'</li>';
505
- }
506
- $desc .= '</ul>';
507
- }
508
  } else {
509
- $analyzes['social']['impact'] = 'high';
510
- $desc .= '<p><span class="dashicons dashicons-no-alt"></span>'.__('Your Open Graph URL is missing!','wp-seopress').'</p>';
511
  }
512
 
513
  //og:site_name
@@ -515,28 +521,28 @@ $desc .= '<h4>'.__('Open Graph Site Name','wp-seopress').'</h4>';
515
 
516
  if (!empty($seopress_analysis_data['og_site_name']['count'])) {
517
 
518
- $count = $seopress_analysis_data['og_site_name']['count'];
519
-
520
- $all_og_site_name = $seopress_analysis_data['og_site_name']['values'];
521
-
522
- if ($count > 1) {
523
- $analyzes['social']['impact'] = 'high';
524
- $desc .= '<p><span class="dashicons dashicons-no-alt"></span>'.sprintf(esc_html__('We found %d og:site_name in your content.','wp-seopress'), $count).'</p>';
525
- $desc .= '<p>'.__('You should not use more than one og:site_name in your post content to avoid conflicts when sharing on social networks. Facebook will take the last og:site_name tag from your source code. Below, the list:','wp-seopress').'</p>';
526
- } else {
527
- $desc .= '<p><span class="dashicons dashicons-yes"></span>'.__('We found an Open Graph Site Name tag in your source code.','wp-seopress').'</p>';
528
- }
529
-
530
- if (!empty($all_og_site_name)) {
531
- $desc .= '<ul>';
532
- foreach($all_og_site_name as $og_site_name) {
533
- $desc .= '<li><span class="dashicons dashicons-minus"></span>'.$og_site_name.'</li>';
534
- }
535
- $desc .= '</ul>';
536
- }
537
  } else {
538
- $analyzes['social']['impact'] = 'high';
539
- $desc .= '<p><span class="dashicons dashicons-no-alt"></span>'.__('Your Open Graph Site Name is missing!','wp-seopress').'</p>';
540
  }
541
 
542
  //twitter:title
@@ -544,28 +550,28 @@ $desc .= '<h4>'.__('Twitter Title','wp-seopress').'</h4>';
544
 
545
  if (!empty($seopress_analysis_data['tw_title']['count'])) {
546
 
547
- $count = $seopress_analysis_data['tw_title']['count'];
548
-
549
- $all_tw_title = $seopress_analysis_data['tw_title']['values'];
550
-
551
- if ($count > 1) {
552
- $analyzes['social']['impact'] = 'high';
553
- $desc .= '<p><span class="dashicons dashicons-no-alt"></span>'.sprintf(esc_html__('We found %d twitter:title in your content.','wp-seopress'), $count).'</p>';
554
- $desc .= '<p>'.__('You should not use more than one twitter:title in your post content to avoid conflicts when sharing on social networks. Twitter will take the last twitter:title tag from your source code. Below, the list:','wp-seopress').'</p>';
555
- } else {
556
- $desc .= '<p><span class="dashicons dashicons-yes"></span>'.__('We found a Twitter Title Tag in your source code.','wp-seopress').'</p>';
557
- }
558
-
559
- if (!empty($all_tw_title)) {
560
- $desc .= '<ul>';
561
- foreach($all_tw_title as $tw_title) {
562
- $desc .= '<li><span class="dashicons dashicons-minus"></span>'.$tw_title.'</li>';
563
- }
564
- $desc .= '</ul>';
565
- }
566
  } else {
567
- $analyzes['social']['impact'] = 'high';
568
- $desc .= '<p><span class="dashicons dashicons-no-alt"></span>'.__('Your Twitter Title is missing!','wp-seopress').'</p>';
569
  }
570
 
571
  //twitter:description
@@ -573,28 +579,28 @@ $desc .= '<h4>'.__('Twitter Description','wp-seopress').'</h4>';
573
 
574
  if (!empty($seopress_analysis_data['tw_desc']['count'])) {
575
 
576
- $count = $seopress_analysis_data['tw_desc']['count'];
577
-
578
- $all_tw_desc = $seopress_analysis_data['tw_desc']['values'];
579
-
580
- if ($count > 1) {
581
- $analyzes['social']['impact'] = 'high';
582
- $desc .= '<p><span class="dashicons dashicons-no-alt"></span>'.sprintf(esc_html__('We found %d twitter:description in your content.','wp-seopress'), $count).'</p>';
583
- $desc .= '<p>'.__('You should not use more than one twitter:description in your post content to avoid conflicts when sharing on social networks. Twitter will take the last twitter:description tag from your source code. Below, the list:','wp-seopress').'</p>';
584
- } else {
585
- $desc .= '<p><span class="dashicons dashicons-yes"></span>'.__('We found a Twitter Description tag in your source code.','wp-seopress').'</p>';
586
- }
587
-
588
- if (!empty($all_tw_desc)) {
589
- $desc .= '<ul>';
590
- foreach($all_tw_desc as $tw_desc) {
591
- $desc .= '<li><span class="dashicons dashicons-minus"></span>'.$tw_desc.'</li>';
592
- }
593
- $desc .= '</ul>';
594
- }
595
  } else {
596
- $analyzes['social']['impact'] = 'high';
597
- $desc .= '<p><span class="dashicons dashicons-no-alt"></span>'.__('Your Twitter Description is missing!','wp-seopress').'</p>';
598
  }
599
 
600
  //twitter:image
@@ -602,24 +608,24 @@ $desc .= '<h4>'.__('Twitter Image','wp-seopress').'</h4>';
602
 
603
  if (!empty($seopress_analysis_data['tw_img']['count'])) {
604
 
605
- $count = $seopress_analysis_data['tw_img']['count'];
606
 
607
- $all_tw_img = $seopress_analysis_data['tw_img']['values'];
608
 
609
- if ($count > 0) {
610
- $desc .= '<p><span class="dashicons dashicons-yes"></span>'.sprintf(esc_html__('We found %d twitter:image in your content.','wp-seopress'), $count).'</p>';
611
- }
612
 
613
- if (!empty($all_tw_img)) {
614
- $desc .= '<ul>';
615
- foreach($all_tw_img as $tw_img) {
616
- $desc .= '<li><span class="dashicons dashicons-minus"></span>'.$tw_img.'</li>';
617
- }
618
- $desc .= '</ul>';
619
- }
620
  } else {
621
- $analyzes['social']['impact'] = 'high';
622
- $desc .= '<p><span class="dashicons dashicons-no-alt"></span>'.__('Your Twitter Image is missing!','wp-seopress').'</p>';
623
  }
624
  $analyzes['social']['desc'] = $desc;
625
 
@@ -627,208 +633,208 @@ $analyzes['social']['desc'] = $desc;
627
  $desc = NULL;
628
  if (!empty($seopress_analysis_data['meta_robots'])) {
629
 
630
- $meta_robots = $seopress_analysis_data['meta_robots'];
631
-
632
- if (count($seopress_analysis_data['meta_robots']) > 1) {
633
- $analyzes['robots']['impact'] = 'high';
634
-
635
- $count_meta_robots = count($seopress_analysis_data['meta_robots']);
636
-
637
- $desc .= '<p><span class="dashicons dashicons-no-alt"></span>'.sprintf(esc_html__('We found %s meta robots in your page. There is probably something wrong with your theme!','wp-seopress'), $count_meta_robots).'</p>';
638
- }
639
-
640
- if (preg_match('/noindex/', json_encode($meta_robots))) {
641
- $analyzes['robots']['impact'] = 'high';
642
- $desc .= '<p><span class="dashicons dashicons-no-alt"></span>'.__('noindex is on! Search engines can\'t index this page.','wp-seopress').'</p>';
643
- } else {
644
- $desc .= '<p><span class="dashicons dashicons-yes"></span>'.__('noindex is off. Search engines will index this page.','wp-seopress').'</p>';
645
- }
646
-
647
- if (preg_match('/nofollow/', json_encode($meta_robots))) {
648
- $analyzes['robots']['impact'] = 'high';
649
- $desc .= '<p><span class="dashicons dashicons-no-alt"></span>'.__('nofollow is on! Search engines can\'t follow your links on this page.','wp-seopress').'</p>';
650
- } else {
651
- $desc .= '<p><span class="dashicons dashicons-yes"></span>'.__('nofollow is off. Search engines will follow links on this page.','wp-seopress').'</p>';
652
- }
653
-
654
- if (preg_match('/noarchive/', json_encode($meta_robots))) {
655
- if ($analyzes['robots']['impact'] != 'high') {
656
- $analyzes['robots']['impact'] = 'medium';
657
- }
658
- $desc .= '<p><span class="dashicons dashicons-no-alt"></span>'.__('noarchive is on! Search engines will not cache your page.','wp-seopress').'</p>';
659
- } else {
660
- $desc .= '<p><span class="dashicons dashicons-yes"></span>'.__('noarchive is off. Search engines will probably cache your page.','wp-seopress').'</p>';
661
- }
662
-
663
- if (preg_match('/nosnippet/', json_encode($meta_robots))) {
664
- if ($analyzes['robots']['impact'] != 'high') {
665
- $analyzes['robots']['impact'] = 'medium';
666
- }
667
- $desc .= '<p><span class="dashicons dashicons-no-alt"></span>'.__('nosnippet is on! Search engines will not display a snippet of this page in search results.','wp-seopress').'</p>';
668
- } else {
669
- $desc .= '<p><span class="dashicons dashicons-yes"></span>'.__('nosnippet is off. Search engines will display a snippet of this page in search results.','wp-seopress').'</p>';
670
- }
671
  } else {
672
- $desc .= '<p><span class="dashicons dashicons-yes"></span>'.__('We found no meta robots on this page. It means, your page is index,follow. Search engines will index it, and follow links. ','wp-seopress').'</p>';
673
  }
674
 
675
  //Meta Google
676
  if (!empty($seopress_analysis_data['meta_google'])) {
677
- $meta_google = $seopress_analysis_data['meta_google'];
678
-
679
- if (preg_match('/noimageindex/', json_encode($meta_google))) {
680
- $analyzes['robots']['impact'] = 'high';
681
- $desc .= '<p><span class="dashicons dashicons-no-alt"></span>'.__('noimageindex is on! Google will not index your images on this page (but if someone makes a direct link to one of your image in this page, it will be indexed).','wp-seopress').'</p>';
682
- } else {
683
- $desc .= '<p><span class="dashicons dashicons-yes"></span>'.__('noimageindex is off. Google will index the images on this page.','wp-seopress').'</p>';
684
- }
685
-
686
- if (preg_match('/nositelinkssearchbox/', json_encode($meta_google))) {
687
- if ($analyzes['robots']['impact'] != 'high') {
688
- $analyzes['robots']['impact'] = 'medium';
689
- }
690
- $desc .= '<p><span class="dashicons dashicons-no-alt"></span>'.__('nositelinkssearchbox is on! Google will not display a sitelinks searchbox in search results.','wp-seopress').'</p>';
691
- } else {
692
- $desc .= '<p><span class="dashicons dashicons-yes"></span>'.__('nositelinkssearchbox is off. Google will probably display a sitelinks searchbox in search results.','wp-seopress').'</p>';
693
- }
694
  } else {
695
- $desc .= '<p><span class="dashicons dashicons-yes"></span>'.__('noimageindex is off. Google will index the images on this page.','wp-seopress').'</p>';
696
-
697
- $desc .= '<p><span class="dashicons dashicons-yes"></span>'.__('nositelinkssearchbox is off. Google will probably display a sitelinks searchbox in search results.','wp-seopress').'</p>';
698
  }
699
 
700
  $analyzes['robots']['desc'] = $desc;
701
 
702
  //Img alt
703
  if (!empty($seopress_analysis_data['img'])) {
704
- $images = isset($seopress_analysis_data['img']['images']) ? $seopress_analysis_data['img']['images'] : NULL;
705
-
706
- $desc = '<div class="wrap-analysis-img">';
707
-
708
- if (!empty($images)) {
709
- $analyzes['img_alt']['impact'] = 'high';
710
- $desc .= '<p><span class="dashicons dashicons-no-alt"></span>'.__('No alternative text found for these images. Alt tags are important for both SEO and accessibility. Edit your images using the media library or your favorite page builder and fill in alternative text fields.','wp-seopress').'</p>';
711
-
712
- //Standard images & galleries
713
- if (!empty($images)) {
714
- $desc .= '<ul class="attachments">';
715
- foreach($images as $img) {
716
- $desc .= '<li class="attachment"><img src="'.$img.'"/></li>';
717
- }
718
- $desc .= '</ul>';
719
- }
720
- } else {
721
- $desc .= '<p><span class="dashicons dashicons-yes"></span>'.__('All alternative tags are filled in. Good work!','wp-seopress').'</p>';
722
- }
723
- $desc .= '</div>';
724
-
725
- $analyzes['img_alt']['desc'] = $desc;
726
  } else {
727
- $analyzes['img_alt']['impact'] = 'medium';
728
- $analyzes['img_alt']['desc'] = '<p><span class="dashicons dashicons-no-alt"></span>'.__('We could not find any image in your content. Content with media is a plus for your SEO.','wp-seopress').'</p>';
729
  }
730
 
731
  //Nofollow links
732
  if (!empty($seopress_analysis_data['nofollow_links'])) {
733
- $count = count($seopress_analysis_data['nofollow_links']);
734
-
735
- $desc = '<p>'.sprintf( esc_html__( 'We found %d links with nofollow attribute in your page. Do not overuse nofollow attribute in links. Below, the list:', 'wp-seopress' ), $count ).'</p>';
736
- $desc .= '<ul>';
737
- foreach ($seopress_analysis_data['nofollow_links'] as $links) {
738
- foreach ($links as $href => $link) {
739
- $desc .= '<li><span class="dashicons dashicons-minus"></span><a href="'.$href.'" target="_blank">'.$link.'</a><span class="dashicons dashicons-external"></span></li>';
740
- }
741
- }
742
- $desc .= '</ul>';
743
- $analyzes['nofollow_links']['impact'] = 'low';
744
- $analyzes['nofollow_links']['desc'] = $desc;
745
  } else {
746
- $analyzes['nofollow_links']['desc'] = '<p><span class="dashicons dashicons-yes"></span>'.__('This page doesn\'t have any nofollow links.','wp-seopress').'</p>';
747
  }
748
 
749
  //Outbound links
750
  $desc = '<p>'.__('Internet is built on the principle of hyperlink. It is therefore perfectly normal to make links between different websites. However, avoid making links to low quality sites, SPAM... If you are not sure about the quality of a site, add the attribute "nofollow" to your link.').'</p>';
751
  if (!empty($seopress_analysis_data['outbound_links'])) {
752
- $count = count($seopress_analysis_data['outbound_links']);
753
-
754
- $desc .= '<p>'.sprintf( __('We found %s outbound links in your page. Below, the list:', 'wp-seopress'), $count ).'</p>';
755
- $desc .= '<ul>';
756
- foreach ($seopress_analysis_data['outbound_links'] as $links) {
757
- foreach ($links as $href => $link) {
758
- $desc .= '<li><span class="dashicons dashicons-minus"></span><a href="'.$href.'" target="_blank">'.$link.'</a><span class="dashicons dashicons-external"></span></li>';
759
- }
760
- }
761
- $desc .= '</ul>';
762
  } else {
763
- $analyzes['outbound_links']['impact'] = 'medium';
764
- $desc .= '<p><span class="dashicons dashicons-no-alt"></span>'.__('This page doesn\'t have any outbound links.','wp-seopress').'</p>';
765
  }
766
  $analyzes['outbound_links']['desc'] = $desc;
767
 
768
- echo '<div id="seopress-analysis-tabs">
769
- <div id="seopress-analysis-tabs-1">';
770
- echo '<div class="analysis-score">';
771
- $impact = array_unique(array_values(wp_list_pluck($analyzes, 'impact')));
772
- $svg = '<svg role="img" aria-hidden="true" focusable="false" width="100%" height="100%" viewBox="0 0 200 200" version="1.1" xmlns="http://www.w3.org/2000/svg">
773
- <circle r="90" cx="100" cy="100" fill="transparent" stroke-dasharray="565.48" stroke-dashoffset="0"></circle>
774
- <circle id="bar" r="90" cx="100" cy="100" fill="transparent" stroke-dasharray="565.48" stroke-dashoffset="0" style="stroke-dashoffset: 101.788px;"></circle>
775
- </svg>';
776
- $tooltip = '<span class="sp-tooltip">
777
- <span class="dashicons dashicons-editor-help"></span>
778
- <span class="sp-tooltiptext">'.__('<strong>Should be improved:</strong> red or orange dots <br> <strong>Good:</strong> yellow or green dots','wp-seopress').'</span>
779
- </span>';
780
-
781
- if (!empty($impact)) {
782
- if (in_array('medium', $impact) || in_array('high', $impact)) {
783
- echo '<p class="notgood">'.$svg.'<span>'.__('Should be improved','wp-seopress').$tooltip.'</span></p>';
784
- $score = false;
785
- } else {
786
- echo '<p class="good">'.$svg.'<span>'.__('Good','wp-seopress').$tooltip.'</span></p>';
787
- $score = true;
788
- }
789
- } else {
790
- $score = false;
791
- }
792
-
793
- if (!empty($seopress_analysis_data)) {
794
- $seopress_analysis_data['score'] = $score;
795
- update_post_meta(get_the_ID(), '_seopress_analysis_data', $seopress_analysis_data);
796
- }
797
- echo '<span><a href="#" id="expand-all">'.__('Expand','wp-seopress').'</a> / <a href="#" id="close-all">'.__('Close','wp-seopress').'</a></span>';
798
- echo '</div>';
799
-
800
- if(!empty($analyzes)) {
801
- $order = array('1'=>'high','2'=>'medium','3'=>'low','4'=>'good');
802
-
803
- usort($analyzes, function ($a, $b) use ($order) {
804
- $pos_a = array_search($a['impact'], $order);
805
- $pos_b = array_search($b['impact'], $order);
806
- return $pos_a - $pos_b;
807
- });
808
-
809
- foreach($analyzes as $key => $value) {
810
- echo '<div class="gr-analysis">';
811
- if (isset($value['title'])) {
812
- echo '<div class="gr-analysis-title">
813
- <h3>
814
- <button type="button" aria-expanded="true" class="btn-toggle">';
815
- if (isset($value['impact'])) {
816
- echo '<span class="impact '.$value['impact'].'" aria-hidden="true"></span>';
817
- }
818
- echo '<span class="sp-arrow" aria-hidden="true"></span>
819
- '.$value['title'].'
820