SEOPress - Version 3.6.2

Version Description

  • NEW Add custom manual / automatic schema with dynamic variables (PRO)
  • NEW Add custom tracking code after opening body tag like Google Tag Manager
  • NEW Add meta name "thumbnail" option in SEO > Titles and metas > Single post types to display post thumbnail in Google Custom Search (eg: https://wordpress.org/search/seopress)
  • NEW Add FAQ global schema (PRO)
  • NEW Add 'keywords' for Recipe schema (PRO)
  • NEW Add 'recipeCuisine' for Recipe schema (PRO)
  • NEW Add 'recipeIngredient' for Recipe schema (PRO)
  • NEW Add 'recipeInstructions' for Recipe schema (PRO)
  • NEW Add 'BlogPosting' for Article schema (PRO)
  • NEW 'seopress_schemas_auto_faq_html' hook to filter FAQ global schema
  • NEW 'seopress_sitemaps_single_img' hook to add custom fields to XML image sitemaps
  • NEW 'seopress_sitemaps_html_pages_depth_query' hook to filter depth for hierarchical contents in HTML sitemap
  • NEW 'seopress_custom_body_tracking' hook to filter custom body tracking
  • NEW 'seopress_titles_template_variables_array' && 'seopress_titles_template_replace_array' hook to filter dynamic variables for title tag / meta description
  • NEW Add keywords density to content analysis to help you avoid keyword stuffing
  • NEW Add outbound links to content analysis (in links tab)
  • INFO WP-Rocket now automatically detect our XML sitemaps (WP-Rocket 3.3.7 required)
  • INFO Add quick button separator for title fields
  • INFO You can now disable BOT / Broken links checker from the SEO dashboard (admin bar, menu page and post type)
  • INFO Improve content analysis by removing empty target keywords
  • INFO Remove Alexa Rank feature (the API is no longer provided for free by Amazon)
  • INFO Translate Google Analytics UA option field with WPML / Polylang
  • INFO Automatic schemas tab is now the default one in Structured Data Types metabox
  • INFO Checks if the redirects feature is active before importing redirects
  • FIX Some translation strings / localize strings
  • FIX wpml-config.xml file, WPML / Polylang users can now translate Archives title and meta description (eg: shop page)
  • FIX Recipe schema: cooking time / calories / yield / total time
  • FIX Custom tracking code in head
  • FIX Remove Website schema if nositelinkssearchbox option is ON
Download this release

Release Info

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

Code changes from version 3.6.1.1 to 3.6.2

assets/css/seopress.css CHANGED
@@ -89,11 +89,9 @@
89
  }
90
 
91
  #seopress_content_analysis #seopress_suggestions li {
92
- list-style: square;
93
  margin: 5px;
94
  display: inline-block;
95
- background: #F1F1F1;
96
- padding: 5px;
97
  }
98
 
99
  #seopress_launch_analysis {
@@ -1495,74 +1493,6 @@ body.seopress-styles {
1495
  color: #24b47e;
1496
  }
1497
 
1498
- #seopress-content .seopress-useful-tools .widget-alexa .wrap-alexa-rank {
1499
- margin: 0 0 10px;
1500
- width: 100%;
1501
- box-sizing: border-box;
1502
- display: block;
1503
- }
1504
-
1505
- #seopress-content .seopress-useful-tools .widget-alexa .wrap-alexa-rank .seopress_alexa_rank_reach {
1506
- font-size: 30px;
1507
- font-weight: 700;
1508
- display: inline-block;
1509
- width: 100%;
1510
- padding: 0 0 20px;
1511
- text-align: right;
1512
- }
1513
-
1514
- #seopress-content .seopress-useful-tools .widget-alexa .wrap-alexa-rank .seopress_alexa_rank_reach .highlight {
1515
- display: inline-block;
1516
- font-size: 16px;
1517
- background: inherit;
1518
- width: 100%;
1519
- margin-bottom: 10px;
1520
- }
1521
-
1522
- #seopress-content .seopress-useful-tools .widget-alexa .wrap-alexa-rank .seopress_alexa_rank_country,#seopress-content .seopress-useful-tools .widget-alexa .wrap-alexa-rank .seopress_alexa_rank_country_rank,#seopress-content .seopress-useful-tools .widget-alexa .wrap-alexa-rank .seopress_alexa_rank_delta {
1523
- font-size: 14px;
1524
- display: inline-block;
1525
- vertical-align: top;
1526
- text-align: left;
1527
- margin: 0 20px 0 0;
1528
- }
1529
-
1530
- #seopress-content .seopress-useful-tools .widget-alexa .wrap-alexa-rank .seopress_alexa_rank_delta {
1531
- width: 100%;
1532
- text-align: right;
1533
- font-size: 18px;
1534
- font-style: italic;
1535
- }
1536
-
1537
- #seopress-content .seopress-useful-tools .widget-alexa .wrap-alexa-rank .seopress_alexa_rank_country,#seopress-content .seopress-useful-tools .widget-alexa .wrap-alexa-rank .seopress_alexa_rank_country_rank {
1538
- text-align: left;
1539
- }
1540
-
1541
- #seopress-content .seopress-useful-tools .widget-alexa .wrap-alexa-rank .seopress_alexa_rank_country .highlight,#seopress-content .seopress-useful-tools .widget-alexa .wrap-alexa-rank .seopress_alexa_rank_country_rank .highlight {
1542
- background: 0 0;
1543
- font-weight: 700;
1544
- }
1545
-
1546
- #seopress-content .seopress-useful-tools .widget-alexa .wrap-alexa-rank .seopress_alexa_rank_country {
1547
- margin-right: 0;
1548
- }
1549
-
1550
- #seopress-content .seopress-useful-tools .widget-alexa .wrap-alexa-rank .seopress_alexa_rank_country_rank {
1551
- margin-left: 5px;
1552
- }
1553
-
1554
- #seopress-content .seopress-useful-tools .widget-alexa .wrap-alexa-rank .minus .dashicons,#seopress-content .seopress-useful-tools .widget-alexa .wrap-alexa-rank .plus .dashicons {
1555
- font-style: italic;
1556
- }
1557
-
1558
- #seopress-content .seopress-useful-tools .widget-alexa .wrap-alexa-rank .plus {
1559
- color: green;
1560
- }
1561
-
1562
- #seopress-content .seopress-useful-tools .widget-alexa .wrap-alexa-rank .minus {
1563
- color: red;
1564
- }
1565
-
1566
  #seopress-content .seopress-reverse label,#seopress-content .seopress-useful-tools .widget-whois ul li span {
1567
  font-weight: 700;
1568
  }
89
  }
90
 
91
  #seopress_content_analysis #seopress_suggestions li {
92
+ list-style: none;
93
  margin: 5px;
94
  display: inline-block;
 
 
95
  }
96
 
97
  #seopress_launch_analysis {
1493
  color: #24b47e;
1494
  }
1495
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1496
  #seopress-content .seopress-reverse label,#seopress-content .seopress-useful-tools .widget-whois ul li span {
1497
  font-weight: 700;
1498
  }
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}.icon-seopress-seopress:before{content:"\e800"}.sp-tooltip{position:relative;margin-left:5px;display:inline-block;cursor:help}.sp-tooltip .dashicons{color:#666}.sp-tooltip .sp-tooltiptext{visibility:hidden;position:absolute;z-index:999999999;color:#fff;font-size:.8em;background:#333;text-align:center;width:240px;right:0;border-radius:3px;padding:.618em 1em;box-shadow:0 1px 3px rgba(0,0,0,.2);top:25px}.sp-tooltip:hover .sp-tooltiptext{visibility:visible}#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:square;margin:5px;display:inline-block;background:#f1f1f1;padding:5px}#seopress_launch_analysis{float:left}#seopress_analysis_results_state{background:rgba(74,184,102,.75);color:#fff;padding:5px 25px 5px 20px;border-radius:100px;font-style:italic;position:relative;width:auto;display:inline-block;margin:0 0 0 20px;clear:both}#seopress_content_analysis h3{border-bottom:1px solid #ddd;padding-bottom:10px}#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;cursor:default}#seopress_cpt .notice{padding:10px 14px}#seopress-analysis-tabs .dashicons,#seopress_cpt .dashicons{vertical-align:middle}#seopress_cpt .inside{margin:0;padding:0}#seopress_content_analysis .ui-tabs .ui-tabs-nav,#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_content_analysis .ui-tabs .ui-tabs-nav{width:calc(100% + 24px);margin:0 0 0 -12px;position:-webkit-sticky;position:sticky;top:0}#seopress_content_analysis .ui-tabs .ui-tabs-nav{margin-top:15px}#seopress_content_analysis .ui-helper-clearfix:after,#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_content_analysis .ui-tabs .ui-tabs-panel,#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 .ui-tabs .ui-tabs-panel .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_content_analysis .ui-tabs .ui-tabs-nav li,#seopress_content_analysis .ui-tabs-anchor,#seopress_cpt .ui-tabs .ui-tabs-nav li,#seopress_cpt .ui-tabs-anchor{cursor:pointer!important}#seopress_content_analysis .ui-tabs .ui-tabs-nav li.ui-tabs-active,#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:90%;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 .google-snippet-preview{font-family:arial,sans-serif;word-break:break-all}#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 .snippet-permalink{color:#006621;font-size:14px;font-style:normal;font-weight:400;line-height:16px}#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:13px;font-weight:400;line-height:18.2px;display:inline}#seopress_cpt .google-snippet-preview .snippet-date{color:grey;display:inline}#seopress_cpt .wrap-seopress-counters,#seopress_pro_cpt .wrap-seopress-counters{text-align:right;background:#eee;padding:2px 5px;display:flex;box-shadow:0 1px 1px rgba(0,0,0,.2);font-size:12px;justify-content:flex-end}#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_w3c,.fixed .column-seopress_words{width:5%}.fixed .column-seopress_nofollow,.fixed .column-seopress_noindex{width:10%}#seopress_content_analysis .ui-tabs,#seopress_cpt .ui-tabs{position:relative;padding:0;border:none;font-family:inherit;font-size:inherit;display:inline-block;width:100%}#seopress_content_analysis .ui-tabs .ui-tabs-nav li,#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_content_analysis .ui-tabs .ui-tabs-nav li a,#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_content_analysis .ui-tabs .ui-tabs-nav li.ui-tabs-active,#seopress_cpt .ui-tabs .ui-tabs-nav li.ui-tabs-active{margin-bottom:2px;padding-bottom:1px}#seopress_content_analysis .ui-tabs .ui-tabs-nav li.ui-state-disabled a,#seopress_content_analysis .ui-tabs .ui-tabs-nav li.ui-tabs-active a,#seopress_content_analysis .ui-tabs .ui-tabs-nav li.ui-tabs-loading a,#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_content_analysis .ui-tabs .ui-tabs-nav li a,#seopress_content_analysis .ui-tabs-collapsible .ui-tabs-nav li.ui-tabs-active a,#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_content_analysis .ui-tabs .ui-tabs-nav li a .dashicons,#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 .ui-tabs .dashicons-no-alt,#seopress_content_analysis .ui-tabs .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 .ui-tabs .dashicons-no-alt,#seopress_pro_cpt .dashicons-no-alt{background:#e25950}body.seopress-styles{background:#f8fafd}#seopress-content a{color:#3297d3}#seopress-content a:hover{color:#106598}#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;position:-webkit-sticky;position:sticky;top:32px;background:#fff;z-index:100;padding:10px 0}.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:50%;padding:10px;box-shadow:0 4px 6px rgba(50,50,93,.1),0 1px 3px rgba(0,0,0,.1);margin-left:20px}.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:0;position:relative}.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-seo-framework-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:RGB(106,124,148);position:relative;height:auto;z-index:10}.seopress-styles .seopress-option #seopress-aio-migrate:hover,.seopress-styles .seopress-option #seopress-seo-framework-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;background:#f8fafd}.seopress-styles pre{color:#42b72a;background:#f5f6f7;font-family:Menlo,Monaco,Andale Mono,Courier New,monospace;padding:7px;display:inline-block}.seopress-styles #seopress-navbar{padding:10px .5rem;height:56px;margin:0 auto;width:53rem;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,rgba(58,74,251,1) 0,rgba(71,190,165,1) 100%);background:-webkit-linear-gradient(45deg,rgba(58,74,251,1) 0,rgba(71,190,165,1) 100%);background:linear-gradient(45deg,rgba(58,74,251,1) 0,rgba(71,190,165,1) 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:53rem;top:0;visibility:hidden;cursor:auto}#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:#444;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%;height:100%;max-width:53rem;margin:20px auto 0}#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}#seopress-admin-tabs .seopress-tab.active{visibility:visible;overflow:inherit;opacity:1;transform:translateX(0);display:inherit;position:relative}#seopress-tabs .seopress-tab{padding:1.5rem;display:none}#seopress-tabs .seopress-tab.active{display:inline-block}.seopress-option input[type=password],.seopress-option input[type=text],.seopress-option textarea{min-width:485px}#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:0}.seopress-option .dashicons,.seopress-page-list .dashicons{vertical-align:middle;margin-right:5px}#seopress-admin-tabs .ui-tabs-nav,#seopress-notifications-center,.seopress-page-list .seopress-feature,.seopress-useful-tools{background:linear-gradient(172deg,#f5f7fa,#f5f7fa 200px,#fff 0,#fff);margin:0 auto 20px;box-shadow:0 15px 35px rgba(50,50,93,.1),0 5px 15px rgba(0,0,0,.2);max-width:50rem;padding:1.5rem;width:100%;border-radius:4px}#seopress-notifications-center,.seopress-useful-tools{background:linear-gradient(172deg,#f5f7fa,#f5f7fa 400px,#fff 0,#fff)}.seopress-page-list .seopress-feature{padding:0 1.5rem;position:relative;overflow:hidden;transition-duration:.15s}.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:100px;width:100px;background:#c4f0ff;position:absolute;border-radius:50%;box-shadow:0 4px 6px rgba(50,50,93,.1),0 1px 3px rgba(0,0,0,.1);top:calc(50% - 50px);left:20px}.seopress-page-list .seopress-feature .img-tool .dashicons{color:#217ab7;font-size:60px;text-align:left;vertical-align:middle;width:100%;height:100%;position:absolute;top:calc(50% - 30px);left:calc(50% - 30px);margin:0}.seopress-page-list .seopress-feature .inner{margin:0;display:block;padding:2rem 0 2rem 120px}.seopress-page-list .seopress-feature h3{margin: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-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);margin-right:15px;background:#6a7c94;position:relative;height:auto}#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 .seopress-feature a.view-redirects,#seopress-notifications-center .seopress-alert .button-primary,.seopress-option .button{background:#fff;border:none;color:#6b7c93;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-bottom:10px;border-radius:4px;box-shadow:0 7px 14px rgba(50,50,93,.1),0 3px 6px rgba(0,0,0,.1);vertical-align:baseline}.seopress-option .button .dashicons{font-size:16px}#seopress-content .seopress-page-list .seopress-feature a.view-redirects{padding-left:35px}#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-option .button:hover,.seopress-option .seopress-feature a:hover,.seopress-useful-tools .widget .button-primary:hover{text-decoration:none;color:#fff;background:#232323}#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{float:right;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:0;display:inline-block;margin:0 10px 10px 5px;border-bottom:1px solid #e6ebf1;width:calc(100% - 30px);position:relative;transition:all 150ms ease}#seopress-notifications-center .seopress-alert:hover{cursor:default}#seopress-notifications-center .seopress-alert p{display:inline-block}#seopress-notifications-center .seopress-alert .impact{padding:4px 5px;color:#fff;text-transform:uppercase;font-weight:700;font-size:10px;border-radius:4px}#seopress-notifications-center .seopress-alert .impact.low{background:#ffde24;color:#6b6543}#seopress-notifications-center .seopress-alert .impact.medium{background:#e39f48}#seopress-notifications-center .seopress-alert .impact.high{background:#e25950}#seopress-notifications-center .seopress-alert .impact.high.info{background:#0085ba}#seopress-notifications-center .seopress-alert .dashicons{color:#ffc82c}#seopress-notifications-center .dashicons.remove-notice{position:absolute;right:-55px;color:#6b7c93;font-size:30px;height:30px;width:30px;top:2px;padding:5px;transition:all .3s linear}#seopress-notifications-center .dashicons.remove-notice:hover{background:#e25950;color:#fff;cursor:pointer;border-radius:4px}#seopress-content .seopress-page-list .seopress-feature .seopress-doc,.seopress-option #seopress-tabs .seopress-doc{background:0 0;padding:0;width:inherit;height:inherit;text-decoration:none;color:inherit;box-shadow:none;position:absolute;right:0}#seopress-content .seopress-page-list .seopress-feature .seopress-doc:hover,.seopress-option #seopress-tabs .seopress-doc:hover{color:#747474;background:0 0}.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:12px;display:inline-block;background:rgba(0,140,135,.1);padding:5px 12px;border-radius:25px;color:#444;font-weight:400;text-transform:none;-moz-osx-font-smoothing:initial;-webkit-font-smoothing:initial}#seopress_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}#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:rgba(19,191,17,1);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-option .wrap-tags{position:relative;display:inline-block;width:100%;margin-bottom:10px}#seopress_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-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-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:21px;padding:7px 14px 9px;-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-useful-tools .widget-alexa .wrap-alexa-rank{margin:0 0 10px;width:100%;box-sizing:border-box;display:block}#seopress-content .seopress-useful-tools .widget-alexa .wrap-alexa-rank .seopress_alexa_rank_reach{font-size:30px;font-weight:700;display:inline-block;width:100%;padding:0 0 20px;text-align:right}#seopress-content .seopress-useful-tools .widget-alexa .wrap-alexa-rank .seopress_alexa_rank_reach .highlight{display:inline-block;font-size:16px;background:inherit;width:100%;margin-bottom:10px}#seopress-content .seopress-useful-tools .widget-alexa .wrap-alexa-rank .seopress_alexa_rank_country,#seopress-content .seopress-useful-tools .widget-alexa .wrap-alexa-rank .seopress_alexa_rank_country_rank,#seopress-content .seopress-useful-tools .widget-alexa .wrap-alexa-rank .seopress_alexa_rank_delta{font-size:14px;display:inline-block;vertical-align:top;text-align:left;margin:0 20px 0 0}#seopress-content .seopress-useful-tools .widget-alexa .wrap-alexa-rank .seopress_alexa_rank_delta{width:100%;text-align:right;font-size:18px;font-style:italic}#seopress-content .seopress-useful-tools .widget-alexa .wrap-alexa-rank .seopress_alexa_rank_country,#seopress-content .seopress-useful-tools .widget-alexa .wrap-alexa-rank .seopress_alexa_rank_country_rank{text-align:left}#seopress-content .seopress-useful-tools .widget-alexa .wrap-alexa-rank .seopress_alexa_rank_country .highlight,#seopress-content .seopress-useful-tools .widget-alexa .wrap-alexa-rank .seopress_alexa_rank_country_rank .highlight{background:0 0;font-weight:700}#seopress-content .seopress-useful-tools .widget-alexa .wrap-alexa-rank .seopress_alexa_rank_country{margin-right:0}#seopress-content .seopress-useful-tools .widget-alexa .wrap-alexa-rank .seopress_alexa_rank_country_rank{margin-left:5px}#seopress-content .seopress-useful-tools .widget-alexa .wrap-alexa-rank .minus .dashicons,#seopress-content .seopress-useful-tools .widget-alexa .wrap-alexa-rank .plus .dashicons{font-style:italic}#seopress-content .seopress-useful-tools .widget-alexa .wrap-alexa-rank .plus{color:green}#seopress-content .seopress-useful-tools .widget-alexa .wrap-alexa-rank .minus{color:red}#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-option input.toggle{max-height:0;max-width:0;opacity:0}#seopress-content 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:30px;width:50px;border-radius:15px}.wrap-toggle-checkboxes input.toggle+label{float:left;margin-right:10px}#seopress-content input.toggle+label:before,.seopress-option input.toggle+label:before{content:"";position:absolute;display:block;height:30px;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-option input.toggle+label:after{content:"";position:absolute;display:block;height:30px;width:30px;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-content input.toggle[data-toggle="1"]+label:before,.seopress-option input.toggle[data-toggle="1"]+label:before{width:50px;background:rgba(19,191,17,1)}#seopress-content 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 rgba(19,191,17,1),0 2px 4px rgba(0,0,0,.2)}#seopress-content .seopress-page-list{position:relative}#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_page_seopress-pro-page #wpcontent{background:#f4f7fa}.seopress-option .wrap div.nav-tab-wrapper{border-bottom:1px solid RGB(238,238,238);margin:0 0 0 -16px;padding:0 10px;line-height:inherit;background:#fff;position:-webkit-sticky;position:sticky;top:102px;width:calc(100% + 12px);z-index:95;font-weight:400}#seopress-admin-tabs.wrap div.nav-tab-wrapper{margin:20px auto 0;max-width:53rem;width:100%;border-bottom:0;padding:0;line-height:inherit;position:-webkit-sticky;position:sticky;background:#f8fafd;z-index:100;top:31px;font-weight:400}#seopress-admin-tabs #tab_seopress_notifications.seopress-tab{background:0 0;padding:0}#seopress-admin-tabs .nav-tab,.seopress-option .nav-tab{border:0 solid #ccc;background:0 0;opacity:.5;padding:8px 8px;transition:opacity .3s linear;color:#191e23;margin:0;float:none;display:inline-block}#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{background:0 0;opacity:1;outline:0;font-weight:600;position:relative}.seopress-option .nav-tab-active::after{border-bottom:2px solid #0085ba;content:'';position:absolute;width:100%;bottom:0;left:0;display:block}#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}#section-export-redirects,#section-import-redirects{margin-top:-120px;padding-top:120px}.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}#tab_seopress_social_accounts .help-social{position:relative;right:0;width:30%}#tab_seopress_social_accounts .form-table{float:left;width:70%}
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}.icon-seopress-seopress:before{content:"\e800"}.sp-tooltip{position:relative;margin-left:5px;display:inline-block;cursor:help}.sp-tooltip .dashicons{color:#666}.sp-tooltip .sp-tooltiptext{visibility:hidden;position:absolute;z-index:999999999;color:#fff;font-size:.8em;background:#333;text-align:center;width:240px;right:0;border-radius:3px;padding:.618em 1em;box-shadow:0 1px 3px rgba(0,0,0,.2);top:25px}.sp-tooltip:hover .sp-tooltiptext{visibility:visible}#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_launch_analysis{float:left}#seopress_analysis_results_state{background:rgba(74,184,102,.75);color:#fff;padding:5px 25px 5px 20px;border-radius:100px;font-style:italic;position:relative;width:auto;display:inline-block;margin:0 0 0 20px;clear:both}#seopress_content_analysis h3{border-bottom:1px solid #ddd;padding-bottom:10px}#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;cursor:default}#seopress_cpt .notice{padding:10px 14px}#seopress-analysis-tabs .dashicons,#seopress_cpt .dashicons{vertical-align:middle}#seopress_cpt .inside{margin:0;padding:0}#seopress_content_analysis .ui-tabs .ui-tabs-nav,#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_content_analysis .ui-tabs .ui-tabs-nav{width:calc(100% + 24px);margin:0 0 0 -12px;position:-webkit-sticky;position:sticky;top:0}#seopress_content_analysis .ui-tabs .ui-tabs-nav{margin-top:15px}#seopress_content_analysis .ui-helper-clearfix:after,#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_content_analysis .ui-tabs .ui-tabs-panel,#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 .ui-tabs .ui-tabs-panel .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_content_analysis .ui-tabs .ui-tabs-nav li,#seopress_content_analysis .ui-tabs-anchor,#seopress_cpt .ui-tabs .ui-tabs-nav li,#seopress_cpt .ui-tabs-anchor{cursor:pointer!important}#seopress_content_analysis .ui-tabs .ui-tabs-nav li.ui-tabs-active,#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:90%;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 .google-snippet-preview{font-family:arial,sans-serif;word-break:break-all}#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 .snippet-permalink{color:#006621;font-size:14px;font-style:normal;font-weight:400;line-height:16px}#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:13px;font-weight:400;line-height:18.2px;display:inline}#seopress_cpt .google-snippet-preview .snippet-date{color:grey;display:inline}#seopress_cpt .wrap-seopress-counters,#seopress_pro_cpt .wrap-seopress-counters{text-align:right;background:#eee;padding:2px 5px;display:flex;box-shadow:0 1px 1px rgba(0,0,0,.2);font-size:12px;justify-content:flex-end}#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_w3c,.fixed .column-seopress_words{width:5%}.fixed .column-seopress_nofollow,.fixed .column-seopress_noindex{width:10%}#seopress_content_analysis .ui-tabs,#seopress_cpt .ui-tabs{position:relative;padding:0;border:none;font-family:inherit;font-size:inherit;display:inline-block;width:100%}#seopress_content_analysis .ui-tabs .ui-tabs-nav li,#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_content_analysis .ui-tabs .ui-tabs-nav li a,#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_content_analysis .ui-tabs .ui-tabs-nav li.ui-tabs-active,#seopress_cpt .ui-tabs .ui-tabs-nav li.ui-tabs-active{margin-bottom:2px;padding-bottom:1px}#seopress_content_analysis .ui-tabs .ui-tabs-nav li.ui-state-disabled a,#seopress_content_analysis .ui-tabs .ui-tabs-nav li.ui-tabs-active a,#seopress_content_analysis .ui-tabs .ui-tabs-nav li.ui-tabs-loading a,#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_content_analysis .ui-tabs .ui-tabs-nav li a,#seopress_content_analysis .ui-tabs-collapsible .ui-tabs-nav li.ui-tabs-active a,#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_content_analysis .ui-tabs .ui-tabs-nav li a .dashicons,#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 .ui-tabs .dashicons-no-alt,#seopress_content_analysis .ui-tabs .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 .ui-tabs .dashicons-no-alt,#seopress_pro_cpt .dashicons-no-alt{background:#e25950}body.seopress-styles{background:#f8fafd}#seopress-content a{color:#3297d3}#seopress-content a:hover{color:#106598}#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;position:-webkit-sticky;position:sticky;top:32px;background:#fff;z-index:100;padding:10px 0}.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:50%;padding:10px;box-shadow:0 4px 6px rgba(50,50,93,.1),0 1px 3px rgba(0,0,0,.1);margin-left:20px}.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:0;position:relative}.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-seo-framework-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:RGB(106,124,148);position:relative;height:auto;z-index:10}.seopress-styles .seopress-option #seopress-aio-migrate:hover,.seopress-styles .seopress-option #seopress-seo-framework-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;background:#f8fafd}.seopress-styles pre{color:#42b72a;background:#f5f6f7;font-family:Menlo,Monaco,Andale Mono,Courier New,monospace;padding:7px;display:inline-block}.seopress-styles #seopress-navbar{padding:10px .5rem;height:56px;margin:0 auto;width:53rem;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,rgba(58,74,251,1) 0,rgba(71,190,165,1) 100%);background:-webkit-linear-gradient(45deg,rgba(58,74,251,1) 0,rgba(71,190,165,1) 100%);background:linear-gradient(45deg,rgba(58,74,251,1) 0,rgba(71,190,165,1) 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:53rem;top:0;visibility:hidden;cursor:auto}#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:#444;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%;height:100%;max-width:53rem;margin:20px auto 0}#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}#seopress-admin-tabs .seopress-tab.active{visibility:visible;overflow:inherit;opacity:1;transform:translateX(0);display:inherit;position:relative}#seopress-tabs .seopress-tab{padding:1.5rem;display:none}#seopress-tabs .seopress-tab.active{display:inline-block}.seopress-option input[type=password],.seopress-option input[type=text],.seopress-option textarea{min-width:485px}#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:0}.seopress-option .dashicons,.seopress-page-list .dashicons{vertical-align:middle;margin-right:5px}#seopress-admin-tabs .ui-tabs-nav,#seopress-notifications-center,.seopress-page-list .seopress-feature,.seopress-useful-tools{background:linear-gradient(172deg,#f5f7fa,#f5f7fa 200px,#fff 0,#fff);margin:0 auto 20px;box-shadow:0 15px 35px rgba(50,50,93,.1),0 5px 15px rgba(0,0,0,.2);max-width:50rem;padding:1.5rem;width:100%;border-radius:4px}#seopress-notifications-center,.seopress-useful-tools{background:linear-gradient(172deg,#f5f7fa,#f5f7fa 400px,#fff 0,#fff)}.seopress-page-list .seopress-feature{padding:0 1.5rem;position:relative;overflow:hidden;transition-duration:.15s}.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:100px;width:100px;background:#c4f0ff;position:absolute;border-radius:50%;box-shadow:0 4px 6px rgba(50,50,93,.1),0 1px 3px rgba(0,0,0,.1);top:calc(50% - 50px);left:20px}.seopress-page-list .seopress-feature .img-tool .dashicons{color:#217ab7;font-size:60px;text-align:left;vertical-align:middle;width:100%;height:100%;position:absolute;top:calc(50% - 30px);left:calc(50% - 30px);margin:0}.seopress-page-list .seopress-feature .inner{margin:0;display:block;padding:2rem 0 2rem 120px}.seopress-page-list .seopress-feature h3{margin: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-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);margin-right:15px;background:#6a7c94;position:relative;height:auto}#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 .seopress-feature a.view-redirects,#seopress-notifications-center .seopress-alert .button-primary,.seopress-option .button{background:#fff;border:none;color:#6b7c93;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-bottom:10px;border-radius:4px;box-shadow:0 7px 14px rgba(50,50,93,.1),0 3px 6px rgba(0,0,0,.1);vertical-align:baseline}.seopress-option .button .dashicons{font-size:16px}#seopress-content .seopress-page-list .seopress-feature a.view-redirects{padding-left:35px}#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-option .button:hover,.seopress-option .seopress-feature a:hover,.seopress-useful-tools .widget .button-primary:hover{text-decoration:none;color:#fff;background:#232323}#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{float:right;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:0;display:inline-block;margin:0 10px 10px 5px;border-bottom:1px solid #e6ebf1;width:calc(100% - 30px);position:relative;transition:all 150ms ease}#seopress-notifications-center .seopress-alert:hover{cursor:default}#seopress-notifications-center .seopress-alert p{display:inline-block}#seopress-notifications-center .seopress-alert .impact{padding:4px 5px;color:#fff;text-transform:uppercase;font-weight:700;font-size:10px;border-radius:4px}#seopress-notifications-center .seopress-alert .impact.low{background:#ffde24;color:#6b6543}#seopress-notifications-center .seopress-alert .impact.medium{background:#e39f48}#seopress-notifications-center .seopress-alert .impact.high{background:#e25950}#seopress-notifications-center .seopress-alert .impact.high.info{background:#0085ba}#seopress-notifications-center .seopress-alert .dashicons{color:#ffc82c}#seopress-notifications-center .dashicons.remove-notice{position:absolute;right:-55px;color:#6b7c93;font-size:30px;height:30px;width:30px;top:2px;padding:5px;transition:all .3s linear}#seopress-notifications-center .dashicons.remove-notice:hover{background:#e25950;color:#fff;cursor:pointer;border-radius:4px}#seopress-content .seopress-page-list .seopress-feature .seopress-doc,.seopress-option #seopress-tabs .seopress-doc{background:0 0;padding:0;width:inherit;height:inherit;text-decoration:none;color:inherit;box-shadow:none;position:absolute;right:0}#seopress-content .seopress-page-list .seopress-feature .seopress-doc:hover,.seopress-option #seopress-tabs .seopress-doc:hover{color:#747474;background:0 0}.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:12px;display:inline-block;background:rgba(0,140,135,.1);padding:5px 12px;border-radius:25px;color:#444;font-weight:400;text-transform:none;-moz-osx-font-smoothing:initial;-webkit-font-smoothing:initial}#seopress_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}#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:rgba(19,191,17,1);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-option .wrap-tags{position:relative;display:inline-block;width:100%;margin-bottom:10px}#seopress_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-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-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:21px;padding:7px 14px 9px;-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-option input.toggle{max-height:0;max-width:0;opacity:0}#seopress-content 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:30px;width:50px;border-radius:15px}.wrap-toggle-checkboxes input.toggle+label{float:left;margin-right:10px}#seopress-content input.toggle+label:before,.seopress-option input.toggle+label:before{content:"";position:absolute;display:block;height:30px;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-option input.toggle+label:after{content:"";position:absolute;display:block;height:30px;width:30px;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-content input.toggle[data-toggle="1"]+label:before,.seopress-option input.toggle[data-toggle="1"]+label:before{width:50px;background:rgba(19,191,17,1)}#seopress-content 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 rgba(19,191,17,1),0 2px 4px rgba(0,0,0,.2)}#seopress-content .seopress-page-list{position:relative}#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_page_seopress-pro-page #wpcontent{background:#f4f7fa}.seopress-option .wrap div.nav-tab-wrapper{border-bottom:1px solid RGB(238,238,238);margin:0 0 0 -16px;padding:0 10px;line-height:inherit;background:#fff;position:-webkit-sticky;position:sticky;top:102px;width:calc(100% + 12px);z-index:95;font-weight:400}#seopress-admin-tabs.wrap div.nav-tab-wrapper{margin:20px auto 0;max-width:53rem;width:100%;border-bottom:0;padding:0;line-height:inherit;position:-webkit-sticky;position:sticky;background:#f8fafd;z-index:100;top:31px;font-weight:400}#seopress-admin-tabs #tab_seopress_notifications.seopress-tab{background:0 0;padding:0}#seopress-admin-tabs .nav-tab,.seopress-option .nav-tab{border:0 solid #ccc;background:0 0;opacity:.5;padding:8px 8px;transition:opacity .3s linear;color:#191e23;margin:0;float:none;display:inline-block}#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{background:0 0;opacity:1;outline:0;font-weight:600;position:relative}.seopress-option .nav-tab-active::after{border-bottom:2px solid #0085ba;content:'';position:absolute;width:100%;bottom:0;left:0;display:block}#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}#section-export-redirects,#section-import-redirects{margin-top:-120px;padding-top:120px}.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}#tab_seopress_social_accounts .help-social{position:relative;right:0;width:30%}#tab_seopress_social_accounts .form-table{float:left;width:70%}
assets/js/seopress-cookies-ajax.js CHANGED
@@ -12,9 +12,12 @@ jQuery(document).ready(function($) {
12
  _ajax_nonce: seopressAjaxGAUserConsent.seopress_nonce,
13
  },
14
  success : function( data ) {
 
15
  $('.seopress-user-consent').remove();
16
  $('head').append(data.data.gtag_js);
17
  $('head').append(data.data.custom);
 
 
18
  Cookies.set('seopress-user-consent-accept', '1', { expires: 30 });
19
  },
20
  });
12
  _ajax_nonce: seopressAjaxGAUserConsent.seopress_nonce,
13
  },
14
  success : function( data ) {
15
+ console.log(data.data);
16
  $('.seopress-user-consent').remove();
17
  $('head').append(data.data.gtag_js);
18
  $('head').append(data.data.custom);
19
+ $('head').append(data.data.head_js);
20
+ $('body').prepend(data.data.body_js);
21
  Cookies.set('seopress-user-consent-accept', '1', { expires: 30 });
22
  },
23
  });
assets/js/seopress-dashboard.js CHANGED
@@ -26,7 +26,7 @@ jQuery(document).ready(function($) {
26
  });
27
  });
28
 
29
- const features = ["titles","xml-sitemap","social","google-analytics","advanced","local-business","woocommerce","edd","dublin-core","rich-snippets","breadcrumbs","robots","news","404","rewrite","white-label"]
30
  features.forEach(function (item) {
31
  $('#toggle-'+item).on('click', function() {
32
  $('#toggle-'+item).attr('data-toggle', $('#toggle-'+item).attr('data-toggle') == '1' ? '0' : '1');
26
  });
27
  });
28
 
29
+ const features = ["titles","xml-sitemap","social","google-analytics","advanced","local-business","woocommerce","edd","dublin-core","rich-snippets","breadcrumbs","robots","news","404","bot","rewrite","white-label"]
30
  features.forEach(function (item) {
31
  $('#toggle-'+item).on('click', function() {
32
  $('#toggle-'+item).attr('data-toggle', $('#toggle-'+item).attr('data-toggle') == '1' ? '0' : '1');
assets/js/seopress-tabs.js CHANGED
@@ -56,6 +56,21 @@ jQuery(document).ready(function($) {
56
  $('#seopress-tag-search-keywords').click(function() {
57
  $("#seopress_titles_archives_search_title").val($("#seopress_titles_archives_search_title").val() + ' ' + $('#seopress-tag-search-keywords').attr('data-tag'));
58
  });
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
59
  $('.more-tags').click(function() {
60
  $('#contextual-help-link').click();
61
  });
56
  $('#seopress-tag-search-keywords').click(function() {
57
  $("#seopress_titles_archives_search_title").val($("#seopress_titles_archives_search_title").val() + ' ' + $('#seopress-tag-search-keywords').attr('data-tag'));
58
  });
59
+ $('#seopress-tag-site-sep').click(function() {
60
+ $("#seopress_titles_home_site_title").val($("#seopress_titles_home_site_title").val() + ' ' + $('#seopress-tag-site-sep').attr('data-tag'));
61
+ });
62
+ $('#seopress-tag-sep-author').click(function() {
63
+ $("#seopress_titles_archive_post_author").val($("#seopress_titles_archive_post_author").val() + ' ' + $('#seopress-tag-sep-author').attr('data-tag'));
64
+ });
65
+ $('#seopress-tag-sep-date').click(function() {
66
+ $("#seopress_titles_archives_date_title").val($("#seopress_titles_archives_date_title").val() + ' ' + $('#seopress-tag-sep-date').attr('data-tag'));
67
+ });
68
+ $('#seopress-tag-sep-search').click(function() {
69
+ $("#seopress_titles_archives_search_title").val($("#seopress_titles_archives_search_title").val() + ' ' + $('#seopress-tag-sep-search').attr('data-tag'));
70
+ });
71
+ $('#seopress-tag-sep-404').click(function() {
72
+ $("#seopress_titles_archives_404_title").val($("#seopress_titles_archives_404_title").val() + ' ' + $('#seopress-tag-sep-404').attr('data-tag'));
73
+ });
74
  $('.more-tags').click(function() {
75
  $('#contextual-help-link').click();
76
  });
assets/js/seopress-tabs7.js CHANGED
@@ -46,25 +46,6 @@ jQuery(document).ready(function($) {
46
  $('#seopress-admin-tabs').find('.seopress-tab.active').removeClass("active");
47
  $('#'+hash).addClass("active");
48
  });
49
- //Request Alexa Rank
50
- $('#seopress-request-alexa-rank').on('click', function() {
51
- $.ajax({
52
- method : 'GET',
53
- url : seopressAjaxAlexa.seopress_request_alexa_rank,
54
- data : {
55
- action: 'seopress_request_alexa_rank',
56
- _ajax_nonce: seopressAjaxAlexa.seopress_nonce,
57
- },
58
- success : function( data ) {
59
- window.location.reload(true);
60
- },
61
- });
62
- });
63
- $('#seopress-request-alexa-rank').on('click', function() {
64
- $(this).attr("disabled", "disabled");
65
- $( '#spinner-alexa.spinner' ).css( "visibility", "visible" );
66
- $( '#spinner-alexa.spinner' ).css( "float", "none" );
67
- });
68
  //Request Reverse Domains
69
  $('#seopress-reverse-submit').on('click', function() {
70
  $.ajax({
46
  $('#seopress-admin-tabs').find('.seopress-tab.active').removeClass("active");
47
  $('#'+hash).addClass("active");
48
  });
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
49
  //Request Reverse Domains
50
  $('#seopress-reverse-submit').on('click', function() {
51
  $.ajax({
assets/js/seopress-yoast-migrate.js CHANGED
@@ -17,7 +17,7 @@ jQuery(document).ready(function($) {
17
  if( 'done' == data.data.offset ) {
18
  $('#seopress-yoast-migrate').removeAttr("disabled");
19
  $( '.spinner' ).css( "visibility", "hidden" );
20
- $( '#yoast-migration-tool .log' ).html('Migration completed!');
21
  } else {
22
  self.process_offset( parseInt( data.data.offset ), self );
23
  }
@@ -49,7 +49,7 @@ jQuery(document).ready(function($) {
49
  if( 'done' == data.data.offset2 ) {
50
  $('#seopress-aio-migrate').removeAttr("disabled");
51
  $( '.spinner' ).css( "visibility", "hidden" );
52
- $( '#aio-migration-tool .log' ).html('Migration completed!');
53
  } else {
54
  self.process_offset2( parseInt( data.data.offset2 ), self );
55
  }
@@ -82,7 +82,7 @@ jQuery(document).ready(function($) {
82
  if( 'done' == data.data.offset3 ) {
83
  $('#seopress-seo-framework-migrate').removeAttr("disabled");
84
  $( '.spinner' ).css( "visibility", "hidden" );
85
- $( '#seo-framework-migration-tool .log' ).html('Migration completed!');
86
  } else {
87
  self.process_offset3( parseInt( data.data.offset3 ), self );
88
  }
@@ -115,7 +115,7 @@ jQuery(document).ready(function($) {
115
  if( 'done' == data.data.offset4 ) {
116
  $('#seopress-rk-migrate').removeAttr("disabled");
117
  $( '.spinner' ).css( "visibility", "hidden" );
118
- $( '#rk-migration-tool .log' ).html('Migration completed!');
119
  } else {
120
  self.process_offset4( parseInt( data.data.offset4 ), self );
121
  }
17
  if( 'done' == data.data.offset ) {
18
  $('#seopress-yoast-migrate').removeAttr("disabled");
19
  $( '.spinner' ).css( "visibility", "hidden" );
20
+ $( '#yoast-migration-tool .log' ).html(seopressAjaxMigrate.i18n);
21
  } else {
22
  self.process_offset( parseInt( data.data.offset ), self );
23
  }
49
  if( 'done' == data.data.offset2 ) {
50
  $('#seopress-aio-migrate').removeAttr("disabled");
51
  $( '.spinner' ).css( "visibility", "hidden" );
52
+ $( '#aio-migration-tool .log' ).html(seopressAjaxMigrate.i18n);
53
  } else {
54
  self.process_offset2( parseInt( data.data.offset2 ), self );
55
  }
82
  if( 'done' == data.data.offset3 ) {
83
  $('#seopress-seo-framework-migrate').removeAttr("disabled");
84
  $( '.spinner' ).css( "visibility", "hidden" );
85
+ $( '#seo-framework-migration-tool .log' ).html(seopressAjaxMigrate.i18n);
86
  } else {
87
  self.process_offset3( parseInt( data.data.offset3 ), self );
88
  }
115
  if( 'done' == data.data.offset4 ) {
116
  $('#seopress-rk-migrate').removeAttr("disabled");
117
  $( '.spinner' ).css( "visibility", "hidden" );
118
+ $( '#rk-migration-tool .log' ).html(seopressAjaxMigrate.i18n);
119
  } else {
120
  self.process_offset4( parseInt( data.data.offset4 ), self );
121
  }
contributors.txt CHANGED
@@ -15,6 +15,7 @@ Beta testers / feedbacks:
15
  - Aurélien Denis: aurelien.denis@neticpro.fr / @wpchannel
16
  - Sébastien Serre: @sebastienserre
17
  - Ludovic Riaudel: @lriaudel
 
18
 
19
  Integrations:
20
  - The Admin Columns PRO team
15
  - Aurélien Denis: aurelien.denis@neticpro.fr / @wpchannel
16
  - Sébastien Serre: @sebastienserre
17
  - Ludovic Riaudel: @lriaudel
18
+ - Philippe Fronzes: @novaldi64
19
 
20
  Integrations:
21
  - The Admin Columns PRO team
inc/admin/admin-metaboxes-content-analysis-form.php CHANGED
@@ -53,8 +53,19 @@ if ( is_plugin_active( 'wp-seopress-pro/seopress-pro.php' ) ) {
53
 
54
  var i;
55
  for (i = 0; i < 10; i++) {
56
- document.getElementById('seopress_suggestions').innerHTML += '<li>'+suggestions_array[i]+'</li>';
57
  }
 
 
 
 
 
 
 
 
 
 
 
58
  }
59
  jQuery('#seopress_get_suggestions').on('click', function(data) {
60
  data.preventDefault();
@@ -85,6 +96,7 @@ if ( is_plugin_active( 'wp-seopress-pro/seopress-pro.php' ) ) {
85
  //Word counters
86
  if (isset($seopress_analysis_data['0']['words_counter']) || isset($seopress_analysis_data['0']['words_counter_unique'])) {
87
  echo '<h3>'.__('Words counter','wp-seopress').'</h3>
 
88
  <ul>
89
  <li>'.$seopress_analysis_data['0']['words_counter'].' '.__('words found.','wp-seopress').'</li>
90
  <li>'.$seopress_analysis_data['0']['words_counter_unique'].' '.__('unique words found.','wp-seopress').'</li>';
@@ -97,6 +109,28 @@ if ( is_plugin_active( 'wp-seopress-pro/seopress-pro.php' ) ) {
97
  echo '</ul>';
98
  }
99
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
100
  //H1
101
  if (!empty($seopress_analysis_data['0']['h1']['matches'])) {
102
  echo '<h3>'.__('H1 (Heading 1)','wp-seopress').'</h3>';
@@ -120,7 +154,7 @@ if ( is_plugin_active( 'wp-seopress-pro/seopress-pro.php' ) ) {
120
  echo '</ul>';
121
  if ($count > 1) {
122
  echo '<p><span class="dashicons dashicons-no-alt"></span>'.sprintf(esc_html__('We found %d Heading 1 (H1) in your content.','wp-seopress'), $count).'</p>';
123
- echo '<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. Better for SEO and accessibility.','wp-seopress').'</p>';
124
  }
125
  }
126
 
@@ -316,8 +350,27 @@ if ( is_plugin_active( 'wp-seopress-pro/seopress-pro.php' ) ) {
316
  echo '<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>';
317
  echo '<ul>';
318
  foreach ($seopress_analysis_data['0']['nofollow_links'] as $links) {
319
- foreach ($links as $link) {
320
- echo '<li><span class="dashicons dashicons-minus"></span>'.$link.'</li>';
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
321
  }
322
  }
323
  echo '</ul>';
53
 
54
  var i;
55
  for (i = 0; i < 10; i++) {
56
+ document.getElementById('seopress_suggestions').innerHTML += '<li><a href=\"#\" class=\"sp-suggest-btn button button-small\">'+suggestions_array[i]+'</a></li>';
57
  }
58
+
59
+ jQuery('.sp-suggest-btn').click(function(e) {
60
+ e.preventDefault();
61
+ if($('#seopress_analysis_target_kw_meta').val().length == 0){
62
+ jQuery('#seopress_analysis_target_kw_meta').val(jQuery(this).text() + ',');
63
+ } else {
64
+ str = jQuery('#seopress_analysis_target_kw_meta').val();
65
+ str = str.replace(/,\s*$/, '');
66
+ jQuery('#seopress_analysis_target_kw_meta').val(str+','+jQuery(this).text());
67
+ }
68
+ });
69
  }
70
  jQuery('#seopress_get_suggestions').on('click', function(data) {
71
  data.preventDefault();
96
  //Word counters
97
  if (isset($seopress_analysis_data['0']['words_counter']) || isset($seopress_analysis_data['0']['words_counter_unique'])) {
98
  echo '<h3>'.__('Words counter','wp-seopress').'</h3>
99
+ <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>
100
  <ul>
101
  <li>'.$seopress_analysis_data['0']['words_counter'].' '.__('words found.','wp-seopress').'</li>
102
  <li>'.$seopress_analysis_data['0']['words_counter_unique'].' '.__('unique words found.','wp-seopress').'</li>';
109
  echo '</ul>';
110
  }
111
 
112
+ //Keywords density
113
+ if (!empty($seopress_analysis_data['0']['kws_density']['matches']) && isset($seopress_analysis_data['0']['words_counter'])) {
114
+ echo '<h3>'.__('Keywords density','wp-seopress').'</h3>';
115
+
116
+ $target_kws_density = $seopress_analysis_data['0']['kws_density']['matches'];
117
+
118
+ echo '<ul>';
119
+
120
+ foreach ($target_kws_density as $key => $value) {
121
+ foreach ($value as $_key => $_value) {
122
+ $kw_count = count($_value);
123
+ }
124
+ $kw_name = $key;
125
+ $kw_density = round($kw_count/$seopress_analysis_data['0']['words_counter']*100, 2);
126
+ echo '<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>';
127
+ }
128
+
129
+ echo '</ul>';
130
+
131
+ echo '<p class="description">'.__('Learn more about <a href="https://www.youtube.com/watch?v=Rk4qgQdp2UA" target="_blank">keywords stuffing</a>.','wp-seopress').'</p>';
132
+ }
133
+
134
  //H1
135
  if (!empty($seopress_analysis_data['0']['h1']['matches'])) {
136
  echo '<h3>'.__('H1 (Heading 1)','wp-seopress').'</h3>';
154
  echo '</ul>';
155
  if ($count > 1) {
156
  echo '<p><span class="dashicons dashicons-no-alt"></span>'.sprintf(esc_html__('We found %d Heading 1 (H1) in your content.','wp-seopress'), $count).'</p>';
157
+ echo '<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.','wp-seopress').'</p>';
158
  }
159
  }
160
 
350
  echo '<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>';
351
  echo '<ul>';
352
  foreach ($seopress_analysis_data['0']['nofollow_links'] as $links) {
353
+ foreach ($links as $href => $link) {
354
+ echo '<li><span class="dashicons dashicons-minus"></span><a href="'.$href.'" target="_blank">'.$link.'</a><span class="dashicons dashicons-external"></span></li>';
355
+ }
356
+ }
357
+ echo '</ul>';
358
+
359
+ } else {
360
+ echo '<p><span class="dashicons dashicons-yes"></span>'.__('This page doesn\'t have any nofollow links.','wp-seopress').'</p>';
361
+ }
362
+
363
+ //Outbound links
364
+ echo '<h3>'.__('Outbound Links','wp-seopress').'</h3>';
365
+
366
+ if (!empty($seopress_analysis_data['0']['outbound_links'])) {
367
+ $count = count($seopress_analysis_data['0']['outbound_links']);
368
+
369
+ echo '<p>'.sprintf( 'We found %d outbound links in your page. 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. <br>Below, the list:', 'wp-seopress', $count ).'</p>';
370
+ echo '<ul>';
371
+ foreach ($seopress_analysis_data['0']['outbound_links'] as $links) {
372
+ foreach ($links as $href => $link) {
373
+ echo '<li><span class="dashicons dashicons-minus"></span><a href="'.$href.'" target="_blank">'.$link.'</a><span class="dashicons dashicons-external"></span></li>';
374
  }
375
  }
376
  echo '</ul>';
inc/admin/admin-metaboxes-form.php CHANGED
@@ -189,7 +189,7 @@ echo '<div class="snippet-description">...</div>
189
  </label>
190
  </p>
191
  <p class="description">
192
- '.__('You can not uncheck a parameter? This is normal, it is most likely defined in the global settings of the extension.','wp-seopress').'
193
  </p>
194
  <p>
195
  <label for="seopress_robots_canonical_meta">'. __( 'Canonical URL', 'wp-seopress' ) .'</label>
@@ -287,7 +287,7 @@ echo '<div class="snippet-description">...</div>
287
  echo '<p>
288
  <label for="seopress_redirections_param_meta">'. __( 'Query parameters', 'wp-seopress' ) .'</label>
289
  <select name="seopress_redirections_param">
290
- <option ' . selected( 'exact_match', $seopress_redirections_param, false ) . ' value="exact_match">'. __( 'Exact match with all parameters', 'wp-seopress' ) .'</option>
291
  <option ' . selected( 'without_param', $seopress_redirections_param, false ) . ' value="without_param">'. __( 'Exclude all parameters', 'wp-seopress' ) .'</option>
292
  <option ' . selected( 'with_ignored_param', $seopress_redirections_param, false ) . ' value="with_ignored_param">'. __( 'Exclude all parameters and pass them to the redirection', 'wp-seopress' ) .'</option>
293
  </select></p>';
189
  </label>
190
  </p>
191
  <p class="description">
192
+ '.__('You cannot uncheck a parameter? This is normal, and it\'s most likely defined in the global settings of the extension.','wp-seopress').'
193
  </p>
194
  <p>
195
  <label for="seopress_robots_canonical_meta">'. __( 'Canonical URL', 'wp-seopress' ) .'</label>
287
  echo '<p>
288
  <label for="seopress_redirections_param_meta">'. __( 'Query parameters', 'wp-seopress' ) .'</label>
289
  <select name="seopress_redirections_param">
290
+ <option ' . selected( 'exact_match', $seopress_redirections_param, false ) . ' value="exact_match">'. __( 'Exactly match all parameters', 'wp-seopress' ) .'</option>
291
  <option ' . selected( 'without_param', $seopress_redirections_param, false ) . ' value="without_param">'. __( 'Exclude all parameters', 'wp-seopress' ) .'</option>
292
  <option ' . selected( 'with_ignored_param', $seopress_redirections_param, false ) . ' value="with_ignored_param">'. __( 'Exclude all parameters and pass them to the redirection', 'wp-seopress' ) .'</option>
293
  </select></p>';
inc/admin/admin-wizard.php CHANGED
@@ -364,7 +364,7 @@ class SEOPRESS_Admin_Setup_Wizard {
364
 
365
  <h1><?php esc_html_e( 'Your site', 'wp-seopress' ); ?></h1>
366
  <form method="post">
367
- <p><?php esc_html_e( 'Fill out the fields below to configure general settings needed to build title tags and knowledge graph for Google.', 'wp-seopress' ); ?></p>
368
 
369
  <label class="location-prompt" for="site_sep"><?php esc_html_e( 'Separator', 'wp-seopress' ); ?></label>
370
  <input type="text" id="site_sep" class="location-input" name="site_sep" placeholder="<?php esc_html_e('eg: |', 'wp-seopress'); ?>" required value="<?php echo $site_sep; ?>" />
@@ -473,12 +473,12 @@ class SEOPRESS_Admin_Setup_Wizard {
473
  $seopress_titles_option = get_option( 'seopress_titles_option_name' );
474
  ?>
475
  <h1><?php esc_html_e( 'Indexing', 'wp-seopress' ); ?></h1>
476
- <p><?php esc_html_e( 'Specify to the search engines what you want to index or not. Defaut: index', 'wp-seopress' ); ?></p>
477
  <form method="post" class="seopress-wizard-indexing-form">
478
  <?php if(!empty(seopress_get_post_types())) { ?>
479
  <div class="seopress-wizard-services">
480
  <p>
481
- <?php _e('For which single post types, indexing should be disabled?','wp-seopress'); ?>
482
  </p>
483
 
484
  <ul>
@@ -506,7 +506,7 @@ class SEOPRESS_Admin_Setup_Wizard {
506
  <?php if(!empty(seopress_get_post_types())) { ?>
507
  <div class="seopress-wizard-services">
508
  <p>
509
- <?php _e('For which post type archives, indexing should be disabled?','wp-seopress'); ?>
510
  </p>
511
 
512
  <ul>
@@ -536,7 +536,7 @@ class SEOPRESS_Admin_Setup_Wizard {
536
  <?php if(!empty(seopress_get_taxonomies())) { ?>
537
  <div class="seopress-wizard-services">
538
  <p>
539
- <?php _e('For which taxonomy archives, indexing should be disabled?','wp-seopress'); ?>
540
  </p>
541
 
542
  <ul>
@@ -648,7 +648,7 @@ class SEOPRESS_Admin_Setup_Wizard {
648
  if ('1' == $attachments_file) echo 'checked="yes"';
649
  echo ' value="1"/>';
650
 
651
- echo '<label for="attachments_file" class="location-prompt">'. __( 'Redirect attachment pages to the file URL (https://www.example.com/my-image-file.jpg)', 'wp-seopress' ) .'</label>';
652
  echo '</li>';
653
  echo '<li class="seopress-wizard-service-info">';
654
  _e('By default, SEOPress redirects your Attachment pages to the parent post. Optimize this by redirecting the user directly to the URL of the media file.','wp-seopress');
@@ -736,7 +736,7 @@ class SEOPRESS_Admin_Setup_Wizard {
736
  <?php esc_html_e( "Go PRO with SEOPress PRO!","wp-seopress"); ?>
737
  </h3>
738
  <p class="seopress-setup-actions step">
739
- <?php esc_html_e( "Get a lot of additional features by upgrading PRO like automatic and manual schemas, Video Sitemap, WooCommerce enhancements, Analytics statistics in your Dashboard, breadcrumbs, redirections and more.", 'wp-seopress' ); ?>
740
  </p>
741
  <p class="seopress-setup-actions step">
742
  <a class="button button-primary button-large" href="https://www.seopress.org/" target="_blank">
@@ -752,7 +752,7 @@ class SEOPRESS_Admin_Setup_Wizard {
752
  <div class="seopress-wizard-next-step-description">
753
  <p class="next-step-heading"><?php esc_html_e("Next step","wp-seopress"); ?></p>
754
  <h3 class="next-step-description"><?php esc_html_e("Create your XML sitemaps","wp-seopress"); ?></h3>
755
- <p class="next-step-extra-info"><?php esc_html_e("Build custom XML sitemaps to improve Google crawling of your site.","wp-seopress"); ?></p>
756
  </div>
757
  <div class="seopress-wizard-next-step-action">
758
  <p class="seopress-setup-actions step">
364
 
365
  <h1><?php esc_html_e( 'Your site', 'wp-seopress' ); ?></h1>
366
  <form method="post">
367
+ <p><?php esc_html_e( 'To build title tags and knowledge graph for Google, you need to fill out the fields below to configure the general settings. ', 'wp-seopress' ); ?></p>
368
 
369
  <label class="location-prompt" for="site_sep"><?php esc_html_e( 'Separator', 'wp-seopress' ); ?></label>
370
  <input type="text" id="site_sep" class="location-input" name="site_sep" placeholder="<?php esc_html_e('eg: |', 'wp-seopress'); ?>" required value="<?php echo $site_sep; ?>" />
473
  $seopress_titles_option = get_option( 'seopress_titles_option_name' );
474
  ?>
475
  <h1><?php esc_html_e( 'Indexing', 'wp-seopress' ); ?></h1>
476
+ <p><?php esc_html_e( 'Specify to the search engines what you want to be indexed or not. Default: index', 'wp-seopress' ); ?></p>
477
  <form method="post" class="seopress-wizard-indexing-form">
478
  <?php if(!empty(seopress_get_post_types())) { ?>
479
  <div class="seopress-wizard-services">
480
  <p>
481
+ <?php _e('For which single post types, should indexing be disabled?','wp-seopress'); ?>
482
  </p>
483
 
484
  <ul>
506
  <?php if(!empty(seopress_get_post_types())) { ?>
507
  <div class="seopress-wizard-services">
508
  <p>
509
+ <?php _e('For which post type archives, should indexing be disabled?','wp-seopress'); ?>
510
  </p>
511
 
512
  <ul>
536
  <?php if(!empty(seopress_get_taxonomies())) { ?>
537
  <div class="seopress-wizard-services">
538
  <p>
539
+ <?php _e('For which taxonomy archives, should indexing be disabled?','wp-seopress'); ?>
540
  </p>
541
 
542
  <ul>
648
  if ('1' == $attachments_file) echo 'checked="yes"';
649
  echo ' value="1"/>';
650
 
651
+ echo '<label for="attachments_file" class="location-prompt">'. __( 'Redirect attachment pages to their file URL (https://www.example.com/my-image-file.jpg)', 'wp-seopress' ) .'</label>';
652
  echo '</li>';
653
  echo '<li class="seopress-wizard-service-info">';
654
  _e('By default, SEOPress redirects your Attachment pages to the parent post. Optimize this by redirecting the user directly to the URL of the media file.','wp-seopress');
736
  <?php esc_html_e( "Go PRO with SEOPress PRO!","wp-seopress"); ?>
737
  </h3>
738
  <p class="seopress-setup-actions step">
739
+ <?php esc_html_e( "When you upgrade to the PRO version, you get a lot of additional features, like automatic and manual schemas, Video Sitemap, WooCommerce enhancements, Analytics statistics in your Dashboard, breadcrumbs, redirections, and more.", 'wp-seopress' ); ?>
740
  </p>
741
  <p class="seopress-setup-actions step">
742
  <a class="button button-primary button-large" href="https://www.seopress.org/" target="_blank">
752
  <div class="seopress-wizard-next-step-description">
753
  <p class="next-step-heading"><?php esc_html_e("Next step","wp-seopress"); ?></p>
754
  <h3 class="next-step-description"><?php esc_html_e("Create your XML sitemaps","wp-seopress"); ?></h3>
755
+ <p class="next-step-extra-info"><?php esc_html_e("Build custom XML sitemaps to improve Google's crawling of your site.","wp-seopress"); ?></p>
756
  </div>
757
  <div class="seopress-wizard-next-step-action">
758
  <p class="seopress-setup-actions step">
inc/admin/admin.php CHANGED
@@ -544,7 +544,6 @@ class seopress_options
544
  'tab_seopress_google_analytics_events' => __( "Events", "wp-seopress" ),
545
  'tab_seopress_google_analytics_custom_dimensions' => __( "Custom Dimensions", "wp-seopress" ),
546
  'tab_seopress_google_analytics_dashboard' => __( "Stats in Dashboard", "wp-seopress" ),
547
- //'tab_seopress_google_analytics_e_commerce' => __( "E-commerce", "wp-seopress" ),
548
  );
549
  } else {
550
  $plugin_settings_tabs = array(
@@ -566,8 +565,7 @@ class seopress_options
566
  <div class="seopress-tab <?php if ($current_tab == 'tab_seopress_google_analytics_custom_dimensions') { echo 'active'; } ?>" id="tab_seopress_google_analytics_custom_dimensions"><?php do_settings_sections( 'seopress-settings-admin-google-analytics-custom-dimensions' ); ?></div>
567
  <?php if (is_plugin_active('wp-seopress-pro/seopress-pro.php')) { ?>
568
  <div class="seopress-tab <?php if ($current_tab == 'tab_seopress_google_analytics_dashboard') { echo 'active'; } ?>" id="tab_seopress_google_analytics_dashboard"><?php do_settings_sections( 'seopress-settings-admin-google-analytics-dashboard' ); ?></div>
569
- <!-- <div class="seopress-tab <?php if ($current_tab == 'tab_seopress_google_analytics_e_commerce') { echo 'active'; } ?>" id="tab_seopress_google_analytics_e_commerce"><?php do_settings_sections( 'seopress-settings-admin-google-analytics-e-commerce' ); ?></div>
570
- --> <?php } ?>
571
  </div>
572
 
573
  <?php submit_button(); ?>
@@ -787,72 +785,77 @@ class seopress_options
787
  </div>
788
  <div class="seopress-tab <?php if ($current_tab == 'tab_seopress_tool_redirects') { echo 'active'; } ?>" id="tab_seopress_tool_redirects">
789
  <?php if (is_plugin_active('wp-seopress-pro/seopress-pro.php')) { ?>
790
- <div id="section-import-redirects" class="postbox section-tool">
791
- <div class="inside">
792
- <h3><span><?php _e( 'Import Redirections', 'wp-seopress' ); ?></span></h3>
793
- <p><?php _e( 'Import your own redirections from a .csv file (separator ";"). You must have 5 columns in this order: <ul><li>url to match (without your domain name), </li><li>url to redirect in absolute, </li><li>type of redirection (301, 302 or 307), </li><li>yes to enable the redirect (leave it empty to disable the redirect) </li><li>and the last one the query parameter ("exact_match" = Exact match with all parameters, "without_param" = Exclude all parameters or "with_ignored_param" = Exclude all parameters and pass them to the redirection).</li></ul>', 'wp-seopress' ); ?></p>
794
- <p>
795
- <a href="https://www.seopress.org/wp-content/uploads/csv/seopress-redirections-example.csv" target="_blank">
796
- <?php _e('Download a CSV example','wp-seopress'); ?>
797
- </a>
798
- </p>
799
- <form method="post" enctype="multipart/form-data">
800
- <p>
801
- <input type="file" name="import_file"/>
802
- </p>
803
- <p>
804
- <input type="hidden" name="seopress_action" value="import_redirections_settings" />
805
- <?php wp_nonce_field( 'seopress_import_redirections_nonce', 'seopress_import_redirections_nonce' ); ?>
806
- <?php submit_button( __( 'Import', 'wp-seopress' ), 'secondary', 'submit', false ); ?>
807
- </p>
808
- </form>
809
- </div><!-- .inside -->
810
- </div><!-- .postbox -->
811
- <div id="section-import-redirects-plugin" class="postbox section-tool">
812
- <div class="inside">
813
- <h3><span><?php _e( 'Import Redirections from Redirections plugin', 'wp-seopress' ); ?></span></h3>
814
- <p><?php _e( 'Import your own redirections from a .json file generated by the Redirections plugin. Note that we do not support certain options like regex. Make sure you don\'t have duplicates between your file and existing redirects to avoid conflicts.', 'wp-seopress' ); ?></p>
815
- <form method="post" enctype="multipart/form-data">
816
- <p>
817
- <input type="file" name="import_file"/>
818
- </p>
819
- <p>
820
- <input type="hidden" name="seopress_action" value="import_redirections_plugin_settings" />
821
- <?php wp_nonce_field( 'seopress_import_redirections_plugin_nonce', 'seopress_import_redirections_plugin_nonce' ); ?>
822
- <?php submit_button( __( 'Import', 'wp-seopress' ), 'secondary', 'submit', false ); ?>
823
- </p>
824
- </form>
825
- </div><!-- .inside -->
826
- </div><!-- .postbox -->
827
- <div id="section-import-yoast-redirects" class="postbox section-tool">
828
- <div class="inside">
829
- <h3><span><?php _e( 'Import Redirections from Yoast Premium', 'wp-seopress' ); ?></span></h3>
830
- <p><?php _e( 'Import your own redirections from a .csv file generated by Yoast Premium. Note that we do not support certain options like regex. Make sure you don\'t have duplicates between your file and existing redirects to avoid conflicts.', 'wp-seopress' ); ?></p>
831
- <form method="post" enctype="multipart/form-data">
832
  <p>
833
- <input type="file" name="import_file"/>
 
 
834
  </p>
835
- <p>
836
- <input type="hidden" name="seopress_action" value="import_yoast_redirections" />
837
- <?php wp_nonce_field( 'seopress_import_yoast_redirections_nonce', 'seopress_import_yoast_redirections_nonce' ); ?>
838
- <?php submit_button( __( 'Import', 'wp-seopress' ), 'secondary', 'submit', false ); ?>
839
- </p>
840
- </form>
841
- </div><!-- .inside -->
842
- </div><!-- .postbox -->
843
- <div id="section-export-redirects" class="postbox section-tool">
844
- <div class="inside">
845
- <h3><span><?php _e( 'Export Redirections', 'wp-seopress' ); ?></span></h3>
846
- <p><?php _e( 'Export all redirections for this site as a .csv file. This allows you to easily import the redirections into another site, to Excel / Google Sheets...', 'wp-seopress' ); ?></p>
847
- <form method="post">
848
- <p><input type="hidden" name="seopress_action" value="export_redirections" /></p>
849
- <p>
850
- <?php wp_nonce_field( 'seopress_export_redirections_nonce', 'seopress_export_redirections_nonce' ); ?>
851
- <?php submit_button( __( 'Export', 'wp-seopress' ), 'secondary', 'submit', false ); ?>
852
- </p>
853
- </form>
854
- </div><!-- .inside -->
855
- </div><!-- .postbox -->
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
856
  <?php } ?>
857
  </div>
858
  <div class="seopress-tab <?php if ($current_tab == 'tab_seopress_tool_reset') { echo 'active'; } ?>" id="tab_seopress_tool_reset">
@@ -996,7 +999,7 @@ class seopress_options
996
  <div id="notice-wizard-alert" class="seopress-alert deleteable">
997
  <p>
998
  <span class="dashicons dashicons-warning"></span>
999
- <strong><?php _e('Configure SEOPress in a few minutes thanks to our installation wizard','wp-seopress'); ?></strong>
1000
  </p>
1001
  <a class="button-primary" href="<?php echo admin_url( 'admin.php?page=seopress-setup' ); ?>"><?php _e('Start the wizard','wp-seopress'); ?></a>
1002
  <span name="notice-wizard" id="notice-wizard" class="dashicons dashicons-trash remove-notice" data-notice="notice-wizard"></span>
@@ -1042,7 +1045,7 @@ class seopress_options
1042
  <div class="seopress-alert">
1043
  <p>
1044
  <span class="dashicons dashicons-warning"></span>
1045
- <?php _e('We notice that you use <strong>Yoast SEO</strong> plugin. <br>Do you want to migrate all your posts metadata to SEOPress?','wp-seopress'); ?>
1046
  </p>
1047
  <a class="button-primary" href="<?php echo admin_url( 'admin.php?page=seopress-import-export#yoast-migration-tool' ); ?>"><?php _e('Migrate!','wp-seopress'); ?></a>
1048
  </div>
@@ -1051,7 +1054,7 @@ class seopress_options
1051
  <div class="seopress-alert">
1052
  <p>
1053
  <span class="dashicons dashicons-warning"></span>
1054
- <?php _e('We notice that you use <strong>All In One SEO Pack</strong> plugin. <br>Do you want to migrate all your posts metadata to SEOPress?','wp-seopress'); ?>
1055
  </p>
1056
  <a class="button-primary" href="<?php echo admin_url( 'admin.php?page=seopress-import-export#aio-migration-tool' ); ?>"><?php _e('Migrate!','wp-seopress'); ?></a>
1057
  </div>
@@ -1060,7 +1063,7 @@ class seopress_options
1060
  <div class="seopress-alert">
1061
  <p>
1062
  <span class="dashicons dashicons-warning"></span>
1063
- <?php _e('We notice that you use another SEO plugin. <br>Do not use multiple SEO plugins at once to avoid conflicts!','wp-seopress'); ?>
1064
  </p>
1065
  </div>
1066
  <?php } ?>
@@ -1070,7 +1073,7 @@ class seopress_options
1070
  <div class="seopress-alert">
1071
  <p>
1072
  <span class="dashicons dashicons-warning"></span>
1073
- <?php _e('You have enabled 404 cleaning BUT the scheduled task is not running. <br>To solve this, please disable and enable SEOPress PRO.','wp-seopress'); ?>
1074
  </p>
1075
  </div>
1076
  <?php }
@@ -1383,63 +1386,6 @@ class seopress_options
1383
 
1384
  <span id="spinner-reverse" class="spinner"></span>
1385
  </div>
1386
-
1387
- <!-- Alexa -->
1388
- <div class="widget widget-alexa">
1389
- <h3 class="widget-title"><span class="dashicons dashicons-chart-area"></span><?php _e('Check your Alexa Rank (Amazon index)','wp-seopress'); ?></h3>
1390
-
1391
- <?php
1392
- if ( get_transient( 'seopress_results_alexa_rank' ) !='' ) {
1393
- echo '<div class="wrap-alexa-rank">';
1394
- $seopress_results_alexa_rank = get_transient( 'seopress_results_alexa_rank' );
1395
-
1396
- $seopress_alexa_rank_xml = simplexml_load_string($seopress_results_alexa_rank);
1397
- $seopress_alexa_rank_reach = $seopress_alexa_rank_xml->SD->REACH['RANK'];
1398
- $seopress_alexa_rank_delta = $seopress_alexa_rank_xml->SD->RANK['DELTA'];
1399
- $seopress_alexa_rank_country = $seopress_alexa_rank_xml->SD->COUNTRY['NAME'];
1400
- $seopress_alexa_rank_country_rank = $seopress_alexa_rank_xml->SD->COUNTRY['RANK'];
1401
-
1402
- if ($seopress_alexa_rank_reach !='') {
1403
- echo '<span class="seopress_alexa_rank_reach">
1404
- <span class="highlight">'.__('Your Alexa Rank','wp-seopress').'</span>'
1405
- .$seopress_alexa_rank_reach.'
1406
- </span>';
1407
- }
1408
- if ($seopress_alexa_rank_delta !='') {
1409
-
1410
- $seopress_alexa_rank_delta_sign = substr($seopress_alexa_rank_delta, 0, 1);
1411
- $seopress_alexa_rank_delta_num = substr($seopress_alexa_rank_delta, 1, 9999);
1412
-
1413
- if ($seopress_alexa_rank_delta_sign =='+') {
1414
- $seopress_alexa_rank_delta_css = '<span class="plus"><span class="dashicons dashicons-plus"></span></span>';
1415
- } elseif ($seopress_alexa_rank_delta_sign =='-') {
1416
- $seopress_alexa_rank_delta_css = '<span class="minus"><span class="dashicons dashicons-minus"></span></span>';
1417
- }
1418
-
1419
- echo '<span class="seopress_alexa_rank_delta">
1420
- '.$seopress_alexa_rank_delta_css.$seopress_alexa_rank_delta_num.'
1421
- </span>';
1422
- }
1423
-
1424
- if ($seopress_alexa_rank_country !='') {
1425
- echo '<span class="seopress_alexa_rank_country">
1426
- <span class="highlight">'.__('Country Rank: ','wp-seopress').'</span>
1427
- '.$seopress_alexa_rank_country.'
1428
- </span>';
1429
- }
1430
- if ($seopress_alexa_rank_country_rank !='') {
1431
- echo '<span class="seopress_alexa_rank_country_rank"> - '.$seopress_alexa_rank_country_rank.'</span>';
1432
- }
1433
- echo '</div>';
1434
-
1435
- echo '<p><em>'._e('The lower, the best','wp-seopress').'</em></p>';
1436
- }
1437
- ?>
1438
-
1439
- <button id="seopress-request-alexa-rank" class="button-primary button" name="clear"><?php _e('Get Alexa Rank','wp-seopress'); ?></button>
1440
-
1441
- <span id="spinner-alexa" class="spinner"></span>
1442
- </div>
1443
  </div>
1444
  <?php } ?>
1445
  <div id="tab_seopress_links" class="seopress-tab seopress-useful-tools <?php if ($current_tab == 'tab_seopress_links') { echo 'active'; } ?>">
@@ -1757,6 +1703,7 @@ class seopress_options
1757
  <h3><?php _e('Structured Data Types','wp-seopress'); ?></h3>
1758
  <p><?php _e('Add data types to your content: articles, courses, recipes, videos, events and products','wp-seopress'); ?></p>
1759
  <a class="button-secondary" href="<?php echo admin_url( 'admin.php?page=seopress-pro-page#tab=tab_seopress_rich_snippets$9' ); ?>"><?php _e('Manage','wp-seopress'); ?></a>
 
1760
  <?php
1761
  if(seopress_get_toggle_rich_snippets_option()=='1') {
1762
  $seopress_get_toggle_rich_snippets_option = '"1"';
@@ -1964,6 +1911,24 @@ class seopress_options
1964
  <p><?php _e('Scan your site to find SEO problems.','wp-seopress'); ?></p>
1965
  <a class="button-secondary view-redirects" href="<?php echo admin_url( 'edit.php?post_type=seopress_bot' ); ?>"><?php _e('See broken links','wp-seopress'); ?></a>
1966
  <a class="button-secondary" href="<?php echo admin_url( 'admin.php?page=seopress-bot-batch' ); ?>"><?php _e('Scan','wp-seopress'); ?></a>
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1967
  </span>
1968
  </div>
1969
  <div class="seopress-feature">
@@ -2844,12 +2809,20 @@ class seopress_options
2844
 
2845
  add_settings_field(
2846
  'seopress_google_analytics_other_tracking', // ID
2847
- __("Add an additional tracking code (like Facebook Pixel, Hotjar...)","wp-seopress"), // Title
2848
  array( $this, 'seopress_google_analytics_other_tracking_callback' ), // Callback
2849
  'seopress-settings-admin-google-analytics-features', // Page
2850
  'seopress_setting_section_google_analytics_features' // Section
2851
  );
2852
 
 
 
 
 
 
 
 
 
2853
  add_settings_field(
2854
  'seopress_google_analytics_remarketing', // ID
2855
  __("Enable remarketing, demographics, and interests reporting","wp-seopress"), // Title
@@ -3009,7 +2982,7 @@ class seopress_options
3009
 
3010
  add_settings_field(
3011
  'seopress_advanced_advanced_attachments_file', // ID
3012
- __("Redirect attachment pages to the file URL","wp-seopress"), // Title
3013
  array( $this, 'seopress_advanced_advanced_attachments_file_callback' ), // Callback
3014
  'seopress-settings-admin-advanced-advanced', // Page
3015
  'seopress_setting_section_advanced_advanced' // Section
@@ -3339,7 +3312,7 @@ class seopress_options
3339
  public function sanitize( $input )
3340
  {
3341
 
3342
- $seopress_sanitize_fields = array('seopress_titles_sep','seopress_titles_home_site_title', 'seopress_titles_home_site_desc', 'seopress_titles_archives_author_title', 'seopress_titles_archives_author_desc', 'seopress_titles_archives_date_title', 'seopress_titles_archives_date_desc', 'seopress_titles_archives_search_title', 'seopress_titles_archives_search_desc', 'seopress_titles_archives_404_title', 'seopress_titles_archives_404_desc', 'seopress_xml_sitemap_html_exclude', 'seopress_social_knowledge_name', 'seopress_social_knowledge_img', 'seopress_social_knowledge_phone', 'seopress_social_accounts_facebook', 'seopress_social_accounts_twitter', 'seopress_social_accounts_pinterest', 'seopress_social_accounts_instagram', 'seopress_social_accounts_youtube', 'seopress_social_accounts_linkedin', 'seopress_social_accounts_myspace', 'seopress_social_accounts_soundcloud', 'seopress_social_accounts_tumblr', 'seopress_social_facebook_link_ownership_id', 'seopress_social_facebook_admin_id', 'seopress_social_facebook_app_id', 'seopress_google_analytics_ua', 'seopress_google_analytics_download_tracking','seopress_google_analytics_opt_out_msg', 'seopress_google_analytics_opt_out_msg_ok', 'seopress_google_analytics_other_tracking', 'seopress_google_analytics_optimize', 'seopress_google_analytics_ads','seopress_google_analytics_cross_domain' );
3343
 
3344
  $seopress_sanitize_site_verification = array('seopress_advanced_advanced_google', 'seopress_advanced_advanced_bing', 'seopress_advanced_advanced_pinterest', 'seopress_advanced_advanced_yandex' );
3345
 
@@ -3352,7 +3325,7 @@ class seopress_options
3352
  'a' => array('href' => array(), 'target' => array())
3353
  );
3354
  $input[$value] = wp_kses($input[$value], $args);
3355
- } elseif (!empty( $input['seopress_google_analytics_other_tracking'] ) && $value =='seopress_google_analytics_other_tracking') {
3356
  $input[$value] = $input[$value]; //No sanitization for this field
3357
  } elseif( !empty( $input[$value] ) ) {
3358
  $input[$value] = sanitize_text_field( $input[$value] );
@@ -3379,7 +3352,7 @@ class seopress_options
3379
 
3380
  public function print_section_info_titles()
3381
  {
3382
- print __('<p>Customize your titles & metas for homepage</p>', 'wp-seopress');
3383
  }
3384
 
3385
  public function print_section_info_single()
@@ -3485,7 +3458,7 @@ class seopress_options
3485
 
3486
  public function print_section_info_social_accounts()
3487
  {
3488
- print __('<p>Link your site with your social accounts. Use markup on your website to add your social profile information to a Google Knowledge panel. Knowledge panels prominently display your social profile information in some Google Search results. Filling in these fields does not guarantee the display of this data in search results. It may take a long time to see these social networking links.</p>', 'wp-seopress');
3489
  echo '<img src="'.plugins_url('assets/img/help/google-knowledge-graph-social.png', dirname(dirname(__FILE__))).'" class="help-social">';
3490
  }
3491
 
@@ -3493,7 +3466,7 @@ class seopress_options
3493
  {
3494
  print __('<p>Manage Open Graph data.</p>', 'wp-seopress');
3495
 
3496
- echo __('<p>We generate the <strong>og:image</strong> meta following this order:</p>','wp-seopress');
3497
 
3498
  echo '
3499
  <ol>
@@ -3508,7 +3481,7 @@ class seopress_options
3508
  {
3509
  print __('<p>Manage your Twitter card.</p>', 'wp-seopress');
3510
 
3511
- echo __('<p>We generate the <strong>twitter:image</strong> meta following this order:</p>','wp-seopress');
3512
 
3513
  echo '
3514
  <ol>
@@ -3588,6 +3561,7 @@ class seopress_options
3588
  esc_html( $this->options['seopress_titles_home_site_title'])
3589
  );
3590
  echo '<div class="wrap-tags"><span id="seopress-tag-site-title" data-tag="%%sitetitle%%" class="tag-title"><span class="dashicons dashicons-plus"></span>'.__('Site Title','wp-seopress').'</span>';
 
3591
  echo '<span id="seopress-tag-site-desc" data-tag="%%tagline%%" class="tag-title"><span class="dashicons dashicons-plus"></span>'.__('Tagline','wp-seopress').'</span>';
3592
  echo '<span id="seopress-quick-help" class="tag-title more-tags"><span class="dashicons dashicons-menu"></span>'.__('More tags','wp-seopress').'</span></div>';
3593
  }
@@ -3624,11 +3598,14 @@ class seopress_options
3624
 
3625
  echo "<script>
3626
  jQuery(document).ready(function($) {
3627
- jQuery('#seopress-tag-single-title-".$seopress_cpt_key."').click(function() {
3628
- jQuery('#seopress_titles_single_titles_".$seopress_cpt_key."').val(jQuery('#seopress_titles_single_titles_".$seopress_cpt_key."').val() + ' ' + jQuery('#seopress-tag-single-title-".$seopress_cpt_key."').attr('data-tag'));
3629
  });
3630
- jQuery('#seopress-tag-single-sitetitle-".$seopress_cpt_key."').click(function() {
3631
- jQuery('#seopress_titles_single_titles_".$seopress_cpt_key."').val(jQuery('#seopress_titles_single_titles_".$seopress_cpt_key."').val() + ' ' + jQuery('#seopress-tag-single-sitetitle-".$seopress_cpt_key."').attr('data-tag'));
 
 
 
3632
  });
3633
  });
3634
  </script>";
@@ -3640,6 +3617,8 @@ class seopress_options
3640
 
3641
  echo '<div class="wrap-tags"><span id="seopress-tag-single-title-'.$seopress_cpt_key.'" data-tag="%%post_title%%" class="tag-title"><span class="dashicons dashicons-plus"></span>'.__('Post Title','wp-seopress').'</span>';
3642
 
 
 
3643
  echo '<span id="seopress-tag-single-sitetitle-'.$seopress_cpt_key.'" data-tag="%%sitetitle%%" class="tag-title"><span class="dashicons dashicons-plus"></span>'.__('Site Title','wp-seopress').'</span>';
3644
 
3645
  echo '<span id="seopress-quick-help" class="tag-title more-tags"><span class="dashicons dashicons-menu"></span>'.__('More tags','wp-seopress').'</span></div>';
@@ -3717,6 +3696,25 @@ class seopress_options
3717
  }
3718
 
3719
  echo '</div>';
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
3720
  }
3721
  }
3722
 
@@ -3737,11 +3735,14 @@ class seopress_options
3737
 
3738
  echo "<script>
3739
  jQuery(document).ready(function($) {
3740
- jQuery('#seopress-tag-tax-title-".$seopress_tax_key."').click(function() {
3741
- jQuery('#seopress_titles_tax_titles_".$seopress_tax_key."').val(jQuery('#seopress_titles_tax_titles_".$seopress_tax_key."').val() + ' ' + jQuery('#seopress-tag-tax-title-".$seopress_tax_key."').attr('data-tag'));
3742
  });
3743
- jQuery('#seopress-tag-tax-sitetitle-".$seopress_tax_key."').click(function() {
3744
- jQuery('#seopress_titles_tax_titles_".$seopress_tax_key."').val(jQuery('#seopress_titles_tax_titles_".$seopress_tax_key."').val() + ' ' + jQuery('#seopress-tag-tax-sitetitle-".$seopress_tax_key."').attr('data-tag'));
 
 
 
3745
  });
3746
  });
3747
  </script>";
@@ -3759,6 +3760,8 @@ class seopress_options
3759
  echo '<div class="wrap-tags"><span id="seopress-tag-tax-title-'.$seopress_tax_key.'" data-tag="%%term_title%%" class="tag-title"><span class="dashicons dashicons-plus"></span>'.__('Term Title','wp-seopress').'</span>';
3760
  }
3761
 
 
 
3762
  echo '<span id="seopress-tag-tax-sitetitle-'.$seopress_tax_key.'" data-tag="%%sitetitle%%" class="tag-title"><span class="dashicons dashicons-plus"></span>'.__('Site Title','wp-seopress').'</span>';
3763
 
3764
  echo '<span id="seopress-quick-help" class="tag-title more-tags"><span class="dashicons dashicons-menu"></span>'.__('More tags','wp-seopress').'</span></div>';
@@ -3861,11 +3864,14 @@ class seopress_options
3861
 
3862
  echo "<script>
3863
  jQuery(document).ready(function($) {
3864
- jQuery('#seopress-tag-archive-title-".$seopress_cpt_key."').click(function() {
3865
- jQuery('#seopress_titles_archive_titles_".$seopress_cpt_key."').val(jQuery('#seopress_titles_archive_titles_".$seopress_cpt_key."').val() + ' ' + jQuery('#seopress-tag-archive-title-".$seopress_cpt_key."').attr('data-tag'));
3866
  });
3867
- jQuery('#seopress-tag-archive-sitetitle-".$seopress_cpt_key."').click(function() {
3868
- jQuery('#seopress_titles_archive_titles_".$seopress_cpt_key."').val(jQuery('#seopress_titles_archive_titles_".$seopress_cpt_key."').val() + ' ' + jQuery('#seopress-tag-archive-sitetitle-".$seopress_cpt_key."').attr('data-tag'));
 
 
 
3869
  });
3870
  });
3871
  </script>";
@@ -3877,6 +3883,8 @@ class seopress_options
3877
 
3878
  echo '<div class="wrap-tags"><span id="seopress-tag-archive-title-'.$seopress_cpt_key.'" data-tag="%%cpt_plural%%" class="tag-title"><span class="dashicons dashicons-plus"></span>'.__('Post Type Archive Name','wp-seopress').'</span>';
3879
 
 
 
3880
  echo '<span id="seopress-tag-archive-sitetitle-'.$seopress_cpt_key.'" data-tag="%%sitetitle%%" class="tag-title"><span class="dashicons dashicons-plus"></span>'.__('Site Title','wp-seopress').'</span>';
3881
 
3882
  echo '<span id="seopress-quick-help" class="tag-title more-tags"><span class="dashicons dashicons-menu"></span>'.__('More tags','wp-seopress').'</span></div>';
@@ -3954,6 +3962,7 @@ class seopress_options
3954
  );
3955
 
3956
  echo '<div class="wrap-tags"><span id="seopress-tag-post-author" data-tag="%%post_author%%" class="tag-title"><span class="dashicons dashicons-plus"></span>'.__('Post author','wp-seopress').'</span>';
 
3957
  echo '<span id="seopress-tag-site-title-author" data-tag="%%sitetitle%%" class="tag-title"><span class="dashicons dashicons-plus"></span>'.__('Site Title','wp-seopress').'</span>';
3958
  echo '<span id="seopress-quick-help" class="tag-title more-tags"><span class="dashicons dashicons-menu"></span>'.__('More tags','wp-seopress').'</span></div>';
3959
 
@@ -4024,6 +4033,7 @@ class seopress_options
4024
  );
4025
 
4026
  echo '<div class="wrap-tags"><span id="seopress-tag-archive-date" data-tag="%%archive_date%%" class="tag-title"><span class="dashicons dashicons-plus"></span>'.__('Date archives','wp-seopress').'</span>';
 
4027
  echo '<span id="seopress-tag-site-title-date" data-tag="%%sitetitle%%" class="tag-title"><span class="dashicons dashicons-plus"></span>'.__('Site Title','wp-seopress').'</span>';
4028
  echo '<span id="seopress-quick-help" class="tag-title more-tags"><span class="dashicons dashicons-menu"></span>'.__('More tags','wp-seopress').'</span></div>';
4029
 
@@ -4093,6 +4103,7 @@ class seopress_options
4093
  );
4094
 
4095
  echo '<div class="wrap-tags"><span id="seopress-tag-search-keywords" data-tag="%%search_keywords%%" class="tag-title"><span class="dashicons dashicons-plus"></span>'.__('Search Keywords','wp-seopress').'</span>';
 
4096
  echo '<span id="seopress-tag-site-title-search" data-tag="%%sitetitle%%" class="tag-title"><span class="dashicons dashicons-plus"></span>'.__('Site Title','wp-seopress').'</span>';
4097
  echo '<span id="seopress-quick-help" class="tag-title more-tags"><span class="dashicons dashicons-menu"></span>'.__('More tags','wp-seopress').'</span></div>';
4098
 
@@ -4144,8 +4155,8 @@ class seopress_options
4144
 
4145
  );
4146
  echo '<div class="wrap-tags"><span id="seopress-tag-site-title-404" data-tag="%%sitetitle%%" class="tag-title"><span class="dashicons dashicons-plus"></span>'.__('Site Title','wp-seopress').'</span>';
 
4147
  echo '<span id="seopress-quick-help" class="tag-title more-tags"><span class="dashicons dashicons-menu"></span>'.__('More tags','wp-seopress').'</span></div>';
4148
-
4149
  }
4150
 
4151
  public function seopress_titles_archives_404_desc_callback()
@@ -4290,7 +4301,7 @@ class seopress_options
4290
 
4291
  echo '<label for="seopress_titles_nositelinkssearchbox">'. __( 'nositelinkssearchbox', 'wp-seopress' ) .'</label>';
4292
 
4293
- echo '<p class="description">'.__('Prevent Google to display a sitelinks searchbox in search results.','wp-seopress').'</p>';
4294
 
4295
  if (isset($this->options['seopress_titles_nositelinkssearchbox'])) {
4296
  esc_attr( $this->options['seopress_titles_nositelinkssearchbox']);
@@ -4652,7 +4663,7 @@ class seopress_options
4652
 
4653
  <input id="seopress_social_knowledge_img_upload" class="button" type="button" value="'.__('Upload an Image','wp-seopress').'" />';
4654
 
4655
- echo '<p class="description">'.__('JPG, PNG or GIF allowed.', 'wp-seopress').'</p>';
4656
 
4657
  if (isset($this->options['seopress_social_knowledge_img'])) {
4658
  esc_attr( $this->options['seopress_social_knowledge_img']);
@@ -5154,7 +5165,7 @@ class seopress_options
5154
  '<input type="text" name="seopress_google_analytics_option_name[seopress_google_analytics_optimize]" placeholder="'.esc_html__('Enter your Google Optimize container ID','wp-seopress').'" value="%s" aria-label="'.__('GTM-XXXXXXX','wp-seopress').'"/>',
5155
  esc_html($check));
5156
 
5157
- echo '<p class="description">'.__('Google Optimize offers A/B testing, website testing & personalization tools.','wp-seopress').'<a href="https://marketingplatform.google.com/about/optimize/" target="_blank">'.__('Learn more','wp-seopress').'</a></p>';
5158
  }
5159
 
5160
  public function seopress_google_analytics_ads_callback()
@@ -5162,7 +5173,7 @@ class seopress_options
5162
  $check = isset($this->options['seopress_google_analytics_ads']) ? $this->options['seopress_google_analytics_ads'] : NULL;
5163
 
5164
  printf(
5165
- '<input type="text" name="seopress_google_analytics_option_name[seopress_google_analytics_ads]" placeholder="'.esc_html__('Enter your Google Ads conversion ID (eg: AW-123456789','wp-seopress').'" value="%s" aria-label="'.__('AW-XXXXXXXXX','wp-seopress').'"/>',
5166
  esc_html($check));
5167
  }
5168
 
@@ -5171,12 +5182,23 @@ class seopress_options
5171
  $check = isset($this->options['seopress_google_analytics_other_tracking']) ? $this->options['seopress_google_analytics_other_tracking'] : NULL;
5172
 
5173
  printf(
5174
- '<textarea id="seopress_google_analytics_other_tracking" name="seopress_google_analytics_option_name[seopress_google_analytics_other_tracking]" rows="16" placeholder="'.esc_html__('Paste your tracking code here','wp-seopress').'" aria-label="'.__('Additional tracking code field','wp-seopress').'">%s</textarea>',
5175
  esc_textarea($check));
5176
 
5177
  echo '<p class="description">'.__('This code will be added in the head section of your page.','wp-seopress').'</a></p>';
5178
  }
5179
 
 
 
 
 
 
 
 
 
 
 
 
5180
  public function seopress_google_analytics_remarketing_callback()
5181
  {
5182
  $options = get_option( 'seopress_google_analytics_option_name' );
@@ -5266,7 +5288,7 @@ class seopress_options
5266
  $check = isset($this->options['seopress_google_analytics_cross_domain']) ? $this->options['seopress_google_analytics_cross_domain'] : NULL;
5267
 
5268
  printf(
5269
- '<input type="text" name="seopress_google_analytics_option_name[seopress_google_analytics_cross_domain]" placeholder="'.esc_html__('Enter yours domains: seopress.org,sub.seopress.org,sub2.seopress.org','wp-seopress').'" value="%s" aria-label="'.__('Cross domains','wp-seopress').'"/>',
5270
  esc_html($check)
5271
 
5272
  );
@@ -5764,9 +5786,9 @@ class seopress_options
5764
  if ('1' == $check) echo 'checked="yes"';
5765
  echo ' value="1"/>';
5766
 
5767
- echo '<label for="seopress_advanced_advanced_attachments_file">'. __( 'Redirect attachment pages to the file URL (https://www.example.com/my-image-file.jpg)', 'wp-seopress' ) .'</label>';
5768
 
5769
- echo '<p class="description">'.__('If this option is checked, it will take precedence over the redirection of attachments to the post parent.','wp-seopress').'</p>';
5770
 
5771
  if (isset($this->options['seopress_advanced_advanced_attachments_file'])) {
5772
  esc_attr( $this->options['seopress_advanced_advanced_attachments_file']);
@@ -6390,7 +6412,7 @@ class seopress_options
6390
  }
6391
  }
6392
  ?>
6393
- <a href="<?php echo $seopress_docs_link['support']['security']['metaboxe_seo']; ?>" target="_blank" class="seopress-doc"><span class="dashicons dashicons-editor-help"></span><span class="screen-reader-text"><?php _e('Hook to filter Structured data types metabox call by post type - new window','wp-seopress'); ?></span></a>
6394
  <?php
6395
  }
6396
 
@@ -6425,7 +6447,7 @@ class seopress_options
6425
  }
6426
  }
6427
  ?>
6428
- <a href="<?php echo $seopress_docs_link['support']['security']['metaboxe_ca']; ?>" target="_blank" class="seopress-doc"><span class="dashicons dashicons-editor-help"></span><span class="screen-reader-text"><?php _e('Hook to filter Structured data types metabox call by post type - new window','wp-seopress'); ?></span></a>
6429
  <?php
6430
  }
6431
  }
544
  'tab_seopress_google_analytics_events' => __( "Events", "wp-seopress" ),
545
  'tab_seopress_google_analytics_custom_dimensions' => __( "Custom Dimensions", "wp-seopress" ),
546
  'tab_seopress_google_analytics_dashboard' => __( "Stats in Dashboard", "wp-seopress" ),
 
547
  );
548
  } else {
549
  $plugin_settings_tabs = array(
565
  <div class="seopress-tab <?php if ($current_tab == 'tab_seopress_google_analytics_custom_dimensions') { echo 'active'; } ?>" id="tab_seopress_google_analytics_custom_dimensions"><?php do_settings_sections( 'seopress-settings-admin-google-analytics-custom-dimensions' ); ?></div>
566
  <?php if (is_plugin_active('wp-seopress-pro/seopress-pro.php')) { ?>
567
  <div class="seopress-tab <?php if ($current_tab == 'tab_seopress_google_analytics_dashboard') { echo 'active'; } ?>" id="tab_seopress_google_analytics_dashboard"><?php do_settings_sections( 'seopress-settings-admin-google-analytics-dashboard' ); ?></div>
568
+ <?php } ?>
 
569
  </div>
570
 
571
  <?php submit_button(); ?>
785
  </div>
786
  <div class="seopress-tab <?php if ($current_tab == 'tab_seopress_tool_redirects') { echo 'active'; } ?>" id="tab_seopress_tool_redirects">
787
  <?php if (is_plugin_active('wp-seopress-pro/seopress-pro.php')) { ?>
788
+ <?php if(seopress_get_toggle_404_option()=='1') { ?>
789
+ <div id="section-import-redirects" class="postbox section-tool">
790
+ <div class="inside">
791
+ <h3><span><?php _e( 'Import Redirections', 'wp-seopress' ); ?></span></h3>
792
+ <p><?php _e( 'Import your own redirections from a .csv file (separator ";"). You must have 5 columns in this order: <ul><li>URL to match (without your domain name), </li><li>URL to redirect in absolute, </li><li>type of redirection (301, 302 or 307), </li><li>Yes to enable the redirect (leave it empty to disable the redirect) </li><li>and, last, the query parameter ("exact_match" = Exact match with all parameters, "without_param" = Exclude all parameters or "with_ignored_param" = Exclude all parameters and pass them to the redirection).</li></ul>', 'wp-seopress' ); ?></p>
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
793
  <p>
794
+ <a href="https://www.seopress.org/wp-content/uploads/csv/seopress-redirections-example.csv" target="_blank">
795
+ <?php _e('Download a CSV example','wp-seopress'); ?>
796
+ </a>
797
  </p>
798
+ <form method="post" enctype="multipart/form-data">
799
+ <p>
800
+ <input type="file" name="import_file"/>
801
+ </p>
802
+ <p>
803
+ <input type="hidden" name="seopress_action" value="import_redirections_settings" />
804
+ <?php wp_nonce_field( 'seopress_import_redirections_nonce', 'seopress_import_redirections_nonce' ); ?>
805
+ <?php submit_button( __( 'Import', 'wp-seopress' ), 'secondary', 'submit', false ); ?>
806
+ </p>
807
+ </form>
808
+ </div><!-- .inside -->
809
+ </div><!-- .postbox -->
810
+ <div id="section-import-redirects-plugin" class="postbox section-tool">
811
+ <div class="inside">
812
+ <h3><span><?php _e( 'Import Redirections from the Redirections plugin', 'wp-seopress' ); ?></span></h3>
813
+ <p><?php _e( 'Import your own redirections from a .json file generated by the Redirections plugin. Note that we do not support certain options, like regex. To avoid conflicts, make sure there are no duplicates between your file and existing redirects.', 'wp-seopress' ); ?></p>
814
+ <form method="post" enctype="multipart/form-data">
815
+ <p>
816
+ <input type="file" name="import_file"/>
817
+ </p>
818
+ <p>
819
+ <input type="hidden" name="seopress_action" value="import_redirections_plugin_settings" />
820
+ <?php wp_nonce_field( 'seopress_import_redirections_plugin_nonce', 'seopress_import_redirections_plugin_nonce' ); ?>
821
+ <?php submit_button( __( 'Import', 'wp-seopress' ), 'secondary', 'submit', false ); ?>
822
+ </p>
823
+ </form>
824
+ </div><!-- .inside -->
825
+ </div><!-- .postbox -->
826
+ <div id="section-import-yoast-redirects" class="postbox section-tool">
827
+ <div class="inside">
828
+ <h3><span><?php _e( 'Import Redirections from Yoast Premium', 'wp-seopress' ); ?></span></h3>
829
+ <p><?php _e( 'Import your own redirections from a .csv file generated by Yoast Premium. Note that we don\'t support certain options, like regex. To avoid conflicts, make sure there are no duplicates between your file and existing redirects.', 'wp-seopress' ); ?></p>
830
+ <form method="post" enctype="multipart/form-data">
831
+ <p>
832
+ <input type="file" name="import_file"/>
833
+ </p>
834
+ <p>
835
+ <input type="hidden" name="seopress_action" value="import_yoast_redirections" />
836
+ <?php wp_nonce_field( 'seopress_import_yoast_redirections_nonce', 'seopress_import_yoast_redirections_nonce' ); ?>
837
+ <?php submit_button( __( 'Import', 'wp-seopress' ), 'secondary', 'submit', false ); ?>
838
+ </p>
839
+ </form>
840
+ </div><!-- .inside -->
841
+ </div><!-- .postbox -->
842
+ <div id="section-export-redirects" class="postbox section-tool">
843
+ <div class="inside">
844
+ <h3><span><?php _e( 'Export Redirections', 'wp-seopress' ); ?></span></h3>
845
+ <p><?php _e( 'Export all redirections for this site as a .csv file. This allows you to easily import the redirections into another site, to Excel / Google Sheets...', 'wp-seopress' ); ?></p>
846
+ <form method="post">
847
+ <p><input type="hidden" name="seopress_action" value="export_redirections" /></p>
848
+ <p>
849
+ <?php wp_nonce_field( 'seopress_export_redirections_nonce', 'seopress_export_redirections_nonce' ); ?>
850
+ <?php submit_button( __( 'Export', 'wp-seopress' ), 'secondary', 'submit', false ); ?>
851
+ </p>
852
+ </form>
853
+ </div><!-- .inside -->
854
+ </div><!-- .postbox -->
855
+ <?php } else { ?>
856
+ <p><?php _e('Redirections feature is disabled. Please activate it from the PRO page.','wp-seopress'); ?></p>
857
+ <a href="<?php echo admin_url( 'admin.php?page=seopress-pro-page' ); ?>"><?php _e('Activate Redirections','wp-seopress'); ?></a>
858
+ <?php } ?>
859
  <?php } ?>
860
  </div>
861
  <div class="seopress-tab <?php if ($current_tab == 'tab_seopress_tool_reset') { echo 'active'; } ?>" id="tab_seopress_tool_reset">
999
  <div id="notice-wizard-alert" class="seopress-alert deleteable">
1000
  <p>
1001
  <span class="dashicons dashicons-warning"></span>
1002
+ <strong><?php _e('Configure SEOPress in a few minutes with our installation wizard','wp-seopress'); ?></strong>
1003
  </p>
1004
  <a class="button-primary" href="<?php echo admin_url( 'admin.php?page=seopress-setup' ); ?>"><?php _e('Start the wizard','wp-seopress'); ?></a>
1005
  <span name="notice-wizard" id="notice-wizard" class="dashicons dashicons-trash remove-notice" data-notice="notice-wizard"></span>
1045
  <div class="seopress-alert">
1046
  <p>
1047
  <span class="dashicons dashicons-warning"></span>
1048
+ <?php _e('We noticed that you use <strong>Yoast SEO</strong> plugin. <br>Do you want to migrate all your posts metadata to SEOPress?','wp-seopress'); ?>
1049
  </p>
1050
  <a class="button-primary" href="<?php echo admin_url( 'admin.php?page=seopress-import-export#yoast-migration-tool' ); ?>"><?php _e('Migrate!','wp-seopress'); ?></a>
1051
  </div>
1054
  <div class="seopress-alert">
1055
  <p>
1056
  <span class="dashicons dashicons-warning"></span>
1057
+ <?php _e('We noticed that you use <strong>All In One SEO Pack</strong> plugin. <br>Do you want to migrate all your posts metadata to SEOPress?','wp-seopress'); ?>
1058
  </p>
1059
  <a class="button-primary" href="<?php echo admin_url( 'admin.php?page=seopress-import-export#aio-migration-tool' ); ?>"><?php _e('Migrate!','wp-seopress'); ?></a>
1060
  </div>
1063
  <div class="seopress-alert">
1064
  <p>
1065
  <span class="dashicons dashicons-warning"></span>
1066
+ <?php _e('We noticed that you use another SEO plugin. <br>Do not use multiple SEO plugins at once to avoid conflicts!','wp-seopress'); ?>
1067
  </p>
1068
  </div>
1069
  <?php } ?>
1073
  <div class="seopress-alert">
1074
  <p>
1075
  <span class="dashicons dashicons-warning"></span>
1076
+ <?php _e('You have enabled 404 cleaning BUT the scheduled task is not running. <br>To solve this, please disable and re-enable SEOPress PRO.','wp-seopress'); ?>
1077
  </p>
1078
  </div>
1079
  <?php }
1386
 
1387
  <span id="spinner-reverse" class="spinner"></span>
1388
  </div>
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1389
  </div>
1390
  <?php } ?>
1391
  <div id="tab_seopress_links" class="seopress-tab seopress-useful-tools <?php if ($current_tab == 'tab_seopress_links') { echo 'active'; } ?>">
1703
  <h3><?php _e('Structured Data Types','wp-seopress'); ?></h3>
1704
  <p><?php _e('Add data types to your content: articles, courses, recipes, videos, events and products','wp-seopress'); ?></p>
1705
  <a class="button-secondary" href="<?php echo admin_url( 'admin.php?page=seopress-pro-page#tab=tab_seopress_rich_snippets$9' ); ?>"><?php _e('Manage','wp-seopress'); ?></a>
1706
+ <a class="button-secondary view-redirects" href="<?php echo admin_url( 'edit.php?post_type=seopress_schemas' ); ?>"><?php _e('See schemas','wp-seopress'); ?></a>
1707
  <?php
1708
  if(seopress_get_toggle_rich_snippets_option()=='1') {
1709
  $seopress_get_toggle_rich_snippets_option = '"1"';
1911
  <p><?php _e('Scan your site to find SEO problems.','wp-seopress'); ?></p>
1912
  <a class="button-secondary view-redirects" href="<?php echo admin_url( 'edit.php?post_type=seopress_bot' ); ?>"><?php _e('See broken links','wp-seopress'); ?></a>
1913
  <a class="button-secondary" href="<?php echo admin_url( 'admin.php?page=seopress-bot-batch' ); ?>"><?php _e('Scan','wp-seopress'); ?></a>
1914
+ <?php
1915
+ if(seopress_get_toggle_bot_option()=='1') {
1916
+ $seopress_get_toggle_bot_option = '"1"';
1917
+ } else {
1918
+ $seopress_get_toggle_bot_option = '"0"';
1919
+ }
1920
+ ?>
1921
+ <input type="checkbox" name="toggle-bot" id="toggle-bot" class="toggle" data-toggle=<?php echo $seopress_get_toggle_bot_option; ?>>
1922
+ <label for="toggle-bot"></label>
1923
+ <?php
1924
+ if(seopress_get_toggle_bot_option()=='1') {
1925
+ echo '<span id="bot-state-default" class="feature-state"><span class="dashicons dashicons-arrow-left-alt"></span>'.__('Click to disable this feature','wp-seopress').'</span>';
1926
+ echo '<span id="bot-state" class="feature-state feature-state-off"><span class="dashicons dashicons-arrow-left-alt"></span>'.__('Click to enable this feature','wp-seopress').'</span>';
1927
+ } else {
1928
+ echo '<span id="bot-state-default" class="feature-state"><span class="dashicons dashicons-arrow-left-alt"></span>'.__('Click to enable this feature','wp-seopress').'</span>';
1929
+ echo '<span id="bot-state" class="feature-state feature-state-off"><span class="dashicons dashicons-arrow-left-alt"></span>'.__('Click to disable this feature','wp-seopress').'</span>';
1930
+ }
1931
+ ?>
1932
  </span>
1933
  </div>
1934
  <div class="seopress-feature">
2809
 
2810
  add_settings_field(
2811
  'seopress_google_analytics_other_tracking', // ID
2812
+ __("[HEAD] Add an additional tracking code (like GTM, Facebook Pixel, Hotjar...)","wp-seopress"), // Title
2813
  array( $this, 'seopress_google_analytics_other_tracking_callback' ), // Callback
2814
  'seopress-settings-admin-google-analytics-features', // Page
2815
  'seopress_setting_section_google_analytics_features' // Section
2816
  );
2817
 
2818
+ add_settings_field(
2819
+ 'seopress_google_analytics_other_tracking_body', // ID
2820
+ __("[BODY] Add an additional tracking code (like Google Tag Manager...)","wp-seopress"), // Title
2821
+ array( $this, 'seopress_google_analytics_other_tracking_body_callback' ), // Callback
2822
+ 'seopress-settings-admin-google-analytics-features', // Page
2823
+ 'seopress_setting_section_google_analytics_features' // Section
2824
+ );
2825
+
2826
  add_settings_field(
2827
  'seopress_google_analytics_remarketing', // ID
2828
  __("Enable remarketing, demographics, and interests reporting","wp-seopress"), // Title
2982
 
2983
  add_settings_field(
2984
  'seopress_advanced_advanced_attachments_file', // ID
2985
+ __("Redirect attachment pages to their file URL","wp-seopress"), // Title
2986
  array( $this, 'seopress_advanced_advanced_attachments_file_callback' ), // Callback
2987
  'seopress-settings-admin-advanced-advanced', // Page
2988
  'seopress_setting_section_advanced_advanced' // Section
3312
  public function sanitize( $input )
3313
  {
3314
 
3315
+ $seopress_sanitize_fields = array('seopress_titles_sep','seopress_titles_home_site_title', 'seopress_titles_home_site_desc', 'seopress_titles_archives_author_title', 'seopress_titles_archives_author_desc', 'seopress_titles_archives_date_title', 'seopress_titles_archives_date_desc', 'seopress_titles_archives_search_title', 'seopress_titles_archives_search_desc', 'seopress_titles_archives_404_title', 'seopress_titles_archives_404_desc', 'seopress_xml_sitemap_html_exclude', 'seopress_social_knowledge_name', 'seopress_social_knowledge_img', 'seopress_social_knowledge_phone', 'seopress_social_accounts_facebook', 'seopress_social_accounts_twitter', 'seopress_social_accounts_pinterest', 'seopress_social_accounts_instagram', 'seopress_social_accounts_youtube', 'seopress_social_accounts_linkedin', 'seopress_social_accounts_myspace', 'seopress_social_accounts_soundcloud', 'seopress_social_accounts_tumblr', 'seopress_social_facebook_link_ownership_id', 'seopress_social_facebook_admin_id', 'seopress_social_facebook_app_id', 'seopress_google_analytics_ua', 'seopress_google_analytics_download_tracking','seopress_google_analytics_opt_out_msg', 'seopress_google_analytics_opt_out_msg_ok', 'seopress_google_analytics_other_tracking', 'seopress_google_analytics_other_tracking_body', 'seopress_google_analytics_optimize', 'seopress_google_analytics_ads','seopress_google_analytics_cross_domain' );
3316
 
3317
  $seopress_sanitize_site_verification = array('seopress_advanced_advanced_google', 'seopress_advanced_advanced_bing', 'seopress_advanced_advanced_pinterest', 'seopress_advanced_advanced_yandex' );
3318
 
3325
  'a' => array('href' => array(), 'target' => array())
3326
  );
3327
  $input[$value] = wp_kses($input[$value], $args);
3328
+ } elseif ((!empty( $input['seopress_google_analytics_other_tracking'] ) && $value =='seopress_google_analytics_other_tracking') || (!empty( $input['seopress_google_analytics_other_tracking_body'] ) && $value =='seopress_google_analytics_other_tracking_body')) {
3329
  $input[$value] = $input[$value]; //No sanitization for this field
3330
  } elseif( !empty( $input[$value] ) ) {
3331
  $input[$value] = sanitize_text_field( $input[$value] );
3352
 
3353
  public function print_section_info_titles()
3354
  {
3355
+ print __('<p>Customize your title & meta description for homepage</p>', 'wp-seopress');
3356
  }
3357
 
3358
  public function print_section_info_single()
3458
 
3459
  public function print_section_info_social_accounts()
3460
  {
3461
+ print __('<p>Link your site with your social accounts. Use markup on your website to add your social profile information to a Google Knowledge panel. Knowledge panels prominently display your social profile information in some Google Search results. Filling in these fields does not guarantee the display of this data in search results. It may take a long time to see these social-network links.</p>', 'wp-seopress');
3462
  echo '<img src="'.plugins_url('assets/img/help/google-knowledge-graph-social.png', dirname(dirname(__FILE__))).'" class="help-social">';
3463
  }
3464
 
3466
  {
3467
  print __('<p>Manage Open Graph data.</p>', 'wp-seopress');
3468
 
3469
+ echo __('<p>We generate the <strong>og:image</strong> meta in this order:</p>','wp-seopress');
3470
 
3471
  echo '
3472
  <ol>
3481
  {
3482
  print __('<p>Manage your Twitter card.</p>', 'wp-seopress');
3483
 
3484
+ echo __('<p>We generate the <strong>twitter:image</strong> meta in this order:</p>','wp-seopress');
3485
 
3486
  echo '
3487
  <ol>
3561
  esc_html( $this->options['seopress_titles_home_site_title'])
3562
  );
3563
  echo '<div class="wrap-tags"><span id="seopress-tag-site-title" data-tag="%%sitetitle%%" class="tag-title"><span class="dashicons dashicons-plus"></span>'.__('Site Title','wp-seopress').'</span>';
3564
+ echo '<span id="seopress-tag-site-sep" data-tag="%%sep%%" class="tag-title"><span class="dashicons dashicons-plus"></span>'.__('Separator','wp-seopress').'</span>';
3565
  echo '<span id="seopress-tag-site-desc" data-tag="%%tagline%%" class="tag-title"><span class="dashicons dashicons-plus"></span>'.__('Tagline','wp-seopress').'</span>';
3566
  echo '<span id="seopress-quick-help" class="tag-title more-tags"><span class="dashicons dashicons-menu"></span>'.__('More tags','wp-seopress').'</span></div>';
3567
  }
3598
 
3599
  echo "<script>
3600
  jQuery(document).ready(function($) {
3601
+ $('#seopress-tag-single-title-".$seopress_cpt_key."').click(function() {
3602
+ $('#seopress_titles_single_titles_".$seopress_cpt_key."').val($('#seopress_titles_single_titles_".$seopress_cpt_key."').val() + ' ' + $('#seopress-tag-single-title-".$seopress_cpt_key."').attr('data-tag'));
3603
  });
3604
+ $('#seopress-tag-sep-".$seopress_cpt_key."').click(function() {
3605
+ $('#seopress_titles_single_titles_".$seopress_cpt_key."').val($('#seopress_titles_single_titles_".$seopress_cpt_key."').val() + ' ' + $('#seopress-tag-sep-".$seopress_cpt_key."').attr('data-tag'));
3606
+ });
3607
+ $('#seopress-tag-single-sitetitle-".$seopress_cpt_key."').click(function() {
3608
+ $('#seopress_titles_single_titles_".$seopress_cpt_key."').val($('#seopress_titles_single_titles_".$seopress_cpt_key."').val() + ' ' + $('#seopress-tag-single-sitetitle-".$seopress_cpt_key."').attr('data-tag'));
3609
  });
3610
  });
3611
  </script>";
3617
 
3618
  echo '<div class="wrap-tags"><span id="seopress-tag-single-title-'.$seopress_cpt_key.'" data-tag="%%post_title%%" class="tag-title"><span class="dashicons dashicons-plus"></span>'.__('Post Title','wp-seopress').'</span>';
3619
 
3620
+ echo '<span id="seopress-tag-sep-'.$seopress_cpt_key.'" data-tag="%%sep%%" class="tag-title"><span class="dashicons dashicons-plus"></span>'.__('Separator','wp-seopress').'</span>';
3621
+
3622
  echo '<span id="seopress-tag-single-sitetitle-'.$seopress_cpt_key.'" data-tag="%%sitetitle%%" class="tag-title"><span class="dashicons dashicons-plus"></span>'.__('Site Title','wp-seopress').'</span>';
3623
 
3624
  echo '<span id="seopress-quick-help" class="tag-title more-tags"><span class="dashicons dashicons-menu"></span>'.__('More tags','wp-seopress').'</span></div>';
3696
  }
3697
 
3698
  echo '</div>';
3699
+
3700
+ //Single meta thumbnail CPT
3701
+ echo '<div class="seopress_wrap_single_cpt">';
3702
+
3703
+ $options = get_option( 'seopress_titles_option_name' );
3704
+
3705
+ $check = isset($options['seopress_titles_single_titles'][$seopress_cpt_key]['thumb_gcs']);
3706
+
3707
+ echo '<input id="seopress_titles_single_cpt_thumb_gcs['.$seopress_cpt_key.']" name="seopress_titles_option_name[seopress_titles_single_titles]['.$seopress_cpt_key.'][thumb_gcs]" type="checkbox"';
3708
+ if ('1' == $check) echo 'checked="yes"';
3709
+ echo ' value="1"/>';
3710
+
3711
+ echo '<label for="seopress_titles_single_cpt_thumb_gcs['.$seopress_cpt_key.']">'. __( 'Display post thumbnail in Google Custom Search results?', 'wp-seopress' ) .'</label>';
3712
+
3713
+ if (isset($this->options['seopress_titles_single_titles'][$seopress_cpt_key]['thumb_gcs'])) {
3714
+ esc_attr( $this->options['seopress_titles_single_titles'][$seopress_cpt_key]['thumb_gcs']);
3715
+ }
3716
+
3717
+ echo '</div>';
3718
  }
3719
  }
3720
 
3735
 
3736
  echo "<script>
3737
  jQuery(document).ready(function($) {
3738
+ $('#seopress-tag-tax-title-".$seopress_tax_key."').click(function() {
3739
+ $('#seopress_titles_tax_titles_".$seopress_tax_key."').val($('#seopress_titles_tax_titles_".$seopress_tax_key."').val() + ' ' + $('#seopress-tag-tax-title-".$seopress_tax_key."').attr('data-tag'));
3740
  });
3741
+ $('#seopress-tag-sep-".$seopress_tax_key."').click(function() {
3742
+ $('#seopress_titles_tax_titles_".$seopress_tax_key."').val($('#seopress_titles_tax_titles_".$seopress_tax_key."').val() + ' ' + $('#seopress-tag-sep-".$seopress_tax_key."').attr('data-tag'));
3743
+ });
3744
+ $('#seopress-tag-tax-sitetitle-".$seopress_tax_key."').click(function() {
3745
+ $('#seopress_titles_tax_titles_".$seopress_tax_key."').val($('#seopress_titles_tax_titles_".$seopress_tax_key."').val() + ' ' + $('#seopress-tag-tax-sitetitle-".$seopress_tax_key."').attr('data-tag'));
3746
  });
3747
  });
3748
  </script>";
3760
  echo '<div class="wrap-tags"><span id="seopress-tag-tax-title-'.$seopress_tax_key.'" data-tag="%%term_title%%" class="tag-title"><span class="dashicons dashicons-plus"></span>'.__('Term Title','wp-seopress').'</span>';
3761
  }
3762
 
3763
+ echo '<span id="seopress-tag-sep-'.$seopress_tax_key.'" data-tag="%%sep%%" class="tag-title"><span class="dashicons dashicons-plus"></span>'.__('Separator','wp-seopress').'</span>';
3764
+
3765
  echo '<span id="seopress-tag-tax-sitetitle-'.$seopress_tax_key.'" data-tag="%%sitetitle%%" class="tag-title"><span class="dashicons dashicons-plus"></span>'.__('Site Title','wp-seopress').'</span>';
3766
 
3767
  echo '<span id="seopress-quick-help" class="tag-title more-tags"><span class="dashicons dashicons-menu"></span>'.__('More tags','wp-seopress').'</span></div>';
3864
 
3865
  echo "<script>
3866
  jQuery(document).ready(function($) {
3867
+ $('#seopress-tag-archive-title-".$seopress_cpt_key."').click(function() {
3868
+ $('#seopress_titles_archive_titles_".$seopress_cpt_key."').val($('#seopress_titles_archive_titles_".$seopress_cpt_key."').val() + ' ' + $('#seopress-tag-archive-title-".$seopress_cpt_key."').attr('data-tag'));
3869
  });
3870
+ $('#seopress-tag-archive-sep-".$seopress_cpt_key."').click(function() {
3871
+ $('#seopress_titles_archive_titles_".$seopress_cpt_key."').val($('#seopress_titles_archive_titles_".$seopress_cpt_key."').val() + ' ' + $('#seopress-tag-archive-sep-".$seopress_cpt_key."').attr('data-tag'));
3872
+ });
3873
+ $('#seopress-tag-archive-sitetitle-".$seopress_cpt_key."').click(function() {
3874
+ $('#seopress_titles_archive_titles_".$seopress_cpt_key."').val($('#seopress_titles_archive_titles_".$seopress_cpt_key."').val() + ' ' + $('#seopress-tag-archive-sitetitle-".$seopress_cpt_key."').attr('data-tag'));
3875
  });
3876
  });
3877
  </script>";
3883
 
3884
  echo '<div class="wrap-tags"><span id="seopress-tag-archive-title-'.$seopress_cpt_key.'" data-tag="%%cpt_plural%%" class="tag-title"><span class="dashicons dashicons-plus"></span>'.__('Post Type Archive Name','wp-seopress').'</span>';
3885
 
3886
+ echo '<span id="seopress-tag-archive-sep-'.$seopress_cpt_key.'" data-tag="%%sep%%" class="tag-title"><span class="dashicons dashicons-plus"></span>'.__('Separator','wp-seopress').'</span>';
3887
+
3888
  echo '<span id="seopress-tag-archive-sitetitle-'.$seopress_cpt_key.'" data-tag="%%sitetitle%%" class="tag-title"><span class="dashicons dashicons-plus"></span>'.__('Site Title','wp-seopress').'</span>';
3889
 
3890
  echo '<span id="seopress-quick-help" class="tag-title more-tags"><span class="dashicons dashicons-menu"></span>'.__('More tags','wp-seopress').'</span></div>';
3962
  );
3963
 
3964
  echo '<div class="wrap-tags"><span id="seopress-tag-post-author" data-tag="%%post_author%%" class="tag-title"><span class="dashicons dashicons-plus"></span>'.__('Post author','wp-seopress').'</span>';
3965
+ echo '<span id="seopress-tag-sep-author" data-tag="%%sep%%" class="tag-title"><span class="dashicons dashicons-plus"></span>'.__('Separator','wp-seopress').'</span>';
3966
  echo '<span id="seopress-tag-site-title-author" data-tag="%%sitetitle%%" class="tag-title"><span class="dashicons dashicons-plus"></span>'.__('Site Title','wp-seopress').'</span>';
3967
  echo '<span id="seopress-quick-help" class="tag-title more-tags"><span class="dashicons dashicons-menu"></span>'.__('More tags','wp-seopress').'</span></div>';
3968
 
4033
  );
4034
 
4035
  echo '<div class="wrap-tags"><span id="seopress-tag-archive-date" data-tag="%%archive_date%%" class="tag-title"><span class="dashicons dashicons-plus"></span>'.__('Date archives','wp-seopress').'</span>';
4036
+ echo '<span id="seopress-tag-sep-date" data-tag="%%sep%%" class="tag-title"><span class="dashicons dashicons-plus"></span>'.__('Separator','wp-seopress').'</span>';
4037
  echo '<span id="seopress-tag-site-title-date" data-tag="%%sitetitle%%" class="tag-title"><span class="dashicons dashicons-plus"></span>'.__('Site Title','wp-seopress').'</span>';
4038
  echo '<span id="seopress-quick-help" class="tag-title more-tags"><span class="dashicons dashicons-menu"></span>'.__('More tags','wp-seopress').'</span></div>';
4039
 
4103
  );
4104
 
4105
  echo '<div class="wrap-tags"><span id="seopress-tag-search-keywords" data-tag="%%search_keywords%%" class="tag-title"><span class="dashicons dashicons-plus"></span>'.__('Search Keywords','wp-seopress').'</span>';
4106
+ echo '<span id="seopress-tag-sep-search" data-tag="%%sep%%" class="tag-title"><span class="dashicons dashicons-plus"></span>'.__('Separator','wp-seopress').'</span>';
4107
  echo '<span id="seopress-tag-site-title-search" data-tag="%%sitetitle%%" class="tag-title"><span class="dashicons dashicons-plus"></span>'.__('Site Title','wp-seopress').'</span>';
4108
  echo '<span id="seopress-quick-help" class="tag-title more-tags"><span class="dashicons dashicons-menu"></span>'.__('More tags','wp-seopress').'</span></div>';
4109
 
4155
 
4156
  );
4157
  echo '<div class="wrap-tags"><span id="seopress-tag-site-title-404" data-tag="%%sitetitle%%" class="tag-title"><span class="dashicons dashicons-plus"></span>'.__('Site Title','wp-seopress').'</span>';
4158
+ echo '<span id="seopress-tag-sep-404" data-tag="%%sep%%" class="tag-title"><span class="dashicons dashicons-plus"></span>'.__('Separator','wp-seopress').'</span>';
4159
  echo '<span id="seopress-quick-help" class="tag-title more-tags"><span class="dashicons dashicons-menu"></span>'.__('More tags','wp-seopress').'</span></div>';
 
4160
  }
4161
 
4162
  public function seopress_titles_archives_404_desc_callback()
4301
 
4302
  echo '<label for="seopress_titles_nositelinkssearchbox">'. __( 'nositelinkssearchbox', 'wp-seopress' ) .'</label>';
4303
 
4304
+ echo '<p class="description">'.__('Prevent Google to display a sitelinks searchbox in search results. Enable this option will remove the "Website" schema from your source code.','wp-seopress').'</p>';
4305
 
4306
  if (isset($this->options['seopress_titles_nositelinkssearchbox'])) {
4307
  esc_attr( $this->options['seopress_titles_nositelinkssearchbox']);
4663
 
4664
  <input id="seopress_social_knowledge_img_upload" class="button" type="button" value="'.__('Upload an Image','wp-seopress').'" />';
4665
 
4666
+ echo '<p class="description">'.__('JPG, PNG, and GIF allowed.', 'wp-seopress').'</p>';
4667
 
4668
  if (isset($this->options['seopress_social_knowledge_img'])) {
4669
  esc_attr( $this->options['seopress_social_knowledge_img']);
5165
  '<input type="text" name="seopress_google_analytics_option_name[seopress_google_analytics_optimize]" placeholder="'.esc_html__('Enter your Google Optimize container ID','wp-seopress').'" value="%s" aria-label="'.__('GTM-XXXXXXX','wp-seopress').'"/>',
5166
  esc_html($check));
5167
 
5168
+ echo '<p class="description">'.__('Google Optimize offers A/B testing, website testing & personalization tools.','wp-seopress').' <a href="https://marketingplatform.google.com/about/optimize/" target="_blank">'.__('Learn more','wp-seopress').'</a></p>';
5169
  }
5170
 
5171
  public function seopress_google_analytics_ads_callback()
5173
  $check = isset($this->options['seopress_google_analytics_ads']) ? $this->options['seopress_google_analytics_ads'] : NULL;
5174
 
5175
  printf(
5176
+ '<input type="text" name="seopress_google_analytics_option_name[seopress_google_analytics_ads]" placeholder="'.esc_html__('Enter your Google Ads conversion ID (eg: AW-123456789)','wp-seopress').'" value="%s" aria-label="'.__('AW-XXXXXXXXX','wp-seopress').'"/>',
5177
  esc_html($check));
5178
  }
5179
 
5182
  $check = isset($this->options['seopress_google_analytics_other_tracking']) ? $this->options['seopress_google_analytics_other_tracking'] : NULL;
5183
 
5184
  printf(
5185
+ '<textarea id="seopress_google_analytics_other_tracking" name="seopress_google_analytics_option_name[seopress_google_analytics_other_tracking]" rows="16" placeholder="'.esc_html__('Paste your tracking code here like Google Tag Manager (head)','wp-seopress').'" aria-label="'.__('Additional tracking code field','wp-seopress').'">%s</textarea>',
5186
  esc_textarea($check));
5187
 
5188
  echo '<p class="description">'.__('This code will be added in the head section of your page.','wp-seopress').'</a></p>';
5189
  }
5190
 
5191
+ public function seopress_google_analytics_other_tracking_body_callback()
5192
+ {
5193
+ $check = isset($this->options['seopress_google_analytics_other_tracking_body']) ? $this->options['seopress_google_analytics_other_tracking_body'] : NULL;
5194
+
5195
+ printf(
5196
+ '<textarea id="seopress_google_analytics_other_tracking_body" name="seopress_google_analytics_option_name[seopress_google_analytics_other_tracking_body]" rows="16" placeholder="'.esc_html__('Paste your tracking code here like Google Tag Manager (body)','wp-seopress').'" aria-label="'.__('Additional tracking code field added to body','wp-seopress').'">%s</textarea>',
5197
+ esc_textarea($check));
5198
+
5199
+ echo '<p class="description">'.__('This code will be added just after the opening body tag of your page.','wp-seopress').'</a></p>';
5200
+ }
5201
+
5202
  public function seopress_google_analytics_remarketing_callback()
5203
  {
5204
  $options = get_option( 'seopress_google_analytics_option_name' );
5288
  $check = isset($this->options['seopress_google_analytics_cross_domain']) ? $this->options['seopress_google_analytics_cross_domain'] : NULL;
5289
 
5290
  printf(
5291
+ '<input type="text" name="seopress_google_analytics_option_name[seopress_google_analytics_cross_domain]" placeholder="'.esc_html__('Enter your domains: seopress.org,sub.seopress.org,sub2.seopress.org','wp-seopress').'" value="%s" aria-label="'.__('Cross domains','wp-seopress').'"/>',
5292
  esc_html($check)
5293
 
5294
  );
5786
  if ('1' == $check) echo 'checked="yes"';
5787
  echo ' value="1"/>';
5788
 
5789
+ echo '<label for="seopress_advanced_advanced_attachments_file">'. __( 'Redirect attachment pages to their file URL (https://www.example.com/my-image-file.jpg)', 'wp-seopress' ) .'</label>';
5790
 
5791
+ echo '<p class="description">'.__('If this option is checked, it will take precedence over the redirection of attachments to the post\'s parent.','wp-seopress').'</p>';
5792
 
5793
  if (isset($this->options['seopress_advanced_advanced_attachments_file'])) {
5794
  esc_attr( $this->options['seopress_advanced_advanced_attachments_file']);
6412
  }
6413
  }
6414
  ?>
6415
+ <a href="<?php echo $seopress_docs_link['support']['security']['metaboxe_seo']; ?>" target="_blank" class="seopress-doc"><span class="dashicons dashicons-editor-help"></span><span class="screen-reader-text"><?php _e('Hook to filter structured data types metabox call by post type - new window','wp-seopress'); ?></span></a>
6416
  <?php
6417
  }
6418
 
6447
  }
6448
  }
6449
  ?>
6450
+ <a href="<?php echo $seopress_docs_link['support']['security']['metaboxe_ca']; ?>" target="_blank" class="seopress-doc"><span class="dashicons dashicons-editor-help"></span><span class="screen-reader-text"><?php _e('Hook to filter structured data types metabox call by post type - new window','wp-seopress'); ?></span></a>
6451
  <?php
6452
  }
6453
  }
inc/admin/adminbar.php CHANGED
@@ -57,12 +57,14 @@ function seopress_admin_bar_links() {
57
  ));
58
  include_once( ABSPATH . 'wp-admin/includes/plugin.php' );
59
  if ( is_plugin_active( 'wp-seopress-pro/seopress-pro.php' ) ) {
60
- $wp_admin_bar->add_menu( array(
61
- 'parent' => 'seopress_custom_top_level',
62
- 'id' => 'seopress_custom_sub_menu_bot',
63
- 'title' => __( 'BOT', 'wp-seopress' ),
64
- 'href' => admin_url( 'admin.php?page=seopress-bot-batch' ),
65
- ));
 
 
66
  $wp_admin_bar->add_menu( array(
67
  'parent' => 'seopress_custom_top_level',
68
  'id' => 'seopress_custom_sub_menu_license',
@@ -75,24 +77,30 @@ function seopress_admin_bar_links() {
75
  'title' => __( 'PRO', 'wp-seopress' ),
76
  'href' => admin_url( 'admin.php?page=seopress-pro-page' ),
77
  ));
78
- $wp_admin_bar->add_menu( array(
79
- 'parent' => 'seopress_custom_top_level',
80
- 'id' => 'seopress_custom_sub_menu_schemas',
81
- 'title' => __( 'Schemas', 'wp-seopress' ),
82
- 'href' => admin_url( 'edit.php?post_type=seopress_schemas' ),
83
- ));
84
- $wp_admin_bar->add_menu( array(
85
- 'parent' => 'seopress_custom_top_level',
86
- 'id' => 'seopress_custom_sub_menu_404',
87
- 'title' => __( 'Redirections', 'wp-seopress' ),
88
- 'href' => admin_url( 'edit.php?post_type=seopress_404' ),
89
- ));
90
- $wp_admin_bar->add_menu( array(
91
- 'parent' => 'seopress_custom_top_level',
92
- 'id' => 'seopress_custom_sub_menu_broken_links',
93
- 'title' => __( 'Broken Links', 'wp-seopress' ),
94
- 'href' => admin_url( 'edit.php?post_type=seopress_bot' ),
95
- ));
 
 
 
 
 
 
96
  $wp_admin_bar->add_menu( array(
97
  'parent' => 'seopress_custom_top_level',
98
  'id' => 'seopress_custom_sub_menu_backlinks',
57
  ));
58
  include_once( ABSPATH . 'wp-admin/includes/plugin.php' );
59
  if ( is_plugin_active( 'wp-seopress-pro/seopress-pro.php' ) ) {
60
+ if(seopress_get_toggle_bot_option()=='1') {
61
+ $wp_admin_bar->add_menu( array(
62
+ 'parent' => 'seopress_custom_top_level',
63
+ 'id' => 'seopress_custom_sub_menu_bot',
64
+ 'title' => __( 'BOT', 'wp-seopress' ),
65
+ 'href' => admin_url( 'admin.php?page=seopress-bot-batch' ),
66
+ ));
67
+ }
68
  $wp_admin_bar->add_menu( array(
69
  'parent' => 'seopress_custom_top_level',
70
  'id' => 'seopress_custom_sub_menu_license',
77
  'title' => __( 'PRO', 'wp-seopress' ),
78
  'href' => admin_url( 'admin.php?page=seopress-pro-page' ),
79
  ));
80
+ if(seopress_get_toggle_rich_snippets_option()=='1') {
81
+ $wp_admin_bar->add_menu( array(
82
+ 'parent' => 'seopress_custom_top_level',
83
+ 'id' => 'seopress_custom_sub_menu_schemas',
84
+ 'title' => __( 'Schemas', 'wp-seopress' ),
85
+ 'href' => admin_url( 'edit.php?post_type=seopress_schemas' ),
86
+ ));
87
+ }
88
+ if(seopress_get_toggle_404_option()=='1') {
89
+ $wp_admin_bar->add_menu( array(
90
+ 'parent' => 'seopress_custom_top_level',
91
+ 'id' => 'seopress_custom_sub_menu_404',
92
+ 'title' => __( 'Redirections', 'wp-seopress' ),
93
+ 'href' => admin_url( 'edit.php?post_type=seopress_404' ),
94
+ ));
95
+ }
96
+ if(seopress_get_toggle_bot_option()=='1') {
97
+ $wp_admin_bar->add_menu( array(
98
+ 'parent' => 'seopress_custom_top_level',
99
+ 'id' => 'seopress_custom_sub_menu_broken_links',
100
+ 'title' => __( 'Broken Links', 'wp-seopress' ),
101
+ 'href' => admin_url( 'edit.php?post_type=seopress_bot' ),
102
+ ));
103
+ }
104
  $wp_admin_bar->add_menu( array(
105
  'parent' => 'seopress_custom_top_level',
106
  'id' => 'seopress_custom_sub_menu_backlinks',
inc/admin/ajax.php CHANGED
@@ -96,9 +96,8 @@ function seopress_do_real_preview() {
96
  //Get Target Keywords
97
  if(isset($_GET['seopress_analysis_target_kw']) && !empty($_GET['seopress_analysis_target_kw'])) {
98
  $data['target_kws'] = $_GET['seopress_analysis_target_kw'];
99
- $seopress_analysis_target_kw = explode(',', get_post_meta($seopress_get_the_id,'_seopress_analysis_target_kw',true));
100
  }
101
-
102
  $xpath = new DOMXPath($dom);
103
 
104
  //Title
@@ -220,6 +219,13 @@ function seopress_do_real_preview() {
220
  }
221
  }
222
  }
 
 
 
 
 
 
 
223
  }
224
 
225
  //Images
@@ -257,7 +263,15 @@ function seopress_do_real_preview() {
257
  $nofollow_links = $xpath->query("//a[contains(@rel, 'nofollow')]");
258
  if (!empty($nofollow_links)) {
259
  foreach ($nofollow_links as $key=>$link) {
260
- $data['nofollow_links'][$key][] = $link->nodeValue;
 
 
 
 
 
 
 
 
261
  }
262
  }
263
 
96
  //Get Target Keywords
97
  if(isset($_GET['seopress_analysis_target_kw']) && !empty($_GET['seopress_analysis_target_kw'])) {
98
  $data['target_kws'] = $_GET['seopress_analysis_target_kw'];
99
+ $seopress_analysis_target_kw = array_filter(explode(',', get_post_meta($seopress_get_the_id,'_seopress_analysis_target_kw',true)));
100
  }
 
101
  $xpath = new DOMXPath($dom);
102
 
103
  //Title
219
  }
220
  }
221
  }
222
+
223
+ //Keywords density
224
+ foreach ($seopress_analysis_target_kw as $kw) {
225
+ if (preg_match_all('#\b('.$kw.')\b#iu', strip_tags(wp_filter_nohtml_kses($seopress_get_the_content)), $m)) {
226
+ $data['kws_density']['matches'][$kw][] = $m[0];
227
+ }
228
+ }
229
  }
230
 
231
  //Images
263
  $nofollow_links = $xpath->query("//a[contains(@rel, 'nofollow')]");
264
  if (!empty($nofollow_links)) {
265
  foreach ($nofollow_links as $key=>$link) {
266
+ $data['nofollow_links'][$key][$link->getAttribute('href')] = esc_attr($link->nodeValue);
267
+ }
268
+ }
269
+
270
+ //outbound links
271
+ $outbound_links = $xpath->query("//a[contains(@target, '_blank')]");
272
+ if (!empty($outbound_links)) {
273
+ foreach ($outbound_links as $key=>$link) {
274
+ $data['outbound_links'][$key][$link->getAttribute('href')] = esc_attr($link->nodeValue);
275
  }
276
  }
277
 
inc/functions/options-advanced-admin.php CHANGED
@@ -41,7 +41,7 @@ if (isset($pagenow) && $pagenow == 'options-permalink.php') {
41
  function seopress_notice_no_rewrite_url() {
42
  $class = 'notice notice-warning';
43
  $message = '<strong>'.__( 'WARNING', 'wp-seopress' ).'</strong>';
44
- $message .= '<p>'.__( 'URL rewriting is NOT enabled on your site. Select a permalink structure optimized for SEO (NOT Plain).', 'wp-seopress' ).'</p>';
45
 
46
  printf( '<div class="%1$s"><p>%2$s</p></div>', esc_attr( $class ), $message );
47
  }
41
  function seopress_notice_no_rewrite_url() {
42
  $class = 'notice notice-warning';
43
  $message = '<strong>'.__( 'WARNING', 'wp-seopress' ).'</strong>';
44
+ $message .= '<p>'.__( 'URL rewriting is NOT enabled on your site. Select a permalink structure that is optimized for SEO (NOT Plain).', 'wp-seopress' ).'</p>';
45
 
46
  printf( '<div class="%1$s"><p>%2$s</p></div>', esc_attr( $class ), $message );
47
  }
inc/functions/options-google-analytics-checkout.php DELETED
@@ -1,85 +0,0 @@
1
- <?php
2
- defined( 'ABSPATH' ) or die( 'Please don&rsquo;t call the plugin directly. Thanks :)' );
3
-
4
- //Google Analytics E-commerce
5
- //=================================================================================================
6
- //Measuring an Addition from Cart
7
- function seopress_google_analytics_js2($cart_item_key, $product_id, $quantity) {
8
- if (seopress_google_analytics_ecommerce_enable_option() =='1') {
9
-
10
- $seopress_google_analytics_html = "ga('require', 'ec');";
11
- $seopress_google_analytics_html .= "\n";
12
-
13
- //If WC enabled
14
- include_once( ABSPATH . 'wp-admin/includes/plugin.php' );
15
- if ( is_plugin_active( 'woocommerce/woocommerce.php' )) {
16
- $product = wc_get_product($product_id);
17
-
18
- $product_cat = get_the_terms($product_id, 'product_cat');
19
-
20
- $seopress_google_analytics_html = "
21
- ga('ec:addProduct', {
22
- 'id': ".$product_id.",
23
- 'name': '".$product->get_name()."',";
24
-
25
- if ($product_cat !='') {
26
- $seopress_google_analytics_html .= "
27
- 'category': '".$product_cat[0]->name."',";
28
- }
29
-
30
- if ($product->get_price() !='') {
31
- $seopress_google_analytics_html .= "
32
- 'price': '".$product->get_price()."',";
33
- }
34
-
35
- if ($quantity !='') {
36
- $seopress_google_analytics_html .= "
37
- 'quantity': ".$quantity;
38
- }
39
- $seopress_google_analytics_html .= "
40
- });
41
- ";
42
- $seopress_google_analytics_html .= "\n";
43
-
44
- $seopress_google_analytics_html .= "ga('ec:setAction', 'add');";
45
- $seopress_google_analytics_html .= "\n";
46
-
47
- $seopress_google_analytics_html .= "ga('send', 'event', 'UX', 'click', 'add to cart');";
48
- $seopress_google_analytics_html .= "\n";
49
-
50
- $seopress_google_analytics_html .= "\n";
51
-
52
- if (seopress_google_analytics_enable_option() =='1' && seopress_google_analytics_ua_option() !='') {
53
- if (is_user_logged_in()) {
54
- global $wp_roles;
55
-
56
- //Get current user role
57
- if(isset(wp_get_current_user()->roles[0])) {
58
- $seopress_user_role = wp_get_current_user()->roles[0];
59
- //If current user role matchs values from SEOPress GA settings then apply
60
- if (function_exists('seopress_google_analytics_roles_option') && seopress_google_analytics_roles_option() !='') {
61
- if( array_key_exists( $seopress_user_role, seopress_google_analytics_roles_option())) {
62
- //do nothing
63
- } else {
64
- if (function_exists('wc_enqueue_js')) {
65
- wc_enqueue_js($seopress_google_analytics_html);
66
- }
67
- }
68
- } else {
69
- if (function_exists('wc_enqueue_js')) {
70
- wc_enqueue_js($seopress_google_analytics_html);
71
- }
72
- }
73
- }
74
- } else {
75
- if (function_exists('wc_enqueue_js')) {
76
- wc_enqueue_js($seopress_google_analytics_html);
77
- }
78
- }
79
- }
80
- }
81
- }
82
- }
83
- add_action('woocommerce_add_to_cart', 'seopress_google_analytics_js2', 20, 3);
84
-
85
-
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
inc/functions/options-google-analytics-order.php DELETED
@@ -1,55 +0,0 @@
1
- <?php
2
- defined( 'ABSPATH' ) or die( 'Please don&rsquo;t call the plugin directly. Thanks :)' );
3
-
4
- //Google Analytics E-commerce
5
- //=================================================================================================
6
- function seopress_google_analytics_order_received() {
7
- $seopress_google_analytics_html ='';
8
- global $woocommerce;
9
- foreach( WC()->cart->get_cart() as $cart_item ){
10
-
11
- $product = wc_get_product($cart_item['product_id']);
12
- $product_cat = get_the_terms($cart_item['product_id'], 'product_cat');
13
-
14
- $seopress_google_analytics_html .= "
15
- ga('ec:addProduct', {
16
- 'id': '".$cart_item['product_id']."',
17
- 'name': '".$product->get_name()."',";
18
-
19
- if ($product_cat !='') {
20
- $seopress_google_analytics_html .= "
21
- 'category': '".$product_cat[0]->name."',";
22
- }
23
-
24
- if ($product->get_price() !='') {
25
- $seopress_google_analytics_html .= "
26
- 'price': '".$product->get_price()."',";
27
- }
28
-
29
- if ($cart_item['quantity'] !='') {
30
- $seopress_google_analytics_html .= "
31
- 'quantity': ".$cart_item['quantity'];
32
- }
33
- $seopress_google_analytics_html .= "
34
- });
35
- ";
36
- }
37
-
38
- $seopress_google_analytics_html .= "\n";
39
-
40
- $seopress_google_analytics_html .= "
41
- ga('ec:setAction', 'purchase', {
42
- 'id': 'daf9276a-3fa2-45a3-a591-495154662f7f',
43
- 'revenue': ".$woocommerce->cart->get_cart_total().",
44
- 'tax': 5,
45
- 'shipping': 5
46
- });
47
- ";
48
-
49
- $seopress_google_analytics_html .= "\n";
50
-
51
- if (function_exists('wc_enqueue_js')) {
52
- wc_enqueue_js($seopress_google_analytics_html);
53
- }
54
- }
55
- add_action('woocommerce_checkout_order_processed', 'seopress_google_analytics_order_received');
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
inc/functions/options-google-analytics.php CHANGED
@@ -21,9 +21,9 @@ if (seopress_google_analytics_disable_option() =='1' && ( (empty($_COOKIE["seopr
21
  if (seopress_google_analytics_opt_out_msg_option() !='') {
22
  $msg = seopress_google_analytics_opt_out_msg_option();
23
  } elseif (get_option('wp_page_for_privacy_policy')) {
24
- $msg = __('By visiting our site, you agree to our privacy policy regarding cookies, tracking statistics etc.&nbsp;<a href="[seopress_privacy_page]" tabindex="10">Read more</a>','wp-seopress');
25
  } else {
26
- $msg = __('By visiting our site, you agree to our privacy policy regarding cookies, tracking statistics etc.','wp-seopress');
27
  }
28
 
29
  if (get_option('wp_page_for_privacy_policy') && $msg !='') {
@@ -96,7 +96,7 @@ function seopress_google_analytics_ads_option() {
96
  }
97
  }
98
 
99
- //Additional tracking code
100
  function seopress_google_analytics_other_tracking_option() {
101
  $seopress_google_analytics_other_tracking_option = get_option("seopress_google_analytics_option_name");
102
  if ( ! empty ( $seopress_google_analytics_other_tracking_option ) ) {
@@ -108,6 +108,18 @@ function seopress_google_analytics_other_tracking_option() {
108
  }
109
  }
110
 
 
 
 
 
 
 
 
 
 
 
 
 
111
  //Remarketing
112
  function seopress_google_analytics_remarketing_option() {
113
  $seopress_google_analytics_remarketing_option = get_option("seopress_google_analytics_option_name");
@@ -578,11 +590,6 @@ $seopress_google_analytics_html .= "gtag('js', new Date());\n";
578
 
579
  $seopress_google_analytics_html = apply_filters('seopress_gtag_html', $seopress_google_analytics_html);
580
 
581
- if (seopress_google_analytics_other_tracking_option() !='') {
582
- $seo