SEOPress - Version 4.3

Version Description

(14/01/2021) = * NEW PHP 8 compatibility * NEW "Disable notifications on slug changes or post deletions" option from SEO, PRO, 404/301 tab (PRO) * NEW "Canonical URL" check added to content analysis * NEW Quickly enable/disable noindex/nofollow using Quick Edit feature from post lists * NEW Import Primary Category with our CSV import tool (PRO) * NEW Add a new field for automatic schema to get product price with taxes (PRO) * INFO Refactoring XML sitemaps feature to avoid conflicts with other plugins / themes * INFO Improve configuration wizard * INFO Improve design and accessibility for SEO columns from post lists * INFO Remove recommended links if White Label is enabled * INFO Improve UI / UX * INFO Strengthening security * INFO "seopress_sitemaps_single_img" filter can now be used without adding images to post content * INFO Converting Rank Math dynamic variables on migration * FIX Google Analysis stats in dashboard widget * FIX "Show content analysis score column in post types" option from SEO, Advanced, Appearance tab * FIX "Set default tab for Structured data metabox" option from SEO, Advanced, Appearance tab * FIX Password protected page meta * FIX Cookie bar backdrop * FIX RSS after/before content * FIX noindex on WooCommerce pages if WC toggle off * FIX Block editor notification on post save * FIX Conflict with Post Type Order plugin * FIX Notice: trying to get property "name" of non-object

View our complete changelog

Download this release

Release Info

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

Code changes from version 4.2.1 to 4.3

assets/css/seopress-setup.css CHANGED
@@ -1,16 +1,17 @@
1
  html {
2
- background-color: #f6f7f7;
3
- margin: 0;
4
  }
5
  body.seopress-setup {
6
- box-shadow: none;
7
- background: #f6f7f7;
8
- padding: 0;
9
- margin: 0;
10
- max-width: 100%;
11
  }
12
 
13
- .wp-core-ui .button, .wp-core-ui .button-secondary {
 
14
  color: #6159e6;
15
  border-color: #6159e6;
16
  background: #ffffff;
@@ -24,521 +25,592 @@ body.seopress-setup {
24
  }
25
 
26
  .wp-core-ui select:focus,
27
- input[type="text"]:focus, input[type="password"]:focus, input[type="color"]:focus, input[type="date"]:focus, input[type="datetime"]:focus, input[type="datetime-local"]:focus, input[type="email"]:focus, input[type="month"]:focus, input[type="number"]:focus, input[type="search"]:focus, input[type="tel"]:focus, input[type="time"]:focus, input[type="url"]:focus, input[type="week"]:focus, input[type="checkbox"]:focus, input[type="radio"]:focus, select:focus, textarea:focus {
28
- border-color: #6259e6;
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
29
  box-shadow: 0 0 0 1px #6259e6;
30
  outline: 2px solid transparent;
31
  }
32
 
33
  .seopress-setup .sp-progress-bar {
34
- background-color: #6159e6;
35
  }
36
 
37
  .spinner {
38
- display: inline-block
39
  }
40
 
41
  .log {
42
- margin: 0;
43
- text-transform: uppercase;
44
- display: inline-block;
45
- vertical-align: middle;
46
- padding: 5px;
47
- color: rgba(19, 191, 17, 1);
48
- font-style: italic
49
  }
50
 
51
  .admin_page_seopress_csv_importer.seopress-styles .seopress-option {
52
- max-width: 700px;
53
- margin: 40px auto;
54
  }
55
 
56
  .admin_page_seopress_csv_importer .description {
57
- color: #999;
58
- margin-top: 4px;
59
- display: block;
60
  }
61
 
62
  .admin_page_seopress_csv_importer .description code {
63
- background: 0 0;
64
- padding: 0;
65
- white-space: pre-line;
66
- word-wrap: break-word;
67
- word-break: break-all;
68
  }
69
 
70
  .admin_page_seopress_csv_importer .seopress-setup-content table thead th {
71
- font-weight: bold;
72
  }
73
 
74
- .admin_page_seopress_csv_importer .seopress-setup-content table tr:nth-child(odd) td {
75
- background: #fbfbfb;
 
 
 
 
76
  }
77
 
78
  .admin_page_seopress_csv_importer .seopress-setup-content table td select {
79
- width: 100%;
80
  }
81
 
82
  .admin_page_seopress_csv_importer .dashicons-yes-alt:before {
83
- color: #3642ff;
84
  }
85
 
86
  .admin_page_seopress_csv_importer .seopress-wizard-services {
87
- padding: 0;
88
  }
89
 
90
  .seopress-setup {
91
- text-align: center
92
  }
93
 
94
  .seopress-setup .select2-container {
95
- text-align: left;
96
- width: auto
97
  }
98
 
99
  .seopress-setup .hidden {
100
- display: none
101
  }
102
 
103
  .seopress-setup .seopress-setup-content {
104
- box-shadow: 0 1px 3px rgba(0, 0, 0, .13);
105
- padding: 2em;
106
- margin: 65px auto 24px;
107
- background: #fff;
108
- overflow: hidden;
109
- zoom: 1;
110
- text-align: center;
111
- max-width: 700px;
112
  }
113
 
114
  .seopress-setup-content h1,
115
  .seopress-setup-content h2,
116
  .seopress-setup-content h3,
117
  .seopress-setup-content table {
118
- margin: 0 0 20px;
119
- border: 0;
120
- padding: 0;
121
- color: #2c3338;
122
- clear: none;
123
- font-weight: 500
124
  }
125
 
126
  .seopress-setup-content p {
127
- margin: 20px 0;
128
- font-size: 1em;
129
- line-height: 1.75em;
130
- color: #50575e
131
  }
132
 
133
  .seopress-setup-content .m0 {
134
- margin: 0;
135
  }
136
 
137
  .seopress-setup-content table {
138
- font-size: 1em;
139
- line-height: 1.75em;
140
- color: #50575e;
141
- text-align: left;
142
  }
143
 
144
  .seopress-setup-content a {
145
- color: #6259e6
146
  }
147
 
148
  .seopress-setup-content a:focus,
149
  .seopress-setup-content a:hover {
150
- color: #111
151
  }
152
 
153
- .seopress-option #seopress-edd-license-btn, .seopress-option #seopress-refresh {
154
- width: auto;
 
155
  }
156
 
157
  .seopress-setup-content .form-table th {
158
- width: 35%;
159
- vertical-align: top;
160
- font-weight: 400
161
  }
162
 
163
  .seopress-setup-content .form-table td {
164
- vertical-align: top
165
  }
166
 
167
  .seopress-setup-content .form-table td input,
168
  .seopress-setup-content .form-table td select {
169
- width: 100%;
170
- box-sizing: border-box
171
  }
172
 
173
  .seopress-setup-content .form-table td input[size] {
174
- width: auto
175
  }
176
 
177
  .seopress-setup-content .form-table td .description {
178
- line-height: 1.5em;
179
- display: block;
180
- margin-top: .25em;
181
- color: #999;
182
- font-style: italic
183
  }
184
 
185
  .seopress-setup-content .form-table td .input-checkbox,
186
  .seopress-setup-content .form-table td .input-radio {
187
- width: auto;
188
- box-sizing: inherit;
189
- padding: inherit;
190
- margin: 0 .5em 0 0;
191
- box-shadow: none
192
  }
193
 
194
  .seopress-setup-content .form-table .section_title td {
195
- padding: 0
196
  }
197
 
198
  .seopress-setup-content .form-table .section_title td h2,
199
  .seopress-setup-content .form-table .section_title td p {
200
- margin: 12px 0 0
201
  }
202
 
203
  .seopress-setup-content .form-table td,
204
  .seopress-setup-content .form-table th {
205
- padding: 12px 0;
206
- margin: 0;
207
- border: 0
208
  }
209
 
210
  .seopress-setup-content .form-table td:first-child,
211
  .seopress-setup-content .form-table th:first-child {
212
- padding-right: 1em
213
  }
214
 
215
  .seopress-setup-content .seopress-setup-pages {
216
- width: 100%;
217
- border-top: 1px solid #eee
218
  }
219
 
220
  .seopress-setup-content .seopress-setup-pages thead th {
221
- display: none
222
  }
223
 
224
  .seopress-setup-content .seopress-setup-pages .page-name {
225
- width: 30%;
226
- font-weight: 700
227
  }
228
 
229
  .seopress-setup-content .seopress-setup-pages td,
230
  .seopress-setup-content .seopress-setup-pages th {
231
- padding: 14px 0;
232
- border-bottom: 1px solid #eee
233
  }
234
 
235
  .seopress-setup-content .seopress-setup-pages td:first-child,
236
  .seopress-setup-content .seopress-setup-pages th:first-child {
237
- padding-right: 9px
238
  }
239
 
240
  .seopress-setup-content .seopress-setup-pages th {
241
- padding-top: 0
242
  }
243
 
244
  .seopress-setup-content .seopress-setup-pages .page-options p {
245
- color: #777;
246
- margin: 6px 0 0 24px;
247
- line-height: 1.75em
248
  }
249
 
250
  .seopress-setup-content .seopress-setup-pages .page-options p input {
251
- vertical-align: middle;
252
- margin: 1px 0 0;
253
- height: 1.75em;
254
- width: 1.75em;
255
- line-height: 1.75em
256
  }
257
 
258
  .seopress-setup-content .seopress-setup-pages .page-options p label {
259
- line-height: 1
260
  }
261
 
262
- @media screen and (max-width:782px) {
263
- .seopress-setup-content .form-table tbody th {
264
- width: auto
265
- }
266
  }
267
 
268
  .seopress-setup-content .twitter-share-button {
269
- float: right
270
  }
271
 
272
  .seopress-setup-content .seopress-setup-next-steps {
273
- overflow: hidden;
274
- margin: 0 0 24px;
275
- padding-bottom: 2px
276
  }
277
 
278
  .seopress-setup-content .seopress-setup-next-steps h2 {
279
- margin-bottom: 12px
280
  }
281
 
282
- .seopress-setup-content .seopress-setup-next-steps .seopress-setup-next-steps-first {
283
- float: left;
284
- width: 50%;
285
- box-sizing: border-box
 
 
286
  }
287
 
288
- .seopress-setup-content .seopress-setup-next-steps .seopress-setup-next-steps-last {
289
- float: right;
290
- width: 50%;
291
- box-sizing: border-box
 
 
292
  }
293
 
294
  .seopress-setup-content .seopress-setup-next-steps ul {
295
- padding: 0 2em 0 0;
296
- list-style: none outside;
297
- margin: 0
298
  }
299
 
300
  .seopress-setup-content .seopress-setup-next-steps ul li a {
301
- display: block;
302
- padding: 0 0 .75em
303
  }
304
 
305
  .seopress-setup-content .seopress-setup-next-steps ul .setup-product a.button {
306
- background-color: #f7f7f7;
307
- border-color: #ccc;
308
- color: #23282d;
309
- box-shadow: inset 0 1px 0 rgba(255, 255, 255, .25), 0 1px 0 #ccc;
310
- text-shadow: 1px 0 1px #eee, 0 1px 1px #eee;
311
- font-size: 1em;
312
- height: auto;
313
- line-height: 1.75em;
314
- margin: 0 0 .75em;
315
- opacity: 1;
316
- padding: 1em;
317
- text-align: center
318
- }
319
-
320
- .seopress-setup-content .seopress-setup-next-steps ul .setup-product a.button:active,
321
- .seopress-setup-content .seopress-setup-next-steps ul .setup-product a.button:focus,
322
- .seopress-setup-content .seopress-setup-next-steps ul .setup-product a.button:hover {
323
- background: #f5f5f5;
324
- border-color: #aaa
325
- }
326
-
327
- .seopress-setup-content .seopress-setup-next-steps ul .setup-product a.button-primary {
328
- color: #fff;
329
- background-color: #bb77ae;
330
- border-color: #a36597;
331
- box-shadow: inset 0 1px 0 rgba(255, 255, 255, .25), 0 1px 0 #a36597;
332
- text-shadow: 0 -1px 1px #a36597, 1px 0 1px #a36597, 0 1px 1px #a36597, -1px 0 1px #a36597
333
- }
334
-
335
- .seopress-setup-content .seopress-setup-next-steps ul .setup-product a.button-primary:active,
336
- .seopress-setup-content .seopress-setup-next-steps ul .setup-product a.button-primary:focus,
337
- .seopress-setup-content .seopress-setup-next-steps ul .setup-product a.button-primary:hover {
338
- color: #fff;
339
- background: #a36597;
340
- border-color: #a36597;
341
- box-shadow: inset 0 1px 0 rgba(255, 255, 255, .25), 0 1px 0 #a36597
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
342
  }
343
 
344
  .seopress-setup-content .seopress-setup-next-steps ul li a::before {
345
- color: #82878c;
346
- font: normal 20px/1 dashicons;
347
- speak: none;
348
- display: inline-block;
349
- padding: 0 10px 0 0;
350
- top: 1px;
351
- position: relative;
352
- text-decoration: none!important;
353
- vertical-align: top
354
  }
355
 
356
  .seopress-setup-content .seopress-setup-next-steps ul .learn-more a::before {
357
- content: "\f105"
358
  }
359
 
360
- .seopress-setup-content .seopress-setup-next-steps ul .video-walkthrough a::before {
361
- content: "\f126"
 
 
 
 
362
  }
363
 
364
  .seopress-setup-content .seopress-setup-next-steps ul .newsletter a::before {
365
- content: "\f465"
366
  }
367
 
368
  .seopress-setup-content .updated,
369
  .seopress-setup-content .seopress-newsletter {
370
- padding: 24px;
371
- margin: 0 0 24px;
372
- overflow: hidden;
373
- background: #f5f5f5
374
  }
375
 
376
  .seopress-setup-content .updated p,
377
  .seopress-setup-content .seopress-newsletter p {
378
- padding: 0;
379
- margin: 0 0 12px
380
  }
381
 
382
  .seopress-setup-content .updated form,
383
  .seopress-setup-content .updated p:last-child,
384
  .seopress-setup-content .seopress-newsletter form,
385
  .seopress-setup-content .seopress-tracker {
386
- margin: 24px 0;
387
- border: 1px solid #eee;
388
- padding: 20px;
389
- border-radius: 4px;
390
- overflow: hidden
391
  }
392
 
393
  .seopress-setup-content .seopress-tracker p {
394
- font-size: 14px;
395
- line-height: 1.5em
396
  }
397
 
398
  .seopress-setup-content .seopress-tracker .checkbox {
399
- line-height: 24px;
400
- font-weight: 500;
401
- font-size: 1em;
402
- margin-top: 0;
403
- margin-bottom: 20px
404
  }
405
 
406
- .seopress-setup-content .checkbox input[type=checkbox] {
407
- opacity: 0;
408
- position: absolute;
409
- left: -9999px
410
  }
411
 
412
  .seopress-setup-content .checkbox label {
413
- position: relative;
414
- display: inline-block;
415
- padding-left: 28px
416
  }
417
 
418
  .seopress-setup-content .checkbox label::after,
419
  .seopress-setup-content .checkbox label::before {
420
- position: absolute;
421
- content: "";
422
- display: inline-block
423
  }
424
 
425
  .seopress-setup-content .checkbox label::before {
426
- height: 16px;
427
- width: 16px;
428
- left: 0;
429
- top: 3px;
430
- border: 1px solid #aaa;
431
- background-color: #fff;
432
- border-radius: 3px
433
  }
434
 
435
  .seopress-setup-content .checkbox label::after {
436
- height: 5px;
437
- width: 9px;
438
- border-left: 2px solid;
439
- border-bottom: 2px solid;
440
- -webkit-transform: rotate(-45deg);
441
- -ms-transform: rotate(-45deg);
442
- transform: rotate(-45deg);
443
- left: 4px;
444
- top: 7px;
445
- color: #fff
446
- }
447
-
448
- .seopress-setup-content .checkbox input[type=checkbox]+label::after {
449
- content: none
450
- }
451
-
452
- .seopress-setup-content .checkbox input[type=checkbox]:checked+label::after {
453
- content: ""
 
 
 
454
  }
455
 
456
- .seopress-setup-content .checkbox input[type=checkbox]:focus+label::before {
457
- outline: #3b99fc auto 5px
458
  }
459
 
460
- .seopress-setup-content .checkbox input[type=checkbox]:checked+label::before {
461
- background: #6259e6;
462
- border-color: #6259e6
 
 
 
463
  }
464
 
465
  .seopress-setup-steps {
466
- padding: 10px 0 24px;
467
- margin: 0;
468
- list-style: none outside;
469
- overflow: hidden;
470
- color: #ccc;
471
- width: 100%;
472
- height: 56px;
473
- border-bottom: 1px solid #dcdcde;
474
- align-items: center;
475
- justify-content: center;
476
- background: #fff;
477
- display: inline-flex;
478
  }
479
 
480
  .seopress-setup-steps li {
481
- width: 100%;
482
- float: left;
483
- padding: 0 0 1.5em;
484
- margin: 0;
485
- text-align: center;
486
- position: relative;
487
- border-bottom: 2px solid #ccc;
488
- line-height: 24px;
489
- font-size: 16px;
490
  }
491
 
492
  .seopress-setup-steps li a {
493
- text-decoration: none;
494
- padding: 1.5em;
495
- position: relative;
496
- z-index: 1;
497
- color: #1d2327;
498
- line-height: 24px;
499
- font-size: 16px;
500
- transition: color 300ms linear;
501
  }
502
 
503
  .seopress-setup-steps li a:focus,
504
  .seopress-setup-steps li a:hover {
505
- color: #6159e6;
506
  }
507
 
508
  .seopress-setup-steps li::before {
509
- content: "";
510
- border: 3px solid #ccc;
511
- border-radius: 100%;
512
- width: 24px;
513
- height: 24px;
514
- position: absolute;
515
- bottom: 0;
516
- left: 50%;
517
- margin-left: -15px;
518
- margin-bottom: -15px;
519
- background: #fff;
520
- font-family: 'Dashicons';
521
- font-size: 24px;
522
- line-height: 24px;
523
  }
524
 
525
  .seopress-setup-steps li.active {
526
- color: #6259e6;
527
- font-weight: 700;
528
- text-decoration: none;
529
- position: relative;
530
- z-index: 1;
531
- color: #1d2327;
532
- line-height: 24px;
533
  }
534
 
535
  .seopress-setup-steps li.active::before {
536
- border-color: #6259e6;
537
  }
538
 
539
  @keyframes fade {
540
- 0% {border-color: #6259e600;left:-100%;}
541
- 100% {border-color: #6259e6;left: 0;}
 
 
 
 
 
 
542
  }
543
 
544
  .seopress-setup-steps li.active::after {
@@ -556,1050 +628,1142 @@ input[type="text"]:focus, input[type="password"]:focus, input[type="color"]:focu
556
  }
557
 
558
  .seopress-setup-steps li.done {
559
- border-color: #6259e6;
560
- color: #6259e6;
561
- z-index: 10;
562
  }
563
 
564
  .seopress-setup-steps li.done::before {
565
- border-color: #6259e6;
566
- background: #6259e6;
567
- content: "\f147";
568
- color: #fff;
569
  }
570
 
571
  .seopress-setup .seopress-setup-actions {
572
- overflow: hidden;
573
- margin: 20px 0 0;
574
- position: relative
575
  }
576
 
577
  .seopress-setup .seopress-setup-actions .button {
578
- font-size: 1.25em;
579
- padding: .5em 1em;
580
- line-height: 1em;
581
- margin-right: .5em;
582
- margin-bottom: 2px;
583
- height: auto;
584
- border-radius: 4px
585
  }
586
 
587
  .seopress-setup .seopress-setup-actions .button-primary {
588
- background-color: #6259e6;
589
- border-color: #6259e6;
590
- margin: 0;
591
- opacity: 1;
592
- transition: all 300ms linear;
593
- color:#fff;
594
  }
595
 
596
  .seopress-setup .seopress-setup-actions .button-primary:active,
597
  .seopress-setup .seopress-setup-actions .button-primary:focus,
598
  .seopress-setup .seopress-setup-actions .button-primary:hover {
599
- background: none;
600
- border-color: #6259e6;
601
- color: #6259e6
602
  }
603
 
604
  .seopress-setup-content p:last-child {
605
- margin-bottom: 0
606
  }
607
 
608
  .seopress-setup-content p.store-setup {
609
- margin-top: 0
610
  }
611
 
612
  .seopress-setup-footer-links {
613
- font-size: .85em;
614
- color: #7b7b7b;
615
- margin: 1.18em auto;
616
- display: inline-block;
617
- text-align: center
618
  }
619
 
620
  .seopress-wizard-services {
621
- border: 1px solid #eee;
622
- padding: 1em;
623
- margin: 0 0 1em;
624
- list-style: none outside;
625
- border-radius: 4px;
626
- overflow: hidden;
627
- text-align: left;
628
  }
629
 
630
  .seopress-wizard-services p {
631
- margin: 0 0 1em 0;
632
- padding: 0;
633
- font-size: 1em;
634
- line-height: 1.5em
635
  }
636
 
637
  .seopress-wizard-service-item,
638
  .seopress-wizard-services-list-toggle {
639
- display: -webkit-box;
640
- display: -webkit-flex;
641
- display: flex;
642
- -webkit-flex-wrap: nowrap;
643
- flex-wrap: nowrap;
644
- -webkit-box-pack: justify;
645
- -webkit-justify-content: space-between;
646
- justify-content: space-between;
647
- padding: 0;
648
- color: #50575e;
649
- -webkit-box-align: center;
650
- -webkit-align-items: center;
651
- align-items: center;
652
- margin: 1rem 0;
 
 
 
 
 
653
  }
654
 
655
  .seopress-wizard-service-item:last-child,
656
  .seopress-wizard-services-list-toggle:last-child {
657
- border-bottom: 0
658
  }
659
 
660
  .seopress-wizard-service-item .payment-gateway-fee,
661
  .seopress-wizard-services-list-toggle .payment-gateway-fee {
662
- color: #a6a6a6
663
  }
664
 
665
  .seopress-wizard-service-item .seopress-wizard-service-name,
666
  .seopress-wizard-services-list-toggle .seopress-wizard-service-name {
667
- -webkit-flex-basis: 0;
668
- flex-basis: 0;
669
- min-width: 160px;
670
- text-align: center;
671
- font-weight: 700;
672
- padding: 2em 0;
673
- -webkit-align-self: stretch;
674
- align-self: stretch;
675
- display: -webkit-box;
676
- display: -webkit-flex;
677
- display: flex;
678
- -webkit-box-align: baseline;
679
- -webkit-align-items: baseline;
680
- align-items: baseline
681
- }
682
-
683
- .seopress-wizard-payment-gateway-form .seopress-wizard-service-item .seopress-wizard-service-name,
684
- .seopress-wizard-payment-gateway-form .seopress-wizard-services-list-toggle .seopress-wizard-service-name {
685
- -webkit-box-pack: center;
686
- -webkit-justify-content: center;
687
- justify-content: center
 
 
 
 
688
  }
689
 
690
  .seopress-wizard-service-item .seopress-wizard-service-name img,
691
  .seopress-wizard-services-list-toggle .seopress-wizard-service-name img {
692
- max-width: 75px
693
  }
694
 
695
  .seopress-wizard-service-item.stripe-logo .seopress-wizard-service-name img,
696
- .seopress-wizard-services-list-toggle.stripe-logo .seopress-wizard-service-name img {
697
- padding: 8px 0
 
 
698
  }
699
 
700
  .seopress-wizard-service-item.paypal-logo .seopress-wizard-service-name img,
701
- .seopress-wizard-services-list-toggle.paypal-logo .seopress-wizard-service-name img {
702
- max-width: 87px;
703
- padding: 2px 0
 
 
704
  }
705
 
706
  .seopress-wizard-service-item.klarna-logo .seopress-wizard-service-name img,
707
- .seopress-wizard-services-list-toggle.klarna-logo .seopress-wizard-service-name img {
708
- max-width: 87px;
709
- padding: 12px 0
 
 
710
  }
711
 
712
  .seopress-wizard-service-item.square-logo .seopress-wizard-service-name img,
713
- .seopress-wizard-services-list-toggle.square-logo .seopress-wizard-service-name img {
714
- max-width: 95px;
715
- padding: 12px 0
 
 
716
  }
717
 
718
  .seopress-wizard-service-item.eway-logo .seopress-wizard-service-name img,
719
- .seopress-wizard-services-list-toggle.eway-logo .seopress-wizard-service-name img {
720
- max-width: 87px
 
 
721
  }
722
 
723
  .seopress-wizard-service-item.payfast-logo .seopress-wizard-service-name img,
724
- .seopress-wizard-services-list-toggle.payfast-logo .seopress-wizard-service-name img {
725
- max-width: 140px
 
 
726
  }
727
 
728
  .seopress-wizard-service-item .seopress-wizard-service-description,
729
  .seopress-wizard-services-list-toggle .seopress-wizard-service-description {
730
- -webkit-box-flex: 1;
731
- -webkit-flex-grow: 1;
732
- flex-grow: 1;
733
- padding: 20px
734
  }
735
 
736
  .seopress-wizard-service-item .seopress-wizard-service-description p,
737
  .seopress-wizard-services-list-toggle .seopress-wizard-service-description p {
738
- margin-bottom: 1em
739
  }
740
 
741
  .seopress-wizard-service-item .seopress-wizard-service-description p:last-child,
742
- .seopress-wizard-services-list-toggle .seopress-wizard-service-description p:last-child {
743
- margin-bottom: 0
 
 
744
  }
745
 
746
- .seopress-wizard-service-item .seopress-wizard-service-description .seopress-wizard-service-settings-description,
747
- .seopress-wizard-services-list-toggle .seopress-wizard-service-description .seopress-wizard-service-settings-description {
748
- display: block;
749
- font-style: italic;
750
- color: #999
 
 
 
 
751
  }
752
 
753
  .seopress-wizard-service-item .seopress-wizard-service-enable,
754
  .seopress-wizard-services-list-toggle .seopress-wizard-service-enable {
755
- -webkit-flex-basis: 0;
756
- flex-basis: 0;
757
- min-width: 75px;
758
- text-align: center;
759
- cursor: pointer;
760
- padding: 2em 0;
761
- position: relative;
762
- max-height: 1.5em;
763
- -webkit-align-self: flex-start;
764
- align-self: flex-start;
765
- -webkit-box-ordinal-group: 4;
766
- -webkit-order: 3;
767
- order: 3
768
  }
769
 
770
  .seopress-wizard-service-item .seopress-wizard-service-toggle,
771
  .seopress-wizard-services-list-toggle .seopress-wizard-service-toggle {
772
- height: 16px;
773
- width: 32px;
774
- border: 2px solid #935687;
775
- background-color: #935687;
776
- display: inline-block;
777
- text-indent: -9999px;
778
- border-radius: 10em;
779
- position: relative
780
  }
781
 
782
- .seopress-wizard-service-item .seopress-wizard-service-toggle input[type=checkbox],
783
- .seopress-wizard-services-list-toggle .seopress-wizard-service-toggle input[type=checkbox] {
784
- display: none
 
 
 
 
785
  }
786
 
787
  .seopress-wizard-service-item .seopress-wizard-service-toggle::before,
788
  .seopress-wizard-services-list-toggle .seopress-wizard-service-toggle::before {
789
- content: "";
790
- display: block;
791
- width: 16px;
792
- height: 16px;
793
- background: #fff;
794
- position: absolute;
795
- top: 0;
796
- right: 0;
797
- border-radius: 100%
798
  }
799
 
800
  .seopress-wizard-service-item .seopress-wizard-service-toggle.disabled,
801
  .seopress-wizard-services-list-toggle .seopress-wizard-service-toggle.disabled {
802
- border-color: #999;
803
- background-color: #999
804
  }
805
 
806
  .seopress-wizard-service-item .seopress-wizard-service-toggle.disabled::before,
807
- .seopress-wizard-services-list-toggle .seopress-wizard-service-toggle.disabled::before {
808
- right: auto;
809
- left: 0
 
810
  }
811
 
812
  .seopress-wizard-service-item .seopress-wizard-service-settings,
813
  .seopress-wizard-services-list-toggle .seopress-wizard-service-settings {
814
- display: none;
815
- margin-top: .75em;
816
- margin-bottom: 0;
817
- cursor: default
818
  }
819
 
820
  .seopress-wizard-service-item .seopress-wizard-service-settings.hide,
821
  .seopress-wizard-services-list-toggle .seopress-wizard-service-settings.hide {
822
- display: none
823
  }
824
 
825
  .seopress-wizard-service-item.checked .seopress-wizard-service-settings,
826
- .seopress-wizard-services-list-toggle.checked .seopress-wizard-service-settings {
827
- display: inline-block
 
828
  }
829
 
830
  .seopress-wizard-service-item.checked .seopress-wizard-service-settings.hide,
831
- .seopress-wizard-services-list-toggle.checked .seopress-wizard-service-settings.hide {
832
- display: none
 
833
  }
834
 
835
  .seopress-wizard-service-item.closed,
836
  .seopress-wizard-services-list-toggle.closed {
837
- border-bottom: 0
838
  }
839
 
840
  .seopress-wizard-services-list-toggle {
841
- cursor: pointer
842
  }
843
 
844
  .seopress-wizard-services-list-toggle .seopress-wizard-service-enable::before {
845
- content: "\f343";
846
- font-family: dashicons;
847
- visibility: initial;
848
- color: #50575e;
849
- font-size: 25px;
850
- margin-top: -7px;
851
- margin-left: -5px;
852
- position: absolute;
853
- visibility: visible
854
  }
855
 
856
- .seopress-wizard-services-list-toggle.closed .seopress-wizard-service-enable::before {
857
- content: "\f347"
 
858
  }
859
 
860
  .seopress-wizard-services-list-toggle .seopress-wizard-service-enable input {
861
- visibility: hidden;
862
- position: relative
863
  }
864
 
865
  .seopress-wizard-services.manual .seopress-wizard-service-item {
866
- display: none
867
  }
868
 
869
  .seopress-wizard-services.shipping {
870
- margin: 0
871
  }
872
 
873
  .seopress-wizard-services.shipping .seopress-wizard-service-name {
874
- font-weight: 400;
875
- text-align: left;
876
- -webkit-box-align: center;
877
- -webkit-align-items: center;
878
- align-items: center;
879
- max-height: 5em;
880
- padding: 0
881
  }
882
 
883
  .seopress-wizard-services.shipping .seopress-wizard-service-item {
884
- padding-left: 2em;
885
- padding-top: .67em
886
  }
887
 
888
  .seopress-wizard-services.shipping .seopress-wizard-service-item:first-child {
889
- border-bottom: 0;
890
- padding-bottom: 0;
891
- font-weight: 700
892
  }
893
 
894
- .seopress-wizard-services.shipping .seopress-wizard-service-item:first-child .seopress-wizard-service-name {
895
- font-weight: 700
 
 
896
  }
897
 
898
  .seopress-wizard-services.shipping .shipping-method-setting,
899
  .seopress-wizard-services.shipping .seopress-wizard-shipping-method-select {
900
- display: -webkit-box;
901
- display: -webkit-flex;
902
- display: flex
903
  }
904
 
905
  .seopress-wizard-services.shipping .shipping-method-setting.hide,
906
- .seopress-wizard-services.shipping .seopress-wizard-shipping-method-select.hide {
907
- display: none
 
908
  }
909
 
910
  .seopress-wizard-services.shipping .shipping-method-setting input,
911
  .seopress-wizard-services.shipping .seopress-wizard-shipping-method-dropdown {
912
- margin-right: 2em;
913
- margin-bottom: 1em
914
  }
915
 
916
  .seopress-wizard-services.shipping .shipping-method-setting input .select2,
917
- .seopress-wizard-services.shipping .seopress-wizard-shipping-method-dropdown .select2 {
918
- min-width: 130px
 
 
919
  }
920
 
921
  .seopress-wizard-services.shipping .seopress-wizard-service-description {
922
- display: -webkit-box;
923
- display: -webkit-flex;
924
- display: flex;
925
- -webkit-box-orient: vertical;
926
- -webkit-box-direction: normal;
927
- -webkit-flex-direction: column;
928
- flex-direction: column;
929
- color: #a6a6a6
930
  }
931
 
932
- .seopress-wizard-services.shipping .seopress-wizard-service-item:not(:first-child) .seopress-wizard-service-description {
933
- font-size: .92em;
934
- padding-bottom: 10px
 
 
935
  }
936
 
937
  .seopress-wizard-services.shipping .shipping-method-setting input {
938
- width: 95px;
939
- border: 1px solid #aaa;
940
- border-color: #ddd;
941
- border-radius: 4px;
942
- height: 28px;
943
- padding-left: 8px;
944
- padding-right: 24px;
945
- font-size: 14px;
946
- color: #444;
947
- background-color: #fff;
948
- display: inline-block
949
  }
950
 
951
  .seopress-wizard-services.shipping .shipping-method-description,
952
  .seopress-wizard-services.shipping .shipping-method-setting .description {
953
- color: #7e7e7e;
954
- font-size: .9em
955
  }
956
 
957
- .seopress-wizard-services.shipping .shipping-method-setting input::-webkit-input-placeholder {
958
- color: #e1e1e1
 
 
959
  }
960
 
961
- .seopress-wizard-services.shipping .shipping-method-setting input:-ms-input-placeholder {
962
- color: #e1e1e1
 
 
963
  }
964
 
965
- .seopress-wizard-services.shipping .shipping-method-setting input::-ms-input-placeholder {
966
- color: #e1e1e1
 
 
967
  }
968
 
969
  .seopress-wizard-services.shipping .shipping-method-setting input::placeholder {
970
- color: #e1e1e1
971
  }
972
 
973
  .seopress-setup-shipping-units p {
974
- line-height: 1.5em;
975
- font-size: 13px;
976
- margin-bottom: .25em;
977
- text-align: center
978
  }
979
 
980
  .seopress-setup-shipping-units .seopress-setup-shipping-unit {
981
- margin-bottom: 1.75em
982
  }
983
 
984
  .seopress-setup-shipping-units .seopress-setup-shipping-unit .select2 {
985
- min-width: 125px;
986
- top: -5px
987
  }
988
 
989
  .hide {
990
- display: none
991
  }
992
 
993
  .seopress-wizard-features {
994
- display: -webkit-box;
995
- display: -webkit-flex;
996
- display: flex;
997
- -webkit-flex-wrap: wrap;
998
- flex-wrap: wrap;
999
- list-style: none;
1000
- padding: 0
1001
  }
1002
 
1003
  .seopress-wizard-features .seopress-wizard-feature-item {
1004
- -webkit-flex-basis: calc(50% - 4em - 3px);
1005
- flex-basis: calc(50% - 4em - 3px);
1006
- border: 1px solid #eee;
1007
- padding: 2em
1008
  }
1009
 
1010
  .seopress-wizard-features .seopress-wizard-feature-item:nth-child(1) {
1011
- border-radius: 4px 0 0 0
1012
  }
1013
 
1014
  .seopress-wizard-features .seopress-wizard-feature-item:nth-child(2) {
1015
- border-left: 0;
1016
- border-radius: 0 4px 0 0
1017
  }
1018
 
1019
  .seopress-wizard-features .seopress-wizard-feature-item:nth-child(3) {
1020
- border-top: 0;
1021
- border-radius: 0 0 0 4px
1022
  }
1023
 
1024
  .seopress-wizard-features .seopress-wizard-feature-item:nth-child(4) {
1025
- border-top: 0;
1026
- border-left: 0;
1027
- border-radius: 0 0 4px 0
1028
  }
1029
 
1030
  .seopress-wizard-features p.seopress-wizard-feature-description,
1031
  .seopress-wizard-features p.seopress-wizard-feature-name {
1032
- margin: 0;
1033
- line-height: 1.5em
1034
  }
1035
 
1036
  h3.jetpack-reasons {
1037
- text-align: center;
1038
- margin: 3em 0 1em 0;
1039
- font-size: 14px
1040
  }
1041
 
1042
  .jetpack-logo,
1043
  .wcs-notice {
1044
- display: block;
1045
- margin: 1.75em auto 2em auto;
1046
- max-height: 175px
1047
  }
1048
 
1049
  .activate-splash .jetpack-logo {
1050
- width: 170px;
1051
- margin-bottom: 0
1052
  }
1053
 
1054
  .activate-splash .wcs-notice {
1055
- margin-top: 1em;
1056
- padding-left: 57px
1057
  }
1058
 
1059
  .step {
1060
- text-align: center
1061
  }
1062
 
1063
  .seopress-setup .seopress-setup-actions .button {
1064
- text-shadow: none;
1065
- font-weight: 300;
1066
- font-size: 16px;
1067
- padding: 1em 2em;
1068
- box-shadow: none;
1069
- min-width: 12em;
1070
- min-width: auto;
1071
- margin-top: 10px
1072
  }
1073
 
1074
  .seopress-setup .seopress-setup-actions .button:active,
1075
  .seopress-setup .seopress-setup-actions .button:focus,
1076
  .seopress-setup .seopress-setup-actions .button:hover {
1077
- box-shadow: none
1078
  }
1079
 
1080
  .seopress-setup .seopress-setup-actions .plugin-install-info {
1081
- display: block;
1082
- font-style: italic;
1083
- color: #999;
1084
- font-size: 14px;
1085
- line-height: 1.5em;
1086
- margin: 5px 0
1087
  }
1088
 
1089
- .seopress-setup .seopress-setup-actions .plugin-install-info>* {
1090
- display: block
1091
  }
1092
 
1093
- .seopress-setup .seopress-setup-actions .plugin-install-info .plugin-install-info-list-item::after {
1094
- content: ", "
 
 
 
1095
  }
1096
 
1097
- .seopress-setup .seopress-setup-actions .plugin-install-info .plugin-install-info-list-item:last-of-type::after {
1098
- content: ". "
 
 
 
1099
  }
1100
 
1101
  .seopress-setup .seopress-setup-actions .plugin-install-info a {
1102
- white-space: nowrap
1103
  }
1104
 
1105
- .seopress-setup .seopress-setup-actions .plugin-install-info a:not(:hover):not(:focus) {
1106
- color: inherit
 
 
 
1107
  }
1108
 
1109
  .plugin-install-source {
1110
- background: rgba(187, 119, 174, .15)
1111
  }
1112
 
1113
  .plugin-install-source:not(.seopress-wizard-service-item) {
1114
- box-shadow: 0 0 0 10px rgba(187, 119, 174, .15)
1115
  }
1116
 
1117
  .location-prompt {
1118
- color: #50575e;
1119
- font-size: 13px;
1120
- font-weight: 500;
1121
- margin-bottom: .5em;
1122
- margin-top: .85em;
1123
- display: inline-block;
1124
- width: 100%;
1125
- text-align: left;
1126
  }
1127
 
1128
  .location-input {
1129
- border: 1px solid #aaa;
1130
- border-color: #ddd;
1131
- border-radius: 4px;
1132
- height: 30px;
1133
- width: calc(100% - 8px - 24px - 2px);
1134
- padding-left: 8px;
1135
- padding-right: 24px;
1136
- font-size: 16px;
1137
- color: #444;
1138
- background-color: #fff;
1139
- display: inline-block;
1140
- width: 100%;
1141
  }
1142
 
1143
  .location-input.dropdown {
1144
- width: 100%;
1145
- max-width: inherit;
1146
  }
1147
 
1148
  .address-step .select2 {
1149
- min-width: 100%
1150
  }
1151
 
1152
  .store-address-container .city-and-postcode {
1153
- display: -webkit-box;
1154
- display: -webkit-flex;
1155
- display: flex
1156
  }
1157
 
1158
  .store-address-container .city-and-postcode div {
1159
- -webkit-flex-basis: 50%;
1160
- flex-basis: 50%;
1161
- margin-right: 1em
1162
  }
1163
 
1164
  .store-address-container .city-and-postcode div:last-of-type {
1165
- margin-right: 0
1166
  }
1167
 
1168
  .store-address-container .select2-container,
1169
- .store-address-container input[type=text],
1170
  .store-address-container select {
1171
- margin-bottom: 10px
1172
  }
1173
 
1174
  .product-type-container {
1175
- margin-top: 14px;
1176
- margin-bottom: 1px
1177
  }
1178
 
1179
  #seopress_sell_in_person {
1180
- margin-left: 0
1181
  }
1182
 
1183
  .seopress-wizard-service-settings .payment-email-input {
1184
- border: 1px solid #aaa;
1185
- border-color: #ddd;
1186
- border-radius: 4px;
1187
- height: 30px;
1188
- padding: 0 8px;
1189
- font-size: 14px;
1190
- color: #444;
1191
- background-color: #fff;
1192
- display: inline-block
1193
  }
1194
 
1195
  .seopress-wizard-service-settings .payment-email-input[disabled] {
1196
- color: #aaa
1197
  }
1198
 
1199
  .newsletter-form-container {
1200
- display: -webkit-box;
1201
- display: -webkit-flex;
1202
- display: flex
1203
  }
1204
 
1205
  .newsletter-form-container .newsletter-form-email {
1206
- border: 1px solid #aaa;
1207
- border-color: #ddd;
1208
- border-radius: 4px;
1209
- height: 42px;
1210
- padding: 0 8px;
1211
- font-size: 16px;
1212
- color: #50575e;
1213
- background-color: #fff;
1214
- display: inline-block;
1215
- margin-right: 6px;
1216
- -webkit-box-flex: 1;
1217
- -webkit-flex-grow: 1;
1218
- flex-grow: 1
1219
  }
1220
 
1221
  .newsletter-form-container .newsletter-form-button-container {
1222
- -webkit-box-flex: 0;
1223
- -webkit-flex-grow: 0;
1224
- flex-grow: 0
1225
  }
1226
 
1227
  .seopress-setup .seopress-setup-actions .button.newsletter-form-button {
1228
- height: 42px;
1229
- padding: 0 1em;
1230
- margin: 0
1231
  }
1232
 
1233
  .seopress-wizard-next-steps {
1234
- border: 1px solid #eee;
1235
- border-radius: 4px;
1236
- list-style: none;
1237
- padding: 0
1238
  }
1239
 
1240
  .seopress-wizard-next-steps li {
1241
- padding: 0
1242
  }
1243
 
1244
  .seopress-wizard-next-steps .seopress-wizard-next-step-item {
1245
- display: -webkit-box;
1246
- display: -webkit-flex;
1247
- display: flex;
1248
- border-top: 1px solid #eee;
1249
- text-align: left;
1250
  }
1251
 
1252
  .seopress-wizard-next-steps .seopress-wizard-next-step-item:first-child {
1253
- border-top: 0
1254
  }
1255
 
1256
  .seopress-wizard-next-steps .seopress-wizard-next-step-description {
1257
- -webkit-box-flex: 1;
1258
- -webkit-flex-grow: 1;
1259
- flex-grow: 1;
1260
- margin: 1.5em
1261
  }
1262
 
1263
  .seopress-wizard-next-steps .seopress-wizard-next-step-action {
1264
- -webkit-box-flex: 0;
1265
- -webkit-flex-grow: 0;
1266
- flex-grow: 0;
1267
- display: -webkit-box;
1268
- display: -webkit-flex;
1269
- display: flex;
1270
- -webkit-box-align: center;
1271
- -webkit-align-items: center;
1272
- align-items: center;
1273
- justify-content: center;
1274
  }
1275
 
1276
  .seopress-wizard-next-steps .seopress-wizard-next-step-action .button {
1277
- margin: 1em 1.5em
1278
  }
1279
 
1280
  .seopress-wizard-next-steps p.next-step-heading {
1281
- margin: 0;
1282
- font-size: .95em;
1283
- font-weight: 400;
1284
- font-variant: all-petite-caps
1285
  }
1286
 
1287
  .seopress-wizard-next-steps p.next-step-extra-info {
1288
- margin: 0
1289
  }
1290
 
1291
  .seopress-wizard-next-steps h3.next-step-description {
1292
- margin: 0;
1293
- font-size: 16px;
1294
- font-weight: 600
1295
  }
1296
 
1297
  .seopress-wizard-next-steps .seopress-wizard-additional-steps {
1298
- border-top: 1px solid #eee
1299
  }
1300
 
1301
- .seopress-wizard-next-steps .seopress-wizard-additional-steps .seopress-wizard-next-step-description {
1302
- margin-bottom: 0
 
 
1303
  }
1304
 
1305
- .seopress-wizard-next-steps .seopress-wizard-additional-steps .seopress-setup-actions {
1306
- margin: 0 0 1.5em 0
 
 
1307
  }
1308
 
1309
- .seopress-wizard-next-steps .seopress-wizard-additional-steps .seopress-setup-actions .button {
1310
- font-size: 15px;
1311
- margin: 1em 0 1em 1.5em
 
 
 
1312
  }
1313
 
1314
- .seopress-wizard-next-steps .seopress-wizard-additional-steps .seopress-setup-actions .button::last-child {
1315
- margin-right: 1.5em
 
 
 
1316
  }
1317
 
1318
  p.next-steps-help-text {
1319
- color: #9f9f9f;
1320
- padding: 0 2em;
1321
- text-align: center;
1322
- font-size: .9em
1323
  }
1324
 
1325
  p.jetpack-terms {
1326
- font-size: .8em;
1327
- text-align: center;
1328
- max-width: 480px;
1329
- margin: 0 auto;
1330
- line-height: 1.5em
1331
  }
1332
 
1333
  .seopress-error {
1334
- background: #ffe6e5;
1335
- border-color: #ffc5c2;
1336
- padding: 1em;
1337
- margin-bottom: 1em
1338
  }
1339
 
1340
  .seopress-error p {
1341
- margin-top: 0;
1342
- margin-bottom: .5em;
1343
- color: #444
1344
  }
1345
 
1346
  .seopress-error a {
1347
- color: #ff645c
1348
  }
1349
 
1350
  .seopress-error .reconnect-reminder {
1351
- font-size: .85em
1352
  }
1353
 
1354
  .seopress-error .seopress-setup-actions .button {
1355
- font-size: 14px
1356
  }
1357
 
1358
  .seopress-wizard-service-setting-ppec_paypal_reroute_requests,
1359
  .seopress-wizard-service-setting-stripe_create_account {
1360
- display: -webkit-box;
1361
- display: -webkit-flex;
1362
- display: flex;
1363
- -webkit-box-align: start;
1364
- -webkit-align-items: flex-start;
1365
- align-items: flex-start
1366
  }
1367
 
1368
- .seopress-wizard-service-setting-ppec_paypal_reroute_requests .payment-checkbox-input,
 
1369
  .seopress-wizard-service-setting-stripe_create_account .payment-checkbox-input {
1370
- -webkit-box-ordinal-group: 2;
1371
- -webkit-order: 1;
1372
- order: 1;
1373
- margin-top: 5px;
1374
- margin-left: 0;
1375
- margin-right: 0;
1376
- width: 1.5em
1377
- }
1378
-
1379
- .seopress-wizard-service-setting-ppec_paypal_reroute_requests .ppec_paypal_reroute_requests,
1380
- .seopress-wizard-service-setting-ppec_paypal_reroute_requests .stripe_create_account,
1381
- .seopress-wizard-service-setting-stripe_create_account .ppec_paypal_reroute_requests,
 
 
 
1382
  .seopress-wizard-service-setting-stripe_create_account .stripe_create_account {
1383
- -webkit-box-ordinal-group: 3;
1384
- -webkit-order: 2;
1385
- order: 2;
1386
- margin-left: .3em
1387
  }
1388
 
1389
  .seopress-wizard-service-setting-ppec_paypal_email,
1390
  .seopress-wizard-service-setting-stripe_email {
1391
- margin-top: .75em;
1392
- margin-left: 1.5em
1393
  }
1394
 
1395
  .seopress-wizard-service-setting-ppec_paypal_email label.ppec_paypal_email,
1396
  .seopress-wizard-service-setting-ppec_paypal_email label.stripe_email,
1397
  .seopress-wizard-service-setting-stripe_email label.ppec_paypal_email,
1398
  .seopress-wizard-service-setting-stripe_email label.stripe_email {
1399
- position: absolute;
1400
- margin: -1px;
1401
- padding: 0;
1402
- height: 1px;
1403
- width: 1px;
1404
- overflow: hidden;
1405
- clip: rect(0 0 0 0);
1406
- border: 0
1407
  }
1408
 
1409
  .seopress-wizard-service-setting-ppec_paypal_email input.payment-email-input,
1410
  .seopress-wizard-service-setting-stripe_email input.payment-email-input {
1411
- box-sizing: border-box;
1412
- margin-bottom: .5em;
1413
- width: 100%;
1414
- height: 32px
1415
  }
1416
 
1417
  .seopress-setup-content .recommended-step {
1418
- padding: 0 2.5em;
1419
- text-align: left;
1420
- display: inline-block;
1421
- width: 100%;
1422
- box-sizing: border-box;
1423
  }
1424
 
1425
  .seopress-setup-content .recommended-step a {
1426
- text-decoration: none;
1427
  }
1428
 
1429
  .seopress-setup-content .recommended-item {
1430
- list-style: none;
1431
- margin: 1rem 0
1432
  }
1433
 
1434
  .seopress-setup-content .recommended-item:last-child label {
1435
- margin-bottom: 0
1436
  }
1437
 
1438
  .seopress-setup-content .recommended-item label {
1439
- display: -webkit-box;
1440
- display: -webkit-flex;
1441
- display: flex;
1442
- -webkit-box-align: center;
1443
- -webkit-align-items: center;
1444
- align-items: center;
1445
- margin-bottom: 1.5em
1446
  }
1447
 
1448
  .seopress-setup-content .recommended-item label::after,
1449
  .seopress-setup-content .recommended-item label::before {
1450
- top: auto
1451
  }
1452
 
1453
  .seopress-setup-content .recommended-item label::after {
1454
- margin-top: -1.5px
1455
  }
1456
 
1457
  .seopress-setup-content .recommended-item .recommended-item-icon {
1458
- border: 1px solid #fff;
1459
- border-radius: 7px;
1460
- height: 3.5em;
1461
- margin-right: 1em;
1462
- margin-left: 4px
1463
  }
1464
 
1465
- .seopress-setup-content .recommended-item .recommended-item-icon.recommended-item-icon-storefront_theme {
1466
- background-color: #f4a224;
1467
- max-height: 3em;
1468
- max-width: 3em;
1469
- padding: .25em
 
 
1470
  }
1471
 
1472
- .seopress-setup-content .recommended-item .recommended-item-icon.recommended-item-icon-automated_taxes {
1473
- background-color: #d0011b;
1474
- max-height: 1.75em;
1475
- padding: .875em
 
 
1476
  }
1477
 
1478
- .seopress-setup-content .recommended-item .recommended-item-icon.recommended-item-icon-mailchimp {
1479
- background-color: #ffe01b;
1480
- height: 2em;
1481
- padding: .75em
 
 
1482
  }
1483
 
1484
- .seopress-setup-content .recommended-item .recommended-item-icon.recommended-item-icon-seopress_services {
1485
- background-color: #f0f0f0;
1486
- max-height: 1.5em;
1487
- padding: 1.3em .7em
 
 
1488
  }
1489
 
1490
- .seopress-setup-content .recommended-item .recommended-item-icon.recommended-item-icon-shipstation {
1491
- background-color: #f0f0f0;
1492
- padding: .3em
 
 
1493
  }
1494
 
1495
- .seopress-setup-content .recommended-item .recommended-item-description-container h3 {
1496
- font-size: 15px;
1497
- font-weight: 700;
1498
- letter-spacing: .5px;
1499
- margin-bottom: 0
 
 
 
1500
  }
1501
 
1502
- .seopress-setup-content .recommended-item .recommended-item-description-container p {
1503
- margin-top: 0;
1504
- line-height: 1.5em
 
 
 
1505
  }
1506
 
1507
  .seopress-wizard-service-info {
1508
- padding: 1em 2em;
1509
- background-color: #fafafa
1510
  }
1511
 
1512
  .help_tip {
1513
- -webkit-text-decoration: underline dotted;
1514
- text-decoration: underline dotted
1515
  }
1516
 
1517
  .seopress-setup #tiptip_content {
1518
- background: #5f6973
1519
  }
1520
 
1521
  .seopress-setup #tiptip_holder.tip_top #tiptip_arrow_inner {
1522
- border-top-color: #5f6973
1523
  }
1524
 
1525
  .seopress-setup-shipping-recommended {
1526
- border-bottom: 1px solid #eee;
1527
- margin-top: 0;
1528
- padding: 30px 0
1529
- }
1530
-
1531
- @media only screen and (max-width:768px) {
1532
- .seopress-setup .seopress-setup-content {
1533
- margin: 25px auto 24px;
1534
- }
1535
- #seopress-logo img {
1536
- max-width: 80%
1537
- }
1538
- .store-address-container .city-and-postcode {
1539
- display: block
1540
- }
1541
- .store-address-container .city-and-postcode div {
1542
- margin-right: 0
1543
- }
1544
- .seopress-wizard-service-item,
1545
- .seopress-wizard-services-list-toggle {
1546
- -webkit-flex-wrap: wrap;
1547
- flex-wrap: wrap
1548
- }
1549
- .seopress-wizard-service-item .seopress-wizard-service-enable,
1550
- .seopress-wizard-services-list-toggle .seopress-wizard-service-enable {
1551
- -webkit-box-ordinal-group: 3;
1552
- -webkit-order: 2;
1553
- order: 2;
1554
- padding: 20px 0 0
1555
- }
1556
- .seopress-wizard-service-item .seopress-wizard-service-description,
1557
- .seopress-wizard-services-list-toggle .seopress-wizard-service-description {
1558
- -webkit-box-ordinal-group: 4;
1559
- -webkit-order: 3;
1560
- order: 3
1561
- }
1562
- .seopress-wizard-service-item .seopress-wizard-service-name,
1563
- .seopress-wizard-services-list-toggle .seopress-wizard-service-name {
1564
- padding: 20px 20px 0;
1565
- text-align: left;
1566
- -webkit-box-pack: justify!important;
1567
- -webkit-justify-content: space-between!important;
1568
- justify-content: space-between!important
1569
- }
1570
- .seopress-wizard-service-item .seopress-wizard-service-name img,
1571
- .seopress-wizard-services-list-toggle .seopress-wizard-service-name img {
1572
- margin: 0
1573
- }
1574
- .newsletter-form-container {
1575
- display: block
1576
- }
1577
- .newsletter-form-container .newsletter-form-email {
1578
- display: block;
1579
- box-sizing: border-box;
1580
- width: 100%;
1581
- margin-bottom: 10px
1582
- }
1583
- .newsletter-form-container .button.newsletter-form-button {
1584
- float: left
1585
- }
1586
- .seopress-wizard-next-steps .seopress-wizard-next-step-item {
1587
- -webkit-flex-wrap: wrap;
1588
- flex-wrap: wrap
1589
- }
1590
- .seopress-wizard-next-steps .seopress-wizard-next-step-item .seopress-wizard-next-step-description {
1591
- margin-bottom: 0
1592
- }
1593
- .seopress-wizard-next-steps .seopress-wizard-next-step-item .seopress-wizard-next-step-action p {
1594
- margin: 0
1595
- }
1596
- .seopress-setup-steps li a {
1597
- text-indent: -9999px;
1598
- position: absolute;
1599
- left: calc(50% - 24px);
1600
- top: -10px;
1601
- }
1602
- .seopress-setup-steps li span {
1603
- display: none;
1604
- }
1605
- }
 
 
 
 
 
1
  html {
2
+ background-color: #f6f7f7;
3
+ margin: 0;
4
  }
5
  body.seopress-setup {
6
+ box-shadow: none;
7
+ background: #f6f7f7;
8
+ padding: 0;
9
+ margin: 0;
10
+ max-width: 100%;
11
  }
12
 
13
+ .wp-core-ui .button,
14
+ .wp-core-ui .button-secondary {
15
  color: #6159e6;
16
  border-color: #6159e6;
17
  background: #ffffff;
25
  }
26
 
27
  .wp-core-ui select:focus,
28
+ input[type="text"]:focus,
29
+ input[type="password"]:focus,
30
+ input[type="color"]:focus,
31
+ input[type="date"]:focus,
32
+ input[type="datetime"]:focus,
33
+ input[type="datetime-local"]:focus,
34
+ input[type="email"]:focus,
35
+ input[type="month"]:focus,
36
+ input[type="number"]:focus,
37
+ input[type="search"]:focus,
38
+ input[type="tel"]:focus,
39
+ input[type="time"]:focus,
40
+ input[type="url"]:focus,
41
+ input[type="week"]:focus,
42
+ input[type="checkbox"]:focus,
43
+ input[type="radio"]:focus,
44
+ select:focus,
45
+ textarea:focus {
46
+ border-color: #6259e6;
47
  box-shadow: 0 0 0 1px #6259e6;
48
  outline: 2px solid transparent;
49
  }
50
 
51
  .seopress-setup .sp-progress-bar {
52
+ background-color: #6159e6;
53
  }
54
 
55
  .spinner {
56
+ display: inline-block;
57
  }
58
 
59
  .log {
60
+ margin: 0;
61
+ text-transform: uppercase;
62
+ display: inline-block;
63
+ vertical-align: middle;
64
+ padding: 5px;
65
+ color: rgba(19, 191, 17, 1);
66
+ font-style: italic;
67
  }
68
 
69
  .admin_page_seopress_csv_importer.seopress-styles .seopress-option {
70
+ max-width: 700px;
71
+ margin: 40px auto;
72
  }
73
 
74
  .admin_page_seopress_csv_importer .description {
75
+ color: #999;
76
+ margin-top: 4px;
77
+ display: block;
78
  }
79
 
80
  .admin_page_seopress_csv_importer .description code {
81
+ background: 0 0;
82
+ padding: 0;
83
+ white-space: pre-line;
84
+ word-wrap: break-word;
85
+ word-break: break-all;
86
  }
87
 
88
  .admin_page_seopress_csv_importer .seopress-setup-content table thead th {
89
+ font-weight: bold;
90
  }
91
 
92
+ .admin_page_seopress_csv_importer
93
+ .seopress-setup-content
94
+ table
95
+ tr:nth-child(odd)
96
+ td {
97
+ background: #fbfbfb;
98
  }
99
 
100
  .admin_page_seopress_csv_importer .seopress-setup-content table td select {
101
+ width: 100%;
102
  }
103
 
104
  .admin_page_seopress_csv_importer .dashicons-yes-alt:before {
105
+ color: #3642ff;
106
  }
107
 
108
  .admin_page_seopress_csv_importer .seopress-wizard-services {
109
+ padding: 0;
110
  }
111
 
112
  .seopress-setup {
113
+ text-align: center;
114
  }
115
 
116
  .seopress-setup .select2-container {
117
+ text-align: left;
118
+ width: auto;
119
  }
120
 
121
  .seopress-setup .hidden {
122
+ display: none;
123
  }
124
 
125
  .seopress-setup .seopress-setup-content {
126
+ box-shadow: 0 1px 3px rgba(0, 0, 0, 0.13);
127
+ padding: 2em;
128
+ margin: 65px auto 24px;
129
+ background: #fff;
130
+ overflow: hidden;
131
+ zoom: 1;
132
+ text-align: center;
133
+ max-width: 700px;
134
  }
135
 
136
  .seopress-setup-content h1,
137
  .seopress-setup-content h2,
138
  .seopress-setup-content h3,
139
  .seopress-setup-content table {
140
+ margin: 0 0 20px;
141
+ border: 0;
142
+ padding: 0;
143
+ color: #2c3338;
144
+ clear: none;
145
+ font-weight: 500;
146
  }
147
 
148
  .seopress-setup-content p {
149
+ margin: 20px 0;
150
+ font-size: 1em;
151
+ line-height: 1.75em;
152
+ color: #50575e;
153
  }
154
 
155
  .seopress-setup-content .m0 {
156
+ margin: 0;
157
  }
158
 
159
  .seopress-setup-content table {
160
+ font-size: 1em;
161
+ line-height: 1.75em;
162
+ color: #50575e;
163
+ text-align: left;
164
  }
165
 
166
  .seopress-setup-content a {
167
+ color: #6259e6;
168
  }
169
 
170
  .seopress-setup-content a:focus,
171
  .seopress-setup-content a:hover {
172
+ color: #111;
173
  }
174
 
175
+ .seopress-option #seopress-edd-license-btn,
176
+ .seopress-option #seopress-refresh {
177
+ width: auto;
178
  }
179
 
180
  .seopress-setup-content .form-table th {
181
+ width: 35%;
182
+ vertical-align: top;
183
+ font-weight: 400;
184
  }
185
 
186
  .seopress-setup-content .form-table td {
187
+ vertical-align: top;
188
  }
189
 
190
  .seopress-setup-content .form-table td input,
191
  .seopress-setup-content .form-table td select {
192
+ width: 100%;
193
+ box-sizing: border-box;
194
  }
195
 
196
  .seopress-setup-content .form-table td input[size] {
197
+ width: auto;
198
  }
199
 
200
  .seopress-setup-content .form-table td .description {
201
+ line-height: 1.5em;
202
+ display: block;
203
+ margin-top: 0.25em;
204
+ color: #999;
205
+ font-style: italic;
206
  }
207
 
208
  .seopress-setup-content .form-table td .input-checkbox,
209
  .seopress-setup-content .form-table td .input-radio {
210
+ width: auto;
211
+ box-sizing: inherit;
212
+ padding: inherit;
213
+ margin: 0 0.5em 0 0;
214
+ box-shadow: none;
215
  }
216
 
217
  .seopress-setup-content .form-table .section_title td {
218
+ padding: 0;
219
  }
220
 
221
  .seopress-setup-content .form-table .section_title td h2,
222
  .seopress-setup-content .form-table .section_title td p {
223
+ margin: 12px 0 0;
224
  }
225
 
226
  .seopress-setup-content .form-table td,
227
  .seopress-setup-content .form-table th {
228
+ padding: 12px 0;
229
+ margin: 0;
230
+ border: 0;
231
  }
232
 
233
  .seopress-setup-content .form-table td:first-child,
234
  .seopress-setup-content .form-table th:first-child {
235
+ padding-right: 1em;
236
  }
237
 
238
  .seopress-setup-content .seopress-setup-pages {
239
+ width: 100%;
240
+ border-top: 1px solid #eee;
241
  }
242
 
243
  .seopress-setup-content .seopress-setup-pages thead th {
244
+ display: none;
245
  }
246
 
247
  .seopress-setup-content .seopress-setup-pages .page-name {
248
+ width: 30%;
249
+ font-weight: 700;
250
  }
251
 
252
  .seopress-setup-content .seopress-setup-pages td,
253
  .seopress-setup-content .seopress-setup-pages th {
254
+ padding: 14px 0;
255
+ border-bottom: 1px solid #eee;
256
  }
257
 
258
  .seopress-setup-content .seopress-setup-pages td:first-child,
259
  .seopress-setup-content .seopress-setup-pages th:first-child {
260
+ padding-right: 9px;
261
  }
262
 
263
  .seopress-setup-content .seopress-setup-pages th {
264
+ padding-top: 0;
265
  }
266
 
267
  .seopress-setup-content .seopress-setup-pages .page-options p {
268
+ color: #777;
269
+ margin: 6px 0 0 24px;
270
+ line-height: 1.75em;
271
  }
272
 
273
  .seopress-setup-content .seopress-setup-pages .page-options p input {
274
+ vertical-align: middle;
275
+ margin: 1px 0 0;
276
+ height: 1.75em;
277
+ width: 1.75em;
278
+ line-height: 1.75em;
279
  }
280
 
281
  .seopress-setup-content .seopress-setup-pages .page-options p label {
282
+ line-height: 1;
283
  }
284
 
285
+ @media screen and (max-width: 782px) {
286
+ .seopress-setup-content .form-table tbody th {
287
+ width: auto;
288
+ }
289
  }
290
 
291
  .seopress-setup-content .twitter-share-button {
292
+ float: right;
293
  }
294
 
295
  .seopress-setup-content .seopress-setup-next-steps {
296
+ overflow: hidden;
297
+ margin: 0 0 24px;
298
+ padding-bottom: 2px;
299
  }
300
 
301
  .seopress-setup-content .seopress-setup-next-steps h2 {
302
+ margin-bottom: 12px;
303
  }
304
 
305
+ .seopress-setup-content
306
+ .seopress-setup-next-steps
307
+ .seopress-setup-next-steps-first {
308
+ float: left;
309
+ width: 50%;
310
+ box-sizing: border-box;
311
  }
312
 
313
+ .seopress-setup-content
314
+ .seopress-setup-next-steps
315
+ .seopress-setup-next-steps-last {
316
+ float: right;
317
+ width: 50%;
318
+ box-sizing: border-box;
319
  }
320
 
321
  .seopress-setup-content .seopress-setup-next-steps ul {
322
+ padding: 0 2em 0 0;
323
+ list-style: none outside;
324
+ margin: 0;
325
  }
326
 
327
  .seopress-setup-content .seopress-setup-next-steps ul li a {
328
+ display: block;
329
+ padding: 0 0 0.75em;
330
  }
331
 
332
  .seopress-setup-content .seopress-setup-next-steps ul .setup-product a.button {
333
+ background-color: #f7f7f7;
334
+ border-color: #ccc;
335
+ color: #23282d;
336
+ box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.25), 0 1px 0 #ccc;
337
+ text-shadow: 1px 0 1px #eee, 0 1px 1px #eee;
338
+ font-size: 1em;
339
+ height: auto;
340
+ line-height: 1.75em;
341
+ margin: 0 0 0.75em;
342
+ opacity: 1;
343
+ padding: 1em;
344
+ text-align: center;
345
+ }
346
+
347
+ .seopress-setup-content
348
+ .seopress-setup-next-steps
349
+ ul
350
+ .setup-product
351
+ a.button:active,
352
+ .seopress-setup-content
353
+ .seopress-setup-next-steps
354
+ ul
355
+ .setup-product
356
+ a.button:focus,
357
+ .seopress-setup-content
358
+ .seopress-setup-next-steps
359
+ ul
360
+ .setup-product
361
+ a.button:hover {
362
+ background: #f5f5f5;
363
+ border-color: #aaa;
364
+ }
365
+
366
+ .seopress-setup-content
367
+ .seopress-setup-next-steps
368
+ ul
369
+ .setup-product
370
+ a.button-primary {
371
+ color: #fff;
372
+ background-color: #bb77ae;
373
+ border-color: #a36597;
374
+ box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.25), 0 1px 0 #a36597;
375
+ text-shadow: 0 -1px 1px #a36597, 1px 0 1px #a36597, 0 1px 1px #a36597,
376
+ -1px 0 1px #a36597;
377
+ }
378
+
379
+ .seopress-setup-content
380
+ .seopress-setup-next-steps
381
+ ul
382
+ .setup-product
383
+ a.button-primary:active,
384
+ .seopress-setup-content
385
+ .seopress-setup-next-steps
386
+ ul
387
+ .setup-product
388
+ a.button-primary:focus,
389
+ .seopress-setup-content
390
+ .seopress-setup-next-steps
391
+ ul
392
+ .setup-product
393
+ a.button-primary:hover {
394
+ color: #fff;
395
+ background: #a36597;
396
+ border-color: #a36597;
397
+ box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.25), 0 1px 0 #a36597;
398
  }
399
 
400
  .seopress-setup-content .seopress-setup-next-steps ul li a::before {
401
+ color: #82878c;
402
+ font: normal 20px/1 dashicons;
403
+ speak: none;
404
+ display: inline-block;
405
+ padding: 0 10px 0 0;
406
+ top: 1px;
407
+ position: relative;
408
+ text-decoration: none !important;
409
+ vertical-align: top;
410
  }
411
 
412
  .seopress-setup-content .seopress-setup-next-steps ul .learn-more a::before {
413
+ content: "\f105";
414
  }
415
 
416
+ .seopress-setup-content
417
+ .seopress-setup-next-steps
418
+ ul
419
+ .video-walkthrough
420
+ a::before {
421
+ content: "\f126";
422
  }
423
 
424
  .seopress-setup-content .seopress-setup-next-steps ul .newsletter a::before {
425
+ content: "\f465";
426
  }
427
 
428
  .seopress-setup-content .updated,
429
  .seopress-setup-content .seopress-newsletter {
430
+ padding: 24px;
431
+ margin: 0 0 24px;
432
+ overflow: hidden;
433
+ background: #f5f5f5;
434
  }
435
 
436
  .seopress-setup-content .updated p,
437
  .seopress-setup-content .seopress-newsletter p {
438
+ padding: 0;
439
+ margin: 0 0 12px;
440
  }
441
 
442
  .seopress-setup-content .updated form,
443
  .seopress-setup-content .updated p:last-child,
444
  .seopress-setup-content .seopress-newsletter form,
445
  .seopress-setup-content .seopress-tracker {
446
+ margin: 24px 0;
447
+ border: 1px solid #eee;
448
+ padding: 20px;
449
+ border-radius: 4px;
450
+ overflow: hidden;
451
  }
452
 
453
  .seopress-setup-content .seopress-tracker p {
454
+ font-size: 14px;
455
+ line-height: 1.5em;
456
  }
457
 
458
  .seopress-setup-content .seopress-tracker .checkbox {
459
+ line-height: 24px;
460
+ font-weight: 500;
461
+ font-size: 1em;
462
+ margin-top: 0;
463
+ margin-bottom: 20px;
464
  }
465
 
466
+ .seopress-setup-content .checkbox input[type="checkbox"] {
467
+ opacity: 0;
468
+ position: absolute;
469
+ left: -9999px;
470
  }
471
 
472
  .seopress-setup-content .checkbox label {
473
+ position: relative;
474
+ display: inline-block;
475
+ padding-left: 28px;
476
  }
477
 
478
  .seopress-setup-content .checkbox label::after,
479
  .seopress-setup-content .checkbox label::before {
480
+ position: absolute;
481
+ content: "";
482
+ display: inline-block;
483
  }
484
 
485
  .seopress-setup-content .checkbox label::before {
486
+ height: 16px;
487
+ width: 16px;
488
+ left: 0;
489
+ top: 3px;
490
+ border: 1px solid #aaa;
491
+ background-color: #fff;
492
+ border-radius: 3px;
493
  }
494
 
495
  .seopress-setup-content .checkbox label::after {
496
+ height: 5px;
497
+ width: 9px;
498
+ border-left: 2px solid;
499
+ border-bottom: 2px solid;
500
+ -webkit-transform: rotate(-45deg);
501
+ -ms-transform: rotate(-45deg);
502
+ transform: rotate(-45deg);
503
+ left: 4px;
504
+ top: 7px;
505
+ color: #fff;
506
+ }
507
+
508
+ .seopress-setup-content .checkbox input[type="checkbox"] + label::after {
509
+ content: none;
510
+ }
511
+
512
+ .seopress-setup-content
513
+ .checkbox
514
+ input[type="checkbox"]:checked
515
+ + label::after {
516
+ content: "";
517
  }
518
 
519
+ .seopress-setup-content .checkbox input[type="checkbox"]:focus + label::before {
520
+ outline: #3b99fc auto 5px;
521
  }
522
 
523
+ .seopress-setup-content
524
+ .checkbox
525
+ input[type="checkbox"]:checked
526
+ + label::before {
527
+ background: #6259e6;
528
+ border-color: #6259e6;
529
  }
530
 
531
  .seopress-setup-steps {
532
+ padding: 10px 0 24px;
533
+ margin: 0;
534
+ list-style: none outside;
535
+ overflow: hidden;
536
+ color: #ccc;
537
+ width: 100%;
538
+ height: 56px;
539
+ border-bottom: 1px solid #dcdcde;
540
+ align-items: center;
541
+ justify-content: center;
542
+ background: #fff;
543
+ display: inline-flex;
544
  }
545
 
546
  .seopress-setup-steps li {
547
+ width: 100%;
548
+ float: left;
549
+ padding: 0 0 1.5em;
550
+ margin: 0;
551
+ text-align: center;
552
+ position: relative;
553
+ border-bottom: 2px solid #ccc;
554
+ line-height: 24px;
555
+ font-size: 16px;
556
  }
557
 
558
  .seopress-setup-steps li a {
559
+ text-decoration: none;
560
+ padding: 1.5em;
561
+ position: relative;
562
+ z-index: 1;
563
+ color: #1d2327;
564
+ line-height: 24px;
565
+ font-size: 16px;
566
+ transition: color 300ms linear;
567
  }
568
 
569
  .seopress-setup-steps li a:focus,
570
  .seopress-setup-steps li a:hover {
571
+ color: #6159e6;
572
  }
573
 
574
  .seopress-setup-steps li::before {
575
+ content: "";
576
+ border: 3px solid #ccc;
577
+ border-radius: 100%;
578
+ width: 24px;
579
+ height: 24px;
580
+ position: absolute;
581
+ bottom: 0;
582
+ left: 50%;
583
+ margin-left: -15px;
584
+ margin-bottom: -15px;
585
+ background: #fff;
586
+ font-family: "Dashicons";
587
+ font-size: 24px;
588
+ line-height: 24px;
589
  }
590
 
591
  .seopress-setup-steps li.active {
592
+ color: #6259e6;
593
+ font-weight: 700;
594
+ text-decoration: none;
595
+ position: relative;
596
+ z-index: 1;
597
+ color: #1d2327;
598
+ line-height: 24px;
599
  }
600
 
601
  .seopress-setup-steps li.active::before {
602
+ border-color: #6259e6;
603
  }
604
 
605
  @keyframes fade {
606
+ 0% {
607
+ border-color: #6259e600;
608
+ left: -100%;
609
+ }
610
+ 100% {
611
+ border-color: #6259e6;
612
+ left: 0;
613
+ }
614
  }
615
 
616
  .seopress-setup-steps li.active::after {
628
  }
629
 
630
  .seopress-setup-steps li.done {
631
+ border-color: #6259e6;
632
+ color: #6259e6;
633
+ z-index: 10;
634
  }
635
 
636
  .seopress-setup-steps li.done::before {
637
+ border-color: #6259e6;
638
+ background: #6259e6;
639
+ content: "\f147";
640
+ color: #fff;
641
  }
642
 
643
  .seopress-setup .seopress-setup-actions {
644
+ overflow: hidden;
645
+ margin: 20px 0 0;
646
+ position: relative;
647
  }
648
 
649
  .seopress-setup .seopress-setup-actions .button {
650
+ font-size: 1.25em;
651
+ padding: 0.5em 1em;
652
+ line-height: 1em;
653
+ margin-right: 0.5em;
654
+ margin-bottom: 2px;
655
+ height: auto;
656
+ border-radius: 4px;
657
  }
658
 
659
  .seopress-setup .seopress-setup-actions .button-primary {
660
+ background-color: #6259e6;
661
+ border-color: #6259e6;
662
+ margin: 0;
663
+ opacity: 1;
664
+ transition: all 300ms linear;
665
+ color: #fff;
666
  }
667
 
668
  .seopress-setup .seopress-setup-actions .button-primary:active,
669
  .seopress-setup .seopress-setup-actions .button-primary:focus,
670
  .seopress-setup .seopress-setup-actions .button-primary:hover {
671
+ background: none;
672
+ border-color: #6259e6;
673
+ color: #6259e6;
674
  }
675
 
676
  .seopress-setup-content p:last-child {
677
+ margin-bottom: 0;
678
  }
679
 
680
  .seopress-setup-content p.store-setup {
681
+ margin-top: 0;
682
  }
683
 
684
  .seopress-setup-footer-links {
685
+ font-size: 0.85em;
686
+ color: #7b7b7b;
687
+ margin: 1.18em auto;
688
+ display: inline-block;
689
+ text-align: center;
690
  }
691
 
692
  .seopress-wizard-services {
693
+ border: 1px solid #eee;
694
+ padding: 1em;
695
+ margin: 0 0 1em;
696
+ list-style: none outside;
697
+ border-radius: 4px;
698
+ overflow: hidden;
699
+ text-align: left;
700
  }
701
 
702
  .seopress-wizard-services p {
703
+ margin: 0 0 1em 0;
704
+ padding: 0;
705
+ font-size: 1em;
706
+ line-height: 1.5em;
707
  }
708
 
709
  .seopress-wizard-service-item,
710
  .seopress-wizard-services-list-toggle {
711
+ display: -webkit-box;
712
+ display: -webkit-flex;
713
+ display: flex;
714
+ -webkit-flex-wrap: nowrap;
715
+ flex-wrap: nowrap;
716
+ -webkit-box-pack: justify;
717
+ -webkit-justify-content: space-between;
718
+ justify-content: space-between;
719
+ padding: 0;
720
+ color: #50575e;
721
+ -webkit-box-align: center;
722
+ -webkit-align-items: center;
723
+ align-items: center;
724
+ margin: 1rem 0;
725
+ }
726
+
727
+ .seopress-wizard-service-item,
728
+ .seopress-wizard-services-list-toggle:first-child {
729
+ margin-top: 0;
730
  }
731
 
732
  .seopress-wizard-service-item:last-child,
733
  .seopress-wizard-services-list-toggle:last-child {
734
+ border-bottom: 0;
735
  }
736
 
737
  .seopress-wizard-service-item .payment-gateway-fee,
738
  .seopress-wizard-services-list-toggle .payment-gateway-fee {
739
+ color: #a6a6a6;
740
  }
741
 
742
  .seopress-wizard-service-item .seopress-wizard-service-name,
743
  .seopress-wizard-services-list-toggle .seopress-wizard-service-name {
744
+ -webkit-flex-basis: 0;
745
+ flex-basis: 0;
746
+ min-width: 160px;
747
+ text-align: center;
748
+ font-weight: 700;
749
+ padding: 2em 0;
750
+ -webkit-align-self: stretch;
751
+ align-self: stretch;
752
+ display: -webkit-box;
753
+ display: -webkit-flex;
754
+ display: flex;
755
+ -webkit-box-align: baseline;
756
+ -webkit-align-items: baseline;
757
+ align-items: baseline;
758
+ }
759
+
760
+ .seopress-wizard-payment-gateway-form
761
+ .seopress-wizard-service-item
762
+ .seopress-wizard-service-name,
763
+ .seopress-wizard-payment-gateway-form
764
+ .seopress-wizard-services-list-toggle
765
+ .seopress-wizard-service-name {
766
+ -webkit-box-pack: center;
767
+ -webkit-justify-content: center;
768
+ justify-content: center;
769
  }
770
 
771
  .seopress-wizard-service-item .seopress-wizard-service-name img,
772
  .seopress-wizard-services-list-toggle .seopress-wizard-service-name img {
773
+ max-width: 75px;
774
  }
775
 
776
  .seopress-wizard-service-item.stripe-logo .seopress-wizard-service-name img,
777
+ .seopress-wizard-services-list-toggle.stripe-logo
778
+ .seopress-wizard-service-name
779
+ img {
780
+ padding: 8px 0;
781
  }
782
 
783
  .seopress-wizard-service-item.paypal-logo .seopress-wizard-service-name img,
784
+ .seopress-wizard-services-list-toggle.paypal-logo
785
+ .seopress-wizard-service-name
786
+ img {
787
+ max-width: 87px;
788
+ padding: 2px 0;
789
  }
790
 
791
  .seopress-wizard-service-item.klarna-logo .seopress-wizard-service-name img,
792
+ .seopress-wizard-services-list-toggle.klarna-logo
793
+ .seopress-wizard-service-name
794
+ img {
795
+ max-width: 87px;
796
+ padding: 12px 0;
797
  }
798
 
799
  .seopress-wizard-service-item.square-logo .seopress-wizard-service-name img,
800
+ .seopress-wizard-services-list-toggle.square-logo
801
+ .seopress-wizard-service-name
802
+ img {
803
+ max-width: 95px;
804
+ padding: 12px 0;
805
  }
806
 
807
  .seopress-wizard-service-item.eway-logo .seopress-wizard-service-name img,
808
+ .seopress-wizard-services-list-toggle.eway-logo
809
+ .seopress-wizard-service-name
810
+ img {
811
+ max-width: 87px;
812
  }
813
 
814
  .seopress-wizard-service-item.payfast-logo .seopress-wizard-service-name img,
815
+ .seopress-wizard-services-list-toggle.payfast-logo
816
+ .seopress-wizard-service-name
817
+ img {
818
+ max-width: 140px;
819
  }
820
 
821
  .seopress-wizard-service-item .seopress-wizard-service-description,
822
  .seopress-wizard-services-list-toggle .seopress-wizard-service-description {
823
+ -webkit-box-flex: 1;
824
+ -webkit-flex-grow: 1;
825
+ flex-grow: 1;
826
+ padding: 20px;
827
  }
828
 
829
  .seopress-wizard-service-item .seopress-wizard-service-description p,
830
  .seopress-wizard-services-list-toggle .seopress-wizard-service-description p {
831
+ margin-bottom: 1em;
832
  }
833
 
834
  .seopress-wizard-service-item .seopress-wizard-service-description p:last-child,
835
+ .seopress-wizard-services-list-toggle
836
+ .seopress-wizard-service-description
837
+ p:last-child {
838
+ margin-bottom: 0;
839
  }
840
 
841
+ .seopress-wizard-service-item
842
+ .seopress-wizard-service-description
843
+ .seopress-wizard-service-settings-description,
844
+ .seopress-wizard-services-list-toggle
845
+ .seopress-wizard-service-description
846
+ .seopress-wizard-service-settings-description {
847
+ display: block;
848
+ font-style: italic;
849
+ color: #999;
850
  }
851
 
852
  .seopress-wizard-service-item .seopress-wizard-service-enable,
853
  .seopress-wizard-services-list-toggle .seopress-wizard-service-enable {
854
+ -webkit-flex-basis: 0;
855
+ flex-basis: 0;
856
+ min-width: 75px;
857
+ text-align: center;
858
+ cursor: pointer;
859
+ padding: 2em 0;
860
+ position: relative;
861
+ max-height: 1.5em;
862
+ -webkit-align-self: flex-start;
863
+ align-self: flex-start;
864
+ -webkit-box-ordinal-group: 4;
865
+ -webkit-order: 3;
866
+ order: 3;
867
  }
868
 
869
  .seopress-wizard-service-item .seopress-wizard-service-toggle,
870
  .seopress-wizard-services-list-toggle .seopress-wizard-service-toggle {
871
+ height: 16px;
872
+ width: 32px;
873
+ border: 2px solid #935687;
874
+ background-color: #935687;
875
+ display: inline-block;
876
+ text-indent: -9999px;
877
+ border-radius: 10em;
878
+ position: relative;
879
  }
880
 
881
+ .seopress-wizard-service-item
882
+ .seopress-wizard-service-toggle
883
+ input[type="checkbox"],
884
+ .seopress-wizard-services-list-toggle
885
+ .seopress-wizard-service-toggle
886
+ input[type="checkbox"] {
887
+ display: none;
888
  }
889
 
890
  .seopress-wizard-service-item .seopress-wizard-service-toggle::before,
891
  .seopress-wizard-services-list-toggle .seopress-wizard-service-toggle::before {
892
+ content: "";
893
+ display: block;
894
+ width: 16px;
895
+ height: 16px;
896
+ background: #fff;
897
+ position: absolute;
898
+ top: 0;
899
+ right: 0;
900
+ border-radius: 100%;
901
  }
902
 
903
  .seopress-wizard-service-item .seopress-wizard-service-toggle.disabled,
904
  .seopress-wizard-services-list-toggle .seopress-wizard-service-toggle.disabled {
905
+ border-color: #999;
906
+ background-color: #999;
907
  }
908
 
909
  .seopress-wizard-service-item .seopress-wizard-service-toggle.disabled::before,
910
+ .seopress-wizard-services-list-toggle
911
+ .seopress-wizard-service-toggle.disabled::before {
912
+ right: auto;
913
+ left: 0;
914
  }
915
 
916
  .seopress-wizard-service-item .seopress-wizard-service-settings,
917
  .seopress-wizard-services-list-toggle .seopress-wizard-service-settings {
918
+ display: none;
919
+ margin-top: 0.75em;
920
+ margin-bottom: 0;
921
+ cursor: default;
922
  }
923
 
924
  .seopress-wizard-service-item .seopress-wizard-service-settings.hide,
925
  .seopress-wizard-services-list-toggle .seopress-wizard-service-settings.hide {
926
+ display: none;
927
  }
928
 
929
  .seopress-wizard-service-item.checked .seopress-wizard-service-settings,
930
+ .seopress-wizard-services-list-toggle.checked
931
+ .seopress-wizard-service-settings {
932
+ display: inline-block;
933
  }
934
 
935
  .seopress-wizard-service-item.checked .seopress-wizard-service-settings.hide,
936
+ .seopress-wizard-services-list-toggle.checked
937
+ .seopress-wizard-service-settings.hide {
938
+ display: none;
939
  }
940
 
941
  .seopress-wizard-service-item.closed,
942
  .seopress-wizard-services-list-toggle.closed {
943
+ border-bottom: 0;
944
  }
945
 
946
  .seopress-wizard-services-list-toggle {
947
+ cursor: pointer;
948
  }
949
 
950
  .seopress-wizard-services-list-toggle .seopress-wizard-service-enable::before {
951
+ content: "\f343";
952
+ font-family: dashicons;
953
+ visibility: initial;
954
+ color: #50575e;
955
+ font-size: 25px;
956
+ margin-top: -7px;
957
+ margin-left: -5px;
958
+ position: absolute;
959
+ visibility: visible;
960
  }
961
 
962
+ .seopress-wizard-services-list-toggle.closed
963
+ .seopress-wizard-service-enable::before {
964
+ content: "\f347";
965
  }
966
 
967
  .seopress-wizard-services-list-toggle .seopress-wizard-service-enable input {
968
+ visibility: hidden;
969
+ position: relative;
970
  }
971
 
972
  .seopress-wizard-services.manual .seopress-wizard-service-item {
973
+ display: none;
974
  }
975
 
976
  .seopress-wizard-services.shipping {
977
+ margin: 0;
978
  }
979
 
980
  .seopress-wizard-services.shipping .seopress-wizard-service-name {
981
+ font-weight: 400;
982
+ text-align: left;
983
+ -webkit-box-align: center;
984
+ -webkit-align-items: center;
985
+ align-items: center;
986
+ max-height: 5em;
987
+ padding: 0;
988
  }
989
 
990
  .seopress-wizard-services.shipping .seopress-wizard-service-item {
991
+ padding-left: 2em;
992
+ padding-top: 0.67em;
993
  }
994
 
995
  .seopress-wizard-services.shipping .seopress-wizard-service-item:first-child {
996
+ border-bottom: 0;
997
+ padding-bottom: 0;
998
+ font-weight: 700;
999
  }
1000
 
1001
+ .seopress-wizard-services.shipping
1002
+ .seopress-wizard-service-item:first-child
1003
+ .seopress-wizard-service-name {
1004
+ font-weight: 700;
1005
  }
1006
 
1007
  .seopress-wizard-services.shipping .shipping-method-setting,
1008
  .seopress-wizard-services.shipping .seopress-wizard-shipping-method-select {
1009
+ display: -webkit-box;
1010
+ display: -webkit-flex;
1011
+ display: flex;
1012
  }
1013
 
1014
  .seopress-wizard-services.shipping .shipping-method-setting.hide,
1015
+ .seopress-wizard-services.shipping
1016
+ .seopress-wizard-shipping-method-select.hide {
1017
+ display: none;
1018
  }
1019
 
1020
  .seopress-wizard-services.shipping .shipping-method-setting input,
1021
  .seopress-wizard-services.shipping .seopress-wizard-shipping-method-dropdown {
1022
+ margin-right: 2em;
1023
+ margin-bottom: 1em;
1024
  }
1025
 
1026
  .seopress-wizard-services.shipping .shipping-method-setting input .select2,
1027
+ .seopress-wizard-services.shipping
1028
+ .seopress-wizard-shipping-method-dropdown
1029
+ .select2 {
1030
+ min-width: 130px;
1031
  }
1032
 
1033
  .seopress-wizard-services.shipping .seopress-wizard-service-description {
1034
+ display: -webkit-box;
1035
+ display: -webkit-flex;
1036
+ display: flex;
1037
+ -webkit-box-orient: vertical;
1038
+ -webkit-box-direction: normal;
1039
+ -webkit-flex-direction: column;
1040
+ flex-direction: column;
1041
+ color: #a6a6a6;
1042
  }
1043
 
1044
+ .seopress-wizard-services.shipping
1045
+ .seopress-wizard-service-item:not(:first-child)
1046
+ .seopress-wizard-service-description {
1047
+ font-size: 0.92em;
1048
+ padding-bottom: 10px;
1049
  }
1050
 
1051
  .seopress-wizard-services.shipping .shipping-method-setting input {
1052
+ width: 95px;
1053
+ border: 1px solid #aaa;
1054
+ border-color: #ddd;
1055
+ border-radius: 4px;
1056
+ height: 28px;
1057
+ padding-left: 8px;
1058
+ padding-right: 24px;
1059
+ font-size: 14px;
1060
+ color: #444;
1061
+ background-color: #fff;
1062
+ display: inline-block;
1063
  }
1064
 
1065
  .seopress-wizard-services.shipping .shipping-method-description,
1066
  .seopress-wizard-services.shipping .shipping-method-setting .description {
1067
+ color: #7e7e7e;
1068
+ font-size: 0.9em;
1069
  }
1070
 
1071
+ .seopress-wizard-services.shipping
1072
+ .shipping-method-setting
1073
+ input::-webkit-input-placeholder {
1074
+ color: #e1e1e1;
1075
  }
1076
 
1077
+ .seopress-wizard-services.shipping
1078
+ .shipping-method-setting
1079
+ input:-ms-input-placeholder {
1080
+ color: #e1e1e1;
1081
  }
1082
 
1083
+ .seopress-wizard-services.shipping
1084
+ .shipping-method-setting
1085
+ input::-ms-input-placeholder {
1086
+ color: #e1e1e1;
1087
  }
1088
 
1089
  .seopress-wizard-services.shipping .shipping-method-setting input::placeholder {
1090
+ color: #e1e1e1;
1091
  }
1092
 
1093
  .seopress-setup-shipping-units p {
1094
+ line-height: 1.5em;
1095
+ font-size: 13px;
1096
+ margin-bottom: 0.25em;
1097
+ text-align: center;
1098
  }
1099
 
1100
  .seopress-setup-shipping-units .seopress-setup-shipping-unit {
1101
+ margin-bottom: 1.75em;
1102
  }
1103
 
1104
  .seopress-setup-shipping-units .seopress-setup-shipping-unit .select2 {
1105
+ min-width: 125px;
1106
+ top: -5px;
1107
  }
1108
 
1109
  .hide {
1110
+ display: none;
1111
  }
1112
 
1113
  .seopress-wizard-features {
1114
+ display: -webkit-box;
1115
+ display: -webkit-flex;
1116
+ display: flex;
1117
+ -webkit-flex-wrap: wrap;
1118
+ flex-wrap: wrap;
1119
+ list-style: none;
1120
+ padding: 0;
1121
  }
1122
 
1123
  .seopress-wizard-features .seopress-wizard-feature-item {
1124
+ -webkit-flex-basis: calc(50% - 4em - 3px);
1125
+ flex-basis: calc(50% - 4em - 3px);
1126
+ border: 1px solid #eee;
1127
+ padding: 2em;
1128
  }
1129
 
1130
  .seopress-wizard-features .seopress-wizard-feature-item:nth-child(1) {
1131
+ border-radius: 4px 0 0 0;
1132
  }
1133
 
1134
  .seopress-wizard-features .seopress-wizard-feature-item:nth-child(2) {
1135
+ border-left: 0;
1136
+ border-radius: 0 4px 0 0;
1137
  }
1138
 
1139
  .seopress-wizard-features .seopress-wizard-feature-item:nth-child(3) {
1140
+ border-top: 0;
1141
+ border-radius: 0 0 0 4px;
1142
  }
1143
 
1144
  .seopress-wizard-features .seopress-wizard-feature-item:nth-child(4) {
1145
+ border-top: 0;
1146
+ border-left: 0;
1147
+ border-radius: 0 0 4px 0;
1148
  }
1149
 
1150
  .seopress-wizard-features p.seopress-wizard-feature-description,
1151
  .seopress-wizard-features p.seopress-wizard-feature-name {
1152
+ margin: 0;
1153
+ line-height: 1.5em;
1154
  }
1155
 
1156
  h3.jetpack-reasons {
1157
+ text-align: center;
1158
+ margin: 3em 0 1em 0;
1159
+ font-size: 14px;
1160
  }
1161
 
1162
  .jetpack-logo,
1163
  .wcs-notice {
1164
+ display: block;
1165
+ margin: 1.75em auto 2em auto;
1166
+ max-height: 175px;
1167
  }
1168
 
1169
  .activate-splash .jetpack-logo {
1170
+ width: 170px;
1171
+ margin-bottom: 0;
1172
  }
1173
 
1174
  .activate-splash .wcs-notice {
1175
+ margin-top: 1em;
1176
+ padding-left: 57px;
1177
  }
1178
 
1179
  .step {
1180
+ text-align: center;
1181
  }
1182
 
1183
  .seopress-setup .seopress-setup-actions .button {
1184
+ text-shadow: none;
1185
+ font-weight: 300;
1186
+ font-size: 16px;
1187
+ padding: 1em 2em;
1188
+ box-shadow: none;
1189
+ min-width: 12em;
1190
+ min-width: auto;
1191
+ margin-top: 10px;
1192
  }
1193
 
1194
  .seopress-setup .seopress-setup-actions .button:active,
1195
  .seopress-setup .seopress-setup-actions .button:focus,
1196
  .seopress-setup .seopress-setup-actions .button:hover {
1197
+ box-shadow: none;
1198
  }
1199
 
1200
  .seopress-setup .seopress-setup-actions .plugin-install-info {
1201
+ display: block;
1202
+ font-style: italic;
1203
+ color: #999;
1204
+ font-size: 14px;
1205
+ line-height: 1.5em;
1206
+ margin: 5px 0;
1207
  }
1208
 
1209
+ .seopress-setup .seopress-setup-actions .plugin-install-info > * {
1210
+ display: block;
1211
  }
1212
 
1213
+ .seopress-setup
1214
+ .seopress-setup-actions
1215
+ .plugin-install-info
1216
+ .plugin-install-info-list-item::after {
1217
+ content: ", ";
1218
  }
1219
 
1220
+ .seopress-setup
1221
+ .seopress-setup-actions
1222
+ .plugin-install-info
1223
+ .plugin-install-info-list-item:last-of-type::after {
1224
+ content: ". ";
1225
  }
1226
 
1227
  .seopress-setup .seopress-setup-actions .plugin-install-info a {
1228
+ white-space: nowrap;
1229
  }
1230
 
1231
+ .seopress-setup
1232
+ .seopress-setup-actions
1233
+ .plugin-install-info
1234
+ a:not(:hover):not(:focus) {
1235
+ color: inherit;
1236
  }
1237
 
1238
  .plugin-install-source {
1239
+ background: rgba(187, 119, 174, 0.15);
1240
  }
1241
 
1242
  .plugin-install-source:not(.seopress-wizard-service-item) {
1243
+ box-shadow: 0 0 0 10px rgba(187, 119, 174, 0.15);
1244
  }
1245
 
1246
  .location-prompt {
1247
+ color: #50575e;
1248
+ font-size: 13px;
1249
+ font-weight: 500;
1250
+ margin-bottom: 0.5em;
1251
+ margin-top: 0.85em;
1252
+ display: inline-block;
1253
+ width: 100%;
1254
+ text-align: left;
1255
  }
1256
 
1257
  .location-input {
1258
+ border: 1px solid #aaa;
1259
+ border-color: #ddd;
1260
+ border-radius: 4px;
1261
+ height: 30px;
1262
+ width: calc(100% - 8px - 24px - 2px);
1263
+ padding-left: 8px;
1264
+ padding-right: 24px;
1265
+ font-size: 16px;
1266
+ color: #444;
1267
+ background-color: #fff;
1268
+ display: inline-block;
1269
+ width: 100%;
1270
  }
1271
 
1272
  .location-input.dropdown {
1273
+ width: 100%;
1274
+ max-width: inherit;
1275
  }
1276
 
1277
  .address-step .select2 {
1278
+ min-width: 100%;
1279
  }
1280
 
1281
  .store-address-container .city-and-postcode {
1282
+ display: -webkit-box;
1283
+ display: -webkit-flex;
1284
+ display: flex;
1285
  }
1286
 
1287
  .store-address-container .city-and-postcode div {
1288
+ -webkit-flex-basis: 50%;
1289
+ flex-basis: 50%;
1290
+ margin-right: 1em;
1291
  }
1292
 
1293
  .store-address-container .city-and-postcode div:last-of-type {
1294
+ margin-right: 0;
1295
  }
1296
 
1297
  .store-address-container .select2-container,
1298
+ .store-address-container input[type="text"],
1299
  .store-address-container select {
1300
+ margin-bottom: 10px;
1301
  }
1302
 
1303
  .product-type-container {
1304
+ margin-top: 14px;
1305
+ margin-bottom: 1px;
1306
  }
1307
 
1308
  #seopress_sell_in_person {
1309
+ margin-left: 0;
1310
  }
1311
 
1312
  .seopress-wizard-service-settings .payment-email-input {
1313
+ border: 1px solid #aaa;
1314
+ border-color: #ddd;
1315
+ border-radius: 4px;
1316
+ height: 30px;
1317
+ padding: 0 8px;
1318
+ font-size: 14px;
1319
+ color: #444;
1320
+ background-color: #fff;
1321
+ display: inline-block;
1322
  }
1323
 
1324
  .seopress-wizard-service-settings .payment-email-input[disabled] {
1325
+ color: #aaa;
1326
  }
1327
 
1328
  .newsletter-form-container {
1329
+ display: -webkit-box;
1330
+ display: -webkit-flex;
1331
+ display: flex;
1332
  }
1333
 
1334
  .newsletter-form-container .newsletter-form-email {
1335
+ border: 1px solid #aaa;
1336
+ border-color: #ddd;
1337
+ border-radius: 4px;
1338
+ height: 42px;
1339
+ padding: 0 8px;
1340
+ font-size: 16px;
1341
+ color: #50575e;
1342
+ background-color: #fff;
1343
+ display: inline-block;
1344
+ margin-right: 6px;
1345
+ -webkit-box-flex: 1;
1346
+ -webkit-flex-grow: 1;
1347
+ flex-grow: 1;
1348
  }
1349
 
1350
  .newsletter-form-container .newsletter-form-button-container {
1351
+ -webkit-box-flex: 0;
1352
+ -webkit-flex-grow: 0;
1353
+ flex-grow: 0;
1354
  }
1355
 
1356
  .seopress-setup .seopress-setup-actions .button.newsletter-form-button {
1357
+ height: 42px;
1358
+ padding: 0 1em;
1359
+ margin: 0;
1360
  }
1361
 
1362
  .seopress-wizard-next-steps {
1363
+ border: 1px solid #eee;
1364
+ border-radius: 4px;
1365
+ list-style: none;
1366
+ padding: 0;
1367
  }
1368
 
1369
  .seopress-wizard-next-steps li {
1370
+ padding: 0;
1371
  }
1372
 
1373
  .seopress-wizard-next-steps .seopress-wizard-next-step-item {
1374
+ display: -webkit-box;
1375
+ display: -webkit-flex;
1376
+ display: flex;
1377
+ border-top: 1px solid #eee;
1378
+ text-align: left;
1379
  }
1380
 
1381
  .seopress-wizard-next-steps .seopress-wizard-next-step-item:first-child {
1382
+ border-top: 0;
1383
  }
1384
 
1385
  .seopress-wizard-next-steps .seopress-wizard-next-step-description {
1386
+ -webkit-box-flex: 1;
1387
+ -webkit-flex-grow: 1;
1388
+ flex-grow: 1;
1389
+ margin: 1.5em;
1390
  }
1391
 
1392
  .seopress-wizard-next-steps .seopress-wizard-next-step-action {
1393
+ -webkit-box-flex: 0;
1394
+ -webkit-flex-grow: 0;
1395
+ flex-grow: 0;
1396
+ display: -webkit-box;
1397
+ display: -webkit-flex;
1398
+ display: flex;
1399
+ -webkit-box-align: center;
1400
+ -webkit-align-items: center;
1401
+ align-items: center;
1402
+ justify-content: center;
1403
  }
1404
 
1405
  .seopress-wizard-next-steps .seopress-wizard-next-step-action .button {
1406
+ margin: 1em 1.5em;
1407
  }
1408
 
1409
  .seopress-wizard-next-steps p.next-step-heading {
1410
+ margin: 0;
1411
+ font-size: 0.95em;
1412
+ font-weight: 400;
1413
+ font-variant: all-petite-caps;
1414
  }
1415
 
1416
  .seopress-wizard-next-steps p.next-step-extra-info {
1417
+ margin: 0;
1418
  }
1419
 
1420
  .seopress-wizard-next-steps h3.next-step-description {
1421
+ margin: 0;
1422
+ font-size: 16px;
1423
+ font-weight: 600;
1424
  }
1425
 
1426
  .seopress-wizard-next-steps .seopress-wizard-additional-steps {
1427
+ border-top: 1px solid #eee;
1428
  }
1429
 
1430
+ .seopress-wizard-next-steps
1431
+ .seopress-wizard-additional-steps
1432
+ .seopress-wizard-next-step-description {
1433
+ margin-bottom: 0;
1434
  }
1435
 
1436
+ .seopress-wizard-next-steps
1437
+ .seopress-wizard-additional-steps
1438
+ .seopress-setup-actions {
1439
+ margin: 0 0 1.5em 0;
1440
  }
1441
 
1442
+ .seopress-wizard-next-steps
1443
+ .seopress-wizard-additional-steps
1444
+ .seopress-setup-actions
1445
+ .button {
1446
+ font-size: 15px;
1447
+ margin: 1em 0 1em 1.5em;
1448
  }
1449
 
1450
+ .seopress-wizard-next-steps
1451
+ .seopress-wizard-additional-steps
1452
+ .seopress-setup-actions
1453
+ .button::last-child {
1454
+ margin-right: 1.5em;
1455
  }
1456
 
1457
  p.next-steps-help-text {
1458
+ color: #9f9f9f;
1459
+ padding: 0 2em;
1460
+ text-align: center;
1461
+ font-size: 0.9em;
1462
  }
1463
 
1464
  p.jetpack-terms {
1465
+ font-size: 0.8em;
1466
+ text-align: center;
1467
+ max-width: 480px;
1468
+ margin: 0 auto;
1469
+ line-height: 1.5em;
1470
  }
1471
 
1472
  .seopress-error {
1473
+ background: #ffe6e5;
1474
+ border-color: #ffc5c2;
1475
+ padding: 1em;
1476
+ margin-bottom: 1em;
1477
  }
1478
 
1479
  .seopress-error p {
1480
+ margin-top: 0;
1481
+ margin-bottom: 0.5em;
1482
+ color: #444;
1483
  }
1484
 
1485
  .seopress-error a {
1486
+ color: #ff645c;
1487
  }
1488
 
1489
  .seopress-error .reconnect-reminder {
1490
+ font-size: 0.85em;
1491
  }
1492
 
1493
  .seopress-error .seopress-setup-actions .button {
1494
+ font-size: 14px;
1495
  }
1496
 
1497
  .seopress-wizard-service-setting-ppec_paypal_reroute_requests,
1498
  .seopress-wizard-service-setting-stripe_create_account {
1499
+ display: -webkit-box;
1500
+ display: -webkit-flex;
1501
+ display: flex;
1502
+ -webkit-box-align: start;
1503
+ -webkit-align-items: flex-start;
1504
+ align-items: flex-start;
1505
  }
1506
 
1507
+ .seopress-wizard-service-setting-ppec_paypal_reroute_requests
1508
+ .payment-checkbox-input,
1509
  .seopress-wizard-service-setting-stripe_create_account .payment-checkbox-input {
1510
+ -webkit-box-ordinal-group: 2;
1511
+ -webkit-order: 1;
1512
+ order: 1;
1513
+ margin-top: 5px;
1514
+ margin-left: 0;
1515
+ margin-right: 0;
1516
+ width: 1.5em;
1517
+ }
1518
+
1519
+ .seopress-wizard-service-setting-ppec_paypal_reroute_requests
1520
+ .ppec_paypal_reroute_requests,
1521
+ .seopress-wizard-service-setting-ppec_paypal_reroute_requests
1522
+ .stripe_create_account,
1523
+ .seopress-wizard-service-setting-stripe_create_account
1524
+ .ppec_paypal_reroute_requests,
1525
  .seopress-wizard-service-setting-stripe_create_account .stripe_create_account {
1526
+ -webkit-box-ordinal-group: 3;
1527
+ -webkit-order: 2;
1528
+ order: 2;
1529
+ margin-left: 0.3em;
1530
  }
1531
 
1532
  .seopress-wizard-service-setting-ppec_paypal_email,
1533
  .seopress-wizard-service-setting-stripe_email {
1534
+ margin-top: 0.75em;
1535
+ margin-left: 1.5em;
1536
  }
1537
 
1538
  .seopress-wizard-service-setting-ppec_paypal_email label.ppec_paypal_email,
1539
  .seopress-wizard-service-setting-ppec_paypal_email label.stripe_email,
1540
  .seopress-wizard-service-setting-stripe_email label.ppec_paypal_email,
1541
  .seopress-wizard-service-setting-stripe_email label.stripe_email {
1542
+ position: absolute;
1543
+ margin: -1px;
1544
+ padding: 0;
1545
+ height: 1px;
1546
+ width: 1px;
1547
+ overflow: hidden;
1548
+ clip: rect(0 0 0 0);
1549
+ border: 0;
1550
  }
1551
 
1552
  .seopress-wizard-service-setting-ppec_paypal_email input.payment-email-input,
1553
  .seopress-wizard-service-setting-stripe_email input.payment-email-input {
1554
+ box-sizing: border-box;
1555
+ margin-bottom: 0.5em;
1556
+ width: 100%;
1557
+ height: 32px;
1558
  }
1559
 
1560
  .seopress-setup-content .recommended-step {
1561
+ padding: 0 2.5em;
1562
+ text-align: left;
1563
+ display: inline-block;
1564
+ width: 100%;
1565
+ box-sizing: border-box;
1566
  }
1567
 
1568
  .seopress-setup-content .recommended-step a {
1569
+ text-decoration: none;
1570
  }
1571
 
1572
  .seopress-setup-content .recommended-item {
1573
+ list-style: none;
1574
+ margin: 1rem 0;
1575
  }
1576
 
1577
  .seopress-setup-content .recommended-item:last-child label {
1578
+ margin-bottom: 0;
1579
  }
1580
 
1581
  .seopress-setup-content .recommended-item label {
1582
+ display: -webkit-box;
1583
+ display: -webkit-flex;
1584
+ display: flex;
1585
+ -webkit-box-align: center;
1586
+ -webkit-align-items: center;
1587
+ align-items: center;
1588
+ margin-bottom: 1.5em;
1589
  }
1590
 
1591
  .seopress-setup-content .recommended-item label::after,
1592
  .seopress-setup-content .recommended-item label::before {
1593
+ top: auto;
1594
  }
1595
 
1596
  .seopress-setup-content .recommended-item label::after {
1597
+ margin-top: -1.5px;
1598
  }
1599
 
1600
  .seopress-setup-content .recommended-item .recommended-item-icon {
1601
+ border: 1px solid #fff;
1602
+ border-radius: 7px;
1603
+ height: 3.5em;
1604
+ margin-right: 1em;
1605
+ margin-left: 4px;
1606
  }
1607
 
1608
+ .seopress-setup-content
1609
+ .recommended-item
1610
+ .recommended-item-icon.recommended-item-icon-storefront_theme {
1611
+ background-color: #f4a224;
1612
+ max-height: 3em;
1613
+ max-width: 3em;
1614
+ padding: 0.25em;
1615
  }
1616
 
1617
+ .seopress-setup-content
1618
+ .recommended-item
1619
+ .recommended-item-icon.recommended-item-icon-automated_taxes {
1620
+ background-color: #d0011b;
1621
+ max-height: 1.75em;
1622
+ padding: 0.875em;
1623
  }
1624
 
1625
+ .seopress-setup-content
1626
+ .recommended-item
1627
+ .recommended-item-icon.recommended-item-icon-mailchimp {
1628
+ background-color: #ffe01b;
1629
+ height: 2em;
1630
+ padding: 0.75em;
1631
  }
1632
 
1633
+ .seopress-setup-content
1634
+ .recommended-item
1635
+ .recommended-item-icon.recommended-item-icon-seopress_services {
1636
+ background-color: #f0f0f0;
1637
+ max-height: 1.5em;
1638
+ padding: 1.3em 0.7em;
1639
  }
1640
 
1641
+ .seopress-setup-content
1642
+ .recommended-item
1643
+ .recommended-item-icon.recommended-item-icon-shipstation {
1644
+ background-color: #f0f0f0;
1645
+ padding: 0.3em;
1646
  }
1647
 
1648
+ .seopress-setup-content
1649
+ .recommended-item
1650
+ .recommended-item-description-container
1651
+ h3 {
1652
+ font-size: 15px;
1653
+ font-weight: 700;
1654
+ letter-spacing: 0.5px;
1655
+ margin-bottom: 0;
1656
  }
1657
 
1658
+ .seopress-setup-content
1659
+ .recommended-item
1660
+ .recommended-item-description-container
1661
+ p {
1662
+ margin-top: 0;
1663
+ line-height: 1.5em;
1664
  }
1665
 
1666
  .seopress-wizard-service-info {
1667
+ padding: 1em 2em;
1668
+ background-color: #fafafa;
1669
  }
1670
 
1671
  .help_tip {
1672
+ -webkit-text-decoration: underline dotted;
1673
+ text-decoration: underline dotted;
1674
  }
1675
 
1676
  .seopress-setup #tiptip_content {
1677
+ background: #5f6973;
1678
  }
1679
 
1680
  .seopress-setup #tiptip_holder.tip_top #tiptip_arrow_inner {
1681
+ border-top-color: #5f6973;
1682
  }
1683
 
1684
  .seopress-setup-shipping-recommended {
1685
+ border-bottom: 1px solid #eee;
1686
+ margin-top: 0;
1687
+ padding: 30px 0;
1688
+ }
1689
+
1690
+ @media only screen and (max-width: 768px) {
1691
+ .seopress-setup .seopress-setup-content {
1692
+ margin: 25px auto 24px;
1693
+ }
1694
+ #seopress-logo img {
1695
+ max-width: 80%;
1696
+ }
1697
+ .store-address-container .city-and-postcode {
1698
+ display: block;
1699
+ }
1700
+ .store-address-container .city-and-postcode div {
1701
+ margin-right: 0;
1702
+ }
1703
+ .seopress-wizard-service-item,
1704
+ .seopress-wizard-services-list-toggle {
1705
+ -webkit-flex-wrap: wrap;
1706
+ flex-wrap: wrap;
1707
+ }
1708
+ .seopress-wizard-service-item .seopress-wizard-service-enable,
1709
+ .seopress-wizard-services-list-toggle .seopress-wizard-service-enable {
1710
+ -webkit-box-ordinal-group: 3;
1711
+ -webkit-order: 2;
1712
+ order: 2;
1713
+ padding: 20px 0 0;
1714
+ }
1715
+ .seopress-wizard-service-item .seopress-wizard-service-description,
1716
+ .seopress-wizard-services-list-toggle .seopress-wizard-service-description {
1717
+ -webkit-box-ordinal-group: 4;
1718
+ -webkit-order: 3;
1719
+ order: 3;
1720
+ }
1721
+ .seopress-wizard-service-item .seopress-wizard-service-name,
1722
+ .seopress-wizard-services-list-toggle .seopress-wizard-service-name {
1723
+ padding: 20px 20px 0;
1724
+ text-align: left;
1725
+ -webkit-box-pack: justify !important;
1726
+ -webkit-justify-content: space-between !important;
1727
+ justify-content: space-between !important;
1728
+ }
1729
+ .seopress-wizard-service-item .seopress-wizard-service-name img,
1730
+ .seopress-wizard-services-list-toggle .seopress-wizard-service-name img {
1731
+ margin: 0;
1732
+ }
1733
+ .newsletter-form-container {
1734
+ display: block;
1735
+ }
1736
+ .newsletter-form-container .newsletter-form-email {
1737
+ display: block;
1738
+ box-sizing: border-box;
1739
+ width: 100%;
1740
+ margin-bottom: 10px;
1741
+ }
1742
+ .newsletter-form-container .button.newsletter-form-button {
1743
+ float: left;
1744
+ }
1745
+ .seopress-wizard-next-steps .seopress-wizard-next-step-item {
1746
+ -webkit-flex-wrap: wrap;
1747
+ flex-wrap: wrap;
1748
+ }
1749
+ .seopress-wizard-next-steps
1750
+ .seopress-wizard-next-step-item
1751
+ .seopress-wizard-next-step-description {
1752
+ margin-bottom: 0;
1753
+ }
1754
+ .seopress-wizard-next-steps
1755
+ .seopress-wizard-next-step-item
1756
+ .seopress-wizard-next-step-action
1757
+ p {
1758
+ margin: 0;
1759
+ }
1760
+ .seopress-setup-steps li a {
1761
+ text-indent: -9999px;
1762
+ position: absolute;
1763
+ left: calc(50% - 24px);
1764
+ top: -10px;
1765
+ }
1766
+ .seopress-setup-steps li span {
1767
+ display: none;
1768
+ }
1769
+ }
assets/css/seopress-setup.min.css CHANGED
@@ -1 +1 @@
1
- html{background-color:#f6f7f7;margin:0}body.seopress-setup{box-shadow:none;background:#f6f7f7;padding:0;margin:0;max-width:100%}.wp-core-ui .button,.wp-core-ui .button-secondary{color:#6159e6;border-color:#6159e6;background:#fff;vertical-align:middle}.wp-core-ui .button-secondary:hover{color:#555d66;background:#fafafa;border-color:#999}.wp-core-ui select:focus,input[type=checkbox]:focus,input[type=color]:focus,input[type=date]:focus,input[type=datetime-local]:focus,input[type=datetime]:focus,input[type=email]:focus,input[type=month]:focus,input[type=number]:focus,input[type=password]:focus,input[type=radio]:focus,input[type=search]:focus,input[type=tel]:focus,input[type=text]:focus,input[type=time]:focus,input[type=url]:focus,input[type=week]:focus,select:focus,textarea:focus{border-color:#6259e6;box-shadow:0 0 0 1px #6259e6;outline:2px solid transparent}.seopress-setup .sp-progress-bar{background-color:#6159e6}.spinner{display:inline-block}.log{margin:0;text-transform:uppercase;display:inline-block;vertical-align:middle;padding:5px;color:rgba(19,191,17,1);font-style:italic}.admin_page_seopress_csv_importer.seopress-styles .seopress-option{max-width:700px;margin:40px auto}.admin_page_seopress_csv_importer .description{color:#999;margin-top:4px;display:block}.admin_page_seopress_csv_importer .description code{background:0 0;padding:0;white-space:pre-line;word-wrap:break-word;word-break:break-all}.admin_page_seopress_csv_importer .seopress-setup-content table thead th{font-weight:700}.admin_page_seopress_csv_importer .seopress-setup-content table tr:nth-child(odd) td{background:#fbfbfb}.admin_page_seopress_csv_importer .seopress-setup-content table td select{width:100%}.admin_page_seopress_csv_importer .dashicons-yes-alt:before{color:#3642ff}.admin_page_seopress_csv_importer .seopress-wizard-services{padding:0}.seopress-setup{text-align:center}.seopress-setup .select2-container{text-align:left;width:auto}.seopress-setup .hidden{display:none}.seopress-setup .seopress-setup-content{box-shadow:0 1px 3px rgba(0,0,0,.13);padding:2em;margin:65px auto 24px;background:#fff;overflow:hidden;zoom:1;text-align:center;max-width:700px}.seopress-setup-content h1,.seopress-setup-content h2,.seopress-setup-content h3,.seopress-setup-content table{margin:0 0 20px;border:0;padding:0;color:#2c3338;clear:none;font-weight:500}.seopress-setup-content p{margin:20px 0;font-size:1em;line-height:1.75em;color:#50575e}.seopress-setup-content .m0{margin:0}.seopress-setup-content table{font-size:1em;line-height:1.75em;color:#50575e;text-align:left}.seopress-setup-content a{color:#6259e6}.seopress-setup-content a:focus,.seopress-setup-content a:hover{color:#111}.seopress-option #seopress-edd-license-btn,.seopress-option #seopress-refresh{width:auto}.seopress-setup-content .form-table th{width:35%;vertical-align:top;font-weight:400}.seopress-setup-content .form-table td{vertical-align:top}.seopress-setup-content .form-table td input,.seopress-setup-content .form-table td select{width:100%;box-sizing:border-box}.seopress-setup-content .form-table td input[size]{width:auto}.seopress-setup-content .form-table td .description{line-height:1.5em;display:block;margin-top:.25em;color:#999;font-style:italic}.seopress-setup-content .form-table td .input-checkbox,.seopress-setup-content .form-table td .input-radio{width:auto;box-sizing:inherit;padding:inherit;margin:0 .5em 0 0;box-shadow:none}.seopress-setup-content .form-table .section_title td{padding:0}.seopress-setup-content .form-table .section_title td h2,.seopress-setup-content .form-table .section_title td p{margin:12px 0 0}.seopress-setup-content .form-table td,.seopress-setup-content .form-table th{padding:12px 0;margin:0;border:0}.seopress-setup-content .form-table td:first-child,.seopress-setup-content .form-table th:first-child{padding-right:1em}.seopress-setup-content .seopress-setup-pages{width:100%;border-top:1px solid #eee}.seopress-setup-content .seopress-setup-pages thead th{display:none}.seopress-setup-content .seopress-setup-pages .page-name{width:30%;font-weight:700}.seopress-setup-content .seopress-setup-pages td,.seopress-setup-content .seopress-setup-pages th{padding:14px 0;border-bottom:1px solid #eee}.seopress-setup-content .seopress-setup-pages td:first-child,.seopress-setup-content .seopress-setup-pages th:first-child{padding-right:9px}.seopress-setup-content .seopress-setup-pages th{padding-top:0}.seopress-setup-content .seopress-setup-pages .page-options p{color:#777;margin:6px 0 0 24px;line-height:1.75em}.seopress-setup-content .seopress-setup-pages .page-options p input{vertical-align:middle;margin:1px 0 0;height:1.75em;width:1.75em;line-height:1.75em}.seopress-setup-content .seopress-setup-pages .page-options p label{line-height:1}@media screen and (max-width:782px){.seopress-setup-content .form-table tbody th{width:auto}}.seopress-setup-content .twitter-share-button{float:right}.seopress-setup-content .seopress-setup-next-steps{overflow:hidden;margin:0 0 24px;padding-bottom:2px}.seopress-setup-content .seopress-setup-next-steps h2{margin-bottom:12px}.seopress-setup-content .seopress-setup-next-steps .seopress-setup-next-steps-first{float:left;width:50%;box-sizing:border-box}.seopress-setup-content .seopress-setup-next-steps .seopress-setup-next-steps-last{float:right;width:50%;box-sizing:border-box}.seopress-setup-content .seopress-setup-next-steps ul{padding:0 2em 0 0;list-style:none outside;margin:0}.seopress-setup-content .seopress-setup-next-steps ul li a{display:block;padding:0 0 .75em}.seopress-setup-content .seopress-setup-next-steps ul .setup-product a.button{background-color:#f7f7f7;border-color:#ccc;color:#23282d;box-shadow:inset 0 1px 0 rgba(255,255,255,.25),0 1px 0 #ccc;text-shadow:1px 0 1px #eee,0 1px 1px #eee;font-size:1em;height:auto;line-height:1.75em;margin:0 0 .75em;opacity:1;padding:1em;text-align:center}.seopress-setup-content .seopress-setup-next-steps ul .setup-product a.button:active,.seopress-setup-content .seopress-setup-next-steps ul .setup-product a.button:focus,.seopress-setup-content .seopress-setup-next-steps ul .setup-product a.button:hover{background:#f5f5f5;border-color:#aaa}.seopress-setup-content .seopress-setup-next-steps ul .setup-product a.button-primary{color:#fff;background-color:#bb77ae;border-color:#a36597;box-shadow:inset 0 1px 0 rgba(255,255,255,.25),0 1px 0 #a36597;text-shadow:0 -1px 1px #a36597,1px 0 1px #a36597,0 1px 1px #a36597,-1px 0 1px #a36597}.seopress-setup-content .seopress-setup-next-steps ul .setup-product a.button-primary:active,.seopress-setup-content .seopress-setup-next-steps ul .setup-product a.button-primary:focus,.seopress-setup-content .seopress-setup-next-steps ul .setup-product a.button-primary:hover{color:#fff;background:#a36597;border-color:#a36597;box-shadow:inset 0 1px 0 rgba(255,255,255,.25),0 1px 0 #a36597}.seopress-setup-content .seopress-setup-next-steps ul li a::before{color:#82878c;font:normal 20px/1 dashicons;speak:none;display:inline-block;padding:0 10px 0 0;top:1px;position:relative;text-decoration:none!important;vertical-align:top}.seopress-setup-content .seopress-setup-next-steps ul .learn-more a::before{content:"\f105"}.seopress-setup-content .seopress-setup-next-steps ul .video-walkthrough a::before{content:"\f126"}.seopress-setup-content .seopress-setup-next-steps ul .newsletter a::before{content:"\f465"}.seopress-setup-content .seopress-newsletter,.seopress-setup-content .updated{padding:24px;margin:0 0 24px;overflow:hidden;background:#f5f5f5}.seopress-setup-content .seopress-newsletter p,.seopress-setup-content .updated p{padding:0;margin:0 0 12px}.seopress-setup-content .seopress-newsletter form,.seopress-setup-content .seopress-tracker,.seopress-setup-content .updated form,.seopress-setup-content .updated p:last-child{margin:24px 0;border:1px solid #eee;padding:20px;border-radius:4px;overflow:hidden}.seopress-setup-content .seopress-tracker p{font-size:14px;line-height:1.5em}.seopress-setup-content .seopress-tracker .checkbox{line-height:24px;font-weight:500;font-size:1em;margin-top:0;margin-bottom:20px}.seopress-setup-content .checkbox input[type=checkbox]{opacity:0;position:absolute;left:-9999px}.seopress-setup-content .checkbox label{position:relative;display:inline-block;padding-left:28px}.seopress-setup-content .checkbox label::after,.seopress-setup-content .checkbox label::before{position:absolute;content:"";display:inline-block}.seopress-setup-content .checkbox label::before{height:16px;width:16px;left:0;top:3px;border:1px solid #aaa;background-color:#fff;border-radius:3px}.seopress-setup-content .checkbox label::after{height:5px;width:9px;border-left:2px solid;border-bottom:2px solid;-webkit-transform:rotate(-45deg);-ms-transform:rotate(-45deg);transform:rotate(-45deg);left:4px;top:7px;color:#fff}.seopress-setup-content .checkbox input[type=checkbox]+label::after{content:none}.seopress-setup-content .checkbox input[type=checkbox]:checked+label::after{content:""}.seopress-setup-content .checkbox input[type=checkbox]:focus+label::before{outline:#3b99fc auto 5px}.seopress-setup-content .checkbox input[type=checkbox]:checked+label::before{background:#6259e6;border-color:#6259e6}.seopress-setup-steps{padding:10px 0 24px;margin:0;list-style:none outside;overflow:hidden;color:#ccc;width:100%;height:56px;border-bottom:1px solid #dcdcde;align-items:center;justify-content:center;background:#fff;display:inline-flex}.seopress-setup-steps li{width:100%;float:left;padding:0 0 1.5em;margin:0;text-align:center;position:relative;border-bottom:2px solid #ccc;line-height:24px;font-size:16px}.seopress-setup-steps li a{text-decoration:none;padding:1.5em;position:relative;z-index:1;color:#1d2327;line-height:24px;font-size:16px;transition:color .3s linear}.seopress-setup-steps li a:focus,.seopress-setup-steps li a:hover{color:#6159e6}.seopress-setup-steps li::before{content:"";border:3px solid #ccc;border-radius:100%;width:24px;height:24px;position:absolute;bottom:0;left:50%;margin-left:-15px;margin-bottom:-15px;background:#fff;font-family:Dashicons;font-size:24px;line-height:24px}.seopress-setup-steps li.active{color:#6259e6;font-weight:700;text-decoration:none;position:relative;z-index:1;color:#1d2327;line-height:24px}.seopress-setup-steps li.active::before{border-color:#6259e6}@keyframes fade{0%{border-color:#6259e600;left:-100%}100%{border-color:#6259e6;left:0}}.seopress-setup-steps li.active::after{content:"";position:absolute;bottom:-2px;left:0;animation-name:fade;animation-duration:2s;width:100%;animation-iteration-count:1;height:2px;background:#6259e6;z-index:-1}.seopress-setup-steps li.done{border-color:#6259e6;color:#6259e6;z-index:10}.seopress-setup-steps li.done::before{border-color:#6259e6;background:#6259e6;content:"\f147";color:#fff}.seopress-setup .seopress-setup-actions{overflow:hidden;margin:20px 0 0;position:relative}.seopress-setup .seopress-setup-actions .button{font-size:1.25em;padding:.5em 1em;line-height:1em;margin-right:.5em;margin-bottom:2px;height:auto;border-radius:4px}.seopress-setup .seopress-setup-actions .button-primary{background-color:#6259e6;border-color:#6259e6;margin:0;opacity:1;transition:all .3s linear;color:#fff}.seopress-setup .seopress-setup-actions .button-primary:active,.seopress-setup .seopress-setup-actions .button-primary:focus,.seopress-setup .seopress-setup-actions .button-primary:hover{background:0 0;border-color:#6259e6;color:#6259e6}.seopress-setup-content p:last-child{margin-bottom:0}.seopress-setup-content p.store-setup{margin-top:0}.seopress-setup-footer-links{font-size:.85em;color:#7b7b7b;margin:1.18em auto;display:inline-block;text-align:center}.seopress-wizard-services{border:1px solid #eee;padding:1em;margin:0 0 1em;list-style:none outside;border-radius:4px;overflow:hidden;text-align:left}.seopress-wizard-services p{margin:0 0 1em 0;padding:0;font-size:1em;line-height:1.5em}.seopress-wizard-service-item,.seopress-wizard-services-list-toggle{display:-webkit-box;display:-webkit-flex;display:flex;-webkit-flex-wrap:nowrap;flex-wrap:nowrap;-webkit-box-pack:justify;-webkit-justify-content:space-between;justify-content:space-between;padding:0;color:#50575e;-webkit-box-align:center;-webkit-align-items:center;align-items:center;margin:1rem 0}.seopress-wizard-service-item:last-child,.seopress-wizard-services-list-toggle:last-child{border-bottom:0}.seopress-wizard-service-item .payment-gateway-fee,.seopress-wizard-services-list-toggle .payment-gateway-fee{color:#a6a6a6}.seopress-wizard-service-item .seopress-wizard-service-name,.seopress-wizard-services-list-toggle .seopress-wizard-service-name{-webkit-flex-basis:0;flex-basis:0;min-width:160px;text-align:center;font-weight:700;padding:2em 0;-webkit-align-self:stretch;align-self:stretch;display:-webkit-box;display:-webkit-flex;display:flex;-webkit-box-align:baseline;-webkit-align-items:baseline;align-items:baseline}.seopress-wizard-payment-gateway-form .seopress-wizard-service-item .seopress-wizard-service-name,.seopress-wizard-payment-gateway-form .seopress-wizard-services-list-toggle .seopress-wizard-service-name{-webkit-box-pack:center;-webkit-justify-content:center;justify-content:center}.seopress-wizard-service-item .seopress-wizard-service-name img,.seopress-wizard-services-list-toggle .seopress-wizard-service-name img{max-width:75px}.seopress-wizard-service-item.stripe-logo .seopress-wizard-service-name img,.seopress-wizard-services-list-toggle.stripe-logo .seopress-wizard-service-name img{padding:8px 0}.seopress-wizard-service-item.paypal-logo .seopress-wizard-service-name img,.seopress-wizard-services-list-toggle.paypal-logo .seopress-wizard-service-name img{max-width:87px;padding:2px 0}.seopress-wizard-service-item.klarna-logo .seopress-wizard-service-name img,.seopress-wizard-services-list-toggle.klarna-logo .seopress-wizard-service-name img{max-width:87px;padding:12px 0}.seopress-wizard-service-item.square-logo .seopress-wizard-service-name img,.seopress-wizard-services-list-toggle.square-logo .seopress-wizard-service-name img{max-width:95px;padding:12px 0}.seopress-wizard-service-item.eway-logo .seopress-wizard-service-name img,.seopress-wizard-services-list-toggle.eway-logo .seopress-wizard-service-name img{max-width:87px}.seopress-wizard-service-item.payfast-logo .seopress-wizard-service-name img,.seopress-wizard-services-list-toggle.payfast-logo .seopress-wizard-service-name img{max-width:140px}.seopress-wizard-service-item .seopress-wizard-service-description,.seopress-wizard-services-list-toggle .seopress-wizard-service-description{-webkit-box-flex:1;-webkit-flex-grow:1;flex-grow:1;padding:20px}.seopress-wizard-service-item .seopress-wizard-service-description p,.seopress-wizard-services-list-toggle .seopress-wizard-service-description p{margin-bottom:1em}.seopress-wizard-service-item .seopress-wizard-service-description p:last-child,.seopress-wizard-services-list-toggle .seopress-wizard-service-description p:last-child{margin-bottom:0}.seopress-wizard-service-item .seopress-wizard-service-description .seopress-wizard-service-settings-description,.seopress-wizard-services-list-toggle .seopress-wizard-service-description .seopress-wizard-service-settings-description{display:block;font-style:italic;color:#999}.seopress-wizard-service-item .seopress-wizard-service-enable,.seopress-wizard-services-list-toggle .seopress-wizard-service-enable{-webkit-flex-basis:0;flex-basis:0;min-width:75px;text-align:center;cursor:pointer;padding:2em 0;position:relative;max-height:1.5em;-webkit-align-self:flex-start;align-self:flex-start;-webkit-box-ordinal-group:4;-webkit-order:3;order:3}.seopress-wizard-service-item .seopress-wizard-service-toggle,.seopress-wizard-services-list-toggle .seopress-wizard-service-toggle{height:16px;width:32px;border:2px solid #935687;background-color:#935687;display:inline-block;text-indent:-9999px;border-radius:10em;position:relative}.seopress-wizard-service-item .seopress-wizard-service-toggle input[type=checkbox],.seopress-wizard-services-list-toggle .seopress-wizard-service-toggle input[type=checkbox]{display:none}.seopress-wizard-service-item .seopress-wizard-service-toggle::before,.seopress-wizard-services-list-toggle .seopress-wizard-service-toggle::before{content:"";display:block;width:16px;height:16px;background:#fff;position:absolute;top:0;right:0;border-radius:100%}.seopress-wizard-service-item .seopress-wizard-service-toggle.disabled,.seopress-wizard-services-list-toggle .seopress-wizard-service-toggle.disabled{border-color:#999;background-color:#999}.seopress-wizard-service-item .seopress-wizard-service-toggle.disabled::before,.seopress-wizard-services-list-toggle .seopress-wizard-service-toggle.disabled::before{right:auto;left:0}.seopress-wizard-service-item .seopress-wizard-service-settings,.seopress-wizard-services-list-toggle .seopress-wizard-service-settings{display:none;margin-top:.75em;margin-bottom:0;cursor:default}.seopress-wizard-service-item .seopress-wizard-service-settings.hide,.seopress-wizard-services-list-toggle .seopress-wizard-service-settings.hide{display:none}.seopress-wizard-service-item.checked .seopress-wizard-service-settings,.seopress-wizard-services-list-toggle.checked .seopress-wizard-service-settings{display:inline-block}.seopress-wizard-service-item.checked .seopress-wizard-service-settings.hide,.seopress-wizard-services-list-toggle.checked .seopress-wizard-service-settings.hide{display:none}.seopress-wizard-service-item.closed,.seopress-wizard-services-list-toggle.closed{border-bottom:0}.seopress-wizard-services-list-toggle{cursor:pointer}.seopress-wizard-services-list-toggle .seopress-wizard-service-enable::before{content:"\f343";font-family:dashicons;visibility:initial;color:#50575e;font-size:25px;margin-top:-7px;margin-left:-5px;position:absolute;visibility:visible}.seopress-wizard-services-list-toggle.closed .seopress-wizard-service-enable::before{content:"\f347"}.seopress-wizard-services-list-toggle .seopress-wizard-service-enable input{visibility:hidden;position:relative}.seopress-wizard-services.manual .seopress-wizard-service-item{display:none}.seopress-wizard-services.shipping{margin:0}.seopress-wizard-services.shipping .seopress-wizard-service-name{font-weight:400;text-align:left;-webkit-box-align:center;-webkit-align-items:center;align-items:center;max-height:5em;padding:0}.seopress-wizard-services.shipping .seopress-wizard-service-item{padding-left:2em;padding-top:.67em}.seopress-wizard-services.shipping .seopress-wizard-service-item:first-child{border-bottom:0;padding-bottom:0;font-weight:700}.seopress-wizard-services.shipping .seopress-wizard-service-item:first-child .seopress-wizard-service-name{font-weight:700}.seopress-wizard-services.shipping .seopress-wizard-shipping-method-select,.seopress-wizard-services.shipping .shipping-method-setting{display:-webkit-box;display:-webkit-flex;display:flex}.seopress-wizard-services.shipping .seopress-wizard-shipping-method-select.hide,.seopress-wizard-services.shipping .shipping-method-setting.hide{display:none}.seopress-wizard-services.shipping .seopress-wizard-shipping-method-dropdown,.seopress-wizard-services.shipping .shipping-method-setting input{margin-right:2em;margin-bottom:1em}.seopress-wizard-services.shipping .seopress-wizard-shipping-method-dropdown .select2,.seopress-wizard-services.shipping .shipping-method-setting input .select2{min-width:130px}.seopress-wizard-services.shipping .seopress-wizard-service-description{display:-webkit-box;display:-webkit-flex;display:flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;-webkit-flex-direction:column;flex-direction:column;color:#a6a6a6}.seopress-wizard-services.shipping .seopress-wizard-service-item:not(:first-child) .seopress-wizard-service-description{font-size:.92em;padding-bottom:10px}.seopress-wizard-services.shipping .shipping-method-setting input{width:95px;border:1px solid #aaa;border-color:#ddd;border-radius:4px;height:28px;padding-left:8px;padding-right:24px;font-size:14px;color:#444;background-color:#fff;display:inline-block}.seopress-wizard-services.shipping .shipping-method-description,.seopress-wizard-services.shipping .shipping-method-setting .description{color:#7e7e7e;font-size:.9em}.seopress-wizard-services.shipping .shipping-method-setting input::-webkit-input-placeholder{color:#e1e1e1}.seopress-wizard-services.shipping .shipping-method-setting input:-ms-input-placeholder{color:#e1e1e1}.seopress-wizard-services.shipping .shipping-method-setting input::-ms-input-placeholder{color:#e1e1e1}.seopress-wizard-services.shipping .shipping-method-setting input::placeholder{color:#e1e1e1}.seopress-setup-shipping-units p{line-height:1.5em;font-size:13px;margin-bottom:.25em;text-align:center}.seopress-setup-shipping-units .seopress-setup-shipping-unit{margin-bottom:1.75em}.seopress-setup-shipping-units .seopress-setup-shipping-unit .select2{min-width:125px;top:-5px}.hide{display:none}.seopress-wizard-features{display:-webkit-box;display:-webkit-flex;display:flex;-webkit-flex-wrap:wrap;flex-wrap:wrap;list-style:none;padding:0}.seopress-wizard-features .seopress-wizard-feature-item{-webkit-flex-basis:calc(50% - 4em - 3px);flex-basis:calc(50% - 4em - 3px);border:1px solid #eee;padding:2em}.seopress-wizard-features .seopress-wizard-feature-item:nth-child(1){border-radius:4px 0 0 0}.seopress-wizard-features .seopress-wizard-feature-item:nth-child(2){border-left:0;border-radius:0 4px 0 0}.seopress-wizard-features .seopress-wizard-feature-item:nth-child(3){border-top:0;border-radius:0 0 0 4px}.seopress-wizard-features .seopress-wizard-feature-item:nth-child(4){border-top:0;border-left:0;border-radius:0 0 4px 0}.seopress-wizard-features p.seopress-wizard-feature-description,.seopress-wizard-features p.seopress-wizard-feature-name{margin:0;line-height:1.5em}h3.jetpack-reasons{text-align:center;margin:3em 0 1em 0;font-size:14px}.jetpack-logo,.wcs-notice{display:block;margin:1.75em auto 2em auto;max-height:175px}.activate-splash .jetpack-logo{width:170px;margin-bottom:0}.activate-splash .wcs-notice{margin-top:1em;padding-left:57px}.step{text-align:center}.seopress-setup .seopress-setup-actions .button{text-shadow:none;font-weight:300;font-size:16px;padding:1em 2em;box-shadow:none;min-width:12em;min-width:auto;margin-top:10px}.seopress-setup .seopress-setup-actions .button:active,.seopress-setup .seopress-setup-actions .button:focus,.seopress-setup .seopress-setup-actions .button:hover{box-shadow:none}.seopress-setup .seopress-setup-actions .plugin-install-info{display:block;font-style:italic;color:#999;font-size:14px;line-height:1.5em;margin:5px 0}.seopress-setup .seopress-setup-actions .plugin-install-info>*{display:block}.seopress-setup .seopress-setup-actions .plugin-install-info .plugin-install-info-list-item::after{content:", "}.seopress-setup .seopress-setup-actions .plugin-install-info .plugin-install-info-list-item:last-of-type::after{content:". "}.seopress-setup .seopress-setup-actions .plugin-install-info a{white-space:nowrap}.seopress-setup .seopress-setup-actions .plugin-install-info a:not(:hover):not(:focus){color:inherit}.plugin-install-source{background:rgba(187,119,174,.15)}.plugin-install-source:not(.seopress-wizard-service-item){box-shadow:0 0 0 10px rgba(187,119,174,.15)}.location-prompt{color:#50575e;font-size:13px;font-weight:500;margin-bottom:.5em;margin-top:.85em;display:inline-block;width:100%;text-align:left}.location-input{border:1px solid #aaa;border-color:#ddd;border-radius:4px;height:30px;width:calc(100% - 8px - 24px - 2px);padding-left:8px;padding-right:24px;font-size:16px;color:#444;background-color:#fff;display:inline-block;width:100%}.location-input.dropdown{width:100%;max-width:inherit}.address-step .select2{min-width:100%}.store-address-container .city-and-postcode{display:-webkit-box;display:-webkit-flex;display:flex}.store-address-container .city-and-postcode div{-webkit-flex-basis:50%;flex-basis:50%;margin-right:1em}.store-address-container .city-and-postcode div:last-of-type{margin-right:0}.store-address-container .select2-container,.store-address-container input[type=text],.store-address-container select{margin-bottom:10px}.product-type-container{margin-top:14px;margin-bottom:1px}#seopress_sell_in_person{margin-left:0}.seopress-wizard-service-settings .payment-email-input{border:1px solid #aaa;border-color:#ddd;border-radius:4px;height:30px;padding:0 8px;font-size:14px;color:#444;background-color:#fff;display:inline-block}.seopress-wizard-service-settings .payment-email-input[disabled]{color:#aaa}.newsletter-form-container{display:-webkit-box;display:-webkit-flex;display:flex}.newsletter-form-container .newsletter-form-email{border:1px solid #aaa;border-color:#ddd;border-radius:4px;height:42px;padding:0 8px;font-size:16px;color:#50575e;background-color:#fff;display:inline-block;margin-right:6px;-webkit-box-flex:1;-webkit-flex-grow:1;flex-grow:1}.newsletter-form-container .newsletter-form-button-container{-webkit-box-flex:0;-webkit-flex-grow:0;flex-grow:0}.seopress-setup .seopress-setup-actions .button.newsletter-form-button{height:42px;padding:0 1em;margin:0}.seopress-wizard-next-steps{border:1px solid #eee;border-radius:4px;list-style:none;padding:0}.seopress-wizard-next-steps li{padding:0}.seopress-wizard-next-steps .seopress-wizard-next-step-item{display:-webkit-box;display:-webkit-flex;display:flex;border-top:1px solid #eee;text-align:left}.seopress-wizard-next-steps .seopress-wizard-next-step-item:first-child{border-top:0}.seopress-wizard-next-steps .seopress-wizard-next-step-description{-webkit-box-flex:1;-webkit-flex-grow:1;flex-grow:1;margin:1.5em}.seopress-wizard-next-steps .seopress-wizard-next-step-action{-webkit-box-flex:0;-webkit-flex-grow:0;flex-grow:0;display:-webkit-box;display:-webkit-flex;display:flex;-webkit-box-align:center;-webkit-align-items:center;align-items:center;justify-content:center}.seopress-wizard-next-steps .seopress-wizard-next-step-action .button{margin:1em 1.5em}.seopress-wizard-next-steps p.next-step-heading{margin:0;font-size:.95em;font-weight:400;font-variant:all-petite-caps}.seopress-wizard-next-steps p.next-step-extra-info{margin:0}.seopress-wizard-next-steps h3.next-step-description{margin:0;font-size:16px;font-weight:600}.seopress-wizard-next-steps .seopress-wizard-additional-steps{border-top:1px solid #eee}.seopress-wizard-next-steps .seopress-wizard-additional-steps .seopress-wizard-next-step-description{margin-bottom:0}.seopress-wizard-next-steps .seopress-wizard-additional-steps .seopress-setup-actions{margin:0 0 1.5em 0}.seopress-wizard-next-steps .seopress-wizard-additional-steps .seopress-setup-actions .button{font-size:15px;margin:1em 0 1em 1.5em}.seopress-wizard-next-steps .seopress-wizard-additional-steps .seopress-setup-actions .button::last-child{margin-right:1.5em}p.next-steps-help-text{color:#9f9f9f;padding:0 2em;text-align:center;font-size:.9em}p.jetpack-terms{font-size:.8em;text-align:center;max-width:480px;margin:0 auto;line-height:1.5em}.seopress-error{background:#ffe6e5;border-color:#ffc5c2;padding:1em;margin-bottom:1em}.seopress-error p{margin-top:0;margin-bottom:.5em;color:#444}.seopress-error a{color:#ff645c}.seopress-error .reconnect-reminder{font-size:.85em}.seopress-error .seopress-setup-actions .button{font-size:14px}.seopress-wizard-service-setting-ppec_paypal_reroute_requests,.seopress-wizard-service-setting-stripe_create_account{display:-webkit-box;display:-webkit-flex;display:flex;-webkit-box-align:start;-webkit-align-items:flex-start;align-items:flex-start}.seopress-wizard-service-setting-ppec_paypal_reroute_requests .payment-checkbox-input,.seopress-wizard-service-setting-stripe_create_account .payment-checkbox-input{-webkit-box-ordinal-group:2;-webkit-order:1;order:1;margin-top:5px;margin-left:0;margin-right:0;width:1.5em}.seopress-wizard-service-setting-ppec_paypal_reroute_requests .ppec_paypal_reroute_requests,.seopress-wizard-service-setting-ppec_paypal_reroute_requests .stripe_create_account,.seopress-wizard-service-setting-stripe_create_account .ppec_paypal_reroute_requests,.seopress-wizard-service-setting-stripe_create_account .stripe_create_account{-webkit-box-ordinal-group:3;-webkit-order:2;order:2;margin-left:.3em}.seopress-wizard-service-setting-ppec_paypal_email,.seopress-wizard-service-setting-stripe_email{margin-top:.75em;margin-left:1.5em}.seopress-wizard-service-setting-ppec_paypal_email label.ppec_paypal_email,.seopress-wizard-service-setting-ppec_paypal_email label.stripe_email,.seopress-wizard-service-setting-stripe_email label.ppec_paypal_email,.seopress-wizard-service-setting-stripe_email label.stripe_email{position:absolute;margin:-1px;padding:0;height:1px;width:1px;overflow:hidden;clip:rect(0 0 0 0);border:0}.seopress-wizard-service-setting-ppec_paypal_email input.payment-email-input,.seopress-wizard-service-setting-stripe_email input.payment-email-input{box-sizing:border-box;margin-bottom:.5em;width:100%;height:32px}.seopress-setup-content .recommended-step{padding:0 2.5em;text-align:left;display:inline-block;width:100%;box-sizing:border-box}.seopress-setup-content .recommended-step a{text-decoration:none}.seopress-setup-content .recommended-item{list-style:none;margin:1rem 0}.seopress-setup-content .recommended-item:last-child label{margin-bottom:0}.seopress-setup-content .recommended-item label{display:-webkit-box;display:-webkit-flex;display:flex;-webkit-box-align:center;-webkit-align-items:center;align-items:center;margin-bottom:1.5em}.seopress-setup-content .recommended-item label::after,.seopress-setup-content .recommended-item label::before{top:auto}.seopress-setup-content .recommended-item label::after{margin-top:-1.5px}.seopress-setup-content .recommended-item .recommended-item-icon{border:1px solid #fff;border-radius:7px;height:3.5em;margin-right:1em;margin-left:4px}.seopress-setup-content .recommended-item .recommended-item-icon.recommended-item-icon-storefront_theme{background-color:#f4a224;max-height:3em;max-width:3em;padding:.25em}.seopress-setup-content .recommended-item .recommended-item-icon.recommended-item-icon-automated_taxes{background-color:#d0011b;max-height:1.75em;padding:.875em}.seopress-setup-content .recommended-item .recommended-item-icon.recommended-item-icon-mailchimp{background-color:#ffe01b;height:2em;padding:.75em}.seopress-setup-content .recommended-item .recommended-item-icon.recommended-item-icon-seopress_services{background-color:#f0f0f0;max-height:1.5em;padding:1.3em .7em}.seopress-setup-content .recommended-item .recommended-item-icon.recommended-item-icon-shipstation{background-color:#f0f0f0;padding:.3em}.seopress-setup-content .recommended-item .recommended-item-description-container h3{font-size:15px;font-weight:700;letter-spacing:.5px;margin-bottom:0}.seopress-setup-content .recommended-item .recommended-item-description-container p{margin-top:0;line-height:1.5em}.seopress-wizard-service-info{padding:1em 2em;background-color:#fafafa}.help_tip{-webkit-text-decoration:underline dotted;text-decoration:underline dotted}.seopress-setup #tiptip_content{background:#5f6973}.seopress-setup #tiptip_holder.tip_top #tiptip_arrow_inner{border-top-color:#5f6973}.seopress-setup-shipping-recommended{border-bottom:1px solid #eee;margin-top:0;padding:30px 0}@media only screen and (max-width:768px){.seopress-setup .seopress-setup-content{margin:25px auto 24px}#seopress-logo img{max-width:80%}.store-address-container .city-and-postcode{display:block}.store-address-container .city-and-postcode div{margin-right:0}.seopress-wizard-service-item,.seopress-wizard-services-list-toggle{-webkit-flex-wrap:wrap;flex-wrap:wrap}.seopress-wizard-service-item .seopress-wizard-service-enable,.seopress-wizard-services-list-toggle .seopress-wizard-service-enable{-webkit-box-ordinal-group:3;-webkit-order:2;order:2;padding:20px 0 0}.seopress-wizard-service-item .seopress-wizard-service-description,.seopress-wizard-services-list-toggle .seopress-wizard-service-description{-webkit-box-ordinal-group:4;-webkit-order:3;order:3}.seopress-wizard-service-item .seopress-wizard-service-name,.seopress-wizard-services-list-toggle .seopress-wizard-service-name{padding:20px 20px 0;text-align:left;-webkit-box-pack:justify!important;-webkit-justify-content:space-between!important;justify-content:space-between!important}.seopress-wizard-service-item .seopress-wizard-service-name img,.seopress-wizard-services-list-toggle .seopress-wizard-service-name img{margin:0}.newsletter-form-container{display:block}.newsletter-form-container .newsletter-form-email{display:block;box-sizing:border-box;width:100%;margin-bottom:10px}.newsletter-form-container .button.newsletter-form-button{float:left}.seopress-wizard-next-steps .seopress-wizard-next-step-item{-webkit-flex-wrap:wrap;flex-wrap:wrap}.seopress-wizard-next-steps .seopress-wizard-next-step-item .seopress-wizard-next-step-description{margin-bottom:0}.seopress-wizard-next-steps .seopress-wizard-next-step-item .seopress-wizard-next-step-action p{margin:0}.seopress-setup-steps li a{text-indent:-9999px;position:absolute;left:calc(50% - 24px);top:-10px}.seopress-setup-steps li span{display:none}}
1
+ html{background-color:#f6f7f7;margin:0}body.seopress-setup{box-shadow:none;background:#f6f7f7;padding:0;margin:0;max-width:100%}.wp-core-ui .button,.wp-core-ui .button-secondary{color:#6159e6;border-color:#6159e6;background:#fff;vertical-align:middle}.wp-core-ui .button-secondary:hover{color:#555d66;background:#fafafa;border-color:#999}.wp-core-ui select:focus,input[type=checkbox]:focus,input[type=color]:focus,input[type=date]:focus,input[type=datetime-local]:focus,input[type=datetime]:focus,input[type=email]:focus,input[type=month]:focus,input[type=number]:focus,input[type=password]:focus,input[type=radio]:focus,input[type=search]:focus,input[type=tel]:focus,input[type=text]:focus,input[type=time]:focus,input[type=url]:focus,input[type=week]:focus,select:focus,textarea:focus{border-color:#6259e6;box-shadow:0 0 0 1px #6259e6;outline:2px solid transparent}.seopress-setup .sp-progress-bar{background-color:#6159e6}.spinner{display:inline-block}.log{margin:0;text-transform:uppercase;display:inline-block;vertical-align:middle;padding:5px;color:rgba(19,191,17,1);font-style:italic}.admin_page_seopress_csv_importer.seopress-styles .seopress-option{max-width:700px;margin:40px auto}.admin_page_seopress_csv_importer .description{color:#999;margin-top:4px;display:block}.admin_page_seopress_csv_importer .description code{background:0 0;padding:0;white-space:pre-line;word-wrap:break-word;word-break:break-all}.admin_page_seopress_csv_importer .seopress-setup-content table thead th{font-weight:700}.admin_page_seopress_csv_importer .seopress-setup-content table tr:nth-child(odd) td{background:#fbfbfb}.admin_page_seopress_csv_importer .seopress-setup-content table td select{width:100%}.admin_page_seopress_csv_importer .dashicons-yes-alt:before{color:#3642ff}.admin_page_seopress_csv_importer .seopress-wizard-services{padding:0}.seopress-setup{text-align:center}.seopress-setup .select2-container{text-align:left;width:auto}.seopress-setup .hidden{display:none}.seopress-setup .seopress-setup-content{box-shadow:0 1px 3px rgba(0,0,0,.13);padding:2em;margin:65px auto 24px;background:#fff;overflow:hidden;zoom:1;text-align:center;max-width:700px}.seopress-setup-content h1,.seopress-setup-content h2,.seopress-setup-content h3,.seopress-setup-content table{margin:0 0 20px;border:0;padding:0;color:#2c3338;clear:none;font-weight:500}.seopress-setup-content p{margin:20px 0;font-size:1em;line-height:1.75em;color:#50575e}.seopress-setup-content .m0{margin:0}.seopress-setup-content table{font-size:1em;line-height:1.75em;color:#50575e;text-align:left}.seopress-setup-content a{color:#6259e6}.seopress-setup-content a:focus,.seopress-setup-content a:hover{color:#111}.seopress-option #seopress-edd-license-btn,.seopress-option #seopress-refresh{width:auto}.seopress-setup-content .form-table th{width:35%;vertical-align:top;font-weight:400}.seopress-setup-content .form-table td{vertical-align:top}.seopress-setup-content .form-table td input,.seopress-setup-content .form-table td select{width:100%;box-sizing:border-box}.seopress-setup-content .form-table td input[size]{width:auto}.seopress-setup-content .form-table td .description{line-height:1.5em;display:block;margin-top:.25em;color:#999;font-style:italic}.seopress-setup-content .form-table td .input-checkbox,.seopress-setup-content .form-table td .input-radio{width:auto;box-sizing:inherit;padding:inherit;margin:0 .5em 0 0;box-shadow:none}.seopress-setup-content .form-table .section_title td{padding:0}.seopress-setup-content .form-table .section_title td h2,.seopress-setup-content .form-table .section_title td p{margin:12px 0 0}.seopress-setup-content .form-table td,.seopress-setup-content .form-table th{padding:12px 0;margin:0;border:0}.seopress-setup-content .form-table td:first-child,.seopress-setup-content .form-table th:first-child{padding-right:1em}.seopress-setup-content .seopress-setup-pages{width:100%;border-top:1px solid #eee}.seopress-setup-content .seopress-setup-pages thead th{display:none}.seopress-setup-content .seopress-setup-pages .page-name{width:30%;font-weight:700}.seopress-setup-content .seopress-setup-pages td,.seopress-setup-content .seopress-setup-pages th{padding:14px 0;border-bottom:1px solid #eee}.seopress-setup-content .seopress-setup-pages td:first-child,.seopress-setup-content .seopress-setup-pages th:first-child{padding-right:9px}.seopress-setup-content .seopress-setup-pages th{padding-top:0}.seopress-setup-content .seopress-setup-pages .page-options p{color:#777;margin:6px 0 0 24px;line-height:1.75em}.seopress-setup-content .seopress-setup-pages .page-options p input{vertical-align:middle;margin:1px 0 0;height:1.75em;width:1.75em;line-height:1.75em}.seopress-setup-content .seopress-setup-pages .page-options p label{line-height:1}@media screen and (max-width:782px){.seopress-setup-content .form-table tbody th{width:auto}}.seopress-setup-content .twitter-share-button{float:right}.seopress-setup-content .seopress-setup-next-steps{overflow:hidden;margin:0 0 24px;padding-bottom:2px}.seopress-setup-content .seopress-setup-next-steps h2{margin-bottom:12px}.seopress-setup-content .seopress-setup-next-steps .seopress-setup-next-steps-first{float:left;width:50%;box-sizing:border-box}.seopress-setup-content .seopress-setup-next-steps .seopress-setup-next-steps-last{float:right;width:50%;box-sizing:border-box}.seopress-setup-content .seopress-setup-next-steps ul{padding:0 2em 0 0;list-style:none outside;margin:0}.seopress-setup-content .seopress-setup-next-steps ul li a{display:block;padding:0 0 .75em}.seopress-setup-content .seopress-setup-next-steps ul .setup-product a.button{background-color:#f7f7f7;border-color:#ccc;color:#23282d;box-shadow:inset 0 1px 0 rgba(255,255,255,.25),0 1px 0 #ccc;text-shadow:1px 0 1px #eee,0 1px 1px #eee;font-size:1em;height:auto;line-height:1.75em;margin:0 0 .75em;opacity:1;padding:1em;text-align:center}.seopress-setup-content .seopress-setup-next-steps ul .setup-product a.button:active,.seopress-setup-content .seopress-setup-next-steps ul .setup-product a.button:focus,.seopress-setup-content .seopress-setup-next-steps ul .setup-product a.button:hover{background:#f5f5f5;border-color:#aaa}.seopress-setup-content .seopress-setup-next-steps ul .setup-product a.button-primary{color:#fff;background-color:#bb77ae;border-color:#a36597;box-shadow:inset 0 1px 0 rgba(255,255,255,.25),0 1px 0 #a36597;text-shadow:0 -1px 1px #a36597,1px 0 1px #a36597,0 1px 1px #a36597,-1px 0 1px #a36597}.seopress-setup-content .seopress-setup-next-steps ul .setup-product a.button-primary:active,.seopress-setup-content .seopress-setup-next-steps ul .setup-product a.button-primary:focus,.seopress-setup-content .seopress-setup-next-steps ul .setup-product a.button-primary:hover{color:#fff;background:#a36597;border-color:#a36597;box-shadow:inset 0 1px 0 rgba(255,255,255,.25),0 1px 0 #a36597}.seopress-setup-content .seopress-setup-next-steps ul li a::before{color:#82878c;font:normal 20px/1 dashicons;speak:none;display:inline-block;padding:0 10px 0 0;top:1px;position:relative;text-decoration:none!important;vertical-align:top}.seopress-setup-content .seopress-setup-next-steps ul .learn-more a::before{content:"\f105"}.seopress-setup-content .seopress-setup-next-steps ul .video-walkthrough a::before{content:"\f126"}.seopress-setup-content .seopress-setup-next-steps ul .newsletter a::before{content:"\f465"}.seopress-setup-content .seopress-newsletter,.seopress-setup-content .updated{padding:24px;margin:0 0 24px;overflow:hidden;background:#f5f5f5}.seopress-setup-content .seopress-newsletter p,.seopress-setup-content .updated p{padding:0;margin:0 0 12px}.seopress-setup-content .seopress-newsletter form,.seopress-setup-content .seopress-tracker,.seopress-setup-content .updated form,.seopress-setup-content .updated p:last-child{margin:24px 0;border:1px solid #eee;padding:20px;border-radius:4px;overflow:hidden}.seopress-setup-content .seopress-tracker p{font-size:14px;line-height:1.5em}.seopress-setup-content .seopress-tracker .checkbox{line-height:24px;font-weight:500;font-size:1em;margin-top:0;margin-bottom:20px}.seopress-setup-content .checkbox input[type=checkbox]{opacity:0;position:absolute;left:-9999px}.seopress-setup-content .checkbox label{position:relative;display:inline-block;padding-left:28px}.seopress-setup-content .checkbox label::after,.seopress-setup-content .checkbox label::before{position:absolute;content:"";display:inline-block}.seopress-setup-content .checkbox label::before{height:16px;width:16px;left:0;top:3px;border:1px solid #aaa;background-color:#fff;border-radius:3px}.seopress-setup-content .checkbox label::after{height:5px;width:9px;border-left:2px solid;border-bottom:2px solid;-webkit-transform:rotate(-45deg);-ms-transform:rotate(-45deg);transform:rotate(-45deg);left:4px;top:7px;color:#fff}.seopress-setup-content .checkbox input[type=checkbox]+label::after{content:none}.seopress-setup-content .checkbox input[type=checkbox]:checked+label::after{content:""}.seopress-setup-content .checkbox input[type=checkbox]:focus+label::before{outline:#3b99fc auto 5px}.seopress-setup-content .checkbox input[type=checkbox]:checked+label::before{background:#6259e6;border-color:#6259e6}.seopress-setup-steps{padding:10px 0 24px;margin:0;list-style:none outside;overflow:hidden;color:#ccc;width:100%;height:56px;border-bottom:1px solid #dcdcde;align-items:center;justify-content:center;background:#fff;display:inline-flex}.seopress-setup-steps li{width:100%;float:left;padding:0 0 1.5em;margin:0;text-align:center;position:relative;border-bottom:2px solid #ccc;line-height:24px;font-size:16px}.seopress-setup-steps li a{text-decoration:none;padding:1.5em;position:relative;z-index:1;color:#1d2327;line-height:24px;font-size:16px;transition:color .3s linear}.seopress-setup-steps li a:focus,.seopress-setup-steps li a:hover{color:#6159e6}.seopress-setup-steps li::before{content:"";border:3px solid #ccc;border-radius:100%;width:24px;height:24px;position:absolute;bottom:0;left:50%;margin-left:-15px;margin-bottom:-15px;background:#fff;font-family:Dashicons;font-size:24px;line-height:24px}.seopress-setup-steps li.active{color:#6259e6;font-weight:700;text-decoration:none;position:relative;z-index:1;color:#1d2327;line-height:24px}.seopress-setup-steps li.active::before{border-color:#6259e6}@keyframes fade{0%{border-color:#6259e600;left:-100%}100%{border-color:#6259e6;left:0}}.seopress-setup-steps li.active::after{content:"";position:absolute;bottom:-2px;left:0;animation-name:fade;animation-duration:2s;width:100%;animation-iteration-count:1;height:2px;background:#6259e6;z-index:-1}.seopress-setup-steps li.done{border-color:#6259e6;color:#6259e6;z-index:10}.seopress-setup-steps li.done::before{border-color:#6259e6;background:#6259e6;content:"\f147";color:#fff}.seopress-setup .seopress-setup-actions{overflow:hidden;margin:20px 0 0;position:relative}.seopress-setup .seopress-setup-actions .button{font-size:1.25em;padding:.5em 1em;line-height:1em;margin-right:.5em;margin-bottom:2px;height:auto;border-radius:4px}.seopress-setup .seopress-setup-actions .button-primary{background-color:#6259e6;border-color:#6259e6;margin:0;opacity:1;transition:all .3s linear;color:#fff}.seopress-setup .seopress-setup-actions .button-primary:active,.seopress-setup .seopress-setup-actions .button-primary:focus,.seopress-setup .seopress-setup-actions .button-primary:hover{background:0 0;border-color:#6259e6;color:#6259e6}.seopress-setup-content p:last-child{margin-bottom:0}.seopress-setup-content p.store-setup{margin-top:0}.seopress-setup-footer-links{font-size:.85em;color:#7b7b7b;margin:1.18em auto;display:inline-block;text-align:center}.seopress-wizard-services{border:1px solid #eee;padding:1em;margin:0 0 1em;list-style:none outside;border-radius:4px;overflow:hidden;text-align:left}.seopress-wizard-services p{margin:0 0 1em 0;padding:0;font-size:1em;line-height:1.5em}.seopress-wizard-service-item,.seopress-wizard-services-list-toggle{display:-webkit-box;display:-webkit-flex;display:flex;-webkit-flex-wrap:nowrap;flex-wrap:nowrap;-webkit-box-pack:justify;-webkit-justify-content:space-between;justify-content:space-between;padding:0;color:#50575e;-webkit-box-align:center;-webkit-align-items:center;align-items:center;margin:1rem 0}.seopress-wizard-service-item,.seopress-wizard-services-list-toggle:first-child{margin-top:0}.seopress-wizard-service-item:last-child,.seopress-wizard-services-list-toggle:last-child{border-bottom:0}.seopress-wizard-service-item .payment-gateway-fee,.seopress-wizard-services-list-toggle .payment-gateway-fee{color:#a6a6a6}.seopress-wizard-service-item .seopress-wizard-service-name,.seopress-wizard-services-list-toggle .seopress-wizard-service-name{-webkit-flex-basis:0;flex-basis:0;min-width:160px;text-align:center;font-weight:700;padding:2em 0;-webkit-align-self:stretch;align-self:stretch;display:-webkit-box;display:-webkit-flex;display:flex;-webkit-box-align:baseline;-webkit-align-items:baseline;align-items:baseline}.seopress-wizard-payment-gateway-form .seopress-wizard-service-item .seopress-wizard-service-name,.seopress-wizard-payment-gateway-form .seopress-wizard-services-list-toggle .seopress-wizard-service-name{-webkit-box-pack:center;-webkit-justify-content:center;justify-content:center}.seopress-wizard-service-item .seopress-wizard-service-name img,.seopress-wizard-services-list-toggle .seopress-wizard-service-name img{max-width:75px}.seopress-wizard-service-item.stripe-logo .seopress-wizard-service-name img,.seopress-wizard-services-list-toggle.stripe-logo .seopress-wizard-service-name img{padding:8px 0}.seopress-wizard-service-item.paypal-logo .seopress-wizard-service-name img,.seopress-wizard-services-list-toggle.paypal-logo .seopress-wizard-service-name img{max-width:87px;padding:2px 0}.seopress-wizard-service-item.klarna-logo .seopress-wizard-service-name img,.seopress-wizard-services-list-toggle.klarna-logo .seopress-wizard-service-name img{max-width:87px;padding:12px 0}.seopress-wizard-service-item.square-logo .seopress-wizard-service-name img,.seopress-wizard-services-list-toggle.square-logo .seopress-wizard-service-name img{max-width:95px;padding:12px 0}.seopress-wizard-service-item.eway-logo .seopress-wizard-service-name img,.seopress-wizard-services-list-toggle.eway-logo .seopress-wizard-service-name img{max-width:87px}.seopress-wizard-service-item.payfast-logo .seopress-wizard-service-name img,.seopress-wizard-services-list-toggle.payfast-logo .seopress-wizard-service-name img{max-width:140px}.seopress-wizard-service-item .seopress-wizard-service-description,.seopress-wizard-services-list-toggle .seopress-wizard-service-description{-webkit-box-flex:1;-webkit-flex-grow:1;flex-grow:1;padding:20px}.seopress-wizard-service-item .seopress-wizard-service-description p,.seopress-wizard-services-list-toggle .seopress-wizard-service-description p{margin-bottom:1em}.seopress-wizard-service-item .seopress-wizard-service-description p:last-child,.seopress-wizard-services-list-toggle .seopress-wizard-service-description p:last-child{margin-bottom:0}.seopress-wizard-service-item .seopress-wizard-service-description .seopress-wizard-service-settings-description,.seopress-wizard-services-list-toggle .seopress-wizard-service-description .seopress-wizard-service-settings-description{display:block;font-style:italic;color:#999}.seopress-wizard-service-item .seopress-wizard-service-enable,.seopress-wizard-services-list-toggle .seopress-wizard-service-enable{-webkit-flex-basis:0;flex-basis:0;min-width:75px;text-align:center;cursor:pointer;padding:2em 0;position:relative;max-height:1.5em;-webkit-align-self:flex-start;align-self:flex-start;-webkit-box-ordinal-group:4;-webkit-order:3;order:3}.seopress-wizard-service-item .seopress-wizard-service-toggle,.seopress-wizard-services-list-toggle .seopress-wizard-service-toggle{height:16px;width:32px;border:2px solid #935687;background-color:#935687;display:inline-block;text-indent:-9999px;border-radius:10em;position:relative}.seopress-wizard-service-item .seopress-wizard-service-toggle input[type=checkbox],.seopress-wizard-services-list-toggle .seopress-wizard-service-toggle input[type=checkbox]{display:none}.seopress-wizard-service-item .seopress-wizard-service-toggle::before,.seopress-wizard-services-list-toggle .seopress-wizard-service-toggle::before{content:"";display:block;width:16px;height:16px;background:#fff;position:absolute;top:0;right:0;border-radius:100%}.seopress-wizard-service-item .seopress-wizard-service-toggle.disabled,.seopress-wizard-services-list-toggle .seopress-wizard-service-toggle.disabled{border-color:#999;background-color:#999}.seopress-wizard-service-item .seopress-wizard-service-toggle.disabled::before,.seopress-wizard-services-list-toggle .seopress-wizard-service-toggle.disabled::before{right:auto;left:0}.seopress-wizard-service-item .seopress-wizard-service-settings,.seopress-wizard-services-list-toggle .seopress-wizard-service-settings{display:none;margin-top:.75em;margin-bottom:0;cursor:default}.seopress-wizard-service-item .seopress-wizard-service-settings.hide,.seopress-wizard-services-list-toggle .seopress-wizard-service-settings.hide{display:none}.seopress-wizard-service-item.checked .seopress-wizard-service-settings,.seopress-wizard-services-list-toggle.checked .seopress-wizard-service-settings{display:inline-block}.seopress-wizard-service-item.checked .seopress-wizard-service-settings.hide,.seopress-wizard-services-list-toggle.checked .seopress-wizard-service-settings.hide{display:none}.seopress-wizard-service-item.closed,.seopress-wizard-services-list-toggle.closed{border-bottom:0}.seopress-wizard-services-list-toggle{cursor:pointer}.seopress-wizard-services-list-toggle .seopress-wizard-service-enable::before{content:"\f343";font-family:dashicons;visibility:initial;color:#50575e;font-size:25px;margin-top:-7px;margin-left:-5px;position:absolute;visibility:visible}.seopress-wizard-services-list-toggle.closed .seopress-wizard-service-enable::before{content:"\f347"}.seopress-wizard-services-list-toggle .seopress-wizard-service-enable input{visibility:hidden;position:relative}.seopress-wizard-services.manual .seopress-wizard-service-item{display:none}.seopress-wizard-services.shipping{margin:0}.seopress-wizard-services.shipping .seopress-wizard-service-name{font-weight:400;text-align:left;-webkit-box-align:center;-webkit-align-items:center;align-items:center;max-height:5em;padding:0}.seopress-wizard-services.shipping .seopress-wizard-service-item{padding-left:2em;padding-top:.67em}.seopress-wizard-services.shipping .seopress-wizard-service-item:first-child{border-bottom:0;padding-bottom:0;font-weight:700}.seopress-wizard-services.shipping .seopress-wizard-service-item:first-child .seopress-wizard-service-name{font-weight:700}.seopress-wizard-services.shipping .seopress-wizard-shipping-method-select,.seopress-wizard-services.shipping .shipping-method-setting{display:-webkit-box;display:-webkit-flex;display:flex}.seopress-wizard-services.shipping .seopress-wizard-shipping-method-select.hide,.seopress-wizard-services.shipping .shipping-method-setting.hide{display:none}.seopress-wizard-services.shipping .seopress-wizard-shipping-method-dropdown,.seopress-wizard-services.shipping .shipping-method-setting input{margin-right:2em;margin-bottom:1em}.seopress-wizard-services.shipping .seopress-wizard-shipping-method-dropdown .select2,.seopress-wizard-services.shipping .shipping-method-setting input .select2{min-width:130px}.seopress-wizard-services.shipping .seopress-wizard-service-description{display:-webkit-box;display:-webkit-flex;display:flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;-webkit-flex-direction:column;flex-direction:column;color:#a6a6a6}.seopress-wizard-services.shipping .seopress-wizard-service-item:not(:first-child) .seopress-wizard-service-description{font-size:.92em;padding-bottom:10px}.seopress-wizard-services.shipping .shipping-method-setting input{width:95px;border:1px solid #aaa;border-color:#ddd;border-radius:4px;height:28px;padding-left:8px;padding-right:24px;font-size:14px;color:#444;background-color:#fff;display:inline-block}.seopress-wizard-services.shipping .shipping-method-description,.seopress-wizard-services.shipping .shipping-method-setting .description{color:#7e7e7e;font-size:.9em}.seopress-wizard-services.shipping .shipping-method-setting input::-webkit-input-placeholder{color:#e1e1e1}.seopress-wizard-services.shipping .shipping-method-setting input:-ms-input-placeholder{color:#e1e1e1}.seopress-wizard-services.shipping .shipping-method-setting input::-ms-input-placeholder{color:#e1e1e1}.seopress-wizard-services.shipping .shipping-method-setting input::placeholder{color:#e1e1e1}.seopress-setup-shipping-units p{line-height:1.5em;font-size:13px;margin-bottom:.25em;text-align:center}.seopress-setup-shipping-units .seopress-setup-shipping-unit{margin-bottom:1.75em}.seopress-setup-shipping-units .seopress-setup-shipping-unit .select2{min-width:125px;top:-5px}.hide{display:none}.seopress-wizard-features{display:-webkit-box;display:-webkit-flex;display:flex;-webkit-flex-wrap:wrap;flex-wrap:wrap;list-style:none;padding:0}.seopress-wizard-features .seopress-wizard-feature-item{-webkit-flex-basis:calc(50% - 4em - 3px);flex-basis:calc(50% - 4em - 3px);border:1px solid #eee;padding:2em}.seopress-wizard-features .seopress-wizard-feature-item:nth-child(1){border-radius:4px 0 0 0}.seopress-wizard-features .seopress-wizard-feature-item:nth-child(2){border-left:0;border-radius:0 4px 0 0}.seopress-wizard-features .seopress-wizard-feature-item:nth-child(3){border-top:0;border-radius:0 0 0 4px}.seopress-wizard-features .seopress-wizard-feature-item:nth-child(4){border-top:0;border-left:0;border-radius:0 0 4px 0}.seopress-wizard-features p.seopress-wizard-feature-description,.seopress-wizard-features p.seopress-wizard-feature-name{margin:0;line-height:1.5em}h3.jetpack-reasons{text-align:center;margin:3em 0 1em 0;font-size:14px}.jetpack-logo,.wcs-notice{display:block;margin:1.75em auto 2em auto;max-height:175px}.activate-splash .jetpack-logo{width:170px;margin-bottom:0}.activate-splash .wcs-notice{margin-top:1em;padding-left:57px}.step{text-align:center}.seopress-setup .seopress-setup-actions .button{text-shadow:none;font-weight:300;font-size:16px;padding:1em 2em;box-shadow:none;min-width:12em;min-width:auto;margin-top:10px}.seopress-setup .seopress-setup-actions .button:active,.seopress-setup .seopress-setup-actions .button:focus,.seopress-setup .seopress-setup-actions .button:hover{box-shadow:none}.seopress-setup .seopress-setup-actions .plugin-install-info{display:block;font-style:italic;color:#999;font-size:14px;line-height:1.5em;margin:5px 0}.seopress-setup .seopress-setup-actions .plugin-install-info>*{display:block}.seopress-setup .seopress-setup-actions .plugin-install-info .plugin-install-info-list-item::after{content:", "}.seopress-setup .seopress-setup-actions .plugin-install-info .plugin-install-info-list-item:last-of-type::after{content:". "}.seopress-setup .seopress-setup-actions .plugin-install-info a{white-space:nowrap}.seopress-setup .seopress-setup-actions .plugin-install-info a:not(:hover):not(:focus){color:inherit}.plugin-install-source{background:rgba(187,119,174,.15)}.plugin-install-source:not(.seopress-wizard-service-item){box-shadow:0 0 0 10px rgba(187,119,174,.15)}.location-prompt{color:#50575e;font-size:13px;font-weight:500;margin-bottom:.5em;margin-top:.85em;display:inline-block;width:100%;text-align:left}.location-input{border:1px solid #aaa;border-color:#ddd;border-radius:4px;height:30px;width:calc(100% - 8px - 24px - 2px);padding-left:8px;padding-right:24px;font-size:16px;color:#444;background-color:#fff;display:inline-block;width:100%}.location-input.dropdown{width:100%;max-width:inherit}.address-step .select2{min-width:100%}.store-address-container .city-and-postcode{display:-webkit-box;display:-webkit-flex;display:flex}.store-address-container .city-and-postcode div{-webkit-flex-basis:50%;flex-basis:50%;margin-right:1em}.store-address-container .city-and-postcode div:last-of-type{margin-right:0}.store-address-container .select2-container,.store-address-container input[type=text],.store-address-container select{margin-bottom:10px}.product-type-container{margin-top:14px;margin-bottom:1px}#seopress_sell_in_person{margin-left:0}.seopress-wizard-service-settings .payment-email-input{border:1px solid #aaa;border-color:#ddd;border-radius:4px;height:30px;padding:0 8px;font-size:14px;color:#444;background-color:#fff;display:inline-block}.seopress-wizard-service-settings .payment-email-input[disabled]{color:#aaa}.newsletter-form-container{display:-webkit-box;display:-webkit-flex;display:flex}.newsletter-form-container .newsletter-form-email{border:1px solid #aaa;border-color:#ddd;border-radius:4px;height:42px;padding:0 8px;font-size:16px;color:#50575e;background-color:#fff;display:inline-block;margin-right:6px;-webkit-box-flex:1;-webkit-flex-grow:1;flex-grow:1}.newsletter-form-container .newsletter-form-button-container{-webkit-box-flex:0;-webkit-flex-grow:0;flex-grow:0}.seopress-setup .seopress-setup-actions .button.newsletter-form-button{height:42px;padding:0 1em;margin:0}.seopress-wizard-next-steps{border:1px solid #eee;border-radius:4px;list-style:none;padding:0}.seopress-wizard-next-steps li{padding:0}.seopress-wizard-next-steps .seopress-wizard-next-step-item{display:-webkit-box;display:-webkit-flex;display:flex;border-top:1px solid #eee;text-align:left}.seopress-wizard-next-steps .seopress-wizard-next-step-item:first-child{border-top:0}.seopress-wizard-next-steps .seopress-wizard-next-step-description{-webkit-box-flex:1;-webkit-flex-grow:1;flex-grow:1;margin:1.5em}.seopress-wizard-next-steps .seopress-wizard-next-step-action{-webkit-box-flex:0;-webkit-flex-grow:0;flex-grow:0;display:-webkit-box;display:-webkit-flex;display:flex;-webkit-box-align:center;-webkit-align-items:center;align-items:center;justify-content:center}.seopress-wizard-next-steps .seopress-wizard-next-step-action .button{margin:1em 1.5em}.seopress-wizard-next-steps p.next-step-heading{margin:0;font-size:.95em;font-weight:400;font-variant:all-petite-caps}.seopress-wizard-next-steps p.next-step-extra-info{margin:0}.seopress-wizard-next-steps h3.next-step-description{margin:0;font-size:16px;font-weight:600}.seopress-wizard-next-steps .seopress-wizard-additional-steps{border-top:1px solid #eee}.seopress-wizard-next-steps .seopress-wizard-additional-steps .seopress-wizard-next-step-description{margin-bottom:0}.seopress-wizard-next-steps .seopress-wizard-additional-steps .seopress-setup-actions{margin:0 0 1.5em 0}.seopress-wizard-next-steps .seopress-wizard-additional-steps .seopress-setup-actions .button{font-size:15px;margin:1em 0 1em 1.5em}.seopress-wizard-next-steps .seopress-wizard-additional-steps .seopress-setup-actions .button::last-child{margin-right:1.5em}p.next-steps-help-text{color:#9f9f9f;padding:0 2em;text-align:center;font-size:.9em}p.jetpack-terms{font-size:.8em;text-align:center;max-width:480px;margin:0 auto;line-height:1.5em}.seopress-error{background:#ffe6e5;border-color:#ffc5c2;padding:1em;margin-bottom:1em}.seopress-error p{margin-top:0;margin-bottom:.5em;color:#444}.seopress-error a{color:#ff645c}.seopress-error .reconnect-reminder{font-size:.85em}.seopress-error .seopress-setup-actions .button{font-size:14px}.seopress-wizard-service-setting-ppec_paypal_reroute_requests,.seopress-wizard-service-setting-stripe_create_account{display:-webkit-box;display:-webkit-flex;display:flex;-webkit-box-align:start;-webkit-align-items:flex-start;align-items:flex-start}.seopress-wizard-service-setting-ppec_paypal_reroute_requests .payment-checkbox-input,.seopress-wizard-service-setting-stripe_create_account .payment-checkbox-input{-webkit-box-ordinal-group:2;-webkit-order:1;order:1;margin-top:5px;margin-left:0;margin-right:0;width:1.5em}.seopress-wizard-service-setting-ppec_paypal_reroute_requests .ppec_paypal_reroute_requests,.seopress-wizard-service-setting-ppec_paypal_reroute_requests .stripe_create_account,.seopress-wizard-service-setting-stripe_create_account .ppec_paypal_reroute_requests,.seopress-wizard-service-setting-stripe_create_account .stripe_create_account{-webkit-box-ordinal-group:3;-webkit-order:2;order:2;margin-left:.3em}.seopress-wizard-service-setting-ppec_paypal_email,.seopress-wizard-service-setting-stripe_email{margin-top:.75em;margin-left:1.5em}.seopress-wizard-service-setting-ppec_paypal_email label.ppec_paypal_email,.seopress-wizard-service-setting-ppec_paypal_email label.stripe_email,.seopress-wizard-service-setting-stripe_email label.ppec_paypal_email,.seopress-wizard-service-setting-stripe_email label.stripe_email{position:absolute;margin:-1px;padding:0;height:1px;width:1px;overflow:hidden;clip:rect(0 0 0 0);border:0}.seopress-wizard-service-setting-ppec_paypal_email input.payment-email-input,.seopress-wizard-service-setting-stripe_email input.payment-email-input{box-sizing:border-box;margin-bottom:.5em;width:100%;height:32px}.seopress-setup-content .recommended-step{padding:0 2.5em;text-align:left;display:inline-block;width:100%;box-sizing:border-box}.seopress-setup-content .recommended-step a{text-decoration:none}.seopress-setup-content .recommended-item{list-style:none;margin:1rem 0}.seopress-setup-content .recommended-item:last-child label{margin-bottom:0}.seopress-setup-content .recommended-item label{display:-webkit-box;display:-webkit-flex;display:flex;-webkit-box-align:center;-webkit-align-items:center;align-items:center;margin-bottom:1.5em}.seopress-setup-content .recommended-item label::after,.seopress-setup-content .recommended-item label::before{top:auto}.seopress-setup-content .recommended-item label::after{margin-top:-1.5px}.seopress-setup-content .recommended-item .recommended-item-icon{border:1px solid #fff;border-radius:7px;height:3.5em;margin-right:1em;margin-left:4px}.seopress-setup-content .recommended-item .recommended-item-icon.recommended-item-icon-storefront_theme{background-color:#f4a224;max-height:3em;max-width:3em;padding:.25em}.seopress-setup-content .recommended-item .recommended-item-icon.recommended-item-icon-automated_taxes{background-color:#d0011b;max-height:1.75em;padding:.875em}.seopress-setup-content .recommended-item .recommended-item-icon.recommended-item-icon-mailchimp{background-color:#ffe01b;height:2em;padding:.75em}.seopress-setup-content .recommended-item .recommended-item-icon.recommended-item-icon-seopress_services{background-color:#f0f0f0;max-height:1.5em;padding:1.3em .7em}.seopress-setup-content .recommended-item .recommended-item-icon.recommended-item-icon-shipstation{background-color:#f0f0f0;padding:.3em}.seopress-setup-content .recommended-item .recommended-item-description-container h3{font-size:15px;font-weight:700;letter-spacing:.5px;margin-bottom:0}.seopress-setup-content .recommended-item .recommended-item-description-container p{margin-top:0;line-height:1.5em}.seopress-wizard-service-info{padding:1em 2em;background-color:#fafafa}.help_tip{-webkit-text-decoration:underline dotted;text-decoration:underline dotted}.seopress-setup #tiptip_content{background:#5f6973}.seopress-setup #tiptip_holder.tip_top #tiptip_arrow_inner{border-top-color:#5f6973}.seopress-setup-shipping-recommended{border-bottom:1px solid #eee;margin-top:0;padding:30px 0}@media only screen and (max-width:768px){.seopress-setup .seopress-setup-content{margin:25px auto 24px}#seopress-logo img{max-width:80%}.store-address-container .city-and-postcode{display:block}.store-address-container .city-and-postcode div{margin-right:0}.seopress-wizard-service-item,.seopress-wizard-services-list-toggle{-webkit-flex-wrap:wrap;flex-wrap:wrap}.seopress-wizard-service-item .seopress-wizard-service-enable,.seopress-wizard-services-list-toggle .seopress-wizard-service-enable{-webkit-box-ordinal-group:3;-webkit-order:2;order:2;padding:20px 0 0}.seopress-wizard-service-item .seopress-wizard-service-description,.seopress-wizard-services-list-toggle .seopress-wizard-service-description{-webkit-box-ordinal-group:4;-webkit-order:3;order:3}.seopress-wizard-service-item .seopress-wizard-service-name,.seopress-wizard-services-list-toggle .seopress-wizard-service-name{padding:20px 20px 0;text-align:left;-webkit-box-pack:justify!important;-webkit-justify-content:space-between!important;justify-content:space-between!important}.seopress-wizard-service-item .seopress-wizard-service-name img,.seopress-wizard-services-list-toggle .seopress-wizard-service-name img{margin:0}.newsletter-form-container{display:block}.newsletter-form-container .newsletter-form-email{display:block;box-sizing:border-box;width:100%;margin-bottom:10px}.newsletter-form-container .button.newsletter-form-button{float:left}.seopress-wizard-next-steps .seopress-wizard-next-step-item{-webkit-flex-wrap:wrap;flex-wrap:wrap}.seopress-wizard-next-steps .seopress-wizard-next-step-item .seopress-wizard-next-step-description{margin-bottom:0}.seopress-wizard-next-steps .seopress-wizard-next-step-item .seopress-wizard-next-step-action p{margin:0}.seopress-setup-steps li a{text-indent:-9999px;position:absolute;left:calc(50% - 24px);top:-10px}.seopress-setup-steps li span{display:none}}
assets/css/seopress.css CHANGED
@@ -1,50 +1,71 @@
1
  @keyframes sp-fade-in-out {
2
- 0% {opacity: 0;bottom:0;visibility: hidden}
3
- 25% {opacity: 1;bottom:40px;visibility: visible}
4
- 75% {opacity: 1;visibility: visible}
5
- 100% {opacity: 0;visibility:hidden}
6
- }
7
- #adminmenu div.wp-menu-image.dashicons-admin-seopress::before, #seopress-header #seopress-admin h1::before {
8
- content: "\e800";
9
- font-family: seopress !important;
10
- font-weight: bold;
11
- font-size: 12px;
12
- line-height: 20px;
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
13
  }
14
 
15
- #seopress-header #seopress-admin h1::before,.seopress-page-list .seopress-feature h3,.seopress-styles .seopress-option h1 {
16
- -moz-osx-font-smoothing: grayscale;
17
- -webkit-font-smoothing: antialiased;
 
 
18
  }
19
 
20
  @font-face {
21
- font-family: seopress;
22
- src: url(../fonts/seopress.eot?81521271);
23
- src: url(../fonts/seopress.eot?81521271#iefix) format('embedded-opentype'),
24
- url(../fonts/seopress.woff?81521271) format('woff2'),
25
- url(../fonts/seopress.woff?81521271) format('woff'),
26
- url(../fonts/seopress.ttf?81521271) format('truetype'),
27
- url(../fonts/seopress.svg?81521271#seopress) format('svg');
28
- font-weight: 400;
29
- font-style: normal;
30
  }
31
 
32
- [class*=" icon-seopress"],[class^=icon-seopress-] {
33
- font-family: seopress!important;
34
- font-size: 14px !important;
35
- line-height: 24px !important;
 
36
  }
37
 
38
  #tab_seopress_titles_single .form-table th:empty,
39
  #tab_seopress_titles_archives .form-table th:empty,
40
  #tab_seopress_titles_tax .form-table th:empty {
41
- display: none;
42
  }
43
 
44
  .icon-seopress-seopress:before {
45
- content: "\e800";
46
  }
47
- #wpadminbar #wp-toolbar #wp-admin-bar-seopress_custom_top_level .wrap-seopress-noindex {
 
 
 
48
  background: red;
49
  color: #fff;
50
  padding: 0 8px;
@@ -52,11 +73,15 @@
52
  margin-left: 6px;
53
  }
54
  #wpadminbar #wp-toolbar #wp-admin-bar-seopress_custom_top_level > a {
55
- display: inline-block;
56
- }
57
- #wpadminbar #wp-toolbar #wp-admin-bar-seopress_custom_top_level .wrap-seopress-noindex .ab-icon::before {
58
- color: #eee;
59
- vertical-align: middle;
 
 
 
 
60
  }
61
 
62
  #wpadminbar #wp-toolbar #wp-admin-bar-seopress_custom_sub_menu_meta_robots {
@@ -65,344 +90,384 @@
65
  }
66
 
67
  #wpadminbar #wp-toolbar #wp-admin-bar-seopress_custom_sub_menu_meta_robots a {
68
- height: inherit;
69
- padding-bottom: 5px;
70
  }
71
 
72
- #wpadminbar #wp-toolbar #wp-admin-bar-seopress_custom_sub_menu_meta_robots .wrap-seopress-cpt-seo {
73
- font-weight: bold;
74
- border-bottom: 1px solid currentColor;
75
- width: 100%;
76
- display: block;
77
- margin-bottom: 5px;
 
 
 
78
  }
79
 
80
- #wpadminbar #wp-toolbar #wp-admin-bar-seopress_custom_sub_menu_meta_robots .wrap-seopress-cpt-noindex,
81
- #wpadminbar #wp-toolbar #wp-admin-bar-seopress_custom_sub_menu_meta_robots .wrap-seopress-cpt-nofollow {
82
- display: block;
 
 
 
 
 
 
83
  }
84
 
85
- #wpadminbar #wp-toolbar #wp-admin-bar-seopress_custom_sub_menu_meta_robots .wrap-seopress-cpt-noindex .ab-icon,
86
- #wpadminbar #wp-toolbar #wp-admin-bar-seopress_custom_sub_menu_meta_robots .wrap-seopress-cpt-nofollow .ab-icon {
87
- float: none;
88
- vertical-align: middle;
89
- }
90
-
91
- #wpadminbar #wp-toolbar #wp-admin-bar-seopress_custom_sub_menu_meta_robots .wrap-seopress-cpt-noindex .on::before,
92
- #wpadminbar #wp-toolbar #wp-admin-bar-seopress_custom_sub_menu_meta_robots .wrap-seopress-cpt-nofollow .on::before {
93
- color: red;
94
- }
95
- #wpadminbar #wp-toolbar #wp-admin-bar-seopress_custom_sub_menu_meta_robots .wrap-seopress-cpt-noindex .off::before,
96
- #wpadminbar #wp-toolbar #wp-admin-bar-seopress_custom_sub_menu_meta_robots .wrap-seopress-cpt-nofollow .off::before {
97
- color: #46b450;
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
98
  }
99
 
100
  .sp-tooltip {
101
- position: relative;
102
- margin-left: 5px;
103
- display: inline-block;
104
- cursor: help;
105
- vertical-align: bottom;
106
- text-align: left;
107
- background: none;
108
- border: none;
109
- padding: 0;
110
  }
111
 
112
  .sp-tooltip .dashicons {
113
- color: #666;
114
  }
115
 
116
  .sp-tooltip .sp-tooltiptext {
117
- visibility: hidden;
118
- position: absolute;
119
- z-index: 999999999;
120
- width: 300px;
121
- right: -303px;
122
- padding: 20px;
123
- top: 25px;
124
- font-weight: 400;
125
- box-shadow: 0 3px 30px rgba(25, 30, 35, 0.1);
126
- border: 1px solid #e2e4e7;
127
- background: #fff;
128
- word-break: break-word;
129
- text-transform: none;
130
  }
131
 
132
  .sp-tooltip .sp-tooltiptext::before {
133
- border: 8px solid #e2e4e7;
134
- top: -8px;
135
  }
136
 
137
  .sp-tooltip .sp-tooltiptext::after {
138
- border: 8px solid #fff;
139
- top: -6px;
140
  }
141
 
142
- .sp-tooltip .sp-tooltiptext::before, .sp-tooltip .sp-tooltiptext::after {
143
- border-bottom-style: solid;
144
- border-left-color: transparent;
145
- border-right-color: transparent;
146
- border-top: none;
147
- margin-left: -10px;
148
- content: "";
149
- position: absolute;
150
- height: 0;
151
- width: 0;
152
- line-height: 0;
153
- left: 30px;
 
154
  }
155
 
156
  .sp-tooltip:hover .sp-tooltiptext,
157
  .sp-tooltip:focus .sp-tooltiptext,
158
  .sp-tooltip:active .sp-tooltiptext {
159
- visibility: visible;
160
  }
161
 
162
  .sp-tooltip .sp-tooltip-headings {
163
- font-size: 18px;
164
- font-weight: 600;
165
- margin-bottom: 20px;
166
- display: block;
167
  }
168
 
169
  .sp-tooltip .sp-tooltip-desc {
170
- margin-bottom: 20px;
171
- display: block;
172
- border-bottom: 1px solid #e2e4e7;
173
- padding-bottom: 20px;
174
- font-size: 13px;
175
  }
176
 
177
  .sp-tooltip .sp-tooltip-code {
178
- font-family: Menlo, Monaco, Andale Mono, Courier New, monospace;
179
- display: block;
180
- word-break: break-all;
181
- color: #1a7a06;
182
- font-size: 11px;
183
  }
184
 
185
  .analysis-score .sp-tooltip {
186
- vertical-align: middle;
187
- font-size: 0.75em;
188
  }
189
 
190
  #seopress_content_analysis a {
191
- color: #0073aa;
192
  }
193
 
194
  #seopress_content_analysis .wrap-seopress-analysis {
195
- display: inline-block;
196
- width: 100%;
197
  }
198
 
199
  #seopress_content_analysis .col-left {
200
- width: calc(50% - 30px);
201
- float: left;
202
- margin-right: 30px;
203
  }
204
 
205
  #seopress_content_analysis .col-right {
206
- float: right;
207
- width: 50%;
208
  }
209
 
210
  #seopress_content_analysis #seopress_suggestions {
211
- display: inline-block;
212
- width: 100%;
213
- margin: 0;
214
- height: auto;
215
- padding: 20px 0;
216
  }
217
 
218
  #seopress_content_analysis #seopress_suggestions li {
219
- list-style: none;
220
- margin: 5px;
221
- display: inline-block;
222
  }
223
 
224
  #seopress_content_analysis .analysis-score {
225
- clear: both;
226
- border-top: 1px solid #e2e4e7;
227
- display: flex;
228
- justify-content: space-between;
229
- align-items: center;
230
  }
231
 
232
  .column-seopress_score .analysis-score {
233
- display: flex;
234
- align-content: center;
235
  }
236
 
237
  #seopress_content_analysis .analysis-score p,
238
  .column-seopress_score .analysis-score p {
239
- font-weight: bold;
240
- font-size: 1.2em;
241
  }
242
 
243
  #seopress_content_analysis .analysis-score svg,
244
  .column-seopress_score .analysis-score svg {
245
- display: inline-block;
246
- height: 30px;
247
- width: 30px;
248
- margin: 0;
249
- border-radius: 100%;
250
- position: relative;
251
- font-weight: 600;
252
- shape-rendering: geometricprecision;
253
- font-size: 0.5rem;
254
- vertical-align: middle;
255
- margin-right: 15px;
256
  }
257
 
258
  .column-seopress_score .analysis-score p,
259
  .column-seopress_score .analysis-score svg {
260
- margin: 0;
261
  }
262
 
263
- @keyframes loadingPulse{
264
- 0%{stroke:#adc5d2}
265
- 50%{stroke:#00a0d2}
266
- 100%{stroke:#adc5d2}
 
 
 
 
 
 
267
  }
268
 
269
  #seopress_content_analysis .analysis-score .loading #bar {
270
- stroke-dashoffset: 0 !important;
271
- stroke: #adc5d2 !important;
272
- animation: loadingPulse 3s infinite ease-in-out;
273
  }
274
 
275
  #seopress_content_analysis .analysis-score .good #bar,
276
  .column-seopress_score .analysis-score #bar.good {
277
- stroke: #46b450;
278
  }
279
 
280
  #seopress_content_analysis .analysis-score .notgood #bar,
281
- .column-seopress_score .analysis-score #bar.notgood {
282
- stroke-dashoffset: 565;
283
- stroke: #ffb900;
284
  }
285
 
286
  #seopress_content_analysis .analysis-score svg circle,
287
  .column-seopress_score .analysis-score svg circle {
288
- stroke-dashoffset: 0;
289
- transition: stroke-dashoffset 1s linear;
290
- stroke: #ccc;
291
- stroke-width: 2em;
292
  }
293
 
294
  #seopress_content_analysis .gr-analysis {
295
- clear: both;
296
  }
297
 
298
  #seopress_content_analysis .gr-analysis-title {
299
- border-top: 1px solid #e2e4e7;
300
- position: relative;
301
  }
302
 
303
  #seopress_cpt .impact,
304
  #seopress_content_analysis .gr-analysis-title .impact {
305
- position: absolute;
306
- left: 10px;
307
- top:calc(50% - 5px);
308
- width: 10px;
309
- height: 10px;
310
- border-radius: 50px;
311
- padding: 0;
312
- margin: 0;
313
- border: 1px solid #fff;
314
  }
315
 
316
  #seopress_content_analysis .gr-analysis .impact.good {
317
- background: #46b450;
318
- box-shadow: 0 0 5px #46b450;
319
  }
320
 
321
  #seopress_content_analysis .gr-analysis .impact.low {
322
- background: #FFDE24;
323
- box-shadow: 0 0 5px #FFDE24;
324
  }
325
 
326
  #seopress_content_analysis .gr-analysis .impact.medium {
327
- background: #e39f48;
328
- box-shadow: 0 0 5px #e39f48;
329
  }
330
 
331
  #seopress_cpt .impact.high,
332
  #seopress_content_analysis .gr-analysis .impact.high {
333
- background: #e25950;
334
- box-shadow: 0 0 5px #e25950;
335
  }
336
 
337
  #seopress_content_analysis .gr-analysis-content .impact.high {
338
- background: #e25950;
339
- box-shadow: none;
340
- color:#fff;
341
- padding: 2px 4px;
342
- margin-left: 5px;
343
- border-radius: 4px;
344
- font-weight: bold;
345
  }
346
 
347
  #seopress_cpt .impact.high {
348
- position: relative;
349
- top: calc(50% - 18px);
350
- display: inline-block;
351
- left: inherit;
352
- right: -10px;
353
  }
354
 
355
  #seopress_cpt .description,
356
  #seopress_content_analysis .description,
357
  .seopress-tab .description {
358
- display: block;
359
  font-style: italic;
360
  }
361
 
362
  #seopress_content_analysis .gr-analysis-title button {
363
- background: #fff;
364
- border: 0;
365
- cursor: pointer;
366
- display: block;
367
- margin: 0;
368
- position: relative;
369
- text-align: left;
370
- width: 100%;
371
- padding: 15px 30px;
372
- align-items: center;
373
- transition: all 300ms linear;
374
  }
375
 
376
  #seopress_content_analysis .gr-analysis-title button:hover {
377
- background: #f3f4f5;
378
  }
379
 
380
  #seopress_content_analysis .gr-analysis-title button:focus {
381
- color: #191e23;
382
- border: none;
383
- box-shadow: none;
384
- outline-offset: -2px;
385
- outline: 1px dotted #555d66;
386
  }
387
 
388
  #seopress_content_analysis .gr-analysis-title button .sp-arrow::after {
389
- content:"\f343";
390
- font-family: "Dashicons";
391
- position: absolute;
392
- right: 10px;
393
- top: calc(50% - 7px);
394
  }
395
 
396
  #seopress_content_analysis .gr-analysis-title button.open .sp-arrow::after {
397
- content:"\f347";
398
  }
399
 
400
  #seopress_content_analysis .gr-analysis-content {
401
- padding: 0 1rem 0.5rem 1rem;
402
- display: none;
403
- width: 100%;
404
- border-top: 1px solid #e2e4e7;
405
- box-sizing: border-box;
406
  }
407
 
408
  table.wp-list-table .manage_column.column-seopress_noindex,
@@ -413,1416 +478,1521 @@ table.wp-list-table .manage_column.column-seopress_redirect_enable,
413
  table.wp-list-table .manage_column.column-seopress_desc,
414
  table.wp-list-table .manage_column.column-seopress_title,
415
  table.wp-list-table .manage_column.column-seopress_insights {
416
- width: 7%!important;
417
  }
418
 
419
  #seopress_content_analysis h3 {
420
- margin: 0;
421
- font-size: 1em;
422
  }
423
 
424
  #seopress_content_analysis h4 {
425
- border-bottom: 1px solid #e2e4e7;
426
- padding-bottom: 0.5rem;
427
- text-transform: uppercase;
428
- font-size: 0.85em;
429
- position: -webkit-sticky; /* Required for Safari */
430
- position: sticky;
431
- top: 0;
432
- background: #fff;
433
  }
434
 
435
  #seopress_content_analysis .wrap-analysis-img ul {
436
- display: flex;
437
- flex-wrap: wrap;
438
  }
439
 
440
  #seopress_content_analysis .wrap-analysis-img ul li {
441
- padding: 0;
442
- text-align: left;
443
- cursor: default;
444
  }
445
 
446
  #seopress_content_analysis .wrap-analysis-img h4 {
447
- border-bottom: 1px solid #ddd;
448
- padding-bottom: 10px;
449
  }
450
 
451
  #seopress_content_analysis .wrap-analysis-img ul li img {
452
- max-width: 150px;
453
- max-height: 150px;
454
- object-fit: cover;
455
- border: 1px solid #f3f4f5;
456
- cursor: default;
457
- padding: 1px;
458
  }
459
 
460
  #seopress_cpt .notice {
461
- padding: 10px 14px;
462
  }
463
 
464
  #seopress_cpt .dashicons,
465
  #seopress-analysis-tabs .dashicons {
466
- vertical-align: middle;
467
  }
468
 
469
  #seopress-analysis-tabs {
470
- clear: both;
471
  }
472
 
473
  #seopress_cpt .inside {
474
- margin: 0;
475
- padding: 0;
476
  }
477
 
478
  #seopress_cpt .ui-tabs .ui-tabs-nav {
479
- display: inline-block;
480
- min-height: 26px;
481
- position: relative;
482
- width: 100%;
483
- z-index: 10;
484
- margin: 0;
485
- border-radius: 0;
486
- padding: 0;
487
- background: #f3f4f5;
488
- border: none;
 
 
 
 
 
489
  }
490
 
491
  #seopress_cpt .ui-helper-clearfix:after {
492
- content: none;
493
  }
494
 
495
- .seopress_page_seopress-titles #seopress-tabs .form-table td,.seopress_page_seopress-titles #seopress_content_analysis .form-table td {
496
- padding: 0;
 
497
  }
498
 
499
  #seopress_cpt .ui-tabs .ui-tabs-panel {
500
- background: #FFF;
501
- border-radius: 0;
502
- display: inline-block;
503
- padding: 1em 1.4em;
504
- width: 100%;
505
- box-sizing: border-box;
506
  }
507
 
508
- #seopress_content_analysis .dashicons-info,#seopress_cpt .ui-tabs .ui-tabs-panel .dashicons-info,#seopress_pro_cpt .dashicons-info {
509
- font-size: 16px;
510
- vertical-align: middle;
511
- height: 16px;
512
- width: 16px;
 
 
513
  }
514
 
515
- #seopress_cpt .ui-tabs .ui-tabs-nav li,#seopress_cpt .ui-tabs-anchor {
516
- cursor: pointer!important;
 
517
  }
518
 
519
  #seopress_cpt .ui-tabs .ui-tabs-nav li.ui-tabs-active {
520
- position: relative;
521
- z-index: 60;
522
- cursor: pointer;
523
- border-radius: 0;
524
- border-bottom: 3px solid #0085ba;
525
- }
526
-
527
- #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 {
528
- display: block;
529
- margin: 20px 0 5px;
530
- font-weight: 700;
 
 
 
 
 
 
 
 
 
531
  }
532
 
533
  #seopress_cpt .wp-color-result {
534
- margin: 0;
535
  }
536
 
537
- #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 {
538
- width: 100%;
539
- display: inline-block;
 
 
 
 
 
 
 
 
540
  }
541
 
542
  #seopress_cpt #tabs-1 input {
543
- width: 100%;
544
  }
545
 
546
- #seopress_cpt #tabs-6 input[type=number] {
547
- width: 30%;
548
- min-width: 200px;
549
  }
550
 
551
  #seopress_cpt #tabs-6 #wrap-videos .video:first-child .remove-video {
552
- display: none;
553
  }
554
 
555
  #seopress_cpt select {
556
- width: 300px;
557
  }
558
 
559
  #seopress_cpt #tabs-4 select {
560
- width: 250px;
561
- display: inline;
562
  }
563
 
564
  #seopress_cpt #tabs-4 #seopress_redirections_value_meta {
565
- width: calc(100% - 258px);
566
- float: right;
567
  }
568
 
569
  #seopress_cpt #tabs-6 {
570
- padding: 0;
571
  }
572
 
573
- #seopress_cpt #tabs-6 #wrap-videos .video .accordion-section-content,#seopress_cpt #tabs-6>p {
574
- padding: 0 1.4em;
 
575
  }
576
 
577
  #seopress_cpt #tabs-6 #wrap-videos .video .accordion-section-content {
578
- padding: 0 1.4em 1em;
579
  }
580
 
581
  #seopress_cpt #tabs-6 #wrap-videos .video {
582
- border-top: 1px solid #eee;
583
  }
584
 
585
  #seopress_cpt #tabs-6 #wrap-videos .video .accordion-section-title {
586
- border-left: none;
587
- border-right: none;
588
- font-size: 1em;
589
- padding: 1em 1.4em;
590
  }
591
 
592
- #seopress_cpt #tabs-6 #wrap-videos .video:last-child .accordion-section-content,#seopress_cpt #tabs-6 #wrap-videos .video:last-child .accordion-section-title {
593
- border-bottom: 1px solid #eee;
 
594
  }
595
 
596
  #seopress_cpt #tabs-6 #wrap-videos .video .inside {
597
- padding: 0;
598
  }
599
 
600
- #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 {
601
- font-weight: 400;
 
 
 
 
 
602
  }
603
 
604
  #seopress_cpt #tabs-6 #wrap-videos .video:nth-child(odd) {
605
- background: #fdfdfd;
606
  }
607
 
608
- #seopress_content_analysis .advise,#seopress_cpt .advise,#seopress_pro_cpt .advise, .seopress-option .advise {
609
- margin: 5px;
610
- display: block;
611
- color: red;
612
- font-style: italic;
 
 
 
613
  }
614
 
615
  #seopress_cpt #tabs-6 #wrap-videos .video .advise {
616
- color: #555;
617
  }
618
 
619
- #seopress_content_analysis .mandatory,#seopress_cpt .mandatory {
620
- color: #c00;
 
621
  }
622
 
623
  #seopress_cpt .box-left {
624
- float: left;
625
- width: 49%;
626
- margin-right: 1%;
627
  }
628
 
629
  #seopress_cpt .box-right {
630
- float: left;
631
- width: 49%;
632
- margin-left: 1%;
633
  }
634
  #seopress_cpt #tabs-3 .box-left {
635
- width: 44%;
636
  }
637
  #seopress_cpt #tabs-3 .box-right {
638
- width: 54%;
639
  }
640
  @media only screen and (max-width: 1200px) {
641
- #seopress_cpt .box-left,
642
- #seopress_cpt .box-right {
643
- float: none;
644
- width: 100%;
645
- margin: 0;
646
- }
647
  }
648
  @media only screen and (max-width: 1500px) {
649
- #seopress_cpt #tabs-3 .box-left,
650
- #seopress_cpt #tabs-3 .box-right {
651
- float: none;
652
- width: 100%;
653
- margin: 0;
654
- }
655
  }
656
 
657
  #edittag #seopress_cpt #tabs-3 .box-left,
658
  #edittag #seopress_cpt #tabs-3 .box-right {
659
- float: none;
660
- width: 100%;
661
- margin: 0;
662
  }
663
 
664
  #seopress-tabs .seopress_media_upload,
665
  #seopress_pro_cpt .seopress_media_upload {
666
- margin-top: 0.5rem;
667
  }
668
 
669
  #seopress_cpt .google-snippet-preview {
670
- font-family: arial,sans-serif;
671
- word-break: break-all;
672
  }
673
 
674
  #seopress_cpt .google-snippet-preview.mobile-preview .wrap-snippet {
675
- margin: 0 0 10px 0;
676
- box-shadow: 0 1px 6px rgba(32, 33, 36, 0.28);
677
- border-radius: 8px;
678
- padding: 12px 16px;
679
  }
680
 
681
  #seopress_cpt .google-snippet-preview > p {
682
- word-break: normal;
683
  }
684
 
685
- #seopress_cpt .google-snippet-preview .snippet-title,#seopress_cpt .google-snippet-preview .snippet-title-custom,#seopress_cpt .google-snippet-preview .snippet-title-default {
686
- color: #1a0dab;
687
- font-size: 18px;
688
- font-weight: 400;
689
- line-height: 21.6px;
 
 
690
  }
691
 
692
  #seopress_cpt .google-snippet-preview.mobile-preview .snippet-title,
693
  #seopress_cpt .google-snippet-preview.mobile-preview .snippet-title-custom,
694
  #seopress_cpt .google-snippet-preview.mobile-preview .snippet-title-default {
695
- font-size: 16px;
696
- line-height: 20px;
697
- margin-bottom: 12px;
698
  }
699
 
700
  #seopress_cpt .google-snippet-preview .snippet-permalink {
701
- color: #006621;
702
- font-size: 14px;
703
- font-style: normal;
704
- font-weight: 400;
705
- line-height: 16px;
706
- overflow: hidden;
707
- text-overflow: ellipsis;
708
- white-space: nowrap;
709
  }
710
 
711
  #seopress_cpt .google-snippet-preview .wrap-snippet .wrap-m-icon-permalink,
712
  #seopress_cpt .google-snippet-preview.mobile-preview .snippet-permalink {
713
- display: none;
714
  }
715
 
716
  #seopress_cpt .google-snippet-preview.mobile-preview .wrap-m-icon-permalink {
717
- overflow: hidden;
718
- text-overflow: ellipsis;
719
- white-space: nowrap;
720
- margin-bottom: 12px;
721
- display: flex;
722
  }
723
 
724
- #seopress_cpt .google-snippet-preview.mobile-preview .wrap-m-icon-permalink .snippet-permalink {
725
- display: block;
726
- color: #3C4043;
727
- font-size: 12px;
 
 
 
728
  }
729
 
730
  #seopress_cpt .google-snippet-preview.mobile-preview .snippet-favicon {
731
- margin-right: 12px;
732
- vertical-align: middle;
733
  }
734
 
735
  #seopress_cpt .google-snippet-preview.mobile-preview .snippet-favicon img {
736
- width: 16px;
737
- height: 16px;
738
- max-width: inherit;
739
- }
740
-
741
- #seopress_cpt .google-snippet-preview.mobile-preview .wrap-snippet .snippet-permalink:first-child {
742
- color: #3C4043;
743
- white-space: nowrap;
744
- font-size: 12px;
745
- display: block;
 
 
 
746
  }
747
 
748
- #seopress_cpt .google-snippet-preview .snippet-description,#seopress_cpt .google-snippet-preview .snippet-description-custom,#seopress_cpt .google-snippet-preview .snippet-description-default {
749
- color: #545454;
750
- font-size: 14px;
751
- font-weight: 400;
752
- line-height: 18.2px;
753
- display: inline;
 
 
754
  }
755
 
756
  #seopress_cpt .google-snippet-preview.mobile-preview .snippet-description,
757
- #seopress_cpt .google-snippet-preview.mobile-preview .snippet-description-custom,
758
- #seopress_cpt .google-snippet-preview.mobile-preview .snippet-description-default {
759
- color: #3C4043;
760
- font-size: 14px;
761
- line-height: 20px;
 
 
 
 
762
  }
763
 
764
  #seopress_cpt .google-snippet-preview .snippet-date {
765
- color: grey;
766
- display: inline;
767
  }
768
  #seopress_cpt .facebook-snippet-box {
769
- color: #4b4f56;
770
- font-size: 14px;
771
- width: 524px;
772
  }
773
  #seopress_cpt .facebook-snippet-box .notice,
774
  #seopress_cpt .twitter-snippet-box .notice {
775
- padding: 10px 14px;
776
- margin: 0 0 10px 0;
777
- box-sizing: border-box;
778
- width: 100%;
779
  }
780
  #seopress_cpt .facebook-snippet-box .notice span,
781
  #seopress_cpt .twitter-snippet-box .notice span {
782
- font-weight: bold;
783
  }
784
  #seopress_cpt .snippet-meta {
785
- display:flex;
786
- overflow: hidden;
787
- max-height: 12px;
788
- }
789
  #seopress_cpt .snippet-fb-site-name,
790
  #seopress_cpt .snippet-fb-url,
791
  #seopress_cpt .fb-by {
792
- color: #606770;
793
- font-size: 12px;
794
- white-space: normal;
795
- line-height: 11px;
796
- text-transform: uppercase;
797
- -webkit-box-orient: vertical;
798
- display: -webkit-box;
799
- text-overflow: ellipsis;
800
  }
801
  #seopress_cpt .fb-sep {
802
- padding-left: 5px;
803
- padding-right: 5px;
804
- color: #606770;
805
- line-height: 11px;
806
- font-size: 12px;
807
  }
808
  #seopress_cpt .facebook-snippet-box .facebook-snippet-text {
809
- border: 1px solid #dadde1;
810
- background-color: #f2f3f5;
811
- padding: 10px 12px;
812
  }
813
  #seopress_cpt .facebook-snippet-box .title-desc {
814
- max-height: 46px;
815
- overflow: hidden;
816
  }
817
  #seopress_cpt .facebook-snippet-box .snippet-fb-title,
818
  #seopress_cpt .facebook-snippet-box .snippet-fb-title-custom,
819
  #seopress_cpt .facebook-snippet-box .snippet-fb-title-default {
820
- font-size: 16px;
821
- line-height: 20px;
822
- margin: 3px 0 0;
823
- padding-top: 2px;
824
- color: #1d2129;
825
- font-weight: 700;
826
- overflow: hidden;
827
- -webkit-box-orient: vertical;
828
- display: -webkit-box;
829
- text-overflow: ellipsis;
830
- white-space: normal;
831
- word-break: break-word;
832
- max-height: 22px;
833
  }
834
  #seopress_cpt .facebook-snippet-box .snippet-fb-description,
835
  #seopress_cpt .facebook-snippet-box .snippet-fb-description-custom,
836
  #seopress_cpt .facebook-snippet-box .snippet-fb-description-default {
837
- color: #606770;
838
- font-size: 14px;
839
- line-height: 20px;
840
- word-break: break-word;
841
- font-family: Helvetica, Arial, sans-serif;
842
- max-height: 80px;
843
- overflow: hidden;
844
- -webkit-box-orient: vertical;
845
- display: -webkit-box;
846
- text-overflow: ellipsis;
847
- white-space: normal;
848
- width: 100%;
849
  }
850
  #seopress_cpt .facebook-snippet-box img {
851
- display: block;
852
- height: 274px;
853
- width: 524px;
854
- object-fit: cover;
855
- background-color: #edeff0;
856
- text-align: center;
857
- border-bottom: none;
858
  }
859
 
860
  #seopress_cpt .twitter-snippet-box {
861
- color: #4b4f56;
862
- font-size: 14px;
863
- width: 436px;
864
  }
865
  #seopress_cpt .snippet-twitter-url {
866
- color: #8899A6;
867
- font-size: 14px;
868
- white-space: normal;
869
- line-height: 11px;
870
- text-transform: uppercase;
871
- -webkit-box-orient: vertical;
872
- display: -webkit-box;
873
- text-overflow: ellipsis;
874
  }
875
  #seopress_cpt .twitter-snippet-box .twitter-snippet-text {
876
- border: 1px solid #dadde1;
877
- background-color: #fff;
878
- padding: 10px 12px;
879
- border-radius: 0 0 10px 10px;
880
  }
881
  #seopress_cpt .twitter-snippet-box .title-desc {
882
- max-height: 46px;
883
- overflow: hidden;
884
  }
885
  #seopress_cpt .twitter-snippet-box .snippet-twitter-img,
886
  #seopress_cpt .twitter-snippet-box .snippet-twitter-img-default,
887
  #seopress_cpt .twitter-snippet-box .snippet-twitter-img-custom {
888
- border-radius: 10px 10px 0 0;
889
- overflow: hidden;
890
  }
891
  #seopress_cpt .twitter-snippet-box .snippet-twitter-title,
892
  #seopress_cpt .twitter-snippet-box .snippet-twitter-title-custom,
893
  #seopress_cpt .twitter-snippet-box .snippet-twitter-title-default {
894
- font-size: 1em;
895
- line-height: 20px;
896
- margin-bottom: 5px;
897
- max-height: 1.3em;
898
- color: #000;
899
- font-weight: 700;
900
- overflow: hidden;
901
- -webkit-box-orient: vertical;
902
- display: -webkit-box;
903
- text-overflow: ellipsis;
904
- white-space: normal;
905
- word-break: break-word;
906
  }
907
  #seopress_cpt .twitter-snippet-box .snippet-twitter-description,
908
  #seopress_cpt .twitter-snippet-box .snippet-twitter-description-custom,
909
  #seopress_cpt .twitter-snippet-box .snippet-twitter-description-default {
910
- color: #000;
911
- font-size: 14px;
912
- line-height: 20px;
913
- word-break: break-word;
914
- font-family: Helvetica, Arial, sans-serif;
915
- max-height: 80px;
916
- overflow: hidden;
917
- -webkit-box-orient: vertical;
918
- display: -webkit-box;
919
- text-overflow: ellipsis;
920
- white-space: normal;
921
- width: 100%;
922
  }
923
  #seopress_cpt .twitter-snippet-box img {
924
- display: block;
925
- height: 200px;
926
- width: 436px;
927
- object-fit: cover;
928
- background-color: #edeff0;
929
- text-align: center;
930
- border-bottom: none;
931
- }
932
-
933
- #seopress_cpt .wrap-seopress-counters, #seopress_pro_cpt .wrap-seopress-counters, .seopress-styles .wrap-seopress-counters, .seopress-setup .wrap-seopress-counters {
934
- text-align: right;
935
- background: #e9ecef;
936
- padding: 2px 5px;
937
- display: flex;
938
- font-size: 12px;
939
- justify-content: flex-end;
940
- border-radius: 0 0 .25rem .25rem;
941
- }
942
- #seopress_cpt .sp-progress, #seopress_pro_cpt .sp-progress, .seopress-styles .sp-progress, .seopress-setup .sp-progress {
943
- display: -ms-flexbox;
944
- display: flex;
945
- height: 1rem;
946
- overflow: hidden;
947
- font-size: .75rem;
948
- background-color: #e9ecef;
949
- border-radius: .25rem .25rem 0 0;
950
- }
951
- #seopress_cpt .sp-progress-bar, #seopress_pro_cpt .sp-progress-bar, .seopress-styles .sp-progress-bar, .seopress-setup .sp-progress-bar {
952
- display: -ms-flexbox;
953
- display: flex;
954
- -ms-flex-direction: column;
955
- flex-direction: column;
956
- -ms-flex-pack: center;
957
- justify-content: center;
958
- color: #fff;
959
- text-align: center;
960
- white-space: nowrap;
961
- background-color: #0085ba;
962
- transition: width .6s ease;
 
 
 
 
 
 
 
 
 
963
  }
964
  #seopress_cpt #seopress_titles_desc_counters,
965
  #seopress_cpt #seopress_titles_title_counters,
966
  #seopress_pro_cpt #seopress_rich_snippets_articles_counters,
967
  #seopress_pro_cpt #seopress_rich_snippets_courses_counters {
968
- display: inline;
969
- margin-right: 5px;
970
  }
971
 
972
  #seopress_cpt #seopress_titles_desc_counters_val,
973
  #seopress_cpt #seopress_titles_title_counters_val,
974
  #seopress_pro_cpt #seopress_rich_snippets_articles_counters_val,
975
  #seopress_pro_cpt #seopress_rich_snippets_courses_counters_val {
976
- display: inline;
977
- font-weight: 700;
978
  }
979
 
980
  #term-seopress #seopress_cpt {
981
- width: 95%;
982
  }
983
 
984
  .fixed .column-seopress_w3c,
985
  .fixed .column-seopress_words,
986
  .fixed .column-seopress_ps,
987
  .fixed .column-seopress_score {
988
- width: 6%;
989
  }
990
 
991
- .fixed .column-seopress_nofollow,
992
- .fixed .column-seopress_noindex {
993
- width: 8%;
994
  }
995
  @media only screen and (max-width: 1200px) {
996
- .fixed .column-seopress_nofollow,
997
- .fixed .column-seopress_noindex,
998
- .fixed .column-seopress_w3c,
999
- .fixed .column-seopress_words,
1000
- .fixed .column-seopress_ps,
1001
- .fixed .column-seopress_score {
1002
- width: 10%;
1003
- }
1004
  }
1005
 
1006
-
1007
  #seopress_cpt .ui-tabs {
1008
- position: relative;
1009
- padding: 0;
1010
- border: none;
1011
- font-family: inherit;
1012
- font-size: inherit;
1013
- display: inline-block;
1014
- width: 100%;
1015
  }
1016
 
1017
  #seopress_cpt .ui-tabs .ui-tabs-nav li {
1018
- list-style: none;
1019
- display: inline-block;
1020
- position: relative;
1021
- top: 2px;
1022
- padding: 0px 5px;
1023
- white-space: nowrap;
1024
- margin: 0;
1025
- border: none;
1026
- background: 0 0;
1027
  }
1028
 
1029
  #seopress_cpt .ui-tabs .ui-tabs-nav li a {
1030
- display: inline-block;
1031
- padding: 5px 10px;
1032
  }
1033
 
1034
- #seopress-admin-tabs.ui-tabs-vertical .ui-tabs-nav li a,#seopress_cpt .ui-tabs-vertical .ui-tabs-nav li a {
1035
- display: block;
 
1036
  }
1037
 
1038
  #seopress_cpt .ui-tabs .ui-tabs-nav li.ui-tabs-active {
1039
- margin-bottom: 2px;
1040
- padding-bottom: 1px;
1041
  }
1042
 
1043
- #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 {
1044
- color: #191e23;
1045
- font-weight: bold;
 
 
1046
  }
1047
 
1048
- #seopress_cpt .ui-tabs .ui-tabs-nav li a,#seopress_cpt .ui-tabs-collapsible .ui-tabs-nav li.ui-tabs-active a {
1049
- cursor: pointer;
1050
- color: #191e23;
1051
- text-decoration: none;
1052
- height: 40px;
1053
- line-height: 40px;
 
1054
  }
1055
 
1056
  #seopress_cpt .ui-tabs-vertical {
1057
- width: 55em;
1058
  }
1059
 
1060
  #seopress_cpt .ui-tabs-vertical .ui-tabs-nav {
1061
- padding: .2em .1em .2em .2em;
1062
- float: left;
1063
- width: 12em;
1064
  }
1065
 
1066
  #seopress_cpt .ui-tabs-vertical .ui-tabs-nav li {
1067
- clear: left;
1068
- width: 100%;
1069
- border-bottom-width: 1px!important;
1070
- border-right-width: 0!important;
1071
- margin: 0 -1px .2em 0;
1072
  }
1073
 
1074
  #seopress_cpt .ui-tabs-vertical .ui-tabs-nav li.ui-tabs-active {
1075
- padding-bottom: 0;
1076
- padding-right: .1em;
1077
- border-right-width: 1px;
1078
  }
1079
 
1080
  #seopress_cpt .ui-tabs-vertical .ui-tabs-panel {
1081
- padding: 1em;
1082
- float: right;
1083
- width: 40em;
1084
  }
1085
 
1086
  #seopress_cpt .ui-tabs .ui-tabs-nav li a .dashicons {
1087
- margin-right: 2px;
1088
  }
1089
 
1090
  #tab-panel-seopress_titles_help_tab li span {
1091
- font-weight: 700;
1092
- margin-right: 10px;
1093
  }
1094
 
1095
- #seopress_content_analysis .dashicons-no-alt,#seopress_content_analysis .dashicons-yes,#seopress_pro_cpt .dashicons-no-alt,#seopress_pro_cpt .dashicons-yes {
1096
- color: #fff;
1097
- background: #12BD10;
1098
- border-radius: 50px;
1099
- margin-right: 10px;
 
 
 
1100
  }
1101
 
1102
- #seopress_content_analysis .dashicons-no-alt,#seopress_pro_cpt .dashicons-no-alt {
1103
- background: #e25950;
 
1104
  }
1105
 
1106
  body.seopress-styles {
1107
- background: #f8fafd;
1108
  }
1109
 
1110
  #seopress-admin-tabs.ui-tabs {
1111
- position: relative;
1112
- padding: .2em;
1113
- border: none;
1114
- font-family: inherit;
1115
- font-size: inherit;
1116
  }
1117
 
1118
  #seopress-admin-tabs.ui-tabs .ui-tabs-nav li {
1119
- list-style: none;
1120
- float: left;
1121
- position: relative;
1122
- top: 0;
1123
- margin: -1px .2em 0 0;
1124
- padding: 0;
1125
- white-space: nowrap;
1126
- border: none;
1127
- background: 0 0;
1128
  }
1129
 
1130
  #seopress-admin-tabs.ui-tabs .ui-tabs-nav li a {
1131
- float: left;
1132
- padding: .38em 1em .75rem;
1133
- outline: 0;
1134
- border-bottom: 2px solid #fff;
1135
  }
1136
 
1137
  #seopress-admin-tabs.ui-tabs .ui-tabs-nav li.ui-tabs-active {
1138
- margin-bottom: -1px;
1139
  }
1140
 
1141
- #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 {
1142
- cursor: text;
1143
- border-bottom: 2px solid #23282D;
1144
- color: #23282D;
 
 
1145
  }
1146
 
1147
- #seopress-admin-tabs.ui-tabs .ui-tabs-nav li a,#seopress-admin-tabs.ui-tabs-collapsible .ui-tabs-nav li.ui-tabs-active a {
1148
- cursor: pointer;
1149
- color: #0073aa;
1150
- text-decoration: none;
 
1151
  }
1152
 
1153
  #seopress-admin-tabs.ui-tabs-vertical {
1154
- width: 55em;
1155
  }
1156
 
1157
  #seopress-admin-tabs.ui-tabs-vertical .ui-tabs-nav {
1158
- padding: .2em .1em .2em .2em;
1159
- float: left;
1160
- width: 12em;
1161
  }
1162
 
1163
  #seopress-admin-tabs.ui-tabs-vertical .ui-tabs-nav li {
1164
- clear: left;
1165
- width: 100%;
1166
- border-bottom-width: 1px!important;
1167
- border-right-width: 0!important;
1168
- margin: 0 -1px .2em 0;
1169
  }
1170
 
1171
  #seopress-admin-tabs.ui-tabs-vertical .ui-tabs-nav li.ui-tabs-active {
1172
- padding-bottom: 0;
1173
- padding-right: .1em;
1174
- border-right-width: 1px;
1175
  }
1176
 
1177
  #seopress-admin-tabs.ui-tabs-vertical .ui-tabs-panel {
1178
- padding: 1em;
1179
- float: right;
1180
- width: 40em;
1181
  }
1182
 
1183
  .seopress-styles .seopress-option {
1184
- margin: 10px auto 0;
1185
- max-width: 90%;
1186
- padding: 1rem;
1187
- background: #fff;
1188
- box-shadow: 0 15px 35px rgba(50,50,93,.1),0 5px 15px rgba(0,0,0,.1);
1189
- border-radius: 4px;
1190
  }
1191
 
1192
  .seopress-styles .seopress-option h1 {
1193
- font-size: 16px;
1194
- font-weight: 700;
1195
- color: #3297d3;
1196
- text-transform: uppercase;
1197
- /* Required for Safari */
1198
- z-index: 100;
1199
- border-bottom: 1px solid RGB(238,238,238);
1200
- padding-bottom: 20px;
1201
  }
1202
 
1203
- .seopress-styles .seopress-option h1 .dashicons,.seopress-styles .seopress-option h2 .dashicons {
1204
- margin: 0 10px;
1205
- font-size: 40px;
1206
- width: 40px;
1207
- height: 40px;
1208
- vertical-align: middle;
 
1209
  }
1210
 
1211
  .seopress-styles .seopress-option .link-archive {
1212
- font-size: 14px;
1213
  }
1214
 
1215
  .seopress-styles .seopress-option .link-archive .dashicons {
1216
- font-size: 18px;
1217
- width: 20px;
1218
- height: 20px;
1219
- margin: inherit;
1220
  }
1221
 
1222
- .seopress-styles .seopress-option h1>.dashicons {
1223
- font-size: 30px;
1224
- width: 30px;
1225
- height: 30px;
1226
- background: #c4f0ff;
1227
- border-radius: 6px;
1228
- padding: 10px;
1229
- margin-left: 10px;
1230
- color: #0085ba;
1231
  }
1232
 
1233
  .seopress-styles .seopress-option .metabox-holder h2 .dashicons {
1234
- font-size: 16px;
1235
  }
1236
 
1237
  .seopress-option h1 .feature-state .dashicons {
1238
- font-size: 16px;
1239
- width: 16px;
1240
- height: 16px;
1241
- vertical-align: middle;
1242
- margin: 0 10px 0 0;
1243
  }
1244
 
1245
  #seopress-admin-tabs.wrap {
1246
- display: block;
1247
- box-shadow: 0 7px 14px 0 rgba(60,66,87, 0.12), 0 3px 6px 0 rgba(0,0,0, 0.12);
1248
- width: 64rem;
1249
- max-width: 100%;
1250
- margin: 0 auto;
 
1251
  }
1252
 
1253
  @media only screen and (max-width: 1024px) {
1254
- #seopress-admin-tabs.wrap {
1255
- width: 100%;
1256
- }
1257
  }
1258
 
1259
  .seopress-styles .seopress-option .submit {
1260
- background: #fff;
1261
- text-align: center;
1262
- border-top: 1px solid #F1F1F1;
1263
- padding-top: 20px;
1264
- padding-bottom: 20px;
1265
- margin: 0;
1266
- }
1267
-
1268
- .seopress-styles .seopress-option #seopress-yoast-migrate, .seopress-styles .seopress-option #seopress-aio-migrate, .seopress-styles .seopress-option #seopress-seo-framework-migrate, .seopress-styles .seopress-option #seopress-rk-migrate, .seopress-styles .seopress-option #seopress-squirrly-migrate, .seopress-styles .seopress-option #submit {
1269
- color: #fff;
1270
- text-decoration: none;
1271
- border: none;
1272
- border-radius: 4px;
1273
- padding-right: 20px;
1274
- padding-left: 20px;
1275
- line-height: 34px;
1276
- text-transform: uppercase;
1277
- min-height: 34px;
1278
- transition: all .3s linear;
1279
- text-shadow: none;
1280
- box-shadow: 0 7px 14px rgba(50,50,93,.1),0 3px 6px rgba(0,0,0,.1);
1281
- margin-right: 15px;
1282
- background: RGB(106,124,148);
1283
- position: relative;
1284
- height: auto;
1285
- z-index: 10;
1286
- }
1287
-
1288
- .seopress-styles .seopress-option #seopress-yoast-migrate:hover, .seopress-styles .seopress-option #seopress-aio-migrate:hover, .seopress-styles .seopress-option #seopress-seo-framework-migrate:hover, .seopress-styles .seopress-option #seopress-rk-migrate:hover, .seopress-styles .seopress-option #seopress-squirrly-migrate:hover, .seopress-styles .seopress-option #submit:hover {
1289
- text-decoration: none;
1290
- color: #FFF;
1291
- background: #232323;
 
 
 
 
 
 
 
 
 
 
1292
  }
1293
 
1294
  .seopress-styles #wpcontent {
1295
- padding-left: 0;
1296
  }
1297
 
1298
  .seopress-styles pre {
1299
- color: #42b72a;
1300
- background: #f5f6f7;
1301
- font-family: Menlo, Monaco, Andale Mono, Courier New, monospace;
1302
- padding: 7px;
1303
- /* display: none; */
1304
  }
1305
 
1306
  .seopress-styles #seopress-navbar {
1307
- padding: 10px 0.5rem;
1308
- height: 60px;
1309
- margin: 0 auto;
1310
- width: 64rem;
1311
- box-sizing: border-box;
1312
- position: relative;
1313
- max-width: 100%;
1314
  }
1315
 
1316
  #seopress-header {
1317
- margin: 0 auto;
1318
- position: relative;
1319
- width: 90%;
1320
- padding: 1rem;
1321
  }
1322
 
1323
  #seopress-header #seopress-admin h1 {
1324
- line-height: 40px;
1325
- margin: 0;
1326
- display: inline-block;
1327
- height: 40px;
1328
- width: 40px;
1329
- background-size: 100%;
1330
- background-repeat: no-repeat;
1331
  }
1332
 
1333
  #seopress-header #seopress-admin h1::before {
1334
- font-size: 14px;
1335
- line-height: 40px;
1336
- position: absolute;
1337
- border-radius: 6px;
1338
- font-weight: 400;
1339
- color: #fff;
1340
- width: 40px;
1341
- height: 40px;
1342
- text-align: center;
1343
- background: rgb(58,74,251);
1344
- background: -moz-linear-gradient(45deg, rgba(58,74,251,1) 0%, rgba(71,190,165,1) 100%);
1345
- background: -webkit-linear-gradient(45deg, rgba(58,74,251,1) 0%,rgba(71,190,165,1) 100%);
1346
- background: linear-gradient(45deg, rgba(58,74,251,1) 0%,rgba(71,190,165,1) 100%);
1347
- filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#3a4afb', endColorstr='#47bea5',GradientType=1 );
 
 
 
 
 
 
 
 
 
 
 
 
1348
  }
1349
 
1350
  #seopress-header #seopress-admin h1:hover {
1351
- cursor: pointer;
1352
  }
1353
 
1354
- #seopress-header #seopress-admin h1>a {
1355
- text-decoration: none;
1356
- color: inherit;
1357
  }
1358
 
1359
  #seopress-header #seopress-admin .seopress-quick-access {
1360
- background: #fff;
1361
- 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);
1362
- border-radius: 4px;
1363
- overflow: hidden;
1364
- position: absolute;
1365
- font-size: 17px;
1366
- line-height: 40px;
1367
- white-space: nowrap;
1368
- transform: rotate3d(1,1,0,-15deg);
1369
- transform-origin: 100% 0;
1370
- opacity: 0;
1371
- will-change: transform,opacity;
1372
- transition-property: transform,opacity;
1373
- transition-duration: .25s;
1374
- z-index: 300;
1375
- padding: 0;
1376
- display: inline-block;
1377
- width: 100%;
1378
- top: 52px;
1379
- visibility: hidden;
1380
- cursor: auto;
1381
- left: -0.5rem;
 
1382
  }
1383
 
1384
  #seopress-header #seopress-admin h1:hover .seopress-quick-access {
1385
- transform: none;
1386
- opacity: 1;
1387
- pointer-events: auto;
1388
- visibility: visible;
1389
  }
1390
 
1391
- #seopress-header #seopress-admin .seopress-quick-access>ul {
1392
- margin: 0;
1393
- box-sizing: border-box;
1394
- display: grid;
1395
- grid-gap: 0px 10px;
1396
- grid-template-columns: repeat(2,1fr);
1397
- padding: 20px;
1398
  }
1399
 
1400
  @media only screen and (max-width: 1024px) {
1401
- #seopress-header #seopress-admin .seopress-quick-access>ul {
1402
- grid-template-columns: repeat(1,1fr);
1403
- }
1404
  }
1405
 
1406
  #seopress-header #seopress-admin h1 .seopress-quick-access li {
1407
- line-height: 40px;
1408
- margin: 0;
1409
- display: inline-block;
1410
- height: 40px;
1411
- background-size: 100%;
1412
- background-repeat: no-repeat;
1413
  }
1414
 
1415
  #seopress-header #seopress-admin h1 .seopress-quick-access li .dashicons {
1416
- vertical-align: middle;
1417
- background: #B7E1F3;
1418
- border-radius: 50%;
1419
- padding: 5px;
1420
- margin-right: 15px;
1421
  }
1422
 
1423
  #seopress-header #seopress-admin h1 .seopress-quick-access li a {
1424
- text-decoration: none;
1425
- font-size: 15px;
1426
- line-height: 30px;
1427
- text-transform: uppercase;
1428
- display: block;
1429
- width: 100%;
1430
- transition: all .3s linear;
1431
- color: #3297d3;
1432
  }
1433
 
1434
  #seopress-header #seopress-admin h1 .seopress-quick-access li a:hover {
1435
- color: #647a88;
1436
  }
1437
 
1438
  #seopress-header #seopress-admin h1 .seopress-info-version {
1439
- position: relative;
1440
- left: 50px;
1441
- top: 0;
1442
- font-size: 14px;
1443
- width: 100px;
1444
- display: block;
1445
  }
1446
 
1447
  #seopress-header #seopress-admin .wpc-info-version {
1448
- font-size: 14px;
1449
- left: 310px;
1450
- position: absolute;
1451
- text-indent: 0;
1452
- top: 85px;
1453
  }
1454
 
1455
  #seopress-header #seopress-notice {
1456
- float: right;
1457
- line-height: 40px;
1458
  }
1459
 
1460
  #seopress-header #seopress-notice p {
1461
- font-size: 16px;
1462
  }
1463
 
1464
  #seopress-header #seopress-notice .dashicons {
1465
- color: #6f8096;
1466
- text-decoration: none;
1467
- line-height: 40px;
1468
  }
1469
 
1470
  #seopress-header #seopress-notice div.small {
1471
- font-size: 13px;
1472
- display: inline;
1473
  }
1474
 
1475
  #seopress-footer-credits {
1476
- font-style: italic;
1477
  }
1478
 
1479
  #seopress-footer-credits .wporg-ratings {
1480
- display: inline;
1481
  }
1482
 
1483
  #seopress-footer-credits .wporg-ratings a {
1484
- text-decoration: none;
1485
  }
1486
 
1487
  .seopress-option .seopress-settings {
1488
- float: left;
1489
- max-width: 750px;
1490
- width: 100%;
1491
  }
1492
 
1493
- .seopress-option #seopress-edd-license-btn,.seopress-option #seopress-refresh {
1494
- float: left;
 
1495
  }
1496
 
1497
  .wp-admin-ui_page_seopress-import-export .postbox {
1498
- margin-right: 20px;
1499
  }
1500
 
1501
  .seopress-option #side-sortables .accordion-section-content {
1502
- padding: 0;
1503
  }
1504
 
1505
  .seopress-option .seopress-settings label {
1506
- margin: 0 0 0 10px;
1507
  }
1508
 
1509
  .wrap-seopress-tab-content {
1510
- position: relative;
1511
- display: block;
1512
- width: 100%;
1513
- max-width: 64rem;
1514
- margin: 0 auto;
1515
- box-sizing: border-box;
1516
  }
1517
 
1518
  #seopress-admin-tabs .seopress-tab {
1519
- padding: 1.5rem;
1520
- visibility: hidden;
1521
- overflow: hidden;
1522
- opacity: 0;
1523
- transition: all .2s ease;
1524
- transform: translateX(-15px);
1525
- position: absolute;
1526
- top: 0;
1527
- box-sizing: border-box;
1528
  }
1529
 
1530
  #seopress-admin-tabs .seopress-tab.active {
1531
- visibility: visible;
1532
- overflow: inherit;
1533
- opacity: 1;
1534
- transform: translateX(0);
1535
- display: inherit;
1536
- position: relative;
1537
  }
1538
 
1539
  #seopress-tabs .seopress-tab {
1540
- padding: 0 1.5rem;
1541
- width: calc(100% - 230px);
1542
- display: none;
1543
  }
1544
 
1545
  @media only screen and (max-width: 1024px) {
1546
- #seopress-tabs .seopress-tab {
1547
- width: 100%;
1548
- }
1549
- }
1550
 
1551
  #seopress-tabs .seopress-tab.active {
1552
- display: inline-block;
1553
- border-left: 1px solid RGB(238,238,238);
1554
  }
1555
 
1556
  @media only screen and (max-width: 782px) {
1557
- #seopress-tabs .seopress-tab.active {
1558
- width: 100%;
1559
- padding: 0;
1560
- border-left: none;
1561
- border-top: 1px solid RGB(238,238,238);
1562
- }
1563
  }
1564
 
1565
-
1566
- .seopress-option input[type=text],.seopress-option input[type=password],.seopress-option textarea {
1567
- min-width: 485px;
 
1568
  }
1569
 
1570
  @media only screen and (max-width: 1024px) {
1571
- .seopress-option input[type=text],.seopress-option input[type=password],.seopress-option textarea {
1572
- min-width: inherit;
1573
- width: 100%;
1574
- }
 
 
1575
  }
1576
 
1577
  #seopress_htaccess_file {
1578
- width: 100%;
1579
  }
1580
 
1581
  .seopress-option textarea {
1582
- min-height: 100px;
1583
  }
1584
 
1585
  .seopress-option #side-sortables .highlight {
1586
- border: 1px dashed #ccc;
1587
- display: block;
1588
- width: 382px;
1589
- height: 40px;
1590
- background: 0 0;
1591
  }
1592
 
1593
  .seopress-option #side-sortables .accordion-section {
1594
- margin-bottom: 9px;
1595
- width: 382px;
1596
  }
1597
 
1598
  .seopress-option #side-sortables .accordion-section h3 {
1599
- cursor: move;
1600
- border: 1px solid #E5E5E5;
1601
- background: #FAFAFA;
1602
  }
1603
 
1604
  .seopress-option #side-sortables .accordion-section .inside {
1605
- padding: 10px 10px 24px;
1606
- border-width: 0 1px 1px;
1607
- border-style: solid;
1608
- box-shadow: 0 1px 1px rgba(0,0,0,.04);
1609
- border-color: #e5e5e5;
1610
- display: inline-block;
1611
- width: calc(100% - 22px);
1612
- height: 100%;
1613
  }
1614
 
1615
  .seopress-option #side-sortables .accordion-section .inside ul {
1616
- padding-left: 10px;
1617
- margin-bottom: 0;
1618
- padding-top: 2px;
1619
- padding-bottom: 2px;
1620
  }
1621
 
1622
  .seopress-option #side-sortables .accordion-section .inside ul li {
1623
- border-left: 2px solid #ccc;
1624
- padding-left: 10px;
1625
- margin-bottom: 10px;
1626
  }
1627
 
1628
  .seopress-option #side-sortables .accordion-section .inside ul li:first-child {
1629
- border-bottom: 1px dotted #E5E5E5;
1630
- border-left: 0;
1631
- padding-bottom: 10px;
1632
- font-weight: 700;
1633
- margin-left: -15px;
1634
- margin-bottom: 10px;
1635
  }
1636
 
1637
  .seopress-notice #message {
1638
- margin: 5px 10px 2px 0;
1639
  }
1640
 
1641
  #seopress-notice a {
1642
- position: relative;
1643
- text-decoration: none;
1644
- margin: 0 0 0 0.3rem;
1645
  }
1646
 
1647
  #seopress-notice a .tooltip {
1648
- white-space: pre;
1649
- z-index: 200;
1650
- padding: 2px 5px;
1651
- font-weight: 500;
1652
- font-size: 12px;
1653
- color: #aab7c4;
1654
- background: #fff;
1655
- box-shadow: 0 1px 2px 0 rgba(49,49,93,.1),0 0 1px 0 rgba(0,0,0,.1);
1656
- border-radius: 2px;
1657
- position: absolute;
1658
- opacity: 0;
1659
- top: 30px;
1660
- transition: opacity .2s ease;
1661
- visibility: hidden;
1662
- line-height: 20px;
1663
- left: -100%;
1664
- overflow: hidden;
1665
  }
1666
 
1667
  #seopress-notice a:hover .tooltip {
1668
- opacity: 1;
1669
- visibility: visible;
1670
  }
1671
 
1672
  .seopress-page-list {
1673
- margin: 1.5rem auto;
1674
  }
1675
 
1676
- .seopress-option .dashicons,.seopress-page-list .dashicons {
1677
- vertical-align: middle;
1678
- margin-right: 5px;
1679
- color:#6f8096;
 
1680
  }
1681
 
1682
- #seopress-admin-tabs .ui-tabs-nav,#seopress-notifications-center,
1683
- .seopress-page-list .seopress-feature,.seopress-useful-tools,
 
 
1684
  .seopress-get-started {
1685
- margin: 0 auto 20px;
1686
- max-width: 64rem;
1687
- padding: 2rem;
1688
- width: 100%;
1689
- border-radius: 0 0 4px 4px;
1690
- box-sizing: border-box;
1691
  }
1692
 
1693
  .seopress-get-started {
1694
- margin-top: 20px;
1695
- background: #fff url(../img/bg-hero-support.svg) no-repeat 95% 50% / contain;
1696
- position: relative;
1697
- box-sizing: border-box;
1698
- box-shadow: 0 7px 14px 0 rgba(60,66,87, 0.12), 0 3px 6px 0 rgba(0,0,0, 0.12);
 
1699
  }
1700
 
1701
  .seopress-get-started .inside {
1702
- max-width: calc(100% - 380px);
1703
  }
1704
 
1705
  @media only screen and (max-width: 782px) {
1706
- .seopress-get-started {
1707
- background: #fff;
1708
- }
1709
- .seopress-get-started .inside {
1710
- max-width: 100%;
1711
- }
1712
  }
1713
 
1714
  .seopress-get-started .preheader {
1715
- text-transform: uppercase;
1716
- font-size: 0.8rem;
1717
- font-weight: 600;
1718
  }
1719
 
1720
  .seopress-get-started h2 {
1721
- font-size: 1.85em;
1722
- margin: 15px 0 0 0;
1723
- font-weight: normal;
1724
  }
1725
 
1726
  .seopress-get-started p {
1727
- margin-bottom: 20px;
1728
  }
1729
 
1730
  .seopress-get-started a .dashicons {
1731
- vertical-align: middle;
1732
- text-decoration: none;
1733
- color: #6a7c94;
1734
  }
1735
 
1736
  .seopress-get-started a.button-primary .dashicons {
1737
- color: #fff;
1738
  }
1739
 
1740
  .seopress-get-started a.btn-link .dashicons {
1741
- margin-right: 5px;
1742
  }
1743
 
1744
  .seopress-get-started a.btn-link {
1745
- margin: 0 0 0 10px;
1746
  }
1747
 
1748
- #seopress-notifications-center,.seopress-useful-tools {
1749
- background: #fff;
1750
- padding: 0;
 
1751
  }
1752
 
1753
  .seopress-page-list .seopress-feature {
1754
- padding: 0;
1755
- position: relative;
1756
- overflow: hidden;
1757
- transition-duration: .15s;
1758
- display: flex;
1759
- margin: 0;
1760
- background: #fff;
1761
- box-shadow: 0 7px 14px 0 rgba(60,66,87, 0.12), 0 3px 6px 0 rgba(0,0,0, 0.12);
1762
- flex-wrap: wrap;
1763
- border-radius: 4px;
1764
- width: 100%;
1765
- height: 100%;
 
1766
  }
1767
 
1768
  .seopress-page-list .seopress-feature p {
1769
- color: #6b7c93;
1770
- font-size: 14px;
1771
- margin-bottom: 30px;
1772
  }
1773
 
1774
  #seopress-notifications-center {
1775
- margin-top: 0;
1776
  }
1777
 
1778
  #seopress-admin-tabs .ui-tabs-nav {
1779
- display: flex;
1780
- padding-top: 1rem;
1781
- padding-bottom: 0;
1782
  }
1783
 
1784
  .seopress-page-list .seopress-feature .img-tool {
1785
- height: 50px;
1786
- width: 50px;
1787
- background: #c4f0ff;
1788
- position: relative;
1789
- border-radius: 6px;
1790
  }
1791
 
1792
  .seopress-page-list .seopress-feature .img-tool .dashicons {
1793
- color: #217AB7;
1794
- font-size: 30px;
1795
- text-align: left;
1796
- vertical-align: middle;
1797
- width: 100%;
1798
- height: 100%;
1799
- position: absolute;
1800
- top: calc(50% - 15px);
1801
- left: calc(50% - 15px);
1802
- margin: 0;
1803
  }
1804
 
1805
  .seopress-page-list .seopress-feature .inner {
1806
- margin: 0;
1807
- display: inline-block;
1808
- padding: 1.5rem;
1809
- width: 100%;
1810
- height: 100%;
1811
- box-sizing: border-box;
1812
  }
1813
 
1814
  .seopress-page-list .seopress-feature h3 {
1815
- margin: 1rem 0 0 0;
1816
- font-size: 16px;
1817
- font-weight: 700;
1818
- color: #3297d3;
1819
- text-transform: uppercase;
1820
  }
1821
 
1822
  .seopress-page-list .seopress-feature h3 .dashicons {
1823
- font-size: 16px;
1824
- margin-left: 5px;
1825
- vertical-align: middle;
1826
  }
1827
 
1828
  #seopress-content .seopress-page-list .seopress-feature a,
@@ -1830,121 +2000,135 @@ body.seopress-styles {
1830
  .seopress-option .seopress-feature a,
1831
  .seopress-useful-tools .widget .button-primary,
1832
  .seopress-get-started .button-primary {
1833
- color: #fff;
1834
- text-decoration: none;
1835
- border: none;
1836
- border-radius: 4px;
1837
- padding-right: 20px;
1838
- padding-left: 20px;
1839
- line-height: 34px;
1840
- text-transform: uppercase;
1841
- min-height: 34px;
1842
- transition: all .3s linear;
1843
- text-shadow: none;
1844
- box-shadow: 0 7px 14px rgba(50,50,93,.1), 0 3px 6px rgba(0,0,0,.1);
1845
- background: #6A7C94;
1846
- position: relative;
1847
- height: auto;
1848
- display: flex;
1849
- flex-wrap: wrap;
1850
  }
1851
 
1852
  #seopress-content .seopress-page-list .seopress-feature a.button-secondary {
1853
- padding-left: 30px;
1854
  }
1855
 
1856
- #seopress-content .seopress-page-list .seopress-feature a.button-secondary::before,#seopress-notifications-center .seopress-alert .button-primary::after {
1857
- content: "\f111";
1858
- font-family: 'Dashicons';
1859
- position: absolute;
1860
- left: 10px;
1861
- top: 1px;
1862
- -moz-osx-font-smoothing: grayscale;
1863
- -webkit-font-smoothing: antialiased;
1864
- font-size: 16px;
 
 
 
 
1865
  }
1866
 
1867
- #seopress-content .seopress-page-list .wrap-btn {display: inline-flex;margin-bottom: 2rem;flex-direction: column;}
 
 
 
 
1868
 
1869
  #seopress-content .seopress-page-list .seopress-feature a.view-redirects,
1870
  #seopress-notifications-center .seopress-alert .button-primary,
1871
  .seopress-option .button,
1872
  .seopress-get-started .button {
1873
- color: rgb(106,124,148);
1874
- background: #ffffff;
1875
- font-weight: 500;
1876
- transition: all .3s linear;
1877
- text-shadow: none;
1878
- text-transform: uppercase;
1879
- padding-right: 20px;
1880
- padding-left: 20px;
1881
- line-height: 34px;
1882
- min-height: 34px;
1883
- margin: 10px 0;
1884
- border-radius: 4px;
1885
- box-shadow: rgba(0, 0, 0, 0) 0px 0px 0px 0px, rgba(0, 0, 0, 0) 0px 0px 0px 0px, rgba(0, 0, 0, 0.12) 0px 1px 1px 0px, rgba(60, 66, 87, 0.16) 0px 0px 0px 1px, rgba(0, 0, 0, 0) 0px 0px 0px 0px, rgba(0, 0, 0, 0) 0px 0px 0px 0px, rgba(60, 66, 87, 0.12) 0px 2px 5px 0px;
1886
- vertical-align: baseline;
1887
- display: inline-flex;
1888
- align-items: center;
1889
- border: none;
1890
- margin-right: 0.5rem;
1891
- cursor: pointer;
 
 
 
1892
  }
1893
 
1894
  .seopress-get-started .button {
1895
- color: #ffffff;
1896
- background: #6259e6;
1897
- box-shadow: none;
1898
  }
1899
 
1900
  .seopress-option .wp-picker-container button {
1901
- box-shadow: none;
1902
- border: 1px solid #0071a1;
1903
- border-radius: 3px;
1904
- background: rgb(243, 245, 246);
1905
- text-transform: none;
1906
  }
1907
 
1908
- .seopress-option .wp-picker-container input[type=text].wp-color-picker {
1909
- min-width: inherit;
1910
  }
1911
 
1912
  .seopress-option .wp-picker-container .wp-picker-default {
1913
- margin:0;
1914
  }
1915
 
1916
  .seopress-option .wp-picker-container .wp-picker-clear {
1917
- box-shadow: none;
1918
- text-transform: none;
1919
- border-radius: 0;
1920
- background: none;
1921
- margin: 0;
1922
  }
1923
 
1924
  .seopress-option .wp-picker-container .wp-picker-clear:hover {
1925
- background:none;
1926
- text-decoration: currentColor;
1927
- color:inherit;
1928
  }
1929
 
1930
  .seopress-option .button .dashicons {
1931
- font-size: 16px;
1932
- align-items: center;
1933
- display: flex;
1934
  }
1935
 
1936
  #seopress-content .seopress-page-list .seopress-feature a.view-redirects {
1937
- padding-left: 30px;
1938
  }
1939
 
1940
  #seopress-notifications-center .seopress-alert .button-primary::after {
1941
- content: "\f344";
1942
- left: inherit;
1943
- right: 10px;
1944
  }
1945
 
1946
- #seopress-content .seopress-page-list .seopress-feature a.view-redirects::before {
1947
- content: "\f177";
 
 
 
1948
  }
1949
 
1950
  #seopress-content .seopress-page-list .seopress-feature a:hover,
@@ -1953,240 +2137,264 @@ body.seopress-styles {
1953
  .seopress-option .seopress-feature a:hover,
1954
  .seopress-useful-tools .widget .button-primary:hover,
1955
  .seopress-get-started .button-primary:hover {
1956
- text-decoration: none;
1957
- color: #FFF;
1958
- background: #232323;
1959
  }
1960
 
1961
  .seopress-get-started .button .dashicons {
1962
- transition: all 300ms linear;
1963
  }
1964
 
1965
  .seopress-get-started .button:hover .dashicons {
1966
- color: #fff;
1967
  }
1968
 
1969
- #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-yoast-migrate:focus, .seopress-styles .seopress-option #seopress-aio-migrate:focus,.seopress-styles .seopress-option #submit:focus,.seopress-useful-tools .widget .button-primary:focus {
1970
- box-shadow: 0 1px 0 #0073aa,0 0 2px 1px #33b3db;
1971
- background: #008ec2;
1972
- border-color: #006799;
1973
- color: #fff;
 
 
 
 
 
 
 
 
 
 
 
 
 
1974
  }
1975
 
1976
  #seopress-admin-tabs .nav-tab-wrapper a.nav-tab-active:focus {
1977
- color: inherit;
1978
  }
1979
 
1980
  #seopress-notifications-center .seopress-alert .button-primary {
1981
- margin: 5px 0;
1982
- padding-right: 30px;
1983
  }
1984
 
1985
- #seopress-notifications-center h2,.seopress-useful-tools h2 {
1986
- margin: 5px 0 15px 5px;
1987
- display: inline-block;
1988
- width: 100%;
 
1989
  }
1990
 
1991
- #seopress-notifications-center .dashicons,.seopress-useful-tools .dashicons {
1992
- margin-right: 10px;
 
1993
  }
1994
 
1995
  #seopress-notifications-center .seopress-alert {
1996
- padding: 1.5rem 2rem 1.2rem 1rem;
1997
- border-bottom: 1px solid #e6ebf1;
1998
- width: calc(100% - 3rem);
1999
- flex: 1 1 auto;
2000
- position: relative;
2001
- transition: all 150ms ease;
2002
- align-items: center;
2003
- display: flex;
2004
- justify-content: space-between;
2005
  }
2006
 
2007
  #seopress-notifications-center .seopress-alert:last-child {
2008
- margin-bottom: 0;
2009
- border-bottom: none;
2010
  }
2011
 
2012
  #seopress-notifications-center .seopress-alert:hover {
2013
- cursor: default;
2014
  }
2015
 
2016
  #seopress-notifications-center .dashicons {
2017
- display: flex;
2018
- align-self: normal;
2019
- width: 48px;
2020
- height: 48px;
2021
- color: #d7dade;
2022
- font-size: 48px;
2023
- padding: 0 1rem;
2024
  }
2025
 
2026
  #seopress-notifications-center .seopress-alert p {
2027
- margin: 0;
2028
  }
2029
 
2030
  #seopress-notifications-center .notice-left {
2031
- flex: 1;
2032
  }
2033
 
2034
  #seopress-notifications-center .notice-left > p:first-child {
2035
- color:#1a1f36;
2036
- font-weight: 500;
2037
  }
2038
 
2039
  #seopress-notifications-center .notice-right {
2040
- padding: 1rem 0 0 0;
2041
- display: flex;
2042
  }
2043
 
2044
  #seopress-notifications-center .seopress-alert.impact::after {
2045
- content:"";
2046
- width: 10px;
2047
- height: 10px;
2048
- border-radius: 50px;
2049
- position: absolute;
2050
- right: 1rem;
2051
- top: 1rem;
2052
  }
2053
 
2054
  #seopress-notifications-center .seopress-alert.impact.low::after {
2055
- background: #FFDE24;
2056
  }
2057
 
2058
  #seopress-notifications-center .seopress-alert.impact.medium::after {
2059
- background: #e39f48;
2060
  }
2061
 
2062
  #seopress-notifications-center .seopress-alert.impact.high::after {
2063
- background: #e25950;
2064
  }
2065
 
2066
  #seopress-notifications-center .seopress-alert.impact.info::after {
2067
- background:#0085ba;
2068
  }
2069
 
2070
  #seopress-notifications-center .seopress-alert.dashicons {
2071
- color: #6f8096;
2072
  }
2073
 
2074
  #seopress-notifications-center .dashicons.remove-notice,
2075
  .seopress-get-started .remove-notice {
2076
- position: absolute;
2077
- right: 0rem;
2078
- color: #6b7c93;
2079
- font-size: 20px;
2080
- height: 30px;
2081
- width: 30px;
2082
- vertical-align: middle;
2083
- top: 1.2rem;
2084
- line-height: 30px;
2085
- padding: 5px;
2086
- transition: all .3s linear;
2087
- margin: 0;
2088
- display: block;
2089
  }
2090
 
2091
  .seopress-get-started .remove-notice {
2092
- top: 10px;
2093
- right: 10px;
2094
  }
2095
 
2096
  #seopress-notifications-center .dashicons.remove-notice:hover,
2097
  .seopress-get-started .remove-notice:hover {
2098
- color: #1a1f36;
2099
- cursor: pointer;
2100
- }
2101
-
2102
- #seopress-content .seopress-page-list .seopress-feature .seopress-doc, .seopress-option #seopress-tabs .seopress-doc {
2103
- background: 0 0;
2104
- padding: 0;
2105
- text-decoration: none;
2106
- color: inherit;
2107
- box-shadow: none;
2108
- position: absolute;
2109
- right: 0.5rem;
2110
- top: 1rem;
2111
- }
2112
-
2113
- #seopress-content .seopress-page-list .seopress-feature .seopress-doc:hover,.seopress-option #seopress-tabs .seopress-doc:hover,
2114
- #seopress-content .seopress-page-list .seopress-feature .seopress-doc:active,.seopress-option #seopress-tabs .seopress-doc:active,
2115
- #seopress-content .seopress-page-list .seopress-feature .seopress-doc:focus,.seopress-option #seopress-tabs .seopress-doc:focus {
2116
- color: #747474;
2117
- background: 0 0;
2118
- box-shadow: none;
2119
- border: none;
2120
- }
2121
-
2122
- #seopress-content .seopress-page-list .seopress-feature .seopress-doc:hover .dashicons {
2123
- color:#232323;
 
 
 
 
 
 
 
 
2124
  }
2125
 
2126
  .seopress-option .seopress-table {
2127
- background: #FFF;
2128
- border: 1px solid #ccc;
2129
  }
2130
 
2131
  .seopress-option .seopress-table th {
2132
- padding: 15px 10px;
2133
- vertical-align: middle;
2134
  }
2135
 
2136
  .wp-admin-ui_page_seopress-roles .seopress-option .seopress-table th {
2137
- min-width: 200px;
2138
  }
2139
 
2140
  .seopress-option .seopress-table .seopress-settings-section {
2141
- background: #f1f1f1;
2142
  }
2143
 
2144
  .seopress-option .seopress-table .seopress-table-head .seopress-feature {
2145
- border-bottom: 1px solid #ccc;
2146
- font-weight: 700;
2147
- background: #f1f1f1;
2148
  }
2149
 
2150
- #seopress-content .feature-state,.seopress-option .feature-state {
2151
- font-style: italic;
2152
- font-size: 10px;
2153
- display: inline-block;
2154
- background: rgba(0,140,135,.1);
2155
- padding: 2px 10px;
2156
- border-radius: 25px;
2157
- color: #444;
2158
- font-weight: 400;
2159
- text-transform: none;
2160
- -moz-osx-font-smoothing: initial;
2161
- -webkit-font-smoothing: initial;
 
2162
  }
2163
 
2164
  @media only screen and (max-width: 782px) {
2165
- #seopress-content .feature-state,.seopress-option .feature-state {
2166
- display: none;
2167
- }
 
2168
  }
2169
 
2170
-
2171
  .seopress-option .seopress_wrap_single_cpt .feature-state,
2172
  .seopress-option .seopress_wrap_tax .feature-state {
2173
- padding: 2px 12px;
2174
- margin: 0 0 0.5rem 0.5rem;
2175
  }
2176
 
2177
  .seopress-option #tab_seopress_titles_single h2,
2178
  .seopress-option #tab_seopress_titles_archives h2,
2179
  .seopress-option #tab_seopress_titles_tax h2 {
2180
- margin: 2em 0 1em 0;
2181
- border-top: 1px solid #eee;
2182
- padding: 1em 0 0 0;
2183
  }
2184
 
2185
  .seopress-option #tab_seopress_titles_single h2:first-child,
2186
  .seopress-option #tab_seopress_titles_archives h2:first-child,
2187
  .seopress-option #tab_seopress_titles_tax h2:first-child {
2188
- border-top: none;
2189
- margin: 0 0 1em 0;
2190
  }
2191
 
2192
  #seopress_cpt .tag-title,
@@ -2194,711 +2402,783 @@ body.seopress-styles {
2194
  .seopress-option .tag-title,
2195
  #seopress_pro_cpt .tag-title,
2196
  #seopress_cpt .seopress-tag-dropdown {
2197
- cursor: pointer;
2198
- font-weight: 500;
2199
- border-radius: 4px;
2200
- transition: all .3s linear;
2201
  }
2202
 
2203
- #seopress-content .feature-state-on,#seopress-content .feature-state.feature-state-on,.seopress-option .feature-state-on,.seopress-option .feature-state.feature-state-on {
2204
- display: inline-block;
 
 
 
2205
  }
2206
 
2207
- #seopress-content .feature-state-off,.seopress-option .feature-state-off {
2208
- display: none;
 
2209
  }
2210
 
2211
  .seopress-option .postbox .inside li {
2212
- list-style: square inside;
2213
- padding-left: 5px;
2214
  }
2215
 
2216
  #tab_seopress_page_speed .inside li {
2217
- list-style: none;
2218
- padding-left: 0;
2219
- word-break: break-word;
2220
  }
2221
 
2222
  .seopress-option .log {
2223
- margin: 0;
2224
- text-transform: uppercase;
2225
- display: inline-block;
2226
- vertical-align: middle;
2227
- padding: 5px;
2228
- color: rgba(19,191,17,1);
2229
- font-style: italic;
2230
  }
2231
 
2232
- .seopress-option input[type=text].seopress-admin-menu-input {
2233
- min-width: inherit;
2234
- width: 100%;
2235
  }
2236
 
2237
  .seopress_page_seopress-import-export .postbox {
2238
- width: calc(100% - 20px);
2239
- }
2240
-
2241
- #seopress_cpt .wrap-tags,.seopress-option .wrap-tags,#seopress_pro_cpt .wrap-tags {
2242
- position: relative;
2243
- display: inline-block;
2244
- width: 100%;
2245
- margin-bottom: 10px;
2246
- }
2247
-
2248
- #seopress_cpt .sp-wrap-tag-variables-list, #seopress_pro_cpt .sp-wrap-tag-variables-list {
2249
- position: relative;
2250
- float: left;
2251
- display: none;
2252
- }
2253
-
2254
- #seopress_cpt .sp-tag-variables-list, #seopress_pro_cpt .sp-tag-variables-list {
2255
- background: #fff;
2256
- position: absolute;
2257
- left: -42px;
2258
- width: 300px;
2259
- border-radius: 4px;
2260
- z-index: 100;
2261
- top: 20px;
2262
- color: #6b7c93;
2263
- box-shadow: 0 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);
2264
- height: 300px;
2265
- z-index: 100;
2266
- overflow: auto;
 
 
 
 
 
 
2267
  }
2268
 
2269
  #seopress_cpt #seopress_titles_title_meta {
2270
- margin-bottom: 0.2rem;
2271
  }
2272
 
2273
- #seopress_cpt .sp-wrap-tag-variables-list.open, #seopress_pro_cpt .sp-wrap-tag-variables-list.open {
2274
- display: block;
 
2275
  }
2276
 
2277
  #seopress_cpt .seopress-tag-single-all.tag-title .dashicons,
2278
  #seopress_cpt .seopress-tag-single-all.seopress-tag-dropdown .dashicons,
2279
  #seopress_pro_cpt .seopress-tag-single-all.tag-title .dashicons {
2280
- margin: 0;
2281
- transition: all 150ms linear;
2282
  }
2283
 
2284
- #seopress_cpt .seopress-tag-single-all.open .dashicons, #seopress_pro_cpt .seopress-tag-single-all.open .dashicons {
2285
- transform: rotateX(180deg);
 
2286
  }
2287
 
2288
- #seopress_cpt .sp-tag-variables-list li, #seopress_pro_cpt .sp-tag-variables-list li {
2289
- padding: 8px 12px;
2290
- cursor: pointer;
2291
- margin: 0;
2292
- border-bottom: 1px solid #f0f0f0;
 
2293
  }
2294
 
2295
- #seopress_cpt .sp-tag-variables-list li span, #seopress_pro_cpt .sp-tag-variables-list li span {
2296
- display: block;
2297
- font-weight: bold;
2298
- font-size: 12px;
2299
- margin-bottom: 2px;
 
2300
  }
2301
 
2302
- #seopress_cpt .sp-tag-variables-list li:hover, #seopress_pro_cpt .sp-tag-variables-list li:hover {
2303
- background: #0385ba;
2304
- color: #fff;
 
2305
  }
2306
 
2307
- #seopress_cpt .sp-tag-variables-list li::after, #seopress_pro_cpt .sp-tag-variables-list li::after {
2308
- content: attr(data-value);
2309
- display: inline-block;
2310
- background: #e9ecef;
2311
- padding: 1px 5px;
2312
- color: #333;
2313
- font-family: Menlo, Monaco, Andale Mono, Courier New, monospace;
2314
- border-radius: 3px;
2315
- font-size: 11px;
 
2316
  }
2317
 
2318
  #seopress_cpt .tag-title .dashicons,
2319
- .seopress-option .tag-title .dashicons,
2320
  #seopress_pro_cpt .tag-title .dashicons,
2321
  #seopress_cpt .seopress-tag-dropdown .dashicons {
2322
- padding: 0;
2323
- height: 16px;
2324
- width: 16px;
2325
- font-size: 16px;
2326
- margin-right: 5px;
2327
- vertical-align: middle;
2328
  }
2329
 
2330
  .seopress-overlay-tag-dropdown {
2331
- position: absolute;
2332
- display: none;
2333
 
2334
- top: 0;
2335
- left: 0;
2336
- width: 100%;
2337
- height: 100%;
2338
- z-index: 50;
2339
  }
2340
 
2341
- .seopress-overlay-tag-dropdown.active{
2342
- display: block;
2343
  }
2344
 
2345
  #seopress_cpt .tag-title,
2346
  .seopress-option .tag-title,
2347
  #seopress_pro_cpt .tag-title,
2348
  #seopress_cpt .seopress-tag-dropdown {
2349
- padding: 4px 8px;
2350
- position: relative;
2351
- top: 5px;
2352
- left: 0;
2353
- font-size: 11px;
2354
- float: left;
2355
- margin-right: 5px;
2356
- user-select: none;
2357
- margin-bottom: 5px;
2358
- background: #fff;
2359
- color: #6b7c93;
2360
- 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);
2361
- }
2362
-
2363
- #seopress_pro_cpt .tag-title:active,#seopress_pro_cpt .tag-title:focus,#seopress_pro_cpt .tag-title:hover,
2364
- #seopress_cpt .tag-title:active,#seopress_cpt .tag-title:focus,#seopress_cpt .tag-title:hover,
2365
- .seopress-tag-dropdown:active, .seopress-tag-dropdown:focus, .seopress-tag-dropdown:hover,
2366
- #seopress_cpt .seopress-tag-dropdown .tag-title:active,#seopress_cpt-option .seopress-tag-dropdown .tag-title:focus,#seopress_cpt-option .seopress-tag-dropdown .tag-title:hover {
2367
- background: #232323;
2368
- color: #fff;
2369
- user-select: none;
 
 
 
 
 
 
 
 
 
 
2370
  }
2371
 
2372
-
2373
-
2374
  .seopress-button {
2375
- text-transform: uppercase;
2376
- background: #fff;
2377
- border-color: #c8d7e1;
2378
- border-style: solid;
2379
- border-width: 1px 1px 2px;
2380
- color: #2e4453;
2381
- display: inline-block;
2382
- margin: 0;
2383
- outline: 0;
2384
- overflow: hidden;
2385
- text-overflow: ellipsis;
2386
- text-decoration: none;
2387
- vertical-align: top;
2388
- box-sizing: border-box;
2389
- font-size: 14px;
2390
- line-height: 20px;
2391
- padding: 6px 8px 6px;
2392
- -webkit-appearance: none;
2393
- -moz-appearance: none;
2394
- appearance: none;
2395
  }
2396
 
2397
  .seopress-button:hover {
2398
- border-color: #a8bece;
2399
- color: #00a0d2;
2400
  }
2401
 
2402
  .seopress-button .dashicons {
2403
- vertical-align: middle;
2404
  }
2405
 
2406
  #seopress-content #tab_seopress_seo_tools.seopress-useful-tools .widget {
2407
- border-right: 1px solid #e6ebf1;
2408
- margin: 0;
2409
- padding: 0 20px;
2410
- width: calc(50% - 2px);
2411
- box-sizing: border-box;
2412
- display: inline-block;
2413
- vertical-align: top;
2414
- }
2415
-
2416
- #seopress-content #tab_seopress_seo_tools.seopress-useful-tools .widget:first-child {
2417
- width: 100%;
2418
- display: block;
2419
- clear: both;
2420
- border-right: none;
2421
- border-bottom: 1px solid #e6ebf1;
2422
- padding-bottom: 20px;
2423
- margin-bottom: 20px;
 
 
2424
  }
2425
 
2426
- #seopress-content #tab_seopress_seo_tools.seopress-useful-tools .widget:last-child {
2427
- border-right: none;
 
 
2428
  }
2429
 
2430
  #seopress-content .seopress-useful-tools .widget-reverse ul {
2431
- background: #fff;
2432
  }
2433
 
2434
  #seopress-content .seopress-useful-tools .widget-reverse li {
2435
- padding: 10px;
2436
- margin: 0;
2437
- border-bottom: 1px solid #e6ebf1;
2438
  }
2439
 
2440
  #seopress-content .seopress-useful-tools .widget-reverse li:hover {
2441
- background: #F5F7FA;
2442
  }
2443
 
2444
  #seopress-content .seopress-useful-tools .widget-title {
2445
- text-transform: uppercase;
2446
- margin: 0 0 10px;
2447
- font-size: 13px;
2448
- padding: 10px 0;
2449
- color: #24b47e;
2450
  }
2451
 
2452
- #seopress-content .seopress-reverse label,#seopress-content .seopress-useful-tools .widget-whois ul li span {
2453
- font-weight: 700;
 
2454
  }
2455
 
2456
  #seopress-content #seopress-reverse-url {
2457
- width: 100%;
2458
- margin: 10px 0;
2459
  }
2460
 
2461
  #seopress-content .widget-reverse p {
2462
- margin: 0;
2463
  }
2464
 
2465
  .post-type-seopress_backlinks .wp-list-table .column-seopress_backlinks_url {
2466
- width: 35%;
2467
  }
2468
 
2469
- .post-type-seopress_backlinks .wp-list-table .column-seopress_backlinks_anchor_text {
2470
- width: 20%;
 
 
2471
  }
2472
 
2473
  .seopress-styles #screen-meta {
2474
- margin: 0;
2475
- position: relative;
2476
- background-color: #fff;
2477
- border-bottom: 0 solid #f2f2f2;
2478
- border-top: none;
2479
- -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);
2480
- 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);
2481
- top: 0;
2482
- }
2483
-
2484
- .seopress-styles #contextual-help-link-wrap,.seopress-styles #screen-options-link-wrap {
2485
- float: right;
2486
- height: 28px;
2487
- margin: 0 0 0 6px;
2488
- border: 1px solid #f2f2f2;
2489
- border-top: none;
2490
- background: #fff;
2491
- -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);
2492
- 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);
 
 
 
 
 
2493
  }
2494
 
2495
  .seopress-styles #screen-meta-links .show-settings {
2496
- box-shadow: none;
2497
  }
2498
 
2499
  .seopress-styles #screen-meta-links .screen-meta-toggle {
2500
- position: relative;
2501
- top: 0;
2502
- z-index: 2000;
2503
  }
2504
 
2505
  .seopress-styles #contextual-help-back {
2506
- background: #f8fafd;
2507
  }
2508
 
2509
  .seopress-styles .contextual-help-tabs .active {
2510
- border-left: 2px solid #3297d3;
2511
- background: #f8fafd;
2512
  }
2513
 
2514
- #seopress-content input.toggle, .seopress-option input.toggle, #seopress_cpt input.toggle {
2515
- max-height: 0;
2516
- max-width: 0;
2517
- opacity: 0;
2518
- position: relative;
 
 
2519
  }
2520
 
2521
  .seopress-feature input.toggle {
2522
- display: block;
2523
  }
2524
 
2525
  .wrap-toggle-preview {
2526
- position: relative;
2527
  }
2528
 
2529
  .wrap-toggle-preview p {
2530
- font-weight: bold;
2531
- margin: 0 0 1rem 0;
2532
  }
2533
 
2534
  .seopress_wrap_single_cpt input.toggle,
2535
  .seopress_wrap_tax input.toggle,
2536
  #seopress_cpt input.toggle {
2537
- margin: 0;
2538
- border: none;
2539
- min-width: 0;
2540
  }
2541
  #seopress_cpt span.label,
2542
  #seopress_content_analysis span.label {
2543
- outline: none;
2544
- color: #fff;
2545
- box-shadow: none;
2546
- background: #555d66;
2547
- padding: 2px 4px;
2548
- border-radius: 4px;
2549
- font-weight: bold;
2550
  }
2551
 
2552
  #seopress_add_to_insights {
2553
- margin-left: 1rem;
2554
  }
2555
 
2556
  #seopress_add_to_insights_status {
2557
- display: inline-block;
2558
- font-weight: bold;
2559
- margin: 0 0 0 1rem;
2560
- vertical-align: middle;
2561
- padding: 0.3rem;
2562
- font-style: italic;
2563
- }
2564
-
2565
- #seopress-content input.toggle+label,.seopress-option input.toggle+label, #seopress_cpt #tabs-1 input.toggle+label {
2566
- display: inline-block;
2567
- position: relative;
2568
- box-shadow: inset 0 0 0 1px #d5d5d5;
2569
- text-indent: -5000px;
2570
- height: 20px;
2571
- width: 40px;
2572
- border-radius: 15px;
2573
  }
2574
 
2575
- #seopress_cpt #tabs-1 input.toggle+label {
2576
- margin: 0;
 
 
 
 
 
 
 
 
2577
  }
2578
 
2579
- .wrap-toggle-checkboxes input.toggle+label {
2580
- float: left;
2581
- margin-right: 10px;
2582
  }
2583
 
2584
- #seopress-content input.toggle+label:before,.seopress-option input.toggle+label:before, #seopress_cpt input.toggle+label:before {
2585
- content: "";
2586
- position: absolute;
2587
- display: block;
2588
- height: 20px;
2589
- width: 30px;
2590
- top: 0;
2591
- left: 0;
2592
- border-radius: 15px;
2593
- background: rgba(19,191,17,0);
2594
- -moz-transition: .25s ease-in-out;
2595
- -webkit-transition: .25s ease-in-out;
2596
- transition: .25s ease-in-out;
2597
  }
2598
 
2599
- #seopress-content input.toggle+label:after,.seopress-option input.toggle+label:after, #seopress_cpt input.toggle+label:after {
2600
- content: "";
2601
- position: absolute;
2602
- display: block;
2603
- height: 20px;
2604
- width: 20px;
2605
- top: 0;
2606
- left: 0;
2607
- border-radius: 15px;
2608
- background: #fff;
2609
- box-shadow: inset 0 0 0 1px rgba(0,0,0,.2),0 2px 4px rgba(0,0,0,.2);
2610
- -moz-transition: .25s ease-in-out;
2611
- -webkit-transition: .25s ease-in-out;
2612
- transition: .25s ease-in-out;
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
2613
  }
2614
 
2615
- .seopress_wrap_single_cpt input.toggle+label,
2616
- .seopress_wrap_single_cpt input.toggle+label:before,
2617
- .seopress_wrap_tax input.toggle+label,
2618
- .seopress_wrap_tax input.toggle+label:before,
2619
- #seopress_cpt input.toggle+label,
2620
- #seopress_cpt input.toggle+label:before {
2621
- width: 40px;
2622
- height: 20px;
2623
  }
2624
 
2625
- .seopress_wrap_single_cpt input.toggle+label:after,
2626
- .seopress_wrap_tax input.toggle+label:after,
2627
- #seopress_cpt input.toggle+label:after {
2628
- width: 20px;
2629
- height: 20px;
2630
  }
2631
 
2632
- #seopress-content input.toggle[data-toggle="1"]+label:before, .seopress-option input.toggle[data-toggle="1"]+label:before, #seopress_cpt input.toggle[data-toggle="1"]+label:before {
2633
- width: 40px;
2634
- background: rgb(49, 151, 211);
 
 
2635
  }
2636
 
2637
- .seopress_wrap_single_cpt input.toggle[data-toggle="1"]+label:before, #seopress_cpt input.toggle[data-toggle="1"]+label:before,
2638
- .seopress_wrap_tax input.toggle[data-toggle="1"]+label:before, #seopress_cpt input.toggle[data-toggle="1"]+label:before {
2639
- width: 40px;
2640
- background: rgb(49, 151, 211);
 
 
2641
  }
2642
 
2643
- #seopress-content input.toggle[data-toggle="1"]+label:after, .seopress-option input.toggle[data-toggle="1"]+label:after, #seopress_cpt input.toggle[data-toggle="1"]+label:after {
2644
- left: 20px;
2645
- box-shadow: inset 0 0 0 1px rgb(49, 151, 211), 0 2px 4px rgba(0,0,0,.2);
 
 
2646
  }
2647
 
2648
- .seopress_wrap_single_cpt input.toggle[data-toggle="1"]+label:after,
2649
- .seopress_wrap_tax input.toggle[data-toggle="1"]+label:after,
2650
- #seopress_cpt input.toggle[data-toggle="1"]+label:after {
2651
- box-shadow: inset 0 0 0 1px rgb(49, 151, 211), 0 2px 4px rgba(0,0,0,.2);
2652
  }
2653
 
2654
  #seopress-content .seopress-page-list {
2655
- position: relative;
2656
- display: grid;
2657
- max-width: 64rem;
2658
- grid-gap: 20px 20px;
2659
- grid-template-columns: repeat(3,1fr);
2660
  }
2661
 
2662
  @media only screen and (max-width: 782px) {
2663
- #seopress-content .seopress-page-list {
2664
- grid-template-columns: repeat(1,1fr);
2665
- }
2666
  }
2667
 
2668
  #seopress-notice-save {
2669
- position: fixed;
2670
- color: #fff;
2671
- padding: 15px 40px;
2672
- font-size: 0.9rem;
2673
- text-transform: uppercase;
2674
- text-align: center;
2675
- border-radius: 0;
2676
- background: rgba(74,184,102,.9);
2677
- bottom: 0;
2678
- right: 0;
2679
- z-index: 500;
2680
- width: 100%;
2681
- font-weight: bold;
2682
  }
2683
 
2684
  #seopress-notice-save .dashicons {
2685
- color:#fff;
2686
  }
2687
 
2688
  .seopress-styles .wrap {
2689
- margin: 20px 0 0 0;
2690
- display: flex;
2691
- position: relative;
2692
  }
2693
 
2694
  .toplevel_page_seopress-option.seopress-styles .wrap,
2695
  .seopress-insights.seopress-styles .wrap {
2696
- display: inherit;
2697
- position: inherit;
2698
- margin: inherit;
2699
  }
2700
 
2701
  @media only screen and (max-width: 782px) {
2702
- .seopress-styles .wrap {
2703
- display: inherit;
2704
- position: inherit;
2705
- margin: inherit;
2706
- }
2707
  }
2708
 
2709
  .seopress_page_seopress-pro-page #wpcontent {
2710
- background: #F4F7FA;
2711
  }
2712
 
2713
  .seopress-option .wrap div.nav-tab-wrapper {
2714
- margin: 0 0 0 -26px;
2715
- padding: 0 0 0 10px;
2716
- line-height: inherit;
2717
- width: 230px;
2718
- z-index: 95;
2719
- font-weight: 400;
2720
- display: block;
2721
- border-bottom: none;
2722
  }
2723
 
2724
  @media only screen and (max-width: 782px) {
2725
- .seopress-option .wrap div.nav-tab-wrapper {
2726
- width: 100%;
2727
- margin: 0;
2728
- padding: 0;
2729
- }
2730
  }
2731
 
2732
  #seopress-admin-tabs.wrap div.nav-tab-wrapper {
2733
- margin: 20px auto 0;
2734
- max-width: 64rem;
2735
- width: 100%;
2736
- border-bottom: 1px solid #e6ebf1;
2737
- padding: 0;
2738
- line-height: inherit;
2739
- position: -webkit-sticky; /* Required for Safari */
2740
- position: sticky;
2741
- background: #f5f7fa;
2742
- z-index: 100;
2743
- top: 31px;
2744
- border-radius: 4px 4px 0 0;
2745
- font-weight: 400;
2746
- overflow: hidden;
2747
- display: flex;
2748
- align-items: center;
2749
- justify-content: space-between;
2750
- box-sizing: border-box;
2751
  }
2752
 
2753
  @media only screen and (max-width: 600px) {
2754
- #seopress-admin-tabs.wrap div.nav-tab-wrapper {
2755
- top: 0;
2756
- display: block;
2757
- }
2758
  }
2759
 
2760
  @media only screen and (max-width: 1024px) {
2761
- #seopress-admin-tabs.wrap div.nav-tab-wrapper {
2762
- display: block;
2763
- }
2764
  }
2765
 
2766
  #seopress-admin-tabs #tab_seopress_notifications.seopress-tab {
2767
- background: 0 0;
2768
- padding: 0;
2769
- border-radius: 0;
2770
  }
2771
 
2772
  .seopress-option .nav-tab {
2773
- border: 0 solid #ccc;
2774
- background: 0 0;
2775
- opacity: .5;
2776
- padding: 6px 30px 6px 10px;
2777
- transition: opacity .3s linear;
2778
- color: #191e23;
2779
- margin: 0;
2780
- float: none;
2781
- display: inline-block;
2782
- width: 100%;
2783
- text-align: left;
2784
- font-weight: normal;
2785
- box-sizing: border-box;
2786
- white-space: normal;
2787
  }
2788
 
2789
  #seopress-admin-tabs .nav-tab {
2790
- border: 0 solid #ccc;
2791
- background: 0 0;
2792
- opacity: .5;
2793
- padding: 14px 20px;
2794
- transition: opacity .3s linear;
2795
- color: #191e23;
2796
- margin: 0;
2797
- box-shadow: inset -1px 0 #e3e8ee;
2798
- float: none;
2799
- display: inline-block;
2800
- text-align: center;
2801
- font-weight: normal;
2802
  }
2803
 
2804
  #seopress-admin-tabs .nav-tab {
2805
- width: 100%;
2806
- }
2807
-
2808
- #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 {
2809
- background-color: #fff;
2810
- }
2811
-
2812
- #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 {
2813
- opacity: 1;
2814
- outline: 0;
2815
- font-weight: 600;
2816
- position: relative;
2817
- color: #191e23;
2818
- border-left: 3px solid #0085ba;
2819
- background: rgba(0, 133, 186, 0.1);
2820
- }
2821
- #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 {
2822
- border-bottom: 3px solid rgb(49, 151, 211);
2823
- border-left: none;
2824
- background: #fff;
2825
- }
2826
-
2827
- #seopress-admin-tabs .nav-tab:hover,.seopress-option .nav-tab:hover {
2828
- opacity: 1;
2829
- }
2830
-
2831
- #seopress-admin-tabs .nav-tab:focus,.seopress-option .nav-tab:focus {
2832
- outline: 0;
2833
- box-shadow: none;
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
2834
  }
2835
 
2836
  .seopress-option .section-tool {
2837
- border: none;
2838
- box-shadow: none;
2839
- background: none;
2840
- position: relative;
2841
  }
2842
 
2843
  .seopress-option .section-tool::after {
2844
- content:'';
2845
- background: #dedede;
2846
- height: 1px;
2847
- width: 100%;
2848
- display: block;
2849
  }
2850
 
2851
  .seopress-option .sp-section-header {
2852
- border-bottom: 1px solid #eeeeee;
2853
- margin: 0 0 1rem 0;
2854
- width: 100%;
2855
- display: flex;
2856
- position: relative;
2857
- align-items: center;
2858
- padding-bottom: 0.5rem;
2859
  }
2860
 
2861
  .seopress-option .sp-section-header::after {
2862
- position: absolute;
2863
- content:'';
2864
- background: #0085ba;
2865
- height: 2px;
2866
- width: 40px;
2867
- bottom: 0px;
2868
- left: 0;
2869
  }
2870
 
2871
  .seopress-option .sp-section-header h2 {
2872
- font-size: 1.5em;
2873
  }
2874
 
2875
  .seopress-option .sp-section-header > .dashicons {
2876
- color: #0085ba;
2877
- padding: 10px;
2878
- border-radius: 6px;
2879
- margin-right: 10px;
2880
- background: #c4f0ff;
2881
  }
2882
 
2883
  .seopress-option .sp-section-header .wrap-toggle-checkboxes {
2884
- display: flex;
2885
  }
2886
 
2887
  .seopress-styles .wrap .notice {
2888
- margin: 5px 0 15px 15px;
2889
  }
2890
  #seopress-tabs.wrap .notice {
2891
- margin: 1rem 0;
2892
  }
2893
  .seopress-BlankState a.button-primary,
2894
  .seopress-BlankState button.button-primary,
2895
  .seopress-message a.button-primary,
2896
- .seopress-message button.button-primary{
2897
- background: #6259e6;
2898
- border-color: #6259e6;
2899
- box-shadow: rgba(0, 0, 0, 0) 0px 0px 0px 0px, rgba(0, 0, 0, 0) 0px 0px 0px 0px, rgba(0, 0, 0, 0.12) 0px 1px 1px 0px, rgba(60, 66, 87, 0.16) 0px 0px 0px 1px, rgba(0, 0, 0, 0) 0px 0px 0px 0px, rgba(0, 0, 0, 0) 0px 0px 0px 0px, rgba(60, 66, 87, 0.12) 0px 2px 5px 0px;
2900
- color: #fff;
2901
- display: inline-block;
 
 
 
2902
  }
2903
  .seopress-BlankState a.button-primary:active,
2904
  .seopress-BlankState a.button-primary:focus,
@@ -2911,148 +3191,150 @@ body.seopress-styles {
2911
  .seopress-message a.button-primary:hover,
2912
  .seopress-message button.button-primary:active,
2913
  .seopress-message button.button-primary:focus,
2914
- .seopress-message button.button-primary:hover{
2915
- background:#6259e6;
2916
- border-color:#6259e6;
2917
- box-shadow:inset 0 1px 0 rgba(255,255,255,.25),0 1px 0 #6259e6
2918
  }
2919
  .post-type-seopress_404 .seopress-BlankState-message::before,
2920
- .post-type-seopress_schemas .seopress-BlankState-message::before{
2921
- font-family: 'Dashicons';
2922
- speak:none;
2923
- font-weight:400;
2924
- font-variant:normal;
2925
- text-transform:none;
2926
- line-height:1;
2927
- margin:0;
2928
- text-indent:0;
2929
- position:absolute;
2930
- top:0;
2931
- left:0;
2932
- width:100%;
2933
- height:100%;
2934
- text-align:center;
2935
- content:"\f103"
2936
- }
2937
- .post-type-seopress_schemas .seopress-BlankState-message::before{
2938
- content:"\f495";
2939
- }
2940
- .seopress-BlankState{
2941
- text-align:center;padding:5em 0 0
2942
- }
2943
- .seopress-BlankState .seopress-BlankState-message{
2944
- color:#aaa;
2945
- margin:0 auto 1.5em;
2946
- line-height:1.5em;
2947
- font-size:1.2em;
2948
- max-width:500px
2949
- }
2950
- .seopress-BlankState .seopress-BlankState-message::before{
2951
- color:#ddd;
2952
- text-shadow:0 -1px 1px rgba(0,0,0,.2),0 1px 0 rgba(255,255,255,.8);
2953
- font-size:8em;
2954
- display:block;
2955
- position:relative!important;
2956
- top:auto;
2957
- left:auto;
2958
- line-height:1em;
2959
- margin:0 0 .1875em
2960
- }
2961
- .seopress-BlankState .seopress-BlankState-cta{
2962
- font-size:1.2em;
2963
- padding:.75em 1.5em;
2964
- margin:0 .25em;
2965
- height:auto;
2966
- display:inline-block!important
2967
- }
2968
- .seopress-BlankState{
2969
- max-width:764px;
2970
- text-align:center;
2971
- margin:auto
2972
- }
2973
- .seopress-BlankState .seopress-BlankState-message{
2974
- color:#444;
2975
- font-size:1.5em;
2976
- margin:0 auto 1em
2977
- }
2978
- .seopress-BlankState .seopress-BlankState-message::before{
2979
- font-size:120px
2980
- }
2981
- .seopress-BlankState .seopress-BlankState-buttons{
2982
- margin-bottom:4em
 
2983
  }
2984
  #seopress_content_analysis .up,
2985
  #seopress_content_analysis .up .dashicons {
2986
- color: #4ab866;
2987
  }
2988
 
2989
  #seopress_content_analysis .down,
2990
  #seopress_content_analysis .down .dashicons {
2991
- color: #d94f4f;
2992
  }
2993
 
2994
  #seopress_content_analysis .up .dashicons {
2995
- transform: rotateZ(45deg);
2996
  }
2997
 
2998
  #seopress_content_analysis .stable .dashicons {
2999
- transform: rotateZ(90deg);
3000
  }
3001
 
3002
  #seopress_content_analysis .down .dashicons {
3003
- transform: rotateZ(135deg);
3004
  }
3005
  #seopress_content_analysis .wrap-insights-post {
3006
- clear: both;
3007
- border-top: 1px solid #e2e4e7;
3008
- display: flex;
3009
- align-items: center;
3010
  }
3011
  #seopress_content_analysis .wrap-insights-post .widget-insights-title {
3012
- margin: 0 1rem;
3013
  }
3014
  #seopress_content_analysis .wrap-insights-post span {
3015
- font-weight: 700;
3016
- margin: 0 0.2rem 0 0;
3017
  }
3018
  #seopress_content_analysis .wrap-insights-post .sp-tooltip * {
3019
- font-weight: normal;
3020
  }
3021
  #seopress_content_analysis .wrap-insights-post .sp-tooltip-headings {
3022
- font-weight: bold;
3023
- }
3024
- .components-snackbar-list {
3025
- position: fixed;
3026
- right: 0;
3027
- bottom: 40px;
3028
- padding-left: 16px;
3029
- padding-right: 16px;
3030
- animation-name: sp-fade-in-out;
3031
- animation-duration: 5s;
3032
- animation-iteration-count: 1;
3033
- animation-fill-mode: forwards;
3034
- visibility: hidden;
3035
- z-index: 1;
3036
- }
3037
- .components-snackbar__content {
3038
- display: flex;
3039
- align-items: center;
3040
- justify-content: space-between;
3041
- line-height: 1.4;
3042
- }
3043
- .components-snackbar {
3044
- font-family: -apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen-Sans,Ubuntu,Cantarell,Helvetica Neue,sans-serif;
3045
- font-size: 13px;
3046
- background-color: #32373c;
3047
- border-radius: 4px;
3048
- box-shadow: 0 2px 4px rgba(0,0,0,.3);
3049
- color: #fff;
3050
- padding: 16px 24px;
3051
- width: 100%;
3052
- max-width: 600px;
3053
- box-sizing: border-box;
3054
- cursor: pointer;
3055
- }
3056
- .components-snackbar .dashicons {
3057
- color:#fff;
3058
- }
 
1
  @keyframes sp-fade-in-out {
2
+ 0% {
3
+ opacity: 0;
4
+ bottom: 0;
5
+ visibility: hidden;
6
+ }
7
+ 25% {
8
+ opacity: 1;
9
+ bottom: 40px;
10
+ visibility: visible;
11
+ }
12
+ 75% {
13
+ opacity: 1;
14
+ visibility: visible;
15
+ }
16
+ 100% {
17
+ opacity: 0;
18
+ visibility: hidden;
19
+ }
20
+ }
21
+ #adminmenu div.wp-menu-image.dashicons-admin-seopress::before,
22
+ #seopress-header #seopress-admin h1::before {
23
+ content: "\e800";
24
+ font-family: seopress !important;
25
+ font-weight: bold;
26
+ font-size: 12px;
27
+ line-height: 20px;
28
  }
29
 
30
+ #seopress-header #seopress-admin h1::before,
31
+ .seopress-page-list .seopress-feature h3,
32
+ .seopress-styles .seopress-option h1 {
33
+ -moz-osx-font-smoothing: grayscale;
34
+ -webkit-font-smoothing: antialiased;
35
  }
36
 
37
  @font-face {
38
+ font-family: seopress;
39
+ src: url(../fonts/seopress.eot?81521271);
40
+ src: url(../fonts/seopress.eot?81521271#iefix) format("embedded-opentype"),
41
+ url(../fonts/seopress.woff?81521271) format("woff2"),
42
+ url(../fonts/seopress.woff?81521271) format("woff"),
43
+ url(../fonts/seopress.ttf?81521271) format("truetype"),
44
+ url(../fonts/seopress.svg?81521271#seopress) format("svg");
45
+ font-weight: 400;
46
+ font-style: normal;
47
  }
48
 
49
+ [class*=" icon-seopress"],
50
+ [class^="icon-seopress-"] {
51
+ font-family: seopress !important;
52
+ font-size: 14px !important;
53
+ line-height: 24px !important;
54
  }
55
 
56
  #tab_seopress_titles_single .form-table th:empty,
57
  #tab_seopress_titles_archives .form-table th:empty,
58
  #tab_seopress_titles_tax .form-table th:empty {
59
+ display: none;
60
  }
61
 
62
  .icon-seopress-seopress:before {
63
+ content: "\e800";
64
  }
65
+ #wpadminbar
66
+ #wp-toolbar
67
+ #wp-admin-bar-seopress_custom_top_level
68
+ .wrap-seopress-noindex {
69
  background: red;
70
  color: #fff;
71
  padding: 0 8px;
73
  margin-left: 6px;
74
  }
75
  #wpadminbar #wp-toolbar #wp-admin-bar-seopress_custom_top_level > a {
76
+ display: inline-block;
77
+ }
78
+ #wpadminbar
79
+ #wp-toolbar
80
+ #wp-admin-bar-seopress_custom_top_level
81
+ .wrap-seopress-noindex
82
+ .ab-icon::before {
83
+ color: #eee;
84
+ vertical-align: middle;
85
  }
86
 
87
  #wpadminbar #wp-toolbar #wp-admin-bar-seopress_custom_sub_menu_meta_robots {
90
  }
91
 
92
  #wpadminbar #wp-toolbar #wp-admin-bar-seopress_custom_sub_menu_meta_robots a {
93
+ height: inherit;
94
+ padding-bottom: 5px;
95
  }
96
 
97
+ #wpadminbar
98
+ #wp-toolbar
99
+ #wp-admin-bar-seopress_custom_sub_menu_meta_robots
100
+ .wrap-seopress-cpt-seo {
101
+ font-weight: bold;
102
+ border-bottom: 1px solid currentColor;
103
+ width: 100%;
104
+ display: block;
105
+ margin-bottom: 5px;
106
  }
107
 
108
+ #wpadminbar
109
+ #wp-toolbar
110
+ #wp-admin-bar-seopress_custom_sub_menu_meta_robots
111
+ .wrap-seopress-cpt-noindex,
112
+ #wpadminbar
113
+ #wp-toolbar
114
+ #wp-admin-bar-seopress_custom_sub_menu_meta_robots
115
+ .wrap-seopress-cpt-nofollow {
116
+ display: block;
117
  }
118
 
119
+ #wpadminbar
120
+ #wp-toolbar
121
+ #wp-admin-bar-seopress_custom_sub_menu_meta_robots
122
+ .wrap-seopress-cpt-noindex
123
+ .ab-icon,
124
+ #wpadminbar
125
+ #wp-toolbar
126
+ #wp-admin-bar-seopress_custom_sub_menu_meta_robots
127
+ .wrap-seopress-cpt-nofollow
128
+ .ab-icon {
129
+ float: none;
130
+ vertical-align: middle;
131
+ }
132
+
133
+ #wpadminbar
134
+ #wp-toolbar
135
+ #wp-admin-bar-seopress_custom_sub_menu_meta_robots
136
+ .wrap-seopress-cpt-noindex
137
+ .on::before,
138
+ #wpadminbar
139
+ #wp-toolbar
140
+ #wp-admin-bar-seopress_custom_sub_menu_meta_robots
141
+ .wrap-seopress-cpt-nofollow
142
+ .on::before {
143
+ color: red;
144
+ }
145
+ #wpadminbar
146
+ #wp-toolbar
147
+ #wp-admin-bar-seopress_custom_sub_menu_meta_robots
148
+ .wrap-seopress-cpt-noindex
149
+ .off::before,
150
+ #wpadminbar
151
+ #wp-toolbar
152
+ #wp-admin-bar-seopress_custom_sub_menu_meta_robots
153
+ .wrap-seopress-cpt-nofollow
154
+ .off::before {
155
+ color: #46b450;
156
  }
157
 
158
  .sp-tooltip {
159
+ position: relative;
160
+ margin-left: 5px;
161
+ display: inline-block;
162
+ cursor: help;
163
+ vertical-align: bottom;
164
+ text-align: left;
165
+ background: none;
166
+ border: none;
167
+ padding: 0;
168
  }
169
 
170
  .sp-tooltip .dashicons {
171
+ color: #666;
172
  }
173
 
174
  .sp-tooltip .sp-tooltiptext {
175
+ visibility: hidden;
176
+ position: absolute;
177
+ z-index: 999999999;
178
+ width: 300px;
179
+ right: -303px;
180
+ padding: 20px;
181
+ top: 25px;
182
+ font-weight: 400;
183
+ box-shadow: 0 3px 30px rgba(25, 30, 35, 0.1);
184
+ border: 1px solid #e2e4e7;
185
+ background: #fff;
186
+ word-break: break-word;
187
+ text-transform: none;
188
  }
189
 
190
  .sp-tooltip .sp-tooltiptext::before {
191
+ border: 8px solid #e2e4e7;
192
+ top: -8px;
193
  }
194
 
195
  .sp-tooltip .sp-tooltiptext::after {
196
+ border: 8px solid #fff;
197
+ top: -6px;
198
  }
199
 
200
+ .sp-tooltip .sp-tooltiptext::before,
201
+ .sp-tooltip .sp-tooltiptext::after {
202
+ border-bottom-style: solid;
203
+ border-left-color: transparent;
204
+ border-right-color: transparent;
205
+ border-top: none;
206
+ margin-left: -10px;
207
+ content: "";
208
+ position: absolute;
209
+ height: 0;
210
+ width: 0;
211
+ line-height: 0;
212
+ left: 30px;
213
  }
214
 
215
  .sp-tooltip:hover .sp-tooltiptext,
216
  .sp-tooltip:focus .sp-tooltiptext,
217
  .sp-tooltip:active .sp-tooltiptext {
218
+ visibility: visible;
219
  }
220
 
221
  .sp-tooltip .sp-tooltip-headings {
222
+ font-size: 18px;
223
+ font-weight: 600;
224
+ margin-bottom: 20px;
225
+ display: block;
226
  }
227
 
228
  .sp-tooltip .sp-tooltip-desc {
229
+ margin-bottom: 20px;
230
+ display: block;
231
+ border-bottom: 1px solid #e2e4e7;
232
+ padding-bottom: 20px;
233
+ font-size: 13px;
234
  }
235
 
236
  .sp-tooltip .sp-tooltip-code {
237
+ font-family: Menlo, Monaco, Andale Mono, Courier New, monospace;
238
+ display: block;
239
+ word-break: break-all;
240
+ color: #1a7a06;
241
+ font-size: 11px;
242
  }
243
 
244
  .analysis-score .sp-tooltip {
245
+ vertical-align: middle;
246
+ font-size: 0.75em;
247
  }
248
 
249
  #seopress_content_analysis a {
250
+ color: #0073aa;
251
  }
252
 
253
  #seopress_content_analysis .wrap-seopress-analysis {
254
+ display: inline-block;
255
+ width: 100%;
256
  }
257
 
258
  #seopress_content_analysis .col-left {
259
+ width: calc(50% - 30px);
260
+ float: left;
261
+ margin-right: 30px;
262
  }
263
 
264
  #seopress_content_analysis .col-right {
265
+ float: right;
266
+ width: 50%;
267
  }
268
 
269
  #seopress_content_analysis #seopress_suggestions {
270
+ display: inline-block;
271
+ width: 100%;
272
+ margin: 0;
273
+ height: auto;
274
+ padding: 20px 0;
275
  }
276
 
277
  #seopress_content_analysis #seopress_suggestions li {
278
+ list-style: none;
279
+ margin: 5px;
280
+ display: inline-block;
281
  }
282
 
283
  #seopress_content_analysis .analysis-score {
284
+ clear: both;
285
+ border-top: 1px solid #e2e4e7;
286
+ display: flex;
287
+ justify-content: space-between;
288
+ align-items: center;
289
  }
290
 
291
  .column-seopress_score .analysis-score {
292
+ display: flex;
293
+ align-content: center;
294
  }
295
 
296
  #seopress_content_analysis .analysis-score p,
297
  .column-seopress_score .analysis-score p {
298
+ font-weight: bold;
299
+ font-size: 1.2em;
300
  }
301
 
302
  #seopress_content_analysis .analysis-score svg,
303
  .column-seopress_score .analysis-score svg {
304
+ display: inline-block;
305
+ height: 30px;
306
+ width: 30px;
307
+ margin: 0;
308
+ border-radius: 100%;
309
+ position: relative;
310
+ font-weight: 600;
311
+ shape-rendering: geometricprecision;
312
+ font-size: 0.5rem;
313
+ vertical-align: middle;
314
+ margin-right: 15px;
315
  }
316
 
317
  .column-seopress_score .analysis-score p,
318
  .column-seopress_score .analysis-score svg {
319
+ margin: 0;
320
  }
321
 
322
+ @keyframes loadingPulse {
323
+ 0% {
324
+ stroke: #adc5d2;
325
+ }
326
+ 50% {
327
+ stroke: #00a0d2;
328
+ }
329
+ 100% {
330
+ stroke: #adc5d2;
331
+ }
332
  }
333
 
334
  #seopress_content_analysis .analysis-score .loading #bar {
335
+ stroke-dashoffset: 0 !important;
336
+ stroke: #adc5d2 !important;
337
+ animation: loadingPulse 3s infinite ease-in-out;
338
  }
339
 
340
  #seopress_content_analysis .analysis-score .good #bar,
341
  .column-seopress_score .analysis-score #bar.good {
342
+ stroke: #46b450;
343
  }
344
 
345
  #seopress_content_analysis .analysis-score .notgood #bar,
346
+ .column-seopress_score .analysis-score #bar.notgood {
347
+ stroke-dashoffset: 565;
348
+ stroke: #ffb900;
349
  }
350
 
351
  #seopress_content_analysis .analysis-score svg circle,
352
  .column-seopress_score .analysis-score svg circle {
353
+ stroke-dashoffset: 0;
354
+ transition: stroke-dashoffset 1s linear;
355
+ stroke: #ccc;
356
+ stroke-width: 2em;
357
  }
358
 
359
  #seopress_content_analysis .gr-analysis {
360
+ clear: both;
361
  }
362
 
363
  #seopress_content_analysis .gr-analysis-title {
364
+ border-top: 1px solid #e2e4e7;
365
+ position: relative;
366
  }
367
 
368
  #seopress_cpt .impact,
369
  #seopress_content_analysis .gr-analysis-title .impact {
370
+ position: absolute;
371
+ left: 10px;
372
+ top: calc(50% - 5px);
373
+ width: 10px;
374
+ height: 10px;
375
+ border-radius: 50px;
376
+ padding: 0;
377
+ margin: 0;
378
+ border: 1px solid #fff;
379
  }
380
 
381
  #seopress_content_analysis .gr-analysis .impact.good {
382
+ background: #46b450;
383
+ box-shadow: 0 0 5px #46b450;
384
  }
385
 
386
  #seopress_content_analysis .gr-analysis .impact.low {
387
+ background: #ffde24;
388
+ box-shadow: 0 0 5px #ffde24;
389
  }
390
 
391
  #seopress_content_analysis .gr-analysis .impact.medium {
392
+ background: #e39f48;
393
+ box-shadow: 0 0 5px #e39f48;
394
  }
395
 
396
  #seopress_cpt .impact.high,
397
  #seopress_content_analysis .gr-analysis .impact.high {
398
+ background: #e25950;
399
+ box-shadow: 0 0 5px #e25950;
400
  }
401
 
402
  #seopress_content_analysis .gr-analysis-content .impact.high {
403
+ background: #e25950;
404
+ box-shadow: none;
405
+ color: #fff;
406
+ padding: 2px 4px;
407
+ margin-left: 5px;
408
+ border-radius: 4px;
409
+ font-weight: bold;
410
  }
411
 
412
  #seopress_cpt .impact.high {
413
+ position: relative;
414
+ top: calc(50% - 18px);
415
+ display: inline-block;
416
+ left: inherit;
417
+ right: -10px;
418
  }
419
 
420
  #seopress_cpt .description,
421
  #seopress_content_analysis .description,
422
  .seopress-tab .description {
423
+ display: block;
424
  font-style: italic;
425
  }
426
 
427
  #seopress_content_analysis .gr-analysis-title button {
428
+ background: #fff;
429
+ border: 0;
430
+ cursor: pointer;
431
+ display: block;
432
+ margin: 0;
433
+ position: relative;
434
+ text-align: left;
435
+ width: 100%;
436
+ padding: 15px 30px;
437
+ align-items: center;
438
+ transition: all 300ms linear;
439
  }
440
 
441
  #seopress_content_analysis .gr-analysis-title button:hover {
442
+ background: #f3f4f5;
443
  }
444
 
445
  #seopress_content_analysis .gr-analysis-title button:focus {
446
+ color: #191e23;
447
+ border: none;
448
+ box-shadow: none;
449
+ outline-offset: -2px;
450
+ outline: 1px dotted #555d66;
451
  }
452
 
453
  #seopress_content_analysis .gr-analysis-title button .sp-arrow::after {
454
+ content: "\f343";
455
+ font-family: "Dashicons";
456
+ position: absolute;
457
+ right: 10px;
458
+ top: calc(50% - 7px);
459
  }
460
 
461
  #seopress_content_analysis .gr-analysis-title button.open .sp-arrow::after {
462
+ content: "\f347";
463
  }
464
 
465
  #seopress_content_analysis .gr-analysis-content {
466
+ padding: 0 1rem 0.5rem 1rem;
467
+ display: none;
468
+ width: 100%;
469
+ border-top: 1px solid #e2e4e7;
470
+ box-sizing: border-box;
471
  }
472
 
473
  table.wp-list-table .manage_column.column-seopress_noindex,
478
  table.wp-list-table .manage_column.column-seopress_desc,
479
  table.wp-list-table .manage_column.column-seopress_title,
480
  table.wp-list-table .manage_column.column-seopress_insights {
481
+ width: 7% !important;
482
  }
483
 
484
  #seopress_content_analysis h3 {
485
+ margin: 0;
486
+ font-size: 1em;
487
  }
488
 
489
  #seopress_content_analysis h4 {
490
+ border-bottom: 1px solid #e2e4e7;
491
+ padding-bottom: 0.5rem;
492
+ text-transform: uppercase;
493
+ font-size: 0.85em;
494
+ position: -webkit-sticky; /* Required for Safari */
495
+ position: sticky;
496
+ top: 0;
497
+ background: #fff;
498
  }
499
 
500
  #seopress_content_analysis .wrap-analysis-img ul {
501
+ display: flex;
502
+ flex-wrap: wrap;
503
  }
504
 
505
  #seopress_content_analysis .wrap-analysis-img ul li {
506
+ padding: 0;
507
+ text-align: left;
508
+ cursor: default;
509
  }
510
 
511
  #seopress_content_analysis .wrap-analysis-img h4 {
512
+ border-bottom: 1px solid #ddd;
513
+ padding-bottom: 10px;
514
  }
515
 
516
  #seopress_content_analysis .wrap-analysis-img ul li img {
517
+ max-width: 150px;
518
+ max-height: 150px;
519
+ object-fit: cover;
520
+ border: 1px solid #f3f4f5;
521
+ cursor: default;
522
+ padding: 1px;
523
  }
524
 
525
  #seopress_cpt .notice {
526
+ padding: 10px 14px;
527
  }
528
 
529
  #seopress_cpt .dashicons,
530
  #seopress-analysis-tabs .dashicons {
531
+ vertical-align: middle;
532
  }
533
 
534
  #seopress-analysis-tabs {
535
+ clear: both;
536
  }
537
 
538
  #seopress_cpt .inside {
539
+ margin: 0;
540
+ padding: 0;
541
  }
542
 
543
  #seopress_cpt .ui-tabs .ui-tabs-nav {
544
+ display: inline-block;
545
+ min-height: 26px;
546
+ position: relative;
547
+ width: 100%;
548
+ z-index: 10;
549
+ margin: 0;
550
+ border-radius: 0;
551
+ padding: 0;
552
+ background: #f3f4f5;
553
+ border: none;
554
+ }
555
+
556
+ #seopress_cpt .ui-tabs .sp-section {
557
+ font-weight: 700;
558
+ font-size: 13px;
559
  }
560
 
561
  #seopress_cpt .ui-helper-clearfix:after {
562
+ content: none;
563
  }
564
 
565
+ .seopress_page_seopress-titles #seopress-tabs .form-table td,
566
+ .seopress_page_seopress-titles #seopress_content_analysis .form-table td {
567
+ padding: 0;
568
  }
569
 
570
  #seopress_cpt .ui-tabs .ui-tabs-panel {
571
+ background: #fff;
572
+ border-radius: 0;
573
+ display: inline-block;
574
+ padding: 1em 1.4em;
575
+ width: 100%;
576
+ box-sizing: border-box;
577
  }
578
 
579
+ #seopress_content_analysis .dashicons-info,
580
+ #seopress_cpt .ui-tabs .ui-tabs-panel .dashicons-info,
581
+ #seopress_pro_cpt .dashicons-info {
582
+ font-size: 16px;
583
+ vertical-align: middle;
584
+ height: 16px;
585
+ width: 16px;
586
  }
587
 
588
+ #seopress_cpt .ui-tabs .ui-tabs-nav li,
589
+ #seopress_cpt .ui-tabs-anchor {
590
+ cursor: pointer !important;
591
  }
592
 
593
  #seopress_cpt .ui-tabs .ui-tabs-nav li.ui-tabs-active {
594
+ position: relative;
595
+ z-index: 60;
596
+ cursor: pointer;
597
+ border-radius: 0;
598
+ border-bottom: 3px solid #0085ba;
599
+ }
600
+
601
+ #seopress_content_analysis label,
602
+ #seopress_cpt #tabs-1 label,
603
+ #seopress_cpt #tabs-2 label[for="seopress_robots_breadcrumbs_meta"],
604
+ #seopress_cpt #tabs-2 label[for="seopress_robots_canonical_meta"],
605
+ #seopress_cpt #tabs-2 label[for="seopress_robots_primary_cat_meta"],
606
+ #seopress_cpt #tabs-3 label,
607
+ #seopress_cpt #tabs-4 label,
608
+ #seopress_cpt #tabs-5 label,
609
+ #seopress_cpt #tabs-6 label,
610
+ #seopress_cpt .subsection-title {
611
+ display: block;
612
+ margin: 20px 0 5px;
613
+ font-weight: 700;
614
  }
615
 
616
  #seopress_cpt .wp-color-result {
617
+ margin: 0;
618
  }
619
 
620
+ #seopress_content_analysis input[type="text"],
621
+ #seopress_cpt #tabs-1 input,
622
+ #seopress_cpt #tabs-2 input[type="text"],
623
+ #seopress_cpt #tabs-3 input[type="text"],
624
+ #seopress_cpt #tabs-3 textarea,
625
+ #seopress_cpt #tabs-4 input[type="text"],
626
+ #seopress_cpt #tabs-5 input[type="text"],
627
+ #seopress_cpt #tabs-6 input[type="text"],
628
+ #seopress_cpt #tabs-6 textarea {
629
+ width: 100%;
630
+ display: inline-block;
631
  }
632
 
633
  #seopress_cpt #tabs-1 input {
634
+ width: 100%;
635
  }
636
 
637
+ #seopress_cpt #tabs-6 input[type="number"] {
638
+ width: 30%;
639
+ min-width: 200px;
640
  }
641
 
642
  #seopress_cpt #tabs-6 #wrap-videos .video:first-child .remove-video {
643
+ display: none;
644
  }
645
 
646
  #seopress_cpt select {
647
+ width: 300px;
648
  }
649
 
650
  #seopress_cpt #tabs-4 select {
651
+ width: 250px;
652
+ display: inline;
653
  }
654
 
655
  #seopress_cpt #tabs-4 #seopress_redirections_value_meta {
656
+ width: calc(100% - 258px);
657
+ float: right;
658
  }
659
 
660
  #seopress_cpt #tabs-6 {
661
+ padding: 0;
662
  }
663
 
664
+ #seopress_cpt #tabs-6 #wrap-videos .video .accordion-section-content,
665
+ #seopress_cpt #tabs-6 > p {
666
+ padding: 0 1.4em;
667
  }
668
 
669
  #seopress_cpt #tabs-6 #wrap-videos .video .accordion-section-content {
670
+ padding: 0 1.4em 1em;
671
  }
672
 
673
  #seopress_cpt #tabs-6 #wrap-videos .video {
674
+ border-top: 1px solid #eee;
675
  }
676
 
677
  #seopress_cpt #tabs-6 #wrap-videos .video .accordion-section-title {
678
+ border-left: none;
679
+ border-right: none;
680
+ font-size: 1em;
681
+ padding: 1em 1.4em;
682
  }
683
 
684
+ #seopress_cpt #tabs-6 #wrap-videos .video:last-child .accordion-section-content,
685
+ #seopress_cpt #tabs-6 #wrap-videos .video:last-child .accordion-section-title {
686
+ border-bottom: 1px solid #eee;
687
  }
688
 
689
  #seopress_cpt #tabs-6 #wrap-videos .video .inside {
690
+ padding: 0;
691
  }
692
 
693
+ #seopress_cpt #tabs-4 #seopress_redirections_enabled,
694
+ #seopress_cpt #tabs-5 #seopress_news_disabled,
695
+ #seopress_cpt #tabs-5 #seopress_news_standout,
696
+ #seopress_cpt #tabs-6 #seopress_video_disabled,
697
+ #seopress_cpt #tabs-6 .family-friendly label,
698
+ #seopress_cpt #tabs-6 .internal_video label {
699
+ font-weight: 400;
700
  }
701
 
702
  #seopress_cpt #tabs-6 #wrap-videos .video:nth-child(odd) {
703
+ background: #fdfdfd;
704
  }
705
 
706
+ #seopress_content_analysis .advise,
707
+ #seopress_cpt .advise,
708
+ #seopress_pro_cpt .advise,
709
+ .seopress-option .advise {
710
+ margin: 5px;
711
+ display: block;
712
+ color: red;
713
+ font-style: italic;
714
  }
715
 
716
  #seopress_cpt #tabs-6 #wrap-videos .video .advise {
717
+ color: #555;
718
  }
719
 
720
+ #seopress_content_analysis .mandatory,
721
+ #seopress_cpt .mandatory {
722
+ color: #c00;
723
  }
724
 
725
  #seopress_cpt .box-left {
726
+ float: left;
727
+ width: 49%;
728
+ margin-right: 1%;
729
  }
730
 
731
  #seopress_cpt .box-right {
732
+ float: left;
733
+ width: 49%;
734
+ margin-left: 1%;
735
  }
736
  #seopress_cpt #tabs-3 .box-left {
737
+ width: 44%;
738
  }
739
  #seopress_cpt #tabs-3 .box-right {
740
+ width: 54%;
741
  }
742
  @media only screen and (max-width: 1200px) {
743
+ #seopress_cpt .box-left,
744
+ #seopress_cpt .box-right {
745
+ float: none;
746
+ width: 100%;
747
+ margin: 0;
748
+ }
749
  }
750
  @media only screen and (max-width: 1500px) {
751
+ #seopress_cpt #tabs-3 .box-left,
752
+ #seopress_cpt #tabs-3 .box-right {
753
+ float: none;
754
+ width: 100%;
755
+ margin: 0;
756
+ }
757
  }
758
 
759
  #edittag #seopress_cpt #tabs-3 .box-left,
760
  #edittag #seopress_cpt #tabs-3 .box-right {
761
+ float: none;
762
+ width: 100%;
763
+ margin: 0;
764
  }
765
 
766
  #seopress-tabs .seopress_media_upload,
767
  #seopress_pro_cpt .seopress_media_upload {
768
+ margin-top: 0.5rem;
769
  }
770
 
771
  #seopress_cpt .google-snippet-preview {
772
+ font-family: arial, sans-serif;
773
+ word-break: break-all;
774
  }
775
 
776
  #seopress_cpt .google-snippet-preview.mobile-preview .wrap-snippet {
777
+ margin: 0 0 10px 0;
778
+ box-shadow: 0 1px 6px rgba(32, 33, 36, 0.28);
779
+ border-radius: 8px;
780
+ padding: 12px 16px;
781
  }
782
 
783
  #seopress_cpt .google-snippet-preview > p {
784
+ word-break: normal;
785
  }
786
 
787
+ #seopress_cpt .google-snippet-preview .snippet-title,
788
+ #seopress_cpt .google-snippet-preview .snippet-title-custom,
789
+ #seopress_cpt .google-snippet-preview .snippet-title-default {
790
+ color: #1a0dab;
791
+ font-size: 18px;
792
+ font-weight: 400;
793
+ line-height: 21.6px;
794
  }
795
 
796
  #seopress_cpt .google-snippet-preview.mobile-preview .snippet-title,
797
  #seopress_cpt .google-snippet-preview.mobile-preview .snippet-title-custom,
798
  #seopress_cpt .google-snippet-preview.mobile-preview .snippet-title-default {
799
+ font-size: 16px;
800
+ line-height: 20px;
801
+ margin-bottom: 12px;
802
  }
803
 
804
  #seopress_cpt .google-snippet-preview .snippet-permalink {
805
+ color: #006621;
806
+ font-size: 14px;
807
+ font-style: normal;
808
+ font-weight: 400;
809
+ line-height: 16px;
810
+ overflow: hidden;
811
+ text-overflow: ellipsis;
812
+ white-space: nowrap;
813
  }
814
 
815
  #seopress_cpt .google-snippet-preview .wrap-snippet .wrap-m-icon-permalink,
816
  #seopress_cpt .google-snippet-preview.mobile-preview .snippet-permalink {
817
+ display: none;
818
  }
819
 
820
  #seopress_cpt .google-snippet-preview.mobile-preview .wrap-m-icon-permalink {
821
+ overflow: hidden;
822
+ text-overflow: ellipsis;
823
+ white-space: nowrap;
824
+ margin-bottom: 12px;
825
+ display: flex;
826
  }
827
 
828
+ #seopress_cpt
829
+ .google-snippet-preview.mobile-preview
830
+ .wrap-m-icon-permalink
831
+ .snippet-permalink {
832
+ display: block;
833
+ color: #3c4043;
834
+ font-size: 12px;
835
  }
836
 
837
  #seopress_cpt .google-snippet-preview.mobile-preview .snippet-favicon {
838
+ margin-right: 12px;
839
+ vertical-align: middle;
840
  }
841
 
842
  #seopress_cpt .google-snippet-preview.mobile-preview .snippet-favicon img {
843
+ width: 16px;
844
+ height: 16px;
845
+ max-width: inherit;
846
+ }
847
+
848
+ #seopress_cpt
849
+ .google-snippet-preview.mobile-preview
850
+ .wrap-snippet
851
+ .snippet-permalink:first-child {
852
+ color: #3c4043;
853
+ white-space: nowrap;
854
+ font-size: 12px;
855
+ display: block;
856
  }
857
 
858
+ #seopress_cpt .google-snippet-preview .snippet-description,
859
+ #seopress_cpt .google-snippet-preview .snippet-description-custom,
860
+ #seopress_cpt .google-snippet-preview .snippet-description-default {
861
+ color: #545454;
862
+ font-size: 14px;
863
+ font-weight: 400;
864
+ line-height: 18.2px;
865
+ display: inline;
866
  }
867
 
868
  #seopress_cpt .google-snippet-preview.mobile-preview .snippet-description,
869
+ #seopress_cpt
870
+ .google-snippet-preview.mobile-preview
871
+ .snippet-description-custom,
872
+ #seopress_cpt
873
+ .google-snippet-preview.mobile-preview
874
+ .snippet-description-default {
875
+ color: #3c4043;
876
+ font-size: 14px;
877
+ line-height: 20px;
878
  }
879
 
880
  #seopress_cpt .google-snippet-preview .snippet-date {
881
+ color: grey;
882
+ display: inline;
883
  }
884
  #seopress_cpt .facebook-snippet-box {
885
+ color: #4b4f56;
886
+ font-size: 14px;
887
+ width: 524px;
888
  }
889
  #seopress_cpt .facebook-snippet-box .notice,
890
  #seopress_cpt .twitter-snippet-box .notice {
891
+ padding: 10px 14px;
892
+ margin: 0 0 10px 0;
893
+ box-sizing: border-box;
894
+ width: 100%;
895
  }
896
  #seopress_cpt .facebook-snippet-box .notice span,
897
  #seopress_cpt .twitter-snippet-box .notice span {
898
+ font-weight: bold;
899
  }
900
  #seopress_cpt .snippet-meta {
901
+ display: flex;
902
+ overflow: hidden;
903
+ max-height: 12px;
904
+ }
905
  #seopress_cpt .snippet-fb-site-name,
906
  #seopress_cpt .snippet-fb-url,
907
  #seopress_cpt .fb-by {
908
+ color: #606770;
909
+ font-size: 12px;
910
+ white-space: normal;
911
+ line-height: 11px;
912
+ text-transform: uppercase;
913
+ -webkit-box-orient: vertical;
914
+ display: -webkit-box;
915
+ text-overflow: ellipsis;
916
  }
917
  #seopress_cpt .fb-sep {
918
+ padding-left: 5px;
919
+ padding-right: 5px;
920
+ color: #606770;
921
+ line-height: 11px;
922
+ font-size: 12px;
923
  }
924
  #seopress_cpt .facebook-snippet-box .facebook-snippet-text {
925
+ border: 1px solid #dadde1;
926
+ background-color: #f2f3f5;
927
+ padding: 10px 12px;
928
  }
929
  #seopress_cpt .facebook-snippet-box .title-desc {
930
+ max-height: 46px;
931
+ overflow: hidden;
932
  }
933
  #seopress_cpt .facebook-snippet-box .snippet-fb-title,
934
  #seopress_cpt .facebook-snippet-box .snippet-fb-title-custom,
935
  #seopress_cpt .facebook-snippet-box .snippet-fb-title-default {
936
+ font-size: 16px;
937
+ line-height: 20px;
938
+ margin: 3px 0 0;
939
+ padding-top: 2px;
940
+ color: #1d2129;
941
+ font-weight: 700;
942
+ overflow: hidden;
943
+ -webkit-box-orient: vertical;
944
+ display: -webkit-box;
945
+ text-overflow: ellipsis;
946
+ white-space: normal;
947
+ word-break: break-word;
948
+ max-height: 22px;
949
  }
950
  #seopress_cpt .facebook-snippet-box .snippet-fb-description,
951
  #seopress_cpt .facebook-snippet-box .snippet-fb-description-custom,
952
  #seopress_cpt .facebook-snippet-box .snippet-fb-description-default {
953
+ color: #606770;
954
+ font-size: 14px;
955
+ line-height: 20px;
956
+ word-break: break-word;
957
+ font-family: Helvetica, Arial, sans-serif;
958
+ max-height: 80px;
959
+ overflow: hidden;
960
+ -webkit-box-orient: vertical;
961
+ display: -webkit-box;
962
+ text-overflow: ellipsis;
963
+ white-space: normal;
964
+ width: 100%;
965
  }
966
  #seopress_cpt .facebook-snippet-box img {
967
+ display: block;
968
+ height: 274px;
969
+ width: 524px;
970
+ object-fit: cover;
971
+ background-color: #edeff0;
972
+ text-align: center;
973
+ border-bottom: none;
974
  }
975
 
976
  #seopress_cpt .twitter-snippet-box {
977
+ color: #4b4f56;
978
+ font-size: 14px;
979
+ width: 436px;
980
  }
981
  #seopress_cpt .snippet-twitter-url {
982
+ color: #8899a6;
983
+ font-size: 14px;
984
+ white-space: normal;
985
+ line-height: 11px;
986
+ text-transform: uppercase;
987
+ -webkit-box-orient: vertical;
988
+ display: -webkit-box;
989
+ text-overflow: ellipsis;
990
  }
991
  #seopress_cpt .twitter-snippet-box .twitter-snippet-text {
992
+ border: 1px solid #dadde1;
993
+ background-color: #fff;
994
+ padding: 10px 12px;
995
+ border-radius: 0 0 10px 10px;
996
  }
997
  #seopress_cpt .twitter-snippet-box .title-desc {
998
+ max-height: 46px;
999
+ overflow: hidden;
1000
  }
1001
  #seopress_cpt .twitter-snippet-box .snippet-twitter-img,
1002
  #seopress_cpt .twitter-snippet-box .snippet-twitter-img-default,
1003
  #seopress_cpt .twitter-snippet-box .snippet-twitter-img-custom {
1004
+ border-radius: 10px 10px 0 0;
1005
+ overflow: hidden;
1006
  }
1007
  #seopress_cpt .twitter-snippet-box .snippet-twitter-title,
1008
  #seopress_cpt .twitter-snippet-box .snippet-twitter-title-custom,
1009
  #seopress_cpt .twitter-snippet-box .snippet-twitter-title-default {
1010
+ font-size: 1em;
1011
+ line-height: 20px;
1012
+ margin-bottom: 5px;
1013
+ max-height: 1.3em;
1014
+ color: #000;
1015
+ font-weight: 700;
1016
+ overflow: hidden;
1017
+ -webkit-box-orient: vertical;
1018
+ display: -webkit-box;
1019
+ text-overflow: ellipsis;
1020
+ white-space: normal;
1021
+ word-break: break-word;
1022
  }
1023
  #seopress_cpt .twitter-snippet-box .snippet-twitter-description,
1024
  #seopress_cpt .twitter-snippet-box .snippet-twitter-description-custom,
1025
  #seopress_cpt .twitter-snippet-box .snippet-twitter-description-default {
1026
+ color: #000;
1027
+ font-size: 14px;
1028
+ line-height: 20px;
1029
+ word-break: break-word;
1030
+ font-family: Helvetica, Arial, sans-serif;
1031
+ max-height: 80px;
1032
+ overflow: hidden;
1033
+ -webkit-box-orient: vertical;
1034
+ display: -webkit-box;
1035
+ text-overflow: ellipsis;
1036
+ white-space: normal;
1037
+ width: 100%;
1038
  }
1039
  #seopress_cpt .twitter-snippet-box img {
1040
+ display: block;
1041
+ height: 200px;
1042
+ width: 436px;
1043
+ object-fit: cover;
1044
+ background-color: #edeff0;
1045
+ text-align: center;
1046
+ border-bottom: none;
1047
+ }
1048
+
1049
+ #seopress_cpt .wrap-seopress-counters,
1050
+ #seopress_pro_cpt .wrap-seopress-counters,
1051
+ .seopress-styles .wrap-seopress-counters,
1052
+ .seopress-setup .wrap-seopress-counters {
1053
+ text-align: right;
1054
+ background: #e9ecef;
1055
+ padding: 2px 5px;
1056
+ display: flex;
1057
+ font-size: 12px;
1058
+ justify-content: flex-end;
1059
+ border-radius: 0 0 0.25rem 0.25rem;
1060
+ }
1061
+ #seopress_cpt .sp-progress,
1062
+ #seopress_pro_cpt .sp-progress,
1063
+ .seopress-styles .sp-progress,
1064
+ .seopress-setup .sp-progress {
1065
+ display: -ms-flexbox;
1066
+ display: flex;
1067
+ height: 1rem;
1068
+ overflow: hidden;
1069
+ font-size: 0.75rem;
1070
+ background-color: #e9ecef;
1071
+ border-radius: 0.25rem 0.25rem 0 0;
1072
+ }
1073
+ #seopress_cpt .sp-progress-bar,
1074
+ #seopress_pro_cpt .sp-progress-bar,
1075
+ .seopress-styles .sp-progress-bar,
1076
+ .seopress-setup .sp-progress-bar {
1077
+ display: -ms-flexbox;
1078
+ display: flex;
1079
+ -ms-flex-direction: column;
1080
+ flex-direction: column;
1081
+ -ms-flex-pack: center;
1082
+ justify-content: center;
1083
+ color: #fff;
1084
+ text-align: center;
1085
+ white-space: nowrap;
1086
+ background-color: #0085ba;
1087
+ transition: width 0.6s ease;
1088
  }
1089
  #seopress_cpt #seopress_titles_desc_counters,
1090
  #seopress_cpt #seopress_titles_title_counters,
1091
  #seopress_pro_cpt #seopress_rich_snippets_articles_counters,
1092
  #seopress_pro_cpt #seopress_rich_snippets_courses_counters {
1093
+ display: inline;
1094
+ margin-right: 5px;
1095
  }
1096
 
1097
  #seopress_cpt #seopress_titles_desc_counters_val,
1098
  #seopress_cpt #seopress_titles_title_counters_val,
1099
  #seopress_pro_cpt #seopress_rich_snippets_articles_counters_val,
1100
  #seopress_pro_cpt #seopress_rich_snippets_courses_counters_val {
1101
+ display: inline;
1102
+ font-weight: 700;
1103
  }
1104
 
1105
  #term-seopress #seopress_cpt {
1106
+ width: 95%;
1107
  }
1108
 
1109
  .fixed .column-seopress_w3c,
1110
  .fixed .column-seopress_words,
1111
  .fixed .column-seopress_ps,
1112
  .fixed .column-seopress_score {
1113
+ width: 6%;
1114
  }
1115
 
1116
+ table.fixed thead .column-seopress_nofollow,
1117
+ table.fixed thead .column-seopress_noindex {
1118
+ width: 8%;
1119
  }
1120
  @media only screen and (max-width: 1200px) {
1121
+ table.fixed thead .column-seopress_nofollow,
1122
+ table.fixed thead .column-seopress_noindex,
1123
+ table.fixed thead .column-seopress_w3c,
1124
+ table.fixed thead .column-seopress_words,
1125
+ table.fixed thead .column-seopress_ps,
1126
+ table.fixed thead .column-seopress_score {
1127
+ width: 10%;
1128
+ }
1129
  }
1130
 
 
1131
  #seopress_cpt .ui-tabs {
1132
+ position: relative;
1133
+ padding: 0;
1134
+ border: none;
1135
+ font-family: inherit;
1136
+ font-size: inherit;
1137
+ display: inline-block;
1138
+ width: 100%;
1139
  }
1140
 
1141
  #seopress_cpt .ui-tabs .ui-tabs-nav li {
1142
+ list-style: none;
1143
+ display: inline-block;
1144
+ position: relative;
1145
+ top: 2px;
1146
+ padding: 0px 5px;
1147
+ white-space: nowrap;
1148
+ margin: 0;
1149
+ border: none;
1150
+ background: 0 0;
1151
  }
1152
 
1153
  #seopress_cpt .ui-tabs .ui-tabs-nav li a {
1154
+ display: inline-block;
1155
+ padding: 5px 10px;
1156
  }
1157
 
1158
+ #seopress-admin-tabs.ui-tabs-vertical .ui-tabs-nav li a,
1159
+ #seopress_cpt .ui-tabs-vertical .ui-tabs-nav li a {
1160
+ display: block;
1161
  }
1162
 
1163
  #seopress_cpt .ui-tabs .ui-tabs-nav li.ui-tabs-active {
1164
+ margin-bottom: 2px;
1165
+ padding-bottom: 1px;
1166
  }
1167
 
1168
+ #seopress_cpt .ui-tabs .ui-tabs-nav li.ui-state-disabled a,
1169
+ #seopress_cpt .ui-tabs .ui-tabs-nav li.ui-tabs-active a,
1170
+ #seopress_cpt .ui-tabs .ui-tabs-nav li.ui-tabs-loading a {
1171
+ color: #191e23;
1172
+ font-weight: bold;
1173
  }
1174
 
1175
+ #seopress_cpt .ui-tabs .ui-tabs-nav li a,
1176
+ #seopress_cpt .ui-tabs-collapsible .ui-tabs-nav li.ui-tabs-active a {
1177
+ cursor: pointer;
1178
+ color: #191e23;
1179
+ text-decoration: none;
1180
+ height: 40px;
1181
+ line-height: 40px;
1182
  }
1183
 
1184
  #seopress_cpt .ui-tabs-vertical {
1185
+ width: 55em;
1186
  }
1187
 
1188
  #seopress_cpt .ui-tabs-vertical .ui-tabs-nav {
1189
+ padding: 0.2em 0.1em 0.2em 0.2em;
1190
+ float: left;
1191
+ width: 12em;
1192
  }
1193
 
1194
  #seopress_cpt .ui-tabs-vertical .ui-tabs-nav li {
1195
+ clear: left;
1196
+ width: 100%;
1197
+ border-bottom-width: 1px !important;
1198
+ border-right-width: 0 !important;
1199
+ margin: 0 -1px 0.2em 0;
1200
  }
1201
 
1202
  #seopress_cpt .ui-tabs-vertical .ui-tabs-nav li.ui-tabs-active {
1203
+ padding-bottom: 0;
1204
+ padding-right: 0.1em;
1205
+ border-right-width: 1px;
1206
  }
1207
 
1208
  #seopress_cpt .ui-tabs-vertical .ui-tabs-panel {
1209
+ padding: 1em;
1210
+ float: right;
1211
+ width: 40em;
1212
  }
1213
 
1214
  #seopress_cpt .ui-tabs .ui-tabs-nav li a .dashicons {
1215
+ margin-right: 2px;
1216
  }
1217
 
1218
  #tab-panel-seopress_titles_help_tab li span {
1219
+ font-weight: 700;
1220
+ margin-right: 10px;
1221
  }
1222
 
1223
+ #seopress_content_analysis .dashicons-no-alt,
1224
+ #seopress_content_analysis .dashicons-yes,
1225
+ #seopress_pro_cpt .dashicons-no-alt,
1226
+ #seopress_pro_cpt .dashicons-yes {
1227
+ color: #fff;
1228
+ background: #12bd10;
1229
+ border-radius: 50px;
1230
+ margin-right: 10px;
1231
  }
1232
 
1233
+ #seopress_content_analysis .dashicons-no-alt,
1234
+ #seopress_pro_cpt .dashicons-no-alt {
1235
+ background: #e25950;
1236
  }
1237
 
1238
  body.seopress-styles {
1239
+ background: #f8fafd;
1240
  }
1241
 
1242
  #seopress-admin-tabs.ui-tabs {
1243
+ position: relative;
1244
+ padding: 0.2em;
1245
+ border: none;
1246
+ font-family: inherit;
1247
+ font-size: inherit;
1248
  }
1249
 
1250
  #seopress-admin-tabs.ui-tabs .ui-tabs-nav li {
1251
+ list-style: none;
1252
+ float: left;
1253
+ position: relative;
1254
+ top: 0;
1255
+ margin: -1px 0.2em 0 0;
1256
+ padding: 0;
1257
+ white-space: nowrap;
1258
+ border: none;
1259
+ background: 0 0;
1260
  }
1261
 
1262
  #seopress-admin-tabs.ui-tabs .ui-tabs-nav li a {
1263
+ float: left;
1264
+ padding: 0.38em 1em 0.75rem;
1265
+ outline: 0;
1266
+ border-bottom: 2px solid #fff;
1267
  }
1268
 
1269
  #seopress-admin-tabs.ui-tabs .ui-tabs-nav li.ui-tabs-active {
1270
+ margin-bottom: -1px;
1271
  }
1272
 
1273
+ #seopress-admin-tabs.ui-tabs .ui-tabs-nav li.ui-state-disabled a,
1274
+ #seopress-admin-tabs.ui-tabs .ui-tabs-nav li.ui-tabs-active a,
1275
+ #seopress-admin-tabs.ui-tabs .ui-tabs-nav li.ui-tabs-loading a {
1276
+ cursor: text;
1277
+ border-bottom: 2px solid #23282d;
1278
+ color: #23282d;
1279
  }
1280
 
1281
+ #seopress-admin-tabs.ui-tabs .ui-tabs-nav li a,
1282
+ #seopress-admin-tabs.ui-tabs-collapsible .ui-tabs-nav li.ui-tabs-active a {
1283
+ cursor: pointer;
1284
+ color: #0073aa;
1285
+ text-decoration: none;
1286
  }
1287
 
1288
  #seopress-admin-tabs.ui-tabs-vertical {
1289
+ width: 55em;
1290
  }
1291
 
1292
  #seopress-admin-tabs.ui-tabs-vertical .ui-tabs-nav {
1293
+ padding: 0.2em 0.1em 0.2em 0.2em;
1294
+ float: left;
1295
+ width: 12em;
1296
  }
1297
 
1298
  #seopress-admin-tabs.ui-tabs-vertical .ui-tabs-nav li {
1299
+ clear: left;
1300
+ width: 100%;
1301
+ border-bottom-width: 1px !important;
1302
+ border-right-width: 0 !important;
1303
+ margin: 0 -1px 0.2em 0;
1304
  }
1305
 
1306
  #seopress-admin-tabs.ui-tabs-vertical .ui-tabs-nav li.ui-tabs-active {
1307
+ padding-bottom: 0;
1308
+ padding-right: 0.1em;
1309
+ border-right-width: 1px;
1310
  }
1311
 
1312
  #seopress-admin-tabs.ui-tabs-vertical .ui-tabs-panel {
1313
+ padding: 1em;
1314
+ float: right;
1315
+ width: 40em;
1316
  }
1317
 
1318
  .seopress-styles .seopress-option {
1319
+ margin: 10px auto 0;
1320
+ max-width: 90%;
1321
+ padding: 1rem;
1322
+ background: #fff;
1323
+ box-shadow: 0 15px 35px rgba(50, 50, 93, 0.1), 0 5px 15px rgba(0, 0, 0, 0.1);
1324
+ border-radius: 4px;
1325
  }
1326
 
1327
  .seopress-styles .seopress-option h1 {
1328
+ font-size: 16px;
1329
+ font-weight: 700;
1330
+ color: #3297d3;
1331
+ text-transform: uppercase;
1332
+ /* Required for Safari */
1333
+ z-index: 100;
1334
+ border-bottom: 1px solid RGB(238, 238, 238);
1335
+ padding-bottom: 20px;
1336
  }
1337
 
1338
+ .seopress-styles .seopress-option h1 .dashicons,
1339
+ .seopress-styles .seopress-option h2 .dashicons {
1340
+ margin: 0 10px;
1341
+ font-size: 40px;
1342
+ width: 40px;
1343
+ height: 40px;
1344
+ vertical-align: middle;
1345
  }
1346
 
1347
  .seopress-styles .seopress-option .link-archive {
1348
+ font-size: 14px;
1349
  }
1350
 
1351
  .seopress-styles .seopress-option .link-archive .dashicons {
1352
+ font-size: 18px;
1353
+ width: 20px;
1354
+ height: 20px;
1355
+ margin: inherit;
1356
  }
1357
 
1358
+ .seopress-styles .seopress-option h1 > .dashicons {
1359
+ font-size: 30px;
1360
+ width: 30px;
1361
+ height: 30px;
1362
+ background: #c4f0ff;
1363
+ border-radius: 6px;
1364
+ padding: 10px;
1365
+ margin-left: 10px;
1366
+ color: #0085ba;
1367
  }
1368
 
1369
  .seopress-styles .seopress-option .metabox-holder h2 .dashicons {
1370
+ font-size: 16px;
1371
  }
1372
 
1373
  .seopress-option h1 .feature-state .dashicons {
1374
+ font-size: 16px;
1375
+ width: 16px;
1376
+ height: 16px;
1377
+ vertical-align: middle;
1378
+ margin: 0 10px 0 0;
1379
  }
1380
 
1381
  #seopress-admin-tabs.wrap {
1382
+ display: block;
1383
+ box-shadow: 0 7px 14px 0 rgba(60, 66, 87, 0.12),
1384
+ 0 3px 6px 0 rgba(0, 0, 0, 0.12);
1385
+ width: 64rem;
1386
+ max-width: 100%;
1387
+ margin: 0 auto;
1388
  }
1389
 
1390
  @media only screen and (max-width: 1024px) {
1391
+ #seopress-admin-tabs.wrap {
1392
+ width: 100%;
1393
+ }
1394
  }
1395
 
1396
  .seopress-styles .seopress-option .submit {
1397
+ background: #fff;
1398
+ text-align: center;
1399
+ border-top: 1px solid #f1f1f1;
1400
+ padding-top: 20px;
1401
+ padding-bottom: 20px;
1402
+ margin: 0;
1403
+ }
1404
+
1405
+ .seopress-styles .seopress-option #seopress-yoast-migrate,
1406
+ .seopress-styles .seopress-option #seopress-aio-migrate,
1407
+ .seopress-styles .seopress-option #seopress-seo-framework-migrate,
1408
+ .seopress-styles .seopress-option #seopress-rk-migrate,
1409
+ .seopress-styles .seopress-option #seopress-squirrly-migrate,
1410
+ .seopress-styles .seopress-option #submit {
1411
+ color: #fff;
1412
+ text-decoration: none;
1413
+ border: none;
1414
+ border-radius: 4px;
1415
+ padding-right: 20px;
1416
+ padding-left: 20px;
1417
+ line-height: 34px;
1418
+ text-transform: uppercase;
1419
+ min-height: 34px;
1420
+ transition: all 0.3s linear;
1421
+ text-shadow: none;
1422
+ box-shadow: 0 7px 14px rgba(50, 50, 93, 0.1), 0 3px 6px rgba(0, 0, 0, 0.1);
1423
+ margin-right: 15px;
1424
+ background: RGB(106, 124, 148);
1425
+ position: relative;
1426
+ height: auto;
1427
+ z-index: 10;
1428
+ }
1429
+
1430
+ .seopress-styles .seopress-option #seopress-yoast-migrate:hover,
1431
+ .seopress-styles .seopress-option #seopress-aio-migrate:hover,
1432
+ .seopress-styles .seopress-option #seopress-seo-framework-migrate:hover,
1433
+ .seopress-styles .seopress-option #seopress-rk-migrate:hover,
1434
+ .seopress-styles .seopress-option #seopress-squirrly-migrate:hover,
1435
+ .seopress-styles .seopress-option #submit:hover {
1436
+ text-decoration: none;
1437
+ color: #fff;
1438
+ background: #232323;
1439
  }
1440
 
1441
  .seopress-styles #wpcontent {
1442
+ padding-left: 0;
1443
  }
1444
 
1445
  .seopress-styles pre {
1446
+ color: #42b72a;
1447
+ background: #f5f6f7;
1448
+ font-family: Menlo, Monaco, Andale Mono, Courier New, monospace;
1449
+ padding: 7px;
1450
+ /* display: none; */
1451
  }
1452
 
1453
  .seopress-styles #seopress-navbar {
1454
+ padding: 10px 0.5rem;
1455
+ height: 60px;
1456
+ margin: 0 auto;
1457
+ width: 64rem;
1458
+ box-sizing: border-box;
1459
+ position: relative;
1460
+ max-width: 100%;
1461
  }
1462
 
1463
  #seopress-header {
1464
+ margin: 0 auto;
1465
+ position: relative;
1466
+ width: 90%;
1467
+ padding: 1rem;
1468
  }
1469
 
1470
  #seopress-header #seopress-admin h1 {
1471
+ line-height: 40px;
1472
+ margin: 0;
1473
+ display: inline-block;
1474
+ height: 40px;
1475
+ width: 40px;
1476
+ background-size: 100%;
1477
+ background-repeat: no-repeat;
1478
  }
1479
 
1480
  #seopress-header #seopress-admin h1::before {
1481
+ font-size: 14px;
1482
+ line-height: 40px;
1483
+ position: absolute;
1484
+ border-radius: 6px;
1485
+ font-weight: 400;
1486
+ color: #fff;
1487
+ width: 40px;
1488
+ height: 40px;
1489
+ text-align: center;
1490
+ background: rgb(58, 74, 251);
1491
+ background: -moz-linear-gradient(
1492
+ 45deg,
1493
+ rgba(58, 74, 251, 1) 0%,
1494
+ rgba(71, 190, 165, 1) 100%
1495
+ );
1496
+ background: -webkit-linear-gradient(
1497
+ 45deg,
1498
+ rgba(58, 74, 251, 1) 0%,
1499
+ rgba(71, 190, 165, 1) 100%
1500
+ );
1501
+ background: linear-gradient(
1502
+ 45deg,
1503
+ rgba(58, 74, 251, 1) 0%,
1504
+ rgba(71, 190, 165, 1) 100%
1505
+ );
1506
+ filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#3a4afb', endColorstr='#47bea5',GradientType=1 );
1507
  }
1508
 
1509
  #seopress-header #seopress-admin h1:hover {
1510
+ cursor: pointer;
1511
  }
1512
 
1513
+ #seopress-header #seopress-admin h1 > a {
1514
+ text-decoration: none;
1515
+ color: inherit;
1516
  }
1517
 
1518
  #seopress-header #seopress-admin .seopress-quick-access {
1519
+ background: #fff;
1520
+ box-shadow: 0 50px 100px rgba(50, 50, 93, 0.1),
1521
+ 0 15px 35px rgba(50, 50, 93, 0.2), 0 5px 15px rgba(0, 0, 0, 0.1);
1522
+ border-radius: 4px;
1523
+ overflow: hidden;
1524
+ position: absolute;
1525
+ font-size: 17px;
1526
+ line-height: 40px;
1527
+ white-space: nowrap;
1528
+ transform: rotate3d(1, 1, 0, -15deg);
1529
+ transform-origin: 100% 0;
1530
+ opacity: 0;
1531
+ will-change: transform, opacity;
1532
+ transition-property: transform, opacity;
1533
+ transition-duration: 0.25s;
1534
+ z-index: 300;
1535
+ padding: 0;
1536
+ display: inline-block;
1537
+ width: 100%;
1538
+ top: 52px;
1539
+ visibility: hidden;
1540
+ cursor: auto;
1541
+ left: -0.5rem;
1542
  }
1543
 
1544
  #seopress-header #seopress-admin h1:hover .seopress-quick-access {
1545
+ transform: none;
1546
+ opacity: 1;
1547
+ pointer-events: auto;
1548
+ visibility: visible;
1549
  }
1550
 
1551
+ #seopress-header #seopress-admin .seopress-quick-access > ul {
1552
+ margin: 0;
1553
+ box-sizing: border-box;
1554
+ display: grid;
1555
+ grid-gap: 0px 10px;
1556
+ grid-template-columns: repeat(2, 1fr);
1557
+ padding: 20px;
1558
  }
1559
 
1560
  @media only screen and (max-width: 1024px) {
1561
+ #seopress-header #seopress-admin .seopress-quick-access > ul {
1562
+ grid-template-columns: repeat(1, 1fr);
1563
+ }
1564
  }
1565
 
1566
  #seopress-header #seopress-admin h1 .seopress-quick-access li {
1567
+ line-height: 40px;
1568
+ margin: 0;
1569
+ display: inline-block;
1570
+ height: 40px;
1571
+ background-size: 100%;
1572
+ background-repeat: no-repeat;
1573
  }
1574
 
1575
  #seopress-header #seopress-admin h1 .seopress-quick-access li .dashicons {
1576
+ vertical-align: middle;
1577
+ background: #b7e1f3;
1578
+ border-radius: 50%;
1579
+ padding: 5px;
1580
+ margin-right: 15px;
1581
  }
1582
 
1583
  #seopress-header #seopress-admin h1 .seopress-quick-access li a {
1584
+ text-decoration: none;
1585
+ font-size: 15px;
1586
+ line-height: 30px;
1587
+ text-transform: uppercase;
1588
+ display: block;
1589
+ width: 100%;
1590
+ transition: all 0.3s linear;
1591
+ color: #3297d3;
1592
  }
1593
 
1594
  #seopress-header #seopress-admin h1 .seopress-quick-access li a:hover {
1595
+ color: #647a88;
1596
  }
1597
 
1598
  #seopress-header #seopress-admin h1 .seopress-info-version {
1599
+ position: relative;
1600
+ left: 50px;
1601
+ top: 0;
1602
+ font-size: 14px;
1603
+ width: 100px;
1604
+ display: block;
1605
  }
1606
 
1607
  #seopress-header #seopress-admin .wpc-info-version {
1608
+ font-size: 14px;
1609
+ left: 310px;
1610
+ position: absolute;
1611
+ text-indent: 0;
1612
+ top: 85px;
1613
  }
1614
 
1615
  #seopress-header #seopress-notice {
1616
+ float: right;
1617
+ line-height: 40px;
1618
  }
1619
 
1620
  #seopress-header #seopress-notice p {
1621
+ font-size: 16px;
1622
  }
1623
 
1624
  #seopress-header #seopress-notice .dashicons {
1625
+ color: #6f8096;
1626
+ text-decoration: none;
1627
+ line-height: 40px;
1628
  }
1629
 
1630
  #seopress-header #seopress-notice div.small {
1631
+ font-size: 13px;
1632
+ display: inline;
1633
  }
1634
 
1635
  #seopress-footer-credits {
1636
+ font-style: italic;
1637
  }
1638
 
1639
  #seopress-footer-credits .wporg-ratings {
1640
+ display: inline;
1641
  }
1642
 
1643
  #seopress-footer-credits .wporg-ratings a {
1644
+ text-decoration: none;
1645
  }
1646
 
1647
  .seopress-option .seopress-settings {
1648
+ float: left;
1649
+ max-width: 750px;
1650
+ width: 100%;
1651
  }
1652
 
1653
+ .seopress-option #seopress-edd-license-btn,
1654
+ .seopress-option #seopress-refresh {
1655
+ float: left;
1656
  }
1657
 
1658
  .wp-admin-ui_page_seopress-import-export .postbox {
1659
+ margin-right: 20px;
1660
  }
1661
 
1662
  .seopress-option #side-sortables .accordion-section-content {
1663
+ padding: 0;
1664
  }
1665
 
1666
  .seopress-option .seopress-settings label {
1667
+ margin: 0 0 0 10px;
1668
  }
1669
 
1670
  .wrap-seopress-tab-content {
1671
+ position: relative;
1672
+ display: block;
1673
+ width: 100%;
1674
+ max-width: 64rem;
1675
+ margin: 0 auto;
1676
+ box-sizing: border-box;
1677
  }
1678
 
1679
  #seopress-admin-tabs .seopress-tab {
1680
+ padding: 1.5rem;
1681
+ visibility: hidden;
1682
+ overflow: hidden;
1683
+ opacity: 0;
1684
+ transition: all 0.2s ease;
1685
+ transform: translateX(-15px);
1686
+ position: absolute;
1687
+ top: 0;
1688
+ box-sizing: border-box;
1689
  }
1690
 
1691
  #seopress-admin-tabs .seopress-tab.active {
1692
+ visibility: visible;
1693
+ overflow: inherit;
1694
+ opacity: 1;
1695
+ transform: translateX(0);
1696
+ display: inherit;
1697
+ position: relative;
1698
  }
1699
 
1700
  #seopress-tabs .seopress-tab {
1701
+ padding: 0 1.5rem;
1702
+ width: calc(100% - 230px);
1703
+ display: none;
1704
  }
1705
 
1706
  @media only screen and (max-width: 1024px) {
1707
+ #seopress-tabs .seopress-tab {
1708
+ width: 100%;
1709
+ }
1710
+ }
1711
 
1712
  #seopress-tabs .seopress-tab.active {
1713
+ display: inline-block;
1714
+ border-left: 1px solid RGB(238, 238, 238);
1715
  }
1716
 
1717
  @media only screen and (max-width: 782px) {
1718
+ #seopress-tabs .seopress-tab.active {
1719
+ width: 100%;
1720
+ padding: 0;
1721
+ border-left: none;
1722
+ border-top: 1px solid RGB(238, 238, 238);
1723
+ }
1724
  }
1725
 
1726
+ .seopress-option input[type="text"],
1727
+ .seopress-option input[type="password"],
1728
+ .seopress-option textarea {
1729
+ min-width: 485px;
1730
  }
1731
 
1732
  @media only screen and (max-width: 1024px) {
1733
+ .seopress-option input[type="text"],
1734
+ .seopress-option input[type="password"],
1735
+ .seopress-option textarea {
1736
+ min-width: inherit;
1737
+ width: 100%;
1738
+ }
1739
  }
1740
 
1741
  #seopress_htaccess_file {
1742
+ width: 100%;
1743
  }
1744
 
1745
  .seopress-option textarea {
1746
+ min-height: 100px;
1747
  }
1748
 
1749
  .seopress-option #side-sortables .highlight {
1750
+ border: 1px dashed #ccc;
1751
+ display: block;
1752
+ width: 382px;
1753
+ height: 40px;
1754
+ background: 0 0;
1755
  }
1756
 
1757
  .seopress-option #side-sortables .accordion-section {
1758
+ margin-bottom: 9px;
1759
+ width: 382px;
1760
  }
1761
 
1762
  .seopress-option #side-sortables .accordion-section h3 {
1763
+ cursor: move;
1764
+ border: 1px solid #e5e5e5;
1765
+ background: #fafafa;
1766
  }
1767
 
1768
  .seopress-option #side-sortables .accordion-section .inside {
1769
+ padding: 10px 10px 24px;
1770
+ border-width: 0 1px 1px;
1771
+ border-style: solid;
1772
+ box-shadow: 0 1px 1px rgba(0, 0, 0, 0.04);
1773
+ border-color: #e5e5e5;
1774
+ display: inline-block;
1775
+ width: calc(100% - 22px);
1776
+ height: 100%;
1777
  }
1778
 
1779
  .seopress-option #side-sortables .accordion-section .inside ul {
1780
+ padding-left: 10px;
1781
+ margin-bottom: 0;
1782
+ padding-top: 2px;
1783
+ padding-bottom: 2px;
1784
  }
1785
 
1786
  .seopress-option #side-sortables .accordion-section .inside ul li {
1787
+ border-left: 2px solid #ccc;
1788
+ padding-left: 10px;
1789
+ margin-bottom: 10px;
1790
  }
1791
 
1792
  .seopress-option #side-sortables .accordion-section .inside ul li:first-child {
1793
+ border-bottom: 1px dotted #e5e5e5;
1794
+ border-left: 0;
1795
+ padding-bottom: 10px;
1796
+ font-weight: 700;
1797
+ margin-left: -15px;
1798
+ margin-bottom: 10px;
1799
  }
1800
 
1801
  .seopress-notice #message {
1802
+ margin: 5px 10px 2px 0;
1803
  }
1804
 
1805
  #seopress-notice a {
1806
+ position: relative;
1807
+ text-decoration: none;
1808
+ margin: 0 0 0 0.3rem;
1809
  }
1810
 
1811
  #seopress-notice a .tooltip {
1812
+ white-space: pre;
1813
+ z-index: 200;
1814
+ padding: 2px 5px;
1815
+ font-weight: 500;
1816
+ font-size: 12px;
1817
+ color: #aab7c4;
1818
+ background: #fff;
1819
+ box-shadow: 0 1px 2px 0 rgba(49, 49, 93, 0.1), 0 0 1px 0 rgba(0, 0, 0, 0.1);
1820
+ border-radius: 2px;
1821
+ position: absolute;
1822
+ opacity: 0;
1823
+ top: 30px;
1824
+ transition: opacity 0.2s ease;
1825
+ visibility: hidden;
1826
+ line-height: 20px;
1827
+ left: -100%;
1828
+ overflow: hidden;
1829
  }
1830
 
1831
  #seopress-notice a:hover .tooltip {
1832
+ opacity: 1;
1833
+ visibility: visible;
1834
  }
1835
 
1836
  .seopress-page-list {
1837
+ margin: 1.5rem auto;
1838
  }
1839
 
1840
+ .seopress-option .dashicons,
1841
+ .seopress-page-list .dashicons {
1842
+ vertical-align: middle;
1843
+ margin-right: 5px;
1844
+ color: #6f8096;
1845
  }
1846
 
1847
+ #seopress-admin-tabs .ui-tabs-nav,
1848
+ #seopress-notifications-center,
1849
+ .seopress-page-list .seopress-feature,
1850
+ .seopress-useful-tools,
1851
  .seopress-get-started {
1852
+ margin: 0 auto 20px;
1853
+ max-width: 64rem;
1854
+ padding: 2rem;
1855
+ width: 100%;
1856
+ border-radius: 0 0 4px 4px;
1857
+ box-sizing: border-box;
1858
  }
1859
 
1860
  .seopress-get-started {
1861
+ margin-top: 20px;
1862
+ background: #fff url(../img/bg-hero-support.svg) no-repeat 95% 50% / contain;
1863
+ position: relative;
1864
+ box-sizing: border-box;
1865
+ box-shadow: 0 7px 14px 0 rgba(60, 66, 87, 0.12),
1866
+ 0 3px 6px 0 rgba(0, 0, 0, 0.12);
1867
  }
1868
 
1869
  .seopress-get-started .inside {
1870
+ max-width: calc(100% - 380px);
1871
  }
1872
 
1873
  @media only screen and (max-width: 782px) {
1874
+ .seopress-get-started {
1875
+ background: #fff;
1876
+ }
1877
+ .seopress-get-started .inside {
1878
+ max-width: 100%;
1879
+ }
1880
  }
1881
 
1882
  .seopress-get-started .preheader {
1883
+ text-transform: uppercase;
1884
+ font-size: 0.8rem;
1885
+ font-weight: 600;
1886
  }
1887
 
1888
  .seopress-get-started h2 {
1889
+ font-size: 1.85em;
1890
+ margin: 15px 0 0 0;
1891
+ font-weight: normal;
1892
  }
1893
 
1894
  .seopress-get-started p {
1895
+ margin-bottom: 20px;
1896
  }
1897
 
1898
  .seopress-get-started a .dashicons {
1899
+ vertical-align: middle;
1900
+ text-decoration: none;
1901
+ color: #6a7c94;
1902
  }
1903
 
1904
  .seopress-get-started a.button-primary .dashicons {
1905
+ color: #fff;
1906
  }
1907
 
1908
  .seopress-get-started a.btn-link .dashicons {
1909
+ margin-right: 5px;
1910
  }
1911
 
1912
  .seopress-get-started a.btn-link {
1913
+ margin: 0 0 0 10px;
1914
  }
1915
 
1916
+ #seopress-notifications-center,
1917
+ .seopress-useful-tools {
1918
+ background: #fff;
1919
+ padding: 0;
1920
  }
1921
 
1922
  .seopress-page-list .seopress-feature {
1923
+ padding: 0;
1924
+ position: relative;
1925
+ overflow: hidden;
1926
+ transition-duration: 0.15s;
1927
+ display: flex;
1928
+ margin: 0;
1929
+ background: #fff;
1930
+ box-shadow: 0 7px 14px 0 rgba(60, 66, 87, 0.12),
1931
+ 0 3px 6px 0 rgba(0, 0, 0, 0.12);
1932
+ flex-wrap: wrap;
1933
+ border-radius: 4px;
1934
+ width: 100%;
1935
+ height: 100%;
1936
  }
1937
 
1938
  .seopress-page-list .seopress-feature p {
1939
+ color: #6b7c93;
1940
+ font-size: 14px;
1941
+ margin-bottom: 30px;
1942
  }
1943
 
1944
  #seopress-notifications-center {
1945
+ margin-top: 0;
1946
  }
1947
 
1948
  #seopress-admin-tabs .ui-tabs-nav {
1949
+ display: flex;
1950
+ padding-top: 1rem;
1951
+ padding-bottom: 0;
1952
  }
1953
 
1954
  .seopress-page-list .seopress-feature .img-tool {
1955
+ height: 50px;
1956
+ width: 50px;
1957
+ background: #c4f0ff;
1958
+ position: relative;
1959
+ border-radius: 6px;
1960
  }
1961
 
1962
  .seopress-page-list .seopress-feature .img-tool .dashicons {
1963
+ color: #217ab7;
1964
+ font-size: 30px;
1965
+ text-align: left;
1966
+ vertical-align: middle;
1967
+ width: 100%;
1968
+ height: 100%;
1969
+ position: absolute;
1970
+ top: calc(50% - 15px);
1971
+ left: calc(50% - 15px);
1972
+ margin: 0;
1973
  }
1974
 
1975
  .seopress-page-list .seopress-feature .inner {
1976
+ margin: 0;
1977
+ display: inline-block;
1978
+ padding: 1.5rem;
1979
+ width: 100%;
1980
+ height: 100%;
1981
+ box-sizing: border-box;
1982
  }
1983
 
1984
  .seopress-page-list .seopress-feature h3 {
1985
+ margin: 1rem 0 0 0;
1986
+ font-size: 16px;
1987
+ font-weight: 700;
1988
+ color: #3297d3;
1989
+ text-transform: uppercase;
1990
  }
1991
 
1992
  .seopress-page-list .seopress-feature h3 .dashicons {
1993
+ font-size: 16px;
1994
+ margin-left: 5px;
1995
+ vertical-align: middle;
1996
  }
1997
 
1998
  #seopress-content .seopress-page-list .seopress-feature a,
2000
  .seopress-option .seopress-feature a,
2001
  .seopress-useful-tools .widget .button-primary,
2002
  .seopress-get-started .button-primary {
2003
+ color: #fff;
2004
+ text-decoration: none;
2005
+ border: none;
2006
+ border-radius: 4px;
2007
+ padding-right: 20px;
2008
+ padding-left: 20px;
2009
+ line-height: 34px;
2010
+ text-transform: uppercase;
2011
+ min-height: 34px;
2012
+ transition: all 0.3s linear;
2013
+ text-shadow: none;
2014
+ box-shadow: 0 7px 14px rgba(50, 50, 93, 0.1), 0 3px 6px rgba(0, 0, 0, 0.1);
2015
+ background: #6a7c94;
2016
+ position: relative;
2017
+ height: auto;
2018
+ display: flex;
2019
+ flex-wrap: wrap;
2020
  }
2021
 
2022
  #seopress-content .seopress-page-list .seopress-feature a.button-secondary {
2023
+ padding-left: 30px;
2024
  }
2025
 
2026
+ #seopress-content
2027
+ .seopress-page-list
2028
+ .seopress-feature
2029
+ a.button-secondary::before,
2030
+ #seopress-notifications-center .seopress-alert .button-primary::after {
2031
+ content: "\f111";
2032
+ font-family: "Dashicons";
2033
+ position: absolute;
2034
+ left: 10px;
2035
+ top: 1px;
2036
+ -moz-osx-font-smoothing: grayscale;
2037
+ -webkit-font-smoothing: antialiased;
2038
+ font-size: 16px;
2039
  }
2040
 
2041
+ #seopress-content .seopress-page-list .wrap-btn {
2042
+ display: inline-flex;
2043
+ margin-bottom: 2rem;
2044
+ flex-direction: column;
2045
+ }
2046
 
2047
  #seopress-content .seopress-page-list .seopress-feature a.view-redirects,
2048
  #seopress-notifications-center .seopress-alert .button-primary,
2049
  .seopress-option .button,
2050
  .seopress-get-started .button {
2051
+ color: rgb(106, 124, 148);
2052
+ background: #ffffff;
2053
+ font-weight: 500;
2054
+ transition: all 0.3s linear;
2055
+ text-shadow: none;
2056
+ text-transform: uppercase;
2057
+ padding-right: 20px;
2058
+ padding-left: 20px;
2059
+ line-height: 34px;
2060
+ min-height: 34px;
2061
+ margin: 10px 0;
2062
+ border-radius: 4px;
2063
+ box-shadow: rgba(0, 0, 0, 0) 0px 0px 0px 0px,
2064
+ rgba(0, 0, 0, 0) 0px 0px 0px 0px, rgba(0, 0, 0, 0.12) 0px 1px 1px 0px,
2065
+ rgba(60, 66, 87, 0.16) 0px 0px 0px 1px, rgba(0, 0, 0, 0) 0px 0px 0px 0px,
2066
+ rgba(0, 0, 0, 0) 0px 0px 0px 0px, rgba(60, 66, 87, 0.12) 0px 2px 5px 0px;
2067
+ vertical-align: baseline;
2068
+ display: inline-flex;
2069
+ align-items: center;
2070
+ border: none;
2071
+ margin-right: 0.5rem;
2072
+ cursor: pointer;
2073
  }
2074
 
2075
  .seopress-get-started .button {
2076
+ color: #ffffff;
2077
+ background: #6259e6;
2078
+ box-shadow: none;
2079
  }
2080
 
2081
  .seopress-option .wp-picker-container button {
2082
+ box-shadow: none;
2083
+ border: 1px solid #0071a1;
2084
+ border-radius: 3px;
2085
+ background: rgb(243, 245, 246);
2086
+ text-transform: none;
2087
  }
2088
 
2089
+ .seopress-option .wp-picker-container input[type="text"].wp-color-picker {
2090
+ min-width: inherit;
2091
  }
2092
 
2093
  .seopress-option .wp-picker-container .wp-picker-default {
2094
+ margin: 0;
2095
  }
2096
 
2097
  .seopress-option .wp-picker-container .wp-picker-clear {
2098
+ box-shadow: none;
2099
+ text-transform: none;
2100
+ border-radius: 0;
2101
+ background: none;
2102
+ margin: 0;
2103
  }
2104
 
2105
  .seopress-option .wp-picker-container .wp-picker-clear:hover {
2106
+ background: none;
2107
+ text-decoration: currentColor;
2108
+ color: inherit;
2109
  }
2110
 
2111
  .seopress-option .button .dashicons {
2112
+ font-size: 16px;
2113
+ align-items: center;
2114
+ display: flex;
2115
  }
2116
 
2117
  #seopress-content .seopress-page-list .seopress-feature a.view-redirects {
2118
+ padding-left: 30px;
2119
  }
2120
 
2121
  #seopress-notifications-center .seopress-alert .button-primary::after {
2122
+ content: "\f344";
2123
+ left: inherit;
2124
+ right: 10px;
2125
  }
2126
 
2127
+ #seopress-content
2128
+ .seopress-page-list
2129
+ .seopress-feature
2130
+ a.view-redirects::before {
2131
+ content: "\f177";
2132
  }
2133
 
2134
  #seopress-content .seopress-page-list .seopress-feature a:hover,
2137
  .seopress-option .seopress-feature a:hover,
2138
  .seopress-useful-tools .widget .button-primary:hover,
2139
  .seopress-get-started .button-primary:hover {
2140
+ text-decoration: none;
2141
+ color: #fff;
2142
+ background: #232323;
2143
  }
2144
 
2145
  .seopress-get-started .button .dashicons {
2146
+ transition: all 300ms linear;
2147
  }
2148
 
2149
  .seopress-get-started .button:hover .dashicons {
2150
+ color: #fff;
2151
  }
2152
 
2153
+ #seopress-content .seopress-page-list .seopress-feature .seopress-doc:focus,
2154
+ #seopress-content .seopress-page-list .seopress-feature a:focus,
2155
+ #seopress-content
2156
+ .seopress-page-list
2157
+ .seopress-feature
2158
+ a:focus.button-secondary,
2159
+ #seopress-content a:focus,
2160
+ #seopress-notifications-center .seopress-alert .button-primary:focus,
2161
+ .seopress-option #seopress-tabs .seopress-doc:focus,
2162
+ .seopress-option .seopress-feature a:focus,
2163
+ .seopress-styles .seopress-option #seopress-yoast-migrate:focus,
2164
+ .seopress-styles .seopress-option #seopress-aio-migrate:focus,
2165
+ .seopress-styles .seopress-option #submit:focus,
2166
+ .seopress-useful-tools .widget .button-primary:focus {
2167
+ box-shadow: 0 1px 0 #0073aa, 0 0 2px 1px #33b3db;
2168
+ background: #008ec2;
2169
+ border-color: #006799;
2170
+ color: #fff;
2171
  }
2172
 
2173
  #seopress-admin-tabs .nav-tab-wrapper a.nav-tab-active:focus {
2174
+ color: inherit;
2175
  }
2176
 
2177
  #seopress-notifications-center .seopress-alert .button-primary {
2178
+ margin: 5px 0;
2179
+ padding-right: 30px;
2180
  }
2181
 
2182
+ #seopress-notifications-center h2,
2183
+ .seopress-useful-tools h2 {
2184
+ margin: 5px 0 15px 5px;
2185
+ display: inline-block;
2186
+ width: 100%;
2187
  }
2188
 
2189
+ #seopress-notifications-center .dashicons,
2190
+ .seopress-useful-tools .dashicons {
2191
+ margin-right: 10px;
2192
  }
2193
 
2194
  #seopress-notifications-center .seopress-alert {
2195
+ padding: 1.5rem 2rem 1.2rem 1rem;
2196
+ border-bottom: 1px solid #e6ebf1;
2197
+ width: calc(100% - 3rem);
2198
+ flex: 1 1 auto;
2199
+ position: relative;
2200
+ transition: all 150ms ease;
2201
+ align-items: center;
2202
+ display: flex;
2203
+ justify-content: space-between;
2204
  }
2205
 
2206
  #seopress-notifications-center .seopress-alert:last-child {
2207
+ margin-bottom: 0;
2208
+ border-bottom: none;
2209
  }
2210
 
2211
  #seopress-notifications-center .seopress-alert:hover {
2212
+ cursor: default;
2213
  }
2214
 
2215
  #seopress-notifications-center .dashicons {
2216
+ display: flex;
2217
+ align-self: normal;
2218
+ width: 48px;
2219
+ height: 48px;
2220
+ color: #d7dade;
2221
+ font-size: 48px;
2222
+ padding: 0 1rem;
2223
  }
2224
 
2225
  #seopress-notifications-center .seopress-alert p {
2226
+ margin: 0;
2227
  }
2228
 
2229
  #seopress-notifications-center .notice-left {
2230
+ flex: 1;
2231
  }
2232
 
2233
  #seopress-notifications-center .notice-left > p:first-child {
2234
+ color: #1a1f36;
2235
+ font-weight: 500;
2236
  }
2237
 
2238
  #seopress-notifications-center .notice-right {
2239
+ padding: 1rem 0 0 0;
2240
+ display: flex;
2241
  }
2242
 
2243
  #seopress-notifications-center .seopress-alert.impact::after {
2244
+ content: "";
2245
+ width: 10px;
2246
+ height: 10px;
2247
+ border-radius: 50px;
2248
+ position: absolute;
2249
+ right: 1rem;
2250
+ top: 1rem;
2251
  }
2252
 
2253
  #seopress-notifications-center .seopress-alert.impact.low::after {
2254
+ background: #ffde24;
2255
  }
2256
 
2257
  #seopress-notifications-center .seopress-alert.impact.medium::after {
2258
+ background: #e39f48;
2259
  }
2260
 
2261
  #seopress-notifications-center .seopress-alert.impact.high::after {
2262
+ background: #e25950;
2263
  }
2264
 
2265
  #seopress-notifications-center .seopress-alert.impact.info::after {
2266
+ background: #0085ba;
2267
  }
2268
 
2269
  #seopress-notifications-center .seopress-alert.dashicons {
2270
+ color: #6f8096;
2271
  }
2272
 
2273
  #seopress-notifications-center .dashicons.remove-notice,
2274
  .seopress-get-started .remove-notice {
2275
+ position: absolute;
2276
+ right: 0rem;
2277
+ color: #6b7c93;
2278
+ font-size: 20px;
2279
+ height: 30px;
2280
+ width: 30px;
2281
+ vertical-align: middle;
2282
+ top: 1.2rem;
2283
+ line-height: 30px;
2284
+ padding: 5px;
2285
+ transition: all 0.3s linear;
2286
+ margin: 0;
2287
+ display: block;
2288
  }
2289
 
2290
  .seopress-get-started .remove-notice {
2291
+ top: 10px;
2292
+ right: 10px;
2293
  }
2294
 
2295
  #seopress-notifications-center .dashicons.remove-notice:hover,
2296
  .seopress-get-started .remove-notice:hover {
2297
+ color: #1a1f36;
2298
+ cursor: pointer;
2299
+ }
2300
+
2301
+ #seopress-content .seopress-page-list .seopress-feature .seopress-doc,
2302
+ .seopress-option #seopress-tabs .seopress-doc {
2303
+ background: 0 0;
2304
+ padding: 0;
2305
+ text-decoration: none;
2306
+ color: inherit;
2307
+ box-shadow: none;
2308
+ position: absolute;
2309
+ right: 0.5rem;
2310
+ top: 1rem;
2311
+ }
2312
+
2313
+ #seopress-content .seopress-page-list .seopress-feature .seopress-doc:hover,
2314
+ .seopress-option #seopress-tabs .seopress-doc:hover,
2315
+ #seopress-content .seopress-page-list .seopress-feature .seopress-doc:active,
2316
+ .seopress-option #seopress-tabs .seopress-doc:active,
2317
+ #seopress-content .seopress-page-list .seopress-feature .seopress-doc:focus,
2318
+ .seopress-option #seopress-tabs .seopress-doc:focus {
2319
+ color: #747474;
2320
+ background: 0 0;
2321
+ box-shadow: none;
2322
+ border: none;
2323
+ }
2324
+
2325
+ #seopress-content
2326
+ .seopress-page-list
2327
+ .seopress-feature
2328
+ .seopress-doc:hover
2329
+ .dashicons {
2330
+ color: #232323;
2331
  }
2332
 
2333
  .seopress-option .seopress-table {
2334
+ background: #fff;
2335
+ border: 1px solid #ccc;
2336
  }
2337
 
2338
  .seopress-option .seopress-table th {
2339
+ padding: 15px 10px;
2340
+ vertical-align: middle;
2341
  }
2342
 
2343
  .wp-admin-ui_page_seopress-roles .seopress-option .seopress-table th {
2344
+ min-width: 200px;
2345
  }
2346
 
2347
  .seopress-option .seopress-table .seopress-settings-section {
2348
+ background: #f1f1f1;
2349
  }
2350
 
2351
  .seopress-option .seopress-table .seopress-table-head .seopress-feature {
2352
+ border-bottom: 1px solid #ccc;
2353
+ font-weight: 700;
2354
+ background: #f1f1f1;
2355
  }
2356
 
2357
+ #seopress-content .feature-state,
2358
+ .seopress-option .feature-state {
2359
+ font-style: italic;
2360
+ font-size: 10px;
2361
+ display: inline-block;
2362
+ background: rgba(0, 140, 135, 0.1);
2363
+ padding: 2px 10px;
2364
+ border-radius: 25px;
2365
+ color: #444;
2366
+ font-weight: 400;
2367
+ text-transform: none;
2368
+ -moz-osx-font-smoothing: initial;
2369
+ -webkit-font-smoothing: initial;
2370
  }
2371
 
2372
  @media only screen and (max-width: 782px) {
2373
+ #seopress-content .feature-state,
2374
+ .seopress-option .feature-state {
2375
+ display: none;
2376
+ }
2377
  }
2378
 
 
2379
  .seopress-option .seopress_wrap_single_cpt .feature-state,
2380
  .seopress-option .seopress_wrap_tax .feature-state {
2381
+ padding: 2px 12px;
2382
+ margin: 0 0 0.5rem 0.5rem;
2383
  }
2384
 
2385
  .seopress-option #tab_seopress_titles_single h2,
2386
  .seopress-option #tab_seopress_titles_archives h2,
2387
  .seopress-option #tab_seopress_titles_tax h2 {
2388
+ margin: 2em 0 1em 0;
2389
+ border-top: 1px solid #eee;
2390
+ padding: 1em 0 0 0;
2391
  }
2392
 
2393
  .seopress-option #tab_seopress_titles_single h2:first-child,
2394
  .seopress-option #tab_seopress_titles_archives h2:first-child,
2395
  .seopress-option #tab_seopress_titles_tax h2:first-child {
2396
+ border-top: none;
2397
+ margin: 0 0 1em 0;
2398
  }
2399
 
2400
  #seopress_cpt .tag-title,
2402
  .seopress-option .tag-title,
2403
  #seopress_pro_cpt .tag-title,
2404
  #seopress_cpt .seopress-tag-dropdown {
2405
+ cursor: pointer;
2406
+ font-weight: 500;
2407
+ border-radius: 4px;
2408
+ transition: all 0.3s linear;
2409
  }
2410
 
2411
+ #seopress-content .feature-state-on,
2412
+ #seopress-content .feature-state.feature-state-on,
2413
+ .seopress-option .feature-state-on,
2414
+ .seopress-option .feature-state.feature-state-on {
2415
+ display: inline-block;
2416
  }
2417
 
2418
+ #seopress-content .feature-state-off,
2419
+ .seopress-option .feature-state-off {
2420
+ display: none;
2421
  }
2422
 
2423
  .seopress-option .postbox .inside li {
2424
+ list-style: square inside;
2425
+ padding-left: 5px;
2426
  }
2427
 
2428
  #tab_seopress_page_speed .inside li {
2429
+ list-style: none;
2430
+ padding-left: 0;
2431
+ word-break: break-word;
2432
  }
2433
 
2434
  .seopress-option .log {
2435
+ margin: 0;
2436
+ text-transform: uppercase;
2437
+ display: inline-block;
2438
+ vertical-align: middle;
2439
+ padding: 5px;
2440
+ color: rgba(19, 191, 17, 1);
2441
+ font-style: italic;
2442
  }
2443
 
2444
+ .seopress-option input[type="text"].seopress-admin-menu-input {
2445
+ min-width: inherit;
2446
+ width: 100%;
2447
  }
2448
 
2449
  .seopress_page_seopress-import-export .postbox {
2450
+ width: calc(100% - 20px);
2451
+ }
2452
+
2453
+ #seopress_cpt .wrap-tags,
2454
+ .seopress-option .wrap-tags,
2455
+ #seopress_pro_cpt .wrap-tags {
2456
+ position: relative;
2457
+ display: inline-block;
2458
+ width: 100%;
2459
+ margin-bottom: 10px;
2460
+ }
2461
+
2462
+ #seopress_cpt .sp-wrap-tag-variables-list,
2463
+ #seopress_pro_cpt .sp-wrap-tag-variables-list {
2464
+ position: relative;
2465
+ float: left;
2466
+ display: none;
2467
+ }
2468
+
2469
+ #seopress_cpt .sp-tag-variables-list,
2470
+ #seopress_pro_cpt .sp-tag-variables-list {
2471
+ background: #fff;
2472
+ position: absolute;
2473
+ left: -42px;
2474
+ width: 300px;
2475
+ border-radius: 4px;
2476
+ z-index: 100;
2477
+ top: 20px;
2478
+ color: #6b7c93;
2479
+ box-shadow: 0 0 0 0.5px rgba(50, 50, 93, 0.17),
2480
+ 0 2px 5px 0 rgba(50, 50, 93, 0.12), 0 3px 9px 0 rgba(50, 50, 93, 0.08),
2481
+ 0 1px 1.5px 0 rgba(0, 0, 0, 0.08), 0 1px 2px 0 rgba(0, 0, 0, 0.08);
2482
+ height: 300px;
2483
+ z-index: 100;
2484
+ overflow: auto;
2485
  }
2486
 
2487
  #seopress_cpt #seopress_titles_title_meta {
2488
+ margin-bottom: 0.2rem;
2489
  }
2490
 
2491
+ #seopress_cpt .sp-wrap-tag-variables-list.open,
2492
+ #seopress_pro_cpt .sp-wrap-tag-variables-list.open {
2493
+ display: block;
2494
  }
2495
 
2496
  #seopress_cpt .seopress-tag-single-all.tag-title .dashicons,
2497
  #seopress_cpt .seopress-tag-single-all.seopress-tag-dropdown .dashicons,
2498
  #seopress_pro_cpt .seopress-tag-single-all.tag-title .dashicons {
2499
+ margin: 0;
2500
+ transition: all 150ms linear;
2501
  }
2502
 
2503
+ #seopress_cpt .seopress-tag-single-all.open .dashicons,
2504
+ #seopress_pro_cpt .seopress-tag-single-all.open .dashicons {
2505
+ transform: rotateX(180deg);
2506
  }
2507
 
2508
+ #seopress_cpt .sp-tag-variables-list li,
2509
+ #seopress_pro_cpt .sp-tag-variables-list li {
2510
+ padding: 8px 12px;
2511
+ cursor: pointer;
2512
+ margin: 0;
2513
+ border-bottom: 1px solid #f0f0f0;
2514
  }
2515
 
2516
+ #seopress_cpt .sp-tag-variables-list li span,
2517
+ #seopress_pro_cpt .sp-tag-variables-list li span {
2518
+ display: block;
2519
+ font-weight: bold;
2520
+ font-size: 12px;
2521
+ margin-bottom: 2px;
2522
  }
2523
 
2524
+ #seopress_cpt .sp-tag-variables-list li:hover,
2525
+ #seopress_pro_cpt .sp-tag-variables-list li:hover {
2526
+ background: #0385ba;
2527
+ color: #fff;
2528
  }
2529
 
2530
+ #seopress_cpt .sp-tag-variables-list li::after,
2531
+ #seopress_pro_cpt .sp-tag-variables-list li::after {
2532
+ content: attr(data-value);
2533
+ display: inline-block;
2534
+ background: #e9ecef;
2535
+ padding: 1px 5px;
2536
+ color: #333;
2537
+ font-family: Menlo, Monaco, Andale Mono, Courier New, monospace;
2538
+ border-radius: 3px;
2539
+ font-size: 11px;
2540
  }
2541
 
2542
  #seopress_cpt .tag-title .dashicons,
2543
+ .seopress-option .tag-title .dashicons,
2544
  #seopress_pro_cpt .tag-title .dashicons,
2545
  #seopress_cpt .seopress-tag-dropdown .dashicons {
2546
+ padding: 0;
2547
+ height: 16px;
2548
+ width: 16px;
2549
+ font-size: 16px;
2550
+ margin-right: 5px;
2551
+ vertical-align: middle;
2552
  }
2553
 
2554
  .seopress-overlay-tag-dropdown {
2555
+ position: absolute;
2556
+ display: none;
2557
 
2558
+ top: 0;
2559
+ left: 0;
2560
+ width: 100%;
2561
+ height: 100%;
2562
+ z-index: 50;
2563
  }
2564
 
2565
+ .seopress-overlay-tag-dropdown.active {
2566
+ display: block;
2567
  }
2568
 
2569
  #seopress_cpt .tag-title,
2570
  .seopress-option .tag-title,
2571
  #seopress_pro_cpt .tag-title,
2572
  #seopress_cpt .seopress-tag-dropdown {
2573
+ padding: 4px 8px;
2574
+ position: relative;
2575
+ top: 5px;
2576
+ left: 0;
2577
+ font-size: 11px;
2578
+ float: left;
2579
+ margin-right: 5px;
2580
+ user-select: none;
2581
+ margin-bottom: 5px;
2582
+ background: #fff;
2583
+ color: #6b7c93;
2584
+ box-shadow: 0 0 0 0.5px rgba(50, 50, 93, 0.17),
2585
+ 0 2px 5px 0 rgba(50, 50, 93, 0.12), 0 3px 9px 0 rgba(50, 50, 93, 0.08),
2586
+ 0 1px 1.5px 0 rgba(0, 0, 0, 0.08), 0 1px 2px 0 rgba(0, 0, 0, 0.08);
2587
+ }
2588
+
2589
+ #seopress_pro_cpt .tag-title:active,
2590
+ #seopress_pro_cpt .tag-title:focus,
2591
+ #seopress_pro_cpt .tag-title:hover,
2592
+ #seopress_cpt .tag-title:active,
2593
+ #seopress_cpt .tag-title:focus,
2594
+ #seopress_cpt .tag-title:hover,
2595
+ .seopress-tag-dropdown:active,
2596
+ .seopress-tag-dropdown:focus,
2597
+ .seopress-tag-dropdown:hover,
2598
+ #seopress_cpt .seopress-tag-dropdown .tag-title:active,
2599
+ #seopress_cpt-option .seopress-tag-dropdown .tag-title:focus,
2600
+ #seopress_cpt-option .seopress-tag-dropdown .tag-title:hover {
2601
+ background: #232323;
2602
+ color: #fff;
2603
+ user-select: none;
2604
  }
2605
 
 
 
2606
  .seopress-button {
2607
+ text-transform: uppercase;
2608
+ background: #fff;
2609
+ border-color: #c8d7e1;
2610
+ border-style: solid;
2611
+ border-width: 1px 1px 2px;
2612
+ color: #2e4453;
2613
+ display: inline-block;
2614
+ margin: 0;
2615
+ outline: 0;
2616
+ overflow: hidden;
2617
+ text-overflow: ellipsis;
2618
+ text-decoration: none;
2619
+ vertical-align: top;
2620
+ box-sizing: border-box;
2621
+ font-size: 14px;
2622
+ line-height: 20px;
2623
+ padding: 6px 8px 6px;
2624
+ -webkit-appearance: none;
2625
+ -moz-appearance: none;
2626
+ appearance: none;
2627
  }
2628
 
2629
  .seopress-button:hover {
2630
+ border-color: #a8bece;
2631
+ color: #00a0d2;
2632
  }
2633
 
2634
  .seopress-button .dashicons {
2635
+ vertical-align: middle;
2636
  }
2637
 
2638
  #seopress-content #tab_seopress_seo_tools.seopress-useful-tools .widget {
2639
+ border-right: 1px solid #e6ebf1;
2640
+ margin: 0;
2641
+ padding: 0 20px;
2642
+ width: calc(50% - 2px);
2643
+ box-sizing: border-box;
2644
+ display: inline-block;
2645
+ vertical-align: top;
2646
+ }
2647
+
2648
+ #seopress-content
2649
+ #tab_seopress_seo_tools.seopress-useful-tools
2650
+ .widget:first-child {
2651
+ width: 100%;
2652
+ display: block;
2653
+ clear: both;
2654
+ border-right: none;
2655
+ border-bottom: 1px solid #e6ebf1;
2656
+ padding-bottom: 20px;
2657
+ margin-bottom: 20px;
2658
  }
2659
 
2660
+ #seopress-content
2661
+ #tab_seopress_seo_tools.seopress-useful-tools
2662
+ .widget:last-child {
2663
+ border-right: none;
2664
  }
2665
 
2666
  #seopress-content .seopress-useful-tools .widget-reverse ul {
2667
+ background: #fff;
2668
  }
2669
 
2670
  #seopress-content .seopress-useful-tools .widget-reverse li {
2671
+ padding: 10px;
2672
+ margin: 0;
2673
+ border-bottom: 1px solid #e6ebf1;
2674
  }
2675
 
2676
  #seopress-content .seopress-useful-tools .widget-reverse li:hover {
2677
+ background: #f5f7fa;
2678
  }
2679
 
2680
  #seopress-content .seopress-useful-tools .widget-title {
2681
+ text-transform: uppercase;
2682
+ margin: 0 0 10px;
2683
+ font-size: 13px;
2684
+ padding: 10px 0;
2685
+ color: #24b47e;
2686
  }
2687
 
2688
+ #seopress-content .seopress-reverse label,
2689
+ #seopress-content .seopress-useful-tools .widget-whois ul li span {
2690
+ font-weight: 700;
2691
  }
2692
 
2693
  #seopress-content #seopress-reverse-url {
2694
+ width: 100%;
2695
+ margin: 10px 0;
2696
  }
2697
 
2698
  #seopress-content .widget-reverse p {
2699
+ margin: 0;
2700
  }
2701
 
2702
  .post-type-seopress_backlinks .wp-list-table .column-seopress_backlinks_url {
2703
+ width: 35%;
2704
  }
2705
 
2706
+ .post-type-seopress_backlinks
2707
+ .wp-list-table
2708
+ .column-seopress_backlinks_anchor_text {
2709
+ width: 20%;
2710
  }
2711
 
2712
  .seopress-styles #screen-meta {
2713
+ margin: 0;
2714
+ position: relative;
2715
+ background-color: #fff;
2716
+ border-bottom: 0 solid #f2f2f2;
2717
+ border-top: none;
2718
+ -webkit-box-shadow: 0 0 0 1px rgba(136, 152, 170, 0.1),
2719
+ 0 15px 35px 0 rgba(49, 49, 93, 0.1), 0 5px 15px 0 rgba(0, 0, 0, 0.08);
2720
+ box-shadow: 0 0 0 1px rgba(136, 152, 170, 0.1),
2721
+ 0 15px 35px 0 rgba(49, 49, 93, 0.1), 0 5px 15px 0 rgba(0, 0, 0, 0.08);
2722
+ top: 0;
2723
+ }
2724
+
2725
+ .seopress-styles #contextual-help-link-wrap,
2726
+ .seopress-styles #screen-options-link-wrap {
2727
+ float: right;
2728
+ height: 28px;
2729
+ margin: 0 0 0 6px;
2730
+ border: 1px solid #f2f2f2;
2731
+ border-top: none;
2732
+ background: #fff;
2733
+ -webkit-box-shadow: 0 0 0 1px rgba(136, 152, 170, 0.1),
2734
+ 0 15px 35px 0 rgba(49, 49, 93, 0.1), 0 5px 15px 0 rgba(0, 0, 0, 0.08);
2735
+ box-shadow: 0 0 0 1px rgba(136, 152, 170, 0.1),
2736
+ 0 15px 35px 0 rgba(49, 49, 93, 0.1), 0 5px 15px 0 rgba(0, 0, 0, 0.08);
2737
  }
2738
 
2739
  .seopress-styles #screen-meta-links .show-settings {
2740
+ box-shadow: none;
2741
  }
2742
 
2743
  .seopress-styles #screen-meta-links .screen-meta-toggle {
2744
+ position: relative;
2745
+ top: 0;
2746
+ z-index: 2000;
2747
  }
2748
 
2749
  .seopress-styles #contextual-help-back {
2750
+ background: #f8fafd;
2751
  }
2752
 
2753
  .seopress-styles .contextual-help-tabs .active {
2754
+ border-left: 2px solid #3297d3;
2755
+ background: #f8fafd;
2756
  }
2757
 
2758
+ #seopress-content input.toggle,
2759
+ .seopress-option input.toggle,
2760
+ #seopress_cpt input.toggle {
2761
+ max-height: 0;
2762
+ max-width: 0;
2763
+ opacity: 0;
2764
+ position: relative;
2765
  }
2766
 
2767
  .seopress-feature input.toggle {
2768
+ display: block;
2769
  }
2770
 
2771
  .wrap-toggle-preview {
2772
+ position: relative;
2773
  }
2774
 
2775
  .wrap-toggle-preview p {
2776
+ font-weight: bold;
2777
+ margin: 0 0 1rem 0;
2778
  }
2779
 
2780
  .seopress_wrap_single_cpt input.toggle,
2781
  .seopress_wrap_tax input.toggle,
2782
  #seopress_cpt input.toggle {
2783
+ margin: 0;
2784
+ border: none;
2785
+ min-width: 0;
2786
  }
2787
  #seopress_cpt span.label,
2788
  #seopress_content_analysis span.label {
2789
+ outline: none;
2790
+ color: #fff;
2791
+ box-shadow: none;
2792
+ background: #555d66;
2793
+ padding: 2px 4px;
2794
+ border-radius: 4px;
2795
+ font-weight: bold;
2796
  }
2797
 
2798
  #seopress_add_to_insights {
2799
+ margin-left: 1rem;
2800
  }
2801
 
2802
  #seopress_add_to_insights_status {
2803
+ display: inline-block;
2804
+ font-weight: bold;
2805
+ margin: 0 0 0 1rem;
2806
+ vertical-align: middle;
2807
+ padding: 0.3rem;
2808
+ font-style: italic;
 
 
 
 
 
 
 
 
 
 
2809
  }
2810
 
2811
+ #seopress-content input.toggle + label,
2812
+ .seopress-option input.toggle + label,
2813
+ #seopress_cpt #tabs-1 input.toggle + label {
2814
+ display: inline-block;
2815
+ position: relative;
2816
+ box-shadow: inset 0 0 0 1px #d5d5d5;
2817
+ text-indent: -5000px;
2818
+ height: 20px;
2819
+ width: 40px;
2820
+ border-radius: 15px;
2821
  }
2822
 
2823
+ #seopress_cpt #tabs-1 input.toggle + label {
2824
+ margin: 0;
 
2825
  }
2826
 
2827
+ .wrap-toggle-checkboxes input.toggle + label {
2828
+ float: left;
2829
+ margin-right: 10px;
 
 
 
 
 
 
 
 
 
 
2830
  }
2831
 
2832
+ #seopress-content input.toggle + label:before,
2833
+ .seopress-option input.toggle + label:before,
2834
+ #seopress_cpt input.toggle + label:before {
2835
+ content: "";
2836
+ position: absolute;
2837
+ display: block;
2838
+ height: 20px;
2839
+ width: 30px;
2840
+ top: 0;
2841
+ left: 0;
2842
+ border-radius: 15px;
2843
+ background: rgba(19, 191, 17, 0);
2844
+ -moz-transition: 0.25s ease-in-out;
2845
+ -webkit-transition: 0.25s ease-in-out;
2846
+ transition: 0.25s ease-in-out;
2847
+ }
2848
+
2849
+ #seopress-content input.toggle + label:after,
2850
+ .seopress-option input.toggle + label:after,
2851
+ #seopress_cpt input.toggle + label:after {
2852
+ content: "";
2853
+ position: absolute;
2854
+ display: block;
2855
+ height: 20px;
2856
+ width: 20px;
2857
+ top: 0;
2858
+ left: 0;
2859
+ border-radius: 15px;
2860
+ background: #fff;
2861
+ box-shadow: inset 0 0 0 1px rgba(0, 0, 0, 0.2), 0 2px 4px rgba(0, 0, 0, 0.2);
2862
+ -moz-transition: 0.25s ease-in-out;
2863
+ -webkit-transition: 0.25s ease-in-out;
2864
+ transition: 0.25s ease-in-out;
2865
  }
2866
 
2867
+ .seopress_wrap_single_cpt input.toggle + label,
2868
+ .seopress_wrap_single_cpt input.toggle + label:before,
2869
+ .seopress_wrap_tax input.toggle + label,
2870
+ .seopress_wrap_tax input.toggle + label:before,
2871
+ #seopress_cpt input.toggle + label,
2872
+ #seopress_cpt input.toggle + label:before {
2873
+ width: 40px;
2874
+ height: 20px;
2875
  }
2876
 
2877
+ .seopress_wrap_single_cpt input.toggle + label:after,
2878
+ .seopress_wrap_tax input.toggle + label:after,
2879
+ #seopress_cpt input.toggle + label:after {
2880
+ width: 20px;
2881
+ height: 20px;
2882
  }
2883
 
2884
+ #seopress-content input.toggle[data-toggle="1"] + label:before,
2885
+ .seopress-option input.toggle[data-toggle="1"] + label:before,
2886
+ #seopress_cpt input.toggle[data-toggle="1"] + label:before {
2887
+ width: 40px;
2888
+ background: rgb(49, 151, 211);
2889
  }
2890
 
2891
+ .seopress_wrap_single_cpt input.toggle[data-toggle="1"] + label:before,
2892
+ #seopress_cpt input.toggle[data-toggle="1"] + label:before,
2893
+ .seopress_wrap_tax input.toggle[data-toggle="1"] + label:before,
2894
+ #seopress_cpt input.toggle[data-toggle="1"] + label:before {
2895
+ width: 40px;
2896
+ background: rgb(49, 151, 211);
2897
  }
2898
 
2899
+ #seopress-content input.toggle[data-toggle="1"] + label:after,
2900
+ .seopress-option input.toggle[data-toggle="1"] + label:after,
2901
+ #seopress_cpt input.toggle[data-toggle="1"] + label:after {
2902
+ left: 20px;
2903
+ box-shadow: inset 0 0 0 1px rgb(49, 151, 211), 0 2px 4px rgba(0, 0, 0, 0.2);
2904
  }
2905
 
2906
+ .seopress_wrap_single_cpt input.toggle[data-toggle="1"] + label:after,
2907
+ .seopress_wrap_tax input.toggle[data-toggle="1"] + label:after,
2908
+ #seopress_cpt input.toggle[data-toggle="1"] + label:after {
2909
+ box-shadow: inset 0 0 0 1px rgb(49, 151, 211), 0 2px 4px rgba(0, 0, 0, 0.2);
2910
  }
2911
 
2912
  #seopress-content .seopress-page-list {
2913
+ position: relative;
2914
+ display: grid;
2915
+ max-width: 64rem;
2916
+ grid-gap: 20px 20px;
2917
+ grid-template-columns: repeat(3, 1fr);
2918
  }
2919
 
2920
  @media only screen and (max-width: 782px) {
2921
+ #seopress-content .seopress-page-list {
2922
+ grid-template-columns: repeat(1, 1fr);
2923
+ }
2924
  }
2925
 
2926
  #seopress-notice-save {
2927
+ position: fixed;
2928
+ color: #fff;
2929
+ padding: 15px 40px;
2930
+ font-size: 0.9rem;
2931
+ text-transform: uppercase;
2932
+ text-align: center;
2933
+ border-radius: 0;
2934
+ background: rgba(74, 184, 102, 0.9);
2935
+ bottom: 0;
2936
+ right: 0;
2937
+ z-index: 500;
2938
+ width: 100%;
2939
+ font-weight: bold;
2940
  }
2941
 
2942
  #seopress-notice-save .dashicons {
2943
+ color: #fff;
2944
  }
2945
 
2946
  .seopress-styles .wrap {
2947
+ margin: 20px 0 0 0;
2948
+ display: flex;
2949
+ position: relative;
2950
  }
2951
 
2952
  .toplevel_page_seopress-option.seopress-styles .wrap,
2953
  .seopress-insights.seopress-styles .wrap {
2954
+ display: inherit;
2955
+ position: inherit;
2956
+ margin: inherit;
2957
  }
2958
 
2959
  @media only screen and (max-width: 782px) {
2960
+ .seopress-styles .wrap {
2961
+ display: inherit;
2962
+ position: inherit;
2963
+ margin: inherit;
2964
+ }
2965
  }
2966
 
2967
  .seopress_page_seopress-pro-page #wpcontent {
2968
+ background: #f4f7fa;
2969
  }
2970
 
2971
  .seopress-option .wrap div.nav-tab-wrapper {
2972
+ margin: 0 0 0 -26px;
2973
+ padding: 0 0 0 10px;
2974
+ line-height: inherit;
2975
+ width: 230px;
2976
+ z-index: 95;
2977
+ font-weight: 400;
2978
+ display: block;
2979
+ border-bottom: none;
2980
  }
2981
 
2982
  @media only screen and (max-width: 782px) {
2983
+ .seopress-option .wrap div.nav-tab-wrapper {
2984
+ width: 100%;
2985
+ margin: 0;
2986
+ padding: 0;
2987
+ }
2988
  }
2989
 
2990
  #seopress-admin-tabs.wrap div.nav-tab-wrapper {
2991
+ margin: 20px auto 0;
2992
+ max-width: 64rem;
2993
+ width: 100%;
2994
+ border-bottom: 1px solid #e6ebf1;
2995
+ padding: 0;
2996
+ line-height: inherit;
2997
+ position: -webkit-sticky; /* Required for Safari */
2998
+ position: sticky;
2999
+ background: #f5f7fa;
3000
+ z-index: 100;
3001
+ top: 31px;
3002
+ border-radius: 4px 4px 0 0;
3003
+ font-weight: 400;
3004
+ overflow: hidden;
3005
+ display: flex;
3006
+ align-items: center;
3007
+ justify-content: space-between;
3008
+ box-sizing: border-box;
3009
  }
3010
 
3011
  @media only screen and (max-width: 600px) {
3012
+ #seopress-admin-tabs.wrap div.nav-tab-wrapper {
3013
+ top: 0;
3014
+ display: block;
3015
+ }
3016
  }
3017
 
3018
  @media only screen and (max-width: 1024px) {
3019
+ #seopress-admin-tabs.wrap div.nav-tab-wrapper {
3020
+ display: block;
3021
+ }
3022
  }
3023
 
3024
  #seopress-admin-tabs #tab_seopress_notifications.seopress-tab {
3025
+ background: 0 0;
3026
+ padding: 0;
3027
+ border-radius: 0;
3028
  }
3029
 
3030
  .seopress-option .nav-tab {
3031
+ border: 0 solid #ccc;
3032
+ background: 0 0;
3033
+ opacity: 0.5;
3034
+ padding: 6px 30px 6px 10px;
3035
+ transition: opacity 0.3s linear;
3036
+ color: #191e23;
3037
+ margin: 0;
3038
+ float: none;
3039
+ display: inline-block;
3040
+ width: 100%;
3041
+ text-align: left;
3042
+ font-weight: normal;
3043
+ box-sizing: border-box;
3044
+ white-space: normal;
3045
  }
3046
 
3047
  #seopress-admin-tabs .nav-tab {
3048
+ border: 0 solid #ccc;
3049
+ background: 0 0;
3050
+ opacity: 0.5;
3051
+ padding: 14px 20px;
3052
+ transition: opacity 0.3s linear;
3053
+ color: #191e23;
3054
+ margin: 0;
3055
+ box-shadow: inset -1px 0 #e3e8ee;
3056
+ float: none;
3057
+ display: inline-block;
3058
+ text-align: center;
3059
+ font-weight: normal;
3060
  }
3061
 
3062
  #seopress-admin-tabs .nav-tab {
3063
+ width: 100%;
3064
+ }
3065
+
3066
+ #seopress-admin-tabs .nav-tab-active,
3067
+ #seopress-admin-tabs .nav-tab-active:hover,
3068
+ .seopress-option .about-wrap h2 .nav-tab-active,
3069
+ .seopress-option .nav-tab-active,
3070
+ .seopress-option .nav-tab-active:hover {
3071
+ background-color: #fff;
3072
+ }
3073
+
3074
+ #seopress-admin-tabs .nav-tab-active,
3075
+ #seopress-admin-tabs .nav-tab-active:focus,
3076
+ #seopress-admin-tabs .nav-tab-active:focus:active,
3077
+ #seopress-admin-tabs .nav-tab-active:hover,
3078
+ #seopress-admin-tabs .nav-tab:focus,
3079
+ .nav-tab-active:focus,
3080
+ .seopress-option .nav-tab-active,
3081
+ .seopress-option .nav-tab-active:focus:active,
3082
+ .seopress-option .nav-tab-active:hover,
3083
+ .seopress-option .nav-tab:focus {
3084
+ opacity: 1;
3085
+ outline: 0;
3086
+ font-weight: 600;
3087
+ position: relative;
3088
+ color: #191e23;
3089
+ border-left: 3px solid #0085ba;
3090
+ background: rgba(0, 133, 186, 0.1);
3091
+ }
3092
+ #seopress-admin-tabs .nav-tab-active,
3093
+ #seopress-admin-tabs .nav-tab-active:focus,
3094
+ #seopress-admin-tabs .nav-tab-active:focus:active,
3095
+ #seopress-admin-tabs .nav-tab-active:hover,
3096
+ #seopress-admin-tabs .nav-tab:focus {
3097
+ border-bottom: 3px solid rgb(49, 151, 211);
3098
+ border-left: none;
3099
+ background: #fff;
3100
+ }
3101
+
3102
+ #seopress-admin-tabs .nav-tab:hover,
3103
+ .seopress-option .nav-tab:hover {
3104
+ opacity: 1;
3105
+ }
3106
+
3107
+ #seopress-admin-tabs .nav-tab:focus,
3108
+ .seopress-option .nav-tab:focus {
3109
+ outline: 0;
3110
+ box-shadow: none;
3111
  }
3112
 
3113
  .seopress-option .section-tool {
3114
+ border: none;
3115
+ box-shadow: none;
3116
+ background: none;
3117
+ position: relative;
3118
  }
3119
 
3120
  .seopress-option .section-tool::after {
3121
+ content: "";
3122
+ background: #dedede;
3123
+ height: 1px;
3124
+ width: 100%;
3125
+ display: block;
3126
  }
3127
 
3128
  .seopress-option .sp-section-header {
3129
+ border-bottom: 1px solid #eeeeee;
3130
+ margin: 0 0 1rem 0;
3131
+ width: 100%;
3132
+ display: flex;
3133
+ position: relative;
3134
+ align-items: center;
3135
+ padding-bottom: 0.5rem;
3136
  }
3137
 
3138
  .seopress-option .sp-section-header::after {
3139
+ position: absolute;
3140
+ content: "";
3141
+ background: #0085ba;
3142
+ height: 2px;
3143
+ width: 40px;
3144
+ bottom: 0px;
3145
+ left: 0;
3146
  }
3147
 
3148
  .seopress-option .sp-section-header h2 {
3149
+ font-size: 1.5em;
3150
  }
3151
 
3152
  .seopress-option .sp-section-header > .dashicons {
3153
+ color: #0085ba;
3154
+ padding: 10px;
3155
+ border-radius: 6px;
3156
+ margin-right: 10px;
3157
+ background: #c4f0ff;
3158
  }
3159
 
3160
  .seopress-option .sp-section-header .wrap-toggle-checkboxes {
3161
+ display: flex;
3162
  }
3163
 
3164
  .seopress-styles .wrap .notice {
3165
+ margin: 5px 0 15px 15px;
3166
  }
3167
  #seopress-tabs.wrap .notice {
3168
+ margin: 1rem 0;
3169
  }
3170
  .seopress-BlankState a.button-primary,
3171
  .seopress-BlankState button.button-primary,
3172
  .seopress-message a.button-primary,
3173
+ .seopress-message button.button-primary {
3174
+ background: #6259e6;
3175
+ border-color: #6259e6;
3176
+ box-shadow: rgba(0, 0, 0, 0) 0px 0px 0px 0px,
3177
+ rgba(0, 0, 0, 0) 0px 0px 0px 0px, rgba(0, 0, 0, 0.12) 0px 1px 1px 0px,
3178
+ rgba(60, 66, 87, 0.16) 0px 0px 0px 1px, rgba(0, 0, 0, 0) 0px 0px 0px 0px,
3179
+ rgba(0, 0, 0, 0) 0px 0px 0px 0px, rgba(60, 66, 87, 0.12) 0px 2px 5px 0px;
3180
+ color: #fff;
3181
+ display: inline-block;
3182
  }
3183
  .seopress-BlankState a.button-primary:active,
3184
  .seopress-BlankState a.button-primary:focus,
3191
  .seopress-message a.button-primary:hover,
3192
  .seopress-message button.button-primary:active,
3193
  .seopress-message button.button-primary:focus,
3194
+ .seopress-message button.button-primary:hover {
3195
+ background: #6259e6;
3196
+ border-color: #6259e6;
3197
+ box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.25), 0 1px 0 #6259e6;
3198
  }
3199
  .post-type-seopress_404 .seopress-BlankState-message::before,
3200
+ .post-type-seopress_schemas .seopress-BlankState-message::before {
3201
+ font-family: "Dashicons";
3202
+ speak: none;
3203
+ font-weight: 400;
3204
+ font-variant: normal;
3205
+ text-transform: none;
3206
+ line-height: 1;
3207
+ margin: 0;
3208
+ text-indent: 0;
3209
+ position: absolute;
3210
+ top: 0;
3211
+ left: 0;
3212
+ width: 100%;
3213
+ height: 100%;
3214
+ text-align: center;
3215
+ content: "\f103";
3216
+ }
3217
+ .post-type-seopress_schemas .seopress-BlankState-message::before {
3218
+ content: "\f495";
3219
+ }
3220
+ .seopress-BlankState {
3221
+ text-align: center;
3222
+ padding: 5em 0 0;
3223
+ }
3224
+ .seopress-BlankState .seopress-BlankState-message {
3225
+ color: #aaa;
3226
+ margin: 0 auto 1.5em;
3227
+ line-height: 1.5em;
3228
+ font-size: 1.2em;
3229
+ max-width: 500px;
3230
+ }
3231
+ .seopress-BlankState .seopress-BlankState-message::before {
3232
+ color: #ddd;
3233
+ text-shadow: 0 -1px 1px rgba(0, 0, 0, 0.2), 0 1px 0 rgba(255, 255, 255, 0.8);
3234
+ font-size: 8em;
3235
+ display: block;
3236
+ position: relative !important;
3237
+ top: auto;
3238
+ left: auto;
3239
+ line-height: 1em;
3240
+ margin: 0 0 0.1875em;
3241
+ }
3242
+ .seopress-BlankState .seopress-BlankState-cta {
3243
+ font-size: 1.2em;
3244
+ padding: 0.75em 1.5em;
3245
+ margin: 0 0.25em;
3246
+ height: auto;
3247
+ display: inline-block !important;
3248
+ }
3249
+ .seopress-BlankState {
3250
+ max-width: 764px;
3251
+ text-align: center;
3252
+ margin: auto;
3253
+ }
3254
+ .seopress-BlankState .seopress-BlankState-message {
3255
+ color: #444;
3256
+ font-size: 1.5em;
3257
+ margin: 0 auto 1em;
3258
+ }
3259
+ .seopress-BlankState .seopress-BlankState-message::before {
3260
+ font-size: 120px;
3261
+ }
3262
+ .seopress-BlankState .seopress-BlankState-buttons {
3263
+ margin-bottom: 4em;
3264
  }
3265
  #seopress_content_analysis .up,
3266
  #seopress_content_analysis .up .dashicons {
3267
+ color: #4ab866;
3268
  }
3269
 
3270
  #seopress_content_analysis .down,
3271
  #seopress_content_analysis .down .dashicons {
3272
+ color: #d94f4f;
3273
  }
3274
 
3275
  #seopress_content_analysis .up .dashicons {
3276
+ transform: rotateZ(45deg);
3277
  }
3278
 
3279
  #seopress_content_analysis .stable .dashicons {
3280
+ transform: rotateZ(90deg);
3281
  }
3282
 
3283
  #seopress_content_analysis .down .dashicons {
3284
+ transform: rotateZ(135deg);
3285
  }
3286
  #seopress_content_analysis .wrap-insights-post {
3287
+ clear: both;
3288
+ border-top: 1px solid #e2e4e7;
3289
+ display: flex;
3290
+ align-items: center;
3291
  }
3292
  #seopress_content_analysis .wrap-insights-post .widget-insights-title {
3293
+ margin: 0 1rem;
3294
  }
3295
  #seopress_content_analysis .wrap-insights-post span {
3296
+ font-weight: 700;
3297
+ margin: 0 0.2rem 0 0;
3298
  }
3299
  #seopress_content_analysis .wrap-insights-post .sp-tooltip * {
3300
+ font-weight: normal;
3301
  }
3302
  #seopress_content_analysis .wrap-insights-post .sp-tooltip-headings {
3303
+ font-weight: bold;
3304
+ }
3305
+ .sp-components-snackbar-list {
3306
+ position: fixed;
3307
+ right: 0;
3308
+ bottom: 40px;
3309
+ padding-left: 16px;
3310
+ padding-right: 16px;
3311
+ animation-name: sp-fade-in-out;
3312
+ animation-duration: 5s;
3313
+ animation-iteration-count: 1;
3314
+ animation-fill-mode: forwards;
3315
+ visibility: hidden;
3316
+ z-index: 1;
3317
+ }
3318
+ .sp-components-snackbar__content {
3319
+ display: flex;
3320
+ align-items: center;
3321
+ justify-content: space-between;
3322
+ line-height: 1.4;
3323
+ }
3324
+ .sp-components-snackbar {
3325
+ font-family: -apple-system, BlinkMacSystemFont, Segoe UI, Roboto,
3326
+ Oxygen-Sans, Ubuntu, Cantarell, Helvetica Neue, sans-serif;
3327
+ font-size: 13px;
3328
+ background-color: #32373c;
3329
+ border-radius: 4px;
3330
+ box-shadow: 0 2px 4px rgba(0, 0, 0, 0.3);
3331
+ color: #fff;
3332
+ padding: 16px 24px;
3333
+ width: 100%;
3334
+ max-width: 600px;
3335
+ box-sizing: border-box;
3336
+ cursor: pointer;
3337
+ }
3338
+ .sp-components-snackbar .dashicons {
3339
+ color: #fff;
3340
+ }
assets/css/seopress.min.css CHANGED
@@ -1 +1 @@
1
- @keyframes sp-fade-in-out{0%{opacity:0;bottom:0;visibility:hidden}25%{opacity:1;bottom:40px;visibility:visible}75%{opacity:1;visibility:visible}100%{opacity:0;visibility:hidden}}#adminmenu div.wp-menu-image.dashicons-admin-seopress::before,#seopress-header #seopress-admin h1::before{content:"\e800";font-family:seopress!important;font-weight:700;font-size:12px;line-height:20px}#seopress-header #seopress-admin h1::before,.seopress-page-list .seopress-feature h3,.seopress-styles .seopress-option h1{-moz-osx-font-smoothing:grayscale;-webkit-font-smoothing:antialiased}@font-face{font-family:seopress;src:url(../fonts/seopress.eot?81521271);src:url(../fonts/seopress.eot?81521271#iefix) format('embedded-opentype'),url(../fonts/seopress.woff?81521271) format('woff2'),url(../fonts/seopress.woff?81521271) format('woff'),url(../fonts/seopress.ttf?81521271) format('truetype'),url(../fonts/seopress.svg?81521271#seopress) format('svg');font-weight:400;font-style:normal}[class*=" icon-seopress"],[class^=icon-seopress-]{font-family:seopress!important;font-size:14px!important;line-height:24px!important}#tab_seopress_titles_archives .form-table th:empty,#tab_seopress_titles_single .form-table th:empty,#tab_seopress_titles_tax .form-table th:empty{display:none}.icon-seopress-seopress:before{content:"\e800"}#wpadminbar #wp-toolbar #wp-admin-bar-seopress_custom_top_level .wrap-seopress-noindex{background:red;color:#fff;padding:0 8px;float:right;margin-left:6px}#wpadminbar #wp-toolbar #wp-admin-bar-seopress_custom_top_level>a{display:inline-block}#wpadminbar #wp-toolbar #wp-admin-bar-seopress_custom_top_level .wrap-seopress-noindex .ab-icon::before{color:#eee;vertical-align:middle}#wpadminbar #wp-toolbar #wp-admin-bar-seopress_custom_sub_menu_meta_robots{display:block;background:#23292d}#wpadminbar #wp-toolbar #wp-admin-bar-seopress_custom_sub_menu_meta_robots a{height:inherit;padding-bottom:5px}#wpadminbar #wp-toolbar #wp-admin-bar-seopress_custom_sub_menu_meta_robots .wrap-seopress-cpt-seo{font-weight:700;border-bottom:1px solid currentColor;width:100%;display:block;margin-bottom:5px}#wpadminbar #wp-toolbar #wp-admin-bar-seopress_custom_sub_menu_meta_robots .wrap-seopress-cpt-nofollow,#wpadminbar #wp-toolbar #wp-admin-bar-seopress_custom_sub_menu_meta_robots .wrap-seopress-cpt-noindex{display:block}#wpadminbar #wp-toolbar #wp-admin-bar-seopress_custom_sub_menu_meta_robots .wrap-seopress-cpt-nofollow .ab-icon,#wpadminbar #wp-toolbar #wp-admin-bar-seopress_custom_sub_menu_meta_robots .wrap-seopress-cpt-noindex .ab-icon{float:none;vertical-align:middle}#wpadminbar #wp-toolbar #wp-admin-bar-seopress_custom_sub_menu_meta_robots .wrap-seopress-cpt-nofollow .on::before,#wpadminbar #wp-toolbar #wp-admin-bar-seopress_custom_sub_menu_meta_robots .wrap-seopress-cpt-noindex .on::before{color:red}#wpadminbar #wp-toolbar #wp-admin-bar-seopress_custom_sub_menu_meta_robots .wrap-seopress-cpt-nofollow .off::before,#wpadminbar #wp-toolbar #wp-admin-bar-seopress_custom_sub_menu_meta_robots .wrap-seopress-cpt-noindex .off::before{color:#46b450}.sp-tooltip{position:relative;margin-left:5px;display:inline-block;cursor:help;vertical-align:bottom;text-align:left;background:0 0;border:none;padding:0}.sp-tooltip .dashicons{color:#666}.sp-tooltip .sp-tooltiptext{visibility:hidden;position:absolute;z-index:999999999;width:300px;right:-303px;padding:20px;top:25px;font-weight:400;box-shadow:0 3px 30px rgba(25,30,35,.1);border:1px solid #e2e4e7;background:#fff;word-break:break-word;text-transform:none}.sp-tooltip .sp-tooltiptext::before{border:8px solid #e2e4e7;top:-8px}.sp-tooltip .sp-tooltiptext::after{border:8px solid #fff;top:-6px}.sp-tooltip .sp-tooltiptext::after,.sp-tooltip .sp-tooltiptext::before{border-bottom-style:solid;border-left-color:transparent;border-right-color:transparent;border-top:none;margin-left:-10px;content:"";position:absolute;height:0;width:0;line-height:0;left:30px}.sp-tooltip:active .sp-tooltiptext,.sp-tooltip:focus .sp-tooltiptext,.sp-tooltip:hover .sp-tooltiptext{visibility:visible}.sp-tooltip .sp-tooltip-headings{font-size:18px;font-weight:600;margin-bottom:20px;display:block}.sp-tooltip .sp-tooltip-desc{margin-bottom:20px;display:block;border-bottom:1px solid #e2e4e7;padding-bottom:20px;font-size:13px}.sp-tooltip .sp-tooltip-code{font-family:Menlo,Monaco,Andale Mono,Courier New,monospace;display:block;word-break:break-all;color:#1a7a06;font-size:11px}.analysis-score .sp-tooltip{vertical-align:middle;font-size:.75em}#seopress_content_analysis a{color:#0073aa}#seopress_content_analysis .wrap-seopress-analysis{display:inline-block;width:100%}#seopress_content_analysis .col-left{width:calc(50% - 30px);float:left;margin-right:30px}#seopress_content_analysis .col-right{float:right;width:50%}#seopress_content_analysis #seopress_suggestions{display:inline-block;width:100%;margin:0;height:auto;padding:20px 0}#seopress_content_analysis #seopress_suggestions li{list-style:none;margin:5px;display:inline-block}#seopress_content_analysis .analysis-score{clear:both;border-top:1px solid #e2e4e7;display:flex;justify-content:space-between;align-items:center}.column-seopress_score .analysis-score{display:flex;align-content:center}#seopress_content_analysis .analysis-score p,.column-seopress_score .analysis-score p{font-weight:700;font-size:1.2em}#seopress_content_analysis .analysis-score svg,.column-seopress_score .analysis-score svg{display:inline-block;height:30px;width:30px;margin:0;border-radius:100%;position:relative;font-weight:600;shape-rendering:geometricprecision;font-size:.5rem;vertical-align:middle;margin-right:15px}.column-seopress_score .analysis-score p,.column-seopress_score .analysis-score svg{margin:0}@keyframes loadingPulse{0%{stroke:#adc5d2}50%{stroke:#00a0d2}100%{stroke:#adc5d2}}#seopress_content_analysis .analysis-score .loading #bar{stroke-dashoffset:0!important;stroke:#adc5d2!important;animation:loadingPulse 3s infinite ease-in-out}#seopress_content_analysis .analysis-score .good #bar,.column-seopress_score .analysis-score #bar.good{stroke:#46b450}#seopress_content_analysis .analysis-score .notgood #bar,.column-seopress_score .analysis-score #bar.notgood{stroke-dashoffset:565;stroke:#ffb900}#seopress_content_analysis .analysis-score svg circle,.column-seopress_score .analysis-score svg circle{stroke-dashoffset:0;transition:stroke-dashoffset 1s linear;stroke:#ccc;stroke-width:2em}#seopress_content_analysis .gr-analysis{clear:both}#seopress_content_analysis .gr-analysis-title{border-top:1px solid #e2e4e7;position:relative}#seopress_content_analysis .gr-analysis-title .impact,#seopress_cpt .impact{position:absolute;left:10px;top:calc(50% - 5px);width:10px;height:10px;border-radius:50px;padding:0;margin:0;border:1px solid #fff}#seopress_content_analysis .gr-analysis .impact.good{background:#46b450;box-shadow:0 0 5px #46b450}#seopress_content_analysis .gr-analysis .impact.low{background:#ffde24;box-shadow:0 0 5px #ffde24}#seopress_content_analysis .gr-analysis .impact.medium{background:#e39f48;box-shadow:0 0 5px #e39f48}#seopress_content_analysis .gr-analysis .impact.high,#seopress_cpt .impact.high{background:#e25950;box-shadow:0 0 5px #e25950}#seopress_content_analysis .gr-analysis-content .impact.high{background:#e25950;box-shadow:none;color:#fff;padding:2px 4px;margin-left:5px;border-radius:4px;font-weight:700}#seopress_cpt .impact.high{position:relative;top:calc(50% - 18px);display:inline-block;left:inherit;right:-10px}#seopress_content_analysis .description,#seopress_cpt .description,.seopress-tab .description{display:block;font-style:italic}#seopress_content_analysis .gr-analysis-title button{background:#fff;border:0;cursor:pointer;display:block;margin:0;position:relative;text-align:left;width:100%;padding:15px 30px;align-items:center;transition:all .3s linear}#seopress_content_analysis .gr-analysis-title button:hover{background:#f3f4f5}#seopress_content_analysis .gr-analysis-title button:focus{color:#191e23;border:none;box-shadow:none;outline-offset:-2px;outline:1px dotted #555d66}#seopress_content_analysis .gr-analysis-title button .sp-arrow::after{content:"\f343";font-family:Dashicons;position:absolute;right:10px;top:calc(50% - 7px)}#seopress_content_analysis .gr-analysis-title button.open .sp-arrow::after{content:"\f347"}#seopress_content_analysis .gr-analysis-content{padding:0 1rem .5rem 1rem;display:none;width:100%;border-top:1px solid #e2e4e7;box-sizing:border-box}table.wp-list-table .manage_column.column-seopress_canonical,table.wp-list-table .manage_column.column-seopress_desc,table.wp-list-table .manage_column.column-seopress_insights,table.wp-list-table .manage_column.column-seopress_noindex,table.wp-list-table .manage_column.column-seopress_redirect_enable,table.wp-list-table .manage_column.column-seopress_redirect_url,table.wp-list-table .manage_column.column-seopress_title,table.wp-list-table .manage_column.column-seopress_tkw{width:7%!important}#seopress_content_analysis h3{margin:0;font-size:1em}#seopress_content_analysis h4{border-bottom:1px solid #e2e4e7;padding-bottom:.5rem;text-transform:uppercase;font-size:.85em;position:-webkit-sticky;position:sticky;top:0;background:#fff}#seopress_content_analysis .wrap-analysis-img ul{display:flex;flex-wrap:wrap}#seopress_content_analysis .wrap-analysis-img ul li{padding:0;text-align:left;cursor:default}#seopress_content_analysis .wrap-analysis-img h4{border-bottom:1px solid #ddd;padding-bottom:10px}#seopress_content_analysis .wrap-analysis-img ul li img{max-width:150px;max-height:150px;object-fit:cover;border:1px solid #f3f4f5;cursor:default;padding:1px}#seopress_cpt .notice{padding:10px 14px}#seopress-analysis-tabs .dashicons,#seopress_cpt .dashicons{vertical-align:middle}#seopress-analysis-tabs{clear:both}#seopress_cpt .inside{margin:0;padding:0}#seopress_cpt .ui-tabs .ui-tabs-nav{display:inline-block;min-height:26px;position:relative;width:100%;z-index:10;margin:0;border-radius:0;padding:0;background:#f3f4f5;border:none}#seopress_cpt .ui-helper-clearfix:after{content:none}.seopress_page_seopress-titles #seopress-tabs .form-table td,.seopress_page_seopress-titles #seopress_content_analysis .form-table td{padding:0}#seopress_cpt .ui-tabs .ui-tabs-panel{background:#fff;border-radius:0;display:inline-block;padding:1em 1.4em;width:100%;box-sizing:border-box}#seopress_content_analysis .dashicons-info,#seopress_cpt .ui-tabs .ui-tabs-panel .dashicons-info,#seopress_pro_cpt .dashicons-info{font-size:16px;vertical-align:middle;height:16px;width:16px}#seopress_cpt .ui-tabs .ui-tabs-nav li,#seopress_cpt .ui-tabs-anchor{cursor:pointer!important}#seopress_cpt .ui-tabs .ui-tabs-nav li.ui-tabs-active{position:relative;z-index:60;cursor:pointer;border-radius:0;border-bottom:3px solid #0085ba}#seopress_content_analysis label,#seopress_cpt #tabs-1 label,#seopress_cpt #tabs-2 label[for=seopress_robots_breadcrumbs_meta],#seopress_cpt #tabs-2 label[for=seopress_robots_canonical_meta],#seopress_cpt #tabs-2 label[for=seopress_robots_primary_cat_meta],#seopress_cpt #tabs-3 label,#seopress_cpt #tabs-4 label,#seopress_cpt #tabs-5 label,#seopress_cpt #tabs-6 label,#seopress_cpt .subsection-title{display:block;margin:20px 0 5px;font-weight:700}#seopress_cpt .wp-color-result{margin:0}#seopress_content_analysis input[type=text],#seopress_cpt #tabs-1 input,#seopress_cpt #tabs-2 input[type=text],#seopress_cpt #tabs-3 input[type=text],#seopress_cpt #tabs-3 textarea,#seopress_cpt #tabs-4 input[type=text],#seopress_cpt #tabs-5 input[type=text],#seopress_cpt #tabs-6 input[type=text],#seopress_cpt #tabs-6 textarea{width:100%;display:inline-block}#seopress_cpt #tabs-1 input{width:100%}#seopress_cpt #tabs-6 input[type=number]{width:30%;min-width:200px}#seopress_cpt #tabs-6 #wrap-videos .video:first-child .remove-video{display:none}#seopress_cpt select{width:300px}#seopress_cpt #tabs-4 select{width:250px;display:inline}#seopress_cpt #tabs-4 #seopress_redirections_value_meta{width:calc(100% - 258px);float:right}#seopress_cpt #tabs-6{padding:0}#seopress_cpt #tabs-6 #wrap-videos .video .accordion-section-content,#seopress_cpt #tabs-6>p{padding:0 1.4em}#seopress_cpt #tabs-6 #wrap-videos .video .accordion-section-content{padding:0 1.4em 1em}#seopress_cpt #tabs-6 #wrap-videos .video{border-top:1px solid #eee}#seopress_cpt #tabs-6 #wrap-videos .video .accordion-section-title{border-left:none;border-right:none;font-size:1em;padding:1em 1.4em}#seopress_cpt #tabs-6 #wrap-videos .video:last-child .accordion-section-content,#seopress_cpt #tabs-6 #wrap-videos .video:last-child .accordion-section-title{border-bottom:1px solid #eee}#seopress_cpt #tabs-6 #wrap-videos .video .inside{padding:0}#seopress_cpt #tabs-4 #seopress_redirections_enabled,#seopress_cpt #tabs-5 #seopress_news_disabled,#seopress_cpt #tabs-5 #seopress_news_standout,#seopress_cpt #tabs-6 #seopress_video_disabled,#seopress_cpt #tabs-6 .family-friendly label,#seopress_cpt #tabs-6 .internal_video label{font-weight:400}#seopress_cpt #tabs-6 #wrap-videos .video:nth-child(odd){background:#fdfdfd}#seopress_content_analysis .advise,#seopress_cpt .advise,#seopress_pro_cpt .advise,.seopress-option .advise{margin:5px;display:block;color:red;font-style:italic}#seopress_cpt #tabs-6 #wrap-videos .video .advise{color:#555}#seopress_content_analysis .mandatory,#seopress_cpt .mandatory{color:#c00}#seopress_cpt .box-left{float:left;width:49%;margin-right:1%}#seopress_cpt .box-right{float:left;width:49%;margin-left:1%}#seopress_cpt #tabs-3 .box-left{width:44%}#seopress_cpt #tabs-3 .box-right{width:54%}@media only screen and (max-width:1200px){#seopress_cpt .box-left,#seopress_cpt .box-right{float:none;width:100%;margin:0}}@media only screen and (max-width:1500px){#seopress_cpt #tabs-3 .box-left,#seopress_cpt #tabs-3 .box-right{float:none;width:100%;margin:0}}#edittag #seopress_cpt #tabs-3 .box-left,#edittag #seopress_cpt #tabs-3 .box-right{float:none;width:100%;margin:0}#seopress-tabs .seopress_media_upload,#seopress_pro_cpt .seopress_media_upload{margin-top:.5rem}#seopress_cpt .google-snippet-preview{font-family:arial,sans-serif;word-break:break-all}#seopress_cpt .google-snippet-preview.mobile-preview .wrap-snippet{margin:0 0 10px 0;box-shadow:0 1px 6px rgba(32,33,36,.28);border-radius:8px;padding:12px 16px}#seopress_cpt .google-snippet-preview>p{word-break:normal}#seopress_cpt .google-snippet-preview .snippet-title,#seopress_cpt .google-snippet-preview .snippet-title-custom,#seopress_cpt .google-snippet-preview .snippet-title-default{color:#1a0dab;font-size:18px;font-weight:400;line-height:21.6px}#seopress_cpt .google-snippet-preview.mobile-preview .snippet-title,#seopress_cpt .google-snippet-preview.mobile-preview .snippet-title-custom,#seopress_cpt .google-snippet-preview.mobile-preview .snippet-title-default{font-size:16px;line-height:20px;margin-bottom:12px}#seopress_cpt .google-snippet-preview .snippet-permalink{color:#006621;font-size:14px;font-style:normal;font-weight:400;line-height:16px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}#seopress_cpt .google-snippet-preview .wrap-snippet .wrap-m-icon-permalink,#seopress_cpt .google-snippet-preview.mobile-preview .snippet-permalink{display:none}#seopress_cpt .google-snippet-preview.mobile-preview .wrap-m-icon-permalink{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;margin-bottom:12px;display:flex}#seopress_cpt .google-snippet-preview.mobile-preview .wrap-m-icon-permalink .snippet-permalink{display:block;color:#3c4043;font-size:12px}#seopress_cpt .google-snippet-preview.mobile-preview .snippet-favicon{margin-right:12px;vertical-align:middle}#seopress_cpt .google-snippet-preview.mobile-preview .snippet-favicon img{width:16px;height:16px;max-width:inherit}#seopress_cpt .google-snippet-preview.mobile-preview .wrap-snippet .snippet-permalink:first-child{color:#3c4043;white-space:nowrap;font-size:12px;display:block}#seopress_cpt .google-snippet-preview .snippet-description,#seopress_cpt .google-snippet-preview .snippet-description-custom,#seopress_cpt .google-snippet-preview .snippet-description-default{color:#545454;font-size:14px;font-weight:400;line-height:18.2px;display:inline}#seopress_cpt .google-snippet-preview.mobile-preview .snippet-description,#seopress_cpt .google-snippet-preview.mobile-preview .snippet-description-custom,#seopress_cpt .google-snippet-preview.mobile-preview .snippet-description-default{color:#3c4043;font-size:14px;line-height:20px}#seopress_cpt .google-snippet-preview .snippet-date{color:grey;display:inline}#seopress_cpt .facebook-snippet-box{color:#4b4f56;font-size:14px;width:524px}#seopress_cpt .facebook-snippet-box .notice,#seopress_cpt .twitter-snippet-box .notice{padding:10px 14px;margin:0 0 10px 0;box-sizing:border-box;width:100%}#seopress_cpt .facebook-snippet-box .notice span,#seopress_cpt .twitter-snippet-box .notice span{font-weight:700}#seopress_cpt .snippet-meta{display:flex;overflow:hidden;max-height:12px}#seopress_cpt .fb-by,#seopress_cpt .snippet-fb-site-name,#seopress_cpt .snippet-fb-url{color:#606770;font-size:12px;white-space:normal;line-height:11px;text-transform:uppercase;-webkit-box-orient:vertical;display:-webkit-box;text-overflow:ellipsis}#seopress_cpt .fb-sep{padding-left:5px;padding-right:5px;color:#606770;line-height:11px;font-size:12px}#seopress_cpt .facebook-snippet-box .facebook-snippet-text{border:1px solid #dadde1;background-color:#f2f3f5;padding:10px 12px}#seopress_cpt .facebook-snippet-box .title-desc{max-height:46px;overflow:hidden}#seopress_cpt .facebook-snippet-box .snippet-fb-title,#seopress_cpt .facebook-snippet-box .snippet-fb-title-custom,#seopress_cpt .facebook-snippet-box .snippet-fb-title-default{font-size:16px;line-height:20px;margin:3px 0 0;padding-top:2px;color:#1d2129;font-weight:700;overflow:hidden;-webkit-box-orient:vertical;display:-webkit-box;text-overflow:ellipsis;white-space:normal;word-break:break-word;max-height:22px}#seopress_cpt .facebook-snippet-box .snippet-fb-description,#seopress_cpt .facebook-snippet-box .snippet-fb-description-custom,#seopress_cpt .facebook-snippet-box .snippet-fb-description-default{color:#606770;font-size:14px;line-height:20px;word-break:break-word;font-family:Helvetica,Arial,sans-serif;max-height:80px;overflow:hidden;-webkit-box-orient:vertical;display:-webkit-box;text-overflow:ellipsis;white-space:normal;width:100%}#seopress_cpt .facebook-snippet-box img{display:block;height:274px;width:524px;object-fit:cover;background-color:#edeff0;text-align:center;border-bottom:none}#seopress_cpt .twitter-snippet-box{color:#4b4f56;font-size:14px;width:436px}#seopress_cpt .snippet-twitter-url{color:#8899a6;font-size:14px;white-space:normal;line-height:11px;text-transform:uppercase;-webkit-box-orient:vertical;display:-webkit-box;text-overflow:ellipsis}#seopress_cpt .twitter-snippet-box .twitter-snippet-text{border:1px solid #dadde1;background-color:#fff;padding:10px 12px;border-radius:0 0 10px 10px}#seopress_cpt .twitter-snippet-box .title-desc{max-height:46px;overflow:hidden}#seopress_cpt .twitter-snippet-box .snippet-twitter-img,#seopress_cpt .twitter-snippet-box .snippet-twitter-img-custom,#seopress_cpt .twitter-snippet-box .snippet-twitter-img-default{border-radius:10px 10px 0 0;overflow:hidden}#seopress_cpt .twitter-snippet-box .snippet-twitter-title,#seopress_cpt .twitter-snippet-box .snippet-twitter-title-custom,#seopress_cpt .twitter-snippet-box .snippet-twitter-title-default{font-size:1em;line-height:20px;margin-bottom:5px;max-height:1.3em;color:#000;font-weight:700;overflow:hidden;-webkit-box-orient:vertical;display:-webkit-box;text-overflow:ellipsis;white-space:normal;word-break:break-word}#seopress_cpt .twitter-snippet-box .snippet-twitter-description,#seopress_cpt .twitter-snippet-box .snippet-twitter-description-custom,#seopress_cpt .twitter-snippet-box .snippet-twitter-description-default{color:#000;font-size:14px;line-height:20px;word-break:break-word;font-family:Helvetica,Arial,sans-serif;max-height:80px;overflow:hidden;-webkit-box-orient:vertical;display:-webkit-box;text-overflow:ellipsis;white-space:normal;width:100%}#seopress_cpt .twitter-snippet-box img{display:block;height:200px;width:436px;object-fit:cover;background-color:#edeff0;text-align:center;border-bottom:none}#seopress_cpt .wrap-seopress-counters,#seopress_pro_cpt .wrap-seopress-counters,.seopress-setup .wrap-seopress-counters,.seopress-styles .wrap-seopress-counters{text-align:right;background:#e9ecef;padding:2px 5px;display:flex;font-size:12px;justify-content:flex-end;border-radius:0 0 .25rem .25rem}#seopress_cpt .sp-progress,#seopress_pro_cpt .sp-progress,.seopress-setup .sp-progress,.seopress-styles .sp-progress{display:-ms-flexbox;display:flex;height:1rem;overflow:hidden;font-size:.75rem;background-color:#e9ecef;border-radius:.25rem .25rem 0 0}#seopress_cpt .sp-progress-bar,#seopress_pro_cpt .sp-progress-bar,.seopress-setup .sp-progress-bar,.seopress-styles .sp-progress-bar{display:-ms-flexbox;display:flex;-ms-flex-direction:column;flex-direction:column;-ms-flex-pack:center;justify-content:center;color:#fff;text-align:center;white-space:nowrap;background-color:#0085ba;transition:width .6s ease}#seopress_cpt #seopress_titles_desc_counters,#seopress_cpt #seopress_titles_title_counters,#seopress_pro_cpt #seopress_rich_snippets_articles_counters,#seopress_pro_cpt #seopress_rich_snippets_courses_counters{display:inline;margin-right:5px}#seopress_cpt #seopress_titles_desc_counters_val,#seopress_cpt #seopress_titles_title_counters_val,#seopress_pro_cpt #seopress_rich_snippets_articles_counters_val,#seopress_pro_cpt #seopress_rich_snippets_courses_counters_val{display:inline;font-weight:700}#term-seopress #seopress_cpt{width:95%}.fixed .column-seopress_ps,.fixed .column-seopress_score,.fixed .column-seopress_w3c,.fixed .column-seopress_words{width:6%}.fixed .column-seopress_nofollow,.fixed .column-seopress_noindex{width:8%}@media only screen and (max-width:1200px){.fixed .column-seopress_nofollow,.fixed .column-seopress_noindex,.fixed .column-seopress_ps,.fixed .column-seopress_score,.fixed .column-seopress_w3c,.fixed .column-seopress_words{width:10%}}#seopress_cpt .ui-tabs{position:relative;padding:0;border:none;font-family:inherit;font-size:inherit;display:inline-block;width:100%}#seopress_cpt .ui-tabs .ui-tabs-nav li{list-style:none;display:inline-block;position:relative;top:2px;padding:0 5px;white-space:nowrap;margin:0;border:none;background:0 0}#seopress_cpt .ui-tabs .ui-tabs-nav li a{display:inline-block;padding:5px 10px}#seopress-admin-tabs.ui-tabs-vertical .ui-tabs-nav li a,#seopress_cpt .ui-tabs-vertical .ui-tabs-nav li a{display:block}#seopress_cpt .ui-tabs .ui-tabs-nav li.ui-tabs-active{margin-bottom:2px;padding-bottom:1px}#seopress_cpt .ui-tabs .ui-tabs-nav li.ui-state-disabled a,#seopress_cpt .ui-tabs .ui-tabs-nav li.ui-tabs-active a,#seopress_cpt .ui-tabs .ui-tabs-nav li.ui-tabs-loading a{color:#191e23;font-weight:700}#seopress_cpt .ui-tabs .ui-tabs-nav li a,#seopress_cpt .ui-tabs-collapsible .ui-tabs-nav li.ui-tabs-active a{cursor:pointer;color:#191e23;text-decoration:none;height:40px;line-height:40px}#seopress_cpt .ui-tabs-vertical{width:55em}#seopress_cpt .ui-tabs-vertical .ui-tabs-nav{padding:.2em .1em .2em .2em;float:left;width:12em}#seopress_cpt .ui-tabs-vertical .ui-tabs-nav li{clear:left;width:100%;border-bottom-width:1px!important;border-right-width:0!important;margin:0 -1px .2em 0}#seopress_cpt .ui-tabs-vertical .ui-tabs-nav li.ui-tabs-active{padding-bottom:0;padding-right:.1em;border-right-width:1px}#seopress_cpt .ui-tabs-vertical .ui-tabs-panel{padding:1em;float:right;width:40em}#seopress_cpt .ui-tabs .ui-tabs-nav li a .dashicons{margin-right:2px}#tab-panel-seopress_titles_help_tab li span{font-weight:700;margin-right:10px}#seopress_content_analysis .dashicons-no-alt,#seopress_content_analysis .dashicons-yes,#seopress_pro_cpt .dashicons-no-alt,#seopress_pro_cpt .dashicons-yes{color:#fff;background:#12bd10;border-radius:50px;margin-right:10px}#seopress_content_analysis .dashicons-no-alt,#seopress_pro_cpt .dashicons-no-alt{background:#e25950}body.seopress-styles{background:#f8fafd}#seopress-admin-tabs.ui-tabs{position:relative;padding:.2em;border:none;font-family:inherit;font-size:inherit}#seopress-admin-tabs.ui-tabs .ui-tabs-nav li{list-style:none;float:left;position:relative;top:0;margin:-1px .2em 0 0;padding:0;white-space:nowrap;border:none;background:0 0}#seopress-admin-tabs.ui-tabs .ui-tabs-nav li a{float:left;padding:.38em 1em .75rem;outline:0;border-bottom:2px solid #fff}#seopress-admin-tabs.ui-tabs .ui-tabs-nav li.ui-tabs-active{margin-bottom:-1px}#seopress-admin-tabs.ui-tabs .ui-tabs-nav li.ui-state-disabled a,#seopress-admin-tabs.ui-tabs .ui-tabs-nav li.ui-tabs-active a,#seopress-admin-tabs.ui-tabs .ui-tabs-nav li.ui-tabs-loading a{cursor:text;border-bottom:2px solid #23282d;color:#23282d}#seopress-admin-tabs.ui-tabs .ui-tabs-nav li a,#seopress-admin-tabs.ui-tabs-collapsible .ui-tabs-nav li.ui-tabs-active a{cursor:pointer;color:#0073aa;text-decoration:none}#seopress-admin-tabs.ui-tabs-vertical{width:55em}#seopress-admin-tabs.ui-tabs-vertical .ui-tabs-nav{padding:.2em .1em .2em .2em;float:left;width:12em}#seopress-admin-tabs.ui-tabs-vertical .ui-tabs-nav li{clear:left;width:100%;border-bottom-width:1px!important;border-right-width:0!important;margin:0 -1px .2em 0}#seopress-admin-tabs.ui-tabs-vertical .ui-tabs-nav li.ui-tabs-active{padding-bottom:0;padding-right:.1em;border-right-width:1px}#seopress-admin-tabs.ui-tabs-vertical .ui-tabs-panel{padding:1em;float:right;width:40em}.seopress-styles .seopress-option{margin:10px auto 0;max-width:90%;padding:1rem;background:#fff;box-shadow:0 15px 35px rgba(50,50,93,.1),0 5px 15px rgba(0,0,0,.1);border-radius:4px}.seopress-styles .seopress-option h1{font-size:16px;font-weight:700;color:#3297d3;text-transform:uppercase;z-index:100;border-bottom:1px solid RGB(238,238,238);padding-bottom:20px}.seopress-styles .seopress-option h1 .dashicons,.seopress-styles .seopress-option h2 .dashicons{margin:0 10px;font-size:40px;width:40px;height:40px;vertical-align:middle}.seopress-styles .seopress-option .link-archive{font-size:14px}.seopress-styles .seopress-option .link-archive .dashicons{font-size:18px;width:20px;height:20px;margin:inherit}.seopress-styles .seopress-option h1>.dashicons{font-size:30px;width:30px;height:30px;background:#c4f0ff;border-radius:6px;padding:10px;margin-left:10px;color:#0085ba}.seopress-styles .seopress-option .metabox-holder h2 .dashicons{font-size:16px}.seopress-option h1 .feature-state .dashicons{font-size:16px;width:16px;height:16px;vertical-align:middle;margin:0 10px 0 0}#seopress-admin-tabs.wrap{display:block;box-shadow:0 7px 14px 0 rgba(60,66,87,.12),0 3px 6px 0 rgba(0,0,0,.12);width:64rem;max-width:100%;margin:0 auto}@media only screen and (max-width:1024px){#seopress-admin-tabs.wrap{width:100%}}.seopress-styles .seopress-option .submit{background:#fff;text-align:center;border-top:1px solid #f1f1f1;padding-top:20px;padding-bottom:20px;margin:0}.seopress-styles .seopress-option #seopress-aio-migrate,.seopress-styles .seopress-option #seopress-rk-migrate,.seopress-styles .seopress-option #seopress-seo-framework-migrate,.seopress-styles .seopress-option #seopress-squirrly-migrate,.seopress-styles .seopress-option #seopress-yoast-migrate,.seopress-styles .seopress-option #submit{color:#fff;text-decoration:none;border:none;border-radius:4px;padding-right:20px;padding-left:20px;line-height:34px;text-transform:uppercase;min-height:34px;transition:all .3s linear;text-shadow:none;box-shadow:0 7px 14px rgba(50,50,93,.1),0 3px 6px rgba(0,0,0,.1);margin-right:15px;background:RGB(106,124,148);position:relative;height:auto;z-index:10}.seopress-styles .seopress-option #seopress-aio-migrate:hover,.seopress-styles .seopress-option #seopress-rk-migrate:hover,.seopress-styles .seopress-option #seopress-seo-framework-migrate:hover,.seopress-styles .seopress-option #seopress-squirrly-migrate:hover,.seopress-styles .seopress-option #seopress-yoast-migrate:hover,.seopress-styles .seopress-option #submit:hover{text-decoration:none;color:#fff;background:#232323}.seopress-styles #wpcontent{padding-left:0}.seopress-styles pre{color:#42b72a;background:#f5f6f7;font-family:Menlo,Monaco,Andale Mono,Courier New,monospace;padding:7px}.seopress-styles #seopress-navbar{padding:10px .5rem;height:60px;margin:0 auto;width:64rem;box-sizing:border-box;position:relative;max-width:100%}#seopress-header{margin:0 auto;position:relative;width:90%;padding:1rem}#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:absolute;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:inline-block;width:100%;top:52px;visibility:hidden;cursor:auto;left:-.5rem}#seopress-header #seopress-admin h1:hover .seopress-quick-access{transform:none;opacity:1;pointer-events:auto;visibility:visible}#seopress-header #seopress-admin .seopress-quick-access>ul{margin:0;box-sizing:border-box;display:grid;grid-gap:0 10px;grid-template-columns:repeat(2,1fr);padding:20px}@media only screen and (max-width:1024px){#seopress-header #seopress-admin .seopress-quick-access>ul{grid-template-columns:repeat(1,1fr)}}#seopress-header #seopress-admin h1 .seopress-quick-access li{line-height:40px;margin:0;display:inline-block;height:40px;background-size:100%;background-repeat:no-repeat}#seopress-header #seopress-admin h1 .seopress-quick-access li .dashicons{vertical-align:middle;background:#b7e1f3;border-radius:50%;padding:5px;margin-right:15px}#seopress-header #seopress-admin h1 .seopress-quick-access li a{text-decoration:none;font-size:15px;line-height:30px;text-transform:uppercase;display:block;width:100%;transition:all .3s linear;color:#3297d3}#seopress-header #seopress-admin h1 .seopress-quick-access li a:hover{color:#647a88}#seopress-header #seopress-admin h1 .seopress-info-version{position:relative;left:50px;top:0;font-size:14px;width:100px;display:block}#seopress-header #seopress-admin .wpc-info-version{font-size:14px;left:310px;position:absolute;text-indent:0;top:85px}#seopress-header #seopress-notice{float:right;line-height:40px}#seopress-header #seopress-notice p{font-size:16px}#seopress-header #seopress-notice .dashicons{color:#6f8096;text-decoration:none;line-height:40px}#seopress-header #seopress-notice div.small{font-size:13px;display:inline}#seopress-footer-credits{font-style:italic}#seopress-footer-credits .wporg-ratings{display:inline}#seopress-footer-credits .wporg-ratings a{text-decoration:none}.seopress-option .seopress-settings{float:left;max-width:750px;width:100%}.seopress-option #seopress-edd-license-btn,.seopress-option #seopress-refresh{float:left}.wp-admin-ui_page_seopress-import-export .postbox{margin-right:20px}.seopress-option #side-sortables .accordion-section-content{padding:0}.seopress-option .seopress-settings label{margin:0 0 0 10px}.wrap-seopress-tab-content{position:relative;display:block;width:100%;max-width:64rem;margin:0 auto;box-sizing:border-box}#seopress-admin-tabs .seopress-tab{padding:1.5rem;visibility:hidden;overflow:hidden;opacity:0;transition:all .2s ease;transform:translateX(-15px);position:absolute;top:0;box-sizing:border-box}#seopress-admin-tabs .seopress-tab.active{visibility:visible;overflow:inherit;opacity:1;transform:translateX(0);display:inherit;position:relative}#seopress-tabs .seopress-tab{padding:0 1.5rem;width:calc(100% - 230px);display:none}@media only screen and (max-width:1024px){#seopress-tabs .seopress-tab{width:100%}}#seopress-tabs .seopress-tab.active{display:inline-block;border-left:1px solid RGB(238,238,238)}@media only screen and (max-width:782px){#seopress-tabs .seopress-tab.active{width:100%;padding:0;border-left:none;border-top:1px solid RGB(238,238,238)}}.seopress-option input[type=password],.seopress-option input[type=text],.seopress-option textarea{min-width:485px}@media only screen and (max-width:1024px){.seopress-option input[type=password],.seopress-option input[type=text],.seopress-option textarea{min-width:inherit;width:100%}}#seopress_htaccess_file{width:100%}.seopress-option textarea{min-height:100px}.seopress-option #side-sortables .highlight{border:1px dashed #ccc;display:block;width:382px;height:40px;background:0 0}.seopress-option #side-sortables .accordion-section{margin-bottom:9px;width:382px}.seopress-option #side-sortables .accordion-section h3{cursor:move;border:1px solid #e5e5e5;background:#fafafa}.seopress-option #side-sortables .accordion-section .inside{padding:10px 10px 24px;border-width:0 1px 1px;border-style:solid;box-shadow:0 1px 1px rgba(0,0,0,.04);border-color:#e5e5e5;display:inline-block;width:calc(100% - 22px);height:100%}.seopress-option #side-sortables .accordion-section .inside ul{padding-left:10px;margin-bottom:0;padding-top:2px;padding-bottom:2px}.seopress-option #side-sortables .accordion-section .inside ul li{border-left:2px solid #ccc;padding-left:10px;margin-bottom:10px}.seopress-option #side-sortables .accordion-section .inside ul li:first-child{border-bottom:1px dotted #e5e5e5;border-left:0;padding-bottom:10px;font-weight:700;margin-left:-15px;margin-bottom:10px}.seopress-notice #message{margin:5px 10px 2px 0}#seopress-notice a{position:relative;text-decoration:none;margin:0 0 0 .3rem}#seopress-notice a .tooltip{white-space:pre;z-index:200;padding:2px 5px;font-weight:500;font-size:12px;color:#aab7c4;background:#fff;box-shadow:0 1px 2px 0 rgba(49,49,93,.1),0 0 1px 0 rgba(0,0,0,.1);border-radius:2px;position:absolute;opacity:0;top:30px;transition:opacity .2s ease;visibility:hidden;line-height:20px;left:-100%;overflow:hidden}#seopress-notice a:hover .tooltip{opacity:1;visibility:visible}.seopress-page-list{margin:1.5rem auto}.seopress-option .dashicons,.seopress-page-list .dashicons{vertical-align:middle;margin-right:5px;color:#6f8096}#seopress-admin-tabs .ui-tabs-nav,#seopress-notifications-center,.seopress-get-started,.seopress-page-list .seopress-feature,.seopress-useful-tools{margin:0 auto 20px;max-width:64rem;padding:2rem;width:100%;border-radius:0 0 4px 4px;box-sizing:border-box}.seopress-get-started{margin-top:20px;background:#fff url(../img/bg-hero-support.svg) no-repeat 95% 50%/contain;position:relative;box-sizing:border-box;box-shadow:0 7px 14px 0 rgba(60,66,87,.12),0 3px 6px 0 rgba(0,0,0,.12)}.seopress-get-started .inside{max-width:calc(100% - 380px)}@media only screen and (max-width:782px){.seopress-get-started{background:#fff}.seopress-get-started .inside{max-width:100%}}.seopress-get-started .preheader{text-transform:uppercase;font-size:.8rem;font-weight:600}.seopress-get-started h2{font-size:1.85em;margin:15px 0 0 0;font-weight:400}.seopress-get-started p{margin-bottom:20px}.seopress-get-started a .dashicons{vertical-align:middle;text-decoration:none;color:#6a7c94}.seopress-get-started a.button-primary .dashicons{color:#fff}.seopress-get-started a.btn-link .dashicons{margin-right:5px}.seopress-get-started a.btn-link{margin:0 0 0 10px}#seopress-notifications-center,.seopress-useful-tools{background:#fff;padding:0}.seopress-page-list .seopress-feature{padding:0;position:relative;overflow:hidden;transition-duration:.15s;display:flex;margin:0;background:#fff;box-shadow:0 7px 14px 0 rgba(60,66,87,.12),0 3px 6px 0 rgba(0,0,0,.12);flex-wrap:wrap;border-radius:4px;width:100%;height:100%}.seopress-page-list .seopress-feature p{color:#6b7c93;font-size:14px;margin-bottom:30px}#seopress-notifications-center{margin-top:0}#seopress-admin-tabs .ui-tabs-nav{display:flex;padding-top:1rem;padding-bottom:0}.seopress-page-list .seopress-feature .img-tool{height:50px;width:50px;background:#c4f0ff;position:relative;border-radius:6px}.seopress-page-list .seopress-feature .img-tool .dashicons{color:#217ab7;font-size:30px;text-align:left;vertical-align:middle;width:100%;height:100%;position:absolute;top:calc(50% - 15px);left:calc(50% - 15px);margin:0}.seopress-page-list .seopress-feature .inner{margin:0;display:inline-block;padding:1.5rem;width:100%;height:100%;box-sizing:border-box}.seopress-page-list .seopress-feature h3{margin:1rem 0 0 0;font-size:16px;font-weight:700;color:#3297d3;text-transform:uppercase}.seopress-page-list .seopress-feature h3 .dashicons{font-size:16px;margin-left:5px;vertical-align:middle}#seopress-content .seopress-page-list .seopress-feature a,#seopress-notifications-center .seopress-alert .button-primary,.seopress-get-started .button-primary,.seopress-option .seopress-feature a,.seopress-useful-tools .widget .button-primary{color:#fff;text-decoration:none;border:none;border-radius:4px;padding-right:20px;padding-left:20px;line-height:34px;text-transform:uppercase;min-height:34px;transition:all .3s linear;text-shadow:none;box-shadow:0 7px 14px rgba(50,50,93,.1),0 3px 6px rgba(0,0,0,.1);background:#6a7c94;position:relative;height:auto;display:flex;flex-wrap:wrap}#seopress-content .seopress-page-list .seopress-feature a.button-secondary{padding-left:30px}#seopress-content .seopress-page-list .seopress-feature a.button-secondary::before,#seopress-notifications-center .seopress-alert .button-primary::after{content:"\f111";font-family:Dashicons;position:absolute;left:10px;top:1px;-moz-osx-font-smoothing:grayscale;-webkit-font-smoothing:antialiased;font-size:16px}#seopress-content .seopress-page-list .wrap-btn{display:inline-flex;margin-bottom:2rem;flex-direction:column}#seopress-content .seopress-page-list .seopress-feature a.view-redirects,#seopress-notifications-center .seopress-alert .button-primary,.seopress-get-started .button,.seopress-option .button{color:#6a7c94;background:#fff;font-weight:500;transition:all .3s linear;text-shadow:none;text-transform:uppercase;padding-right:20px;padding-left:20px;line-height:34px;min-height:34px;margin:10px 0;border-radius:4px;box-shadow:transparent 0 0 0 0,transparent 0 0 0 0,rgba(0,0,0,.12) 0 1px 1px 0,rgba(60,66,87,.16) 0 0 0 1px,transparent 0 0 0 0,transparent 0 0 0 0,rgba(60,66,87,.12) 0 2px 5px 0;vertical-align:baseline;display:inline-flex;align-items:center;border:none;margin-right:.5rem;cursor:pointer}.seopress-get-started .button{color:#fff;background:#6259e6;box-shadow:none}.seopress-option .wp-picker-container button{box-shadow:none;border:1px solid #0071a1;border-radius:3px;background:#f3f5f6;text-transform:none}.seopress-option .wp-picker-container input[type=text].wp-color-picker{min-width:inherit}.seopress-option .wp-picker-container .wp-picker-default{margin:0}.seopress-option .wp-picker-container .wp-picker-clear{box-shadow:none;text-transform:none;border-radius:0;background:0 0;margin:0}.seopress-option .wp-picker-container .wp-picker-clear:hover{background:0 0;text-decoration:currentColor;color:inherit}.seopress-option .button .dashicons{font-size:16px;align-items:center;display:flex}#seopress-content .seopress-page-list .seopress-feature a.view-redirects{padding-left:30px}#seopress-notifications-center .seopress-alert .button-primary::after{content:"\f344";left:inherit;right:10px}#seopress-content .seopress-page-list .seopress-feature a.view-redirects::before{content:"\f177"}#seopress-content .seopress-page-list .seopress-feature a:hover,#seopress-notifications-center .seopress-alert .button-primary:hover,.seopress-get-started .button-primary:hover,.seopress-option .button:hover,.seopress-option .seopress-feature a:hover,.seopress-useful-tools .widget .button-primary:hover{text-decoration:none;color:#fff;background:#232323}.seopress-get-started .button .dashicons{transition:all .3s linear}.seopress-get-started .button:hover .dashicons{color:#fff}#seopress-content .seopress-page-list .seopress-feature .seopress-doc:focus,#seopress-content .seopress-page-list .seopress-feature a:focus,#seopress-content .seopress-page-list .seopress-feature a:focus.button-secondary,#seopress-content a:focus,#seopress-notifications-center .seopress-alert .button-primary:focus,.seopress-option #seopress-tabs .seopress-doc:focus,.seopress-option .seopress-feature a:focus,.seopress-styles .seopress-option #seopress-aio-migrate:focus,.seopress-styles .seopress-option #seopress-yoast-migrate:focus,.seopress-styles .seopress-option #submit:focus,.seopress-useful-tools .widget .button-primary:focus{box-shadow:0 1px 0 #0073aa,0 0 2px 1px #33b3db;background:#008ec2;border-color:#006799;color:#fff}#seopress-admin-tabs .nav-tab-wrapper a.nav-tab-active:focus{color:inherit}#seopress-notifications-center .seopress-alert .button-primary{margin:5px 0;padding-right:30px}#seopress-notifications-center h2,.seopress-useful-tools h2{margin:5px 0 15px 5px;display:inline-block;width:100%}#seopress-notifications-center .dashicons,.seopress-useful-tools .dashicons{margin-right:10px}#seopress-notifications-center .seopress-alert{padding:1.5rem 2rem 1.2rem 1rem;border-bottom:1px solid #e6ebf1;width:calc(100% - 3rem);flex:1 1 auto;position:relative;transition:all 150ms ease;align-items:center;display:flex;justify-content:space-between}#seopress-notifications-center .seopress-alert:last-child{margin-bottom:0;border-bottom:none}#seopress-notifications-center .seopress-alert:hover{cursor:default}#seopress-notifications-center .dashicons{display:flex;align-self:normal;width:48px;height:48px;color:#d7dade;font-size:48px;padding:0 1rem}#seopress-notifications-center .seopress-alert p{margin:0}#seopress-notifications-center .notice-left{flex:1}#seopress-notifications-center .notice-left>p:first-child{color:#1a1f36;font-weight:500}#seopress-notifications-center .notice-right{padding:1rem 0 0 0;display:flex}#seopress-notifications-center .seopress-alert.impact::after{content:"";width:10px;height:10px;border-radius:50px;position:absolute;right:1rem;top:1rem}#seopress-notifications-center .seopress-alert.impact.low::after{background:#ffde24}#seopress-notifications-center .seopress-alert.impact.medium::after{background:#e39f48}#seopress-notifications-center .seopress-alert.impact.high::after{background:#e25950}#seopress-notifications-center .seopress-alert.impact.info::after{background:#0085ba}#seopress-notifications-center .seopress-alert.dashicons{color:#6f8096}#seopress-notifications-center .dashicons.remove-notice,.seopress-get-started .remove-notice{position:absolute;right:0;color:#6b7c93;font-size:20px;height:30px;width:30px;vertical-align:middle;top:1.2rem;line-height:30px;padding:5px;transition:all .3s linear;margin:0;display:block}.seopress-get-started .remove-notice{top:10px;right:10px}#seopress-notifications-center .dashicons.remove-notice:hover,.seopress-get-started .remove-notice:hover{color:#1a1f36;cursor:pointer}#seopress-content .seopress-page-list .seopress-feature .seopress-doc,.seopress-option #seopress-tabs .seopress-doc{background:0 0;padding:0;text-decoration:none;color:inherit;box-shadow:none;position:absolute;right:.5rem;top:1rem}#seopress-content .seopress-page-list .seopress-feature .seopress-doc:active,#seopress-content .seopress-page-list .seopress-feature .seopress-doc:focus,#seopress-content .seopress-page-list .seopress-feature .seopress-doc:hover,.seopress-option #seopress-tabs .seopress-doc:active,.seopress-option #seopress-tabs .seopress-doc:focus,.seopress-option #seopress-tabs .seopress-doc:hover{color:#747474;background:0 0;box-shadow:none;border:none}#seopress-content .seopress-page-list .seopress-feature .seopress-doc:hover .dashicons{color:#232323}.seopress-option .seopress-table{background:#fff;border:1px solid #ccc}.seopress-option .seopress-table th{padding:15px 10px;vertical-align:middle}.wp-admin-ui_page_seopress-roles .seopress-option .seopress-table th{min-width:200px}.seopress-option .seopress-table .seopress-settings-section{background:#f1f1f1}.seopress-option .seopress-table .seopress-table-head .seopress-feature{border-bottom:1px solid #ccc;font-weight:700;background:#f1f1f1}#seopress-content .feature-state,.seopress-option .feature-state{font-style:italic;font-size:10px;display:inline-block;background:rgba(0,140,135,.1);padding:2px 10px;border-radius:25px;color:#444;font-weight:400;text-transform:none;-moz-osx-font-smoothing:initial;-webkit-font-smoothing:initial}@media only screen and (max-width:782px){#seopress-content .feature-state,.seopress-option .feature-state{display:none}}.seopress-option .seopress_wrap_single_cpt .feature-state,.seopress-option .seopress_wrap_tax .feature-state{padding:2px 12px;margin:0 0 .5rem .5rem}.seopress-option #tab_seopress_titles_archives h2,.seopress-option #tab_seopress_titles_single h2,.seopress-option #tab_seopress_titles_tax h2{margin:2em 0 1em 0;border-top:1px solid #eee;padding:1em 0 0 0}.seopress-option #tab_seopress_titles_archives h2:first-child,.seopress-option #tab_seopress_titles_single h2:first-child,.seopress-option #tab_seopress_titles_tax h2:first-child{border-top:none;margin:0 0 1em 0}#seopress_cpt .seopress-tag-dropdown,#seopress_cpt .tag-title,#seopress_pro_cpt .tag-title,.seopress-button,.seopress-option .tag-title{cursor:pointer;font-weight:500;border-radius:4px;transition:all .3s linear}#seopress-content .feature-state-on,#seopress-content .feature-state.feature-state-on,.seopress-option .feature-state-on,.seopress-option .feature-state.feature-state-on{display:inline-block}#seopress-content .feature-state-off,.seopress-option .feature-state-off{display:none}.seopress-option .postbox .inside li{list-style:square inside;padding-left:5px}#tab_seopress_page_speed .inside li{list-style:none;padding-left:0;word-break:break-word}.seopress-option .log{margin:0;text-transform:uppercase;display:inline-block;vertical-align:middle;padding:5px;color: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_pro_cpt .wrap-tags,.seopress-option .wrap-tags{position:relative;display:inline-block;width:100%;margin-bottom:10px}#seopress_cpt .sp-wrap-tag-variables-list,#seopress_pro_cpt .sp-wrap-tag-variables-list{position:relative;float:left;display:none}#seopress_cpt .sp-tag-variables-list,#seopress_pro_cpt .sp-tag-variables-list{background:#fff;position:absolute;left:-42px;width:300px;border-radius:4px;z-index:100;top:20px;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);height:300px;z-index:100;overflow:auto}#seopress_cpt #seopress_titles_title_meta{margin-bottom:.2rem}#seopress_cpt .sp-wrap-tag-variables-list.open,#seopress_pro_cpt .sp-wrap-tag-variables-list.open{display:block}#seopress_cpt .seopress-tag-single-all.seopress-tag-dropdown .dashicons,#seopress_cpt .seopress-tag-single-all.tag-title .dashicons,#seopress_pro_cpt .seopress-tag-single-all.tag-title .dashicons{margin:0;transition:all 150ms linear}#seopress_cpt .seopress-tag-single-all.open .dashicons,#seopress_pro_cpt .seopress-tag-single-all.open .dashicons{transform:rotateX(180deg)}#seopress_cpt .sp-tag-variables-list li,#seopress_pro_cpt .sp-tag-variables-list li{padding:8px 12px;cursor:pointer;margin:0;border-bottom:1px solid #f0f0f0}#seopress_cpt .sp-tag-variables-list li span,#seopress_pro_cpt .sp-tag-variables-list li span{display:block;font-weight:700;font-size:12px;margin-bottom:2px}#seopress_cpt .sp-tag-variables-list li:hover,#seopress_pro_cpt .sp-tag-variables-list li:hover{background:#0385ba;color:#fff}#seopress_cpt .sp-tag-variables-list li::after,#seopress_pro_cpt .sp-tag-variables-list li::after{content:attr(data-value);display:inline-block;background:#e9ecef;padding:1px 5px;color:#333;font-family:Menlo,Monaco,Andale Mono,Courier New,monospace;border-radius:3px;font-size:11px}#seopress_cpt .seopress-tag-dropdown .dashicons,#seopress_cpt .tag-title .dashicons,#seopress_pro_cpt .tag-title .dashicons,.seopress-option .tag-title .dashicons{padding:0;height:16px;width:16px;font-size:16px;margin-right:5px;vertical-align:middle}.seopress-overlay-tag-dropdown{position:absolute;display:none;top:0;left:0;width:100%;height:100%;z-index:50}.seopress-overlay-tag-dropdown.active{display:block}#seopress_cpt .seopress-tag-dropdown,#seopress_cpt .tag-title,#seopress_pro_cpt .tag-title,.seopress-option .tag-title{padding:4px 8px;position:relative;top:5px;left:0;font-size:11px;float:left;margin-right:5px;user-select:none;margin-bottom:5px;background:#fff;color:#6b7c93;box-shadow:0 0 0 .5px rgba(50,50,93,.17),0 2px 5px 0 rgba(50,50,93,.12),0 3px 9px 0 rgba(50,50,93,.08),0 1px 1.5px 0 rgba(0,0,0,.08),0 1px 2px 0 rgba(0,0,0,.08)}#seopress_cpt .seopress-tag-dropdown .tag-title:active,#seopress_cpt .tag-title:active,#seopress_cpt .tag-title:focus,#seopress_cpt .tag-title:hover,#seopress_cpt-option .seopress-tag-dropdown .tag-title:focus,#seopress_cpt-option .seopress-tag-dropdown .tag-title:hover,#seopress_pro_cpt .tag-title:active,#seopress_pro_cpt .tag-title:focus,#seopress_pro_cpt .tag-title:hover,.seopress-tag-dropdown:active,.seopress-tag-dropdown:focus,.seopress-tag-dropdown:hover{background:#232323;color:#fff;user-select:none}.seopress-button{text-transform:uppercase;background:#fff;border-color:#c8d7e1;border-style:solid;border-width:1px 1px 2px;color:#2e4453;display:inline-block;margin:0;outline:0;overflow:hidden;text-overflow:ellipsis;text-decoration:none;vertical-align:top;box-sizing:border-box;font-size:14px;line-height:20px;padding:6px 8px 6px;-webkit-appearance:none;-moz-appearance:none;appearance:none}.seopress-button:hover{border-color:#a8bece;color:#00a0d2}.seopress-button .dashicons{vertical-align:middle}#seopress-content #tab_seopress_seo_tools.seopress-useful-tools .widget{border-right:1px solid #e6ebf1;margin:0;padding:0 20px;width:calc(50% - 2px);box-sizing:border-box;display:inline-block;vertical-align:top}#seopress-content #tab_seopress_seo_tools.seopress-useful-tools .widget:first-child{width:100%;display:block;clear:both;border-right:none;border-bottom:1px solid #e6ebf1;padding-bottom:20px;margin-bottom:20px}#seopress-content #tab_seopress_seo_tools.seopress-useful-tools .widget:last-child{border-right:none}#seopress-content .seopress-useful-tools .widget-reverse ul{background:#fff}#seopress-content .seopress-useful-tools .widget-reverse li{padding:10px;margin:0;border-bottom:1px solid #e6ebf1}#seopress-content .seopress-useful-tools .widget-reverse li:hover{background:#f5f7fa}#seopress-content .seopress-useful-tools .widget-title{text-transform:uppercase;margin:0 0 10px;font-size:13px;padding:10px 0;color:#24b47e}#seopress-content .seopress-reverse label,#seopress-content .seopress-useful-tools .widget-whois ul li span{font-weight:700}#seopress-content #seopress-reverse-url{width:100%;margin:10px 0}#seopress-content .widget-reverse p{margin:0}.post-type-seopress_backlinks .wp-list-table .column-seopress_backlinks_url{width:35%}.post-type-seopress_backlinks .wp-list-table .column-seopress_backlinks_anchor_text{width:20%}.seopress-styles #screen-meta{margin:0;position:relative;background-color:#fff;border-bottom:0 solid #f2f2f2;border-top:none;-webkit-box-shadow:0 0 0 1px rgba(136,152,170,.1),0 15px 35px 0 rgba(49,49,93,.1),0 5px 15px 0 rgba(0,0,0,.08);box-shadow:0 0 0 1px rgba(136,152,170,.1),0 15px 35px 0 rgba(49,49,93,.1),0 5px 15px 0 rgba(0,0,0,.08);top:0}.seopress-styles #contextual-help-link-wrap,.seopress-styles #screen-options-link-wrap{float:right;height:28px;margin:0 0 0 6px;border:1px solid #f2f2f2;border-top:none;background:#fff;-webkit-box-shadow:0 0 0 1px rgba(136,152,170,.1),0 15px 35px 0 rgba(49,49,93,.1),0 5px 15px 0 rgba(0,0,0,.08);box-shadow:0 0 0 1px rgba(136,152,170,.1),0 15px 35px 0 rgba(49,49,93,.1),0 5px 15px 0 rgba(0,0,0,.08)}.seopress-styles #screen-meta-links .show-settings{box-shadow:none}.seopress-styles #screen-meta-links .screen-meta-toggle{position:relative;top:0;z-index:2000}.seopress-styles #contextual-help-back{background:#f8fafd}.seopress-styles .contextual-help-tabs .active{border-left:2px solid #3297d3;background:#f8fafd}#seopress-content input.toggle,#seopress_cpt input.toggle,.seopress-option input.toggle{max-height:0;max-width:0;opacity:0;position:relative}.seopress-feature input.toggle{display:block}.wrap-toggle-preview{position:relative}.wrap-toggle-preview p{font-weight:700;margin:0 0 1rem 0}#seopress_cpt input.toggle,.seopress_wrap_single_cpt input.toggle,.seopress_wrap_tax input.toggle{margin:0;border:none;min-width:0}#seopress_content_analysis span.label,#seopress_cpt span.label{outline:0;color:#fff;box-shadow:none;background:#555d66;padding:2px 4px;border-radius:4px;font-weight:700}#seopress_add_to_insights{margin-left:1rem}#seopress_add_to_insights_status{display:inline-block;font-weight:700;margin:0 0 0 1rem;vertical-align:middle;padding:.3rem;font-style:italic}#seopress-content input.toggle+label,#seopress_cpt #tabs-1 input.toggle+label,.seopress-option input.toggle+label{display:inline-block;position:relative;box-shadow:inset 0 0 0 1px #d5d5d5;text-indent:-5000px;height:20px;width:40px;border-radius:15px}#seopress_cpt #tabs-1 input.toggle+label{margin:0}.wrap-toggle-checkboxes input.toggle+label{float:left;margin-right:10px}#seopress-content input.toggle+label:before,#seopress_cpt input.toggle+label:before,.seopress-option input.toggle+label:before{content:"";position:absolute;display:block;height:20px;width:30px;top:0;left:0;border-radius:15px;background:rgba(19,191,17,0);-moz-transition:.25s ease-in-out;-webkit-transition:.25s ease-in-out;transition:.25s ease-in-out}#seopress-content input.toggle+label:after,#seopress_cpt input.toggle+label:after,.seopress-option input.toggle+label:after{content:"";position:absolute;display:block;height:20px;width:20px;top:0;left:0;border-radius:15px;background:#fff;box-shadow:inset 0 0 0 1px rgba(0,0,0,.2),0 2px 4px rgba(0,0,0,.2);-moz-transition:.25s ease-in-out;-webkit-transition:.25s ease-in-out;transition:.25s ease-in-out}#seopress_cpt input.toggle+label,#seopress_cpt input.toggle+label:before,.seopress_wrap_single_cpt input.toggle+label,.seopress_wrap_single_cpt input.toggle+label:before,.seopress_wrap_tax input.toggle+label,.seopress_wrap_tax input.toggle+label:before{width:40px;height:20px}#seopress_cpt input.toggle+label:after,.seopress_wrap_single_cpt input.toggle+label:after,.seopress_wrap_tax input.toggle+label:after{width:20px;height:20px}#seopress-content input.toggle[data-toggle="1"]+label:before,#seopress_cpt input.toggle[data-toggle="1"]+label:before,.seopress-option input.toggle[data-toggle="1"]+label:before{width:40px;background:#3197d3}#seopress_cpt input.toggle[data-toggle="1"]+label:before,.seopress_wrap_single_cpt input.toggle[data-toggle="1"]+label:before,.seopress_wrap_tax input.toggle[data-toggle="1"]+label:before{width:40px;background:#3197d3}#seopress-content input.toggle[data-toggle="1"]+label:after,#seopress_cpt input.toggle[data-toggle="1"]+label:after,.seopress-option input.toggle[data-toggle="1"]+label:after{left:20px;box-shadow:inset 0 0 0 1px #3197d3,0 2px 4px rgba(0,0,0,.2)}#seopress_cpt input.toggle[data-toggle="1"]+label:after,.seopress_wrap_single_cpt input.toggle[data-toggle="1"]+label:after,.seopress_wrap_tax input.toggle[data-toggle="1"]+label:after{box-shadow:inset 0 0 0 1px #3197d3,0 2px 4px rgba(0,0,0,.2)}#seopress-content .seopress-page-list{position:relative;display:grid;max-width:64rem;grid-gap:20px 20px;grid-template-columns:repeat(3,1fr)}@media only screen and (max-width:782px){#seopress-content .seopress-page-list{grid-template-columns:repeat(1,1fr)}}#seopress-notice-save{position:fixed;color:#fff;padding:15px 40px;font-size:.9rem;text-transform:uppercase;text-align:center;border-radius:0;background:rgba(74,184,102,.9);bottom:0;right:0;z-index:500;width:100%;font-weight:700}#seopress-notice-save .dashicons{color:#fff}.seopress-styles .wrap{margin:20px 0 0 0;display:flex;position:relative}.seopress-insights.seopress-styles .wrap,.toplevel_page_seopress-option.seopress-styles .wrap{display:inherit;position:inherit;margin:inherit}@media only screen and (max-width:782px){.seopress-styles .wrap{display:inherit;position:inherit;margin:inherit}}.seopress_page_seopress-pro-page #wpcontent{background:#f4f7fa}.seopress-option .wrap div.nav-tab-wrapper{margin:0 0 0 -26px;padding:0 0 0 10px;line-height:inherit;width:230px;z-index:95;font-weight:400;display:block;border-bottom:none}@media only screen and (max-width:782px){.seopress-option .wrap div.nav-tab-wrapper{width:100%;margin:0;padding:0}}#seopress-admin-tabs.wrap div.nav-tab-wrapper{margin:20px auto 0;max-width:64rem;width:100%;border-bottom:1px solid #e6ebf1;padding:0;line-height:inherit;position:-webkit-sticky;position:sticky;background:#f5f7fa;z-index:100;top:31px;border-radius:4px 4px 0 0;font-weight:400;overflow:hidden;display:flex;align-items:center;justify-content:space-between;box-sizing:border-box}@media only screen and (max-width:600px){#seopress-admin-tabs.wrap div.nav-tab-wrapper{top:0;display:block}}@media only screen and (max-width:1024px){#seopress-admin-tabs.wrap div.nav-tab-wrapper{display:block}}#seopress-admin-tabs #tab_seopress_notifications.seopress-tab{background:0 0;padding:0;border-radius:0}.seopress-option .nav-tab{border:0 solid #ccc;background:0 0;opacity:.5;padding:6px 30px 6px 10px;transition:opacity .3s linear;color:#191e23;margin:0;float:none;display:inline-block;width:100%;text-align:left;font-weight:400;box-sizing:border-box;white-space:normal}#seopress-admin-tabs .nav-tab{border:0 solid #ccc;background:0 0;opacity:.5;padding:14px 20px;transition:opacity .3s linear;color:#191e23;margin:0;box-shadow:inset -1px 0 #e3e8ee;float:none;display:inline-block;text-align:center;font-weight:400}#seopress-admin-tabs .nav-tab{width:100%}#seopress-admin-tabs .nav-tab-active,#seopress-admin-tabs .nav-tab-active:hover,.seopress-option .about-wrap h2 .nav-tab-active,.seopress-option .nav-tab-active,.seopress-option .nav-tab-active:hover{background-color:#fff}#seopress-admin-tabs .nav-tab-active,#seopress-admin-tabs .nav-tab-active:focus,#seopress-admin-tabs .nav-tab-active:focus:active,#seopress-admin-tabs .nav-tab-active:hover,#seopress-admin-tabs .nav-tab:focus,.nav-tab-active:focus,.seopress-option .nav-tab-active,.seopress-option .nav-tab-active:focus:active,.seopress-option .nav-tab-active:hover,.seopress-option .nav-tab:focus{opacity:1;outline:0;font-weight:600;position:relative;color:#191e23;border-left:3px solid #0085ba;background:rgba(0,133,186,.1)}#seopress-admin-tabs .nav-tab-active,#seopress-admin-tabs .nav-tab-active:focus,#seopress-admin-tabs .nav-tab-active:focus:active,#seopress-admin-tabs .nav-tab-active:hover,#seopress-admin-tabs .nav-tab:focus{border-bottom:3px solid #3197d3;border-left:none;background:#fff}#seopress-admin-tabs .nav-tab:hover,.seopress-option .nav-tab:hover{opacity:1}#seopress-admin-tabs .nav-tab:focus,.seopress-option .nav-tab:focus{outline:0;box-shadow:none}.seopress-option .section-tool{border:none;box-shadow:none;background:0 0;position:relative}.seopress-option .section-tool::after{content:'';background:#dedede;height:1px;width:100%;display:block}.seopress-option .sp-section-header{border-bottom:1px solid #eee;margin:0 0 1rem 0;width:100%;display:flex;position:relative;align-items:center;padding-bottom:.5rem}.seopress-option .sp-section-header::after{position:absolute;content:'';background:#0085ba;height:2px;width:40px;bottom:0;left:0}.seopress-option .sp-section-header h2{font-size:1.5em}.seopress-option .sp-section-header>.dashicons{color:#0085ba;padding:10px;border-radius:6px;margin-right:10px;background:#c4f0ff}.seopress-option .sp-section-header .wrap-toggle-checkboxes{display:flex}.seopress-styles .wrap .notice{margin:5px 0 15px 15px}#seopress-tabs.wrap .notice{margin:1rem 0}.seopress-BlankState a.button-primary,.seopress-BlankState button.button-primary,.seopress-message a.button-primary,.seopress-message button.button-primary{background:#6259e6;border-color:#6259e6;box-shadow:transparent 0 0 0 0,transparent 0 0 0 0,rgba(0,0,0,.12) 0 1px 1px 0,rgba(60,66,87,.16) 0 0 0 1px,transparent 0 0 0 0,transparent 0 0 0 0,rgba(60,66,87,.12) 0 2px 5px 0;color:#fff;display:inline-block}.seopress-BlankState a.button-primary:active,.seopress-BlankState a.button-primary:focus,.seopress-BlankState a.button-primary:hover,.seopress-BlankState button.button-primary:active,.seopress-BlankState button.button-primary:focus,.seopress-BlankState button.button-primary:hover,.seopress-message a.button-primary:active,.seopress-message a.button-primary:focus,.seopress-message a.button-primary:hover,.seopress-message button.button-primary:active,.seopress-message button.button-primary:focus,.seopress-message button.button-primary:hover{background:#6259e6;border-color:#6259e6;box-shadow:inset 0 1px 0 rgba(255,255,255,.25),0 1px 0 #6259e6}.post-type-seopress_404 .seopress-BlankState-message::before,.post-type-seopress_schemas .seopress-BlankState-message::before{font-family:Dashicons;speak:none;font-weight:400;font-variant:normal;text-transform:none;line-height:1;margin:0;text-indent:0;position:absolute;top:0;left:0;width:100%;height:100%;text-align:center;content:"\f103"}.post-type-seopress_schemas .seopress-BlankState-message::before{content:"\f495"}.seopress-BlankState{text-align:center;padding:5em 0 0}.seopress-BlankState .seopress-BlankState-message{color:#aaa;margin:0 auto 1.5em;line-height:1.5em;font-size:1.2em;max-width:500px}.seopress-BlankState .seopress-BlankState-message::before{color:#ddd;text-shadow:0 -1px 1px rgba(0,0,0,.2),0 1px 0 rgba(255,255,255,.8);font-size:8em;display:block;position:relative!important;top:auto;left:auto;line-height:1em;margin:0 0 .1875em}.seopress-BlankState .seopress-BlankState-cta{font-size:1.2em;padding:.75em 1.5em;margin:0 .25em;height:auto;display:inline-block!important}.seopress-BlankState{max-width:764px;text-align:center;margin:auto}.seopress-BlankState .seopress-BlankState-message{color:#444;font-size:1.5em;margin:0 auto 1em}.seopress-BlankState .seopress-BlankState-message::before{font-size:120px}.seopress-BlankState .seopress-BlankState-buttons{margin-bottom:4em}#seopress_content_analysis .up,#seopress_content_analysis .up .dashicons{color:#4ab866}#seopress_content_analysis .down,#seopress_content_analysis .down .dashicons{color:#d94f4f}#seopress_content_analysis .up .dashicons{transform:rotateZ(45deg)}#seopress_content_analysis .stable .dashicons{transform:rotateZ(90deg)}#seopress_content_analysis .down .dashicons{transform:rotateZ(135deg)}#seopress_content_analysis .wrap-insights-post{clear:both;border-top:1px solid #e2e4e7;display:flex;align-items:center}#seopress_content_analysis .wrap-insights-post .widget-insights-title{margin:0 1rem}#seopress_content_analysis .wrap-insights-post span{font-weight:700;margin:0 .2rem 0 0}#seopress_content_analysis .wrap-insights-post .sp-tooltip *{font-weight:400}#seopress_content_analysis .wrap-insights-post .sp-tooltip-headings{font-weight:700}.components-snackbar-list{position:fixed;right:0;bottom:40px;padding-left:16px;padding-right:16px;animation-name:sp-fade-in-out;animation-duration:5s;animation-iteration-count:1;animation-fill-mode:forwards;visibility:hidden;z-index:1}.components-snackbar__content{display:flex;align-items:center;justify-content:space-between;line-height:1.4}.components-snackbar{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen-Sans,Ubuntu,Cantarell,Helvetica Neue,sans-serif;font-size:13px;background-color:#32373c;border-radius:4px;box-shadow:0 2px 4px rgba(0,0,0,.3);color:#fff;padding:16px 24px;width:100%;max-width:600px;box-sizing:border-box;cursor:pointer}.components-snackbar .dashicons{color:#fff}
1
+ @keyframes sp-fade-in-out{0%{opacity:0;bottom:0;visibility:hidden}25%{opacity:1;bottom:40px;visibility:visible}75%{opacity:1;visibility:visible}100%{opacity:0;visibility:hidden}}#adminmenu div.wp-menu-image.dashicons-admin-seopress::before,#seopress-header #seopress-admin h1::before{content:"\e800";font-family:seopress!important;font-weight:700;font-size:12px;line-height:20px}#seopress-header #seopress-admin h1::before,.seopress-page-list .seopress-feature h3,.seopress-styles .seopress-option h1{-moz-osx-font-smoothing:grayscale;-webkit-font-smoothing:antialiased}@font-face{font-family:seopress;src:url(../fonts/seopress.eot?81521271);src:url(../fonts/seopress.eot?81521271#iefix) format("embedded-opentype"),url(../fonts/seopress.woff?81521271) format("woff2"),url(../fonts/seopress.woff?81521271) format("woff"),url(../fonts/seopress.ttf?81521271) format("truetype"),url(../fonts/seopress.svg?81521271#seopress) format("svg");font-weight:400;font-style:normal}[class*=" icon-seopress"],[class^=icon-seopress-]{font-family:seopress!important;font-size:14px!important;line-height:24px!important}#tab_seopress_titles_archives .form-table th:empty,#tab_seopress_titles_single .form-table th:empty,#tab_seopress_titles_tax .form-table th:empty{display:none}.icon-seopress-seopress:before{content:"\e800"}#wpadminbar #wp-toolbar #wp-admin-bar-seopress_custom_top_level .wrap-seopress-noindex{background:red;color:#fff;padding:0 8px;float:right;margin-left:6px}#wpadminbar #wp-toolbar #wp-admin-bar-seopress_custom_top_level>a{display:inline-block}#wpadminbar #wp-toolbar #wp-admin-bar-seopress_custom_top_level .wrap-seopress-noindex .ab-icon::before{color:#eee;vertical-align:middle}#wpadminbar #wp-toolbar #wp-admin-bar-seopress_custom_sub_menu_meta_robots{display:block;background:#23292d}#wpadminbar #wp-toolbar #wp-admin-bar-seopress_custom_sub_menu_meta_robots a{height:inherit;padding-bottom:5px}#wpadminbar #wp-toolbar #wp-admin-bar-seopress_custom_sub_menu_meta_robots .wrap-seopress-cpt-seo{font-weight:700;border-bottom:1px solid currentColor;width:100%;display:block;margin-bottom:5px}#wpadminbar #wp-toolbar #wp-admin-bar-seopress_custom_sub_menu_meta_robots .wrap-seopress-cpt-nofollow,#wpadminbar #wp-toolbar #wp-admin-bar-seopress_custom_sub_menu_meta_robots .wrap-seopress-cpt-noindex{display:block}#wpadminbar #wp-toolbar #wp-admin-bar-seopress_custom_sub_menu_meta_robots .wrap-seopress-cpt-nofollow .ab-icon,#wpadminbar #wp-toolbar #wp-admin-bar-seopress_custom_sub_menu_meta_robots .wrap-seopress-cpt-noindex .ab-icon{float:none;vertical-align:middle}#wpadminbar #wp-toolbar #wp-admin-bar-seopress_custom_sub_menu_meta_robots .wrap-seopress-cpt-nofollow .on::before,#wpadminbar #wp-toolbar #wp-admin-bar-seopress_custom_sub_menu_meta_robots .wrap-seopress-cpt-noindex .on::before{color:red}#wpadminbar #wp-toolbar #wp-admin-bar-seopress_custom_sub_menu_meta_robots .wrap-seopress-cpt-nofollow .off::before,#wpadminbar #wp-toolbar #wp-admin-bar-seopress_custom_sub_menu_meta_robots .wrap-seopress-cpt-noindex .off::before{color:#46b450}.sp-tooltip{position:relative;margin-left:5px;display:inline-block;cursor:help;vertical-align:bottom;text-align:left;background:0 0;border:none;padding:0}.sp-tooltip .dashicons{color:#666}.sp-tooltip .sp-tooltiptext{visibility:hidden;position:absolute;z-index:999999999;width:300px;right:-303px;padding:20px;top:25px;font-weight:400;box-shadow:0 3px 30px rgba(25,30,35,.1);border:1px solid #e2e4e7;background:#fff;word-break:break-word;text-transform:none}.sp-tooltip .sp-tooltiptext::before{border:8px solid #e2e4e7;top:-8px}.sp-tooltip .sp-tooltiptext::after{border:8px solid #fff;top:-6px}.sp-tooltip .sp-tooltiptext::after,.sp-tooltip .sp-tooltiptext::before{border-bottom-style:solid;border-left-color:transparent;border-right-color:transparent;border-top:none;margin-left:-10px;content:"";position:absolute;height:0;width:0;line-height:0;left:30px}.sp-tooltip:active .sp-tooltiptext,.sp-tooltip:focus .sp-tooltiptext,.sp-tooltip:hover .sp-tooltiptext{visibility:visible}.sp-tooltip .sp-tooltip-headings{font-size:18px;font-weight:600;margin-bottom:20px;display:block}.sp-tooltip .sp-tooltip-desc{margin-bottom:20px;display:block;border-bottom:1px solid #e2e4e7;padding-bottom:20px;font-size:13px}.sp-tooltip .sp-tooltip-code{font-family:Menlo,Monaco,Andale Mono,Courier New,monospace;display:block;word-break:break-all;color:#1a7a06;font-size:11px}.analysis-score .sp-tooltip{vertical-align:middle;font-size:.75em}#seopress_content_analysis a{color:#0073aa}#seopress_content_analysis .wrap-seopress-analysis{display:inline-block;width:100%}#seopress_content_analysis .col-left{width:calc(50% - 30px);float:left;margin-right:30px}#seopress_content_analysis .col-right{float:right;width:50%}#seopress_content_analysis #seopress_suggestions{display:inline-block;width:100%;margin:0;height:auto;padding:20px 0}#seopress_content_analysis #seopress_suggestions li{list-style:none;margin:5px;display:inline-block}#seopress_content_analysis .analysis-score{clear:both;border-top:1px solid #e2e4e7;display:flex;justify-content:space-between;align-items:center}.column-seopress_score .analysis-score{display:flex;align-content:center}#seopress_content_analysis .analysis-score p,.column-seopress_score .analysis-score p{font-weight:700;font-size:1.2em}#seopress_content_analysis .analysis-score svg,.column-seopress_score .analysis-score svg{display:inline-block;height:30px;width:30px;margin:0;border-radius:100%;position:relative;font-weight:600;shape-rendering:geometricprecision;font-size:.5rem;vertical-align:middle;margin-right:15px}.column-seopress_score .analysis-score p,.column-seopress_score .analysis-score svg{margin:0}@keyframes loadingPulse{0%{stroke:#adc5d2}50%{stroke:#00a0d2}100%{stroke:#adc5d2}}#seopress_content_analysis .analysis-score .loading #bar{stroke-dashoffset:0!important;stroke:#adc5d2!important;animation:loadingPulse 3s infinite ease-in-out}#seopress_content_analysis .analysis-score .good #bar,.column-seopress_score .analysis-score #bar.good{stroke:#46b450}#seopress_content_analysis .analysis-score .notgood #bar,.column-seopress_score .analysis-score #bar.notgood{stroke-dashoffset:565;stroke:#ffb900}#seopress_content_analysis .analysis-score svg circle,.column-seopress_score .analysis-score svg circle{stroke-dashoffset:0;transition:stroke-dashoffset 1s linear;stroke:#ccc;stroke-width:2em}#seopress_content_analysis .gr-analysis{clear:both}#seopress_content_analysis .gr-analysis-title{border-top:1px solid #e2e4e7;position:relative}#seopress_content_analysis .gr-analysis-title .impact,#seopress_cpt .impact{position:absolute;left:10px;top:calc(50% - 5px);width:10px;height:10px;border-radius:50px;padding:0;margin:0;border:1px solid #fff}#seopress_content_analysis .gr-analysis .impact.good{background:#46b450;box-shadow:0 0 5px #46b450}#seopress_content_analysis .gr-analysis .impact.low{background:#ffde24;box-shadow:0 0 5px #ffde24}#seopress_content_analysis .gr-analysis .impact.medium{background:#e39f48;box-shadow:0 0 5px #e39f48}#seopress_content_analysis .gr-analysis .impact.high,#seopress_cpt .impact.high{background:#e25950;box-shadow:0 0 5px #e25950}#seopress_content_analysis .gr-analysis-content .impact.high{background:#e25950;box-shadow:none;color:#fff;padding:2px 4px;margin-left:5px;border-radius:4px;font-weight:700}#seopress_cpt .impact.high{position:relative;top:calc(50% - 18px);display:inline-block;left:inherit;right:-10px}#seopress_content_analysis .description,#seopress_cpt .description,.seopress-tab .description{display:block;font-style:italic}#seopress_content_analysis .gr-analysis-title button{background:#fff;border:0;cursor:pointer;display:block;margin:0;position:relative;text-align:left;width:100%;padding:15px 30px;align-items:center;transition:all .3s linear}#seopress_content_analysis .gr-analysis-title button:hover{background:#f3f4f5}#seopress_content_analysis .gr-analysis-title button:focus{color:#191e23;border:none;box-shadow:none;outline-offset:-2px;outline:1px dotted #555d66}#seopress_content_analysis .gr-analysis-title button .sp-arrow::after{content:"\f343";font-family:Dashicons;position:absolute;right:10px;top:calc(50% - 7px)}#seopress_content_analysis .gr-analysis-title button.open .sp-arrow::after{content:"\f347"}#seopress_content_analysis .gr-analysis-content{padding:0 1rem .5rem 1rem;display:none;width:100%;border-top:1px solid #e2e4e7;box-sizing:border-box}table.wp-list-table .manage_column.column-seopress_canonical,table.wp-list-table .manage_column.column-seopress_desc,table.wp-list-table .manage_column.column-seopress_insights,table.wp-list-table .manage_column.column-seopress_noindex,table.wp-list-table .manage_column.column-seopress_redirect_enable,table.wp-list-table .manage_column.column-seopress_redirect_url,table.wp-list-table .manage_column.column-seopress_title,table.wp-list-table .manage_column.column-seopress_tkw{width:7%!important}#seopress_content_analysis h3{margin:0;font-size:1em}#seopress_content_analysis h4{border-bottom:1px solid #e2e4e7;padding-bottom:.5rem;text-transform:uppercase;font-size:.85em;position:-webkit-sticky;position:sticky;top:0;background:#fff}#seopress_content_analysis .wrap-analysis-img ul{display:flex;flex-wrap:wrap}#seopress_content_analysis .wrap-analysis-img ul li{padding:0;text-align:left;cursor:default}#seopress_content_analysis .wrap-analysis-img h4{border-bottom:1px solid #ddd;padding-bottom:10px}#seopress_content_analysis .wrap-analysis-img ul li img{max-width:150px;max-height:150px;object-fit:cover;border:1px solid #f3f4f5;cursor:default;padding:1px}#seopress_cpt .notice{padding:10px 14px}#seopress-analysis-tabs .dashicons,#seopress_cpt .dashicons{vertical-align:middle}#seopress-analysis-tabs{clear:both}#seopress_cpt .inside{margin:0;padding:0}#seopress_cpt .ui-tabs .ui-tabs-nav{display:inline-block;min-height:26px;position:relative;width:100%;z-index:10;margin:0;border-radius:0;padding:0;background:#f3f4f5;border:none}#seopress_cpt .ui-tabs .sp-section{font-weight:700;font-size:13px}#seopress_cpt .ui-helper-clearfix:after{content:none}.seopress_page_seopress-titles #seopress-tabs .form-table td,.seopress_page_seopress-titles #seopress_content_analysis .form-table td{padding:0}#seopress_cpt .ui-tabs .ui-tabs-panel{background:#fff;border-radius:0;display:inline-block;padding:1em 1.4em;width:100%;box-sizing:border-box}#seopress_content_analysis .dashicons-info,#seopress_cpt .ui-tabs .ui-tabs-panel .dashicons-info,#seopress_pro_cpt .dashicons-info{font-size:16px;vertical-align:middle;height:16px;width:16px}#seopress_cpt .ui-tabs .ui-tabs-nav li,#seopress_cpt .ui-tabs-anchor{cursor:pointer!important}#seopress_cpt .ui-tabs .ui-tabs-nav li.ui-tabs-active{position:relative;z-index:60;cursor:pointer;border-radius:0;border-bottom:3px solid #0085ba}#seopress_content_analysis label,#seopress_cpt #tabs-1 label,#seopress_cpt #tabs-2 label[for=seopress_robots_breadcrumbs_meta],#seopress_cpt #tabs-2 label[for=seopress_robots_canonical_meta],#seopress_cpt #tabs-2 label[for=seopress_robots_primary_cat_meta],#seopress_cpt #tabs-3 label,#seopress_cpt #tabs-4 label,#seopress_cpt #tabs-5 label,#seopress_cpt #tabs-6 label,#seopress_cpt .subsection-title{display:block;margin:20px 0 5px;font-weight:700}#seopress_cpt .wp-color-result{margin:0}#seopress_content_analysis input[type=text],#seopress_cpt #tabs-1 input,#seopress_cpt #tabs-2 input[type=text],#seopress_cpt #tabs-3 input[type=text],#seopress_cpt #tabs-3 textarea,#seopress_cpt #tabs-4 input[type=text],#seopress_cpt #tabs-5 input[type=text],#seopress_cpt #tabs-6 input[type=text],#seopress_cpt #tabs-6 textarea{width:100%;display:inline-block}#seopress_cpt #tabs-1 input{width:100%}#seopress_cpt #tabs-6 input[type=number]{width:30%;min-width:200px}#seopress_cpt #tabs-6 #wrap-videos .video:first-child .remove-video{display:none}#seopress_cpt select{width:300px}#seopress_cpt #tabs-4 select{width:250px;display:inline}#seopress_cpt #tabs-4 #seopress_redirections_value_meta{width:calc(100% - 258px);float:right}#seopress_cpt #tabs-6{padding:0}#seopress_cpt #tabs-6 #wrap-videos .video .accordion-section-content,#seopress_cpt #tabs-6>p{padding:0 1.4em}#seopress_cpt #tabs-6 #wrap-videos .video .accordion-section-content{padding:0 1.4em 1em}#seopress_cpt #tabs-6 #wrap-videos .video{border-top:1px solid #eee}#seopress_cpt #tabs-6 #wrap-videos .video .accordion-section-title{border-left:none;border-right:none;font-size:1em;padding:1em 1.4em}#seopress_cpt #tabs-6 #wrap-videos .video:last-child .accordion-section-content,#seopress_cpt #tabs-6 #wrap-videos .video:last-child .accordion-section-title{border-bottom:1px solid #eee}#seopress_cpt #tabs-6 #wrap-videos .video .inside{padding:0}#seopress_cpt #tabs-4 #seopress_redirections_enabled,#seopress_cpt #tabs-5 #seopress_news_disabled,#seopress_cpt #tabs-5 #seopress_news_standout,#seopress_cpt #tabs-6 #seopress_video_disabled,#seopress_cpt #tabs-6 .family-friendly label,#seopress_cpt #tabs-6 .internal_video label{font-weight:400}#seopress_cpt #tabs-6 #wrap-videos .video:nth-child(odd){background:#fdfdfd}#seopress_content_analysis .advise,#seopress_cpt .advise,#seopress_pro_cpt .advise,.seopress-option .advise{margin:5px;display:block;color:red;font-style:italic}#seopress_cpt #tabs-6 #wrap-videos .video .advise{color:#555}#seopress_content_analysis .mandatory,#seopress_cpt .mandatory{color:#c00}#seopress_cpt .box-left{float:left;width:49%;margin-right:1%}#seopress_cpt .box-right{float:left;width:49%;margin-left:1%}#seopress_cpt #tabs-3 .box-left{width:44%}#seopress_cpt #tabs-3 .box-right{width:54%}@media only screen and (max-width:1200px){#seopress_cpt .box-left,#seopress_cpt .box-right{float:none;width:100%;margin:0}}@media only screen and (max-width:1500px){#seopress_cpt #tabs-3 .box-left,#seopress_cpt #tabs-3 .box-right{float:none;width:100%;margin:0}}#edittag #seopress_cpt #tabs-3 .box-left,#edittag #seopress_cpt #tabs-3 .box-right{float:none;width:100%;margin:0}#seopress-tabs .seopress_media_upload,#seopress_pro_cpt .seopress_media_upload{margin-top:.5rem}#seopress_cpt .google-snippet-preview{font-family:arial,sans-serif;word-break:break-all}#seopress_cpt .google-snippet-preview.mobile-preview .wrap-snippet{margin:0 0 10px 0;box-shadow:0 1px 6px rgba(32,33,36,.28);border-radius:8px;padding:12px 16px}#seopress_cpt .google-snippet-preview>p{word-break:normal}#seopress_cpt .google-snippet-preview .snippet-title,#seopress_cpt .google-snippet-preview .snippet-title-custom,#seopress_cpt .google-snippet-preview .snippet-title-default{color:#1a0dab;font-size:18px;font-weight:400;line-height:21.6px}#seopress_cpt .google-snippet-preview.mobile-preview .snippet-title,#seopress_cpt .google-snippet-preview.mobile-preview .snippet-title-custom,#seopress_cpt .google-snippet-preview.mobile-preview .snippet-title-default{font-size:16px;line-height:20px;margin-bottom:12px}#seopress_cpt .google-snippet-preview .snippet-permalink{color:#006621;font-size:14px;font-style:normal;font-weight:400;line-height:16px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}#seopress_cpt .google-snippet-preview .wrap-snippet .wrap-m-icon-permalink,#seopress_cpt .google-snippet-preview.mobile-preview .snippet-permalink{display:none}#seopress_cpt .google-snippet-preview.mobile-preview .wrap-m-icon-permalink{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;margin-bottom:12px;display:flex}#seopress_cpt .google-snippet-preview.mobile-preview .wrap-m-icon-permalink .snippet-permalink{display:block;color:#3c4043;font-size:12px}#seopress_cpt .google-snippet-preview.mobile-preview .snippet-favicon{margin-right:12px;vertical-align:middle}#seopress_cpt .google-snippet-preview.mobile-preview .snippet-favicon img{width:16px;height:16px;max-width:inherit}#seopress_cpt .google-snippet-preview.mobile-preview .wrap-snippet .snippet-permalink:first-child{color:#3c4043;white-space:nowrap;font-size:12px;display:block}#seopress_cpt .google-snippet-preview .snippet-description,#seopress_cpt .google-snippet-preview .snippet-description-custom,#seopress_cpt .google-snippet-preview .snippet-description-default{color:#545454;font-size:14px;font-weight:400;line-height:18.2px;display:inline}#seopress_cpt .google-snippet-preview.mobile-preview .snippet-description,#seopress_cpt .google-snippet-preview.mobile-preview .snippet-description-custom,#seopress_cpt .google-snippet-preview.mobile-preview .snippet-description-default{color:#3c4043;font-size:14px;line-height:20px}#seopress_cpt .google-snippet-preview .snippet-date{color:grey;display:inline}#seopress_cpt .facebook-snippet-box{color:#4b4f56;font-size:14px;width:524px}#seopress_cpt .facebook-snippet-box .notice,#seopress_cpt .twitter-snippet-box .notice{padding:10px 14px;margin:0 0 10px 0;box-sizing:border-box;width:100%}#seopress_cpt .facebook-snippet-box .notice span,#seopress_cpt .twitter-snippet-box .notice span{font-weight:700}#seopress_cpt .snippet-meta{display:flex;overflow:hidden;max-height:12px}#seopress_cpt .fb-by,#seopress_cpt .snippet-fb-site-name,#seopress_cpt .snippet-fb-url{color:#606770;font-size:12px;white-space:normal;line-height:11px;text-transform:uppercase;-webkit-box-orient:vertical;display:-webkit-box;text-overflow:ellipsis}#seopress_cpt .fb-sep{padding-left:5px;padding-right:5px;color:#606770;line-height:11px;font-size:12px}#seopress_cpt .facebook-snippet-box .facebook-snippet-text{border:1px solid #dadde1;background-color:#f2f3f5;padding:10px 12px}#seopress_cpt .facebook-snippet-box .title-desc{max-height:46px;overflow:hidden}#seopress_cpt .facebook-snippet-box .snippet-fb-title,#seopress_cpt .facebook-snippet-box .snippet-fb-title-custom,#seopress_cpt .facebook-snippet-box .snippet-fb-title-default{font-size:16px;line-height:20px;margin:3px 0 0;padding-top:2px;color:#1d2129;font-weight:700;overflow:hidden;-webkit-box-orient:vertical;display:-webkit-box;text-overflow:ellipsis;white-space:normal;word-break:break-word;max-height:22px}#seopress_cpt .facebook-snippet-box .snippet-fb-description,#seopress_cpt .facebook-snippet-box .snippet-fb-description-custom,#seopress_cpt .facebook-snippet-box .snippet-fb-description-default{color:#606770;font-size:14px;line-height:20px;word-break:break-word;font-family:Helvetica,Arial,sans-serif;max-height:80px;overflow:hidden;-webkit-box-orient:vertical;display:-webkit-box;text-overflow:ellipsis;white-space:normal;width:100%}#seopress_cpt .facebook-snippet-box img{display:block;height:274px;width:524px;object-fit:cover;background-color:#edeff0;text-align:center;border-bottom:none}#seopress_cpt .twitter-snippet-box{color:#4b4f56;font-size:14px;width:436px}#seopress_cpt .snippet-twitter-url{color:#8899a6;font-size:14px;white-space:normal;line-height:11px;text-transform:uppercase;-webkit-box-orient:vertical;display:-webkit-box;text-overflow:ellipsis}#seopress_cpt .twitter-snippet-box .twitter-snippet-text{border:1px solid #dadde1;background-color:#fff;padding:10px 12px;border-radius:0 0 10px 10px}#seopress_cpt .twitter-snippet-box .title-desc{max-height:46px;overflow:hidden}#seopress_cpt .twitter-snippet-box .snippet-twitter-img,#seopress_cpt .twitter-snippet-box .snippet-twitter-img-custom,#seopress_cpt .twitter-snippet-box .snippet-twitter-img-default{border-radius:10px 10px 0 0;overflow:hidden}#seopress_cpt .twitter-snippet-box .snippet-twitter-title,#seopress_cpt .twitter-snippet-box .snippet-twitter-title-custom,#seopress_cpt .twitter-snippet-box .snippet-twitter-title-default{font-size:1em;line-height:20px;margin-bottom:5px;max-height:1.3em;color:#000;font-weight:700;overflow:hidden;-webkit-box-orient:vertical;display:-webkit-box;text-overflow:ellipsis;white-space:normal;word-break:break-word}#seopress_cpt .twitter-snippet-box .snippet-twitter-description,#seopress_cpt .twitter-snippet-box .snippet-twitter-description-custom,#seopress_cpt .twitter-snippet-box .snippet-twitter-description-default{color:#000;font-size:14px;line-height:20px;word-break:break-word;font-family:Helvetica,Arial,sans-serif;max-height:80px;overflow:hidden;-webkit-box-orient:vertical;display:-webkit-box;text-overflow:ellipsis;white-space:normal;width:100%}#seopress_cpt .twitter-snippet-box img{display:block;height:200px;width:436px;object-fit:cover;background-color:#edeff0;text-align:center;border-bottom:none}#seopress_cpt .wrap-seopress-counters,#seopress_pro_cpt .wrap-seopress-counters,.seopress-setup .wrap-seopress-counters,.seopress-styles .wrap-seopress-counters{text-align:right;background:#e9ecef;padding:2px 5px;display:flex;font-size:12px;justify-content:flex-end;border-radius:0 0 .25rem .25rem}#seopress_cpt .sp-progress,#seopress_pro_cpt .sp-progress,.seopress-setup .sp-progress,.seopress-styles .sp-progress{display:-ms-flexbox;display:flex;height:1rem;overflow:hidden;font-size:.75rem;background-color:#e9ecef;border-radius:.25rem .25rem 0 0}#seopress_cpt .sp-progress-bar,#seopress_pro_cpt .sp-progress-bar,.seopress-setup .sp-progress-bar,.seopress-styles .sp-progress-bar{display:-ms-flexbox;display:flex;-ms-flex-direction:column;flex-direction:column;-ms-flex-pack:center;justify-content:center;color:#fff;text-align:center;white-space:nowrap;background-color:#0085ba;transition:width .6s ease}#seopress_cpt #seopress_titles_desc_counters,#seopress_cpt #seopress_titles_title_counters,#seopress_pro_cpt #seopress_rich_snippets_articles_counters,#seopress_pro_cpt #seopress_rich_snippets_courses_counters{display:inline;margin-right:5px}#seopress_cpt #seopress_titles_desc_counters_val,#seopress_cpt #seopress_titles_title_counters_val,#seopress_pro_cpt #seopress_rich_snippets_articles_counters_val,#seopress_pro_cpt #seopress_rich_snippets_courses_counters_val{display:inline;font-weight:700}#term-seopress #seopress_cpt{width:95%}.fixed .column-seopress_ps,.fixed .column-seopress_score,.fixed .column-seopress_w3c,.fixed .column-seopress_words{width:6%}table.fixed thead .column-seopress_nofollow,table.fixed thead .column-seopress_noindex{width:8%}@media only screen and (max-width:1200px){table.fixed thead .column-seopress_nofollow,table.fixed thead .column-seopress_noindex,table.fixed thead .column-seopress_ps,table.fixed thead .column-seopress_score,table.fixed thead .column-seopress_w3c,table.fixed thead .column-seopress_words{width:10%}}#seopress_cpt .ui-tabs{position:relative;padding:0;border:none;font-family:inherit;font-size:inherit;display:inline-block;width:100%}#seopress_cpt .ui-tabs .ui-tabs-nav li{list-style:none;display:inline-block;position:relative;top:2px;padding:0 5px;white-space:nowrap;margin:0;border:none;background:0 0}#seopress_cpt .ui-tabs .ui-tabs-nav li a{display:inline-block;padding:5px 10px}#seopress-admin-tabs.ui-tabs-vertical .ui-tabs-nav li a,#seopress_cpt .ui-tabs-vertical .ui-tabs-nav li a{display:block}#seopress_cpt .ui-tabs .ui-tabs-nav li.ui-tabs-active{margin-bottom:2px;padding-bottom:1px}#seopress_cpt .ui-tabs .ui-tabs-nav li.ui-state-disabled a,#seopress_cpt .ui-tabs .ui-tabs-nav li.ui-tabs-active a,#seopress_cpt .ui-tabs .ui-tabs-nav li.ui-tabs-loading a{color:#191e23;font-weight:700}#seopress_cpt .ui-tabs .ui-tabs-nav li a,#seopress_cpt .ui-tabs-collapsible .ui-tabs-nav li.ui-tabs-active a{cursor:pointer;color:#191e23;text-decoration:none;height:40px;line-height:40px}#seopress_cpt .ui-tabs-vertical{width:55em}#seopress_cpt .ui-tabs-vertical .ui-tabs-nav{padding:.2em .1em .2em .2em;float:left;width:12em}#seopress_cpt .ui-tabs-vertical .ui-tabs-nav li{clear:left;width:100%;border-bottom-width:1px!important;border-right-width:0!important;margin:0 -1px .2em 0}#seopress_cpt .ui-tabs-vertical .ui-tabs-nav li.ui-tabs-active{padding-bottom:0;padding-right:.1em;border-right-width:1px}#seopress_cpt .ui-tabs-vertical .ui-tabs-panel{padding:1em;float:right;width:40em}#seopress_cpt .ui-tabs .ui-tabs-nav li a .dashicons{margin-right:2px}#tab-panel-seopress_titles_help_tab li span{font-weight:700;margin-right:10px}#seopress_content_analysis .dashicons-no-alt,#seopress_content_analysis .dashicons-yes,#seopress_pro_cpt .dashicons-no-alt,#seopress_pro_cpt .dashicons-yes{color:#fff;background:#12bd10;border-radius:50px;margin-right:10px}#seopress_content_analysis .dashicons-no-alt,#seopress_pro_cpt .dashicons-no-alt{background:#e25950}body.seopress-styles{background:#f8fafd}#seopress-admin-tabs.ui-tabs{position:relative;padding:.2em;border:none;font-family:inherit;font-size:inherit}#seopress-admin-tabs.ui-tabs .ui-tabs-nav li{list-style:none;float:left;position:relative;top:0;margin:-1px .2em 0 0;padding:0;white-space:nowrap;border:none;background:0 0}#seopress-admin-tabs.ui-tabs .ui-tabs-nav li a{float:left;padding:.38em 1em .75rem;outline:0;border-bottom:2px solid #fff}#seopress-admin-tabs.ui-tabs .ui-tabs-nav li.ui-tabs-active{margin-bottom:-1px}#seopress-admin-tabs.ui-tabs .ui-tabs-nav li.ui-state-disabled a,#seopress-admin-tabs.ui-tabs .ui-tabs-nav li.ui-tabs-active a,#seopress-admin-tabs.ui-tabs .ui-tabs-nav li.ui-tabs-loading a{cursor:text;border-bottom:2px solid #23282d;color:#23282d}#seopress-admin-tabs.ui-tabs .ui-tabs-nav li a,#seopress-admin-tabs.ui-tabs-collapsible .ui-tabs-nav li.ui-tabs-active a{cursor:pointer;color:#0073aa;text-decoration:none}#seopress-admin-tabs.ui-tabs-vertical{width:55em}#seopress-admin-tabs.ui-tabs-vertical .ui-tabs-nav{padding:.2em .1em .2em .2em;float:left;width:12em}#seopress-admin-tabs.ui-tabs-vertical .ui-tabs-nav li{clear:left;width:100%;border-bottom-width:1px!important;border-right-width:0!important;margin:0 -1px .2em 0}#seopress-admin-tabs.ui-tabs-vertical .ui-tabs-nav li.ui-tabs-active{padding-bottom:0;padding-right:.1em;border-right-width:1px}#seopress-admin-tabs.ui-tabs-vertical .ui-tabs-panel{padding:1em;float:right;width:40em}.seopress-styles .seopress-option{margin:10px auto 0;max-width:90%;padding:1rem;background:#fff;box-shadow:0 15px 35px rgba(50,50,93,.1),0 5px 15px rgba(0,0,0,.1);border-radius:4px}.seopress-styles .seopress-option h1{font-size:16px;font-weight:700;color:#3297d3;text-transform:uppercase;z-index:100;border-bottom:1px solid RGB(238,238,238);padding-bottom:20px}.seopress-styles .seopress-option h1 .dashicons,.seopress-styles .seopress-option h2 .dashicons{margin:0 10px;font-size:40px;width:40px;height:40px;vertical-align:middle}.seopress-styles .seopress-option .link-archive{font-size:14px}.seopress-styles .seopress-option .link-archive .dashicons{font-size:18px;width:20px;height:20px;margin:inherit}.seopress-styles .seopress-option h1>.dashicons{font-size:30px;width:30px;height:30px;background:#c4f0ff;border-radius:6px;padding:10px;margin-left:10px;color:#0085ba}.seopress-styles .seopress-option .metabox-holder h2 .dashicons{font-size:16px}.seopress-option h1 .feature-state .dashicons{font-size:16px;width:16px;height:16px;vertical-align:middle;margin:0 10px 0 0}#seopress-admin-tabs.wrap{display:block;box-shadow:0 7px 14px 0 rgba(60,66,87,.12),0 3px 6px 0 rgba(0,0,0,.12);width:64rem;max-width:100%;margin:0 auto}@media only screen and (max-width:1024px){#seopress-admin-tabs.wrap{width:100%}}.seopress-styles .seopress-option .submit{background:#fff;text-align:center;border-top:1px solid #f1f1f1;padding-top:20px;padding-bottom:20px;margin:0}.seopress-styles .seopress-option #seopress-aio-migrate,.seopress-styles .seopress-option #seopress-rk-migrate,.seopress-styles .seopress-option #seopress-seo-framework-migrate,.seopress-styles .seopress-option #seopress-squirrly-migrate,.seopress-styles .seopress-option #seopress-yoast-migrate,.seopress-styles .seopress-option #submit{color:#fff;text-decoration:none;border:none;border-radius:4px;padding-right:20px;padding-left:20px;line-height:34px;text-transform:uppercase;min-height:34px;transition:all .3s linear;text-shadow:none;box-shadow:0 7px 14px rgba(50,50,93,.1),0 3px 6px rgba(0,0,0,.1);margin-right:15px;background:RGB(106,124,148);position:relative;height:auto;z-index:10}.seopress-styles .seopress-option #seopress-aio-migrate:hover,.seopress-styles .seopress-option #seopress-rk-migrate:hover,.seopress-styles .seopress-option #seopress-seo-framework-migrate:hover,.seopress-styles .seopress-option #seopress-squirrly-migrate:hover,.seopress-styles .seopress-option #seopress-yoast-migrate:hover,.seopress-styles .seopress-option #submit:hover{text-decoration:none;color:#fff;background:#232323}.seopress-styles #wpcontent{padding-left:0}.seopress-styles pre{color:#42b72a;background:#f5f6f7;font-family:Menlo,Monaco,Andale Mono,Courier New,monospace;padding:7px}.seopress-styles #seopress-navbar{padding:10px .5rem;height:60px;margin:0 auto;width:64rem;box-sizing:border-box;position:relative;max-width:100%}#seopress-header{margin:0 auto;position:relative;width:90%;padding:1rem}#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:absolute;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:inline-block;width:100%;top:52px;visibility:hidden;cursor:auto;left:-.5rem}#seopress-header #seopress-admin h1:hover .seopress-quick-access{transform:none;opacity:1;pointer-events:auto;visibility:visible}#seopress-header #seopress-admin .seopress-quick-access>ul{margin:0;box-sizing:border-box;display:grid;grid-gap:0 10px;grid-template-columns:repeat(2,1fr);padding:20px}@media only screen and (max-width:1024px){#seopress-header #seopress-admin .seopress-quick-access>ul{grid-template-columns:repeat(1,1fr)}}#seopress-header #seopress-admin h1 .seopress-quick-access li{line-height:40px;margin:0;display:inline-block;height:40px;background-size:100%;background-repeat:no-repeat}#seopress-header #seopress-admin h1 .seopress-quick-access li .dashicons{vertical-align:middle;background:#b7e1f3;border-radius:50%;padding:5px;margin-right:15px}#seopress-header #seopress-admin h1 .seopress-quick-access li a{text-decoration:none;font-size:15px;line-height:30px;text-transform:uppercase;display:block;width:100%;transition:all .3s linear;color:#3297d3}#seopress-header #seopress-admin h1 .seopress-quick-access li a:hover{color:#647a88}#seopress-header #seopress-admin h1 .seopress-info-version{position:relative;left:50px;top:0;font-size:14px;width:100px;display:block}#seopress-header #seopress-admin .wpc-info-version{font-size:14px;left:310px;position:absolute;text-indent:0;top:85px}#seopress-header #seopress-notice{float:right;line-height:40px}#seopress-header #seopress-notice p{font-size:16px}#seopress-header #seopress-notice .dashicons{color:#6f8096;text-decoration:none;line-height:40px}#seopress-header #seopress-notice div.small{font-size:13px;display:inline}#seopress-footer-credits{font-style:italic}#seopress-footer-credits .wporg-ratings{display:inline}#seopress-footer-credits .wporg-ratings a{text-decoration:none}.seopress-option .seopress-settings{float:left;max-width:750px;width:100%}.seopress-option #seopress-edd-license-btn,.seopress-option #seopress-refresh{float:left}.wp-admin-ui_page_seopress-import-export .postbox{margin-right:20px}.seopress-option #side-sortables .accordion-section-content{padding:0}.seopress-option .seopress-settings label{margin:0 0 0 10px}.wrap-seopress-tab-content{position:relative;display:block;width:100%;max-width:64rem;margin:0 auto;box-sizing:border-box}#seopress-admin-tabs .seopress-tab{padding:1.5rem;visibility:hidden;overflow:hidden;opacity:0;transition:all .2s ease;transform:translateX(-15px);position:absolute;top:0;box-sizing:border-box}#seopress-admin-tabs .seopress-tab.active{visibility:visible;overflow:inherit;opacity:1;transform:translateX(0);display:inherit;position:relative}#seopress-tabs .seopress-tab{padding:0 1.5rem;width:calc(100% - 230px);display:none}@media only screen and (max-width:1024px){#seopress-tabs .seopress-tab{width:100%}}#seopress-tabs .seopress-tab.active{display:inline-block;border-left:1px solid RGB(238,238,238)}@media only screen and (max-width:782px){#seopress-tabs .seopress-tab.active{width:100%;padding:0;border-left:none;border-top:1px solid RGB(238,238,238)}}.seopress-option input[type=password],.seopress-option input[type=text],.seopress-option textarea{min-width:485px}@media only screen and (max-width:1024px){.seopress-option input[type=password],.seopress-option input[type=text],.seopress-option textarea{min-width:inherit;width:100%}}#seopress_htaccess_file{width:100%}.seopress-option textarea{min-height:100px}.seopress-option #side-sortables .highlight{border:1px dashed #ccc;display:block;width:382px;height:40px;background:0 0}.seopress-option #side-sortables .accordion-section{margin-bottom:9px;width:382px}.seopress-option #side-sortables .accordion-section h3{cursor:move;border:1px solid #e5e5e5;background:#fafafa}.seopress-option #side-sortables .accordion-section .inside{padding:10px 10px 24px;border-width:0 1px 1px;border-style:solid;box-shadow:0 1px 1px rgba(0,0,0,.04);border-color:#e5e5e5;display:inline-block;width:calc(100% - 22px);height:100%}.seopress-option #side-sortables .accordion-section .inside ul{padding-left:10px;margin-bottom:0;padding-top:2px;padding-bottom:2px}.seopress-option #side-sortables .accordion-section .inside ul li{border-left:2px solid #ccc;padding-left:10px;margin-bottom:10px}.seopress-option #side-sortables .accordion-section .inside ul li:first-child{border-bottom:1px dotted #e5e5e5;border-left:0;padding-bottom:10px;font-weight:700;margin-left:-15px;margin-bottom:10px}.seopress-notice #message{margin:5px 10px 2px 0}#seopress-notice a{position:relative;text-decoration:none;margin:0 0 0 .3rem}#seopress-notice a .tooltip{white-space:pre;z-index:200;padding:2px 5px;font-weight:500;font-size:12px;color:#aab7c4;background:#fff;box-shadow:0 1px 2px 0 rgba(49,49,93,.1),0 0 1px 0 rgba(0,0,0,.1);border-radius:2px;position:absolute;opacity:0;top:30px;transition:opacity .2s ease;visibility:hidden;line-height:20px;left:-100%;overflow:hidden}#seopress-notice a:hover .tooltip{opacity:1;visibility:visible}.seopress-page-list{margin:1.5rem auto}.seopress-option .dashicons,.seopress-page-list .dashicons{vertical-align:middle;margin-right:5px;color:#6f8096}#seopress-admin-tabs .ui-tabs-nav,#seopress-notifications-center,.seopress-get-started,.seopress-page-list .seopress-feature,.seopress-useful-tools{margin:0 auto 20px;max-width:64rem;padding:2rem;width:100%;border-radius:0 0 4px 4px;box-sizing:border-box}.seopress-get-started{margin-top:20px;background:#fff url(img/bg-hero-support.svg) no-repeat 95% 50%/contain;position:relative;box-sizing:border-box;box-shadow:0 7px 14px 0 rgba(60,66,87,.12),0 3px 6px 0 rgba(0,0,0,.12)}.seopress-get-started .inside{max-width:calc(100% - 380px)}@media only screen and (max-width:782px){.seopress-get-started{background:#fff}.seopress-get-started .inside{max-width:100%}}.seopress-get-started .preheader{text-transform:uppercase;font-size:.8rem;font-weight:600}.seopress-get-started h2{font-size:1.85em;margin:15px 0 0 0;font-weight:400}.seopress-get-started p{margin-bottom:20px}.seopress-get-started a .dashicons{vertical-align:middle;text-decoration:none;color:#6a7c94}.seopress-get-started a.button-primary .dashicons{color:#fff}.seopress-get-started a.btn-link .dashicons{margin-right:5px}.seopress-get-started a.btn-link{margin:0 0 0 10px}#seopress-notifications-center,.seopress-useful-tools{background:#fff;padding:0}.seopress-page-list .seopress-feature{padding:0;position:relative;overflow:hidden;transition-duration:.15s;display:flex;margin:0;background:#fff;box-shadow:0 7px 14px 0 rgba(60,66,87,.12),0 3px 6px 0 rgba(0,0,0,.12);flex-wrap:wrap;border-radius:4px;width:100%;height:100%}.seopress-page-list .seopress-feature p{color:#6b7c93;font-size:14px;margin-bottom:30px}#seopress-notifications-center{margin-top:0}#seopress-admin-tabs .ui-tabs-nav{display:flex;padding-top:1rem;padding-bottom:0}.seopress-page-list .seopress-feature .img-tool{height:50px;width:50px;background:#c4f0ff;position:relative;border-radius:6px}.seopress-page-list .seopress-feature .img-tool .dashicons{color:#217ab7;font-size:30px;text-align:left;vertical-align:middle;width:100%;height:100%;position:absolute;top:calc(50% - 15px);left:calc(50% - 15px);margin:0}.seopress-page-list .seopress-feature .inner{margin:0;display:inline-block;padding:1.5rem;width:100%;height:100%;box-sizing:border-box}.seopress-page-list .seopress-feature h3{margin:1rem 0 0 0;font-size:16px;font-weight:700;color:#3297d3;text-transform:uppercase}.seopress-page-list .seopress-feature h3 .dashicons{font-size:16px;margin-left:5px;vertical-align:middle}#seopress-content .seopress-page-list .seopress-feature a,#seopress-notifications-center .seopress-alert .button-primary,.seopress-get-started .button-primary,.seopress-option .seopress-feature a,.seopress-useful-tools .widget .button-primary{color:#fff;text-decoration:none;border:none;border-radius:4px;padding-right:20px;padding-left:20px;line-height:34px;text-transform:uppercase;min-height:34px;transition:all .3s linear;text-shadow:none;box-shadow:0 7px 14px rgba(50,50,93,.1),0 3px 6px rgba(0,0,0,.1);background:#6a7c94;position:relative;height:auto;display:flex;flex-wrap:wrap}#seopress-content .seopress-page-list .seopress-feature a.button-secondary{padding-left:30px}#seopress-content .seopress-page-list .seopress-feature a.button-secondary::before,#seopress-notifications-center .seopress-alert .button-primary::after{content:"\f111";font-family:Dashicons;position:absolute;left:10px;top:1px;-moz-osx-font-smoothing:grayscale;-webkit-font-smoothing:antialiased;font-size:16px}#seopress-content .seopress-page-list .wrap-btn{display:inline-flex;margin-bottom:2rem;flex-direction:column}#seopress-content .seopress-page-list .seopress-feature a.view-redirects,#seopress-notifications-center .seopress-alert .button-primary,.seopress-get-started .button,.seopress-option .button{color:#6a7c94;background:#fff;font-weight:500;transition:all .3s linear;text-shadow:none;text-transform:uppercase;padding-right:20px;padding-left:20px;line-height:34px;min-height:34px;margin:10px 0;border-radius:4px;box-shadow:transparent 0 0 0 0,transparent 0 0 0 0,rgba(0,0,0,.12) 0 1px 1px 0,rgba(60,66,87,.16) 0 0 0 1px,transparent 0 0 0 0,transparent 0 0 0 0,rgba(60,66,87,.12) 0 2px 5px 0;vertical-align:baseline;display:inline-flex;align-items:center;border:none;margin-right:.5rem;cursor:pointer}.seopress-get-started .button{color:#fff;background:#6259e6;box-shadow:none}.seopress-option .wp-picker-container button{box-shadow:none;border:1px solid #0071a1;border-radius:3px;background:#f3f5f6;text-transform:none}.seopress-option .wp-picker-container input[type=text].wp-color-picker{min-width:inherit}.seopress-option .wp-picker-container .wp-picker-default{margin:0}.seopress-option .wp-picker-container .wp-picker-clear{box-shadow:none;text-transform:none;border-radius:0;background:0 0;margin:0}.seopress-option .wp-picker-container .wp-picker-clear:hover{background:0 0;text-decoration:currentColor;color:inherit}.seopress-option .button .dashicons{font-size:16px;align-items:center;display:flex}#seopress-content .seopress-page-list .seopress-feature a.view-redirects{padding-left:30px}#seopress-notifications-center .seopress-alert .button-primary::after{content:"\f344";left:inherit;right:10px}#seopress-content .seopress-page-list .seopress-feature a.view-redirects::before{content:"\f177"}#seopress-content .seopress-page-list .seopress-feature a:hover,#seopress-notifications-center .seopress-alert .button-primary:hover,.seopress-get-started .button-primary:hover,.seopress-option .button:hover,.seopress-option .seopress-feature a:hover,.seopress-useful-tools .widget .button-primary:hover{text-decoration:none;color:#fff;background:#232323}.seopress-get-started .button .dashicons{transition:all .3s linear}.seopress-get-started .button:hover .dashicons{color:#fff}#seopress-content .seopress-page-list .seopress-feature .seopress-doc:focus,#seopress-content .seopress-page-list .seopress-feature a:focus,#seopress-content .seopress-page-list .seopress-feature a:focus.button-secondary,#seopress-content a:focus,#seopress-notifications-center .seopress-alert .button-primary:focus,.seopress-option #seopress-tabs .seopress-doc:focus,.seopress-option .seopress-feature a:focus,.seopress-styles .seopress-option #seopress-aio-migrate:focus,.seopress-styles .seopress-option #seopress-yoast-migrate:focus,.seopress-styles .seopress-option #submit:focus,.seopress-useful-tools .widget .button-primary:focus{box-shadow:0 1px 0 #0073aa,0 0 2px 1px #33b3db;background:#008ec2;border-color:#006799;color:#fff}#seopress-admin-tabs .nav-tab-wrapper a.nav-tab-active:focus{color:inherit}#seopress-notifications-center .seopress-alert .button-primary{margin:5px 0;padding-right:30px}#seopress-notifications-center h2,.seopress-useful-tools h2{margin:5px 0 15px 5px;display:inline-block;width:100%}#seopress-notifications-center .dashicons,.seopress-useful-tools .dashicons{margin-right:10px}#seopress-notifications-center .seopress-alert{padding:1.5rem 2rem 1.2rem 1rem;border-bottom:1px solid #e6ebf1;width:calc(100% - 3rem);flex:1 1 auto;position:relative;transition:all 150ms ease;align-items:center;display:flex;justify-content:space-between}#seopress-notifications-center .seopress-alert:last-child{margin-bottom:0;border-bottom:none}#seopress-notifications-center .seopress-alert:hover{cursor:default}#seopress-notifications-center .dashicons{display:flex;align-self:normal;width:48px;height:48px;color:#d7dade;font-size:48px;padding:0 1rem}#seopress-notifications-center .seopress-alert p{margin:0}#seopress-notifications-center .notice-left{flex:1}#seopress-notifications-center .notice-left>p:first-child{color:#1a1f36;font-weight:500}#seopress-notifications-center .notice-right{padding:1rem 0 0 0;display:flex}#seopress-notifications-center .seopress-alert.impact::after{content:"";width:10px;height:10px;border-radius:50px;position:absolute;right:1rem;top:1rem}#seopress-notifications-center .seopress-alert.impact.low::after{background:#ffde24}#seopress-notifications-center .seopress-alert.impact.medium::after{background:#e39f48}#seopress-notifications-center .seopress-alert.impact.high::after{background:#e25950}#seopress-notifications-center .seopress-alert.impact.info::after{background:#0085ba}#seopress-notifications-center .seopress-alert.dashicons{color:#6f8096}#seopress-notifications-center .dashicons.remove-notice,.seopress-get-started .remove-notice{position:absolute;right:0;color:#6b7c93;font-size:20px;height:30px;width:30px;vertical-align:middle;top:1.2rem;line-height:30px;padding:5px;transition:all .3s linear;margin:0;display:block}.seopress-get-started .remove-notice{top:10px;right:10px}#seopress-notifications-center .dashicons.remove-notice:hover,.seopress-get-started .remove-notice:hover{color:#1a1f36;cursor:pointer}#seopress-content .seopress-page-list .seopress-feature .seopress-doc,.seopress-option #seopress-tabs .seopress-doc{background:0 0;padding:0;text-decoration:none;color:inherit;box-shadow:none;position:absolute;right:.5rem;top:1rem}#seopress-content .seopress-page-list .seopress-feature .seopress-doc:active,#seopress-content .seopress-page-list .seopress-feature .seopress-doc:focus,#seopress-content .seopress-page-list .seopress-feature .seopress-doc:hover,.seopress-option #seopress-tabs .seopress-doc:active,.seopress-option #seopress-tabs .seopress-doc:focus,.seopress-option #seopress-tabs .seopress-doc:hover{color:#747474;background:0 0;box-shadow:none;border:none}#seopress-content .seopress-page-list .seopress-feature .seopress-doc:hover .dashicons{color:#232323}.seopress-option .seopress-table{background:#fff;border:1px solid #ccc}.seopress-option .seopress-table th{padding:15px 10px;vertical-align:middle}.wp-admin-ui_page_seopress-roles .seopress-option .seopress-table th{min-width:200px}.seopress-option .seopress-table .seopress-settings-section{background:#f1f1f1}.seopress-option .seopress-table .seopress-table-head .seopress-feature{border-bottom:1px solid #ccc;font-weight:700;background:#f1f1f1}#seopress-content .feature-state,.seopress-option .feature-state{font-style:italic;font-size:10px;display:inline-block;background:rgba(0,140,135,.1);padding:2px 10px;border-radius:25px;color:#444;font-weight:400;text-transform:none;-moz-osx-font-smoothing:initial;-webkit-font-smoothing:initial}@media only screen and (max-width:782px){#seopress-content .feature-state,.seopress-option .feature-state{display:none}}.seopress-option .seopress_wrap_single_cpt .feature-state,.seopress-option .seopress_wrap_tax .feature-state{padding:2px 12px;margin:0 0 .5rem .5rem}.seopress-option #tab_seopress_titles_archives h2,.seopress-option #tab_seopress_titles_single h2,.seopress-option #tab_seopress_titles_tax h2{margin:2em 0 1em 0;border-top:1px solid #eee;padding:1em 0 0 0}.seopress-option #tab_seopress_titles_archives h2:first-child,.seopress-option #tab_seopress_titles_single h2:first-child,.seopress-option #tab_seopress_titles_tax h2:first-child{border-top:none;margin:0 0 1em 0}#seopress_cpt .seopress-tag-dropdown,#seopress_cpt .tag-title,#seopress_pro_cpt .tag-title,.seopress-button,.seopress-option .tag-title{cursor:pointer;font-weight:500;border-radius:4px;transition:all .3s linear}#seopress-content .feature-state-on,#seopress-content .feature-state.feature-state-on,.seopress-option .feature-state-on,.seopress-option .feature-state.feature-state-on{display:inline-block}#seopress-content .feature-state-off,.seopress-option .feature-state-off{display:none}.seopress-option .postbox .inside li{list-style:square inside;padding-left:5px}#tab_seopress_page_speed .inside li{list-style:none;padding-left:0;word-break:break-word}.seopress-option .log{margin:0;text-transform:uppercase;display:inline-block;vertical-align:middle;padding:5px;color: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_pro_cpt .wrap-tags,.seopress-option .wrap-tags{position:relative;display:inline-block;width:100%;margin-bottom:10px}#seopress_cpt .sp-wrap-tag-variables-list,#seopress_pro_cpt .sp-wrap-tag-variables-list{position:relative;float:left;display:none}#seopress_cpt .sp-tag-variables-list,#seopress_pro_cpt .sp-tag-variables-list{background:#fff;position:absolute;left:-42px;width:300px;border-radius:4px;z-index:100;top:20px;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);height:300px;z-index:100;overflow:auto}#seopress_cpt #seopress_titles_title_meta{margin-bottom:.2rem}#seopress_cpt .sp-wrap-tag-variables-list.open,#seopress_pro_cpt .sp-wrap-tag-variables-list.open{display:block}#seopress_cpt .seopress-tag-single-all.seopress-tag-dropdown .dashicons,#seopress_cpt .seopress-tag-single-all.tag-title .dashicons,#seopress_pro_cpt .seopress-tag-single-all.tag-title .dashicons{margin:0;transition:all 150ms linear}#seopress_cpt .seopress-tag-single-all.open .dashicons,#seopress_pro_cpt .seopress-tag-single-all.open .dashicons{transform:rotateX(180deg)}#seopress_cpt .sp-tag-variables-list li,#seopress_pro_cpt .sp-tag-variables-list li{padding:8px 12px;cursor:pointer;margin:0;border-bottom:1px solid #f0f0f0}#seopress_cpt .sp-tag-variables-list li span,#seopress_pro_cpt .sp-tag-variables-list li span{display:block;font-weight:700;font-size:12px;margin-bottom:2px}#seopress_cpt .sp-tag-variables-list li:hover,#seopress_pro_cpt .sp-tag-variables-list li:hover{background:#0385ba;color:#fff}#seopress_cpt .sp-tag-variables-list li::after,#seopress_pro_cpt .sp-tag-variables-list li::after{content:attr(data-value);display:inline-block;background:#e9ecef;padding:1px 5px;color:#333;font-family:Menlo,Monaco,Andale Mono,Courier New,monospace;border-radius:3px;font-size:11px}#seopress_cpt .seopress-tag-dropdown .dashicons,#seopress_cpt .tag-title .dashicons,#seopress_pro_cpt .tag-title .dashicons,.seopress-option .tag-title .dashicons{padding:0;height:16px;width:16px;font-size:16px;margin-right:5px;vertical-align:middle}.seopress-overlay-tag-dropdown{position:absolute;display:none;top:0;left:0;width:100%;height:100%;z-index:50}.seopress-overlay-tag-dropdown.active{display:block}#seopress_cpt .seopress-tag-dropdown,#seopress_cpt .tag-title,#seopress_pro_cpt .tag-title,.seopress-option .tag-title{padding:4px 8px;position:relative;top:5px;left:0;font-size:11px;float:left;margin-right:5px;user-select:none;margin-bottom:5px;background:#fff;color:#6b7c93;box-shadow:0 0 0 .5px rgba(50,50,93,.17),0 2px 5px 0 rgba(50,50,93,.12),0 3px 9px 0 rgba(50,50,93,.08),0 1px 1.5px 0 rgba(0,0,0,.08),0 1px 2px 0 rgba(0,0,0,.08)}#seopress_cpt .seopress-tag-dropdown .tag-title:active,#seopress_cpt .tag-title:active,#seopress_cpt .tag-title:focus,#seopress_cpt .tag-title:hover,#seopress_cpt-option .seopress-tag-dropdown .tag-title:focus,#seopress_cpt-option .seopress-tag-dropdown .tag-title:hover,#seopress_pro_cpt .tag-title:active,#seopress_pro_cpt .tag-title:focus,#seopress_pro_cpt .tag-title:hover,.seopress-tag-dropdown:active,.seopress-tag-dropdown:focus,.seopress-tag-dropdown:hover{background:#232323;color:#fff;user-select:none}.seopress-button{text-transform:uppercase;background:#fff;border-color:#c8d7e1;border-style:solid;border-width:1px 1px 2px;color:#2e4453;display:inline-block;margin:0;outline:0;overflow:hidden;text-overflow:ellipsis;text-decoration:none;vertical-align:top;box-sizing:border-box;font-size:14px;line-height:20px;padding:6px 8px 6px;-webkit-appearance:none;-moz-appearance:none;appearance:none}.seopress-button:hover{border-color:#a8bece;color:#00a0d2}.seopress-button .dashicons{vertical-align:middle}#seopress-content #tab_seopress_seo_tools.seopress-useful-tools .widget{border-right:1px solid #e6ebf1;margin:0;padding:0 20px;width:calc(50% - 2px);box-sizing:border-box;display:inline-block;vertical-align:top}#seopress-content #tab_seopress_seo_tools.seopress-useful-tools .widget:first-child{width:100%;display:block;clear:both;border-right:none;border-bottom:1px solid #e6ebf1;padding-bottom:20px;margin-bottom:20px}#seopress-content #tab_seopress_seo_tools.seopress-useful-tools .widget:last-child{border-right:none}#seopress-content .seopress-useful-tools .widget-reverse ul{background:#fff}#seopress-content .seopress-useful-tools .widget-reverse li{padding:10px;margin:0;border-bottom:1px solid #e6ebf1}#seopress-content .seopress-useful-tools .widget-reverse li:hover{background:#f5f7fa}#seopress-content .seopress-useful-tools .widget-title{text-transform:uppercase;margin:0 0 10px;font-size:13px;padding:10px 0;color:#24b47e}#seopress-content .seopress-reverse label,#seopress-content .seopress-useful-tools .widget-whois ul li span{font-weight:700}#seopress-content #seopress-reverse-url{width:100%;margin:10px 0}#seopress-content .widget-reverse p{margin:0}.post-type-seopress_backlinks .wp-list-table .column-seopress_backlinks_url{width:35%}.post-type-seopress_backlinks .wp-list-table .column-seopress_backlinks_anchor_text{width:20%}.seopress-styles #screen-meta{margin:0;position:relative;background-color:#fff;border-bottom:0 solid #f2f2f2;border-top:none;-webkit-box-shadow:0 0 0 1px rgba(136,152,170,.1),0 15px 35px 0 rgba(49,49,93,.1),0 5px 15px 0 rgba(0,0,0,.08);box-shadow:0 0 0 1px rgba(136,152,170,.1),0 15px 35px 0 rgba(49,49,93,.1),0 5px 15px 0 rgba(0,0,0,.08);top:0}.seopress-styles #contextual-help-link-wrap,.seopress-styles #screen-options-link-wrap{float:right;height:28px;margin:0 0 0 6px;border:1px solid #f2f2f2;border-top:none;background:#fff;-webkit-box-shadow:0 0 0 1px rgba(136,152,170,.1),0 15px 35px 0 rgba(49,49,93,.1),0 5px 15px 0 rgba(0,0,0,.08);box-shadow:0 0 0 1px rgba(136,152,170,.1),0 15px 35px 0 rgba(49,49,93,.1),0 5px 15px 0 rgba(0,0,0,.08)}.seopress-styles #screen-meta-links .show-settings{box-shadow:none}.seopress-styles #screen-meta-links .screen-meta-toggle{position:relative;top:0;z-index:2000}.seopress-styles #contextual-help-back{background:#f8fafd}.seopress-styles .contextual-help-tabs .active{border-left:2px solid #3297d3;background:#f8fafd}#seopress-content input.toggle,#seopress_cpt input.toggle,.seopress-option input.toggle{max-height:0;max-width:0;opacity:0;position:relative}.seopress-feature input.toggle{display:block}.wrap-toggle-preview{position:relative}.wrap-toggle-preview p{font-weight:700;margin:0 0 1rem 0}#seopress_cpt input.toggle,.seopress_wrap_single_cpt input.toggle,.seopress_wrap_tax input.toggle{margin:0;border:none;min-width:0}#seopress_content_analysis span.label,#seopress_cpt span.label{outline:0;color:#fff;box-shadow:none;background:#555d66;padding:2px 4px;border-radius:4px;font-weight:700}#seopress_add_to_insights{margin-left:1rem}#seopress_add_to_insights_status{display:inline-block;font-weight:700;margin:0 0 0 1rem;vertical-align:middle;padding:.3rem;font-style:italic}#seopress-content input.toggle+label,#seopress_cpt #tabs-1 input.toggle+label,.seopress-option input.toggle+label{display:inline-block;position:relative;box-shadow:inset 0 0 0 1px #d5d5d5;text-indent:-5000px;height:20px;width:40px;border-radius:15px}#seopress_cpt #tabs-1 input.toggle+label{margin:0}.wrap-toggle-checkboxes input.toggle+label{float:left;margin-right:10px}#seopress-content input.toggle+label:before,#seopress_cpt input.toggle+label:before,.seopress-option input.toggle+label:before{content:"";position:absolute;display:block;height:20px;width:30px;top:0;left:0;border-radius:15px;background:rgba(19,191,17,0);-moz-transition:.25s ease-in-out;-webkit-transition:.25s ease-in-out;transition:.25s ease-in-out}#seopress-content input.toggle+label:after,#seopress_cpt input.toggle+label:after,.seopress-option input.toggle+label:after{content:"";position:absolute;display:block;height:20px;width:20px;top:0;left:0;border-radius:15px;background:#fff;box-shadow:inset 0 0 0 1px rgba(0,0,0,.2),0 2px 4px rgba(0,0,0,.2);-moz-transition:.25s ease-in-out;-webkit-transition:.25s ease-in-out;transition:.25s ease-in-out}#seopress_cpt input.toggle+label,#seopress_cpt input.toggle+label:before,.seopress_wrap_single_cpt input.toggle+label,.seopress_wrap_single_cpt input.toggle+label:before,.seopress_wrap_tax input.toggle+label,.seopress_wrap_tax input.toggle+label:before{width:40px;height:20px}#seopress_cpt input.toggle+label:after,.seopress_wrap_single_cpt input.toggle+label:after,.seopress_wrap_tax input.toggle+label:after{width:20px;height:20px}#seopress-content input.toggle[data-toggle="1"]+label:before,#seopress_cpt input.toggle[data-toggle="1"]+label:before,.seopress-option input.toggle[data-toggle="1"]+label:before{width:40px;background:#3197d3}#seopress_cpt input.toggle[data-toggle="1"]+label:before,.seopress_wrap_single_cpt input.toggle[data-toggle="1"]+label:before,.seopress_wrap_tax input.toggle[data-toggle="1"]+label:before{width:40px;background:#3197d3}#seopress-content input.toggle[data-toggle="1"]+label:after,#seopress_cpt input.toggle[data-toggle="1"]+label:after,.seopress-option input.toggle[data-toggle="1"]+label:after{left:20px;box-shadow:inset 0 0 0 1px #3197d3,0 2px 4px rgba(0,0,0,.2)}#seopress_cpt input.toggle[data-toggle="1"]+label:after,.seopress_wrap_single_cpt input.toggle[data-toggle="1"]+label:after,.seopress_wrap_tax input.toggle[data-toggle="1"]+label:after{box-shadow:inset 0 0 0 1px #3197d3,0 2px 4px rgba(0,0,0,.2)}#seopress-content .seopress-page-list{position:relative;display:grid;max-width:64rem;grid-gap:20px 20px;grid-template-columns:repeat(3,1fr)}@media only screen and (max-width:782px){#seopress-content .seopress-page-list{grid-template-columns:repeat(1,1fr)}}#seopress-notice-save{position:fixed;color:#fff;padding:15px 40px;font-size:.9rem;text-transform:uppercase;text-align:center;border-radius:0;background:rgba(74,184,102,.9);bottom:0;right:0;z-index:500;width:100%;font-weight:700}#seopress-notice-save .dashicons{color:#fff}.seopress-styles .wrap{margin:20px 0 0 0;display:flex;position:relative}.seopress-insights.seopress-styles .wrap,.toplevel_page_seopress-option.seopress-styles .wrap{display:inherit;position:inherit;margin:inherit}@media only screen and (max-width:782px){.seopress-styles .wrap{display:inherit;position:inherit;margin:inherit}}.seopress_page_seopress-pro-page #wpcontent{background:#f4f7fa}.seopress-option .wrap div.nav-tab-wrapper{margin:0 0 0 -26px;padding:0 0 0 10px;line-height:inherit;width:230px;z-index:95;font-weight:400;display:block;border-bottom:none}@media only screen and (max-width:782px){.seopress-option .wrap div.nav-tab-wrapper{width:100%;margin:0;padding:0}}#seopress-admin-tabs.wrap div.nav-tab-wrapper{margin:20px auto 0;max-width:64rem;width:100%;border-bottom:1px solid #e6ebf1;padding:0;line-height:inherit;position:-webkit-sticky;position:sticky;background:#f5f7fa;z-index:100;top:31px;border-radius:4px 4px 0 0;font-weight:400;overflow:hidden;display:flex;align-items:center;justify-content:space-between;box-sizing:border-box}@media only screen and (max-width:600px){#seopress-admin-tabs.wrap div.nav-tab-wrapper{top:0;display:block}}@media only screen and (max-width:1024px){#seopress-admin-tabs.wrap div.nav-tab-wrapper{display:block}}#seopress-admin-tabs #tab_seopress_notifications.seopress-tab{background:0 0;padding:0;border-radius:0}.seopress-option .nav-tab{border:0 solid #ccc;background:0 0;opacity:.5;padding:6px 30px 6px 10px;transition:opacity .3s linear;color:#191e23;margin:0;float:none;display:inline-block;width:100%;text-align:left;font-weight:400;box-sizing:border-box;white-space:normal}#seopress-admin-tabs .nav-tab{border:0 solid #ccc;background:0 0;opacity:.5;padding:14px 20px;transition:opacity .3s linear;color:#191e23;margin:0;box-shadow:inset -1px 0 #e3e8ee;float:none;display:inline-block;text-align:center;font-weight:400}#seopress-admin-tabs .nav-tab{width:100%}#seopress-admin-tabs .nav-tab-active,#seopress-admin-tabs .nav-tab-active:hover,.seopress-option .about-wrap h2 .nav-tab-active,.seopress-option .nav-tab-active,.seopress-option .nav-tab-active:hover{background-color:#fff}#seopress-admin-tabs .nav-tab-active,#seopress-admin-tabs .nav-tab-active:focus,#seopress-admin-tabs .nav-tab-active:focus:active,#seopress-admin-tabs .nav-tab-active:hover,#seopress-admin-tabs .nav-tab:focus,.nav-tab-active:focus,.seopress-option .nav-tab-active,.seopress-option .nav-tab-active:focus:active,.seopress-option .nav-tab-active:hover,.seopress-option .nav-tab:focus{opacity:1;outline:0;font-weight:600;position:relative;color:#191e23;border-left:3px solid #0085ba;background:rgba(0,133,186,.1)}#seopress-admin-tabs .nav-tab-active,#seopress-admin-tabs .nav-tab-active:focus,#seopress-admin-tabs .nav-tab-active:focus:active,#seopress-admin-tabs .nav-tab-active:hover,#seopress-admin-tabs .nav-tab:focus{border-bottom:3px solid #3197d3;border-left:none;background:#fff}#seopress-admin-tabs .nav-tab:hover,.seopress-option .nav-tab:hover{opacity:1}#seopress-admin-tabs .nav-tab:focus,.seopress-option .nav-tab:focus{outline:0;box-shadow:none}.seopress-option .section-tool{border:none;box-shadow:none;background:0 0;position:relative}.seopress-option .section-tool::after{content:"";background:#dedede;height:1px;width:100%;display:block}.seopress-option .sp-section-header{border-bottom:1px solid #eee;margin:0 0 1rem 0;width:100%;display:flex;position:relative;align-items:center;padding-bottom:.5rem}.seopress-option .sp-section-header::after{position:absolute;content:"";background:#0085ba;height:2px;width:40px;bottom:0;left:0}.seopress-option .sp-section-header h2{font-size:1.5em}.seopress-option .sp-section-header>.dashicons{color:#0085ba;padding:10px;border-radius:6px;margin-right:10px;background:#c4f0ff}.seopress-option .sp-section-header .wrap-toggle-checkboxes{display:flex}.seopress-styles .wrap .notice{margin:5px 0 15px 15px}#seopress-tabs.wrap .notice{margin:1rem 0}.seopress-BlankState a.button-primary,.seopress-BlankState button.button-primary,.seopress-message a.button-primary,.seopress-message button.button-primary{background:#6259e6;border-color:#6259e6;box-shadow:transparent 0 0 0 0,transparent 0 0 0 0,rgba(0,0,0,.12) 0 1px 1px 0,rgba(60,66,87,.16) 0 0 0 1px,transparent 0 0 0 0,transparent 0 0 0 0,rgba(60,66,87,.12) 0 2px 5px 0;color:#fff;display:inline-block}.seopress-BlankState a.button-primary:active,.seopress-BlankState a.button-primary:focus,.seopress-BlankState a.button-primary:hover,.seopress-BlankState button.button-primary:active,.seopress-BlankState button.button-primary:focus,.seopress-BlankState button.button-primary:hover,.seopress-message a.button-primary:active,.seopress-message a.button-primary:focus,.seopress-message a.button-primary:hover,.seopress-message button.button-primary:active,.seopress-message button.button-primary:focus,.seopress-message button.button-primary:hover{background:#6259e6;border-color:#6259e6;box-shadow:inset 0 1px 0 rgba(255,255,255,.25),0 1px 0 #6259e6}.post-type-seopress_404 .seopress-BlankState-message::before,.post-type-seopress_schemas .seopress-BlankState-message::before{font-family:Dashicons;speak:none;font-weight:400;font-variant:normal;text-transform:none;line-height:1;margin:0;text-indent:0;position:absolute;top:0;left:0;width:100%;height:100%;text-align:center;content:"\f103"}.post-type-seopress_schemas .seopress-BlankState-message::before{content:"\f495"}.seopress-BlankState{text-align:center;padding:5em 0 0}.seopress-BlankState .seopress-BlankState-message{color:#aaa;margin:0 auto 1.5em;line-height:1.5em;font-size:1.2em;max-width:500px}.seopress-BlankState .seopress-BlankState-message::before{color:#ddd;text-shadow:0 -1px 1px rgba(0,0,0,.2),0 1px 0 rgba(255,255,255,.8);font-size:8em;display:block;position:relative!important;top:auto;left:auto;line-height:1em;margin:0 0 .1875em}.seopress-BlankState .seopress-BlankState-cta{font-size:1.2em;padding:.75em 1.5em;margin:0 .25em;height:auto;display:inline-block!important}.seopress-BlankState{max-width:764px;text-align:center;margin:auto}.seopress-BlankState .seopress-BlankState-message{color:#444;font-size:1.5em;margin:0 auto 1em}.seopress-BlankState .seopress-BlankState-message::before{font-size:120px}.seopress-BlankState .seopress-BlankState-buttons{margin-bottom:4em}#seopress_content_analysis .up,#seopress_content_analysis .up .dashicons{color:#4ab866}#seopress_content_analysis .down,#seopress_content_analysis .down .dashicons{color:#d94f4f}#seopress_content_analysis .up .dashicons{transform:rotateZ(45deg)}#seopress_content_analysis .stable .dashicons{transform:rotateZ(90deg)}#seopress_content_analysis .down .dashicons{transform:rotateZ(135deg)}#seopress_content_analysis .wrap-insights-post{clear:both;border-top:1px solid #e2e4e7;display:flex;align-items:center}#seopress_content_analysis .wrap-insights-post .widget-insights-title{margin:0 1rem}#seopress_content_analysis .wrap-insights-post span{font-weight:700;margin:0 .2rem 0 0}#seopress_content_analysis .wrap-insights-post .sp-tooltip *{font-weight:400}#seopress_content_analysis .wrap-insights-post .sp-tooltip-headings{font-weight:700}.sp-components-snackbar-list{position:fixed;right:0;bottom:40px;padding-left:16px;padding-right:16px;animation-name:sp-fade-in-out;animation-duration:5s;animation-iteration-count:1;animation-fill-mode:forwards;visibility:hidden;z-index:1}.sp-components-snackbar__content{display:flex;align-items:center;justify-content:space-between;line-height:1.4}.sp-components-snackbar{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen-Sans,Ubuntu,Cantarell,Helvetica Neue,sans-serif;font-size:13px;background-color:#32373c;border-radius:4px;box-shadow:0 2px 4px rgba(0,0,0,.3);color:#fff;padding:16px 24px;width:100%;max-width:600px;box-sizing:border-box;cursor:pointer}.sp-components-snackbar .dashicons{color:#fff}
assets/js/seopress-cookies-ajax.js CHANGED
@@ -2,6 +2,7 @@
2
  jQuery(document).ready(function($) {
3
  if(Cookies.get('seopress-user-consent-close') ==undefined && Cookies.get('seopress-user-consent-accept') ==undefined) {
4
  $('.seopress-user-consent').removeClass('seopress-user-consent-hide');
 
5
  }
6
  $('#seopress-user-consent-accept').on('click', function() {
7
  $('.seopress-user-consent').remove();
@@ -31,4 +32,4 @@ jQuery(document).ready(function($) {
31
  $('.seopress-user-consent-backdrop').remove();
32
  Cookies.set('seopress-user-consent-close', '1', { expires: Number(seopressAjaxGAUserConsent.seopress_cookies_expiration_days) });
33
  });
34
- });
2
  jQuery(document).ready(function($) {
3
  if(Cookies.get('seopress-user-consent-close') ==undefined && Cookies.get('seopress-user-consent-accept') ==undefined) {
4
  $('.seopress-user-consent').removeClass('seopress-user-consent-hide');
5
+ $('.seopress-user-consent-backdrop').removeClass('seopress-user-consent-hide');
6
  }
7
  $('#seopress-user-consent-accept').on('click', function() {
8
  $('.seopress-user-consent').remove();
32
  $('.seopress-user-consent-backdrop').remove();
33
  Cookies.set('seopress-user-consent-close', '1', { expires: Number(seopressAjaxGAUserConsent.seopress_cookies_expiration_days) });
34
  });
35
+ });
assets/js/seopress-cookies-ajax.min.js CHANGED
@@ -1 +1 @@
1
- jQuery(document).ready((function($){null==Cookies.get("seopress-user-consent-close")&&null==Cookies.get("seopress-user-consent-accept")&&$(".seopress-user-consent").removeClass("seopress-user-consent-hide"),$("#seopress-user-consent-accept").on("click",(function(){$(".seopress-user-consent").remove(),$(".seopress-user-consent-backdrop").remove(),$.ajax({method:"GET",url:seopressAjaxGAUserConsent.seopress_cookies_user_consent,data:{action:"seopress_cookies_user_consent",_ajax_nonce:seopressAjaxGAUserConsent.seopress_nonce},success:function(data){data.data&&($("head").append(data.data.gtag_js),$("head").append(data.data.matomo_js),$("head").append(data.data.custom),$("head").append(data.data.head_js),$("body").prepend(data.data.body_js),$("body").append(data.data.footer_js)),Cookies.set("seopress-user-consent-accept","1",{expires:Number(seopressAjaxGAUserConsent.seopress_cookies_expiration_days)})}})})),$("#seopress-user-consent-close").on("click",(function(){$(".seopress-user-consent").remove(),$(".seopress-user-consent-backdrop").remove(),Cookies.set("seopress-user-consent-close","1",{expires:Number(seopressAjaxGAUserConsent.seopress_cookies_expiration_days)})}))}));
1
+ jQuery(document).ready(function(e){null==Cookies.get("seopress-user-consent-close")&&null==Cookies.get("seopress-user-consent-accept")&&(e(".seopress-user-consent").removeClass("seopress-user-consent-hide"),e(".seopress-user-consent-backdrop").removeClass("seopress-user-consent-hide")),e("#seopress-user-consent-accept").on("click",function(){e(".seopress-user-consent").remove(),e(".seopress-user-consent-backdrop").remove(),e.ajax({method:"GET",url:seopressAjaxGAUserConsent.seopress_cookies_user_consent,data:{action:"seopress_cookies_user_consent",_ajax_nonce:seopressAjaxGAUserConsent.seopress_nonce},success:function(s){s.data&&(e("head").append(s.data.gtag_js),e("head").append(s.data.matomo_js),e("head").append(s.data.custom),e("head").append(s.data.head_js),e("body").prepend(s.data.body_js),e("body").append(s.data.footer_js)),Cookies.set("seopress-user-consent-accept","1",{expires:Number(seopressAjaxGAUserConsent.seopress_cookies_expiration_days)})}})}),e("#seopress-user-consent-close").on("click",function(){e(".seopress-user-consent").remove(),e(".seopress-user-consent-backdrop").remove(),Cookies.set("seopress-user-consent-close","1",{expires:Number(seopressAjaxGAUserConsent.seopress_cookies_expiration_days)})})});
assets/js/seopress-quick-edit.js CHANGED
@@ -28,6 +28,8 @@
28
  var $seopress_desc = $( '#seopress_desc-' + $post_id ).text();
29
  var $seopress_tkw = $( '#seopress_tkw-' + $post_id ).text();
30
  var $seopress_canonical = $( '#seopress_canonical-' + $post_id ).text();
 
 
31
  var $seopress_redirections_enable = $( '#post-' + $post_id + ' .column-seopress_404_redirect_enable' ).html();
32
  var $seopress_redirections_type = $( '#post-' + $post_id + ' .column-seopress_404_redirect_type' ).text();
33
  var $seopress_redirections_value = $( '#post-' + $post_id + ' .column-seopress_404_redirect_value' ).text();
@@ -37,7 +39,15 @@
37
  $edit_row.find( 'textarea[name="seopress_desc"]' ).val( $seopress_desc );
38
  $edit_row.find( 'input[name="seopress_tkw"]' ).val( $seopress_tkw );
39
  $edit_row.find( 'input[name="seopress_canonical"]' ).val( $seopress_canonical );
40
-
 
 
 
 
 
 
 
 
41
  if( $seopress_redirections_enable == '<span class="dashicons dashicons-yes"></span>' ) {
42
  $edit_row.find( 'input[name="seopress_redirections_enabled"]' ).prop('checked', true );
43
  }
@@ -48,4 +58,4 @@
48
  }
49
  };
50
 
51
- })(jQuery);
28
  var $seopress_desc = $( '#seopress_desc-' + $post_id ).text();
29
  var $seopress_tkw = $( '#seopress_tkw-' + $post_id ).text();
30
  var $seopress_canonical = $( '#seopress_canonical-' + $post_id ).text();
31
+ var $seopress_noindex = $( '#post-' + $post_id + ' .column-seopress_noindex' ).html();
32
+ var $seopress_nofollow = $( '#post-' + $post_id + ' .column-seopress_nofollow' ).html();
33
  var $seopress_redirections_enable = $( '#post-' + $post_id + ' .column-seopress_404_redirect_enable' ).html();
34
  var $seopress_redirections_type = $( '#post-' + $post_id + ' .column-seopress_404_redirect_type' ).text();
35
  var $seopress_redirections_value = $( '#post-' + $post_id + ' .column-seopress_404_redirect_value' ).text();
39
  $edit_row.find( 'textarea[name="seopress_desc"]' ).val( $seopress_desc );
40
  $edit_row.find( 'input[name="seopress_tkw"]' ).val( $seopress_tkw );
41
  $edit_row.find( 'input[name="seopress_canonical"]' ).val( $seopress_canonical );
42
+
43
+ if ($seopress_noindex.includes('<span class="dashicons dashicons-hidden"></span>')) {
44
+ $edit_row.find( 'input[name="seopress_noindex"]' ).prop('checked', true );
45
+ }
46
+
47
+ if ($seopress_nofollow.includes('<span class="dashicons dashicons-yes"></span>')) {
48
+ $edit_row.find( 'input[name="seopress_nofollow"]' ).prop('checked', true );
49
+ }
50
+
51
  if( $seopress_redirections_enable == '<span class="dashicons dashicons-yes"></span>' ) {
52
  $edit_row.find( 'input[name="seopress_redirections_enabled"]' ).prop('checked', true );
53
  }
58
  }
59
  };
60
 
61
+ })(jQuery);
assets/js/seopress-quick-edit.min.js CHANGED
@@ -1 +1 @@
1
- !function($){var $wp_inline_edit=inlineEditPost.edit;inlineEditPost.edit=function(id){$wp_inline_edit.apply(this,arguments);var $post_id=0;if("object"==typeof id&&($post_id=parseInt(this.getId(id))),$post_id>0){var $edit_row=$("#edit-"+$post_id),$post_row=$("#post-"+$post_id),$seopress_title=$("#seopress_title-"+$post_id).text(),$seopress_desc=$("#seopress_desc-"+$post_id).text(),$seopress_tkw=$("#seopress_tkw-"+$post_id).text(),$seopress_canonical=$("#seopress_canonical-"+$post_id).text(),$seopress_redirections_enable=$("#post-"+$post_id+" .column-seopress_404_redirect_enable").html(),$seopress_redirections_type=$("#post-"+$post_id+" .column-seopress_404_redirect_type").text(),$seopress_redirections_value=$("#post-"+$post_id+" .column-seopress_404_redirect_value").text();$edit_row.find('input[name="seopress_title"]').val($seopress_title),$edit_row.find('textarea[name="seopress_desc"]').val($seopress_desc),$edit_row.find('input[name="seopress_tkw"]').val($seopress_tkw),$edit_row.find('input[name="seopress_canonical"]').val($seopress_canonical),'<span class="dashicons dashicons-yes"></span>'==$seopress_redirections_enable&&$edit_row.find('input[name="seopress_redirections_enabled"]').prop("checked",!0),"404"!=$seopress_redirections_type&&$edit_row.find('select[name="seopress_redirections_type"] option[value="'+$seopress_redirections_type+'"]').prop("selected",!0),$edit_row.find('input[name="seopress_redirections_value"]').val($seopress_redirections_value)}}}(jQuery);
1
+ (function(e){var s=inlineEditPost.edit;inlineEditPost.edit=function(n){s.apply(this,arguments);var t=0;if("object"==typeof n&&(t=parseInt(this.getId(n))),t>0){var o=e("#edit-"+t),i=(e("#post-"+t),e("#seopress_title-"+t).text()),p=e("#seopress_desc-"+t).text(),a=e("#seopress_tkw-"+t).text(),d=e("#seopress_canonical-"+t).text(),r=e("#post-"+t+" .column-seopress_noindex").html(),c=e("#post-"+t+" .column-seopress_nofollow").html(),l=e("#post-"+t+" .column-seopress_404_redirect_enable").html(),_=e("#post-"+t+" .column-seopress_404_redirect_type").text(),u=e("#post-"+t+" .column-seopress_404_redirect_value").text();o.find('input[name="seopress_title"]').val(i),o.find('textarea[name="seopress_desc"]').val(p),o.find('input[name="seopress_tkw"]').val(a),o.find('input[name="seopress_canonical"]').val(d),r.includes('<span class="dashicons dashicons-hidden"></span>')&&o.find('input[name="seopress_noindex"]').prop("checked",!0),c.includes('<span class="dashicons dashicons-yes"></span>')&&o.find('input[name="seopress_nofollow"]').prop("checked",!0),'<span class="dashicons dashicons-yes"></span>'==l&&o.find('input[name="seopress_redirections_enabled"]').prop("checked",!0),"404"!=_&&o.find('select[name="seopress_redirections_type"] option[value="'+_+'"]').prop("selected",!0),o.find('input[name="seopress_redirections_value"]').val(u)}}})(jQuery);
inc/admin/admin-dyn-variables-helper.php CHANGED
@@ -1,67 +1,68 @@
1
  <?php
 
2
  function seopress_get_dyn_variables() {
3
- return [
4
- '%%sep%%' => 'Separator',
5
- '%%sitetitle%%' => __('Site Title','wp-seopress'),
6
- '%%tagline%%' => __('Tagline','wp-seopress'),
7
- '%%post_title%%' => __('Post Title','wp-seopress'),
8
- '%%post_excerpt%%' => __('Post excerpt','wp-seopress'),
9
- '%%post_content%%' => __('Post content / product description','wp-seopress'),
10
- '%%post_thumbnail_url%%' => __('Post thumbnail URL','wp-seopress'),
11
- '%%post_url%%' => __('Post URL','wp-seopress'),
12
- '%%post_date%%' => __('Post date','wp-seopress'),
13
- '%%post_modified_date%%' => __('Post modified date','wp-seopress'),
14
- '%%post_author%%' => __('Post author','wp-seopress'),
15
- '%%post_category%%' => __('Post category','wp-seopress'),
16
- '%%post_tag%%' => __('Post tag','wp-seopress'),
17
- '%%_category_title%%' => __('Category title','wp-seopress'),
18
- '%%_category_description%%' => __('Category description','wp-seopress'),
19
- '%%tag_title%%' => __('Tag title','wp-seopress'),
20
- '%%tag_description%%' => __('Tag description','wp-seopress'),
21
- '%%term_title%%' => __('Term title','wp-seopress'),
22
- '%%term_description%%' => __('Term description','wp-seopress'),
23
- '%%search_keywords%%' => __('Search keywords','wp-seopress'),
24
- '%%current_pagination%%' => __('Current number page','wp-seopress'),
25
- '%%page%%' => __('Page number with context','wp-seopress'),
26
- '%%cpt_plural%%' => __('Plural Post Type Archive name','wp-seopress'),
27
- '%%archive_title%%' => __('Archive title','wp-seopress'),
28
- '%%archive_date%%' => __('Archive date','wp-seopress'),
29
- '%%archive_date_day%%' => __('Day Archive date','wp-seopress'),
30
- '%%archive_date_month%%' => __('Month Archive title','wp-seopress'),
31
- '%%archive_date_year%%' => __('Year Archive title','wp-seopress'),
32
- '%%_cf_your_custom_field_name%%' => __('Custom fields from post, page or post type','wp-seopress'),
33
- '%%_ct_your_custom_taxonomy_slug%%' => __('Custom term taxonomy from post, page or post type','wp-seopress'),
34
- '%%wc_single_cat%%' => __('Single product category','wp-seopress'),
35
- '%%wc_single_tag%%' => __('Single product tag','wp-seopress'),
36
- '%%wc_single_short_desc%%' => __('Single product short description','wp-seopress'),
37
- '%%wc_single_price%%' => __('Single product price','wp-seopress'),
38
- '%%wc_single_price_exc_tax%%' => __('Single product price taxes excluded','wp-seopress'),
39
- '%%wc_sku%%' => __('Single SKU product','wp-seopress'),
40
- '%%currentday%%' => __('Current day','wp-seopress'),
41
- '%%currentmonth%%' => __('Current month','wp-seopress'),
42
- '%%currentmonth_short%%' => __('Current month in 3 letters','wp-seopress'),
43
- '%%currentyear%%' => __('Current year','wp-seopress'),
44
- '%%currentdate%%' => __('Current date','wp-seopress'),
45
- '%%currenttime%%' => __('Current time','wp-seopress'),
46
- '%%author_bio%%' => __('Author biography','wp-seopress'),
47
- '%%currentmonth_num%%' => __('Current month in digital format','wp-seopress'),
48
- ];
49
  }
50
 
51
  /**
52
- *
53
  * @param string $classes
 
54
  * @return string
55
  */
56
  function seopress_render_dyn_variables($classes) {
57
- $html = sprintf('<span class="seopress-tag-single-all seopress-tag-dropdown %s"><span class="dashicons dashicons-arrow-down-alt2"></span></span>', $classes);
58
- if (!empty(seopress_get_dyn_variables())) {
59
- $html .= '<div class="sp-wrap-tag-variables-list"><ul class="sp-tag-variables-list">';
60
- foreach(seopress_get_dyn_variables() as $key => $value) {
61
- $html .= '<li data-value='.$key.'><span>'.$value.'</span></li>';
62
- }
63
- $html .= '</ul></div>';
64
- }
65
 
66
- return $html;
67
- }
1
  <?php
2
+
3
  function seopress_get_dyn_variables() {
4
+ return [
5
+ '%%sep%%' => 'Separator',
6
+ '%%sitetitle%%' => __('Site Title', 'wp-seopress'),
7
+ '%%tagline%%' => __('Tagline', 'wp-seopress'),
8
+ '%%post_title%%' => __('Post Title', 'wp-seopress'),
9
+ '%%post_excerpt%%' => __('Post excerpt', 'wp-seopress'),
10
+ '%%post_content%%' => __('Post content / product description', 'wp-seopress'),
11
+ '%%post_thumbnail_url%%' => __('Post thumbnail URL', 'wp-seopress'),
12
+ '%%post_url%%' => __('Post URL', 'wp-seopress'),
13
+ '%%post_date%%' => __('Post date', 'wp-seopress'),
14
+ '%%post_modified_date%%' => __('Post modified date', 'wp-seopress'),
15
+ '%%post_author%%' => __('Post author', 'wp-seopress'),
16
+ '%%post_category%%' => __('Post category', 'wp-seopress'),
17
+ '%%post_tag%%' => __('Post tag', 'wp-seopress'),
18
+ '%%_category_title%%' => __('Category title', 'wp-seopress'),
19
+ '%%_category_description%%' => __('Category description', 'wp-seopress'),
20
+ '%%tag_title%%' => __('Tag title', 'wp-seopress'),
21
+ '%%tag_description%%' => __('Tag description', 'wp-seopress'),
22
+ '%%term_title%%' => __('Term title', 'wp-seopress'),
23
+ '%%term_description%%' => __('Term description', 'wp-seopress'),
24
+ '%%search_keywords%%' => __('Search keywords', 'wp-seopress'),
25
+ '%%current_pagination%%' => __('Current number page', 'wp-seopress'),
26
+ '%%page%%' => __('Page number with context', 'wp-seopress'),
27
+ '%%cpt_plural%%' => __('Plural Post Type Archive name', 'wp-seopress'),
28
+ '%%archive_title%%' => __('Archive title', 'wp-seopress'),
29
+ '%%archive_date%%' => __('Archive date', 'wp-seopress'),
30
+ '%%archive_date_day%%' => __('Day Archive date', 'wp-seopress'),
31
+ '%%archive_date_month%%' => __('Month Archive title', 'wp-seopress'),
32
+ '%%archive_date_year%%' => __('Year Archive title', 'wp-seopress'),
33
+ '%%_cf_your_custom_field_name%%' => __('Custom fields from post, page or post type', 'wp-seopress'),
34
+ '%%_ct_your_custom_taxonomy_slug%%' => __('Custom term taxonomy from post, page or post type', 'wp-seopress'),
35
+ '%%wc_single_cat%%' => __('Single product category', 'wp-seopress'),
36
+ '%%wc_single_tag%%' => __('Single product tag', 'wp-seopress'),
37
+ '%%wc_single_short_desc%%' => __('Single product short description', 'wp-seopress'),
38
+ '%%wc_single_price%%' => __('Single product price', 'wp-seopress'),
39
+ '%%wc_single_price_exc_tax%%' => __('Single product price taxes excluded', 'wp-seopress'),
40
+ '%%wc_sku%%' => __('Single SKU product', 'wp-seopress'),
41
+ '%%currentday%%' => __('Current day', 'wp-seopress'),
42
+ '%%currentmonth%%' => __('Current month', 'wp-seopress'),
43
+ '%%currentmonth_short%%' => __('Current month in 3 letters', 'wp-seopress'),
44
+ '%%currentyear%%' => __('Current year', 'wp-seopress'),
45
+ '%%currentdate%%' => __('Current date', 'wp-seopress'),
46
+ '%%currenttime%%' => __('Current time', 'wp-seopress'),
47
+ '%%author_bio%%' => __('Author biography', 'wp-seopress'),
48
+ '%%currentmonth_num%%' => __('Current month in digital format', 'wp-seopress'),
49
+ ];
50
  }
51
 
52
  /**
 
53
  * @param string $classes
54
+ *
55
  * @return string
56
  */
57
  function seopress_render_dyn_variables($classes) {
58
+ $html = sprintf('<span class="seopress-tag-single-all seopress-tag-dropdown %s"><span class="dashicons dashicons-arrow-down-alt2"></span></span>', $classes);
59
+ if ( ! empty(seopress_get_dyn_variables())) {
60
+ $html .= '<div class="sp-wrap-tag-variables-list"><ul class="sp-tag-variables-list">';
61
+ foreach (seopress_get_dyn_variables() as $key => $value) {
62
+ $html .= '<li data-value=' . $key . '><span>' . $value . '</span></li>';
63
+ }
64
+ $html .= '</ul></div>';
65
+ }
66
 
67
+ return $html;
68
+ }
inc/admin/admin-metaboxes-content-analysis-form.php CHANGED
@@ -1,64 +1,65 @@
1
  <?php
2
- defined( 'ABSPATH' ) or die( 'Please don&rsquo;t call the plugin directly. Thanks :)' );
 
3
  echo '<div class="wrap-seopress-analysis">
4
  <p>
5
- '.__('Enter a few keywords for analysis to help you write optimized content.','wp-seopress').'
6
  </p>
7
  <p>
8
- <span class="label">'.__('Did you know?','wp-seopress').'</span> '.__('Writing content for your users is the most important thing! If it doesn‘t feel natural, your visitors will leave your site, Google will know it and your ranking will be affected.','wp-seopress').'
9
  </p>
10
  <div class="col-left">
11
  <p>
12
- <label for="seopress_analysis_target_kw_meta">'. __( 'Target keywords', 'wp-seopress' ) .'
13
- '. seopress_tooltip(__('Target keywords','wp-seopress'), __('Separate target keywords with commas. Do not use spaces after the commas, unless you want to include them','wp-seopress'), esc_html('my super keyword,another keyword,keyword')).'
14
  </label>
15
- <input id="seopress_analysis_target_kw_meta" type="text" name="seopress_analysis_target_kw" placeholder="'.esc_html__('Enter your target keywords','wp-seopress').'" aria-label="'.__('Target keywords','wp-seopress').'" value="'.esc_attr($seopress_analysis_target_kw).'" />
16
  </p>';
17
- if (empty($seopress_analysis_data)) {
18
- echo '<button id="seopress_launch_analysis" type="button" class="button" data_id="'.get_the_ID().'" data_post_type="'.get_current_screen()->post_type.'">'.__('Analyze my content','wp-seopress').'</button>';
19
- } else {
20
- echo '<button id="seopress_launch_analysis" type="button" class="button" data_id="'.get_the_ID().'" data_post_type="'.get_current_screen()->post_type.'">'.__('Refresh analysis','wp-seopress').'</button>';
21
- }
22
-
23
- if ( is_plugin_active( 'wp-seopress-insights/seopress-insights.php' ) ) {
24
- echo '<button id="seopress_add_to_insights" type="button" class="button-secondary" data_id="'.get_the_ID().'" data_post_type="'.get_current_screen()->post_type.'">'.__('Track with Insights','wp-seopress').'</button>';
25
- echo '<div id="seopress_add_to_insights_status"></div>';
26
- echo '<span class="spinner"></span>';
27
- }
28
 
29
- echo '<br><p><span class="howto">'.__('To get the most accurate analysis, save your post first. We analyze all of your source code as a search engine would.','wp-seopress').'</span></p>';
30
- echo '</div>';
31
- if ( is_plugin_active( 'wp-seopress-pro/seopress-pro.php' ) ) {
32
- echo '<div class="col-right">
33
  <p>
34
- <label for="seopress_google_suggest_kw_meta">'. __( 'Google suggestions', 'wp-seopress' ) .'
35
- '. seopress_tooltip(__('Google suggestions','wp-seopress'), __('Enter a keyword, or a phrase, to find the top 10 Google suggestions instantly. This is useful if you want to work with the long tail technique.','wp-seopress'), esc_html('my super keyword,another keyword,keyword')).'
36
  </label>
37
- <input id="seopress_google_suggest_kw_meta" type="text" name="seopress_google_suggest_kw" placeholder="'.__('Get suggestions from Google','wp-seopress').'" aria-label="Google suggestions" value="">
38
  </p>
39
- <button id="seopress_get_suggestions" type="button" class="button">'.__('Get suggestions!','wp-seopress').'</button>';
40
-
41
- echo "<ul id='seopress_suggestions'></ul>";
42
 
43
- if (get_locale() !='') {
44
- $locale = substr(get_locale(), 0, 2);
45
- $country_code = substr(get_locale(), -2);
46
- } else {
47
- $locale = 'en';
48
- $country_code = 'US';
49
- }
50
 
51
- echo "<script>
 
 
 
 
 
 
 
 
52
  jQuery('#seopress_get_suggestions').on('click', function(data) {
53
  data.preventDefault();
54
 
55
  document.getElementById('seopress_suggestions').innerHTML = '';
56
-
57
  var kws = jQuery('#seopress_google_suggest_kw_meta').val();
58
 
59
  if (kws) {
60
  var script = document.createElement('script');
61
- script.src = 'https://www.google.com/complete/search?client=firefox&format=rich&hl=".$locale."&q='+kws+'&gl=".$country_code."&callback=seopress_google_suggest';
62
  document.body.appendChild(script);
63
  }
64
  });
@@ -66,6 +67,5 @@ if ( is_plugin_active( 'wp-seopress-pro/seopress-pro.php' ) ) {
66
  </div>";
67
  }
68
 
69
- require_once ( dirname( __FILE__ ) . '/admin-metaboxes-get-content-analysis.php');
70
- require_once ( dirname( __FILE__ ) . '/admin-metaboxes-render-content-analysis.php');
71
- echo $html;
1
  <?php
2
+
3
+ defined('ABSPATH') or exit('Please don&rsquo;t call the plugin directly. Thanks :)');
4
  echo '<div class="wrap-seopress-analysis">
5
  <p>
6
+ ' . __('Enter a few keywords for analysis to help you write optimized content.', 'wp-seopress') . '
7
  </p>
8
  <p>
9
+ <span class="label">' . __('Did you know?', 'wp-seopress') . '</span> ' . __('Writing content for your users is the most important thing! If it doesn‘t feel natural, your visitors will leave your site, Google will know it and your ranking will be affected.', 'wp-seopress') . '
10
  </p>
11
  <div class="col-left">
12
  <p>
13
+ <label for="seopress_analysis_target_kw_meta">' . __('Target keywords', 'wp-seopress') . '
14
+ ' . seopress_tooltip(__('Target keywords', 'wp-seopress'), __('Separate target keywords with commas. Do not use spaces after the commas, unless you want to include them', 'wp-seopress'), esc_html('my super keyword,another keyword,keyword')) . '
15
  </label>
16
+ <input id="seopress_analysis_target_kw_meta" type="text" name="seopress_analysis_target_kw" placeholder="' . esc_html__('Enter your target keywords', 'wp-seopress') . '" aria-label="' . __('Target keywords', 'wp-seopress') . '" value="' . esc_attr($seopress_analysis_target_kw) . '" />
17
  </p>';
18
+ if (empty($seopress_analysis_data)) {
19
+ echo '<button id="seopress_launch_analysis" type="button" class="button" data_id="' . get_the_ID() . '" data_post_type="' . get_current_screen()->post_type . '">' . __('Analyze my content', 'wp-seopress') . '</button>';
20
+ } else {
21
+ echo '<button id="seopress_launch_analysis" type="button" class="button" data_id="' . get_the_ID() . '" data_post_type="' . get_current_screen()->post_type . '">' . __('Refresh analysis', 'wp-seopress') . '</button>';
22
+ }
23
+
24
+ if (is_plugin_active('wp-seopress-insights/seopress-insights.php')) {
25
+ echo '<button id="seopress_add_to_insights" type="button" class="button-secondary" data_id="' . get_the_ID() . '" data_post_type="' . get_current_screen()->post_type . '">' . __('Track with Insights', 'wp-seopress') . '</button>';
26
+ echo '<div id="seopress_add_to_insights_status"></div>';
27
+ echo '<span class="spinner"></span>';
28
+ }
29
 
30
+ echo '<br><p><span class="howto">' . __('To get the most accurate analysis, save your post first. We analyze all of your source code as a search engine would.', 'wp-seopress') . '</span></p>';
31
+ echo '</div>';
32
+ if (is_plugin_active('wp-seopress-pro/seopress-pro.php')) {
33
+ echo '<div class="col-right">
34
  <p>
35
+ <label for="seopress_google_suggest_kw_meta">' . __('Google suggestions', 'wp-seopress') . '
36
+ ' . seopress_tooltip(__('Google suggestions', 'wp-seopress'), __('Enter a keyword, or a phrase, to find the top 10 Google suggestions instantly. This is useful if you want to work with the long tail technique.', 'wp-seopress'), esc_html('my super keyword,another keyword,keyword')) . '
37
  </label>
38
+ <input id="seopress_google_suggest_kw_meta" type="text" name="seopress_google_suggest_kw" placeholder="' . __('Get suggestions from Google', 'wp-seopress') . '" aria-label="Google suggestions" value="">
39
  </p>
40
+ <button id="seopress_get_suggestions" type="button" class="button">' . __('Get suggestions!', 'wp-seopress') . '</button>';
 
 
41
 
42
+ echo "<ul id='seopress_suggestions'></ul>";
 
 
 
 
 
 
43
 
44
+ if ('' != get_locale()) {
45
+ $locale = substr(get_locale(), 0, 2);
46
+ $country_code = substr(get_locale(), -2);
47
+ } else {
48
+ $locale = 'en';
49
+ $country_code = 'US';
50
+ }
51
+
52
+ echo "<script>
53
  jQuery('#seopress_get_suggestions').on('click', function(data) {
54
  data.preventDefault();
55
 
56
  document.getElementById('seopress_suggestions').innerHTML = '';
57
+
58
  var kws = jQuery('#seopress_google_suggest_kw_meta').val();
59
 
60
  if (kws) {
61
  var script = document.createElement('script');
62
+ script.src = 'https://www.google.com/complete/search?client=firefox&format=rich&hl=" . $locale . "&q='+kws+'&gl=" . $country_code . "&callback=seopress_google_suggest';
63
  document.body.appendChild(script);
64
  }
65
  });
67
  </div>";
68
  }
69
 
70
+ $analyzes = seopress_get_service('GetContentAnalysis')->getAnalyzes($post);
71
+ seopress_get_service('RenderContentAnalysis')->render($analyzes, $seopress_analysis_data);
 
inc/admin/admin-metaboxes-form.php CHANGED
@@ -1,348 +1,348 @@
1
  <?php
2
- defined( 'ABSPATH' ) or die( 'Please don&rsquo;t call the plugin directly. Thanks :)' );
3
 
4
  global $typenow;
5
  global $pagenow;
6
 
7
  $data_tax = '';
8
 
9
- if ( $pagenow == 'post-new.php' || $pagenow == 'post.php' ) {
10
- $current_id = get_the_id();
11
- $origin = 'post';
12
- $title = get_the_title($current_id);
13
-
14
- function seopress_titles_single_cpt_date_option() {
15
- global $post;
16
- $seopress_get_current_cpt = get_post_type($post);
17
-
18
- $seopress_titles_single_cpt_date_option = get_option("seopress_titles_option_name");
19
- if ( ! empty ( $seopress_titles_single_cpt_date_option ) ) {
20
- foreach ($seopress_titles_single_cpt_date_option as $key => $seopress_titles_single_cpt_date_value)
21
- $options[$key] = $seopress_titles_single_cpt_date_value;
22
- if (isset($seopress_titles_single_cpt_date_option['seopress_titles_single_titles'][$seopress_get_current_cpt]['date'])) {
23
- return $seopress_titles_single_cpt_date_option['seopress_titles_single_titles'][$seopress_get_current_cpt]['date'];
24
- }
25
- }
26
- }
27
-
28
- function seopress_display_date_snippet() {
29
- if (seopress_titles_single_cpt_date_option()) {
30
- return '<div class="snippet-date">'.get_the_modified_date('M j, Y').' - </div>';
31
- }
32
- }
33
- } elseif ( $pagenow =='term.php' || $pagenow =='edit-tags.php') {
34
- global $tag;
35
- $current_id = $tag->term_id;
36
- $origin = 'term';
37
- $data_tax = $tag->taxonomy;
38
- $title = $tag->name;
 
39
  }
40
 
41
  function seopress_redirections_value($seopress_redirections_value) {
42
- if ($seopress_redirections_value !='') {
43
- return $seopress_redirections_value;
44
- }
45
  }
46
 
47
-
48
- if ( $pagenow =='term.php' || $pagenow =='edit-tags.php') {
49
- echo '
50
  <tr id="term-seopress" class="form-field">
51
- <th scope="row"><h2>'.__('SEO','wp-seopress').'</h2></th>
52
  <td>
53
  <div id="seopress_cpt">
54
  <div class="inside">';
55
  }
56
 
57
-
58
- echo '<div id="seopress-tabs" data_id="'.$current_id.'" data_origin="'.$origin.'" data_tax="'.$data_tax.'">';
59
-
60
- if ("seopress_404" != $typenow) {
61
- $seo_tabs['title-tab'] = '<li><a href="#tabs-1"><span class="dashicons dashicons-editor-table"></span>'. __( 'Titles settings', 'wp-seopress' ) .'</a></li>';
62
- $seo_tabs['advanced-tab'] = '<li><a href="#tabs-2"><span class="dashicons dashicons-admin-generic"></span>'. __( 'Advanced', 'wp-seopress' ) .'<span id="sp-advanced-alert"></span></a></li>';
63
- $seo_tabs['social-tab'] = '<li><a href="#tabs-3"><span class="dashicons dashicons-share"></span>'. __( 'Social', 'wp-seopress' ) .'</a></li>';
64
- }
65
-
66
- $seo_tabs['redirect-tab'] = '<li><a href="#tabs-4"><span class="dashicons dashicons-admin-links"></span>'. __( 'Redirection', 'wp-seopress' ) .'</a></li>';
67
-
68
- if (is_plugin_active( 'wp-seopress-pro/seopress-pro.php' )) {
69
- if (function_exists('seopress_get_toggle_option') && seopress_get_toggle_option('news') =='1') {
70
- if ( $pagenow == 'post-new.php' || $pagenow == 'post.php' ) {
71
- if ("seopress_404" != $typenow) {
72
- $seo_tabs['news-tab'] = '<li><a href="#tabs-5"><span class="dashicons dashicons-admin-post"></span>'. __( 'Google News', 'wp-seopress' ) .'</a></li>';
73
- }
74
- }
75
- }
76
- if (function_exists('seopress_get_toggle_option') && seopress_get_toggle_option('xml-sitemap') =='1' && function_exists('seopress_xml_sitemap_video_enable_option') && seopress_xml_sitemap_video_enable_option() =='1') {
77
- if ( $pagenow == 'post-new.php' || $pagenow == 'post.php' ) {
78
- if ("seopress_404" != $typenow) {
79
- $seo_tabs['video-tab'] = '<li><a href="#tabs-6"><span class="dashicons dashicons-format-video"></span>'. __( 'Video Sitemap', 'wp-seopress' ) .'</a></li>';
80
- }
81
- }
82
- }
83
- }
84
-
85
- $seo_tabs = apply_filters('seopress_metabox_seo_tabs', $seo_tabs);
86
-
87
- if (!empty($seo_tabs)) {
88
- echo'<ul>';
89
- foreach($seo_tabs as $tab) {
90
- echo $tab;
91
- }
92
- echo '</ul>';
93
- }
94
-
95
- if ("seopress_404" != $typenow) {
96
- if (array_key_exists('title-tab', $seo_tabs)) {
97
- echo '<div id="tabs-1">';
98
- if (is_plugin_active( 'woocommerce/woocommerce.php' )) {
99
- $shop_page_id = wc_get_page_id( 'shop' );
100
- if ( $pagenow == 'post-new.php' || $pagenow == 'post.php' ) {
101
- if ( $post && absint( $shop_page_id ) === absint( $post->ID ) ) {
102
- echo '<p class="notice notice-info">'.__('This is your <strong>Shop page</strong>. Go to <strong>SEO > Titles & Metas > Archives > Products</strong> ','wp-seopress').' <a href="'.admin_url( 'admin.php?page=seopress-titles' ).'">'.__('to edit your title and meta description','wp-seopress').'</a></p>';
103
- }
104
- }
105
- }
106
- echo '<div class="box-left">
107
  <p style="margin-bottom:0">
108
  <label for="seopress_titles_title_meta">'
109
- . __( 'Title', 'wp-seopress' )
110
- . seopress_tooltip(__('Meta title','wp-seopress'), __('Titles are critical to give users a quick insight into the content of a result and why it’s relevant to their query. It\'s often the primary piece of information used to decide which result to click on, so it\'s important to use high-quality titles on your web pages.','wp-seopress'), esc_html('<title>My super title</title>')).
111
- '</label>
112
- <input id="seopress_titles_title_meta" type="text" name="seopress_titles_title" placeholder="'.esc_html__('Enter your title','wp-seopress').'" aria-label="'.__('Title','wp-seopress').'" value="'.$seopress_titles_title.'" />
113
  </p>
114
  <div class="sp-progress">
115
  <div id="seopress_titles_title_counters_progress" class="sp-progress-bar" role="progressbar" style="width: 1%;" aria-valuenow="1" aria-valuemin="0" aria-valuemax="100">1%</div>
116
  </div>
117
  <div class="wrap-seopress-counters">
118
  <div id="seopress_titles_title_pixel"></div>
119
- <strong>'.__(' / 568 pixels - ','wp-seopress').'</strong>
120
  <div id="seopress_titles_title_counters"></div>
121
- '.__(' (maximum recommended limit)','wp-seopress').'
122
  </div>
123
-
124
  <div class="wrap-tags">';
125
- if ( $pagenow =='term.php' || $pagenow =='edit-tags.php') {
126
- echo '<span id="seopress-tag-single-title" data-tag="%%term_title%%" class="tag-title"><span class="dashicons dashicons-plus"></span>'.__('Term Title','wp-seopress').'</span>';
127
- } else {
128
- echo '<span id="seopress-tag-single-title" data-tag="%%post_title%%" class="tag-title"><span class="dashicons dashicons-plus"></span>'.__('Post Title','wp-seopress').'</span>';
129
- }
130
- echo '<span id="seopress-tag-single-site-title" data-tag="%%sitetitle%%" class="tag-title"><span class="dashicons dashicons-plus"></span>'.__('Site Title','wp-seopress').'</span>
131
- <span id="seopress-tag-single-sep" data-tag="%%sep%%" class="tag-title"><span class="dashicons dashicons-plus"></span>'.__('Separator','wp-seopress').'</span>';
132
-
133
- echo seopress_render_dyn_variables("tag-title");
134
-
135
- echo '</div>
136
 
137
  <p style="margin-bottom:0">
138
  <label for="seopress_titles_desc_meta">'
139
- . __( 'Meta description', 'wp-seopress' )
140
- . seopress_tooltip(__('Meta description','wp-seopress'), __('A meta description tag should generally inform and interest users with a short, relevant summary of what a particular page is about. <br>They are like a pitch that convince the user that the page is exactly what they\'re looking for. <br>There\'s no limit on how long a meta description can be, but the search result snippets are truncated as needed, typically to fit the device width.','wp-seopress'), esc_html('<meta name="description" content="my super meta description" />')).'
141
  </label>
142
- <textarea id="seopress_titles_desc_meta" style="width:100%" rows="4" name="seopress_titles_desc" placeholder="'.esc_html__('Enter your meta description','wp-seopress').'" aria-label="'.__('Meta description','wp-seopress').'" value="'.$seopress_titles_desc.'">'.$seopress_titles_desc.'</textarea>
143
  </p>
144
  <div class="sp-progress">
145
  <div id="seopress_titles_desc_counters_progress" class="sp-progress-bar" role="progressbar" style="width: 1%;" aria-valuenow="1" aria-valuemin="0" aria-valuemax="100">1%</div>
146
  </div>
147
  <div class="wrap-seopress-counters">
148
  <div id="seopress_titles_desc_pixel"></div>
149
- <strong>'.__(' / 940 pixels - ','wp-seopress').'</strong>
150
  <div id="seopress_titles_desc_counters"></div>
151
- '.__(' (maximum recommended limit)','wp-seopress').'
152
  </div>
153
  <div class="wrap-tags">';
154
- if ( $pagenow =='term.php' || $pagenow =='edit-tags.php') {
155
- echo '<span id="seopress-tag-single-excerpt" data-tag="%%_category_description%%" class="tag-title"><span class="dashicons dashicons-plus"></span>'.__('Category / term description','wp-seopress').'</span>';
156
- } else {
157
- echo '<span id="seopress-tag-single-excerpt" data-tag="%%post_excerpt%%" class="tag-title"><span class="dashicons dashicons-plus"></span>'.__('Post Excerpt','wp-seopress').'</span>';
158
- }
159
- echo seopress_render_dyn_variables("tag-description");
160
- echo '</div></div>';
161
-
162
- $toggle_preview = 1;
163
- $toggle_preview = apply_filters('seopress_toggle_mobile_preview', $toggle_preview);
164
-
165
- echo '<div class="box-right">
166
  <div class="google-snippet-preview mobile-preview">
167
  <h3>'
168
- .__('Google Snippet Preview','wp-seopress')
169
- . seopress_tooltip(__('Snippet Preview','wp-seopress'), __('The Google preview is a simulation. <br>There is no reliable preview because it depends on the screen resolution, the device used, the expression sought, and Google. <br>There is not one snippet for one URL but several. <br>All the data in this overview comes directly from your source code. <br>This is what the crawlers will see.','wp-seopress'), NULL).'
170
  </h3>
171
- <p>'.__('This is what your page will look like in Google search results. You have to publish your post to get the Google Snippet Preview.','wp-seopress').'</p>
172
-
173
  <div class="wrap-toggle-preview">
174
  <p>
175
  <span class="dashicons dashicons-smartphone"></span>
176
- '.__('Mobile Preview','wp-seopress').'
177
- <input type="checkbox" name="toggle-preview" id="toggle-preview" class="toggle" data-toggle="'.$toggle_preview.'">
178
  <label for="toggle-preview"></label>
179
  </p>
180
  </div>';
181
-
182
- global $tag;
183
-
184
- $gp_title = '';
185
- $gp_permalink = '';
186
- if (get_the_title()) {
187
- $gp_title = '<div class="snippet-title-default" style="display:none">'.get_the_title().' - '.get_bloginfo('name').'</div>';
188
- $gp_permalink = '<div class="snippet-permalink">'.htmlspecialchars(urldecode(get_permalink())).'</div>';
189
- } elseif ($tag) {
190
- $gp_title = '<div class="snippet-title-default" style="display:none">'.$tag->name.' - '.get_bloginfo('name').'</div>';
191
- $gp_permalink = '<div class="snippet-permalink">'.htmlspecialchars(urldecode(get_term_link($tag))).'</div>';
192
- }
193
-
194
- $siteicon = '<div class="snippet-favicon"><img aria-hidden="true" height="16" src="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAABs0lEQVR4AWL4//8/RRjO8Iucx+noO0MWUDo16FYABMGP6ZfUcRnWtm27jVPbtm3bttuH2t3eFPcY9pLz7NxiLjCyVd87pKnHyqXyxtCs8APd0rnyxiu4qSeA3QEDrAwBDrT1s1Rc/OrjLZwqVmOSu6+Lamcpp2KKMA9PH1BYXMe1mUP5qotvXTywsOEEYHXxrY+3cqk6TMkYpNr2FeoY3KIr0RPtn9wQ2unlA+GMkRw6+9TFw4YTwDUzx/JVvARj9KaedXRO8P5B1Du2S32smzqUrcKGEyA+uAgQjKX7zf0boWHGfn71jIKj2689gxp7OAGShNcBUmLMPVjZuiKcA2vuWHHDCQxMCz629kXAIU4ApY15QwggAFbfOP9DhgBJ+nWVJ1AZAfICAj1pAlY6hCADZnveQf7bQIwzVONGJonhLIlS9gr5mFg44Xd+4S3XHoGNPdJl1INIwKyEgHckEhgTe1bGiFY9GSFBYUwLh1IkiJUbY407E7syBSFxKTszEoiE/YdrgCEayDmtaJwCI9uu8TKMuZSVfSa4BpGgzvomBR/INhLGzrqDotp01ZR8pn/1L0JN9d9XNyx0AAAAAElFTkSuQmCC" width="16" alt="favicon"></div>';
195
- if (get_site_icon_url( 32 )) {
196
- $siteicon = '<div class="snippet-favicon"><img aria-hidden="true" height="16" src="'.get_site_icon_url( 32 ).'" width="16" alt="favicon"/></div>';
197
- }
198
-
199
- echo '<div class="wrap-snippet">
200
- <div class="wrap-m-icon-permalink">'.$siteicon.$gp_permalink.'</div>
201
  <div class="snippet-title"></div>
202
  <div class="snippet-title-custom" style="display:none"></div>';
203
-
204
- echo $gp_title;
205
- echo $gp_permalink;
206
-
207
- if ( $pagenow == 'post-new.php' || $pagenow == 'post.php' ) {
208
- echo seopress_display_date_snippet();
209
- }
210
- echo '<div class="snippet-description">...</div>
211
  <div class="snippet-description-custom" style="display:none"></div>
212
  <div class="snippet-description-default" style="display:none"></div>';
213
- echo '</div>
214
  </div>
215
  </div>
216
  </div>';
217
- }
218
- if (array_key_exists('advanced-tab', $seo_tabs)) {
219
- echo '<div id="tabs-2">
 
220
  <p>
221
  <label for="seopress_robots_index_meta">
222
- <input type="checkbox" name="seopress_robots_index" id="seopress_robots_index_meta" value="yes" '. checked( $seopress_robots_index, 'yes', false ) .' '.$disabled['robots_index'].'/>
223
- '. __( 'Do not display this page in search engine results / XML - HTML sitemaps <strong>(noindex)</strong>', 'wp-seopress' ) .'
224
- '.seopress_tooltip(__('"noindex" robots meta tag','wp-seopress'), __('By checking this option, you will add a meta robots tag with the value "noindex". <br>Search engines will not index this URL in the search results.','wp-seopress'), esc_html('<meta name="robots" content="noindex" />')).'
225
  </label>
226
  </p>
227
  <p>
228
  <label for="seopress_robots_follow_meta">
229
- <input type="checkbox" name="seopress_robots_follow" id="seopress_robots_follow_meta" value="yes" '. checked( $seopress_robots_follow, 'yes', false ) .' '.$disabled['robots_follow'].'/>
230
- '. __( 'Do not follow links for this page <strong>(nofollow)</strong>', 'wp-seopress' ) .'
231
- '.seopress_tooltip(__('"nofollow" robots meta tag','wp-seopress'), __('By checking this option, you will add a meta robots tag with the value "nofollow". <br>Search engines will not follow links from this URL.','wp-seopress'), esc_html('<meta name="robots" content="nofollow" />')).'
232
  </label>
233
  </p>
234
  <p>
235
  <label for="seopress_robots_odp_meta">
236
- <input type="checkbox" name="seopress_robots_odp" id="seopress_robots_odp_meta" value="yes" '. checked( $seopress_robots_odp, 'yes', false ) .' '.$disabled['robots_odp'].'/>
237
- '. __( 'Do not use Open Directory project metadata for titles or excerpts for this page <strong>(noodp)</strong>', 'wp-seopress' ) .'
238
- '.seopress_tooltip(__('"noodp" robots meta tag','wp-seopress'), __('By checking this option, you will add a meta robots tag with the value "noodp". <br>Note that Google and Yahoo have stopped considering this tag since the closing of DMOZ directory.','wp-seopress'), esc_html('<meta name="robots" content="noodp" />')).'
239
  </label>
240
  </p>
241
  <p>
242
  <label for="seopress_robots_imageindex_meta">
243
- <input type="checkbox" name="seopress_robots_imageindex" id="seopress_robots_imageindex_meta" value="yes" '. checked( $seopress_robots_imageindex, 'yes', false ) .' '.$disabled['imageindex'].'/>
244
- '. __( 'Do not index images for this page <strong>(noimageindex)</strong>', 'wp-seopress' ) .'
245
- '.seopress_tooltip(__('"noimageindex" robots meta tag','wp-seopress'), __('By checking this option, you will add a meta robots tag with the value "noimageindex". <br> Note that your images can always be indexed if they are linked from other pages.','wp-seopress'), esc_html('<meta name="google" content="noimageindex" />')).'
246
  </label>
247
  </p>
248
  <p>
249
  <label for="seopress_robots_archive_meta">
250
- <input type="checkbox" name="seopress_robots_archive" id="seopress_robots_archive_meta" value="yes" '. checked( $seopress_robots_archive, 'yes', false ) .' '.$disabled['archive'].'/>
251
- '. __( 'Do not display a "Cached" link in the Google search results <strong>(noarchive)</strong>', 'wp-seopress' ) .'
252
- '.seopress_tooltip(__('"noarchive" robots meta tag','wp-seopress'), __('By checking this option, you will add a meta robots tag with the value "noarchive".','wp-seopress'), esc_html('<meta name="robots" content="noarchive" />')).'
253
  </label>
254
  </p>
255
  <p>
256
  <label for="seopress_robots_snippet_meta">
257
- <input type="checkbox" name="seopress_robots_snippet" id="seopress_robots_snippet_meta" value="yes" '. checked( $seopress_robots_snippet, 'yes', false ) .' '.$disabled['snippet'].'/>
258
- '. __( 'Do not display a description in search results for this page <strong>(nosnippet)</strong>', 'wp-seopress' ) .'
259
- '.seopress_tooltip(__('"nosnippet" robots meta tag','wp-seopress'), __('By checking this option, you will add a meta robots tag with the value "nosnippet".','wp-seopress'), esc_html('<meta name="robots" content="nosnippet" />')).'
260
  </label>
261
  </p>
262
  <p class="description">';
263
- $url = admin_url('admin.php?page=seopress-titles#tab=tab_seopress_titles_single');
264
- /* translators: %s: link to plugin settings page */
265
- echo sprintf(__('You cannot uncheck a parameter? This is normal, and it‘s most likely defined in the <a href="%s">global settings of the plugin.</a>','wp-seopress'), $url);
266
- echo '</p>
267
  <p>
268
- <label for="seopress_robots_canonical_meta">'. __( 'Canonical URL', 'wp-seopress' ) .'
269
- '.seopress_tooltip(__('Canonical URL','wp-seopress'), __('A canonical URL is the URL of the page that Google thinks is most representative from a set of duplicate pages on your site. <br>For example, if you have URLs for the same page (for example: example.com?dress=1234 and example.com/dresses/1234), Google chooses one as canonical. <br>Note that the pages do not need to be absolutely identical; minor changes in sorting or filtering of list pages do not make the page unique (for example, sorting by price or filtering by item color).
270
- The canonical can be in a different domain than a duplicate.','wp-seopress'), esc_html('<link rel="canonical" href="https://www.example.com/my-post-url/" />')).'
271
  </label>
272
- <input id="seopress_robots_canonical_meta" type="text" name="seopress_robots_canonical" placeholder="'.esc_html__('Default value: ','wp-seopress').htmlspecialchars(urldecode(get_permalink())).'" aria-label="'.__('Canonical URL','wp-seopress').'" value="'.$seopress_robots_canonical.'" />
273
-
274
  </span>
275
  </p>';
276
 
277
- if (($typenow =='post' || $typenow =='product') && ($pagenow == 'post.php' || $pagenow == 'post-new.php')) {
278
- echo '<p>
279
- <label for="seopress_robots_primary_cat_meta">'. __( 'Select a primary category', 'wp-seopress' ) .'</label>
280
- <span class="description">'.__('Set the category that gets used in the %category% permalink and in our breadcrumbs if you have multiple categories.','wp-seopress').'</p>
281
  <select name="seopress_robots_primary_cat">';
282
 
283
- $cats = get_categories();
284
 
285
- if ($typenow =='product') {
286
- $cats = get_the_terms( $post, 'product_cat' );
287
- }
288
 
289
- if (!empty($cats)) {
290
- echo '<option '. selected( 'none', $seopress_robots_primary_cat, false ).' value="none">'.__('None (will disable this feature)','wp-seopress').'</option>';
291
- foreach ($cats as $category) {
292
- echo '<option '.selected( $category->term_id, $seopress_robots_primary_cat, false ).' value="'.$category->term_id.'">'. $category->name .'</option>';
293
- }
294
- }
295
- echo '</select>
296
  </p>';
297
- }
298
-
299
- if (is_plugin_active('wp-seopress-pro/seopress-pro.php')) {
300
- echo '<p>
301
- <label for="seopress_robots_breadcrumbs_meta">'. __( 'Custom breadcrumbs', 'wp-seopress' ) .'</label>
302
- <span class="description">'.__('Enter a custom value, useful if your title is too long','wp-seopress').'</span>
303
  </p>
304
  <p>
305
- <input id="seopress_robots_breadcrumbs_meta" type="text" name="seopress_robots_breadcrumbs" placeholder="'.esc_html(sprintf(__('Current breadcrumbs: %s','wp-seopress'),$title)).'" aria-label="'.__('Custom breadcrumbs','wp-seopress').'" value="'.$seopress_robots_breadcrumbs.'" />
306
  </p>';
307
- }
308
- echo '</div>';
309
- }
310
- if (array_key_exists('social-tab', $seo_tabs)) {
311
- echo '<div id="tabs-3">
312
  <div class="box-left">
313
  <span class="dashicons dashicons-facebook-alt"></span>
314
  <br><br>
315
- <span class="dashicons dashicons-external"></span><a href="https://developers.facebook.com/tools/debug/sharing/?q='.get_permalink(get_the_id()).'" target="_blank">'.__('Ask Facebook to update its cache','wp-seopress').'</a>
316
- <p>'.__('<span class="label">Did you know?</span> LinkedIn, Instagram and Pinterest use the same social metadata as Facebook. Twitter does the same if no Twitter cards tags are defined below.','wp-seopress').'</p>
317
  <p>
318
- <label for="seopress_social_fb_title_meta">'. __( 'Facebook Title', 'wp-seopress' ) .'</label>
319
- <input id="seopress_social_fb_title_meta" type="text" name="seopress_social_fb_title" placeholder="'.esc_html__('Enter your Facebook title','wp-seopress').'" aria-label="'.__('Facebook Title','wp-seopress').'" value="'.$seopress_social_fb_title.'" />
320
  </p>
321
  <p>
322
- <label for="seopress_social_fb_desc_meta">'. __( 'Facebook description', 'wp-seopress' ) .'</label>
323
- <textarea id="seopress_social_fb_desc_meta" name="seopress_social_fb_desc" placeholder="'.esc_html__('Enter your Facebook description','wp-seopress').'" aria-label="'.__('Facebook description','wp-seopress').'" value="'.$seopress_social_fb_desc.'">'.$seopress_social_fb_desc.'</textarea>
324
- </p>
325
  <p>
326
- <label for="seopress_social_fb_img_meta">'. __( 'Facebook Thumbnail', 'wp-seopress' ) .'</label>
327
- <input id="seopress_social_fb_img_meta" type="text" name="seopress_social_fb_img" placeholder="'.esc_html__('Select your default thumbnail','wp-seopress').'" aria-label="'.__('Facebook Thumbnail','wp-seopress').'" value="'.$seopress_social_fb_img.'" />
328
- <span class="advise">'.__('Minimum size: 200x200px, ideal ratio 1.91:1, 8Mb max. (eg: 1640x856px or 3280x1712px for retina screens)', 'wp-seopress').'</span>
329
- <input id="seopress_social_fb_img_upload" class="button" type="button" value="'.__('Upload an Image','wp-seopress').'" />
330
  </p>
331
  </div>
332
  <div class="box-right">
333
  <div class="facebook-snippet-preview">
334
- <h3>'.__('Facebook Preview','wp-seopress').'</h3>';
335
- if(seopress_get_toggle_option('social')=='1') {
336
- echo '<p>'.__('This is what your post will look like in Facebook. You have to publish your post to get the Facebook Preview.','wp-seopress').'</p>';
337
- } else {
338
- echo '<p class="notice notice-error" style="margin: 0 0 1rem 0">'.__('The Social Networks feature is disabled. Still seing informations from the FB Preview? You probably have social tags added by your theme or a plugin.','wp-seopress').'</p>';
339
- }
340
- echo '<div class="facebook-snippet-box">
341
- <div class="snippet-fb-img-alert alert1" style="display:none"><p class="notice notice-error">'.__('File type not supported by Facebook. Please choose another image.', 'wp-seopress').'</p></div>
342
- <div class="snippet-fb-img-alert alert2" style="display:none"><p class="notice notice-error">'.__('Minimun size for Facebook is <strong>200x200px</strong>. Please choose another image.', 'wp-seopress').'</p></div>
343
- <div class="snippet-fb-img-alert alert3" style="display:none"><p class="notice notice-error">'.__('File error. Please choose another image.', 'wp-seopress').'</p></div>
344
- <div class="snippet-fb-img-alert alert4" style="display:none"><p class="notice notice-info">'.__('Your image ratio is: ', 'wp-seopress').'<span></span>. '.__('The closer to 1.91 the better.','wp-seopress').'</p></div>
345
- <div class="snippet-fb-img-alert alert5" style="display:none"><p class="notice notice-error">'.__('File URL is not valid.', 'wp-seopress').'</p></div>
346
  <div class="snippet-fb-img"><img src="" width="524" height="274" alt="" aria-label=""/></div>
347
  <div class="snippet-fb-img-custom" style="display:none"><img src="" width="524" height="274" alt="" aria-label=""/></div>
348
  <div class="snippet-fb-img-default" style="display:none"><img src="" width="524" height="274" alt="" aria-label=""/></div>
@@ -351,22 +351,22 @@ echo '<div id="seopress-tabs" data_id="'.$current_id.'" data_origin="'.$origin.'
351
  <div class="snippet-meta">
352
  <div class="snippet-fb-url"></div>
353
  <div class="fb-sep">|</div>
354
- <div class="fb-by">'.__('By&nbsp;','wp-seopress').'</div>
355
  <div class="snippet-fb-site-name"></div>
356
  </div>
357
  <div class="title-desc">
358
  <div class="snippet-fb-title"></div>
359
  <div class="snippet-fb-title-custom" style="display:none"></div>';
360
- global $tag;
361
- if (get_the_title()) {
362
- echo '<div class="snippet-fb-title-default" style="display:none">'.get_the_title().' - '.get_bloginfo('name').'</div>';
363
- } elseif ($tag) {
364
- echo '<div class="snippet-fb-title-default" style="display:none">'.$tag->name.' - '.get_bloginfo('name').'</div>';
365
- }
366
- echo '<div class="snippet-fb-description">...</div>
367
  <div class="snippet-fb-description-custom" style="display:none"></div>
368
  <div class="snippet-fb-description-default" style="display:none"></div>';
369
- echo '</div>
370
  </div>
371
  </div>
372
  </div>
@@ -376,36 +376,36 @@ echo '<div id="seopress-tabs" data_id="'.$current_id.'" data_origin="'.$origin.'
376
  <br/>
377
  <span class="dashicons dashicons-twitter"></span>
378
  <br><br>
379
- <span class="dashicons dashicons-external"></span><a href="https://cards-dev.twitter.com/validator" target="_blank">'.__('Preview your Twitter card using the official validator','wp-seopress').'</a>
380
  <p>
381
- <label for="seopress_social_twitter_title_meta">'. __( 'Twitter Title', 'wp-seopress' ) .'</label>
382
- <input id="seopress_social_twitter_title_meta" type="text" name="seopress_social_twitter_title" placeholder="'.esc_html__('Enter your Twitter title','wp-seopress').'" aria-label="'.__('Twitter Title','wp-seopress').'" value="'.$seopress_social_twitter_title.'" />
383
  </p>
384
  <p>
385
- <label for="seopress_social_twitter_desc_meta">'. __( 'Twitter description', 'wp-seopress' ) .'</label>
386
- <textarea id="seopress_social_twitter_desc_meta" name="seopress_social_twitter_desc" placeholder="'.esc_html__('Enter your Twitter description','wp-seopress').'" aria-label="'.__('Twitter description','wp-seopress').'" value="'.$seopress_social_twitter_desc.'">'.$seopress_social_twitter_desc.'</textarea>
387
- </p>
388
  <p>
389
- <label for="seopress_social_twitter_img_meta">'. __( 'Twitter Thumbnail', 'wp-seopress' ) .'</label>
390
- <input id="seopress_social_twitter_img_meta" type="text" name="seopress_social_twitter_img" placeholder="'.esc_html__('Select your default thumbnail','wp-seopress').'" value="'.$seopress_social_twitter_img.'" />
391
- <span class="advise">'. __('Minimum size: 144x144px (300x157px with large card enabled), ideal ratio 1:1 (2:1 with large card), 5Mb max.', 'wp-seopress') .'</span>
392
- <input id="seopress_social_twitter_img_upload" class="button" type="button" aria-label="'.__('Twitter Thumbnail','wp-seopress').'" value="'.__('Upload an Image','wp-seopress').'" />
393
  </p>
394
  </div>
395
  <div class="box-right">
396
  <div class="twitter-snippet-preview">
397
- <h3>'.__('Twitter Preview','wp-seopress').'</h3>';
398
- if(seopress_get_toggle_option('social')=='1') {
399
- echo '<p>'.__('This is what your post will look like in Twitter. You have to publish your post to get the Twitter Preview.','wp-seopress').'</p>';
400
- } else {
401
- echo '<p class="notice notice-error" style="margin: 0 0 1rem 0">'.__('The Social Networks feature is disabled. Still seing informations from the Twitter Preview? You probably have social tags added by your theme or a plugin.','wp-seopress').'</p>';
402
- }
403
- echo '<div class="twitter-snippet-box">
404
- <div class="snippet-twitter-img-alert alert1" style="display:none"><p class="notice notice-error">'.__('File type not supported by Twitter. Please choose another image.', 'wp-seopress').'</p></div>
405
- <div class="snippet-twitter-img-alert alert2" style="display:none"><p class="notice notice-error">'.__('Minimun size for Twitter is <strong>144x144px</strong>. Please choose another image.', 'wp-seopress').'</p></div>
406
- <div class="snippet-twitter-img-alert alert3" style="display:none"><p class="notice notice-error">'.__('File error. Please choose another image.', 'wp-seopress').'</p></div>
407
- <div class="snippet-twitter-img-alert alert4" style="display:none"><p class="notice notice-info">'.__('Your image ratio is: ', 'wp-seopress').'<span></span>. '.__('The closer to 1 the better (with large card, 2 is better).','wp-seopress').'</p></div>
408
- <div class="snippet-twitter-img-alert alert5" style="display:none"><p class="notice notice-error">'.__('File URL is not valid.', 'wp-seopress').'</p></div>
409
  <div class="snippet-twitter-img"><img src="" width="524" height="274" alt="" aria-label=""/></div>
410
  <div class="snippet-twitter-img-custom" style="display:none"><img src="" width="600" height="314" alt="" aria-label=""/></div>
411
  <div class="snippet-twitter-img-default" style="display:none"><img src="" width="600" height="314" alt="" aria-label=""/></div>
@@ -414,16 +414,16 @@ echo '<div id="seopress-tabs" data_id="'.$current_id.'" data_origin="'.$origin.'
414
  <div class="title-desc">
415
  <div class="snippet-twitter-title"></div>
416
  <div class="snippet-twitter-title-custom" style="display:none"></div>';
417
- global $tag;
418
- if (get_the_title()) {
419
- echo '<div class="snippet-twitter-title-default" style="display:none">'.get_the_title().' - '.get_bloginfo('name').'</div>';
420
- } elseif ($tag) {
421
- echo '<div class="snippet-twitter-title-default" style="display:none">'.$tag->name.' - '.get_bloginfo('name').'</div>';
422
- }
423
- echo '<div class="snippet-twitter-description">...</div>
424
  <div class="snippet-twitter-description-custom" style="display:none"></div>
425
  <div class="snippet-twitter-description-default" style="display:none"></div>';
426
- echo '</div>
427
  <div class="snippet-meta">
428
  <div class="snippet-twitter-url"></div>
429
  </div>
@@ -432,204 +432,200 @@ echo '<div id="seopress-tabs" data_id="'.$current_id.'" data_origin="'.$origin.'
432
  </div>
433
  </div>
434
  </div>';
435
- }
436
- }
437
 
438
- if (array_key_exists('redirect-tab', $seo_tabs)) {
439
- echo '<div id="tabs-4">
440
  <p>
441
  <label for="seopress_redirections_enabled_meta" id="seopress_redirections_enabled">
442
- <input type="checkbox" name="seopress_redirections_enabled" id="seopress_redirections_enabled_meta" value="yes" '. checked( $seopress_redirections_enabled, 'yes', false ) .' />
443
- '. __( 'Enable redirection?', 'wp-seopress' ) .'
444
  </label>
445
  </p>
446
  <p>
447
- <label for="seopress_redirections_value_meta">'. __( 'URL redirection', 'wp-seopress' ) .'</label>
448
  <select name="seopress_redirections_type">
449
- <option ' . selected( '301', $seopress_redirections_type, false ) . ' value="301">'. __( '301 Moved Permanently', 'wp-seopress' ) .'</option>
450
- <option ' . selected( '302', $seopress_redirections_type, false ) . ' value="302">'. __( '302 Found / Moved Temporarily', 'wp-seopress' ) .'</option>
451
- <option ' . selected( '307', $seopress_redirections_type, false ) . ' value="307">'. __( '307 Moved Temporarily', 'wp-seopress' ) .'</option>
452
- <option ' . selected( '410', $seopress_redirections_type, false ) . ' value="410">'. __( '410 Gone', 'wp-seopress' ) .'</option>
453
- <option ' . selected( '451', $seopress_redirections_type, false ) . ' value="451">'. __( '451 Unavailable For Legal Reasons', 'wp-seopress' ) .'</option>
454
  </select>
455
- <input id="seopress_redirections_value_meta" type="text" name="seopress_redirections_value" placeholder="'.esc_html__('Enter your new URL in absolute (eg: https://www.example.com/)','wp-seopress').'" aria-label="'.__('URL redirection','wp-seopress').'" value="'.$seopress_redirections_value.'" />
456
  <br><br>
457
  </p>';
458
- if ("seopress_404" == $typenow) {
459
- echo '<p>
460
- <label for="seopress_redirections_param_meta">'. __( 'Query parameters', 'wp-seopress' ) .'</label>
461
  <select name="seopress_redirections_param">
462
- <option ' . selected( 'exact_match', $seopress_redirections_param, false ) . ' value="exact_match">'. __( 'Exactly match all parameters', 'wp-seopress' ) .'</option>
463
- <option ' . selected( 'without_param', $seopress_redirections_param, false ) . ' value="without_param">'. __( 'Exclude all parameters', 'wp-seopress' ) .'</option>
464
- <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>
465
  </select></p>';
466
- }
467
- echo '<p>';
468
- if ($seopress_redirections_enabled =='yes') {
469
- $status_code = array('410','451');
470
- if ($seopress_redirections_value !='' || in_array($seopress_redirections_type, $status_code)) {
471
- if ( $pagenow == 'post-new.php' || $pagenow == 'post.php' ) {
472
- if ( 'seopress_404' == $typenow ) {
473
- echo '<a href="'.get_home_url().'/'.get_the_title().'" id="seopress_redirections_value_default" class="button" target="_blank">'.__('Test your URL','wp-seopress').'</a>';
474
- } else {
475
- echo '<a href="'.get_permalink().'" id="seopress_redirections_value_default" class="button" target="_blank">'.__('Test your URL','wp-seopress').'</a>';
476
- }
477
- } elseif ( $pagenow == 'term.php' ) {
478
- echo '<a href="'.get_term_link($term).'" id="seopress_redirections_value_default" class="button" target="_blank">'.__('Test your URL','wp-seopress').'</a>';
479
- } else {
480
- echo '<a href="'.get_permalink().'" id="seopress_redirections_value_default" class="button" target="_blank">'.__('Test your URL','wp-seopress').'</a>';
481
- }
482
- }
483
- }
484
-
485
- if (function_exists('seopress_get_locale') && seopress_get_locale() =='fr') {
486
- $seopress_docs_link['support']['redirection'] = 'https://www.seopress.org/fr/support/guides/activer-redirections-301-surveillance-404/?utm_source=plugin&utm_medium=wp-admin&utm_campaign=seopress';
487
- } else {
488
- $seopress_docs_link['support']['redirection'] = 'https://www.seopress.org/support/guides/redirections/?utm_source=plugin&utm_medium=wp-admin&utm_campaign=seopress';
489
- }
490
- ?>
491
  <span class="seopress-help dashicons dashicons-external"></span>
492
- <a href="<?php echo $seopress_docs_link['support']['redirection']; ?>" target="_blank" class="seopress-help seopress-doc"><?php _e('Need help with your redirections? Read our guide.','wp-seopress'); ?></a>
493
- <?php echo
494
- '</p>
495
  </div>';
496
- }
497
- if (is_plugin_active( 'wp-seopress-pro/seopress-pro.php' )) {
498
- if (function_exists('seopress_get_toggle_option') && seopress_get_toggle_option('news') =='1') {
499
- if ( $pagenow == 'post-new.php' || $pagenow == 'post.php' ) {
500
- if ("seopress_404" != $typenow) {
501
- if (array_key_exists('news-tab', $seo_tabs)) {
502
- echo '<div id="tabs-5">
503
  <p>
504
  <label for="seopress_news_disabled_meta" id="seopress_news_disabled">
505
- <input type="checkbox" name="seopress_news_disabled" id="seopress_news_disabled_meta" value="yes" '. checked( $seopress_news_disabled, 'yes', false ) .' />
506
- '. __( 'Exclude this post from Google News Sitemap?', 'wp-seopress' ) .'
507
  </label>
508
  </p>
509
  </div>';
510
- }
511
- }
512
- }
513
- }
514
- if (function_exists('seopress_get_toggle_option') && seopress_get_toggle_option('xml-sitemap') =='1' && seopress_xml_sitemap_video_enable_option() =='1') {
515
- if ( $pagenow == 'post-new.php' || $pagenow == 'post.php' ) {
516
- if ("seopress_404" != $typenow) {
517
-
518
- //Init $seopress_video array if empty
519
- if (empty($seopress_video)) {
520
- $seopress_video = array('0' => array(''));
521
- }
522
-
523
- $count = $seopress_video[0];
524
- end($count);
525
- $total = key($count);
526
-
527
- if (array_key_exists('video-tab', $seo_tabs)) {
528
- echo '<div id="tabs-6">
529
  <p>
530
  <label for="seopress_video_disabled_meta" id="seopress_video_disabled">
531
- <input type="checkbox" name="seopress_video_disabled" id="seopress_video_disabled_meta" value="yes" '. checked( $seopress_video_disabled, 'yes', false ) .' />
532
- '. __( 'Exclude this post from Video Sitemap?', 'wp-seopress' ) .'
533
  </label>
534
- <span class="advise">'. __('If your post is set to noindex, it will be automatically excluded from the sitemap.', 'wp-seopress') .'</span>
535
  </p>
536
- <div id="wrap-videos" data-count="'.$total.'">';
537
- foreach ($seopress_video[0] as $key => $value) {
538
-
539
- $check_url = isset($seopress_video[0][$key]["url"]) ? esc_attr($seopress_video[0][$key]["url"]) : NULL;
540
- $check_internal_video = isset($seopress_video[0][$key]["internal_video"]) ? esc_attr($seopress_video[0][$key]["internal_video"]) : NULL;
541
- $check_title = isset($seopress_video[0][$key]["title"]) ? esc_attr($seopress_video[0][$key]["title"]) : NULL;
542
- $check_desc = isset($seopress_video[0][$key]["desc"]) ? esc_attr($seopress_video[0][$key]["desc"]) : NULL;
543
- $check_thumbnail = isset($seopress_video[0][$key]["thumbnail"]) ? esc_attr($seopress_video[0][$key]["thumbnail"]) : NULL;
544
- $check_duration = isset($seopress_video[0][$key]["duration"]) ? esc_attr($seopress_video[0][$key]["duration"]) : NULL;
545
- $check_rating = isset($seopress_video[0][$key]["rating"]) ? esc_attr($seopress_video[0][$key]["rating"]) : NULL;
546
- $check_view_count = isset($seopress_video[0][$key]["view_count"]) ? esc_attr($seopress_video[0][$key]["view_count"]) : NULL;
547
- $check_view_count = isset($seopress_video[0][$key]["view_count"]) ? esc_attr($seopress_video[0][$key]["view_count"]) : NULL;
548
- $check_tag = isset($seopress_video[0][$key]["tag"]) ? esc_attr($seopress_video[0][$key]["tag"]) : NULL;
549
- $check_cat = isset($seopress_video[0][$key]["cat"]) ? esc_attr($seopress_video[0][$key]["cat"]) : NULL;
550
- $check_family_friendly = isset($seopress_video[0][$key]["family_friendly"]) ? esc_attr($seopress_video[0][$key]["family_friendly"]) : NULL;
551
-
552
- echo '<div class="video">
553
- <h3 class="accordion-section-title" tabindex="0">'.__('Video ','wp-seopress').$check_title.'</h3>
554
  <div class="accordion-section-content">
555
  <div class="inside">
556
  <p>
557
- <label for="seopress_video['.$key.'][url_meta]">'. __( 'Video URL (required)', 'wp-seopress' ) .'</label>
558
- <input id="seopress_video['.$key.'][url_meta]" type="text" name="seopress_video['.$key.'][url]" placeholder="'.esc_html__('Enter your video URL','wp-seopress').'" aria-label="'.__('Video URL','wp-seopress').'" value="'.$check_url.'" />
559
  </p>
560
  <p class="internal_video">
561
- <label for="seopress_video['.$key.'][internal_video_meta]" id="seopress_video['.$key.'][internal_video]">
562
- <input type="checkbox" name="seopress_video['.$key.'][internal_video]" id="seopress_video['.$key.'][internal_video_meta]" value="yes" '. checked( $check_internal_video, 'yes', false ) .' />
563
- '. __( 'NOT an external video (eg: video hosting on YouTube, Vimeo, Wistia...)? Check this if your video is hosting on this server.', 'wp-seopress' ) .'
564
  </label>
565
  </p>
566
  <p>
567
- <label for="seopress_video['.$key.'][title_meta]">'. __( 'Video Title (required)', 'wp-seopress' ) .'</label>
568
- <input id="seopress_video['.$key.'][title_meta]" type="text" name="seopress_video['.$key.'][title]" placeholder="'.esc_html__('Enter your video title','wp-seopress').'" aria-label="'.__('Video title','wp-seopress').'" value="'.$check_title.'" />
569
- <span class="advise">'. __('Default: title tag, if not available, post title.', 'wp-seopress') .'</span>
570
  </p>
571
  <p>
572
- <label for="seopress_video['.$key.'][desc_meta]">'. __( 'Video Description (required)', 'wp-seopress' ) .'</label>
573
- <textarea id="seopress_video['.$key.'][desc_meta]" name="seopress_video['.$key.'][desc]" placeholder="'.esc_html__('Enter your video description','wp-seopress').'" aria-label="'.__('Video description','wp-seopress').'" value="'.$check_desc.'">'.$check_desc.'</textarea>
574
- <span class="advise">'. __('2048 characters max.; default: meta description. If not available, use the beginning of the post content.', 'wp-seopress') .'</span>
575
- </p>
576
  <p>
577
- <label for="seopress_video['.$key.'][thumbnail_meta]">'. __( 'Video Thumbnail (required)', 'wp-seopress' ) .'</label>
578
- <input id="seopress_video['.$key.'][thumbnail_meta]" class="seopress_video_thumbnail_meta" type="text" name="seopress_video['.$key.'][thumbnail]" placeholder="'.esc_html__('Select your video thumbnail','wp-seopress').'" value="'.$check_thumbnail.'" />
579
- <input class="button seopress_video_thumbnail_upload seopress_media_upload" type="button" aria-label="'.__('Video Thumbnail','wp-seopress').'" value="'.__('Upload an Image','wp-seopress').'" />
580
- <span class="advise">'. __('Minimum size: 160x90px (1920x1080 max), JPG, PNG or GIF formats. Default: your post featured image.', 'wp-seopress') .'</span>
581
  </p>
582
  <p>
583
- <label for="seopress_video['.$key.'][duration_meta]">'. __( 'Video Duration (recommended)', 'wp-seopress' ) .'</label>
584
- <input id="seopress_video['.$key.'][duration_meta]" type="number" step="1" min="0" max="28800" name="seopress_video['.$key.'][duration]" placeholder="'.esc_html__('Duration in seconds','wp-seopress').'" aria-label="'.__('Video duration','wp-seopress').'" value="'.$check_duration.'" />
585
- <span class="advise">'. __('The duration of the video in seconds. Value must be between 0 and 28800 (8 hours).', 'wp-seopress') .'</span>
586
  </p>
587
  <p>
588
- <label for="seopress_video['.$key.'][rating_meta]">'. __( 'Video Rating', 'wp-seopress' ) .'</label>
589
- <input id="seopress_video['.$key.'][rating_meta]" type="number" step="0.1" min="0" max="5" name="seopress_video['.$key.'][rating]" placeholder="'.esc_html__('Video rating','wp-seopress').'" aria-label="'.__('Video rating','wp-seopress').'" value="'.$check_rating.'" />
590
- <span class="advise">'. __('Allowed values are float numbers in the range 0.0 to 5.0.', 'wp-seopress') .'</span>
591
  </p>
592
  <p>
593
- <label for="seopress_video['.$key.'][view_count_meta]">'. __( 'View count', 'wp-seopress' ) .'</label>
594
- <input id="seopress_video['.$key.'][view_count_meta]" type="number" name="seopress_video['.$key.'][view_count]" placeholder="'.esc_html__('Number of views','wp-seopress').'" aria-label="'.__('View count','wp-seopress').'" value="'.$check_view_count.'" />
595
  </p>
596
  <p>
597
- <label for="seopress_video['.$key.'][tag_meta]">'. __( 'Video tags', 'wp-seopress' ) .'</label>
598
- <input id="seopress_video['.$key.'][tag_meta]" type="text" name="seopress_video['.$key.'][tag]" placeholder="'.esc_html__('Enter your video tags','wp-seopress').'" aria-label="'.__('Video tags','wp-seopress').'" value="'.$check_tag.'" />
599
- <span class="advise">'. __('32 tags max., separate tags with commas. Default: target keywords + post tags if available.', 'wp-seopress') .'</span>
600
  </p>
601
  <p>
602
- <label for="seopress_video['.$key.'][cat_meta]">'. __( 'Video categories', 'wp-seopress' ) .'</label>
603
- <input id="seopress_video['.$key.'][cat_meta]" type="text" name="seopress_video['.$key.'][cat]" placeholder="'.esc_html__('Enter your video categories','wp-seopress').'" aria-label="'.__('Video categories','wp-seopress').'" value="'.$check_cat.'" />
604
- <span class="advise">'. __('256 characters max., usually a video will belong to a single category, separate categories with commas. Default: first post category if available.', 'wp-seopress') .'</span>
605
  </p>
606
  <p class="family-friendly">
607
- <label for="seopress_video['.$key.'][family_friendly_meta]" id="seopress_video['.$key.'][family_friendly]">
608
- <input type="checkbox" name="seopress_video['.$key.'][family_friendly]" id="seopress_video['.$key.'][family_friendly_meta]" value="yes" '. checked( $check_family_friendly, 'yes', false ) .' />
609
- '. __( 'NOT family friendly?', 'wp-seopress' ) .'
610
  </label>
611
- <span class="advise">'. __('The video will be available only to users with SafeSearch turned off.', 'wp-seopress') .'</span>
612
  </p>
613
- <p><a href="#" class="remove-video button">'.__('Remove video','wp-seopress').'</a></p>
614
  </div>
615
  </div>
616
  </div>
617
  ';
618
- }
619
- echo '</div>
620
- <p><a href="#" id="add-video" class="add-video button button-primary">'.__('Add video','wp-seopress').'</a></p>
621
  </div>';
622
- }
623
- }
624
- }
625
- }
626
- }
627
- echo '</div>';
628
-
629
- if ( $pagenow =='term.php' || $pagenow =='edit-tags.php') {
630
- echo '</div>';
631
- echo '</div>';
632
- echo '</td>';
633
- echo '</tr>';
634
  }
635
- echo '<input type="hidden" id="seo_tabs" name="seo_tabs" value="'.htmlspecialchars(json_encode(array_keys($seo_tabs))).'">';
1
  <?php
2
+ defined('ABSPATH') or exit('Please don&rsquo;t call the plugin directly. Thanks :)');
3
 
4
  global $typenow;
5
  global $pagenow;
6
 
7
  $data_tax = '';
8
 
9
+ if ('post-new.php' == $pagenow || 'post.php' == $pagenow) {
10
+ $current_id = get_the_id();
11
+ $origin = 'post';
12
+ $title = get_the_title($current_id);
13
+
14
+ function seopress_titles_single_cpt_date_option() {
15
+ global $post;
16
+ $seopress_get_current_cpt = get_post_type($post);
17
+
18
+ $seopress_titles_single_cpt_date_option = get_option('seopress_titles_option_name');
19
+ if ( ! empty($seopress_titles_single_cpt_date_option)) {
20
+ foreach ($seopress_titles_single_cpt_date_option as $key => $seopress_titles_single_cpt_date_value) {
21
+ $options[$key] = $seopress_titles_single_cpt_date_value;
22
+ }
23
+ if (isset($seopress_titles_single_cpt_date_option['seopress_titles_single_titles'][$seopress_get_current_cpt]['date'])) {
24
+ return $seopress_titles_single_cpt_date_option['seopress_titles_single_titles'][$seopress_get_current_cpt]['date'];
25
+ }
26
+ }
27
+ }
28
+
29
+ function seopress_display_date_snippet() {
30
+ if (seopress_titles_single_cpt_date_option()) {
31
+ return '<div class="snippet-date">' . get_the_modified_date('M j, Y') . ' - </div>';
32
+ }
33
+ }
34
+ } elseif ('term.php' == $pagenow || 'edit-tags.php' == $pagenow) {
35
+ global $tag;
36
+ $current_id = $tag->term_id;
37
+ $origin = 'term';
38
+ $data_tax = $tag->taxonomy;
39
+ $title = $tag->name;
40
  }
41
 
42
  function seopress_redirections_value($seopress_redirections_value) {
43
+ if ('' != $seopress_redirections_value) {
44
+ return $seopress_redirections_value;
45
+ }
46
  }
47
 
48
+ if ('term.php' == $pagenow || 'edit-tags.php' == $pagenow) {
49
+ echo '
 
50
  <tr id="term-seopress" class="form-field">
51
+ <th scope="row"><h2>' . __('SEO', 'wp-seopress') . '</h2></th>
52
  <td>
53
  <div id="seopress_cpt">
54
  <div class="inside">';
55
  }
56
 
57
+ echo '<div id="seopress-tabs" data_id="' . $current_id . '" data_origin="' . $origin . '" data_tax="' . $data_tax . '">';
58
+
59
+ if ('seopress_404' != $typenow) {
60
+ $seo_tabs['title-tab'] = '<li><a href="#tabs-1"><span class="dashicons dashicons-editor-table"></span>' . __('Titles settings', 'wp-seopress') . '</a></li>';
61
+ $seo_tabs['advanced-tab'] = '<li><a href="#tabs-2"><span class="dashicons dashicons-admin-generic"></span>' . __('Advanced', 'wp-seopress') . '<span id="sp-advanced-alert"></span></a></li>';
62
+ $seo_tabs['social-tab'] = '<li><a href="#tabs-3"><span class="dashicons dashicons-share"></span>' . __('Social', 'wp-seopress') . '</a></li>';
63
+ }
64
+
65
+ $seo_tabs['redirect-tab'] = '<li><a href="#tabs-4"><span class="dashicons dashicons-admin-links"></span>' . __('Redirection', 'wp-seopress') . '</a></li>';
66
+
67
+ if (is_plugin_active('wp-seopress-pro/seopress-pro.php')) {
68
+ if (function_exists('seopress_get_toggle_option') && '1' == seopress_get_toggle_option('news')) {
69
+ if ('post-new.php' == $pagenow || 'post.php' == $pagenow) {
70
+ if ('seopress_404' != $typenow) {
71
+ $seo_tabs['news-tab'] = '<li><a href="#tabs-5"><span class="dashicons dashicons-admin-post"></span>' . __('Google News', 'wp-seopress') . '</a></li>';
72
+ }
73
+ }
74
+ }
75
+ if (function_exists('seopress_get_toggle_option') && '1' == seopress_get_toggle_option('xml-sitemap') && function_exists('seopress_xml_sitemap_video_enable_option') && '1' == seopress_xml_sitemap_video_enable_option()) {
76
+ if ('post-new.php' == $pagenow || 'post.php' == $pagenow) {
77
+ if ('seopress_404' != $typenow) {
78
+ $seo_tabs['video-tab'] = '<li><a href="#tabs-6"><span class="dashicons dashicons-format-video"></span>' . __('Video Sitemap', 'wp-seopress') . '</a></li>';
79
+ }
80
+ }
81
+ }
82
+ }
83
+
84
+ $seo_tabs = apply_filters('seopress_metabox_seo_tabs', $seo_tabs);
85
+
86
+ if ( ! empty($seo_tabs)) {
87
+ echo '<ul>';
88
+ foreach ($seo_tabs as $tab) {
89
+ echo $tab;
90
+ }
91
+ echo '</ul>';
92
+ }
93
+
94
+ if ('seopress_404' != $typenow) {
95
+ if (array_key_exists('title-tab', $seo_tabs)) {
96
+ echo '<div id="tabs-1">';
97
+ if (is_plugin_active('woocommerce/woocommerce.php')) {
98
+ $shop_page_id = wc_get_page_id('shop');
99
+ if ('post-new.php' == $pagenow || 'post.php' == $pagenow) {
100
+ if ($post && absint($shop_page_id) === absint($post->ID)) {
101
+ echo '<p class="notice notice-info">' . __('This is your <strong>Shop page</strong>. Go to <strong>SEO > Titles & Metas > Archives > Products</strong> ', 'wp-seopress') . ' <a href="' . admin_url('admin.php?page=seopress-titles') . '">' . __('to edit your title and meta description', 'wp-seopress') . '</a></p>';
102
+ }
103
+ }
104
+ }
105
+ echo '<div class="box-left">
 
106
  <p style="margin-bottom:0">
107
  <label for="seopress_titles_title_meta">'
108
+ . __('Title', 'wp-seopress')
109
+ . seopress_tooltip(__('Meta title', 'wp-seopress'), __('Titles are critical to give users a quick insight into the content of a result and why it’s relevant to their query. It\'s often the primary piece of information used to decide which result to click on, so it\'s important to use high-quality titles on your web pages.', 'wp-seopress'), esc_html('<title>My super title</title>')) .
110
+ '</label>
111
+ <input id="seopress_titles_title_meta" type="text" name="seopress_titles_title" placeholder="' . esc_html__('Enter your title', 'wp-seopress') . '" aria-label="' . __('Title', 'wp-seopress') . '" value="' . $seopress_titles_title . '" />
112
  </p>
113
  <div class="sp-progress">
114
  <div id="seopress_titles_title_counters_progress" class="sp-progress-bar" role="progressbar" style="width: 1%;" aria-valuenow="1" aria-valuemin="0" aria-valuemax="100">1%</div>
115
  </div>
116
  <div class="wrap-seopress-counters">
117
  <div id="seopress_titles_title_pixel"></div>
118
+ <strong>' . __(' / 568 pixels - ', 'wp-seopress') . '</strong>
119
  <div id="seopress_titles_title_counters"></div>
120
+ ' . __(' (maximum recommended limit)', 'wp-seopress') . '
121
  </div>
122
+
123
  <div class="wrap-tags">';
124
+ if ('term.php' == $pagenow || 'edit-tags.php' == $pagenow) {
125
+ echo '<span id="seopress-tag-single-title" data-tag="%%term_title%%" class="tag-title"><span class="dashicons dashicons-plus"></span>' . __('Term Title', 'wp-seopress') . '</span>';
126
+ } else {
127
+ echo '<span id="seopress-tag-single-title" data-tag="%%post_title%%" class="tag-title"><span class="dashicons dashicons-plus"></span>' . __('Post Title', 'wp-seopress') . '</span>';
128
+ }
129
+ echo '<span id="seopress-tag-single-site-title" data-tag="%%sitetitle%%" class="tag-title"><span class="dashicons dashicons-plus"></span>' . __('Site Title', 'wp-seopress') . '</span>
130
+ <span id="seopress-tag-single-sep" data-tag="%%sep%%" class="tag-title"><span class="dashicons dashicons-plus"></span>' . __('Separator', 'wp-seopress') . '</span>';
131
+
132
+ echo seopress_render_dyn_variables('tag-title');
133
+
134
+ echo '</div>
135
 
136
  <p style="margin-bottom:0">
137
  <label for="seopress_titles_desc_meta">'
138
+ . __('Meta description', 'wp-seopress')
139
+ . seopress_tooltip(__('Meta description', 'wp-seopress'), __('A meta description tag should generally inform and interest users with a short, relevant summary of what a particular page is about. <br>They are like a pitch that convince the user that the page is exactly what they\'re looking for. <br>There\'s no limit on how long a meta description can be, but the search result snippets are truncated as needed, typically to fit the device width.', 'wp-seopress'), esc_html('<meta name="description" content="my super meta description" />')) . '
140
  </label>
141
+ <textarea id="seopress_titles_desc_meta" style="width:100%" rows="4" name="seopress_titles_desc" placeholder="' . esc_html__('Enter your meta description', 'wp-seopress') . '" aria-label="' . __('Meta description', 'wp-seopress') . '" value="' . $seopress_titles_desc . '">' . $seopress_titles_desc . '</textarea>
142
  </p>
143
  <div class="sp-progress">
144
  <div id="seopress_titles_desc_counters_progress" class="sp-progress-bar" role="progressbar" style="width: 1%;" aria-valuenow="1" aria-valuemin="0" aria-valuemax="100">1%</div>
145
  </div>
146
  <div class="wrap-seopress-counters">
147
  <div id="seopress_titles_desc_pixel"></div>
148
+ <strong>' . __(' / 940 pixels - ', 'wp-seopress') . '</strong>
149
  <div id="seopress_titles_desc_counters"></div>
150
+ ' . __(' (maximum recommended limit)', 'wp-seopress') . '
151
  </div>
152
  <div class="wrap-tags">';
153
+ if ('term.php' == $pagenow || 'edit-tags.php' == $pagenow) {
154
+ echo '<span id="seopress-tag-single-excerpt" data-tag="%%_category_description%%" class="tag-title"><span class="dashicons dashicons-plus"></span>' . __('Category / term description', 'wp-seopress') . '</span>';
155
+ } else {
156
+ echo '<span id="seopress-tag-single-excerpt" data-tag="%%post_excerpt%%" class="tag-title"><span class="dashicons dashicons-plus"></span>' . __('Post Excerpt', 'wp-seopress') . '</span>';
157
+ }
158
+ echo seopress_render_dyn_variables('tag-description');
159
+ echo '</div></div>';
160
+
161
+ $toggle_preview = 1;
162
+ $toggle_preview = apply_filters('seopress_toggle_mobile_preview', $toggle_preview);
163
+
164
+ echo '<div class="box-right">
165
  <div class="google-snippet-preview mobile-preview">
166
  <h3>'
167
+ . __('Google Snippet Preview', 'wp-seopress')
168
+ . seopress_tooltip(__('Snippet Preview', 'wp-seopress'), __('The Google preview is a simulation. <br>There is no reliable preview because it depends on the screen resolution, the device used, the expression sought, and Google. <br>There is not one snippet for one URL but several. <br>All the data in this overview comes directly from your source code. <br>This is what the crawlers will see.', 'wp-seopress'), null) . '
169
  </h3>
170
+ <p>' . __('This is what your page will look like in Google search results. You have to publish your post to get the Google Snippet Preview.', 'wp-seopress') . '</p>
171
+
172
  <div class="wrap-toggle-preview">
173
  <p>
174
  <span class="dashicons dashicons-smartphone"></span>
175
+ ' . __('Mobile Preview', 'wp-seopress') . '
176
+ <input type="checkbox" name="toggle-preview" id="toggle-preview" class="toggle" data-toggle="' . $toggle_preview . '">
177
  <label for="toggle-preview"></label>
178
  </p>
179
  </div>';
180
+
181
+ global $tag;
182
+
183
+ $gp_title = '';
184
+ $gp_permalink = '';
185
+ if (get_the_title()) {
186
+ $gp_title = '<div class="snippet-title-default" style="display:none">' . get_the_title() . ' - ' . get_bloginfo('name') . '</div>';
187
+ $gp_permalink = '<div class="snippet-permalink">' . htmlspecialchars(urldecode(get_permalink())) . '</div>';
188
+ } elseif ($tag) {
189
+ $gp_title = '<div class="snippet-title-default" style="display:none">' . $tag->name . ' - ' . get_bloginfo('name') . '</div>';
190
+ $gp_permalink = '<div class="snippet-permalink">' . htmlspecialchars(urldecode(get_term_link($tag))) . '</div>';
191
+ }
192
+
193
+ $siteicon = '<div class="snippet-favicon"><img aria-hidden="true" height="16" src="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAABs0lEQVR4AWL4//8/RRjO8Iucx+noO0MWUDo16FYABMGP6ZfUcRnWtm27jVPbtm3bttuH2t3eFPcY9pLz7NxiLjCyVd87pKnHyqXyxtCs8APd0rnyxiu4qSeA3QEDrAwBDrT1s1Rc/OrjLZwqVmOSu6+Lamcpp2KKMA9PH1BYXMe1mUP5qotvXTywsOEEYHXxrY+3cqk6TMkYpNr2FeoY3KIr0RPtn9wQ2unlA+GMkRw6+9TFw4YTwDUzx/JVvARj9KaedXRO8P5B1Du2S32smzqUrcKGEyA+uAgQjKX7zf0boWHGfn71jIKj2689gxp7OAGShNcBUmLMPVjZuiKcA2vuWHHDCQxMCz629kXAIU4ApY15QwggAFbfOP9DhgBJ+nWVJ1AZAfICAj1pAlY6hCADZnveQf7bQIwzVONGJonhLIlS9gr5mFg44Xd+4S3XHoGNPdJl1INIwKyEgHckEhgTe1bGiFY9GSFBYUwLh1IkiJUbY407E7syBSFxKTszEoiE/YdrgCEayDmtaJwCI9uu8TKMuZSVfSa4BpGgzvomBR/INhLGzrqDotp01ZR8pn/1L0JN9d9XNyx0AAAAAElFTkSuQmCC" width="16" alt="favicon"></div>';
194
+ if (get_site_icon_url(32)) {
195
+ $siteicon = '<div class="snippet-favicon"><img aria-hidden="true" height="16" src="' . get_site_icon_url(32) . '" width="16" alt="favicon"/></div>';
196
+ }
197
+
198
+ echo '<div class="wrap-snippet">
199
+ <div class="wrap-m-icon-permalink">' . $siteicon . $gp_permalink . '</div>
200
  <div class="snippet-title"></div>
201
  <div class="snippet-title-custom" style="display:none"></div>';
202
+
203
+ echo $gp_title;
204
+ echo $gp_permalink;
205
+
206
+ if ('post-new.php' == $pagenow || 'post.php' == $pagenow) {
207
+ echo seopress_display_date_snippet();
208
+ }
209
+ echo '<div class="snippet-description">...</div>
210
  <div class="snippet-description-custom" style="display:none"></div>
211
  <div class="snippet-description-default" style="display:none"></div>';
212
+ echo '</div>
213
  </div>
214
  </div>
215
  </div>';
216
+ }
217
+ if (array_key_exists('advanced-tab', $seo_tabs)) {
218
+ echo '<div id="tabs-2">
219
+ <span class="sp-section">' . __('Meta robots settings', 'wp-seopress') . '</span>
220
  <p>
221
  <label for="seopress_robots_index_meta">
222
+ <input type="checkbox" name="seopress_robots_index" id="seopress_robots_index_meta" value="yes" ' . checked($seopress_robots_index, 'yes', false) . ' ' . $disabled['robots_index'] . '/>
223
+ ' . __('Do not display this page in search engine results / XML - HTML sitemaps <strong>(noindex)</strong>', 'wp-seopress') . '
224
+ ' . seopress_tooltip(__('"noindex" robots meta tag', 'wp-seopress'), __('By checking this option, you will add a meta robots tag with the value "noindex". <br>Search engines will not index this URL in the search results.', 'wp-seopress'), esc_html('<meta name="robots" content="noindex" />')) . '
225
  </label>
226
  </p>
227
  <p>
228
  <label for="seopress_robots_follow_meta">
229
+ <input type="checkbox" name="seopress_robots_follow" id="seopress_robots_follow_meta" value="yes" ' . checked($seopress_robots_follow, 'yes', false) . ' ' . $disabled['robots_follow'] . '/>
230
+ ' . __('Do not follow links for this page <strong>(nofollow)</strong>', 'wp-seopress') . '
231
+ ' . seopress_tooltip(__('"nofollow" robots meta tag', 'wp-seopress'), __('By checking this option, you will add a meta robots tag with the value "nofollow". <br>Search engines will not follow links from this URL.', 'wp-seopress'), esc_html('<meta name="robots" content="nofollow" />')) . '
232
  </label>
233
  </p>
234
  <p>
235
  <label for="seopress_robots_odp_meta">
236
+ <input type="checkbox" name="seopress_robots_odp" id="seopress_robots_odp_meta" value="yes" ' . checked($seopress_robots_odp, 'yes', false) . ' ' . $disabled['robots_odp'] . '/>
237
+ ' . __('Do not use Open Directory project metadata for titles or excerpts for this page <strong>(noodp)</strong>', 'wp-seopress') . '
238
+ ' . seopress_tooltip(__('"noodp" robots meta tag', 'wp-seopress'), __('By checking this option, you will add a meta robots tag with the value "noodp". <br>Note that Google and Yahoo have stopped considering this tag since the closing of DMOZ directory.', 'wp-seopress'), esc_html('<meta name="robots" content="noodp" />')) . '
239
  </label>
240
  </p>
241
  <p>
242
  <label for="seopress_robots_imageindex_meta">
243
+ <input type="checkbox" name="seopress_robots_imageindex" id="seopress_robots_imageindex_meta" value="yes" ' . checked($seopress_robots_imageindex, 'yes', false) . ' ' . $disabled['imageindex'] . '/>
244
+ ' . __('Do not index images for this page <strong>(noimageindex)</strong>', 'wp-seopress') . '
245
+ ' . seopress_tooltip(__('"noimageindex" robots meta tag', 'wp-seopress'), __('By checking this option, you will add a meta robots tag with the value "noimageindex". <br> Note that your images can always be indexed if they are linked from other pages.', 'wp-seopress'), esc_html('<meta name="google" content="noimageindex" />')) . '
246
  </label>
247
  </p>
248
  <p>
249
  <label for="seopress_robots_archive_meta">
250
+ <input type="checkbox" name="seopress_robots_archive" id="seopress_robots_archive_meta" value="yes" ' . checked($seopress_robots_archive, 'yes', false) . ' ' . $disabled['archive'] . '/>
251
+ ' . __('Do not display a "Cached" link in the Google search results <strong>(noarchive)</strong>', 'wp-seopress') . '
252
+ ' . seopress_tooltip(__('"noarchive" robots meta tag', 'wp-seopress'), __('By checking this option, you will add a meta robots tag with the value "noarchive".', 'wp-seopress'), esc_html('<meta name="robots" content="noarchive" />')) . '
253
  </label>
254
  </p>
255
  <p>
256
  <label for="seopress_robots_snippet_meta">
257
+ <input type="checkbox" name="seopress_robots_snippet" id="seopress_robots_snippet_meta" value="yes" ' . checked($seopress_robots_snippet, 'yes', false) . ' ' . $disabled['snippet'] . '/>
258
+ ' . __('Do not display a description in search results for this page <strong>(nosnippet)</strong>', 'wp-seopress') . '
259
+ ' . seopress_tooltip(__('"nosnippet" robots meta tag', 'wp-seopress'), __('By checking this option, you will add a meta robots tag with the value "nosnippet".', 'wp-seopress'), esc_html('<meta name="robots" content="nosnippet" />')) . '
260
  </label>
261
  </p>
262
  <p class="description">';
263
+ $url = admin_url('admin.php?page=seopress-titles#tab=tab_seopress_titles_single');
264
+ /* translators: %s: link to plugin settings page */
265
+ echo sprintf(__('You cannot uncheck a parameter? This is normal, and it‘s most likely defined in the <a href="%s">global settings of the plugin.</a>', 'wp-seopress'), $url);
266
+ echo '</p>
267
  <p>
268
+ <label for="seopress_robots_canonical_meta">' . __('Canonical URL', 'wp-seopress') . '
269
+ ' . seopress_tooltip(__('Canonical URL', 'wp-seopress'), __('A canonical URL is the URL of the page that Google thinks is most representative from a set of duplicate pages on your site. <br>For example, if you have URLs for the same page (for example: example.com?dress=1234 and example.com/dresses/1234), Google chooses one as canonical. <br>Note that the pages do not need to be absolutely identical; minor changes in sorting or filtering of list pages do not make the page unique (for example, sorting by price or filtering by item color).
270
+ The canonical can be in a different domain than a duplicate.', 'wp-seopress'), esc_html('<link rel="canonical" href="https://www.example.com/my-post-url/" />')) . '
271
  </label>
272
+ <input id="seopress_robots_canonical_meta" type="text" name="seopress_robots_canonical" placeholder="' . esc_html__('Default value: ', 'wp-seopress') . htmlspecialchars(urldecode(get_permalink())) . '" aria-label="' . __('Canonical URL', 'wp-seopress') . '" value="' . $seopress_robots_canonical . '" />
273
+
274
  </span>
275
  </p>';
276
 
277
+ if (('post' == $typenow || 'product' == $typenow) && ('post.php' == $pagenow || 'post-new.php' == $pagenow)) {
278
+ echo '<p>
279
+ <label for="seopress_robots_primary_cat_meta">' . __('Select a primary category', 'wp-seopress') . '</label>
280
+ <span class="description">' . __('Set the category that gets used in the %category% permalink and in our breadcrumbs if you have multiple categories.', 'wp-seopress') . '</p>
281
  <select name="seopress_robots_primary_cat">';
282
 
283
+ $cats = get_categories();
284
 
285
+ if ('product' == $typenow) {
286
+ $cats = get_the_terms($post, 'product_cat');
287
+ }
288
 
289
+ if ( ! empty($cats)) {
290
+ echo '<option ' . selected('none', $seopress_robots_primary_cat, false) . ' value="none">' . __('None (will disable this feature)', 'wp-seopress') . '</option>';
291
+ foreach ($cats as $category) {
292
+ echo '<option ' . selected($category->term_id, $seopress_robots_primary_cat, false) . ' value="' . $category->term_id . '">' . $category->name . '</option>';
293
+ }
294
+ }
295
+ echo '</select>
296
  </p>';
297
+ }
298
+
299
+ if (is_plugin_active('wp-seopress-pro/seopress-pro.php')) {
300
+ echo '<p>
301
+ <label for="seopress_robots_breadcrumbs_meta">' . __('Custom breadcrumbs', 'wp-seopress') . '</label>
302
+ <span class="description">' . __('Enter a custom value, useful if your title is too long', 'wp-seopress') . '</span>
303
  </p>
304
  <p>
305
+ <input id="seopress_robots_breadcrumbs_meta" type="text" name="seopress_robots_breadcrumbs" placeholder="' . esc_html(sprintf(__('Current breadcrumbs: %s', 'wp-seopress'), $title)) . '" aria-label="' . __('Custom breadcrumbs', 'wp-seopress') . '" value="' . $seopress_robots_breadcrumbs . '" />
306
  </p>';
307
+ }
308
+ echo '</div>';
309
+ }
310
+ if (array_key_exists('social-tab', $seo_tabs)) {
311
+ echo '<div id="tabs-3">
312
  <div class="box-left">
313
  <span class="dashicons dashicons-facebook-alt"></span>
314
  <br><br>
315
+ <span class="dashicons dashicons-external"></span><a href="https://developers.facebook.com/tools/debug/sharing/?q=' . get_permalink(get_the_id()) . '" target="_blank">' . __('Ask Facebook to update its cache', 'wp-seopress') . '</a>
316
+ <p>' . __('<span class="label">Did you know?</span> LinkedIn, Instagram and Pinterest use the same social metadata as Facebook. Twitter does the same if no Twitter cards tags are defined below.', 'wp-seopress') . '</p>
317
  <p>
318
+ <label for="seopress_social_fb_title_meta">' . __('Facebook Title', 'wp-seopress') . '</label>
319
+ <input id="seopress_social_fb_title_meta" type="text" name="seopress_social_fb_title" placeholder="' . esc_html__('Enter your Facebook title', 'wp-seopress') . '" aria-label="' . __('Facebook Title', 'wp-seopress') . '" value="' . $seopress_social_fb_title . '" />
320
  </p>
321
  <p>
322
+ <label for="seopress_social_fb_desc_meta">' . __('Facebook description', 'wp-seopress') . '</label>
323
+ <textarea id="seopress_social_fb_desc_meta" name="seopress_social_fb_desc" placeholder="' . esc_html__('Enter your Facebook description', 'wp-seopress') . '" aria-label="' . __('Facebook description', 'wp-seopress') . '" value="' . $seopress_social_fb_desc . '">' . $seopress_social_fb_desc . '</textarea>
324
+ </p>
325
  <p>
326
+ <label for="seopress_social_fb_img_meta">' . __('Facebook Thumbnail', 'wp-seopress') . '</label>
327
+ <input id="seopress_social_fb_img_meta" type="text" name="seopress_social_fb_img" placeholder="' . esc_html__('Select your default thumbnail', 'wp-seopress') . '" aria-label="' . __('Facebook Thumbnail', 'wp-seopress') . '" value="' . $seopress_social_fb_img . '" />
328
+ <span class="advise">' . __('Minimum size: 200x200px, ideal ratio 1.91:1, 8Mb max. (eg: 1640x856px or 3280x1712px for retina screens)', 'wp-seopress') . '</span>
329
+ <input id="seopress_social_fb_img_upload" class="button" type="button" value="' . __('Upload an Image', 'wp-seopress') . '" />
330
  </p>
331
  </div>
332
  <div class="box-right">
333
  <div class="facebook-snippet-preview">
334
+ <h3>' . __('Facebook Preview', 'wp-seopress') . '</h3>';
335
+ if ('1' == seopress_get_toggle_option('social')) {
336
+ echo '<p>' . __('This is what your post will look like in Facebook. You have to publish your post to get the Facebook Preview.', 'wp-seopress') . '</p>';
337
+ } else {
338
+ echo '<p class="notice notice-error" style="margin: 0 0 1rem 0">' . __('The Social Networks feature is disabled. Still seing informations from the FB Preview? You probably have social tags added by your theme or a plugin.', 'wp-seopress') . '</p>';
339
+ }
340
+ echo '<div class="facebook-snippet-box">
341
+ <div class="snippet-fb-img-alert alert1" style="display:none"><p class="notice notice-error">' . __('File type not supported by Facebook. Please choose another image.', 'wp-seopress') . '</p></div>
342
+ <div class="snippet-fb-img-alert alert2" style="display:none"><p class="notice notice-error">' . __('Minimun size for Facebook is <strong>200x200px</strong>. Please choose another image.', 'wp-seopress') . '</p></div>
343
+ <div class="snippet-fb-img-alert alert3" style="display:none"><p class="notice notice-error">' . __('File error. Please choose another image.', 'wp-seopress') . '</p></div>
344
+ <div class="snippet-fb-img-alert alert4" style="display:none"><p class="notice notice-info">' . __('Your image ratio is: ', 'wp-seopress') . '<span></span>. ' . __('The closer to 1.91 the better.', 'wp-seopress') . '</p></div>
345
+ <div class="snippet-fb-img-alert alert5" style="display:none"><p class="notice notice-error">' . __('File URL is not valid.', 'wp-seopress') . '</p></div>
346
  <div class="snippet-fb-img"><img src="" width="524" height="274" alt="" aria-label=""/></div>
347
  <div class="snippet-fb-img-custom" style="display:none"><img src="" width="524" height="274" alt="" aria-label=""/></div>
348
  <div class="snippet-fb-img-default" style="display:none"><img src="" width="524" height="274" alt="" aria-label=""/></div>
351
  <div class="snippet-meta">
352
  <div class="snippet-fb-url"></div>
353
  <div class="fb-sep">|</div>
354
+ <div class="fb-by">' . __('By&nbsp;', 'wp-seopress') . '</div>
355
  <div class="snippet-fb-site-name"></div>
356
  </div>
357
  <div class="title-desc">
358
  <div class="snippet-fb-title"></div>
359
  <div class="snippet-fb-title-custom" style="display:none"></div>';
360
+ global $tag;
361
+ if (get_the_title()) {
362
+ echo '<div class="snippet-fb-title-default" style="display:none">' . get_the_title() . ' - ' . get_bloginfo('name') . '</div>';
363
+ } elseif ($tag) {
364
+ echo '<div class="snippet-fb-title-default" style="display:none">' . $tag->name . ' - ' . get_bloginfo('name') . '</div>';
365
+ }
366
+ echo '<div class="snippet-fb-description">...</div>
367
  <div class="snippet-fb-description-custom" style="display:none"></div>
368
  <div class="snippet-fb-description-default" style="display:none"></div>';
369
+ echo '</div>
370
  </div>
371
  </div>
372
  </div>
376
  <br/>
377
  <span class="dashicons dashicons-twitter"></span>
378
  <br><br>
379
+ <span class="dashicons dashicons-external"></span><a href="https://cards-dev.twitter.com/validator" target="_blank">' . __('Preview your Twitter card using the official validator', 'wp-seopress') . '</a>
380
  <p>
381
+ <label for="seopress_social_twitter_title_meta">' . __('Twitter Title', 'wp-seopress') . '</label>
382
+ <input id="seopress_social_twitter_title_meta" type="text" name="seopress_social_twitter_title" placeholder="' . esc_html__('Enter your Twitter title', 'wp-seopress') . '" aria-label="' . __('Twitter Title', 'wp-seopress') . '" value="' . $seopress_social_twitter_title . '" />
383
  </p>
384
  <p>
385
+ <label for="seopress_social_twitter_desc_meta">' . __('Twitter description', 'wp-seopress') . '</label>
386
+ <textarea id="seopress_social_twitter_desc_meta" name="seopress_social_twitter_desc" placeholder="' . esc_html__('Enter your Twitter description', 'wp-seopress') . '" aria-label="' . __('Twitter description', 'wp-seopress') . '" value="' . $seopress_social_twitter_desc . '">' . $seopress_social_twitter_desc . '</textarea>
387
+ </p>
388
  <p>
389
+ <label for="seopress_social_twitter_img_meta">' . __('Twitter Thumbnail', 'wp-seopress') . '</label>
390
+ <input id="seopress_social_twitter_img_meta" type="text" name="seopress_social_twitter_img" placeholder="' . esc_html__('Select your default thumbnail', 'wp-seopress') . '" value="' . $seopress_social_twitter_img . '" />
391
+ <span class="advise">' . __('Minimum size: 144x144px (300x157px with large card enabled), ideal ratio 1:1 (2:1 with large card), 5Mb max.', 'wp-seopress') . '</span>
392
+ <input id="seopress_social_twitter_img_upload" class="button" type="button" aria-label="' . __('Twitter Thumbnail', 'wp-seopress') . '" value="' . __('Upload an Image', 'wp-seopress') . '" />
393
  </p>
394
  </div>
395
  <div class="box-right">
396
  <div class="twitter-snippet-preview">
397
+ <h3>' . __('Twitter Preview', 'wp-seopress') . '</h3>';
398
+ if ('1' == seopress_get_toggle_option('social')) {
399
+ echo '<p>' . __('This is what your post will look like in Twitter. You have to publish your post to get the Twitter Preview.', 'wp-seopress') . '</p>';
400
+ } else {
401
+ echo '<p class="notice notice-error" style="margin: 0 0 1rem 0">' . __('The Social Networks feature is disabled. Still seing informations from the Twitter Preview? You probably have social tags added by your theme or a plugin.', 'wp-seopress') . '</p>';
402
+ }
403
+ echo '<div class="twitter-snippet-box">
404
+ <div class="snippet-twitter-img-alert alert1" style="display:none"><p class="notice notice-error">' . __('File type not supported by Twitter. Please choose another image.', 'wp-seopress') . '</p></div>
405
+ <div class="snippet-twitter-img-alert alert2" style="display:none"><p class="notice notice-error">' . __('Minimun size for Twitter is <strong>144x144px</strong>. Please choose another image.', 'wp-seopress') . '</p></div>
406
+ <div class="snippet-twitter-img-alert alert3" style="display:none"><p class="notice notice-error">' . __('File error. Please choose another image.', 'wp-seopress') . '</p></div>
407
+ <div class="snippet-twitter-img-alert alert4" style="display:none"><p class="notice notice-info">' . __('Your image ratio is: ', 'wp-seopress') . '<span></span>. ' . __('The closer to 1 the better (with large card, 2 is better).', 'wp-seopress') . '</p></div>
408
+ <div class="snippet-twitter-img-alert alert5" style="display:none"><p class="notice notice-error">' . __('File URL is not valid.', 'wp-seopress') . '</p></div>
409
  <div class="snippet-twitter-img"><img src="" width="524" height="274" alt="" aria-label=""/></div>
410
  <div class="snippet-twitter-img-custom" style="display:none"><img src="" width="600" height="314" alt="" aria-label=""/></div>
411
  <div class="snippet-twitter-img-default" style="display:none"><img src="" width="600" height="314" alt="" aria-label=""/></div>
414
  <div class="title-desc">
415
  <div class="snippet-twitter-title"></div>
416
  <div class="snippet-twitter-title-custom" style="display:none"></div>';
417
+ global $tag;
418
+ if (get_the_title()) {
419
+ echo '<div class="snippet-twitter-title-default" style="display:none">' . get_the_title() . ' - ' . get_bloginfo('name') . '</div>';
420
+ } elseif ($tag) {
421
+ echo '<div class="snippet-twitter-title-default" style="display:none">' . $tag->name . ' - ' . get_bloginfo('name') . '</div>';
422
+ }
423
+ echo '<div class="snippet-twitter-description">...</div>
424
  <div class="snippet-twitter-description-custom" style="display:none"></div>
425
  <div class="snippet-twitter-description-default" style="display:none"></div>';
426
+ echo '</div>
427
  <div class="snippet-meta">
428
  <div class="snippet-twitter-url"></div>
429
  </div>
432
  </div>
433
  </div>
434
  </div>';
435
+ }
436
+ }
437
 
438
+ if (array_key_exists('redirect-tab', $seo_tabs)) {
439
+ echo '<div id="tabs-4">
440
  <p>
441
  <label for="seopress_redirections_enabled_meta" id="seopress_redirections_enabled">
442
+ <input type="checkbox" name="seopress_redirections_enabled" id="seopress_redirections_enabled_meta" value="yes" ' . checked($seopress_redirections_enabled, 'yes', false) . ' />
443
+ ' . __('Enable redirection?', 'wp-seopress') . '
444
  </label>
445
  </p>
446
  <p>
447
+ <label for="seopress_redirections_value_meta">' . __('URL redirection', 'wp-seopress') . '</label>
448
  <select name="seopress_redirections_type">
449
+ <option ' . selected('301', $seopress_redirections_type, false) . ' value="301">' . __('301 Moved Permanently', 'wp-seopress') . '</option>
450
+ <option ' . selected('302', $seopress_redirections_type, false) . ' value="302">' . __('302 Found / Moved Temporarily', 'wp-seopress') . '</option>
451
+ <option ' . selected('307', $seopress_redirections_type, false) . ' value="307">' . __('307 Moved Temporarily', 'wp-seopress') . '</option>
452
+ <option ' . selected('410', $seopress_redirections_type, false) . ' value="410">' . __('410 Gone', 'wp-seopress') . '</option>
453
+ <option ' . selected('451', $seopress_redirections_type, false) . ' value="451">' . __('451 Unavailable For Legal Reasons', 'wp-seopress') . '</option>
454
  </select>
455
+ <input id="seopress_redirections_value_meta" type="text" name="seopress_redirections_value" placeholder="' . esc_html__('Enter your new URL in absolute (eg: https://www.example.com/)', 'wp-seopress') . '" aria-label="' . __('URL redirection', 'wp-seopress') . '" value="' . $seopress_redirections_value . '" />
456
  <br><br>
457
  </p>';
458
+ if ('seopress_404' == $typenow) {
459
+ echo '<p>
460
+ <label for="seopress_redirections_param_meta">' . __('Query parameters', 'wp-seopress') . '</label>
461
  <select name="seopress_redirections_param">
462
+ <option ' . selected('exact_match', $seopress_redirections_param, false) . ' value="exact_match">' . __('Exactly match all parameters', 'wp-seopress') . '</option>
463
+ <option ' . selected('without_param', $seopress_redirections_param, false) . ' value="without_param">' . __('Exclude all parameters', 'wp-seopress') . '</option>
464
+ <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>
465
  </select></p>';
466
+ }
467
+ echo '<p>';
468
+ if ('yes' == $seopress_redirections_enabled) {
469
+ $status_code = ['410', '451'];
470
+ if ('' != $seopress_redirections_value || in_array($seopress_redirections_type, $status_code)) {
471
+ if ('post-new.php' == $pagenow || 'post.php' == $pagenow) {
472
+ if ('seopress_404' == $typenow) {
473
+ echo '<a href="' . get_home_url() . '/' . get_the_title() . '" id="seopress_redirections_value_default" class="button" target="_blank">' . __('Test your URL', 'wp-seopress') . '</a>';
474
+ } else {
475
+ echo '<a href="' . get_permalink() . '" id="seopress_redirections_value_default" class="button" target="_blank">' . __('Test your URL', 'wp-seopress') . '</a>';
476
+ }
477
+ } elseif ('term.php' == $pagenow) {
478
+ echo '<a href="' . get_term_link($term) . '" id="seopress_redirections_value_default" class="button" target="_blank">' . __('Test your URL', 'wp-seopress') . '</a>';
479
+ } else {
480
+ echo '<a href="' . get_permalink() . '" id="seopress_redirections_value_default" class="button" target="_blank">' . __('Test your URL', 'wp-seopress') . '</a>';
481
+ }
482
+ }
483
+ }
484
+
485
+ if (function_exists('seopress_get_locale') && 'fr' == seopress_get_locale()) {
486
+ $seopress_docs_link['support']['redirection'] = 'https://www.seopress.org/fr/support/guides/activer-redirections-301-surveillance-404/?utm_source=plugin&utm_medium=wp-admin&utm_campaign=seopress';
487
+ } else {
488
+ $seopress_docs_link['support']['redirection'] = 'https://www.seopress.org/support/guides/redirections/?utm_source=plugin&utm_medium=wp-admin&utm_campaign=seopress';
489
+ } ?>
 
490
  <span class="seopress-help dashicons dashicons-external"></span>
491
+ <a href="<?php echo $seopress_docs_link['support']['redirection']; ?>" target="_blank" class="seopress-help seopress-doc"><?php _e('Need help with your redirections? Read our guide.', 'wp-seopress'); ?></a>
492
+ <?php echo '</p>
 
493
  </div>';
494
+ }
495
+ if (is_plugin_active('wp-seopress-pro/seopress-pro.php')) {
496
+ if (function_exists('seopress_get_toggle_option') && '1' == seopress_get_toggle_option('news')) {
497
+ if ('post-new.php' == $pagenow || 'post.php' == $pagenow) {
498
+ if ('seopress_404' != $typenow) {
499
+ if (array_key_exists('news-tab', $seo_tabs)) {
500
+ echo '<div id="tabs-5">
501
  <p>
502
  <label for="seopress_news_disabled_meta" id="seopress_news_disabled">
503
+ <input type="checkbox" name="seopress_news_disabled" id="seopress_news_disabled_meta" value="yes" ' . checked($seopress_news_disabled, 'yes', false) . ' />
504
+ ' . __('Exclude this post from Google News Sitemap?', 'wp-seopress') . '
505
  </label>
506
  </p>
507
  </div>';
508
+ }
509
+ }
510
+ }
511
+ }
512
+ if (function_exists('seopress_get_toggle_option') && '1' == seopress_get_toggle_option('xml-sitemap') && '1' == seopress_xml_sitemap_video_enable_option()) {
513
+ if ('post-new.php' == $pagenow || 'post.php' == $pagenow) {
514
+ if ('seopress_404' != $typenow) {
515
+ //Init $seopress_video array if empty
516
+ if (empty($seopress_video)) {
517
+ $seopress_video = ['0' => ['']];
518
+ }
519
+
520
+ $count = $seopress_video[0];
521
+ end($count);
522
+ $total = key($count);
523
+
524
+ if (array_key_exists('video-tab', $seo_tabs)) {
525
+ echo '<div id="tabs-6">
 
526
  <p>
527
  <label for="seopress_video_disabled_meta" id="seopress_video_disabled">
528
+ <input type="checkbox" name="seopress_video_disabled" id="seopress_video_disabled_meta" value="yes" ' . checked($seopress_video_disabled, 'yes', false) . ' />
529
+ ' . __('Exclude this post from Video Sitemap?', 'wp-seopress') . '
530
  </label>
531
+ <span class="advise">' . __('If your post is set to noindex, it will be automatically excluded from the sitemap.', 'wp-seopress') . '</span>
532
  </p>
533
+ <div id="wrap-videos" data-count="' . $total . '">';
534
+ foreach ($seopress_video[0] as $key => $value) {
535
+ $check_url = isset($seopress_video[0][$key]['url']) ? esc_attr($seopress_video[0][$key]['url']) : null;
536
+ $check_internal_video = isset($seopress_video[0][$key]['internal_video']) ? esc_attr($seopress_video[0][$key]['internal_video']) : null;
537
+ $check_title = isset($seopress_video[0][$key]['title']) ? esc_attr($seopress_video[0][$key]['title']) : null;
538
+ $check_desc = isset($seopress_video[0][$key]['desc']) ? esc_attr($seopress_video[0][$key]['desc']) : null;
539
+ $check_thumbnail = isset($seopress_video[0][$key]['thumbnail']) ? esc_attr($seopress_video[0][$key]['thumbnail']) : null;
540
+ $check_duration = isset($seopress_video[0][$key]['duration']) ? esc_attr($seopress_video[0][$key]['duration']) : null;
541
+ $check_rating = isset($seopress_video[0][$key]['rating']) ? esc_attr($seopress_video[0][$key]['rating']) : null;
542
+ $check_view_count = isset($seopress_video[0][$key]['view_count']) ? esc_attr($seopress_video[0][$key]['view_count']) : null;
543
+ $check_view_count = isset($seopress_video[0][$key]['view_count']) ? esc_attr($seopress_video[0][$key]['view_count']) : null;
544
+ $check_tag = isset($seopress_video[0][$key]['tag']) ? esc_attr($seopress_video[0][$key]['tag']) : null;
545
+ $check_cat = isset($seopress_video[0][$key]['cat']) ? esc_attr($seopress_video[0][$key]['cat']) : null;
546
+ $check_family_friendly = isset($seopress_video[0][$key]['family_friendly']) ? esc_attr($seopress_video[0][$key]['family_friendly']) : null;
547
+
548
+ echo '<div class="video">
549
+ <h3 class="accordion-section-title" tabindex="0">' . __('Video ', 'wp-seopress') . $check_title . '</h3>
 
550
  <div class="accordion-section-content">
551
  <div class="inside">
552
  <p>
553
+ <label for="seopress_video[' . $key . '][url_meta]">' . __('Video URL (required)', 'wp-seopress') . '</label>
554
+ <input id="seopress_video[' . $key . '][url_meta]" type="text" name="seopress_video[' . $key . '][url]" placeholder="' . esc_html__('Enter your video URL', 'wp-seopress') . '" aria-label="' . __('Video URL', 'wp-seopress') . '" value="' . $check_url . '" />
555
  </p>
556
  <p class="internal_video">
557
+ <label for="seopress_video[' . $key . '][internal_video_meta]" id="seopress_video[' . $key . '][internal_video]">
558
+ <input type="checkbox" name="seopress_video[' . $key . '][internal_video]" id="seopress_video[' . $key . '][internal_video_meta]" value="yes" ' . checked($check_internal_video, 'yes', false) . ' />
559
+ ' . __('NOT an external video (eg: video hosting on YouTube, Vimeo, Wistia...)? Check this if your video is hosting on this server.', 'wp-seopress') . '
560
  </label>
561
  </p>
562
  <p>
563
+ <label for="seopress_video[' . $key . '][title_meta]">' . __('Video Title (required)', 'wp-seopress') . '</label>
564
+ <input id="seopress_video[' . $key . '][title_meta]" type="text" name="seopress_video[' . $key . '][title]" placeholder="' . esc_html__('Enter your video title', 'wp-seopress') . '" aria-label="' . __('Video title', 'wp-seopress') . '" value="' . $check_title . '" />
565
+ <span class="advise">' . __('Default: title tag, if not available, post title.', 'wp-seopress') . '</span>
566
  </p>
567
  <p>
568
+ <label for="seopress_video[' . $key . '][desc_meta]">' . __('Video Description (required)', 'wp-seopress') . '</label>
569
+ <textarea id="seopress_video[' . $key . '][desc_meta]" name="seopress_video[' . $key . '][desc]" placeholder="' . esc_html__('Enter your video description', 'wp-seopress') . '" aria-label="' . __('Video description', 'wp-seopress') . '" value="' . $check_desc . '">' . $check_desc . '</textarea>
570
+ <span class="advise">' . __('2048 characters max.; default: meta description. If not available, use the beginning of the post content.', 'wp-seopress') . '</span>
571
+ </p>
572
  <p>
573
+ <label for="seopress_video[' . $key . '][thumbnail_meta]">' . __('Video Thumbnail (required)', 'wp-seopress') . '</label>
574
+ <input id="seopress_video[' . $key . '][thumbnail_meta]" class="seopress_video_thumbnail_meta" type="text" name="seopress_video[' . $key . '][thumbnail]" placeholder="' . esc_html__('Select your video thumbnail', 'wp-seopress') . '" value="' . $check_thumbnail . '" />
575
+ <input class="button seopress_video_thumbnail_upload seopress_media_upload" type="button" aria-label="' . __('Video Thumbnail', 'wp-seopress') . '" value="' . __('Upload an Image', 'wp-seopress') . '" />
576
+ <span class="advise">' . __('Minimum size: 160x90px (1920x1080 max), JPG, PNG or GIF formats. Default: your post featured image.', 'wp-seopress') . '</span>
577
  </p>
578
  <p>
579
+ <label for="seopress_video[' . $key . '][duration_meta]">' . __('Video Duration (recommended)', 'wp-seopress') . '</label>
580
+ <input id="seopress_video[' . $key . '][duration_meta]" type="number" step="1" min="0" max="28800" name="seopress_video[' . $key . '][duration]" placeholder="' . esc_html__('Duration in seconds', 'wp-seopress') . '" aria-label="' . __('Video duration', 'wp-seopress') . '" value="' . $check_duration . '" />
581
+ <span class="advise">' . __('The duration of the video in seconds. Value must be between 0 and 28800 (8 hours).', 'wp-seopress') . '</span>
582
  </p>
583
  <p>
584
+ <label for="seopress_video[' . $key . '][rating_meta]">' . __('Video Rating', 'wp-seopress') . '</label>
585
+ <input id="seopress_video[' . $key . '][rating_meta]" type="number" step="0.1" min="0" max="5" name="seopress_video[' . $key . '][rating]" placeholder="' . esc_html__('Video rating', 'wp-seopress') . '" aria-label="' . __('Video rating', 'wp-seopress') . '" value="' . $check_rating . '" />
586
+ <span class="advise">' . __('Allowed values are float numbers in the range 0.0 to 5.0.', 'wp-seopress') . '</span>
587
  </p>
588
  <p>
589
+ <label for="seopress_video[' . $key . '][view_count_meta]">' . __('View count', 'wp-seopress') . '</label>
590
+ <input id="seopress_video[' . $key . '][view_count_meta]" type="number" name="seopress_video[' . $key . '][view_count]" placeholder="' . esc_html__('Number of views', 'wp-seopress') . '" aria-label="' . __('View count', 'wp-seopress') . '" value="' . $check_view_count . '" />
591
  </p>
592
  <p>
593
+ <label for="seopress_video[' . $key . '][tag_meta]">' . __('Video tags', 'wp-seopress') . '</label>
594
+ <input id="seopress_video[' . $key . '][tag_meta]" type="text" name="seopress_video[' . $key . '][tag]" placeholder="' . esc_html__('Enter your video tags', 'wp-seopress') . '" aria-label="' . __('Video tags', 'wp-seopress') . '" value="' . $check_tag . '" />
595
+ <span class="advise">' . __('32 tags max., separate tags with commas. Default: target keywords + post tags if available.', 'wp-seopress') . '</span>
596
  </p>
597
  <p>
598
+ <label for="seopress_video[' . $key . '][cat_meta]">' . __('Video categories', 'wp-seopress') . '</label>
599
+ <input id="seopress_video[' . $key . '][cat_meta]" type="text" name="seopress_video[' . $key . '][cat]" placeholder="' . esc_html__('Enter your video categories', 'wp-seopress') . '" aria-label="' . __('Video categories', 'wp-seopress') . '" value="' . $check_cat . '" />
600
+ <span class="advise">' . __('256 characters max., usually a video will belong to a single category, separate categories with commas. Default: first post category if available.', 'wp-seopress') . '</span>
601
  </p>
602
  <p class="family-friendly">
603
+ <label for="seopress_video[' . $key . '][family_friendly_meta]" id="seopress_video[' . $key . '][family_friendly]">
604
+ <input type="checkbox" name="seopress_video[' . $key . '][family_friendly]" id="seopress_video[' . $key . '][family_friendly_meta]" value="yes" ' . checked($check_family_friendly, 'yes', false) . ' />
605
+ ' . __('NOT family friendly?', 'wp-seopress') . '
606
  </label>
607
+ <span class="advise">' . __('The video will be available only to users with SafeSearch turned off.', 'wp-seopress') . '</span>
608
  </p>
609
+ <p><a href="#" class="remove-video button">' . __('Remove video', 'wp-seopress') . '</a></p>
610
  </div>
611
  </div>
612
  </div>
613
  ';
614
+ }
615
+ echo '</div>
616
+ <p><a href="#" id="add-video" class="add-video button button-primary">' . __('Add video', 'wp-seopress') . '</a></p>
617
  </div>';
618
+ }
619
+ }
620
+ }
621
+ }
622
+ }
623
+ echo '</div>';
624
+
625
+ if ('term.php' == $pagenow || 'edit-tags.php' == $pagenow) {
626
+ echo '</div>';
627
+ echo '</div>';
628
+ echo '</td>';
629
+ echo '</tr>';
630
  }
631
+ echo '<input type="hidden" id="seo_tabs" name="seo_tabs" value="' . htmlspecialchars(json_encode(array_keys($seo_tabs))) . '">';
inc/admin/admin-metaboxes-get-content-analysis.php DELETED
@@ -1,740 +0,0 @@
1
- <?php
2
- defined( 'ABSPATH' ) or die( 'Please don&rsquo;t call the plugin directly. Thanks :)' );
3
-
4
- //Analyzes
5
- $analyzes = array(
6
- 'schemas'=> array(
7
- 'title' => __('Structured data types','wp-seopress'),
8
- 'impact' => 'good',
9
- 'desc' => NULL
10
- ),
11
- 'old_post'=> array(
12
- 'title' => __('Last modified date','wp-seopress'),
13
- 'impact' => 'good',
14
- 'desc' => NULL
15
- ),
16
- 'words_counter'=> array(
17
- 'title' => __('Words counter','wp-seopress'),
18
- 'impact' => 'good',
19
- 'desc' => NULL
20
- ),
21
- 'keywords_density'=> array(
22
- 'title' => __('Keywords density','wp-seopress'),
23
- 'impact' => NULL,
24
- 'desc' => NULL
25
- ),
26
- 'keywords_permalink'=> array(
27
- 'title' => __('Keywords in permalink','wp-seopress'),
28
- 'impact' => NULL,
29
- 'desc' => NULL
30
- ),
31
- 'headings'=> array(
32
- 'title' => __('Headings','wp-seopress'),
33
- 'impact' => 'good',
34
- 'desc' => NULL
35
- ),
36
- 'meta_title'=> array(
37
- 'title' => __('Meta title','wp-seopress'),
38
- 'impact' => NULL,
39
- 'desc' => NULL
40
- ),
41
- 'meta_desc'=> array(
42
- 'title' => __('Meta description','wp-seopress'),
43
- 'impact' => NULL,
44
- 'desc' => NULL
45
- ),
46
- 'social'=> array(
47
- 'title' => __('Social meta tags','wp-seopress'),
48
- 'impact' => 'good',
49
- 'desc' => NULL
50
- ),
51
- 'robots'=> array(
52
- 'title' => __('Meta robots','wp-seopress'),
53
- 'impact' => 'good',
54
- 'desc' => NULL
55
- ),
56
- 'img_alt'=> array(
57
- 'title' => __('Alternative texts of images','wp-seopress'),
58
- 'impact' => 'good',
59
- 'desc' => NULL
60
- ),
61
- 'nofollow_links'=> array(
62
- 'title' => __('NoFollow Links','wp-seopress'),
63
- 'impact' => 'good',
64
- 'desc' => NULL
65
- ),
66
- 'outbound_links'=> array(
67
- 'title' => __('Outbound Links','wp-seopress'),
68
- 'impact' => 'good',
69
- 'desc' => NULL
70
- ),
71
- );
72
-
73
- //Schemas
74
- if (!empty($seopress_analysis_data['json']) || isset($seopress_analysis_data['json'])) {
75
- $desc = '<p>'.__('We found these schemas in the source code of this page:','wp-seopress').'</p>';
76
-
77
- $desc .= '<ul>';
78
- $json_ld = array_filter($seopress_analysis_data['json']);
79
- foreach(array_count_values($json_ld) as $key => $value) {
80
- $html = NULL;
81
- if ($value > 1) {
82
- $html = '<span class="impact high">'.__('duplicated schema - x','wp-seopress').$value.'</span>';
83
- $analyzes['schemas']['impact'] = 'high';
84
- }
85
- $desc .= '<li><span class="dashicons dashicons-minus"></span>'.$key.$html.'</li>';
86
- }
87
- $desc .= '</ul>';
88
- $analyzes['schemas']['desc'] = $desc;
89
- } else {
90
- $analyzes['schemas']['impact'] = 'medium';
91
- $analyzes['schemas']['desc'] = '<p>'.__('No schemas found in the source code of this page.','wp-seopress').'</p>';
92
- }
93
-
94
- //Old post
95
- $desc = NULL;
96
- if( strtotime( $post->post_modified ) < strtotime('-365 days') ) {
97
- $analyzes['old_post']['impact'] = 'medium';
98
- $desc = '<p><span class="dashicons dashicons-no-alt"></span>'.__('This post is a little old!','wp-seopress').'</p>';
99
- } else {
100
- $desc = '<p><span class="dashicons dashicons-yes"></span>'.__('The last modified date of this article is less than 1 year. Cool!','wp-seopress').'</p>';
101
- }
102
- $desc .= '<p>'.__('Search engines love fresh content. Regularly update your articles without having to rewrite your content entirely and give them a boost in search rankings. We takes care of the technical part.','wp-seopress').'</p>';
103
- $analyzes['old_post']['desc'] = $desc;
104
-
105
- //Word counters
106
- $desc = NULL;
107
- if (isset($seopress_analysis_data['words_counter']) || isset($seopress_analysis_data['words_counter_unique'])) {
108
- $desc = '<p>'.__('Words counter is not a direct ranking factor. But, your content must be as qualitative as possible, with relevant and unique information. To fulfill these conditions, your article requires a minimum of paragraphs, so words.','wp-seopress').'</p>
109
- <ul>
110
- <li>'.$seopress_analysis_data['words_counter'].' '.__('words found.','wp-seopress').'</li>
111
- <li>'.$seopress_analysis_data['words_counter_unique'].' '.__('unique words found.','wp-seopress').'</li>';
112
-
113
- if ($seopress_analysis_data['words_counter'] >= 299) {
114
- $desc .= '<li><span class="dashicons dashicons-yes"></span>'.__('Your content is composed of more than 300 words, which is the minimum for a post.','wp-seopress').'</li>';
115
- } else {
116
- $desc .= '<li><span class="dashicons dashicons-no-alt"></span>'.__('Your content is too short. Add a few more paragraphs!','wp-seopress').'</li>';
117
- $analyzes['words_counter']['impact'] = 'medium';
118
- }
119
- $desc .= '</ul>';
120
-
121
- $analyzes['words_counter']['desc'] = $desc;
122
- } else {
123
- $analyzes['words_counter']['desc'] = '<p><span class="dashicons dashicons-no-alt"></span>'.__('No content? Add a few more paragraphs!','wp-seopress').'</p>';
124
- $analyzes['words_counter']['impact'] = 'high';
125
- }
126
-
127
- //Keywords density
128
- if (!empty($seopress_analysis_data['kws_density']['matches']) && isset($seopress_analysis_data['words_counter'])) {
129
- $target_kws_density = $seopress_analysis_data['kws_density']['matches'];
130
-
131
- $desc = '<ul>';
132
- foreach ($target_kws_density as $key => $value) {
133
- foreach ($value as $_key => $_value) {
134
- $kw_count = count($_value);
135
- }
136
- $kw_name = $key;
137
- $kw_density = round($kw_count/$seopress_analysis_data['words_counter']*100, 2);
138
- /* translators: %s target keyword %d count target keyword %s keyword density in % */
139
- $desc .= '<li><span class="dashicons dashicons-minus"></span>'.sprintf(esc_html__('%s was found %d times in your content, a keyword density of %s%%','wp-seopress'), $kw_name, $kw_count, $kw_density).'</li>';
140
- }
141
- $desc .= '</ul>';
142
- $desc .= '<p class="description">'.__('Learn more about <a href="https://www.youtube.com/watch?v=Rk4qgQdp2UA" target="_blank">keywords stuffing</a>.','wp-seopress').'</p>';
143
- $analyzes['keywords_density']['impact'] = 'good';
144
- $analyzes['keywords_density']['desc'] = $desc;
145
- } else {
146
- $analyzes['keywords_density']['desc'] = '<p>'.__('We were unable to calculate the density of your keywords. You probably haven‘t added any content or your target keywords were not find in your post content.','wp-seopress').'</p>';
147
- $analyzes['keywords_density']['impact'] = 'high';
148
- }
149
-
150
- //Keywords in permalink
151
- if (!empty($seopress_analysis_data['kws_permalink']['matches'])) {
152
- $desc = '<p><span class="dashicons dashicons-yes"></span>'.__('Cool, one of your target keyword is used in your permalink.','wp-seopress').'</p>';
153
-
154
- $target_kws_permalink = $seopress_analysis_data['kws_permalink']['matches'];
155
-
156
- $desc .= '<ul>';
157
- foreach ($target_kws_permalink as $key => $value) {
158
- $desc .= '<li><span class="dashicons dashicons-minus"></span>'.$key.'</li>';
159
- }
160
- $desc .= '</ul>';
161
- $analyzes['keywords_permalink']['desc'] = $desc;
162
- $analyzes['keywords_permalink']['impact'] = 'good';
163
- } else {
164
- global $post;
165
- if (get_option( 'page_on_front' ) == $post->ID) {
166
- $analyzes['keywords_permalink']['desc'] = '<p><span class="dashicons dashicons-yes"></span>'.__('This is your homepage. This check doesn\'t apply here because there is no slug.','wp-seopress').'</p>';
167
- $analyzes['keywords_permalink']['impact'] = 'good';
168
- } else {
169
- $analyzes['keywords_permalink']['desc'] = '<p><span class="dashicons dashicons-no-alt"></span>'.__('You should add one of your target keyword in your permalink.','wp-seopress').'</p>';
170
- $analyzes['keywords_permalink']['impact'] = 'medium';
171
- }
172
- }
173
-
174
-
175
- //Headings
176
- //H1
177
- $desc = NULL;
178
- if (!empty($seopress_analysis_data['h1']['matches'])) {
179
- $desc .= '<h4>'.__('H1 (Heading 1)','wp-seopress').'</h4>';
180
-
181
- $count = $seopress_analysis_data['h1']['nomatches']['count'];
182
-
183
- $target_kws_h1 = $seopress_analysis_data['h1']['matches'];
184
-
185
- $all_h1 = $seopress_analysis_data['h1']['values'];
186
-
187
- $desc .= '<p><span class="dashicons dashicons-yes"></span>'.__('Target keywords were found in Heading 1 (H1).','wp-seopress').'</p>';
188
-
189
- $desc .= '<ul>';
190
-
191
- foreach ($target_kws_h1 as $key => $value) {
192
- foreach ($value as $_key => $_value) {
193
- $kw_count = count($value);
194
- }
195
- $kw_name = $key;
196
- /* translators: %s target keyword %d count target keyword */
197
- $desc .= '<li><span class="dashicons dashicons-minus"></span>'.sprintf(esc_html__('%s was found %d times.','wp-seopress'), $kw_name, $kw_count).'</li>';
198
- }
199
-
200
- $desc .= '</ul>';
201
- if ($count > 1) {
202
- /* translators: %d: count heading 1 */
203
- $desc .= '<p><span class="dashicons dashicons-no-alt"></span>'.sprintf(esc_html__('We found %d Heading 1 (H1) in your content.','wp-seopress'), $count).'</p>';
204
- $desc .= '<p>'.__('You should not use more than one H1 heading in your post content. The rule is simple: only one H1 for each web page. It is better for both SEO and accessibility. Below, the list:','wp-seopress').'</p>';
205
- $analyzes['headings']['impact'] = 'high';
206
- }
207
-
208
- if (!empty($all_h1)) {
209
- $desc .= '<ul>';
210
- foreach($all_h1 as $h1) {
211
- $desc .= '<li><span class="dashicons dashicons-minus"></span>'.$h1.'</li>';
212
- }
213
- $desc .= '</ul>';
214
- }
215
- }
216
-
217
- //H2
218
- $desc .= '<h4>'.__('H2 (Heading 2)','wp-seopress').'</h4>';
219
- if (!empty($seopress_analysis_data['h2']['matches'])) {
220
- $desc .= '<p><span class="dashicons dashicons-yes"></span>'.__('Target keywords were found in Heading 2 (H2).','wp-seopress').'</p>';
221
- $desc .= '<ul>';
222
- $target_kws_h2 = $seopress_analysis_data['h2']['matches'];
223
- foreach ($target_kws_h2 as $key => $value) {
224
- foreach ($value as $_key => $_value) {
225
- $kw_count = count($value);
226
- }
227
- $kw_name = $key;
228
- /* translators: %s target keyword %d count target keyword */
229
- $desc .= '<li><span class="dashicons dashicons-minus"></span>'.sprintf(esc_html__('%s was found %d times.','wp-seopress'), $kw_name, $kw_count).'</li>';
230
- }
231
- $desc .= '</ul>';
232
- } else {
233
- $desc .= '<p><span class="dashicons dashicons-no-alt"></span>'.__('None of your target keywords were found in Heading 2 (H2).','wp-seopress').'</p>';
234
- if ($analyzes['headings']['impact'] != 'high') {
235
- $analyzes['headings']['impact'] = 'medium';
236
- }
237
- }
238
-
239
- //H3
240
- $desc .= '<h4>'.__('H3 (Heading 3)','wp-seopress').'</h4>';
241
- if (!empty($seopress_analysis_data['h3']['matches'])) {
242
- $desc .= '<p><span class="dashicons dashicons-yes"></span>'.__('Target keywords were found in Heading 3 (H3).','wp-seopress').'</p>';
243
- $desc .= '<ul>';
244
- $target_kws_h3 = $seopress_analysis_data['h3']['matches'];
245
- foreach ($target_kws_h3 as $key => $value) {
246
- foreach ($value as $_key => $_value) {
247
- $kw_count = count($value);
248
- }
249
- $kw_name = $key;
250
- /* translators: %s target keyword %d count target keyword */
251
- $desc .= '<li><span class="dashicons dashicons-minus"></span>'.sprintf(esc_html__('%s was found %d times.','wp-seopress'), $kw_name, $kw_count).'</li>';
252
- }
253
- $desc .= '</ul>';
254
- } else {
255
- $desc .= '<p><span class="dashicons dashicons-no-alt"></span>'.__('None of your target keywords were found in Heading 3 (H3).','wp-seopress').'</p>';
256
- if ($analyzes['headings']['impact'] != 'high') {
257
- $analyzes['headings']['impact'] = 'medium';
258
- }
259
- }
260
- $analyzes['headings']['desc'] = $desc;
261
-
262
- //Meta Title
263
- if ($seopress_titles_title !='') {
264
- $desc = NULL;
265
- if (!empty($seopress_analysis_data['meta_title']['matches'])) {
266
- $desc .= '<p><span class="dashicons dashicons-yes"></span>'.__('Target keywords were found in the Meta Title.','wp-seopress').'</p>';
267
- $desc .= '<ul>';
268
- $target_kws_title = $seopress_analysis_data['meta_title']['matches'];
269
- foreach ($target_kws_title as $key => $value) {
270
- foreach ($value as $_key => $_value) {
271
- $kw_count = count($_value);
272
- }
273
- $kw_name = $key;
274
- /* translators: %s target keyword %d count target keyword */
275
- $desc .= '<li><span class="dashicons dashicons-minus"></span>'.sprintf(esc_html__('%s was found %d times.','wp-seopress'), $kw_name, $kw_count).'</li>';
276
- }
277
- $desc .= '</ul>';
278
- $analyzes['meta_title']['impact'] = 'good';
279
- } else {
280
- $analyzes['meta_title']['impact'] = 'medium';
281
- $desc .= '<p><span class="dashicons dashicons-no-alt"></span>'.__('None of your target keywords were found in the Meta Title.','wp-seopress').'</p>';
282
- }
283
-
284
- if (mb_strlen($seopress_titles_title) > 65 ) {
285
- $analyzes['meta_title']['impact'] = 'medium';
286
- $desc .= '<p><span class="dashicons dashicons-no-alt"></span>'.__('Your custom title is too long.','wp-seopress').'</p>';
287
- } else {
288
- $analyzes['meta_title']['impact'] = 'good';
289
- $desc .= '<p><span class="dashicons dashicons-yes"></span>'.__('The length of your title is correct','wp-seopress').'</p>';
290
- }
291
- $analyzes['meta_title']['desc'] = $desc;
292
- } else {
293
- $analyzes['meta_title']['impact'] = 'medium';
294
- $analyzes['meta_title']['desc'] = '<p><span class="dashicons dashicons-no-alt"></span>'.__('No custom title is set for this post. If the global meta title suits you, you can ignore this recommendation.','wp-seopress').'</p>';
295
- }
296
-
297
- //Meta description
298
- if ($seopress_titles_desc !='') {
299
- $desc = NULL;
300
- if (!empty($seopress_analysis_data['meta_description']['matches'])) {
301
- $desc .= '<p><span class="dashicons dashicons-yes"></span>'.__('Target keywords were found in the Meta description.','wp-seopress').'</p>';
302
- $desc .= '<ul>';
303
- $target_kws_desc = $seopress_analysis_data['meta_description']['matches'];
304
- foreach ($target_kws_desc as $key => $value) {
305
- foreach ($value as $_key => $_value) {
306
- $kw_count = count($_value);
307
- }
308
- $kw_name = $key;
309
- /* translators: %s target keyword %d count target keyword */
310
- $desc .= '<li><span class="dashicons dashicons-minus"></span>'.sprintf(esc_html__('%s was found %d times.','wp-seopress'), $kw_name, $kw_count).'</li>';
311
- }
312
- $desc .= '</ul>';
313
- $analyzes['meta_desc']['impact'] = 'good';
314
- } else {
315
- $analyzes['meta_desc']['impact'] = 'medium';
316
- $desc .= '<p><span class="dashicons dashicons-no-alt"></span>'.__('None of your target keywords were found in the Meta description.','wp-seopress').'</p>';
317
- }
318
-
319
- if (mb_strlen($seopress_titles_desc) > 160 ) {
320
- $analyzes['meta_desc']['impact'] = 'medium';
321
- $desc .= '<p><span class="dashicons dashicons-no-alt"></span>'.__('You custom meta description is too long.','wp-seopress').'</p>';
322
- } else {
323
- $analyzes['meta_desc']['impact'] = 'good';
324
- $desc .= '<p><span class="dashicons dashicons-yes"></span>'.__('The length of your meta description is correct','wp-seopress').'</p>';
325
- }
326
- $analyzes['meta_desc']['desc'] = $desc;
327
- } else {
328
- $analyzes['meta_desc']['impact'] = 'medium';
329
- $analyzes['meta_desc']['desc'] = '<p><span class="dashicons dashicons-no-alt"></span>'.__('No custom meta description is set for this post. If the global meta description suits you, you can ignore this recommendation.','wp-seopress').'</p>';
330
- }
331
-
332
- //Social tags
333
- //og:title
334
- $desc = NULL;
335
-
336
- $desc .= '<h4>'.__('Open Graph Title','wp-seopress').'</h4>';
337
-
338
- if (!empty($seopress_analysis_data['og_title']['count'])) {
339
- $count = $seopress_analysis_data['og_title']['count'];
340
-
341
- $all_og_title = $seopress_analysis_data['og_title']['values'];
342
-
343
- if ($count > 1) {
344
- $analyzes['social']['impact'] = 'high';
345
- /* translators: %d count Open Graph Title */
346
- $desc .= '<p><span class="dashicons dashicons-no-alt"></span>'.sprintf(esc_html__('We found %d og:title in your content.','wp-seopress'), $count).'</p>';
347
- $desc .= '<p>'.__('You should not use more than one og:title in your post content to avoid conflicts when sharing on social networks. Facebook will take the last og:title tag from your source code. Below, the list:','wp-seopress').'</p>';
348
- } elseif(empty($all_og_title[0])) { //If og:title empty
349
- $analyzes['social']['impact'] = 'high';
350
- $desc .= '<p><span class="dashicons dashicons-no-alt"></span>'.__('Your Open Graph Title tag is empty!','wp-seopress').'</p>';
351
- } else {
352
- $desc .= '<p><span class="dashicons dashicons-yes"></span>'.__('We found an Open Graph Title tag in your source code.','wp-seopress').'</p>';
353
- }
354
-
355
- if (!empty($all_og_title)) {
356
- $desc .= '<ul>';
357
- foreach($all_og_title as $og_title) {
358
- $desc .= '<li><span class="dashicons dashicons-minus"></span>'.$og_title.'</li>';
359
- }
360
- $desc .= '</ul>';
361
- }
362
- } else {
363
- $analyzes['social']['impact'] = 'high';
364
- $desc .= '<p><span class="dashicons dashicons-no-alt"></span>'.__('Your Open Graph Title is missing!','wp-seopress').'</p>';
365
- }
366
-
367
- //og:description
368
- $desc .= '<h4>'.__('Open Graph Description','wp-seopress').'</h4>';
369
-
370
- if (!empty($seopress_analysis_data['og_desc']['count'])) {
371
-
372
- $count = $seopress_analysis_data['og_desc']['count'];
373
-
374
- $all_og_desc = isset($seopress_analysis_data['og_desc']['values']) ? $seopress_analysis_data['og_desc']['values'] : [];
375
-
376
- if ($count > 1) {
377
- $analyzes['social']['impact'] = 'high';
378
- /* translators: %d count Open Graph Description */
379
- $desc .= '<p><span class="dashicons dashicons-no-alt"></span>'.sprintf(esc_html__('We found %d og:description in your content.','wp-seopress'), $count).'</p>';
380
- $desc .= '<p>'.__('You should not use more than one og:description in your post content to avoid conflicts when sharing on social networks. Facebook will take the last og:description tag from your source code. Below, the list:','wp-seopress').'</p>';
381
- } elseif(empty($all_og_desc[0])) { //If og:description empty
382
- $analyzes['social']['impact'] = 'high';
383
- $desc .= '<p><span class="dashicons dashicons-no-alt"></span>'.__('Your Open Graph Description tag is empty!','wp-seopress').'</p>';
384
- } else {
385
- $desc .= '<p><span class="dashicons dashicons-yes"></span>'.__('We found an Open Graph Description tag in your source code.','wp-seopress').'</p>';
386
- }
387
-
388
- if (!empty($all_og_desc)) {
389
- $desc .= '<ul>';
390
- foreach($all_og_desc as $og_desc) {
391
- $desc .= '<li><span class="dashicons dashicons-minus"></span>'.$og_desc.'</li>';
392
- }
393
- $desc .= '</ul>';
394
- }
395
- } else {
396
- $analyzes['social']['impact'] = 'high';
397
- $desc .= '<p><span class="dashicons dashicons-no-alt"></span>'.__('Your Open Graph Description is missing!','wp-seopress').'</p>';
398
- }
399
-
400
- //og:image
401
- $desc .= '<h4>'.__('Open Graph Image','wp-seopress').'</h4>';
402
-
403
- if (!empty($seopress_analysis_data['og_img']['count'])) {
404
-
405
- $count = $seopress_analysis_data['og_img']['count'];
406
-
407
- $all_og_img = isset($seopress_analysis_data['og_img']['values']) ? $seopress_analysis_data['og_img']['values'] : [];
408
-
409
- if ($count > 0 && !empty($all_og_img[0])) {
410
- /* translators: %d count Open Graph Image */
411
- $desc .= '<p><span class="dashicons dashicons-yes"></span>'.sprintf(esc_html__('We found %d og:image in your content.','wp-seopress'), $count).'</p>';
412
- }
413
-
414
- //If og:image empty
415
- if ($count > 0 && empty($all_og_img[0])) {
416
- $analyzes['social']['impact'] = 'high';
417
- $desc .= '<p><span class="dashicons dashicons-no-alt"></span>'.__('Your Open Graph Image tag is empty!','wp-seopress').'</p>';
418
- }
419
-
420
- if (!empty($all_og_img)) {
421
- $desc .= '<ul>';
422
- foreach($all_og_img as $og_img) {
423
- $desc .= '<li><span class="dashicons dashicons-minus"></span>'.$og_img.'</li>';
424
- }
425
- $desc .= '</ul>';
426
- }
427
- } else {
428
- $analyzes['social']['impact'] = 'high';
429
- $desc .= '<p><span class="dashicons dashicons-no-alt"></span>'.__('Your Open Graph Image is missing!','wp-seopress').'</p>';
430
- }
431
-
432
- //og:url
433
- $desc .= '<h4>'.__('Open Graph URL','wp-seopress').'</h4>';
434
-
435
- if (!empty($seopress_analysis_data['og_url']['count'])) {
436
-
437
- $count = $seopress_analysis_data['og_url']['count'];
438
-
439
- $all_og_url = $seopress_analysis_data['og_url']['values'];
440
-
441
- if ($count > 1) {
442
- $analyzes['social']['impact'] = 'high';
443
- /* translators: %d count Open Graph URL */
444
- $desc .= '<p><span class="dashicons dashicons-no-alt"></span>'.sprintf(esc_html__('We found %d og:url in your content.','wp-seopress'), $count).'</p>';
445
- $desc .= '<p>'.__('You should not use more than one og:url in your post content to avoid conflicts when sharing on social networks. Facebook will take the last og:url tag from your source code. Below, the list:','wp-seopress').'</p>';
446
- } elseif(empty($all_og_url[0])) { //If og:url empty
447
- $analyzes['social']['impact'] = 'high';
448
- $desc .= '<p><span class="dashicons dashicons-no-alt"></span>'.__('Your Open Graph URL tag is empty!','wp-seopress').'</p>';
449
- } else {
450
- $desc .= '<p><span class="dashicons dashicons-yes"></span>'.__('We found an Open Graph URL tag in your source code.','wp-seopress').'</p>';
451
- }
452
-
453
- if (!empty($all_og_url)) {
454
- $desc .= '<ul>';
455
- foreach($all_og_url as $og_url) {
456
- $desc .= '<li><span class="dashicons dashicons-minus"></span>'.$og_url.'</li>';
457
- }
458
- $desc .= '</ul>';
459
- }
460
- } else {
461
- $analyzes['social']['impact'] = 'high';
462
- $desc .= '<p><span class="dashicons dashicons-no-alt"></span>'.__('Your Open Graph URL is missing!','wp-seopress').'</p>';
463
- }
464
-
465
- //og:site_name
466
- $desc .= '<h4>'.__('Open Graph Site Name','wp-seopress').'</h4>';
467
-
468
- if (!empty($seopress_analysis_data['og_site_name']['count'])) {
469
-
470
- $count = $seopress_analysis_data['og_site_name']['count'];
471
-
472
- $all_og_site_name = $seopress_analysis_data['og_site_name']['values'];
473
-
474
- if ($count > 1) {
475
- $analyzes['social']['impact'] = 'high';
476
- /* translators: %d count Open Graph site name */
477
- $desc .= '<p><span class="dashicons dashicons-no-alt"></span>'.sprintf(esc_html__('We found %d og:site_name in your content.','wp-seopress'), $count).'</p>';
478
- $desc .= '<p>'.__('You should not use more than one og:site_name in your post content to avoid conflicts when sharing on social networks. Facebook will take the last og:site_name tag from your source code. Below, the list:','wp-seopress').'</p>';
479
- } elseif(empty($all_og_site_name[0])) { //If og:site_name empty
480
- $analyzes['social']['impact'] = 'high';
481
- $desc .= '<p><span class="dashicons dashicons-no-alt"></span>'.__('Your Open Graph Site Name tag is empty!','wp-seopress').'</p>';
482
- } else {
483
- $desc .= '<p><span class="dashicons dashicons-yes"></span>'.__('We found an Open Graph Site Name tag in your source code.','wp-seopress').'</p>';
484
- }
485
-
486
- if (!empty($all_og_site_name)) {
487
- $desc .= '<ul>';
488
- foreach($all_og_site_name as $og_site_name) {
489
- $desc .= '<li><span class="dashicons dashicons-minus"></span>'.$og_site_name.'</li>';
490
- }
491
- $desc .= '</ul>';
492
- }
493
- } else {
494
- $analyzes['social']['impact'] = 'high';
495
- $desc .= '<p><span class="dashicons dashicons-no-alt"></span>'.__('Your Open Graph Site Name is missing!','wp-seopress').'</p>';
496
- }
497
-
498
- //twitter:title
499
- $desc .= '<h4>'.__('Twitter Title','wp-seopress').'</h4>';
500
-
501
- if (!empty($seopress_analysis_data['tw_title']['count'])) {
502
-
503
- $count = $seopress_analysis_data['tw_title']['count'];
504
-
505
- $all_tw_title = $seopress_analysis_data['tw_title']['values'];
506
-
507
- if ($count > 1) {
508
- $analyzes['social']['impact'] = 'high';
509
- /* translators: %d count Twitter Title */
510
- $desc .= '<p><span class="dashicons dashicons-no-alt"></span>'.sprintf(esc_html__('We found %d twitter:title in your content.','wp-seopress'), $count).'</p>';
511
- $desc .= '<p>'.__('You should not use more than one twitter:title in your post content to avoid conflicts when sharing on social networks. Twitter will take the last twitter:title tag from your source code. Below, the list:','wp-seopress').'</p>';
512
- } elseif(empty($all_tw_title[0])) { //If twitter:title empty
513
- $analyzes['social']['impact'] = 'high';
514
- $desc .= '<p><span class="dashicons dashicons-no-alt"></span>'.__('Your Twitter Title tag is empty!','wp-seopress').'</p>';
515
- } else {
516
- $desc .= '<p><span class="dashicons dashicons-yes"></span>'.__('We found a Twitter Title tag in your source code.','wp-seopress').'</p>';
517
- }
518
-
519
- if (!empty($all_tw_title)) {
520
- $desc .= '<ul>';
521
- foreach($all_tw_title as $tw_title) {
522
- $desc .= '<li><span class="dashicons dashicons-minus"></span>'.$tw_title.'</li>';
523
- }
524
- $desc .= '</ul>';
525
- }
526
- } else {
527
- $analyzes['social']['impact'] = 'high';
528
- $desc .= '<p><span class="dashicons dashicons-no-alt"></span>'.__('Your Twitter Title is missing!','wp-seopress').'</p>';
529
- }
530
-
531
- //twitter:description
532
- $desc .= '<h4>'.__('Twitter Description','wp-seopress').'</h4>';
533
-
534
- if (!empty($seopress_analysis_data['tw_desc']['count'])) {
535
-
536
- $count = $seopress_analysis_data['tw_desc']['count'];
537
-
538
- $all_tw_desc = isset($seopress_analysis_data['tw_desc']['values']) ? $seopress_analysis_data['tw_desc']['values'] : [];
539
-
540
- if ($count > 1) {
541
- $analyzes['social']['impact'] = 'high';
542
- /* translators: %d count Twitter Description */
543
- $desc .= '<p><span class="dashicons dashicons-no-alt"></span>'.sprintf(esc_html__('We found %d twitter:description in your content.','wp-seopress'), $count).'</p>';
544
- $desc .= '<p>'.__('You should not use more than one twitter:description in your post content to avoid conflicts when sharing on social networks. Twitter will take the last twitter:description tag from your source code. Below, the list:','wp-seopress').'</p>';
545
- } elseif(empty($all_tw_desc[0])) { //If twitter:description empty
546
- $analyzes['social']['impact'] = 'high';
547
- $desc .= '<p><span class="dashicons dashicons-no-alt"></span>'.__('Your Twitter Description tag is empty!','wp-seopress').'</p>';
548
- } else {
549
- $desc .= '<p><span class="dashicons dashicons-yes"></span>'.__('We found a Twitter Description tag in your source code.','wp-seopress').'</p>';
550
- }
551
-
552
- if (!empty($all_tw_desc)) {
553
- $desc .= '<ul>';
554
- foreach($all_tw_desc as $tw_desc) {
555
- $desc .= '<li><span class="dashicons dashicons-minus"></span>'.$tw_desc.'</li>';
556
- }
557
- $desc .= '</ul>';
558
- }
559
- } else {
560
- $analyzes['social']['impact'] = 'high';
561
- $desc .= '<p><span class="dashicons dashicons-no-alt"></span>'.__('Your Twitter Description is missing!','wp-seopress').'</p>';
562
- }
563
-
564
- //twitter:image
565
- $desc .= '<h4>'.__('Twitter Image','wp-seopress').'</h4>';
566
-
567
- if (!empty($seopress_analysis_data['tw_img']['count'])) {
568
-
569
- $count = $seopress_analysis_data['tw_img']['count'];
570
-
571
- $all_tw_img = isset($seopress_analysis_data['tw_img']['values']) ? $seopress_analysis_data['tw_img']['values'] : [];
572
-
573
- if ($count > 0 && !empty($all_tw_img[0])) {
574
- /* translators: %d count Twitter Image */
575
- $desc .= '<p><span class="dashicons dashicons-yes"></span>'.sprintf(esc_html__('We found %d twitter:image in your content.','wp-seopress'), $count).'</p>';
576
- }
577
-
578
- //If twitter:image:src empty
579
- if ($count > 0 && empty($all_tw_img[0])) {
580
- $analyzes['social']['impact'] = 'high';
581
- $desc .= '<p><span class="dashicons dashicons-no-alt"></span>'.__('Your Twitter Image tag is empty!','wp-seopress').'</p>';
582
- }
583
-
584
- if (!empty($all_tw_img)) {
585
- $desc .= '<ul>';
586
- foreach($all_tw_img as $tw_img) {
587
- $desc .= '<li><span class="dashicons dashicons-minus"></span>'.$tw_img.'</li>';
588
- }
589
- $desc .= '</ul>';
590
- }
591
- } else {
592
- $analyzes['social']['impact'] = 'high';
593
- $desc .= '<p><span class="dashicons dashicons-no-alt"></span>'.__('Your Twitter Image is missing!','wp-seopress').'</p>';
594
- }
595
- $analyzes['social']['desc'] = $desc;
596
-
597
- //Robots
598
- $desc = NULL;
599
- if (!empty($seopress_analysis_data['meta_robots'])) {
600
-
601
- $meta_robots = $seopress_analysis_data['meta_robots'];
602
-
603
- if (count($seopress_analysis_data['meta_robots']) > 1) {
604
- $analyzes['robots']['impact'] = 'high';
605
-
606
- $count_meta_robots = count($seopress_analysis_data['meta_robots']);
607
-
608
- /* translators: %d count meta robots tag */
609
- $desc .= '<p><span class="dashicons dashicons-no-alt"></span>'.sprintf(esc_html__('We found %s meta robots in your page. There is probably something wrong with your theme!','wp-seopress'), $count_meta_robots).'</p>';
610
- }
611
-
612
- if (preg_match('/noindex/', json_encode($meta_robots))) {
613
- $analyzes['robots']['impact'] = 'high';
614
- $desc .= '<p data-robots="noindex"><span class="dashicons dashicons-no-alt"></span>'.__('noindex is on! Search engines can\'t index this page.','wp-seopress').'</p>';
615
- } else {
616
- $desc .= '<p data-robots="index"><span class="dashicons dashicons-yes"></span>'.__('noindex is off. Search engines will index this page.','wp-seopress').'</p>';
617
- }
618
-
619
- if (preg_match('/nofollow/', json_encode($meta_robots))) {
620
- $analyzes['robots']['impact'] = 'high';
621
- $desc .= '<p><span class="dashicons dashicons-no-alt"></span>'.__('nofollow is on! Search engines can\'t follow your links on this page.','wp-seopress').'</p>';
622
- } else {
623
- $desc .= '<p><span class="dashicons dashicons-yes"></span>'.__('nofollow is off. Search engines will follow links on this page.','wp-seopress').'</p>';
624
- }
625
-
626
- if (preg_match('/noarchive/', json_encode($meta_robots))) {
627
- if ($analyzes['robots']['impact'] != 'high') {
628
- $analyzes['robots']['impact'] = 'medium';
629
- }
630
- $desc .= '<p><span class="dashicons dashicons-no-alt"></span>'.__('noarchive is on! Search engines will not cache your page.','wp-seopress').'</p>';
631
- } else {
632
- $desc .= '<p><span class="dashicons dashicons-yes"></span>'.__('noarchive is off. Search engines will probably cache your page.','wp-seopress').'</p>';
633
- }
634
-
635
- if (preg_match('/nosnippet/', json_encode($meta_robots))) {
636
- if ($analyzes['robots']['impact'] != 'high') {
637
- $analyzes['robots']['impact'] = 'medium';
638
- }
639
- $desc .= '<p><span class="dashicons dashicons-no-alt"></span>'.__('nosnippet is on! Search engines will not display a snippet of this page in search results.','wp-seopress').'</p>';
640
- } else {
641
- $desc .= '<p><span class="dashicons dashicons-yes"></span>'.__('nosnippet is off. Search engines will display a snippet of this page in search results.','wp-seopress').'</p>';
642
- }
643
- } else {
644
- $desc .= '<p><span class="dashicons dashicons-yes"></span>'.__('We found no meta robots on this page. It means, your page is index,follow. Search engines will index it, and follow links. ','wp-seopress').'</p>';
645
- }
646
-
647
- //Meta Google
648
- if (!empty($seopress_analysis_data['meta_google'])) {
649
- $meta_google = $seopress_analysis_data['meta_google'];
650
-
651
- if (preg_match('/noimageindex/', json_encode($meta_google))) {
652
- $analyzes['robots']['impact'] = 'high';
653
- $desc .= '<p><span class="dashicons dashicons-no-alt"></span>'.__('noimageindex is on! Google will not index your images on this page (but if someone makes a direct link to one of your image in this page, it will be indexed).','wp-seopress').'</p>';
654
- } else {
655
- $desc .= '<p><span class="dashicons dashicons-yes"></span>'.__('noimageindex is off. Google will index the images on this page.','wp-seopress').'</p>';
656
- }
657
-
658
- if (preg_match('/nositelinkssearchbox/', json_encode($meta_google))) {
659
- if ($analyzes['robots']['impact'] != 'high') {
660
- $analyzes['robots']['impact'] = 'medium';
661
- }
662
- $desc .= '<p><span class="dashicons dashicons-no-alt"></span>'.__('nositelinkssearchbox is on! Google will not display a sitelinks searchbox in search results.','wp-seopress').'</p>';
663
- } else {
664
- $desc .= '<p><span class="dashicons dashicons-yes"></span>'.__('nositelinkssearchbox is off. Google will probably display a sitelinks searchbox in search results.','wp-seopress').'</p>';
665
- }
666
- } else {
667
- $desc .= '<p><span class="dashicons dashicons-yes"></span>'.__('noimageindex is off. Google will index the images on this page.','wp-seopress').'</p>';
668
-
669
- $desc .= '<p><span class="dashicons dashicons-yes"></span>'.__('nositelinkssearchbox is off. Google will probably display a sitelinks searchbox in search results.','wp-seopress').'</p>';
670
- }
671
-
672
- $analyzes['robots']['desc'] = $desc;
673
-
674
- //Img alt
675
- if (!empty($seopress_analysis_data['img'])) {
676
- $images = isset($seopress_analysis_data['img']['images']) ? $seopress_analysis_data['img']['images'] : NULL;
677
-
678
- $desc = '<div class="wrap-analysis-img">';
679
-
680
- if (!empty($images)) {
681
- $analyzes['img_alt']['impact'] = 'high';
682
- $desc .= '<p><span class="dashicons dashicons-no-alt"></span>'.__('No alternative text found for these images. Alt tags are important for both SEO and accessibility. Edit your images using the media library or your favorite page builder and fill in alternative text fields.','wp-seopress').'</p>';
683
-
684
- //Standard images & galleries
685
- if (!empty($images)) {
686
- $desc .= '<ul class="attachments">';
687
- foreach($images as $img) {
688
- $desc .= '<li class="attachment"><img src="'.$img.'"/></li>';
689
- }
690
- $desc .= '</ul>';
691
- }
692
- } else {
693
- $desc .= '<p><span class="dashicons dashicons-yes"></span>'.__('All alternative tags are filled in. Good work!','wp-seopress').'</p>';
694
- }
695
- $desc .= '</div>';
696
-
697
- $analyzes['img_alt']['desc'] = $desc;
698
- } else {
699
- $analyzes['img_alt']['impact'] = 'medium';
700
- $analyzes['img_alt']['desc'] = '<p><span class="dashicons dashicons-no-alt"></span>'.__('We could not find any image in your content. Content with media is a plus for your SEO.','wp-seopress').'</p>';
701
- }
702
-
703
- //Nofollow links
704
- if (!empty($seopress_analysis_data['nofollow_links'])) {
705
- $count = count($seopress_analysis_data['nofollow_links']);
706
-
707
- /* translators: %d count nofollow attributes */
708
- $desc = '<p>'.sprintf( esc_html__( 'We found %d links with nofollow attribute in your page. Do not overuse nofollow attribute in links. Below, the list:', 'wp-seopress' ), $count ).'</p>';
709
- $desc .= '<ul>';
710
- foreach ($seopress_analysis_data['nofollow_links'] as $links) {
711
- foreach ($links as $href => $link) {
712
- $desc .= '<li><span class="dashicons dashicons-minus"></span><a href="'.$href.'" target="_blank">'.$link.'</a><span class="dashicons dashicons-external"></span></li>';
713
- }
714
- }
715
- $desc .= '</ul>';
716
- $analyzes['nofollow_links']['impact'] = 'low';
717
- $analyzes['nofollow_links']['desc'] = $desc;
718
- } else {
719
- $analyzes['nofollow_links']['desc'] = '<p><span class="dashicons dashicons-yes"></span>'.__('This page doesn\'t have any nofollow links.','wp-seopress').'</p>';
720
- }
721
-
722
- //Outbound links
723
- $desc = '<p>'.__('Internet is built on the principle of hyperlink. It is therefore perfectly normal to make links between different websites. However, avoid making links to low quality sites, SPAM... If you are not sure about the quality of a site, add the attribute "nofollow" to your link.').'</p>';
724
- if (!empty($seopress_analysis_data['outbound_links'])) {
725
- $count = count($seopress_analysis_data['outbound_links']);
726
-
727
- /* translators: %d count outbound links */
728
- $desc .= '<p>'.sprintf( __('We found %s outbound links in your page. Below, the list:', 'wp-seopress'), $count ).'</p>';
729
- $desc .= '<ul>';
730
- foreach ($seopress_analysis_data['outbound_links'] as $links) {
731
- foreach ($links as $href => $link) {
732
- $desc .= '<li><span class="dashicons dashicons-minus"></span><a href="'.$href.'" target="_blank">'.$link.'</a><span class="dashicons dashicons-external"></span></li>';
733
- }
734
- }
735
- $desc .= '</ul>';
736
- } else {
737
- $analyzes['outbound_links']['impact'] = 'medium';
738
- $desc .= '<p><span class="dashicons dashicons-no-alt"></span>'.__('This page doesn\'t have any outbound links.','wp-seopress').'</p>';
739
- }
740
- $analyzes['outbound_links']['desc'] = $desc;
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
inc/admin/admin-metaboxes-render-content-analysis.php DELETED
@@ -1,70 +0,0 @@
1
- <?php
2
- defined( 'ABSPATH' ) or die( 'Please don&rsquo;t call the plugin directly. Thanks :)' );
3
-
4
- $html = '<div id="seopress-analysis-tabs">
5
- <div id="seopress-analysis-tabs-1">';
6
- $html .= '<div class="analysis-score">';
7
- $impact = array_unique(array_values(wp_list_pluck($analyzes, 'impact')));
8
- $svg = '<svg role="img" aria-hidden="true" focusable="false" width="100%" height="100%" viewBox="0 0 200 200" version="1.1" xmlns="http://www.w3.org/2000/svg">
9
- <circle r="90" cx="100" cy="100" fill="transparent" stroke-dasharray="565.48" stroke-dashoffset="0"></circle>
10
- <circle id="bar" r="90" cx="100" cy="100" fill="transparent" stroke-dasharray="565.48" stroke-dashoffset="0" style="stroke-dashoffset: 101.788px;"></circle>
11
- </svg>';
12
- $tooltip = seopress_tooltip(__('Content analysis','wp-seopress'), __('<strong>Should be improved:</strong> red or orange dots <br> <strong>Good:</strong> yellow or green dots','wp-seopress'), '');
13
-
14
- if (!empty($impact)) {
15
- if (in_array('medium', $impact) || in_array('high', $impact)) {
16
- $html .= '<p class="notgood">'.$svg.'<span>'.__('Should be improved','wp-seopress').$tooltip.'</span></p>';
17
- $score = false;
18
- } else {
19
- $html .= '<p class="good">'.$svg.'<span>'.__('Good','wp-seopress').$tooltip.'</span></p>';
20
- $score = true;
21
- }
22
- } else {
23
- $score = false;
24
- }
25
-
26
- if (!empty($seopress_analysis_data)) {
27
- $seopress_analysis_data['score'] = $score;
28
- update_post_meta(get_the_ID(), '_seopress_analysis_data', $seopress_analysis_data);
29
- }
30
- $html .= '<span><a href="#" id="expand-all">'.__('Expand','wp-seopress').'</a> / <a href="#" id="close-all">'.__('Close','wp-seopress').'</a></span>
31
- </div>';
32
-
33
- if(!empty($analyzes)) {
34
- $order = [
35
- '1' => 'high',
36
- '2' => 'medium',
37
- '3' => 'low',
38
- '4' => 'good'
39
- ];
40
-
41
- usort($analyzes, function ($a, $b) use ($order) {
42
- $pos_a = array_search($a['impact'], $order);
43
- $pos_b = array_search($b['impact'], $order);
44
- return $pos_a - $pos_b;
45
- });
46
-
47
- foreach($analyzes as $key => $value) {
48
- $html .= '<div class="gr-analysis">';
49
- if (isset($value['title'])) {
50
- $html .= '<div class="gr-analysis-title">
51
- <h3>
52
- <button type="button" aria-expanded="true" class="btn-toggle">';
53
- if (isset($value['impact'])) {
54
- $html .= '<span class="impact '.$value['impact'].'" aria-hidden="true"></span>';
55
- }
56
- $html .= '<span class="sp-arrow" aria-hidden="true"></span>
57
- '.$value['title'].'
58
- </button>
59
- </h3>
60
- </div>';
61
- }
62
- if (isset($value['desc'])) {
63
- $html .= '<div class="gr-analysis-content">'. $value['desc'] .'</div>';
64
- }
65
- $html .= '</div>';
66
- }
67
- }
68
- $html .= '</div>
69
- </div>
70
- </div>';
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
inc/admin/admin-notifications-center.php CHANGED
@@ -1,904 +1,932 @@
1
  <?php
2
- // To prevent calling the plugin directly
3
- if ( !function_exists( 'add_action' ) ) {
4
- echo 'Please don&rsquo;t call the plugin directly. Thanks :)';
5
- exit;
6
- }
7
- //Notifications Center
8
- function seopress_advanced_appearance_notifications_option() {
9
- $seopress_advanced_appearance_notifications_option = get_option("seopress_advanced_option_name");
10
- if ( ! empty ( $seopress_advanced_appearance_notifications_option ) ) {
11
- foreach ($seopress_advanced_appearance_notifications_option as $key => $seopress_advanced_appearance_notifications_value)
12
- $options[$key] = $seopress_advanced_appearance_notifications_value;
13
- if (isset($seopress_advanced_appearance_notifications_option['seopress_advanced_appearance_notifications'])) {
14
- return $seopress_advanced_appearance_notifications_option['seopress_advanced_appearance_notifications'];
15
- }
16
- }
17
- }
18
- //SEO Tools
19
- function seopress_advanced_appearance_seo_tools_option() {
20
- $seopress_advanced_appearance_seo_tools_option = get_option("seopress_advanced_option_name");
21
- if ( ! empty ( $seopress_advanced_appearance_seo_tools_option ) ) {
22
- foreach ($seopress_advanced_appearance_seo_tools_option as $key => $seopress_advanced_appearance_seo_tools_value)
23
- $options[$key] = $seopress_advanced_appearance_seo_tools_value;
24
- if (isset($seopress_advanced_appearance_seo_tools_option['seopress_advanced_appearance_seo_tools'])) {
25
- return $seopress_advanced_appearance_seo_tools_option['seopress_advanced_appearance_seo_tools'];
26
- }
27
- }
28
- }
29
- //Useful links
30
- function seopress_advanced_appearance_useful_links_option() {
31
- $seopress_advanced_appearance_useful_links_option = get_option("seopress_advanced_option_name");
32
- if ( ! empty ( $seopress_advanced_appearance_useful_links_option ) ) {
33
- foreach ($seopress_advanced_appearance_useful_links_option as $key => $seopress_advanced_appearance_useful_links_value)
34
- $options[$key] = $seopress_advanced_appearance_useful_links_value;
35
- if (isset($seopress_advanced_appearance_useful_links_option['seopress_advanced_appearance_useful_links'])) {
36
- return $seopress_advanced_appearance_useful_links_option['seopress_advanced_appearance_useful_links'];
37
- }
38
- }
39
- }
40
- ?>
 
 
 
41
 
42
  <?php if (defined('SEOPRESS_WL_ADMIN_HEADER') && SEOPRESS_WL_ADMIN_HEADER === false) {
43
- //do nothing
44
  } else { ?>
45
  <div id="seopress-admin-tabs" class="wrap">
46
- <?php
47
- if (is_plugin_active('wp-seopress-pro/seopress-pro.php')) {
48
- $dashboard_settings_tabs = array(
49
- 'tab_seopress_notifications' => __( "Notifications Center", "wp-seopress" ),
50
- 'tab_seopress_seo_tools' => __( "SEO Tools", "wp-seopress" ),
51
- 'tab_seopress_links' => __( "Useful links", "wp-seopress" )
52
- );
53
- } else {
54
- $dashboard_settings_tabs = array(
55
- 'tab_seopress_notifications' => __( "Notifications Center", "wp-seopress" ),
56
- 'tab_seopress_links' => __( "Useful links", "wp-seopress" )
57
- );
58
- }
59
 
60
- if (seopress_advanced_appearance_notifications_option() !='') {
61
- unset($dashboard_settings_tabs['tab_seopress_notifications']);
62
- }
63
- if (is_plugin_active('wp-seopress-pro/seopress-pro.php')) {
64
- if (seopress_advanced_appearance_seo_tools_option() !='') {
65
- unset($dashboard_settings_tabs['tab_seopress_seo_tools']);
66
- }
67
- }
68
- if (seopress_advanced_appearance_useful_links_option() !='') {
69
- unset($dashboard_settings_tabs['tab_seopress_links']);
70
- }
71
-
72
- echo '<div class="nav-tab-wrapper">';
73
- foreach ( $dashboard_settings_tabs as $tab_key => $tab_caption ) {
74
- echo '<a id="'. $tab_key .'-tab" class="nav-tab" href="?page=seopress-option#tab=' . $tab_key . '">' . $tab_caption . '</a>';
75
- }
76
- echo '</div>';
77
- ?>
78
 
79
  <div class="wrap-seopress-tab-content">
80
- <?php if(seopress_advanced_appearance_notifications_option() !='1') { ?>
81
- <div id="tab_seopress_notifications" class="seopress-tab <?php if ($current_tab == 'tab_seopress_notifications') { echo 'active'; } ?>">
 
 
82
  <div id="seopress-notifications-center">
83
- <?php
84
- function seopress_get_hidden_notices_wizard_option() {
85
- $seopress_get_hidden_notices_wizard_option = get_option("seopress_notices");
86
- if ( ! empty ( $seopress_get_hidden_notices_wizard_option ) ) {
87
- foreach ($seopress_get_hidden_notices_wizard_option as $key => $seopress_get_hidden_notices_wizard_value)
88
- $options[$key] = $seopress_get_hidden_notices_wizard_value;
89
- if (isset($seopress_get_hidden_notices_wizard_option['notice-wizard'])) {
90
- return $seopress_get_hidden_notices_wizard_option['notice-wizard'];
91
- }
92
- }
93
- }
94
- if(seopress_get_hidden_notices_wizard_option() !='1') {
95
- $args = [
96
- 'id' => 'notice-wizard',
97
- 'title' => __('Configure SEOPress in a few minutes with our installation wizard','wp-seopress'),
98
- 'desc' => __('The best way to quickly setup SEOPress on your site.','wp-seopress'),
99
- 'impact' => [
100
- 'info' => __('Wizard','wp-seopress')
101
- ],
102
- 'link' => [
103
- 'en' => admin_url( 'admin.php?page=seopress-setup' ),
104
- 'title' => __('Start the wizard','wp-seopress'),
105
- 'external' => true
106
- ],
107
- 'icon' => 'dashicons-admin-tools',
108
- 'deleteable' => true
109
- ];
110
- seopress_notification($args);
111
- }
112
- if (is_plugin_active('wp-seopress-insights/seopress-insights.php')) {
113
- function seopress_get_hidden_notices_insights_wizard_option() {
114
- $seopress_get_hidden_notices_insights_wizard_option = get_option("seopress_notices");
115
- if ( ! empty ( $seopress_get_hidden_notices_insights_wizard_option ) ) {
116
- foreach ($seopress_get_hidden_notices_insights_wizard_option as $key => $seopress_get_hidden_notices_insights_wizard_value)
117
- $options[$key] = $seopress_get_hidden_notices_insights_wizard_value;
118
- if (isset($seopress_get_hidden_notices_insights_wizard_option['notice-insights-wizard'])) {
119
- return $seopress_get_hidden_notices_insights_wizard_option['notice-insights-wizard'];
120
- }
121
- }
122
- }
123
- if(seopress_get_hidden_notices_insights_wizard_option() !='1') {
124
- $args = [
125
- 'id' => 'notice-insights-wizard',
126
- 'title' => __('Configure SEOPress Insights in a few minutes with our installation wizard','wp-seopress'),
127
- 'desc' => __('Track your keywords positions and backlinks directly on your WordPress site.','wp-seopress'),
128
- 'impact' => [
129
- 'info' => __('Wizard','wp-seopress')
130
- ],
131
- 'link' => [
132
- 'en' => admin_url( 'admin.php?page=seopress-insights-setup' ),
133
- 'title' => __('Start the wizard','wp-seopress'),
134
- 'external' => true
135
- ],
136
- 'icon' => 'dashicons-admin-tools',
137
- 'deleteable' => true
138
- ];
139
- seopress_notification($args);
140
- }
141
- }
142
- //DIVI SEO options conflict
143
- $theme = wp_get_theme();
144
- if ( 'Divi' == $theme->template || 'Divi' == $theme->parent_theme ) {
145
- $divi_options = get_option('et_divi');
146
- if (!empty($divi_options)) {
147
- if ($divi_options['divi_seo_home_title'] =='on' ||
148
- $divi_options['divi_seo_home_description'] =='on' ||
149
- $divi_options['divi_seo_home_keywords'] =='on' ||
150
- $divi_options['divi_seo_home_canonical'] =='on' ||
151
- $divi_options['divi_seo_single_title'] =='on' ||
152
- $divi_options['divi_seo_single_description'] =='on' ||
153
- $divi_options['divi_seo_single_keywords'] =='on' ||
154
- $divi_options['divi_seo_single_canonical'] =='on' ||
155
- $divi_options['divi_seo_index_canonical'] =='on' ||
156
- $divi_options['divi_seo_index_description'] =='on'
157
- ) {
158
- $args = [
159
- 'id' => 'notice-divi-seo',
160
- 'title' => __('We noticed that some SEO DIVI options are enabled!','wp-seopress'),
161
- 'desc' => __('To avoid any SEO conflicts, please disable every SEO options from <strong>DIVI theme options page, SEO tab</strong>.','wp-seopress'),
162
- 'impact' => [
163
- 'high' => __('High impact','wp-seopress')
164
- ],
165
- 'link' => [
166
- 'en' => admin_url( 'admin.php?page=et_divi_options#seo-1' ),
167
- 'title' => __('Fix this!','wp-seopress'),
168
- 'external' => false
169
- ],
170
- 'icon' => 'dashicons-admin-plugins',
171
- 'deleteable' => false
172
- ];
173
- seopress_notification($args);
174
- }
175
- }
176
- }
177
- if (substr(get_option( 'permalink_structure' ), -1) !='/' && seopress_advanced_advanced_trailingslash_option() =='') {
178
- $args = [
179
- 'id' => 'notice-permalinks',
180
- 'title' => __('Your permalinks doesn\'t have a trailingslash','wp-seopress'),
181
- 'desc' => __('To avoid any SEO issues, we recommend you to activate the "<strong>Disable trailing slash for metas</strong>" option from our <strong>Advanced settings page</strong>. Do not forget to clear your cache if necessary.','wp-seopress'),
182
- 'impact' => [
183
- 'high' => __('High impact','wp-seopress')
184
- ],
185
- 'link' => [
186
- 'en' => admin_url( 'admin.php?page=seopress-advanced#tab=tab_seopress_advanced_advanced' ),
187
- 'title' => __('Fix this!','wp-seopress'),
188
- 'external' => false
189
- ],
190
- 'icon' => 'dashicons-admin-links',
191
- 'deleteable' => false
192
- ];
193
- seopress_notification($args);
194
- }
195
- if (substr(get_option( 'permalink_structure' ), -1) =='/' && seopress_advanced_advanced_trailingslash_option() =='1') {
196
- $args = [
197
- 'id' => 'notice-permalinks',
198
- 'title' => __('Your permalinks have a trailingslash','wp-seopress'),
199
- 'desc' => __('To avoid any SEO issues, we recommend you to de-activate the "<strong>Disable trailing slash for metas</strong>" option from our <strong>Advanced settings page</strong>. Do not forget to clear your cache if necessary.','wp-seopress'),
200
- 'impact' => [
201
- 'high' => __('High impact','wp-seopress')
202
- ],
203
- 'link' => [
204
- 'en' => admin_url( 'admin.php?page=seopress-advanced#tab=tab_seopress_advanced_advanced' ),
205
- 'title' => __('Fix this!','wp-seopress'),
206
- 'external' => false
207
- ],
208
- 'icon' => 'dashicons-admin-links',
209
- 'deleteable' => false
210
- ];
211
- seopress_notification($args);
212
- }
213
- if (is_plugin_active('td-composer/td-composer.php')) {
214
- function seopress_get_hidden_notices_tagdiv_option() {
215
- $seopress_get_hidden_notices_tagdiv_option = get_option("seopress_notices");
216
- if ( !empty ( $seopress_get_hidden_notices_tagdiv_option ) ) {
217
- foreach ($seopress_get_hidden_notices_tagdiv_option as $key => $seopress_get_hidden_notices_tagdiv_value)
218
- $options[$key] = $seopress_get_hidden_notices_tagdiv_value;
219
- if (isset($seopress_get_hidden_notices_tagdiv_option['notice-tagdiv'])) {
220
- return $seopress_get_hidden_notices_tagdiv_option['notice-tagdiv'];
221
- }
222
- }
223
- }
224
- if(seopress_get_hidden_notices_tagdiv_option() !='1') {
225
- $args = [
226
- 'id' => 'notice-tagdiv',
227
- 'title' => __('TagDiv Composer plugin doesn\'t use <strong>add_theme_support(\'title-tag\');</strong>','wp-seopress'),
228
- 'desc' => __('Fix this compatibility issue to allow SEOPress generates the correct meta titles.','wp-seopress'),
229
- 'impact' => [
230
- 'high' => __('High impact','wp-seopress')
231
- ],
232
- 'link' => [
233
- 'fr' => 'https://www.seopress.org/fr/support/guides/corriger-erreur-compatibilite-extension-tagdiv-composer-newspaper/?utm_source=plugin&utm_medium=wp-admin&utm_campaign=seopress',
234
- 'en' => 'https://www.seopress.org/support/guides/fix-compatibility-issue-tagdiv-composer-plugin-newspaper-theme/?utm_source=plugin&utm_medium=wp-admin&utm_campaign=seopress',
235
- 'title' => __('Fix this!','wp-seopress'),
236
- 'external' => true
237
- ],
238
- 'icon' => 'dashicons-admin-customizer',
239
- 'deleteable' => true
240
- ];
241
- seopress_notification($args);
242
- }
243
- }
244
- if (get_theme_support('title-tag') !='1') {
245
- function seopress_get_hidden_notices_title_tag_option() {
246
- $seopress_get_hidden_notices_title_tag_option = get_option("seopress_notices");
247
- if ( !empty ( $seopress_get_hidden_notices_title_tag_option ) ) {
248
- foreach ($seopress_get_hidden_notices_title_tag_option as $key => $seopress_get_hidden_notices_title_tag_value)
249
- $options[$key] = $seopress_get_hidden_notices_title_tag_value;
250
- if (isset($seopress_get_hidden_notices_title_tag_option['notice-title-tag'])) {
251
- return $seopress_get_hidden_notices_title_tag_option['notice-title-tag'];
252
- }
253
- }
254
- }
255
- if(seopress_get_hidden_notices_title_tag_option() !='1') {
256
- $args = [
257
- 'id' => 'notice-title-tag',
258
- 'title' => __('Your theme doesn\'t use <strong>add_theme_support(\'title-tag\');</strong>','wp-seopress'),
259
- 'desc' => __('This error indicates that your theme uses a deprecated function to generate the title tag of your pages. SEOPress will not be able to generate your custom title tags if this error is not fixed.','wp-seopress'),
260
- 'impact' => [
261
- 'high' => __('High impact','wp-seopress')
262
- ],
263
- 'link' => [
264
- 'fr' => 'https://www.seopress.org/fr/support/guides/resoudre-add_theme_support-manquant-dans-votre-theme/?utm_source=plugin&utm_medium=wp-admin&utm_campaign=seopress',
265
- 'en' => 'https://www.seopress.org/support/guides/fixing-missing-add_theme_support-in-your-theme/?utm_source=plugin&utm_medium=wp-admin&utm_campaign=seopress',
266
- 'title' => __('Learn more','wp-seopress'),
267
- 'external' => true
268
- ],
269
- 'icon' => 'dashicons-admin-customizer',
270
- 'deleteable' => false
271
- ];
272
- seopress_notification($args);
273
- }
274
- }
275
- $seo_plugins = array(
276
- 'wordpress-seo/wp-seo.php' => 'Yoast SEO',
277
- 'wordpress-seo-premium/wp-seo-premium.php' => 'Yoast SEO Premium',
278
- 'all-in-one-seo-pack/all_in_one_seo_pack.php' => 'All In One SEO',
279
- 'autodescription/autodescription.php' => 'The SEO Framework',
280
- 'squirrly-seo/squirrly.php' => 'Squirrly SEO',
281
- 'seo-by-rank-math/rank-math.php' => 'Rank Math',
282
- 'seo-ultimate/seo-ultimate.php' => 'SEO Ultimate',
283
- 'wp-meta-seo/wp-meta-seo.php' => 'WP Meta SEO',
284
- 'premium-seo-pack/plugin.php' => 'Premium SEO Pack',
285
- 'wpseo/wpseo.php' => 'wpSEO',
286
- );
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
287
 
288
- foreach($seo_plugins as $key => $value) {
289
- if (is_plugin_active($key)) {
290
- $args = [
291
- 'id' => 'notice-seo-plugins',
292
- /* translators: %s name of a SEO plugin (eg: Yoast SEO) */
293
- 'title' => sprintf(__('We noticed that you use <strong>%s</strong> plugin.','wp-seopress'), $value),
294
- 'desc' => __('Do you want to migrate all your metadata to SEOPress? Do not use multiple SEO plugins at once to avoid conflicts!','wp-seopress'),
295
- 'impact' => [
296
- 'high' => __('High impact','wp-seopress')
297
- ],
298
- 'link' => [
299
- 'en' => admin_url( 'admin.php?page=seopress-import-export' ),
300
- 'title' => __('Migrate!','wp-seopress'),
301
- 'external' => false
302
- ],
303
- 'icon' => 'dashicons-admin-plugins',
304
- 'deleteable' => false
305
- ];
306
- seopress_notification($args);
307
- }
308
- }
309
- if (is_plugin_active('wp-seopress-pro/seopress-pro.php')) {
310
- if (seopress_404_cleaning_option() == 1 && !wp_next_scheduled('seopress_404_cron_cleaning')) {
311
- $args = [
312
- 'id' => 'notice-title-tag',
313
- 'title' => __('You have enabled 404 cleaning BUT the scheduled task is not running.','wp-seopress'),
314
- 'desc' => __('To solve this, please disable and re-enable SEOPress PRO. No data will be lost.','wp-seopress'),
315
- 'icon' => 'dashicons-clock',
316
- 'deleteable' => false
317
- ];
318
- seopress_notification($args);
319
- }
320
- }
321
- $pbuilder_plugins = array(
322
- 'oxygen/functions.php' => 'Oxygen',
323
- 'js_composer/js_composer.php' => 'WP Bakery',
324
- );
325
- foreach($pbuilder_plugins as $key => $value) {
326
- if (is_plugin_active($key)) {
327
- function seopress_get_hidden_notices_pbuilders_option() {
328
- $seopress_get_hidden_notices_pbuilders_option = get_option("seopress_notices");
329
- if ( ! empty ( $seopress_get_hidden_notices_pbuilders_option ) ) {
330
- foreach ($seopress_get_hidden_notices_pbuilders_option as $key => $seopress_get_hidden_notices_pbuilders_value)
331
- $options[$key] = $seopress_get_hidden_notices_pbuilders_value;
332
- if (isset($seopress_get_hidden_notices_pbuilders_option['notice-page-builders'])) {
333
- return $seopress_get_hidden_notices_pbuilders_option['notice-page-builders'];
334
- }
335
- }
336
- }
337
- if(seopress_get_hidden_notices_pbuilders_option() !='1') {
338
- $args = [
339
- 'id' => 'notice-page-builders',
340
- /* translators: %s name of a page builder plugin (eg: Oxygen) */
341
- 'title' => sprintf(__('Generate automatic meta description for <strong>%s</strong> plugin.','wp-seopress'), $value),
342
- 'desc' => __('Your page builder is using shortcodes to save its data. To automatically generate your meta description based on your post content, you will have to add some hooks to your functions.php.','wp-seopress'),
343
- 'impact' => [
344
- 'medium' => __('Medium impact','wp-seopress')
345
- ],
346
- 'link' => [
347
- 'en' => 'https://www.seopress.org/support/guides/generate-automatic-meta-description-from-page-builders/',
348
- 'fr' => 'https://www.seopress.org/fr/support/guides/generez-automatiquement-meta-descriptions-divi-oxygen-builder/',
349
- 'title' => __('Learn more','wp-seopress'),
350
- 'external' => true
351
- ],
352
- 'icon' => 'dashicons-admin-tools',
353
- 'deleteable' => true
354
- ];
355
- seopress_notification($args);
356
- }
357
- break;
358
- }
359
- }
360
- $theme = wp_get_theme();
361
- $pbuilder_themes = array(
362
- 'Divi' => 'Divi',
363
- 'enfold' => 'Enfold (Avia Layout Builder)',
364
- );
365
- foreach($pbuilder_themes as $key => $value) {
366
- if ( $key == $theme->template || $key == $theme->parent_theme ) {
367
- function seopress_get_hidden_notices_themes_option() {
368
- $seopress_get_hidden_notices_themes_option = get_option("seopress_notices");
369
- if ( ! empty ( $seopress_get_hidden_notices_themes_option ) ) {
370
- foreach ($seopress_get_hidden_notices_themes_option as $key => $seopress_get_hidden_notices_themes_value)
371
- $options[$key] = $seopress_get_hidden_notices_themes_value;
372
- if (isset($seopress_get_hidden_notices_themes_option['notice-themes'])) {
373
- return $seopress_get_hidden_notices_themes_option['notice-themes'];
374
- }
375
- }
376
- }
377
- if(seopress_get_hidden_notices_themes_option() !='1') {
378
- $args = [
379
- 'id' => 'notice-themes',
380
- /* translators: %s name of a WP theme (eg: Enfold) */
381
- 'title' => sprintf(__('Generate automatic meta description for <strong>%s</strong> theme.','wp-seopress'), $value),
382
- 'desc' => __('Your theme is using shortcodes to save its data. To automatically generate your meta description based on your post content, you will have to add some hooks to your functions.php.','wp-seopress'),
383
- 'impact' => [
384
- 'medium' => __('Medium impact','wp-seopress')
385
- ],
386
- 'link' => [
387
- 'en' => 'https://www.seopress.org/support/guides/generate-automatic-meta-description-from-page-builders/',
388
- 'fr' => 'https://www.seopress.org/fr/support/guides/generez-automatiquement-meta-descriptions-divi-oxygen-builder/',
389
- 'title' => __('Learn more','wp-seopress'),
390
- 'external' => true
391
- ],
392
- 'icon' => 'dashicons-admin-tools',
393
- 'deleteable' => true
394
- ];
395
- seopress_notification($args);
396
- }
397
- break;
398
- }
399
- }
400
- //Enfold theme
401
- $avia_options_enfold = get_option( 'avia_options_enfold' );
402
- $avia_options_enfold_child = get_option( 'avia_options_enfold_child' );
403
- $theme = wp_get_theme();
404
- if ( 'enfold' == $theme->template || 'enfold' == $theme->parent_theme ) {
405
- if ( $avia_options_enfold['avia']['seo_robots'] !='plugin' || $avia_options_enfold_child['avia']['seo_robots'] !='plugin' ) {
406
- function seopress_get_hidden_notices_enfold_option() {
407
- $seopress_get_hidden_notices_enfold_option = get_option("seopress_notices");
408
- if ( ! empty ( $seopress_get_hidden_notices_enfold_option ) ) {
409
- foreach ($seopress_get_hidden_notices_enfold_option as $key => $seopress_get_hidden_notices_enfold_value)
410
- $options[$key] = $seopress_get_hidden_notices_enfold_value;
411
- if (isset($seopress_get_hidden_notices_enfold_option['notice-enfold'])) {
412
- return $seopress_get_hidden_notices_enfold_option['notice-enfold'];
413
- }
414
- }
415
- }
416
- if(seopress_get_hidden_notices_enfold_option() !='1') {
417
- $args = [
418
- 'id' => 'notice-enfold',
419
- 'title' => __('Enfold theme is not correctly setup for SEO!','wp-seopress'),
420
- 'desc' => __('You must disable "Meta tag robots" option from Enfold settings (SEO Support tab) to avoid any SEO issues.','wp-seopress'),
421
- 'impact' => [
422
- 'low' => __('High impact','wp-seopress')
423
- ],
424
- 'link' => [
425
- 'en' => admin_url('admin.php?avia_welcome=true&page=avia'),
426
- 'title' => __('Fix this!','wp-seopress'),
427
- 'external' => true
428
- ],
429
- 'icon' => 'dashicons-admin-tools',
430
- 'deleteable' => true
431
- ];
432
- seopress_notification($args);
433
- }
434
- }
435
- }
436
- if (!is_ssl()) {
437
- function seopress_get_hidden_notices_ssl_option() {
438
- $seopress_get_hidden_notices_ssl_option = get_option("seopress_notices");
439
- if ( ! empty ( $seopress_get_hidden_notices_ssl_option ) ) {
440
- foreach ($seopress_get_hidden_notices_ssl_option as $key => $seopress_get_hidden_notices_ssl_value)
441
- $options[$key] = $seopress_get_hidden_notices_ssl_value;
442
- if (isset($seopress_get_hidden_notices_ssl_option['notice-ssl'])) {
443
- return $seopress_get_hidden_notices_ssl_option['notice-ssl'];
444
- }
445
- }
446
- }
447
- if(seopress_get_hidden_notices_ssl_option() !='1') {
448
- $args = [
449
- 'id' => 'notice-ssl',
450
- 'title' => __('Your site doesn\'t use an SSL certificate!','wp-seopress'),
451
- 'desc' => __('Https is considered by Google as a positive signal for the ranking of your site. It also reassures your visitors for data security, and improves trust.','wp-seopress').' <a href="https://webmasters.googleblog.com/2014/08/https-as-ranking-signal.html" target="_blank">'.__('Learn more','wp-seopress').'</a>',
452
- 'impact' => [
453
- 'low' => __('Low impact','wp-seopress')
454
- ],
455
- 'link' => [
456
- 'en' => 'https://www.seopress.org/go/namecheap',
457
- 'title' => __('Buy an SSL!','wp-seopress'),
458
- 'external' => true
459
- ],
460
- 'icon' => 'dashicons-unlock',
461
- 'deleteable' => true
462
- ];
463
- seopress_notification($args);
464
- }
465
- }
466
- if (function_exists('extension_loaded') && !extension_loaded('dom')) {
467
- $args = [
468
- 'id' => 'notice-ssl-alert',
469
- 'title' => __('PHP module "DOM" is missing on your server.','wp-seopress'),
470
- 'desc' => __('This PHP module, installed by default with PHP, is required by many plugins including SEOPress. Please contact your host as soon as possible to solve this.','wp-seopress'),
471
- 'impact' => [
472
- 'high' => __('High impact','wp-seopress')
473
- ],
474
- 'link' => [
475
- 'fr' => 'https://www.seopress.org/fr/support/guides/debutez-seopress/',
476
- 'en' => 'https://www.seopress.org/support/guides/get-started-seopress/',
477
- 'title' => __('Learn more','wp-seopress'),
478
- 'external' => true
479
- ],
480
- 'deleteable' => true
481
- ];
482
- seopress_notification($args);
483
- }
484
- if (!function_exists('seopress_titles_noindex_option')) {
485
- function seopress_titles_noindex_option() {
486
- $seopress_titles_noindex_option = get_option("seopress_titles_option_name");
487
- if ( ! empty ( $seopress_titles_noindex_option ) ) {
488
- foreach ($seopress_titles_noindex_option as $key => $seopress_titles_noindex_value)
489
- $options[$key] = $seopress_titles_noindex_value;
490
- if (isset($seopress_titles_noindex_option['seopress_titles_noindex'])) {
491
- return $seopress_titles_noindex_option['seopress_titles_noindex'];
492
- }
493
- }
494
- }
495
- }
496
- function seopress_get_hidden_notices_noindex_option() {
497
- $seopress_get_hidden_notices_noindex_option = get_option("seopress_notices");
498
- if ( ! empty ( $seopress_get_hidden_notices_noindex_option ) ) {
499
- foreach ($seopress_get_hidden_notices_noindex_option as $key => $seopress_get_hidden_notices_noindex_value)
500
- $options[$key] = $seopress_get_hidden_notices_noindex_value;
501
- if (isset($seopress_get_hidden_notices_noindex_option['notice-noindex'])) {
502
- return $seopress_get_hidden_notices_noindex_option['notice-noindex'];
503
- }
504
- }
505
- }
506
- if(seopress_get_hidden_notices_noindex_option() !='1') {
507
- if (seopress_titles_noindex_option()=='1' || get_option('blog_public') !='1') {
508
- $args = [
509
- 'id' => 'notice-noindex',
510
- 'title' => __('Your site is not visible to Search Engines!','wp-seopress'),
511
- 'desc' => __('You have activated the blocking of the indexing of your site. If your site is under development, this is probably normal. Otherwise, check your settings. Delete this notification using the cross on the right if you are not concerned.','wp-seopress'),
512
- 'impact' => [
513
- 'high' => __('High impact','wp-seopress')
514
- ],
515
- 'link' => [
516
- 'en' => admin_url( 'options-reading.php' ),
517
- 'title' => __('Fix this!','wp-seopress'),
518
- 'external' => false
519
- ],
520
- 'icon' => 'dashicons-warning',
521
- 'deleteable' => true
522
- ];
523
- seopress_notification($args);
524
- }
525
- }
526
- if (get_option('blogname') =='') {
527
- $args = [
528
- 'id' => 'notice-title-empty',
529
- 'title' => __('Your site title is empty!','wp-seopress'),
530
- 'desc' => __('Your Site Title is used by WordPress, your theme and your plugins including SEOPress. It is an essential component in the generation of title tags, but not only. Enter one!','wp-seopress'),
531
- 'impact' => [
532
- 'high' => __('High impact','wp-seopress')
533
- ],
534
- 'link' => [
535
- 'en' => admin_url( 'options-general.php' ),
536
- 'title' => __('Fix this!','wp-seopress'),
537
- 'external' => false
538
- ],
539
- 'deleteable' => false
540
- ];
541
- seopress_notification($args);
542
- }
543
- if (get_option('permalink_structure') =='') {
544
- $args = [
545
- 'id' => 'notice-permalinks',
546
- 'title' => __('Your permalinks are not SEO Friendly! Enable pretty permalinks to fix this.','wp-seopress'),
547
- 'desc' => __('Why is this important? Showing only the summary of each article significantly reduces the theft of your content by third party sites. Not to mention, the increase in your traffic, your advertising revenue, conversions...','wp-seopress'),
548
- 'impact' => [
549
- 'high' => __('High impact','wp-seopress')
550
- ],
551
- 'link' => [
552
- 'en' => admin_url( 'options-permalink.php' ),
553
- 'title' => __('Fix this!','wp-seopress'),
554
- 'external' => false
555
- ],
556
- 'icon' => 'dashicons-admin-links',
557
- 'deleteable' => false
558
- ];
559
- seopress_notification($args);
560
- }
561
- if(get_option('rss_use_excerpt') =='0') {
562
- function seopress_get_hidden_notices_rss_use_excerpt_option() {
563
- $seopress_get_hidden_notices_rss_use_excerpt_option = get_option("seopress_notices");
564
- if ( ! empty ( $seopress_get_hidden_notices_rss_use_excerpt_option ) ) {
565
- foreach ($seopress_get_hidden_notices_rss_use_excerpt_option as $key => $seopress_get_hidden_notices_rss_use_excerpt_value)
566
- $options[$key] = $seopress_get_hidden_notices_rss_use_excerpt_value;
567
- if (isset($seopress_get_hidden_notices_rss_use_excerpt_option['notice-rss-use-excerpt'])) {
568
- return $seopress_get_hidden_notices_rss_use_excerpt_option['notice-rss-use-excerpt'];
569
- }
570
- }
571
- }
572
- if(seopress_get_hidden_notices_rss_use_excerpt_option() !='1') {
573
- $args = [
574
- 'id' => 'notice-rss-use-excerpt',
575
- 'title' => __('Your RSS feed shows full text!','wp-seopress'),
576
- 'desc' => __('Why is this important? Showing only the summary of each article significantly reduces the theft of your content by third party sites. Not to mention, the increase in your traffic, your advertising revenue, conversions...','wp-seopress'),
577
- 'impact' => [
578
- 'medium' => __('Medium impact','wp-seopress')
579
- ],
580
- 'link' => [
581
- 'en' => admin_url( 'options-reading.php' ),
582
- 'title' => __('Fix this!','wp-seopress'),
583
- 'external' => false
584
- ],
585
- 'icon' => 'dashicons-rss',
586
- 'deleteable' => true
587
- ];
588
- seopress_notification($args);
589
- }
590
- }
591
-
592
- function seopress_get_hidden_notices_review_option() {
593
- $seopress_get_hidden_notices_review_option = get_option("seopress_notices");
594
- if ( ! empty ( $seopress_get_hidden_notices_review_option ) ) {
595
- foreach ($seopress_get_hidden_notices_review_option as $key => $seopress_get_hidden_notices_review_value)
596
- $options[$key] = $seopress_get_hidden_notices_review_value;
597
- if (isset($seopress_get_hidden_notices_review_option['notice-review'])) {
598
- return $seopress_get_hidden_notices_review_option['notice-review'];
599
- }
600
- }
601
- }
602
- if(seopress_get_hidden_notices_review_option() !='1') {
603
- $args = [
604
- 'id' => 'notice-review',
605
- 'title' => __('You like SEOPress? Please help us by rating us 5 stars!','wp-seopress'),
606
- 'desc' => __('Support the development and improvement of the plugin by taking 15 seconds of your time to leave us a user review on the official WordPress plugins repository. Thank you!','wp-seopress'),
607
- 'impact' => [
608
- 'info' => __('Information','wp-seopress')
609
- ],
610
- 'link' => [
611
- 'en' => 'https://wordpress.org/support/view/plugin-reviews/wp-seopress?rate=5#postform',
612
- 'title' => __('Rate us!','wp-seopress'),
613
- 'external' => true
614
- ],
615
- 'icon' => 'dashicons-thumbs-up',
616
- 'deleteable' => true
617
- ];
618
- seopress_notification($args);
619
- }
620
- if(get_option('page_comments') =='1') {
621
- function seopress_get_hidden_notices_divide_comments_option() {
622
- $seopress_get_hidden_notices_divide_comments_option = get_option("seopress_notices");
623
- if ( ! empty ( $seopress_get_hidden_notices_divide_comments_option ) ) {
624
- foreach ($seopress_get_hidden_notices_divide_comments_option as $key => $seopress_get_hidden_notices_divide_comments_value)
625
- $options[$key] = $seopress_get_hidden_notices_divide_comments_value;
626
- if (isset($seopress_get_hidden_notices_divide_comments_option['notice-divide-comments'])) {
627
- return $seopress_get_hidden_notices_divide_comments_option['notice-divide-comments'];
628
- }
629
- }
630
- }
631
- if(seopress_get_hidden_notices_divide_comments_option() !='1') {
632
- $args = [
633
- 'id' => 'notice-divide-comments',
634
- 'title' => __('Break comments into pages is ON!','wp-seopress'),
635
- 'desc' => __('Enabling this option will create duplicate content for each article beyond x comments. This can have a disastrous effect by creating a large number of poor quality pages, and slowing the Google bot unnecessarily, so your ranking in search results.','wp-seopress'),
636
- 'impact' => [
637
- 'high' => __('High impact','wp-seopress')
638
- ],
639
- 'link' => [
640
- 'en' => admin_url( 'options-discussion.php' ),
641
- 'title' => __('Disable this!','wp-seopress'),
642
- 'external' => false
643
- ],
644
- 'icon' => 'dashicons-admin-comments',
645
- 'deleteable' => true
646
- ];
647
- seopress_notification($args);
648
- }
649
- }
650
- if(get_option('posts_per_page') < '16') {
651
- function seopress_get_hidden_notices_posts_number_option() {
652
- $seopress_get_hidden_notices_posts_number_option = get_option("seopress_notices");
653
- if ( ! empty ( $seopress_get_hidden_notices_posts_number_option ) ) {
654
- foreach ($seopress_get_hidden_notices_posts_number_option as $key => $seopress_get_hidden_notices_posts_number_value)
655
- $options[$key] = $seopress_get_hidden_notices_posts_number_value;
656
- if (isset($seopress_get_hidden_notices_posts_number_option['notice-posts-number'])) {
657
- return $seopress_get_hidden_notices_posts_number_option['notice-posts-number'];
658
- }
659
- }
660
- }
661
- if(seopress_get_hidden_notices_posts_number_option() !='1') {
662
- $args = [
663
- 'id' => 'notice-posts-number',
664
- 'title' => __('Display more posts per page on homepage and archives','wp-seopress'),
665
- 'desc' => __('To reduce the number pages search engines have to crawl to find all your articles, it is recommended displaying more posts per page. This should not be a problem for your users. Using mobile, we prefer to scroll down rather than clicking on next page links.','wp-seopress'),
666
- 'impact' => [
667
- 'medium' => __('Medium impact','wp-seopress')
668
- ],
669
- 'link' => [
670
- 'en' => admin_url( 'options-reading.php' ),
671
- 'title' => __('Fix this!','wp-seopress'),
672
- 'external' => false
673
- ],
674
- 'deleteable' => true
675
- ];
676
- seopress_notification($args);
677
- }
678
- }
679
- if (seopress_xml_sitemap_general_enable_option() !='1') {
680
- $args = [
681
- 'id' => 'notice-xml-sitemaps',
682
- 'title' => __('You don\'t have an XML Sitemap!','wp-seopress'),
683
- 'desc' => __('XML Sitemaps are useful to facilitate the crawling of your content by search engine robots. Indirectly, this can benefit your ranking by reducing the crawl bugdet.','wp-seopress'),
684
- 'impact' => [
685
- 'medium' => __('Medium impact','wp-seopress')
686
- ],
687
- 'link' => [
688
- 'en' => admin_url( 'admin.php?page=seopress-xml-sitemap' ),
689
- 'title' => __('Fix this!','wp-seopress'),
690
- 'external' => false
691
- ],
692
- 'icon' => 'dashicons-warning',
693
- 'deleteable' => false
694
- ];
695
- seopress_notification($args);
696
- }
697
- function seopress_get_hidden_notices_google_business_option() {
698
- $seopress_get_hidden_notices_google_business_option = get_option("seopress_notices");
699
- if ( ! empty ( $seopress_get_hidden_notices_google_business_option ) ) {
700
- foreach ($seopress_get_hidden_notices_google_business_option as $key => $seopress_get_hidden_notices_google_business_value)
701
- $options[$key] = $seopress_get_hidden_notices_google_business_value;
702
- if (isset($seopress_get_hidden_notices_google_business_option['notice-google-business'])) {
703
- return $seopress_get_hidden_notices_google_business_option['notice-google-business'];
704
- }
705
- }
706
- }
707
- if(seopress_get_hidden_notices_google_business_option() !='1') {
708
- $args = [
709
- 'id' => 'notice-google-business',
710
- 'title' => __('Do you have a Google My Business page? It\'s free!','wp-seopress'),
711
- 'desc' => __('Local Business websites should have a My Business page to improve visibility in search results. Click on the cross on the right to delete this notification if you are not concerned.','wp-seopress'),
712
- 'impact' => [
713
- 'high' => __('High impact','wp-seopress')
714
- ],
715
- 'link' => [
716
- 'en' => 'https://www.google.com/business/go/',
717
- 'title' => __('Create your page now!','wp-seopress'),
718
- 'external' => true
719
- ],
720
- 'deleteable' => true
721
- ];
722
- seopress_notification($args);
723
- }
724
- function seopress_get_hidden_notices_search_console_option() {
725
- $seopress_get_hidden_notices_search_console_option = get_option("seopress_notices");
726
- if ( ! empty ( $seopress_get_hidden_notices_search_console_option ) ) {
727
- foreach ($seopress_get_hidden_notices_search_console_option as $key => $seopress_get_hidden_notices_search_console_value)
728
- $options[$key] = $seopress_get_hidden_notices_search_console_value;
729
- if (isset($seopress_get_hidden_notices_search_console_option['notice-search-console'])) {
730
- return $seopress_get_hidden_notices_search_console_option['notice-search-console'];
731
- }
732
- }
733
- }
734
- function seopress_get_google_site_verification_option() {
735
- $seopress_get_google_site_verification_option = get_option("seopress_advanced_option_name");
736
- if ( ! empty ( $seopress_get_google_site_verification_option ) ) {
737
- foreach ($seopress_get_google_site_verification_option as $key => $seopress_get_google_site_verification_value)
738
- $options[$key] = $seopress_get_google_site_verification_value;
739
- if (isset($seopress_get_google_site_verification_option['seopress_advanced_advanced_google'])) {
740
- return $seopress_get_google_site_verification_option['seopress_advanced_advanced_google'];
741
- }
742
- }
743
- }
744
- if(seopress_get_hidden_notices_search_console_option() !='1' && seopress_get_google_site_verification_option() =='') {
745
- $args = [
746
- 'id' => 'notice-search-console',
747
- 'title' => __('Add your site to Google. It\'s free!','wp-seopress'),
748
- 'desc' => __('Is your brand new site online? So reference it as quickly as possible on Google to get your first visitors via Google Search Console. Already the case? Click on the cross on the right to remove this alert.','wp-seopress'),
749
- 'impact' => [
750
- 'high' => __('High impact','wp-seopress')
751
- ],
752
- 'link' => [
753
- 'en' => 'https://www.google.com/webmasters/tools/home',
754
- 'title' => __('Add your site to Search Console!','wp-seopress'),
755
- 'external' => true
756
- ],
757
- 'deleteable' => true
758
- ];
759
- seopress_notification($args);
760
- }
761
- if (is_plugin_active('wp-seopress-pro/seopress-pro.php')) {
762
- if(function_exists('seopress_rich_snippets_enable_option') && seopress_rich_snippets_enable_option() !="1") {
763
- $args = [
764
- 'id' => 'notice-schemas-metabox',
765
- 'title' => __('Structured data types is not correctly enabled','wp-seopress'),
766
- 'desc' => __('Please enable <strong>Structured Data Types metabox for your posts, pages and custom post types</strong> option in order to use automatic and manual schemas. (SEO > PRO > Structured Data Types (schema.org)','wp-seopress'),
767
- 'impact' => [
768
- 'high' => __('High impact','wp-seopress')
769
- ],
770
- 'link' => [
771
- 'en' => esc_url( admin_url('admin.php?page=seopress-pro-page#tab=tab_seopress_rich_snippets')),
772
- 'title' => __('Fix this!','wp-seopress'),
773
- 'external' => false
774
- ],
775
- 'icon' => 'dashicons-warning',
776
- 'deleteable' => false
777
- ];
778
- seopress_notification($args);
779
- }
780
- }
781
- if (get_option( 'seopress_pro_license_status' ) !='valid' && is_plugin_active('wp-seopress-pro/seopress-pro.php')) {
782
- $args = [
783
- 'id' => 'notice-license',
784
- 'title' => __('You have to enter your licence key to get updates and support','wp-seopress'),
785
- 'desc' => __('Please activate the SEOPress PRO license key to automatically receive updates to guarantee you the best user experience possible.','wp-seopress'),
786
- 'impact' => [
787
- 'info' => __('License','wp-seopress')
788
- ],
789
- 'link' => [
790
- 'en' => admin_url( 'admin.php?page=seopress-license' ),
791
- 'title' => __('Fix this!','wp-seopress'),
792
- 'external' => false
793
- ],
794
- 'icon' => 'dashicons-admin-network',
795
- 'deleteable' => false
796
- ];
797
- seopress_notification($args);
798
- }
799
- if (!is_plugin_active('wp-seopress-pro/seopress-pro.php')) {
800
- function seopress_get_hidden_notices_go_pro_option() {
801
- $seopress_get_hidden_notices_go_pro_option = get_option("seopress_notices");
802
- if ( ! empty ( $seopress_get_hidden_notices_go_pro_option ) ) {
803
- foreach ($seopress_get_hidden_notices_go_pro_option as $key => $seopress_get_hidden_notices_go_pro_value)
804
- $options[$key] = $seopress_get_hidden_notices_go_pro_value;
805
- if (isset($seopress_get_hidden_notices_go_pro_option['notice-go-pro'])) {
806
- return $seopress_get_hidden_notices_go_pro_option['notice-go-pro'];
807
- }
808
- }
809
- }
810
- if(seopress_get_hidden_notices_go_pro_option() !='1' && seopress_get_hidden_notices_go_pro_option() =='') {
811
- $args = [
812
- 'id' => 'notice-go-pro',
813
- 'title' => __('Take your SEO to the next level with SEOPress PRO!','wp-seopress'),
814
- 'desc' => __('The PRO version of SEOPress allows you to easily manage your structured data (schemas), add a breadcrumb optimized for SEO and accessibility, improve SEO for WooCommerce, gain productivity with our import / export tool from a CSV of your metadata and so much more.','wp-seopress'),
815
- 'impact' => [
816
- 'info' => __('PRO','wp-seopress')
817
- ],
818
- 'link' => [
819
- 'fr' => 'https://www.seopress.org/fr?utm_source=plugin&utm_medium=notification&utm_campaign=dashboard',
820
- 'en' => 'https://www.seopress.org/?utm_source=plugin&utm_medium=notification&utm_campaign=dashboard',
821
- 'title' => __('Upgrade now!','wp-seopress'),
822
- 'external' => true
823
- ],
824
- 'deleteable' => true
825
- ];
826
- seopress_notification($args);
827
- }
828
- } ?>
829
  </div><!--#seopress-notifications-center-->
830
  </div>
831
  <?php } ?>
832
 
833
  <?php if (is_plugin_active('wp-seopress-pro/seopress-pro.php')) { ?>
834
- <div id="tab_seopress_seo_tools" class="seopress-tab seopress-useful-tools <?php if ($current_tab == 'tab_seopress_seo_tools') { echo 'active'; } ?>">
835
-
 
 
836
  <!-- Reverse -->
837
  <div class="widget widget-reverse">
838
- <h3 class="widget-title"><span class="dashicons dashicons-welcome-view-site"></span><?php _e('Check websites setup on your server','wp-seopress'); ?></h3>
839
 
840
  <p>
841
  <?php
842
- if ( get_transient( 'seopress_results_reverse' ) !='' ) {
 
 
 
 
 
 
 
843
 
844
- $seopress_results_reverse = (array)json_decode(get_transient( 'seopress_results_reverse' ));
 
 
 
845
 
846
- //Init
847
- $seopress_results_reverse_remote_ip_address = __('Not found','wp-seopress');
848
- if(isset($seopress_results_reverse['remoteIpAddress'])) {
849
- $seopress_results_reverse_remote_ip_address = $seopress_results_reverse['remoteIpAddress'];
850
- }
851
 
852
- $seopress_results_reverse_last_scrape = __('No scrape.','wp-seopress');
853
- if(isset($seopress_results_reverse['lastScrape'])) {
854
- $seopress_results_reverse_last_scrape = $seopress_results_reverse['lastScrape'];
855
- }
856
 
857
- $seopress_results_reverse_domain_count = __('No domain found.','wp-seopress');
858
- if(isset($seopress_results_reverse['domainCount'])) {
859
- $seopress_results_reverse_domain_count = $seopress_results_reverse['domainCount'];
860
- }
861
 
862
- $seopress_results_reverse_domain_array = '';
863
- if(isset($seopress_results_reverse['domainArray'])) {
864
- $seopress_results_reverse_domain_array = $seopress_results_reverse['domainArray'];
865
- }
866
-
867
- echo '<p class="remote-ip"><strong>'.__('Server IP Address: ','wp-seopress').'</strong>'.$seopress_results_reverse_remote_ip_address.'</p>';
868
-
869
 
870
- echo '<p class="last-scrape"><strong>'.__('Last scrape: ','wp-seopress').'</strong>'.$seopress_results_reverse_last_scrape.'</p>';
871
- echo '<p class="domain-count"><strong>'.__('Number of websites on your server: ','wp-seopress').'</strong>'.$seopress_results_reverse_domain_count.'</p>';
872
-
873
- if ($seopress_results_reverse_domain_array !='') {
874
- echo '<ul>';
875
- foreach ($seopress_results_reverse_domain_array as $key => $value) {
876
- echo '<li><span class="dashicons dashicons-minus"></span><a href="//'.preg_replace('#^https?://#', '', $value[0]).'" target="_blank">'.$value[0].'</a><span class="dashicons dashicons-external"></span></li>';
877
- }
878
- echo '</ul>';
879
- }
880
- }
881
- ?>
882
  <br>
883
  <button id="seopress-reverse-submit" type="button" class="button button-primary" name="submit">
884
- <?php _e('Get list','wp-seopress'); ?>
885
  </button>
886
 
887
  <span id="spinner-reverse" class="spinner"></span>
888
  </div>
889
  </div>
890
  <?php } ?>
891
- <div id="tab_seopress_links" class="seopress-tab seopress-useful-tools <?php if ($current_tab == 'tab_seopress_links') { echo 'active'; } ?>">
 
 
892
  <ul>
893
- <li><span class="dashicons dashicons-arrow-right-alt2"></span><a href="https://www.seopress.org/blog/" target="_blank"><?php _e('Our blog: SEO news, how-to, tips and tricks...','wp-seopress'); ?></a><span class="dashicons dashicons-external"></span></li>
894
- <li><span class="dashicons dashicons-arrow-right-alt2"></span><a href="https://www.google.com/webmasters/tools/disavow-links-main" target="_blank"><?php _e('Upload a list of links to disavow to Google','wp-seopress'); ?></a><span class="dashicons dashicons-external"></span></li>
895
- <?php if ( !is_plugin_active( 'imageseo/imageseo.php' )) {
896
- echo '<li><span class="dashicons dashicons-arrow-right-alt2"></span><a href="https://www.seopress.org/go/image-seo" target="_blank">'.__('Image SEO plugin to optimize your image ALT texts and names for Search Engines.','wp-seopress').'</a><span class="dashicons dashicons-external"></span></li>';
897
- } ?>
898
- <li><span class="dashicons dashicons-arrow-right-alt2"></span><a href="https://www.dareboost.com/en/home" target="_blank"><?php _e('Dareboost: Test, analyze and optimize your website','wp-seopress'); ?></a><span class="dashicons dashicons-external"></span></li>
899
- <li><span class="dashicons dashicons-arrow-right-alt2"></span><a href="https://ga-dev-tools.appspot.com/campaign-url-builder/" target="_blank"><?php _e('Google Campaign URL Builder tool','wp-seopress'); ?></a><span class="dashicons dashicons-external"></span></li>
 
 
 
900
  </ul>
901
  </div>
902
  </div>
903
  </div>
904
- <?php } ?>
1
  <?php
2
+ // To prevent calling the plugin directly
3
+ if ( ! function_exists('add_action')) {
4
+ echo 'Please don&rsquo;t call the plugin directly. Thanks :)';
5
+ exit;
6
+ }
7
+ //Notifications Center
8
+ function seopress_advanced_appearance_notifications_option() {
9
+ $seopress_advanced_appearance_notifications_option = get_option('seopress_advanced_option_name');
10
+ if ( ! empty($seopress_advanced_appearance_notifications_option)) {
11
+ foreach ($seopress_advanced_appearance_notifications_option as $key => $seopress_advanced_appearance_notifications_value) {
12
+ $options[$key] = $seopress_advanced_appearance_notifications_value;
13
+ }
14
+ if (isset($seopress_advanced_appearance_notifications_option['seopress_advanced_appearance_notifications'])) {
15
+ return $seopress_advanced_appearance_notifications_option['seopress_advanced_appearance_notifications'];
16
+ }
17
+ }
18
+ }
19
+ //SEO Tools
20
+ function seopress_advanced_appearance_seo_tools_option() {
21
+ $seopress_advanced_appearance_seo_tools_option = get_option('seopress_advanced_option_name');
22
+ if ( ! empty($seopress_advanced_appearance_seo_tools_option)) {
23
+ foreach ($seopress_advanced_appearance_seo_tools_option as $key => $seopress_advanced_appearance_seo_tools_value) {
24
+ $options[$key] = $seopress_advanced_appearance_seo_tools_value;
25
+ }
26
+ if (isset($seopress_advanced_appearance_seo_tools_option['seopress_advanced_appearance_seo_tools'])) {
27
+ return $seopress_advanced_appearance_seo_tools_option['seopress_advanced_appearance_seo_tools'];
28
+ }
29
+ }
30
+ }
31
+ //Useful links
32
+ function seopress_advanced_appearance_useful_links_option() {
33
+ $seopress_advanced_appearance_useful_links_option = get_option('seopress_advanced_option_name');
34
+ if ( ! empty($seopress_advanced_appearance_useful_links_option)) {
35
+ foreach ($seopress_advanced_appearance_useful_links_option as $key => $seopress_advanced_appearance_useful_links_value) {
36
+ $options[$key] = $seopress_advanced_appearance_useful_links_value;
37
+ }
38
+ if (isset($seopress_advanced_appearance_useful_links_option['seopress_advanced_appearance_useful_links'])) {
39
+ return $seopress_advanced_appearance_useful_links_option['seopress_advanced_appearance_useful_links'];
40
+ }
41
+ }
42
+ }
43
+ ?>
44
 
45
  <?php if (defined('SEOPRESS_WL_ADMIN_HEADER') && SEOPRESS_WL_ADMIN_HEADER === false) {
46
+ //do nothing
47
  } else { ?>
48
  <div id="seopress-admin-tabs" class="wrap">
49
+ <?php
50
+ if (is_plugin_active('wp-seopress-pro/seopress-pro.php')) {
51
+ $dashboard_settings_tabs = [
52
+ 'tab_seopress_notifications' => __('Notifications Center', 'wp-seopress'),
53
+ 'tab_seopress_seo_tools' => __('SEO Tools', 'wp-seopress'),
54
+ 'tab_seopress_links' => __('Useful links', 'wp-seopress'),
55
+ ];
56
+ } else {
57
+ $dashboard_settings_tabs = [
58
+ 'tab_seopress_notifications' => __('Notifications Center', 'wp-seopress'),
59
+ 'tab_seopress_links' => __('Useful links', 'wp-seopress'),
60
+ ];
61
+ }
62
 
63
+ if ('' != seopress_advanced_appearance_notifications_option()) {
64
+ unset($dashboard_settings_tabs['tab_seopress_notifications']);
65
+ }
66
+ if (is_plugin_active('wp-seopress-pro/seopress-pro.php')) {
67
+ if ('' != seopress_advanced_appearance_seo_tools_option()) {
68
+ unset($dashboard_settings_tabs['tab_seopress_seo_tools']);
69
+ }
70
+ }
71
+ if ('' != seopress_advanced_appearance_useful_links_option()) {
72
+ unset($dashboard_settings_tabs['tab_seopress_links']);
73
+ }
74
+
75
+ echo '<div class="nav-tab-wrapper">';
76
+ foreach ($dashboard_settings_tabs as $tab_key => $tab_caption) {
77
+ echo '<a id="' . $tab_key . '-tab" class="nav-tab" href="?page=seopress-option#tab=' . $tab_key . '">' . $tab_caption . '</a>';
78
+ }
79
+ echo '</div>';
80
+ ?>
81
 
82
  <div class="wrap-seopress-tab-content">
83
+ <?php if ('1' != seopress_advanced_appearance_notifications_option()) { ?>
84
+ <div id="tab_seopress_notifications" class="seopress-tab <?php if ('tab_seopress_notifications' == $current_tab) {
85
+ echo 'active';
86
+ } ?>">
87
  <div id="seopress-notifications-center">
88
+ <?php
89
+ function seopress_get_hidden_notices_wizard_option() {
90
+ $seopress_get_hidden_notices_wizard_option = get_option('seopress_notices');
91
+ if ( ! empty($seopress_get_hidden_notices_wizard_option)) {
92
+ foreach ($seopress_get_hidden_notices_wizard_option as $key => $seopress_get_hidden_notices_wizard_value) {
93
+ $options[$key] = $seopress_get_hidden_notices_wizard_value;
94
+ }
95
+ if (isset($seopress_get_hidden_notices_wizard_option['notice-wizard'])) {
96
+ return $seopress_get_hidden_notices_wizard_option['notice-wizard'];
97
+ }
98
+ }
99
+ }
100
+ if ('1' != seopress_get_hidden_notices_wizard_option()) {
101
+ $args = [
102
+ 'id' => 'notice-wizard',
103
+ 'title' => __('Configure SEOPress in a few minutes with our installation wizard', 'wp-seopress'),
104
+ 'desc' => __('The best way to quickly setup SEOPress on your site.', 'wp-seopress'),
105
+ 'impact' => [
106
+ 'info' => __('Wizard', 'wp-seopress'),
107
+ ],
108
+ 'link' => [
109
+ 'en' => admin_url('admin.php?page=seopress-setup'),
110
+ 'title' => __('Start the wizard', 'wp-seopress'),
111
+ 'external' => true,
112
+ ],
113
+ 'icon' => 'dashicons-admin-tools',
114
+ 'deleteable' => true,
115
+ ];
116
+ seopress_notification($args);
117
+ }
118
+ if (is_plugin_active('wp-seopress-insights/seopress-insights.php')) {
119
+ function seopress_get_hidden_notices_insights_wizard_option() {
120
+ $seopress_get_hidden_notices_insights_wizard_option = get_option('seopress_notices');
121
+ if ( ! empty($seopress_get_hidden_notices_insights_wizard_option)) {
122
+ foreach ($seopress_get_hidden_notices_insights_wizard_option as $key => $seopress_get_hidden_notices_insights_wizard_value) {
123
+ $options[$key] = $seopress_get_hidden_notices_insights_wizard_value;
124
+ }
125
+ if (isset($seopress_get_hidden_notices_insights_wizard_option['notice-insights-wizard'])) {
126
+ return $seopress_get_hidden_notices_insights_wizard_option['notice-insights-wizard'];
127
+ }
128
+ }
129
+ }
130
+ if ('1' != seopress_get_hidden_notices_insights_wizard_option()) {
131
+ $args = [
132
+ 'id' => 'notice-insights-wizard',
133
+ 'title' => __('Configure SEOPress Insights in a few minutes with our installation wizard', 'wp-seopress'),
134
+ 'desc' => __('Track your keywords positions and backlinks directly on your WordPress site.', 'wp-seopress'),
135
+ 'impact' => [
136
+ 'info' => __('Wizard', 'wp-seopress'),
137
+ ],
138
+ 'link' => [
139
+ 'en' => admin_url('admin.php?page=seopress-insights-setup'),
140
+ 'title' => __('Start the wizard', 'wp-seopress'),
141
+ 'external' => true,
142
+ ],
143
+ 'icon' => 'dashicons-admin-tools',
144
+ 'deleteable' => true,
145
+ ];
146
+ seopress_notification($args);
147
+ }
148
+ }
149
+ //DIVI SEO options conflict
150
+ $theme = wp_get_theme();
151
+ if ('Divi' == $theme->template || 'Divi' == $theme->parent_theme) {
152
+ $divi_options = get_option('et_divi');
153
+ if ( ! empty($divi_options)) {
154
+ if ('on' == $divi_options['divi_seo_home_title'] ||
155
+ 'on' == $divi_options['divi_seo_home_description'] ||
156
+ 'on' == $divi_options['divi_seo_home_keywords'] ||
157
+ 'on' == $divi_options['divi_seo_home_canonical'] ||
158
+ 'on' == $divi_options['divi_seo_single_title'] ||
159
+ 'on' == $divi_options['divi_seo_single_description'] ||
160
+ 'on' == $divi_options['divi_seo_single_keywords'] ||
161
+ 'on' == $divi_options['divi_seo_single_canonical'] ||
162
+ 'on' == $divi_options['divi_seo_index_canonical'] ||
163
+ 'on' == $divi_options['divi_seo_index_description']
164
+ ) {
165
+ $args = [
166
+ 'id' => 'notice-divi-seo',
167
+ 'title' => __('We noticed that some SEO DIVI options are enabled!', 'wp-seopress'),
168
+ 'desc' => __('To avoid any SEO conflicts, please disable every SEO options from <strong>DIVI theme options page, SEO tab</strong>.', 'wp-seopress'),
169
+ 'impact' => [
170
+ 'high' => __('High impact', 'wp-seopress'),
171
+ ],
172
+ 'link' => [
173
+ 'en' => admin_url('admin.php?page=et_divi_options#seo-1'),
174
+ 'title' => __('Fix this!', 'wp-seopress'),
175
+ 'external' => false,
176
+ ],
177
+ 'icon' => 'dashicons-admin-plugins',
178
+ 'deleteable' => false,
179
+ ];
180
+ seopress_notification($args);
181
+ }
182
+ }
183
+ }
184
+ if ('/' != substr(get_option('permalink_structure'), -1) && '' == seopress_advanced_advanced_trailingslash_option()) {
185
+ $args = [
186
+ 'id' => 'notice-permalinks',
187
+ 'title' => __('Your permalinks doesn\'t have a trailingslash', 'wp-seopress'),
188
+ 'desc' => __('To avoid any SEO issues, we recommend you to activate the "<strong>Disable trailing slash for metas</strong>" option from our <strong>Advanced settings page</strong>. Do not forget to clear your cache if necessary.', 'wp-seopress'),
189
+ 'impact' => [
190
+ 'high' => __('High impact', 'wp-seopress'),
191
+ ],
192
+ 'link' => [
193
+ 'en' => admin_url('admin.php?page=seopress-advanced#tab=tab_seopress_advanced_advanced'),
194
+ 'title' => __('Fix this!', 'wp-seopress'),
195
+ 'external' => false,
196
+ ],
197
+ 'icon' => 'dashicons-admin-links',
198
+ 'deleteable' => false,
199
+ ];
200
+ seopress_notification($args);
201
+ }
202
+ if ('/' == substr(get_option('permalink_structure'), -1) && '1' == seopress_advanced_advanced_trailingslash_option()) {
203
+ $args = [
204
+ 'id' => 'notice-permalinks',
205
+ 'title' => __('Your permalinks have a trailingslash', 'wp-seopress'),
206
+ 'desc' => __('To avoid any SEO issues, we recommend you to de-activate the "<strong>Disable trailing slash for metas</strong>" option from our <strong>Advanced settings page</strong>. Do not forget to clear your cache if necessary.', 'wp-seopress'),
207
+ 'impact' => [
208
+ 'high' => __('High impact', 'wp-seopress'),
209
+ ],
210
+ 'link' => [
211
+ 'en' => admin_url('admin.php?page=seopress-advanced#tab=tab_seopress_advanced_advanced'),
212
+ 'title' => __('Fix this!', 'wp-seopress'),
213
+ 'external' => false,
214
+ ],
215
+ 'icon' => 'dashicons-admin-links',
216
+ 'deleteable' => false,
217
+ ];
218
+ seopress_notification($args);
219
+ }
220
+ if (is_plugin_active('td-composer/td-composer.php')) {
221
+ function seopress_get_hidden_notices_tagdiv_option() {
222
+ $seopress_get_hidden_notices_tagdiv_option = get_option('seopress_notices');
223
+ if ( ! empty($seopress_get_hidden_notices_tagdiv_option)) {
224
+ foreach ($seopress_get_hidden_notices_tagdiv_option as $key => $seopress_get_hidden_notices_tagdiv_value) {
225
+ $options[$key] = $seopress_get_hidden_notices_tagdiv_value;
226
+ }
227
+ if (isset($seopress_get_hidden_notices_tagdiv_option['notice-tagdiv'])) {
228
+ return $seopress_get_hidden_notices_tagdiv_option['notice-tagdiv'];
229
+ }
230
+ }
231
+ }
232
+ if ('1' != seopress_get_hidden_notices_tagdiv_option()) {
233
+ $args = [
234
+ 'id' => 'notice-tagdiv',
235
+ 'title' => __('TagDiv Composer plugin doesn\'t use <strong>add_theme_support(\'title-tag\');</strong>', 'wp-seopress'),
236
+ 'desc' => __('Fix this compatibility issue to allow SEOPress generates the correct meta titles.', 'wp-seopress'),
237
+ 'impact' => [
238
+ 'high' => __('High impact', 'wp-seopress'),
239
+ ],
240
+ 'link' => [
241
+ 'fr' => 'https://www.seopress.org/fr/support/guides/corriger-erreur-compatibilite-extension-tagdiv-composer-newspaper/?utm_source=plugin&utm_medium=wp-admin&utm_campaign=seopress',
242
+ 'en' => 'https://www.seopress.org/support/guides/fix-compatibility-issue-tagdiv-composer-plugin-newspaper-theme/?utm_source=plugin&utm_medium=wp-admin&utm_campaign=seopress',
243
+ 'title' => __('Fix this!', 'wp-seopress'),
244
+ 'external' => true,
245
+ ],
246
+ 'icon' => 'dashicons-admin-customizer',
247
+ 'deleteable' => true,
248
+ ];
249
+ seopress_notification($args);
250
+ }
251
+ }
252
+ if ('1' != get_theme_support('title-tag')) {
253
+ function seopress_get_hidden_notices_title_tag_option() {
254
+ $seopress_get_hidden_notices_title_tag_option = get_option('seopress_notices');
255
+ if ( ! empty($seopress_get_hidden_notices_title_tag_option)) {
256
+ foreach ($seopress_get_hidden_notices_title_tag_option as $key => $seopress_get_hidden_notices_title_tag_value) {
257
+ $options[$key] = $seopress_get_hidden_notices_title_tag_value;
258
+ }
259
+ if (isset($seopress_get_hidden_notices_title_tag_option['notice-title-tag'])) {
260
+ return $seopress_get_hidden_notices_title_tag_option['notice-title-tag'];
261
+ }
262
+ }
263
+ }
264
+ if ('1' != seopress_get_hidden_notices_title_tag_option()) {
265
+ $args = [
266
+ 'id' => 'notice-title-tag',
267
+ 'title' => __('Your theme doesn\'t use <strong>add_theme_support(\'title-tag\');</strong>', 'wp-seopress'),
268
+ 'desc' => __('This error indicates that your theme uses a deprecated function to generate the title tag of your pages. SEOPress will not be able to generate your custom title tags if this error is not fixed.', 'wp-seopress'),
269
+ 'impact' => [
270
+ 'high' => __('High impact', 'wp-seopress'),
271
+ ],
272
+ 'link' => [
273
+ 'fr' => 'https://www.seopress.org/fr/support/guides/resoudre-add_theme_support-manquant-dans-votre-theme/?utm_source=plugin&utm_medium=wp-admin&utm_campaign=seopress',
274
+ 'en' => 'https://www.seopress.org/support/guides/fixing-missing-add_theme_support-in-your-theme/?utm_source=plugin&utm_medium=wp-admin&utm_campaign=seopress',
275
+ 'title' => __('Learn more', 'wp-seopress'),
276
+ 'external' => true,
277
+ ],
278
+ 'icon' => 'dashicons-admin-customizer',
279
+ 'deleteable' => false,
280
+ ];
281
+ seopress_notification($args);
282
+ }
283
+ }
284
+ $seo_plugins = [
285
+ 'wordpress-seo/wp-seo.php' => 'Yoast SEO',
286
+ 'wordpress-seo-premium/wp-seo-premium.php' => 'Yoast SEO Premium',
287
+ 'all-in-one-seo-pack/all_in_one_seo_pack.php' => 'All In One SEO',
288
+ 'autodescription/autodescription.php' => 'The SEO Framework',
289
+ 'squirrly-seo/squirrly.php' => 'Squirrly SEO',
290
+ 'seo-by-rank-math/rank-math.php' => 'Rank Math',
291
+ 'seo-ultimate/seo-ultimate.php' => 'SEO Ultimate',
292
+ 'wp-meta-seo/wp-meta-seo.php' => 'WP Meta SEO',
293
+ 'premium-seo-pack/plugin.php' => 'Premium SEO Pack',
294
+ 'wpseo/wpseo.php' => 'wpSEO',
295
+ ];
296
+
297
+ foreach ($seo_plugins as $key => $value) {
298
+ if (is_plugin_active($key)) {
299
+ $args = [
300
+ 'id' => 'notice-seo-plugins',
301
+ /* translators: %s name of a SEO plugin (eg: Yoast SEO) */
302
+ 'title' => sprintf(__('We noticed that you use <strong>%s</strong> plugin.', 'wp-seopress'), $value),
303
+ 'desc' => __('Do you want to migrate all your metadata to SEOPress? Do not use multiple SEO plugins at once to avoid conflicts!', 'wp-seopress'),
304
+ 'impact' => [
305
+ 'high' => __('High impact', 'wp-seopress'),
306
+ ],
307
+ 'link' => [
308
+ 'en' => admin_url('admin.php?page=seopress-import-export'),
309
+ 'title' => __('Migrate!', 'wp-seopress'),
310
+ 'external' => false,
311
+ ],
312
+ 'icon' => 'dashicons-admin-plugins',
313
+ 'deleteable' => false,
314
+ ];
315
+ seopress_notification($args);
316
+ }
317
+ }
318
+ if (is_plugin_active('wp-seopress-pro/seopress-pro.php')) {
319
+ if (1 == seopress_404_cleaning_option() && ! wp_next_scheduled('seopress_404_cron_cleaning')) {
320
+ $args = [
321
+ 'id' => 'notice-title-tag',
322
+ 'title' => __('You have enabled 404 cleaning BUT the scheduled task is not running.', 'wp-seopress'),
323
+ 'desc' => __('To solve this, please disable and re-enable SEOPress PRO. No data will be lost.', 'wp-seopress'),
324
+ 'icon' => 'dashicons-clock',
325
+ 'deleteable' => false,
326
+ ];
327
+ seopress_notification($args);
328
+ }
329
+ }
330
+ $pbuilder_plugins = [
331
+ 'oxygen/functions.php' => 'Oxygen',
332
+ 'js_composer/js_composer.php' => 'WP Bakery',
333
+ ];
334
+ foreach ($pbuilder_plugins as $key => $value) {
335
+ if (is_plugin_active($key)) {
336
+ function seopress_get_hidden_notices_pbuilders_option() {
337
+ $seopress_get_hidden_notices_pbuilders_option = get_option('seopress_notices');
338
+ if ( ! empty($seopress_get_hidden_notices_pbuilders_option)) {
339
+ foreach ($seopress_get_hidden_notices_pbuilders_option as $key => $seopress_get_hidden_notices_pbuilders_value) {
340
+ $options[$key] = $seopress_get_hidden_notices_pbuilders_value;
341
+ }
342
+ if (isset($seopress_get_hidden_notices_pbuilders_option['notice-page-builders'])) {
343
+ return $seopress_get_hidden_notices_pbuilders_option['notice-page-builders'];
344
+ }
345
+ }
346
+ }
347
+ if ('1' != seopress_get_hidden_notices_pbuilders_option()) {
348
+ $args = [
349
+ 'id' => 'notice-page-builders',
350
+ /* translators: %s name of a page builder plugin (eg: Oxygen) */
351
+ 'title' => sprintf(__('Generate automatic meta description for <strong>%s</strong> plugin.', 'wp-seopress'), $value),
352
+ 'desc' => __('Your page builder is using shortcodes to save its data. To automatically generate your meta description based on your post content, you will have to add some hooks to your functions.php.', 'wp-seopress'),
353
+ 'impact' => [
354
+ 'medium' => __('Medium impact', 'wp-seopress'),
355
+ ],
356
+ 'link' => [
357
+ 'en' => 'https://www.seopress.org/support/guides/generate-automatic-meta-description-from-page-builders/',
358
+ 'fr' => 'https://www.seopress.org/fr/support/guides/generez-automatiquement-meta-descriptions-divi-oxygen-builder/',
359
+ 'title' => __('Learn more', 'wp-seopress'),
360
+ 'external' => true,
361
+ ],
362
+ 'icon' => 'dashicons-admin-tools',
363
+ 'deleteable' => true,
364
+ ];
365
+ seopress_notification($args);
366
+ }
367
+ break;
368
+ }
369
+ }
370
+ $theme = wp_get_theme();
371
+ $pbuilder_themes = [
372
+ 'Divi' => 'Divi',
373
+ 'enfold' => 'Enfold (Avia Layout Builder)',
374
+ ];
375
+ foreach ($pbuilder_themes as $key => $value) {
376
+ if ($key == $theme->template || $key == $theme->parent_theme) {
377
+ function seopress_get_hidden_notices_themes_option() {
378
+ $seopress_get_hidden_notices_themes_option = get_option('seopress_notices');
379
+ if ( ! empty($seopress_get_hidden_notices_themes_option)) {
380
+ foreach ($seopress_get_hidden_notices_themes_option as $key => $seopress_get_hidden_notices_themes_value) {
381
+ $options[$key] = $seopress_get_hidden_notices_themes_value;
382
+ }
383
+ if (isset($seopress_get_hidden_notices_themes_option['notice-themes'])) {
384
+ return $seopress_get_hidden_notices_themes_option['notice-themes'];
385
+ }
386
+ }
387
+ }
388
+ if ('1' != seopress_get_hidden_notices_themes_option()) {
389
+ $args = [
390
+ 'id' => 'notice-themes',
391
+ /* translators: %s name of a WP theme (eg: Enfold) */
392
+ 'title' => sprintf(__('Generate automatic meta description for <strong>%s</strong> theme.', 'wp-seopress'), $value),
393
+ 'desc' => __('Your theme is using shortcodes to save its data. To automatically generate your meta description based on your post content, you will have to add some hooks to your functions.php.', 'wp-seopress'),
394
+ 'impact' => [
395
+ 'medium' => __('Medium impact', 'wp-seopress'),
396
+ ],
397
+ 'link' => [
398
+ 'en' => 'https://www.seopress.org/support/guides/generate-automatic-meta-description-from-page-builders/',
399
+ 'fr' => 'https://www.seopress.org/fr/support/guides/generez-automatiquement-meta-descriptions-divi-oxygen-builder/',
400
+ 'title' => __('Learn more', 'wp-seopress'),
401
+ 'external' => true,
402
+ ],
403
+ 'icon' => 'dashicons-admin-tools',
404
+ 'deleteable' => true,
405
+ ];
406
+ seopress_notification($args);
407
+ }
408
+ break;
409
+ }
410
+ }
411
+ //Enfold theme
412
+ $avia_options_enfold = get_option('avia_options_enfold');
413
+ $avia_options_enfold_child = get_option('avia_options_enfold_child');
414
+ $theme = wp_get_theme();
415
+ if ('enfold' == $theme->template || 'enfold' == $theme->parent_theme) {
416
+ if ('plugin' != $avia_options_enfold['avia']['seo_robots'] || 'plugin' != $avia_options_enfold_child['avia']['seo_robots']) {
417
+ function seopress_get_hidden_notices_enfold_option() {
418
+ $seopress_get_hidden_notices_enfold_option = get_option('seopress_notices');
419
+ if ( ! empty($seopress_get_hidden_notices_enfold_option)) {
420
+ foreach ($seopress_get_hidden_notices_enfold_option as $key => $seopress_get_hidden_notices_enfold_value) {
421
+ $options[$key] = $seopress_get_hidden_notices_enfold_value;
422
+ }
423
+ if (isset($seopress_get_hidden_notices_enfold_option['notice-enfold'])) {
424
+ return $seopress_get_hidden_notices_enfold_option['notice-enfold'];
425
+ }
426
+ }
427
+ }
428
+ if ('1' != seopress_get_hidden_notices_enfold_option()) {
429
+ $args = [
430
+ 'id' => 'notice-enfold',
431
+ 'title' => __('Enfold theme is not correctly setup for SEO!', 'wp-seopress'),
432
+ 'desc' => __('You must disable "Meta tag robots" option from Enfold settings (SEO Support tab) to avoid any SEO issues.', 'wp-seopress'),
433
+ 'impact' => [
434
+ 'low' => __('High impact', 'wp-seopress'),
435
+ ],
436
+ 'link' => [
437
+ 'en' => admin_url('admin.php?avia_welcome=true&page=avia'),
438
+ 'title' => __('Fix this!', 'wp-seopress'),
439
+ 'external' => true,
440
+ ],
441
+ 'icon' => 'dashicons-admin-tools',
442
+ 'deleteable' => true,
443
+ ];
444
+ seopress_notification($args);
445
+ }
446
+ }
447
+ }
448
+ if ( ! is_ssl()) {
449
+ function seopress_get_hidden_notices_ssl_option() {
450
+ $seopress_get_hidden_notices_ssl_option = get_option('seopress_notices');
451
+ if ( ! empty($seopress_get_hidden_notices_ssl_option)) {
452
+ foreach ($seopress_get_hidden_notices_ssl_option as $key => $seopress_get_hidden_notices_ssl_value) {
453
+ $options[$key] = $seopress_get_hidden_notices_ssl_value;
454
+ }
455
+ if (isset($seopress_get_hidden_notices_ssl_option['notice-ssl'])) {
456
+ return $seopress_get_hidden_notices_ssl_option['notice-ssl'];
457
+ }
458
+ }
459
+ }
460
+ if ('1' != seopress_get_hidden_notices_ssl_option()) {
461
+ $args = [
462
+ 'id' => 'notice-ssl',
463
+ 'title' => __('Your site doesn\'t use an SSL certificate!', 'wp-seopress'),
464
+ 'desc' => __('Https is considered by Google as a positive signal for the ranking of your site. It also reassures your visitors for data security, and improves trust.', 'wp-seopress') . ' <a href="https://webmasters.googleblog.com/2014/08/https-as-ranking-signal.html" target="_blank">' . __('Learn more', 'wp-seopress') . '</a>',
465
+ 'impact' => [
466
+ 'low' => __('Low impact', 'wp-seopress'),
467
+ ],
468
+ 'link' => [
469
+ 'en' => 'https://www.seopress.org/go/namecheap',
470
+ 'title' => __('Buy an SSL!', 'wp-seopress'),
471
+ 'external' => true,
472
+ ],
473
+ 'icon' => 'dashicons-unlock',
474
+ 'deleteable' => true,
475
+ ];
476
+ seopress_notification($args);
477
+ }
478
+ }
479
+ if (function_exists('extension_loaded') && ! extension_loaded('dom')) {
480
+ $args = [
481
+ 'id' => 'notice-ssl-alert',
482
+ 'title' => __('PHP module "DOM" is missing on your server.', 'wp-seopress'),
483
+ 'desc' => __('This PHP module, installed by default with PHP, is required by many plugins including SEOPress. Please contact your host as soon as possible to solve this.', 'wp-seopress'),
484
+ 'impact' => [
485
+ 'high' => __('High impact', 'wp-seopress'),
486
+ ],
487
+ 'link' => [
488
+ 'fr' => 'https://www.seopress.org/fr/support/guides/debutez-seopress/',
489
+ 'en' => 'https://www.seopress.org/support/guides/get-started-seopress/',
490
+ 'title' => __('Learn more', 'wp-seopress'),
491
+ 'external' => true,
492
+ ],
493
+ 'deleteable' => true,
494
+ ];
495
+ seopress_notification($args);
496
+ }
497
+ if ( ! function_exists('seopress_titles_noindex_option')) {
498
+ function seopress_titles_noindex_option() {
499
+ $seopress_titles_noindex_option = get_option('seopress_titles_option_name');
500
+ if ( ! empty($seopress_titles_noindex_option)) {
501
+ foreach ($seopress_titles_noindex_option as $key => $seopress_titles_noindex_value) {
502
+ $options[$key] = $seopress_titles_noindex_value;
503
+ }
504
+ if (isset($seopress_titles_noindex_option['seopress_titles_noindex'])) {
505
+ return $seopress_titles_noindex_option['seopress_titles_noindex'];
506
+ }
507
+ }
508
+ }
509
+ }
510
+ function seopress_get_hidden_notices_noindex_option() {
511
+ $seopress_get_hidden_notices_noindex_option = get_option('seopress_notices');
512
+ if ( ! empty($seopress_get_hidden_notices_noindex_option)) {
513
+ foreach ($seopress_get_hidden_notices_noindex_option as $key => $seopress_get_hidden_notices_noindex_value) {
514
+ $options[$key] = $seopress_get_hidden_notices_noindex_value;
515
+ }
516
+ if (isset($seopress_get_hidden_notices_noindex_option['notice-noindex'])) {
517
+ return $seopress_get_hidden_notices_noindex_option['notice-noindex'];
518
+ }
519
+ }
520
+ }
521
+ if ('1' != seopress_get_hidden_notices_noindex_option()) {
522
+ if ('1' == seopress_titles_noindex_option() || '1' != get_option('blog_public')) {
523
+ $args = [
524
+ 'id' => 'notice-noindex',
525
+ 'title' => __('Your site is not visible to Search Engines!', 'wp-seopress'),
526
+ 'desc' => __('You have activated the blocking of the indexing of your site. If your site is under development, this is probably normal. Otherwise, check your settings. Delete this notification using the cross on the right if you are not concerned.', 'wp-seopress'),
527
+ 'impact' => [
528
+ 'high' => __('High impact', 'wp-seopress'),
529
+ ],
530
+ 'link' => [
531
+ 'en' => admin_url('options-reading.php'),
532
+ 'title' => __('Fix this!', 'wp-seopress'),
533
+ 'external' => false,
534
+ ],
535
+ 'icon' => 'dashicons-warning',
536
+ 'deleteable' => true,
537
+ ];
538
+ seopress_notification($args);
539
+ }
540
+ }
541
+ if ('' == get_option('blogname')) {
542
+ $args = [
543
+ 'id' => 'notice-title-empty',
544
+ 'title' => __('Your site title is empty!', 'wp-seopress'),
545
+ 'desc' => __('Your Site Title is used by WordPress, your theme and your plugins including SEOPress. It is an essential component in the generation of title tags, but not only. Enter one!', 'wp-seopress'),
546
+ 'impact' => [
547
+ 'high' => __('High impact', 'wp-seopress'),
548
+ ],
549
+ 'link' => [
550
+ 'en' => admin_url('options-general.php'),
551
+ 'title' => __('Fix this!', 'wp-seopress'),
552
+ 'external' => false,
553
+ ],
554
+ 'deleteable' => false,
555
+ ];
556
+ seopress_notification($args);
557
+ }
558
+ if ('' == get_option('permalink_structure')) {
559
+ $args = [
560
+ 'id' => 'notice-permalinks',
561
+ 'title' => __('Your permalinks are not SEO Friendly! Enable pretty permalinks to fix this.', 'wp-seopress'),
562
+ 'desc' => __('Why is this important? Showing only the summary of each article significantly reduces the theft of your content by third party sites. Not to mention, the increase in your traffic, your advertising revenue, conversions...', 'wp-seopress'),
563
+ 'impact' => [
564
+ 'high' => __('High impact', 'wp-seopress'),
565
+ ],
566
+ 'link' => [
567
+ 'en' => admin_url('options-permalink.php'),
568
+ 'title' => __('Fix this!', 'wp-seopress'),
569
+ 'external' => false,
570
+ ],
571
+ 'icon' => 'dashicons-admin-links',
572
+ 'deleteable' => false,
573
+ ];
574
+ seopress_notification($args);
575
+ }
576
+ if ('0' == get_option('rss_use_excerpt')) {
577
+ function seopress_get_hidden_notices_rss_use_excerpt_option() {
578
+ $seopress_get_hidden_notices_rss_use_excerpt_option = get_option('seopress_notices');
579
+ if ( ! empty($seopress_get_hidden_notices_rss_use_excerpt_option)) {
580
+ foreach ($seopress_get_hidden_notices_rss_use_excerpt_option as $key => $seopress_get_hidden_notices_rss_use_excerpt_value) {
581
+ $options[$key] = $seopress_get_hidden_notices_rss_use_excerpt_value;
582
+ }
583
+ if (isset($seopress_get_hidden_notices_rss_use_excerpt_option['notice-rss-use-excerpt'])) {
584
+ return $seopress_get_hidden_notices_rss_use_excerpt_option['notice-rss-use-excerpt'];
585
+ }
586
+ }
587
+ }
588
+ if ('1' != seopress_get_hidden_notices_rss_use_excerpt_option()) {
589
+ $args = [
590
+ 'id' => 'notice-rss-use-excerpt',
591
+ 'title' => __('Your RSS feed shows full text!', 'wp-seopress'),
592
+ 'desc' => __('Why is this important? Showing only the summary of each article significantly reduces the theft of your content by third party sites. Not to mention, the increase in your traffic, your advertising revenue, conversions...', 'wp-seopress'),
593
+ 'impact' => [
594
+ 'medium' => __('Medium impact', 'wp-seopress'),
595
+ ],
596
+ 'link' => [
597
+ 'en' => admin_url('options-reading.php'),
598
+ 'title' => __('Fix this!', 'wp-seopress'),
599
+ 'external' => false,
600
+ ],
601
+ 'icon' => 'dashicons-rss',
602
+ 'deleteable' => true,
603
+ ];
604
+ seopress_notification($args);
605
+ }
606
+ }
607
 
608
+ function seopress_get_hidden_notices_review_option() {
609
+ $seopress_get_hidden_notices_review_option = get_option('seopress_notices');
610
+ if ( ! empty($seopress_get_hidden_notices_review_option)) {
611
+ foreach ($seopress_get_hidden_notices_review_option as $key => $seopress_get_hidden_notices_review_value) {
612
+ $options[$key] = $seopress_get_hidden_notices_review_value;
613
+ }
614
+ if (isset($seopress_get_hidden_notices_review_option['notice-review'])) {
615
+ return $seopress_get_hidden_notices_review_option['notice-review'];
616
+ }
617
+ }
618
+ }
619
+ if ('1' != seopress_get_hidden_notices_review_option()) {
620
+ $args = [
621
+ 'id' => 'notice-review',
622
+ 'title' => __('You like SEOPress? Please help us by rating us 5 stars!', 'wp-seopress'),
623
+ 'desc' => __('Support the development and improvement of the plugin by taking 15 seconds of your time to leave us a user review on the official WordPress plugins repository. Thank you!', 'wp-seopress'),
624
+ 'impact' => [
625
+ 'info' => __('Information', 'wp-seopress'),
626
+ ],
627
+ 'link' => [
628
+ 'en' => 'https://wordpress.org/support/view/plugin-reviews/wp-seopress?rate=5#postform',
629
+ 'title' => __('Rate us!', 'wp-seopress'),
630
+ 'external' => true,
631
+ ],
632
+ 'icon' => 'dashicons-thumbs-up',
633
+ 'deleteable' => true,
634
+ ];
635
+ seopress_notification($args);
636
+ }
637
+ if ('1' == get_option('page_comments')) {
638
+ function seopress_get_hidden_notices_divide_comments_option() {
639
+ $seopress_get_hidden_notices_divide_comments_option = get_option('seopress_notices');
640
+ if ( ! empty($seopress_get_hidden_notices_divide_comments_option)) {
641
+ foreach ($seopress_get_hidden_notices_divide_comments_option as $key => $seopress_get_hidden_notices_divide_comments_value) {
642
+ $options[$key] = $seopress_get_hidden_notices_divide_comments_value;
643
+ }
644
+ if (isset($seopress_get_hidden_notices_divide_comments_option['notice-divide-comments'])) {
645
+ return $seopress_get_hidden_notices_divide_comments_option['notice-divide-comments'];
646
+ }
647
+ }
648
+ }
649
+ if ('1' != seopress_get_hidden_notices_divide_comments_option()) {
650
+ $args = [
651
+ 'id' => 'notice-divide-comments',
652
+ 'title' => __('Break comments into pages is ON!', 'wp-seopress'),
653
+ 'desc' => __('Enabling this option will create duplicate content for each article beyond x comments. This can have a disastrous effect by creating a large number of poor quality pages, and slowing the Google bot unnecessarily, so your ranking in search results.', 'wp-seopress'),
654
+ 'impact' => [
655
+ 'high' => __('High impact', 'wp-seopress'),
656
+ ],
657
+ 'link' => [
658
+ 'en' => admin_url('options-discussion.php'),
659
+ 'title' => __('Disable this!', 'wp-seopress'),
660
+ 'external' => false,
661
+ ],
662
+ 'icon' => 'dashicons-admin-comments',
663
+ 'deleteable' => true,
664
+ ];
665
+ seopress_notification($args);
666
+ }
667
+ }
668
+ if (get_option('posts_per_page') < '16') {
669
+ function seopress_get_hidden_notices_posts_number_option() {
670
+ $seopress_get_hidden_notices_posts_number_option = get_option('seopress_notices');
671
+ if ( ! empty($seopress_get_hidden_notices_posts_number_option)) {
672
+ foreach ($seopress_get_hidden_notices_posts_number_option as $key => $seopress_get_hidden_notices_posts_number_value) {
673
+ $options[$key] = $seopress_get_hidden_notices_posts_number_value;
674
+ }
675
+ if (isset($seopress_get_hidden_notices_posts_number_option['notice-posts-number'])) {
676
+ return $seopress_get_hidden_notices_posts_number_option['notice-posts-number'];
677
+ }
678
+ }
679
+ }
680
+ if ('1' != seopress_get_hidden_notices_posts_number_option()) {
681
+ $args = [
682
+ 'id' => 'notice-posts-number',
683
+ 'title' => __('Display more posts per page on homepage and archives', 'wp-seopress'),
684
+ 'desc' => __('To reduce the number pages search engines have to crawl to find all your articles, it is recommended displaying more posts per page. This should not be a problem for your users. Using mobile, we prefer to scroll down rather than clicking on next page links.', 'wp-seopress'),
685
+ 'impact' => [
686
+ 'medium' => __('Medium impact', 'wp-seopress'),
687
+ ],
688
+ 'link' => [
689
+ 'en' => admin_url('options-reading.php'),
690
+ 'title' => __('Fix this!', 'wp-seopress'),
691
+ 'external' => false,
692
+ ],
693
+ 'deleteable' => true,
694
+ ];
695
+ seopress_notification($args);
696
+ }
697
+ }
698
+ if ('1' != seopress_xml_sitemap_general_enable_option()) {
699
+ $args = [
700
+ 'id' => 'notice-xml-sitemaps',
701
+ 'title' => __('You don\'t have an XML Sitemap!', 'wp-seopress'),
702
+ 'desc' => __('XML Sitemaps are useful to facilitate the crawling of your content by search engine robots. Indirectly, this can benefit your ranking by reducing the crawl bugdet.', 'wp-seopress'),
703
+ 'impact' => [
704
+ 'medium' => __('Medium impact', 'wp-seopress'),
705
+ ],
706
+ 'link' => [
707
+ 'en' => admin_url('admin.php?page=seopress-xml-sitemap'),
708
+ 'title' => __('Fix this!', 'wp-seopress'),
709
+ 'external' => false,
710
+ ],
711
+ 'icon' => 'dashicons-warning',
712
+ 'deleteable' => false,
713
+ ];
714
+ seopress_notification($args);
715
+ }
716
+ function seopress_get_hidden_notices_google_business_option() {
717
+ $seopress_get_hidden_notices_google_business_option = get_option('seopress_notices');
718
+ if ( ! empty($seopress_get_hidden_notices_google_business_option)) {
719
+ foreach ($seopress_get_hidden_notices_google_business_option as $key => $seopress_get_hidden_notices_google_business_value) {
720
+ $options[$key] = $seopress_get_hidden_notices_google_business_value;
721
+ }
722
+ if (isset($seopress_get_hidden_notices_google_business_option['notice-google-business'])) {
723
+ return $seopress_get_hidden_notices_google_business_option['notice-google-business'];
724
+ }
725
+ }
726
+ }
727
+ if ('1' != seopress_get_hidden_notices_google_business_option()) {
728
+ $args = [
729
+ 'id' => 'notice-google-business',
730
+ 'title' => __('Do you have a Google My Business page? It\'s free!', 'wp-seopress'),
731
+ 'desc' => __('Local Business websites should have a My Business page to improve visibility in search results. Click on the cross on the right to delete this notification if you are not concerned.', 'wp-seopress'),
732
+ 'impact' => [
733
+ 'high' => __('High impact', 'wp-seopress'),
734
+ ],
735
+ 'link' => [
736
+ 'en' => 'https://www.google.com/business/go/',
737
+ 'title' => __('Create your page now!', 'wp-seopress'),
738
+ 'external' => true,
739
+ ],
740
+ 'deleteable' => true,
741
+ ];
742
+ seopress_notification($args);
743
+ }
744
+ function seopress_get_hidden_notices_search_console_option() {
745
+ $seopress_get_hidden_notices_search_console_option = get_option('seopress_notices');
746
+ if ( ! empty($seopress_get_hidden_notices_search_console_option)) {
747
+ foreach ($seopress_get_hidden_notices_search_console_option as $key => $seopress_get_hidden_notices_search_console_value) {
748
+ $options[$key] = $seopress_get_hidden_notices_search_console_value;
749
+ }
750
+ if (isset($seopress_get_hidden_notices_search_console_option['notice-search-console'])) {
751
+ return $seopress_get_hidden_notices_search_console_option['notice-search-console'];
752
+ }
753
+ }
754
+ }
755
+ function seopress_get_google_site_verification_option() {
756
+ $seopress_get_google_site_verification_option = get_option('seopress_advanced_option_name');
757
+ if ( ! empty($seopress_get_google_site_verification_option)) {
758
+ foreach ($seopress_get_google_site_verification_option as $key => $seopress_get_google_site_verification_value) {
759
+ $options[$key] = $seopress_get_google_site_verification_value;
760
+ }
761
+ if (isset($seopress_get_google_site_verification_option['seopress_advanced_advanced_google'])) {
762
+ return $seopress_get_google_site_verification_option['seopress_advanced_advanced_google'];
763
+ }
764
+ }
765
+ }
766
+ if ('1' != seopress_get_hidden_notices_search_console_option() && '' == seopress_get_google_site_verification_option()) {
767
+ $args = [
768
+ 'id' => 'notice-search-console',
769
+ 'title' => __('Add your site to Google. It\'s free!', 'wp-seopress'),
770
+ 'desc' => __('Is your brand new site online? So reference it as quickly as possible on Google to get your first visitors via Google Search Console. Already the case? Click on the cross on the right to remove this alert.', 'wp-seopress'),
771
+ 'impact' => [
772
+ 'high' => __('High impact', 'wp-seopress'),
773
+ ],
774
+ 'link' => [
775
+ 'en' => 'https://www.google.com/webmasters/tools/home',
776
+ 'title' => __('Add your site to Search Console!', 'wp-seopress'),
777
+ 'external' => true,
778
+ ],
779
+ 'deleteable' => true,
780
+ ];
781
+ seopress_notification($args);
782
+ }
783
+ if (is_plugin_active('wp-seopress-pro/seopress-pro.php')) {
784
+ if (function_exists('seopress_rich_snippets_enable_option') && '1' != seopress_rich_snippets_enable_option()) {
785
+ $args = [
786
+ 'id' => 'notice-schemas-metabox',
787
+ 'title' => __('Structured data types is not correctly enabled', 'wp-seopress'),
788
+ 'desc' => __('Please enable <strong>Structured Data Types metabox for your posts, pages and custom post types</strong> option in order to use automatic and manual schemas. (SEO > PRO > Structured Data Types (schema.org)', 'wp-seopress'),
789
+ 'impact' => [
790
+ 'high' => __('High impact', 'wp-seopress'),
791
+ ],
792
+ 'link' => [
793
+ 'en' => esc_url(admin_url('admin.php?page=seopress-pro-page#tab=tab_seopress_rich_snippets')),
794
+ 'title' => __('Fix this!', 'wp-seopress'),
795
+ 'external' => false,
796
+ ],
797
+ 'icon' => 'dashicons-warning',
798
+ 'deleteable' => false,
799
+ ];
800
+ seopress_notification($args);
801
+ }
802
+ }
803
+ if ('valid' != get_option('seopress_pro_license_status') && is_plugin_active('wp-seopress-pro/seopress-pro.php')) {
804
+ $args = [
805
+ 'id' => 'notice-license',
806
+ 'title' => __('You have to enter your licence key to get updates and support', 'wp-seopress'),
807
+ 'desc' => __('Please activate the SEOPress PRO license key to automatically receive updates to guarantee you the best user experience possible.', 'wp-seopress'),
808
+ 'impact' => [
809
+ 'info' => __('License', 'wp-seopress'),
810
+ ],
811
+ 'link' => [
812
+ 'en' => admin_url('admin.php?page=seopress-license'),
813
+ 'title' => __('Fix this!', 'wp-seopress'),
814
+ 'external' => false,
815
+ ],
816
+ 'icon' => 'dashicons-admin-network',
817
+ 'deleteable' => false,
818
+ ];
819
+ seopress_notification($args);
820
+ }
821
+ if ( ! is_plugin_active('wp-seopress-pro/seopress-pro.php')) {
822
+ function seopress_get_hidden_notices_go_pro_option() {
823
+ $seopress_get_hidden_notices_go_pro_option = get_option('seopress_notices');
824
+ if ( ! empty($seopress_get_hidden_notices_go_pro_option)) {
825
+ foreach ($seopress_get_hidden_notices_go_pro_option as $key => $seopress_get_hidden_notices_go_pro_value) {
826
+ $options[$key] = $seopress_get_hidden_notices_go_pro_value;
827
+ }
828
+ if (isset($seopress_get_hidden_notices_go_pro_option['notice-go-pro'])) {
829
+ return $seopress_get_hidden_notices_go_pro_option['notice-go-pro'];
830
+ }
831
+ }
832
+ }
833
+ if ('1' != seopress_get_hidden_notices_go_pro_option() && '' == seopress_get_hidden_notices_go_pro_option()) {
834
+ $args = [
835
+ 'id' => 'notice-go-pro',
836
+ 'title' => __('Take your SEO to the next level with SEOPress PRO!', 'wp-seopress'),
837
+ 'desc' => __('The PRO version of SEOPress allows you to easily manage your structured data (schemas), add a breadcrumb optimized for SEO and accessibility, improve SEO for WooCommerce, gain productivity with our import / export tool from a CSV of your metadata and so much more.', 'wp-seopress'),
838
+ 'impact' => [
839
+ 'info' => __('PRO', 'wp-seopress'),
840
+ ],
841
+ 'link' => [
842
+ 'fr' => 'https://www.seopress.org/fr?utm_source=plugin&utm_medium=notification&utm_campaign=dashboard',
843
+ 'en' => 'https://www.seopress.org/?utm_source=plugin&utm_medium=notification&utm_campaign=dashboard',
844
+ 'title' => __('Upgrade now!', 'wp-seopress'),
845
+ 'external' => true,
846
+ ],
847
+ 'deleteable' => true,
848
+ ];
849
+ seopress_notification($args);
850
+ }
851
+ } ?>
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
852
  </div><!--#seopress-notifications-center-->
853
  </div>
854
  <?php } ?>
855
 
856
  <?php if (is_plugin_active('wp-seopress-pro/seopress-pro.php')) { ?>
857
+ <div id="tab_seopress_seo_tools" class="seopress-tab seopress-useful-tools <?php if ('tab_seopress_seo_tools' == $current_tab) {
858
+ echo 'active';
859
+ } ?>">
860
+
861
  <!-- Reverse -->
862
  <div class="widget widget-reverse">
863
+ <h3 class="widget-title"><span class="dashicons dashicons-welcome-view-site"></span><?php _e('Check websites setup on your server', 'wp-seopress'); ?></h3>
864
 
865
  <p>
866
  <?php
867
+ if ('' != get_transient('seopress_results_reverse')) {
868
+ $seopress_results_reverse = (array) json_decode(get_transient('seopress_results_reverse'));
869
+
870
+ //Init
871
+ $seopress_results_reverse_remote_ip_address = __('Not found', 'wp-seopress');
872
+ if (isset($seopress_results_reverse['remoteIpAddress'])) {
873
+ $seopress_results_reverse_remote_ip_address = $seopress_results_reverse['remoteIpAddress'];
874
+ }
875
 
876
+ $seopress_results_reverse_last_scrape = __('No scrape.', 'wp-seopress');
877
+ if (isset($seopress_results_reverse['lastScrape'])) {
878
+ $seopress_results_reverse_last_scrape = $seopress_results_reverse['lastScrape'];
879
+ }
880
 
881
+ $seopress_results_reverse_domain_count = __('No domain found.', 'wp-seopress');
882
+ if (isset($seopress_results_reverse['domainCount'])) {
883
+ $seopress_results_reverse_domain_count = $seopress_results_reverse['domainCount'];
884
+ }
 
885
 
886
+ $seopress_results_reverse_domain_array = '';
887
+ if (isset($seopress_results_reverse['domainArray'])) {
888
+ $seopress_results_reverse_domain_array = $seopress_results_reverse['domainArray'];
889
+ }
890
 
891
+ echo '<p class="remote-ip"><strong>' . __('Server IP Address: ', 'wp-seopress') . '</strong>' . $seopress_results_reverse_remote_ip_address . '</p>';
 
 
 
892
 
893
+ echo '<p class="last-scrape"><strong>' . __('Last scrape: ', 'wp-seopress') . '</strong>' . $seopress_results_reverse_last_scrape . '</p>';
894
+ echo '<p class="domain-count"><strong>' . __('Number of websites on your server: ', 'wp-seopress') . '</strong>' . $seopress_results_reverse_domain_count . '</p>';
 
 
 
 
 
895
 
896
+ if ('' != $seopress_results_reverse_domain_array) {
897
+ echo '<ul>';
898
+ foreach ($seopress_results_reverse_domain_array as $key => $value) {
899
+ echo '<li><span class="dashicons dashicons-minus"></span><a href="//' . preg_replace('#^https?://#', '', $value[0]) . '" target="_blank">' . $value[0] . '</a><span class="dashicons dashicons-external"></span></li>';
900
+ }
901
+ echo '</ul>';
902
+ }
903
+ }
904
+ ?>
 
 
 
905
  <br>
906
  <button id="seopress-reverse-submit" type="button" class="button button-primary" name="submit">
907
+ <?php _e('Get list', 'wp-seopress'); ?>
908
  </button>
909
 
910
  <span id="spinner-reverse" class="spinner"></span>
911
  </div>
912
  </div>
913
  <?php } ?>
914
+ <div id="tab_seopress_links" class="seopress-tab seopress-useful-tools <?php if ('tab_seopress_links' == $current_tab) {
915
+ echo 'active';
916
+ } ?>">
917
  <ul>
918
+ <li><span class="dashicons dashicons-arrow-right-alt2"></span><a href="https://www.seopress.org/blog/" target="_blank"><?php _e('Our blog: SEO news, how-to, tips and tricks...', 'wp-seopress'); ?></a><span class="dashicons dashicons-external"></span></li>
919
+ <li><span class="dashicons dashicons-arrow-right-alt2"></span><a href="https://www.google.com/webmasters/tools/disavow-links-main" target="_blank"><?php _e('Upload a list of links to disavow to Google', 'wp-seopress'); ?></a><span class="dashicons dashicons-external"></span></li>
920
+ <?php if ( ! is_plugin_active('imageseo/imageseo.php')) {
921
+ if (function_exists('seopress_get_toggle_white_label_option') && '1' != seopress_get_toggle_white_label_option()) {
922
+ echo '<li><span class="dashicons dashicons-arrow-right-alt2"></span><a href="https://www.seopress.org/go/image-seo" target="_blank">' . __('Image SEO plugin to optimize your image ALT texts and names for Search Engines.', 'wp-seopress') . '</a><span class="dashicons dashicons-external"></span></li>';
923
+ }
924
+ }
925
+ ?>
926
+ <li><span class="dashicons dashicons-arrow-right-alt2"></span><a href="https://www.dareboost.com/en/home" target="_blank"><?php _e('Dareboost: Test, analyze and optimize your website', 'wp-seopress'); ?></a><span class="dashicons dashicons-external"></span></li>
927
+ <li><span class="dashicons dashicons-arrow-right-alt2"></span><a href="https://ga-dev-tools.appspot.com/campaign-url-builder/" target="_blank"><?php _e('Google Campaign URL Builder tool', 'wp-seopress'); ?></a><span class="dashicons dashicons-external"></span></li>
928
  </ul>
929
  </div>
930
  </div>
931
  </div>
932
+ <?php } ?>
inc/admin/admin-wizard.php CHANGED
@@ -1,294 +1,290 @@
1
  <?php
2
  /**
3
- * Setup Wizard Class
4
  *
5
  * Takes new users through some basic steps to setup SEOPress.
6
  *
7
- * @package SEOPress/inc/admin
8
  * @version 3.5.8
9
  */
10
-
11
- if ( ! defined( 'ABSPATH' ) ) {
12
- exit;
13
  }
14
 
15
  /**
16
  * SEOPRESS_Admin_Setup_Wizard class.
17
  */
18
  class SEOPRESS_Admin_Setup_Wizard {
19
-
20
- /**
21
- * Current step
22
- *
23
- * @var string
24
- */
25
- private $step = '';
26
-
27
- /**
28
- * Steps for the setup wizard
29
- *
30
- * @var array
31
- */
32
- private $steps = array();
33
-
34
- /**
35
- * Hook in tabs.
36
- */
37
- public function __construct() {
38
- if ( apply_filters( 'seopress_enable_setup_wizard', true ) && current_user_can( seopress_capability( 'manage_options', 'Admin_Setup_Wizard' ) ) ) {
39
- add_action( 'admin_menu', array( $this, 'admin_menus' ) );
40
- add_action( 'admin_init', array( $this, 'setup_wizard' ) );
41
- add_action( 'admin_enqueue_scripts', array( $this, 'enqueue_scripts' ) );
42
- }
43
- }
44
-
45
- /**
46
- * Add admin menus/screens.
47
- */
48
- public function admin_menus() {
49
- add_dashboard_page( '', '', seopress_capability( 'manage_options', 'menu' ), 'seopress-setup', '' );
50
- }
51
-
52
- /**
53
- * Register/enqueue scripts and styles for the Setup Wizard.
54
- *
55
- * Hooked onto 'admin_enqueue_scripts'.
56
- */
57
- public function enqueue_scripts() {
58
- $prefix = defined( 'SCRIPT_DEBUG' ) && SCRIPT_DEBUG ? '' : '.min';
59
- wp_enqueue_style( 'seopress-setup', plugins_url( 'assets/css/seopress-setup' . $prefix . '.css', dirname( dirname( __FILE__ ) ) ), [ 'dashicons', 'install' ], SEOPRESS_VERSION );
60
- wp_register_script( 'seopress-migrate-ajax', plugins_url( 'assets/js/seopress-migrate' . $prefix . '.js', dirname( dirname( __FILE__ ) ) ), [ 'jquery' ], SEOPRESS_VERSION, true );
61
 
62
  $seopress_migrate = [
63
  'seopress_aio_migrate' => [
64
- 'seopress_nonce' => wp_create_nonce('seopress_aio_migrate_nonce'),
65
- 'seopress_aio_migration' => admin_url( 'admin-ajax.php'),
66
  ],
67
  'seopress_yoast_migrate' => [
68
- 'seopress_nonce' => wp_create_nonce('seopress_yoast_migrate_nonce'),
69
- 'seopress_yoast_migration' => admin_url( 'admin-ajax.php'),
70
  ],
71
  'seopress_seo_framework_migrate' => [
72
- 'seopress_nonce' => wp_create_nonce('seopress_seo_framework_migrate_nonce'),
73
- 'seopress_seo_framework_migration' => admin_url( 'admin-ajax.php'),
74
  ],
75
  'seopress_rk_migrate' => [
76
- 'seopress_nonce' => wp_create_nonce('seopress_rk_migrate_nonce'),
77
- 'seopress_rk_migration' => admin_url( 'admin-ajax.php'),
78
  ],
79
  'seopress_squirrly_migrate' => [
80
- 'seopress_nonce' => wp_create_nonce('seopress_squirrly_migrate_nonce'),
81
- 'seopress_squirrly_migration' => admin_url( 'admin-ajax.php'),
82
- ],
83
  'seopress_seo_ultimate_migrate' => [
84
- 'seopress_nonce' => wp_create_nonce('seopress_seo_ultimate_migrate_nonce'),
85
- 'seopress_seo_ultimate_migration' => admin_url( 'admin-ajax.php'),
86
- ],
87
- 'seopress_wp_meta_seo_migrate' => [
88
- 'seopress_nonce' => wp_create_nonce('seopress_meta_seo_migrate_nonce'),
89
- 'seopress_wp_meta_seo_migration' => admin_url( 'admin-ajax.php'),
90
- ],
91
- 'seopress_premium_seo_pack_migrate' => [
92
- 'seopress_nonce' => wp_create_nonce('seopress_premium_seo_pack_migrate_nonce'),
93
- 'seopress_premium_seo_pack_migration' => admin_url( 'admin-ajax.php'),
94
- ],
95
- 'seopress_wpseo_migrate' => [
96
- 'seopress_nonce' => wp_create_nonce('seopress_wpseo_migrate_nonce'),
97
- 'seopress_wpseo_migration' => admin_url( 'admin-ajax.php'),
98
- ],
99
  'seopress_metadata_csv' => [
100
- 'seopress_nonce' => wp_create_nonce('seopress_export_csv_metadata_nonce'),
101
- 'seopress_metadata_export' => admin_url( 'admin-ajax.php'),
102
- ],
103
  'i18n' => [
104
- 'migration' =>__('Migration completed!','wp-seopress'),
105
- 'export' =>__('Export completed!','wp-seopress'),
106
- ]
107
- ];
108
- wp_localize_script( 'seopress-migrate-ajax', 'seopressAjaxMigrate', $seopress_migrate );
109
- }
110
-
111
- /**
112
- * Show the setup wizard.
113
- */
114
- public function setup_wizard() {
115
- if ( empty( $_GET['page'] ) || 'seopress-setup' !== $_GET['page'] ) {
116
- return;
117
- }
118
- $default_steps = array(
119
- 'import_settings' => array(
120
- 'name' => __( 'Import SEO settings', 'wp-seopress' ),
121
- 'view' => array( $this, 'seopress_setup_import_settings' ),
122
- 'handler' => array( $this, 'seopress_setup_import_settings_save' ),
123
- ),
124
- 'site' => array(
125
- 'name' => __( 'Your site', 'wp-seopress' ),
126
- 'view' => array( $this, 'seopress_setup_site' ),
127
- 'handler' => array( $this, 'seopress_setup_site_save' ),
128
- ),
129
- 'indexing' => array(
130
- 'name' => __( 'Indexing', 'wp-seopress' ),
131
- 'view' => array( $this, 'seopress_setup_indexing' ),
132
- 'handler' => array( $this, 'seopress_setup_indexing_save' ),
133
- ),
134
- 'advanced' => array(
135
- 'name' => __( 'Advanced options', 'wp-seopress' ),
136
- 'view' => array( $this, 'seopress_setup_advanced' ),
137
- 'handler' => array( $this, 'seopress_setup_advanced_save' ),
138
- ),
139
- 'ready' => array(
140
- 'name' => __( 'Ready!', 'wp-seopress' ),
141
- 'view' => array( $this, 'seopress_setup_ready' ),
142
- 'handler' => '',
143
- ),
144
- );
145
-
146
- $this->steps = apply_filters( 'seopress_setup_wizard_steps', $default_steps );
147
- $this->step = isset( $_GET['step'] ) ? sanitize_key( $_GET['step'] ) : current( array_keys( $this->steps ) );
148
-
149
- if ( ! empty( $_POST['save_step'] ) && isset( $this->steps[ $this->step ]['handler'] ) ) {
150
- call_user_func( $this->steps[ $this->step ]['handler'], $this );
151
- }
152
-
153
- ob_start();
154
- $this->setup_wizard_header();
155
- $this->setup_wizard_steps();
156
- $this->setup_wizard_content();
157
- $this->setup_wizard_footer();
158
- exit;
159
- }
160
-
161
- /**
162
- * Get the URL for the next step's screen.
163
- *
164
- * @param string $step slug (default: current step).
165
- * @return string URL for next step if a next step exists.
166
- * Admin URL if it's the last step.
167
- * Empty string on failure.
168
- * @since 3.5.8
169
- */
170
- public function get_next_step_link( $step = '' ) {
171
- if ( ! $step ) {
172
- $step = $this->step;
173
- }
174
-
175
- $keys = array_keys( $this->steps );
176
- if ( end( $keys ) === $step ) {
177
- return admin_url();
178
- }
179
-
180
- $step_index = array_search( $step, $keys, true );
181
- if ( false === $step_index ) {
182
- return '';
183
- }
184
-
185
- return add_query_arg( 'step', $keys[ $step_index + 1 ], remove_query_arg( 'activate_error' ) );
186
- }
187
-
188
- /**
189
- * Setup Wizard Header.
190
- */
191
- public function setup_wizard_header() {
192
- set_current_screen();
193
- ?>
 
194
  <!DOCTYPE html>
195
  <html <?php language_attributes(); ?>>
196
  <head>
197
  <meta name="viewport" content="width=device-width" />
198
  <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
199
- <title><?php esc_html_e( 'SEOPress &rsaquo; Setup Wizard', 'wp-seopress' ); ?></title>
200
- <?php do_action( 'admin_enqueue_scripts' ); ?>
201
- <?php wp_print_scripts( 'seopress-migrate-ajax' ); ?>
202
- <?php do_action( 'admin_print_styles' ); ?>
203
- <?php do_action( 'admin_head' ); ?>
204
  </head>
205
  <body class="seopress-setup wp-core-ui">
206
  <?php
207
- }
208
-
209
- /**
210
- * Setup Wizard Footer.
211
- */
212
- public function setup_wizard_footer() {
213
- ?>
214
- <?php if ( 'import_settings' === $this->step ) : ?>
215
- <a class="seopress-setup-footer-links" href="<?php echo esc_url( admin_url() ); ?>"><?php esc_html_e( 'Not right now', 'wp-seopress' ); ?></a>
216
- <?php elseif ( 'site' === $this->step || 'indexing' === $this->step || 'advanced' === $this->step ) : ?>
217
- <a class="seopress-setup-footer-links" href="<?php echo esc_url( $this->get_next_step_link() ); ?>"><?php esc_html_e( 'Skip this step', 'wp-seopress' ); ?></a>
218
- <?php endif; ?>
219
- <?php do_action( 'seopress_setup_footer' ); ?>
220
  </body>
221
  </html>
222
  <?php
223
- }
224
-
225
- /**
226
- * Output the steps.
227
- */
228
- public function setup_wizard_steps() {
229
- $output_steps = $this->steps;
230
- ?>
231
  <ol class="seopress-setup-steps">
232
  <?php
233
- foreach ( $output_steps as $step_key => $step ) {
234
- $is_completed = array_search( $this->step, array_keys( $this->steps ), true ) > array_search( $step_key, array_keys( $this->steps ), true );
235
 
236
- if ( $step_key === $this->step ) {
237
- ?>
238
- <li class="active"><span><?php echo esc_html( $step['name'] ); ?></span></li>
239
  <?php
240
- } elseif ( $is_completed ) {
241
- ?>
242
  <li class="done">
243
- <a href="<?php echo esc_url( add_query_arg( 'step', $step_key, remove_query_arg( 'activate_error' ) ) ); ?>"><?php echo esc_html( $step['name'] ); ?></a>
244
  </li>
245
  <?php
246
- } else {
247
- ?>
248
- <li><span><?php echo esc_html( $step['name'] ); ?></span></li>
249
  <?php
250
- }
251
- }
252
- ?>
253
  </ol>
254
  <?php
255
- }
256
-
257
- /**
258
- * Output the content for the current step.
259
- */
260
- public function setup_wizard_content() {
261
- echo '<div class="seopress-setup-content">';
262
- if ( ! empty( $this->steps[ $this->step ]['view'] ) ) {
263
- call_user_func( $this->steps[ $this->step ]['view'], $this );
264
- }
265
- echo '</div>';
266
- }
267
-
268
- /**
269
- * Init "Step 1: Import SEO settings".
270
- */
271
- public function seopress_setup_import_settings() {
272
- ?>
273
  <form method="post" class="address-step">
274
- <?php wp_nonce_field( 'seopress-setup' ); ?>
275
- <h2><?php _e('Welcome!','wp-seopress'); ?></h2>
276
- <p class="store-setup"><?php esc_html_e( 'The following wizard will help you configure SEOPress and get you started quickly.', 'wp-seopress' ); ?></p>
277
- <p class="store-setup"><?php esc_html_e( 'The first step is to import your previous settings from other plugins to keep your SEO.', 'wp-seopress' ); ?></p>
278
- <p class="store-setup"><?php esc_html_e( 'No data to migrate? Click "Next step" button!', 'wp-seopress' ); ?></p>
279
 
280
- <h3><span><?php _e('Import posts and terms metadata from','wp-seopress'); ?></span></h3>
281
  <select id="select-wizard-import" name="select-wizard-import">
282
- <option value="none"><?php _e('Select an option','wp-seopress'); ?></option>
283
- <option value="yoast-migration-tool"><?php _e('Yoast SEO','wp-seopress'); ?></option>
284
- <option value="aio-migration-tool"><?php _e('All In One SEO','wp-seopress'); ?></option>
285
- <option value="seo-framework-migration-tool"><?php _e('The SEO Framework','wp-seopress'); ?></option>
286
- <option value="rk-migration-tool"><?php _e('Rank Math','wp-seopress'); ?></option>
287
- <option value="squirrly-migration-tool"><?php _e('Squirrly SEO','wp-seopress'); ?></option>
288
- <option value="seo-ultimate-migration-tool"><?php _e('SEO Ultimate','wp-seopress'); ?></option>
289
- <option value="wp-meta-seo-migration-tool"><?php _e('WP Meta SEO','wp-seopress'); ?></option>
290
- <option value="premium-seo-pack-migration-tool"><?php _e('Premium SEO Pack','wp-seopress'); ?></option>
291
- <option value="wpseo-migration-tool"><?php _e('wpSEO','wp-seopress'); ?></option>
292
  </select>
293
 
294
  <br><br>
@@ -296,144 +292,144 @@ class SEOPRESS_Admin_Setup_Wizard {
296
  <div class="store-address-container">
297
  <!-- Yoast import tool -->
298
  <div id="yoast-migration-tool" class="postbox section-tool seopress-wizard-services">
299
- <h3><span><?php _e( 'Import posts and terms metadata from Yoast', 'wp-seopress' ); ?></span></h3>
300
- <p><?php _e( 'By clicking Migrate, we\'ll import:', 'wp-seopress' ); ?></p>
301
  <ul>
302
- <li><?php _e('Title tags','wp-seopress'); ?></li>
303
- <li><?php _e('Meta description','wp-seopress'); ?></li>
304
- <li><?php _e('Facebook Open Graph tags (title, description and image thumbnail)','wp-seopress'); ?></li>
305
- <li><?php _e('Twitter tags (title, description and image thumbnail)','wp-seopress'); ?></li>
306
- <li><?php _e('Meta Robots (noindex, nofollow...)','wp-seopress'); ?></li>
307
- <li><?php _e('Canonical URL','wp-seopress'); ?></li>
308
- <li><?php _e('Focus keywords','wp-seopress'); ?></li>
309
- <li><?php _e('Primary category','wp-seopress'); ?></li>
310
  </ul>
311
- <p style="color:red"><span class="dashicons dashicons-warning"></span> <?php _e( '<strong>WARNING:</strong> Migration will delete / update all SEOPress posts and terms metadata. Some dynamic variables will not be interpreted. We do NOT delete any Yoast data.', 'wp-seopress' ); ?></p>
312
- <button id="seopress-yoast-migrate" type="button" class="button"><?php _e('Migrate now','wp-seopress'); ?></button>
313
  <span class="spinner"></span>
314
  <div class="log"></div>
315
  </div><!-- .postbox -->
316
 
317
  <!-- All In One import tool -->
318
  <div id="aio-migration-tool" class="postbox section-tool seopress-wizard-services">
319
- <h3><span><?php _e( 'Import posts and terms metadata from All In One SEO', 'wp-seopress' ); ?></span></h3>
320
- <p><?php _e( 'By clicking Migrate, we\'ll import:', 'wp-seopress' ); ?></p>
321
  <ul>
322
- <li><?php _e('Title tags','wp-seopress'); ?></li>
323
- <li><?php _e('Meta description','wp-seopress'); ?></li>
324
- <li><?php _e('Facebook Open Graph tags (title, description and image thumbnail)','wp-seopress'); ?></li>
325
- <li><?php _e('Twitter image thumbnail','wp-seopress'); ?></li>
326
- <li><?php _e('Meta Robots (noindex, nofollow)','wp-seopress'); ?></li>
327
  </ul>
328
- <p style="color:red"><span class="dashicons dashicons-warning"></span> <?php _e( '<strong>WARNING:</strong> Migration will update/delete all SEOPress posts and terms metadata. Some dynamic variables will not be interpreted. We do NOT delete any AIO data.', 'wp-seopress' ); ?></p>
329
- <button id="seopress-aio-migrate" type="button" class="button"><?php _e('Migrate now','wp-seopress'); ?></button>
330
  <span class="spinner"></span>
331
  <div class="log"></div>
332
  </div><!-- .postbox -->
333
 
334
  <!-- SEO Framework import tool -->
335
  <div id="seo-framework-migration-tool" class="postbox section-tool seopress-wizard-services">
336
- <h3><span><?php _e( 'Import posts and terms metadata from The SEO Framework', 'wp-seopress' ); ?></span></h3>
337
- <p><?php _e( 'By clicking Migrate, we\'ll import:', 'wp-seopress' ); ?></p>
338
  <ul>
339
- <li><?php _e('Title tags','wp-seopress'); ?></li>
340
- <li><?php _e('Meta description','wp-seopress'); ?></li>
341
- <li><?php _e('Facebook Open Graph tags (title, description and image thumbnail)','wp-seopress'); ?></li>
342
- <li><?php _e('Twitter tags (title, description and image thumbnail)','wp-seopress'); ?></li>
343
- <li><?php _e('Meta Robots (noindex, nofollow, noarchive)','wp-seopress'); ?></li>
344
- <li><?php _e('Canonical URL','wp-seopress'); ?></li>
345
- <li><?php _e('Redirect URL','wp-seopress'); ?></li>
346
  </ul>
347
- <p style="color:red"><span class="dashicons dashicons-warning"></span> <?php _e( '<strong>WARNING:</strong> Migration will update / delete all SEOPress posts and terms metadata. Some dynamic variables will not be interpreted. We do NOT delete any SEO Framework data.', 'wp-seopress' ); ?></p>
348
- <button id="seopress-seo-framework-migrate" type="button" class="button"><?php _e('Migrate now','wp-seopress'); ?></button>
349
  <span class="spinner"></span>
350
  <div class="log"></div>
351
  </div><!-- .postbox -->
352
 
353
  <!-- RK import tool -->
354
  <div id="rk-migration-tool" class="postbox section-tool seopress-wizard-services">
355
- <h3><span><?php _e( 'Import posts and terms metadata from Rank Math', 'wp-seopress' ); ?></span></h3>
356
- <p><?php _e( 'By clicking Migrate, we\'ll import:', 'wp-seopress' ); ?></p>
357
  <ul>
358
- <li><?php _e('Title tags','wp-seopress'); ?></li>
359
- <li><?php _e('Meta description','wp-seopress'); ?></li>
360
- <li><?php _e('Facebook Open Graph tags (title, description and image thumbnail)','wp-seopress'); ?></li>
361
- <li><?php _e('Twitter tags (title, description and image thumbnail)','wp-seopress'); ?></li>
362
- <li><?php _e('Meta Robots (noindex, nofollow, noarchive, noimageindex)','wp-seopress'); ?></li>
363
- <li><?php _e('Canonical URL','wp-seopress'); ?></li>
364
- <li><?php _e('Focus keywords','wp-seopress'); ?></li>
365
  </ul>
366
- <p style="color:red"><span class="dashicons dashicons-warning"></span> <?php _e( '<strong>WARNING:</strong> Migration will update / delete all SEOPress posts and terms metadata. Some dynamic variables will not be interpreted. We do NOT delete any Rank Math data.', 'wp-seopress' ); ?></p>
367
- <button id="seopress-rk-migrate" type="button" class="button"><?php _e('Migrate now','wp-seopress'); ?></button>
368
  <span class="spinner"></span>
369
  <div class="log"></div>
370
  </div><!-- .postbox -->
371
 
372
  <!-- Squirrly import tool -->
373
  <div id="squirrly-migration-tool" class="postbox section-tool seopress-wizard-services">
374
- <h3><span><?php _e( 'Import posts metadata from Squirrly SEO', 'wp-seopress' ); ?></span></h3>
375
- <p><?php _e( 'By clicking Migrate, we\'ll import:', 'wp-seopress' ); ?></p>
376
  <ul>
377
- <li><?php _e('Title tags','wp-seopress'); ?></li>
378
- <li><?php _e('Meta description','wp-seopress'); ?></li>
379
- <li><?php _e('Facebook Open Graph tags (title, description and image thumbnail)','wp-seopress'); ?></li>
380
- <li><?php _e('Twitter tags (title, description and image thumbnail)','wp-seopress'); ?></li>
381
- <li><?php _e('Meta Robots (noindex or nofollow)','wp-seopress'); ?></li>
382
- <li><?php _e('Canonical URL','wp-seopress'); ?></li>
383
  </ul>
384
- <p style="color:red"><span class="dashicons dashicons-info"></span> <?php _e( '<strong>WARNING:</strong> Migration will update / delete all SEOPress posts metadata. Some dynamic variables will not be interpreted. We do NOT delete any Squirrly SEO data.', 'wp-seopress' ); ?></p>
385
- <button id="seopress-squirrly-migrate" type="button" class="button"><?php _e('Migrate now','wp-seopress'); ?></button>
386
  <span class="spinner"></span>
387
  <div class="log"></div>
388
  </div><!-- .postbox -->
389
-
390
  <!-- SEO Ultimate import tool -->
391
  <div id="seo-ultimate-migration-tool" class="postbox section-tool seopress-wizard-services">
392
- <h3><span><?php _e( 'Import posts metadata from SEO Ultimate', 'wp-seopress' ); ?></span></h3>
393
- <p><?php _e( 'By clicking Migrate, we\'ll import:', 'wp-seopress' ); ?></p>
394
  <ul>
395
- <li><?php _e('Title tags','wp-seopress'); ?></li>
396
- <li><?php _e('Meta description','wp-seopress'); ?></li>
397
- <li><?php _e('Facebook Open Graph tags (title, description and image thumbnail)','wp-seopress'); ?></li>
398
- <li><?php _e('Twitter tags (title, description and image thumbnail)','wp-seopress'); ?></li>
399
- <li><?php _e('Meta Robots (noindex or nofollow)','wp-seopress'); ?></li>
400
  </ul>
401
- <p style="color:red"><span class="dashicons dashicons-info"></span> <?php _e( '<strong>WARNING:</strong> Migration will update / delete all SEOPress posts metadata. Some dynamic variables will not be interpreted. We do NOT delete any SEO Ultimate data.', 'wp-seopress' ); ?></p>
402
- <button id="seopress-seo-ultimate-migrate" type="button" class="button"><?php _e('Migrate now','wp-seopress'); ?></button>
403
  <span class="spinner"></span>
404
  <div class="log"></div>
405
  </div><!-- .postbox -->
406
 
407
  <!-- WP Meta SEO import tool -->
408
  <div id="wp-meta-seo-migration-tool" class="postbox section-tool seopress-wizard-services">
409
- <h3><span><?php _e( 'Import posts and terms metadata from WP Meta SEO', 'wp-seopress' ); ?></span></h3>
410
- <p><?php _e( 'By clicking Migrate, we\'ll import:', 'wp-seopress' ); ?></p>
411
  <ul>
412
- <li><?php _e('Title tags','wp-seopress'); ?></li>
413
- <li><?php _e('Meta description','wp-seopress'); ?></li>
414
- <li><?php _e('Facebook Open Graph tags (title, description and image thumbnail)','wp-seopress'); ?></li>
415
- <li><?php _e('Twitter tags (title, description and image thumbnail)','wp-seopress'); ?></li>
416
  </ul>
417
- <p style="color:red"><span class="dashicons dashicons-info"></span> <?php _e( '<strong>WARNING:</strong> Migration will update / delete all SEOPress posts metadata. Some dynamic variables will not be interpreted. We do NOT delete any WP Meta SEO data.', 'wp-seopress' ); ?></p>
418
- <button id="seopress-wp-meta-seo-migrate" type="button" class="button"><?php _e('Migrate now','wp-seopress'); ?></button>
419
  <span class="spinner"></span>
420
  <div class="log"></div>
421
  </div><!-- .postbox -->
422
 
423
  <!-- Premium SEO Pack import tool -->
424
  <div id="premium-seo-pack-migration-tool" class="postbox section-tool seopress-wizard-services">
425
- <h3><span><?php _e( 'Import posts and terms metadata from Premium SEO Pack', 'wp-seopress' ); ?></span></h3>
426
- <p><?php _e( 'By clicking Migrate, we\'ll import:', 'wp-seopress' ); ?></p>
427
  <ul>
428
- <li><?php _e('Title tags','wp-seopress'); ?></li>
429
- <li><?php _e('Meta description','wp-seopress'); ?></li>
430
- <li><?php _e('Facebook Open Graph tags (title, description and image thumbnail)','wp-seopress'); ?></li>
431
- <li><?php _e('Meta Robots (noindex, nofollow)','wp-seopress'); ?></li>
432
- <li><?php _e('Canonical URL','wp-seopress'); ?></li>
433
- <li><?php _e('Focus keywords','wp-seopress'); ?></li>
434
  </ul>
435
- <p style="color:red"><span class="dashicons dashicons-info"></span> <?php _e( '<strong>WARNING:</strong> Migration will update / delete all SEOPress posts metadata. Some dynamic variables will not be interpreted. We do NOT delete any Premium SEO Pack data.', 'wp-seopress' ); ?></p>
436
- <button id="seopress-premium-seo-pack-migrate" type="button" class="button"><?php _e('Migrate now','wp-seopress'); ?></button>
437
  <span class="spinner"></span>
438
  <div class="log"></div>
439
  </div><!-- .postbox -->
@@ -441,20 +437,20 @@ class SEOPRESS_Admin_Setup_Wizard {
441
  <!-- wpSEO import tool -->
442
  <div id="wpseo-migration-tool" class="postbox section-tool seopress-wizard-services">
443
  <div class="inside">
444
- <h3><span><?php _e( 'Import posts and terms metadata from wpSEO', 'wp-seopress' ); ?></span></h3>
445
- <p><?php _e( 'By clicking Migrate, we\'ll import:', 'wp-seopress' ); ?></p>
446
  <ul>
447
- <li><?php _e('Title tags','wp-seopress'); ?></li>
448
- <li><?php _e('Meta description','wp-seopress'); ?></li>
449
- <li><?php _e('Facebook Open Graph tags (title, description and image thumbnail)','wp-seopress'); ?></li>
450
- <li><?php _e('Twitter tags (title, description and image thumbnail)','wp-seopress'); ?></li>
451
- <li><?php _e('Meta Robots (noindex, nofollow)','wp-seopress'); ?></li>
452
- <li><?php _e('Canonical URL','wp-seopress'); ?></li>
453
- <li><?php _e('Redirect URL','wp-seopress'); ?></li>
454
- <li><?php _e('Main keyword','wp-seopress'); ?></li>
455
  </ul>
456
- <p style="color:red"><span class="dashicons dashicons-info"></span> <?php _e( '<strong>WARNING:</strong> Migration will update / delete all SEOPress posts metadata. Some dynamic variables will not be interpreted. We do NOT delete any wpSEO data.', 'wp-seopress' ); ?></p>
457
- <button id="seopress-wpseo-migrate" type="button" class="button"><?php _e('Migrate now','wp-seopress'); ?></button>
458
  <span class="spinner"></span>
459
  <div class="log"></div>
460
  </div><!-- .inside -->
@@ -462,423 +458,493 @@ class SEOPRESS_Admin_Setup_Wizard {
462
  </div>
463
 
464
  <p class="seopress-setup-actions step">
465
- <button type="submit" class="button-primary button button-large button-next" value="<?php esc_attr_e( "Next step", 'wp-seopress' ); ?>" name="save_step"><?php esc_html_e( "Next step", 'wp-seopress' ); ?></button>
466
- <?php wp_nonce_field( 'seopress-setup' ); ?>
467
  </p>
468
  </form>
469
  <?php
470
- }
471
-
472
- /**
473
- * Save step 1 settings.
474
- */
475
- public function seopress_setup_import_settings_save() {
476
- check_admin_referer( 'seopress-setup' );
477
- wp_safe_redirect( esc_url_raw( $this->get_next_step_link() ) );
478
- exit;
479
- }
480
-
481
- /**
482
- * Init "Step 2: Your site".
483
- */
484
- public function seopress_setup_site() {
485
- $seopress_titles_option = get_option( 'seopress_titles_option_name' );
486
- $seopress_social_option = get_option( 'seopress_social_option_name' );
487
-
488
- $site_sep = isset($seopress_titles_option['seopress_titles_sep']) ? $seopress_titles_option['seopress_titles_sep'] : NULL;
489
- $site_title = isset($seopress_titles_option['seopress_titles_home_site_title']) ? $seopress_titles_option['seopress_titles_home_site_title'] : NULL;
490
- $knowledge_type = isset($seopress_social_option['seopress_social_knowledge_type']) ? $seopress_social_option['seopress_social_knowledge_type'] : NULL;
491
- $knowledge_name = isset($seopress_social_option['seopress_social_knowledge_name']) ? $seopress_social_option['seopress_social_knowledge_name'] : NULL;
492
- $knowledge_img = isset($seopress_social_option['seopress_social_knowledge_img']) ? $seopress_social_option['seopress_social_knowledge_img'] : NULL;
493
- $knowledge_fb = isset($seopress_social_option['seopress_social_accounts_facebook']) ? $seopress_social_option['seopress_social_accounts_facebook'] : NULL;
494
- $knowledge_tw = isset($seopress_social_option['seopress_social_accounts_twitter']) ? $seopress_social_option['seopress_social_accounts_twitter'] : NULL;
495
- $knowledge_pin = isset($seopress_social_option['seopress_social_accounts_pinterest']) ? $seopress_social_option['seopress_social_accounts_pinterest'] : NULL;
496
- $knowledge_insta = isset($seopress_social_option['seopress_social_accounts_instagram']) ? $seopress_social_option['seopress_social_accounts_instagram'] : NULL;
497
- $knowledge_yt = isset($seopress_social_option['seopress_social_accounts_youtube']) ? $seopress_social_option['seopress_social_accounts_youtube'] : NULL;
498
- $knowledge_li = isset($seopress_social_option['seopress_social_accounts_linkedin']) ? $seopress_social_option['seopress_social_accounts_linkedin'] : NULL;
499
- $knowledge_mys = isset($seopress_social_option['seopress_social_accounts_myspace']) ? $seopress_social_option['seopress_social_accounts_myspace'] : NULL;
500
- $knowledge_sound = isset($seopress_social_option['seopress_social_accounts_soundcloud']) ? $seopress_social_option['seopress_social_accounts_soundcloud'] : NULL;
501
- $knowledge_tu = isset($seopress_social_option['seopress_social_accounts_tumblr']) ? $seopress_social_option['seopress_social_accounts_tumblr'] : NULL;
502
- ?>
503
-
504
- <h1><?php esc_html_e( 'Your site', 'wp-seopress' ); ?></h1>
505
  <form method="post">
506
- <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>
507
 
508
- <label class="location-prompt" for="site_sep"><?php esc_html_e( 'Separator', 'wp-seopress' ); ?></label>
509
  <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; ?>" />
510
 
511
- <label class="location-prompt" for="site_title"><?php esc_html_e( 'Site title', 'wp-seopress' ); ?></label>
512
  <input type="text" id="site_title" class="location-input" name="site_title" placeholder="<?php esc_html_e('eg: My super website', 'wp-seopress'); ?>" required value="<?php echo $site_title; ?>" />
513
 
514
- <label class="location-prompt" for="knowledge_type"><?php esc_html_e('Person or organization','wp-seopress'); ?></label>
515
  <?php
516
- echo '<select id="knowledge_type" name="knowledge_type" data-placeholder="'.esc_attr__( 'Choose a knowledge type', 'wp-seopress' ).'" class="location-input wc-enhanced-select dropdown">';
517
- echo ' <option ';
518
- if ('None' == $knowledge_type) echo 'selected="selected"';
519
- echo ' value="none">'. __("None (will disable this feature)","wp-seopress") .'</option>';
520
- echo ' <option ';
521
- if ('Person' == $knowledge_type) echo 'selected="selected"';
522
- echo ' value="Person">'. __("Person","wp-seopress") .'</option>';
523
- echo '<option ';
524
- if ('Organization' == $knowledge_type) echo 'selected="selected"';
525
- echo ' value="Organization">'. __("Organization","wp-seopress") .'</option>';
526
- echo '</select>';
527
- ?>
528
-
529
- <label class="location-prompt" for="knowledge_name"><?php esc_html_e( 'Your name/organization', 'wp-seopress' ); ?></label>
 
 
 
 
 
530
  <input type="text" id="knowledge_name" class="location-input" name="knowledge_name" placeholder="<?php esc_html_e('eg: My Company Name', 'wp-seopress'); ?>" value="<?php echo $knowledge_name; ?>" />
531
 
532
- <label class="location-prompt" for="knowledge_img"><?php esc_html_e( 'Your photo/organization logo', 'wp-seopress' ); ?></label>
533
  <input type="text" id="knowledge_img" class="location-input" name="knowledge_img" placeholder="<?php esc_html_e('eg: https://www.example.com/logo.png', 'wp-seopress'); ?>" value="<?php echo $knowledge_img; ?>" />
534
 
535
- <label class="location-prompt" for="knowledge_fb"><?php esc_html_e( 'Facebook page URL', 'wp-seopress' ); ?></label>
536
- <input type="text" id="knowledge_fb" class="location-input" name="knowledge_fb" placeholder="<?php esc_html_e('eg: https://facebook.com/my-page-url','wp-seopress'); ?>" value="<?php echo $knowledge_fb; ?>" />
537
 
538
- <label class="location-prompt" for="knowledge_tw"><?php esc_html_e( 'Twitter Username', 'wp-seopress' ); ?></label>
539
  <input type="text" id="knowledge_tw" class="location-input" name="knowledge_tw" placeholder="<?php esc_html_e('eg: @my_twitter_account', 'wp-seopress'); ?>" value="<?php echo $knowledge_tw; ?>" />
540
 
541
- <label class="location-prompt" for="knowledge_pin"><?php esc_html_e( 'Pinterest URL', 'wp-seopress' ); ?></label>
542
  <input type="text" id="knowledge_pin" class="location-input" name="knowledge_pin" placeholder="<?php esc_html_e('eg: https://pinterest.com/my-page-url/', 'wp-seopress'); ?>" value="<?php echo $knowledge_pin; ?>" />
543
 
544
- <label class="location-prompt" for="knowledge_insta"><?php esc_html_e( 'Instagram URL', 'wp-seopress' ); ?></label>
545
  <input type="text" id="knowledge_insta" class="location-input" name="knowledge_insta" placeholder="<?php esc_html_e('eg: https://www.instagram.com/my-page-url/', 'wp-seopress'); ?>" value="<?php echo $knowledge_insta; ?>" />
546
 
547
- <label class="location-prompt" for="knowledge_yt"><?php esc_html_e( 'YouTube URL', 'wp-seopress' ); ?></label>
548
  <input type="text" id="knowledge_yt" class="location-input" name="knowledge_yt" placeholder="<?php esc_html_e('eg: https://www.youtube.com/my-channel-url', 'wp-seopress'); ?>" value="<?php echo $knowledge_yt; ?>" />
549
 
550
- <label class="location-prompt" for="knowledge_li"><?php esc_html_e( 'LinkedIn URL', 'wp-seopress' ); ?></label>
551
  <input type="text" id="knowledge_li" class="location-input" name="knowledge_li" placeholder="<?php esc_html_e('eg: http://linkedin.com/company/my-company-url/', 'wp-seopress'); ?>" value="<?php echo $knowledge_li; ?>" />
552
 
553
- <label class="location-prompt" for="knowledge_mys"><?php esc_html_e( 'MySpace URL', 'wp-seopress' ); ?></label>
554
- <input type="text" id="knowledge_mys" class="location-input" name="knowledge_mys" placeholder="<?php esc_html_e('eg: https://myspace.com/my-page-url', 'wp-seopress'); ?>" value="<?php echo $knowledge_mys; ?>" />
555
-
556
- <label class="location-prompt" for="knowledge_sound"><?php esc_html_e( 'Soundcloud URL', 'wp-seopress' ); ?></label>
557
- <input type="text" id="knowledge_sound" class="location-input" name="knowledge_sound" placeholder="<?php esc_html_e('eg: https://soundcloud.com/my-page-url', 'wp-seopress'); ?>" value="<?php echo $knowledge_sound; ?>" />
558
-
559
- <label class="location-prompt" for="knowledge_tu"><?php esc_html_e( 'Tumblr URL', 'wp-seopress' ); ?></label>
560
- <input type="text" id="knowledge_tu" class="location-input" name="knowledge_tu" placeholder="<?php esc_html_e('eg: https://your-site.tumblr.com', 'wp-seopress'); ?>" value="<?php echo $knowledge_tu; ?>" />
561
-
562
  <p class="seopress-setup-actions step">
563
- <button type="submit" class="button-primary button button-large button-next" value="<?php esc_attr_e( 'Continue', 'wp-seopress' ); ?>" name="save_step"><?php esc_html_e( 'Continue', 'wp-seopress' ); ?></button>
564
- <?php wp_nonce_field( 'seopress-setup' ); ?>
565
  </p>
566
  </form>
567
  <?php
568
- }
569
-
570
- /**
571
- * Save step 2 settings.
572
- */
573
- public function seopress_setup_site_save() {
574
- check_admin_referer( 'seopress-setup' );
575
-
576
- //Get options
577
- $seopress_titles_option = get_option("seopress_titles_option_name");
578
- $seopress_social_option = get_option("seopress_social_option_name");
579
-
580
- //Titles
581
- $seopress_titles_option['seopress_titles_sep'] = isset( $_POST['site_sep'] ) ? sanitize_text_field( wp_unslash( $_POST['site_sep'] ) ) : '';
582
- $seopress_titles_option['seopress_titles_home_site_title'] = isset( $_POST['site_title'] ) ? sanitize_text_field( wp_unslash( $_POST['site_title'] ) ) : '';
583
-
584
- //Social
585
- $seopress_social_option['seopress_social_knowledge_type'] = isset( $_POST['knowledge_type'] ) ? esc_attr( wp_unslash( $_POST['knowledge_type'] ) ) : '';
586
- $seopress_social_option['seopress_social_knowledge_name'] = isset( $_POST['knowledge_name'] ) ? sanitize_text_field( wp_unslash( $_POST['knowledge_name'] ) ) : '';
587
- $seopress_social_option['seopress_social_knowledge_img'] = isset( $_POST['knowledge_img'] ) ? sanitize_text_field( wp_unslash( $_POST['knowledge_img'] ) ) : '';
588
-
589
- //Social accounts
590
- $seopress_social_option['seopress_social_accounts_facebook'] = isset( $_POST['knowledge_fb'] ) ? sanitize_text_field( wp_unslash( $_POST['knowledge_fb'] ) ) : '';
591
- $seopress_social_option['seopress_social_accounts_twitter'] = isset( $_POST['knowledge_tw'] ) ? sanitize_text_field( wp_unslash( $_POST['knowledge_tw'] ) ) : '';
592
- $seopress_social_option['seopress_social_accounts_pinterest'] = isset( $_POST['knowledge_pin'] ) ? sanitize_text_field( wp_unslash( $_POST['knowledge_pin'] ) ) : '';
593
- $seopress_social_option['seopress_social_accounts_instagram'] = isset( $_POST['knowledge_insta'] ) ? sanitize_text_field( wp_unslash( $_POST['knowledge_insta'] ) ) : '';
594
- $seopress_social_option['seopress_social_accounts_youtube'] = isset( $_POST['knowledge_yt'] ) ? sanitize_text_field( wp_unslash( $_POST['knowledge_yt'] ) ) : '';
595
- $seopress_social_option['seopress_social_accounts_linkedin'] = isset( $_POST['knowledge_li'] ) ? sanitize_text_field( wp_unslash( $_POST['knowledge_li'] ) ) : '';
596
- $seopress_social_option['seopress_social_accounts_myspace'] = isset( $_POST['knowledge_mys'] ) ? sanitize_text_field( wp_unslash( $_POST['knowledge_mys'] ) ) : '';
597
- $seopress_social_option['seopress_social_accounts_soundcloud'] = isset( $_POST['knowledge_sound'] ) ? sanitize_text_field( wp_unslash( $_POST['knowledge_sound'] ) ) : '';
598
- $seopress_social_option['seopress_social_accounts_tumblr'] = isset( $_POST['knowledge_tu'] ) ? sanitize_text_field( wp_unslash( $_POST['knowledge_tu'] ) ) : '';
599
-
600
- //Save options
601
- update_option( 'seopress_titles_option_name', $seopress_titles_option );
602
- update_option( 'seopress_social_option_name', $seopress_social_option );
603
-
604
- wp_safe_redirect( esc_url_raw( $this->get_next_step_link() ) );
605
- exit;
606
- }
607
-
608
- /**
609
- * Init "Step 3: Indexing Step".
610
- */
611
- public function seopress_setup_indexing() {
612
- $seopress_titles_option = get_option( 'seopress_titles_option_name' );
613
- ?>
614
- <h1><?php esc_html_e( 'Indexing', 'wp-seopress' ); ?></h1>
615
- <p><?php esc_html_e( 'Specify to the search engines what you want to be indexed or not.', 'wp-seopress' ); ?></p>
616
- <p><?php esc_html_e( 'Avoid indexing duplicate or poor quality content.', 'wp-seopress' ); ?></p>
617
- <p><?php esc_html_e( 'Default: index', 'wp-seopress' ); ?></p>
618
  <form method="post" class="seopress-wizard-indexing-form">
619
- <?php if(!empty(seopress_get_post_types())) { ?>
620
  <div class="seopress-wizard-services">
621
  <p>
622
- <?php _e('For which single post types, should indexing be disabled?','wp-seopress'); ?>
623
  </p>
624
 
625
  <ul>
626
  <?php
627
- //Post Types
628
- foreach (seopress_get_post_types() as $seopress_cpt_key => $seopress_cpt_value) {
629
- $seopress_titles_single_titles = isset($seopress_titles_option['seopress_titles_single_titles'][$seopress_cpt_key]['noindex']);
630
-
631
- echo '<h3>'.$seopress_cpt_value->labels->name.' <em><small>['.$seopress_cpt_value->name.']</small></em></h3>';
632
-
633
- //Single No-Index CPT
634
- echo '<li class="recommended-item checkbox">';
635
- echo '<input id="seopress_titles_single_cpt_noindex['.$seopress_cpt_key.']" name="seopress_titles_option_name[seopress_titles_single_titles]['.$seopress_cpt_key.'][noindex]" type="checkbox"';
636
- if ('1' == $seopress_titles_single_titles) echo 'checked="yes"';
637
- echo ' value="1"/>';
638
-
639
- echo '<label for="seopress_titles_single_cpt_noindex['.$seopress_cpt_key.']">'. __( 'Do not display this single post type in search engine results <strong>(noindex)</strong>', 'wp-seopress' ) .'</label>';
640
- echo '</li>';
641
- }
642
- ?>
 
 
643
  </ul>
644
  </div>
645
  <?php } ?>
646
 
647
- <?php if(!empty(seopress_get_post_types())) { ?>
648
  <div class="seopress-wizard-services">
649
  <p>
650
- <?php _e('For which post type archives, should indexing be disabled?','wp-seopress'); ?>
651
  </p>
652
 
653
  <ul>
654
  <?php
655
- foreach (seopress_get_post_types() as $seopress_cpt_key => $seopress_cpt_value) {
656
- if (!in_array($seopress_cpt_key, array('post','page'))) {
657
-
658
- echo '<h3>'.$seopress_cpt_value->labels->name.' <em><small>['.$seopress_cpt_value->name.']</small></em></h2>';
659
-
660
- //Archive No-Index CPT
661
- $seopress_titles_archive_titles = isset($seopress_titles_option['seopress_titles_archive_titles'][$seopress_cpt_key]['noindex']);
662
-
663
- echo '<li class="recommended-item checkbox">';
664
- echo '<input id="seopress_titles_archive_cpt_noindex['.$seopress_cpt_key.']" name="seopress_titles_option_name[seopress_titles_archive_titles]['.$seopress_cpt_key.'][noindex]" type="checkbox"';
665
- if ('1' == $seopress_titles_archive_titles) echo 'checked="yes"';
666
- echo ' value="1"/>';
667
-
668
- echo '<label for="seopress_titles_archive_cpt_noindex['.$seopress_cpt_key.']">'. __( 'Do not display this post type archive in search engine results <strong>(noindex)</strong>', 'wp-seopress' ) .'</label>';
669
- echo '</li>';
670
- }
671
- }
672
- ?>
 
673
  </ul>
674
  </div>
675
  <?php } ?>
676
 
677
- <?php if(!empty(seopress_get_taxonomies())) { ?>
678
  <div class="seopress-wizard-services">
679
  <p>
680
- <?php _e('For which taxonomy archives, should indexing be disabled?','wp-seopress'); ?>
681
  </p>
682
 
683
  <ul>
684
  <?php
685
- //Archives
686
- foreach (seopress_get_taxonomies() as $seopress_tax_key => $seopress_tax_value) {
687
- $seopress_titles_tax_titles = isset($seopress_titles_option['seopress_titles_tax_titles'][$seopress_tax_key]['noindex']);
688
-
689
- echo '<h3>'.$seopress_tax_value->labels->name.' <em><small>['.$seopress_tax_value->name.']</small></em></h2>';
690
-
691
- //Tax No-Index
692
- echo '<li class="recommended-item checkbox">';
693
- echo '<input id="seopress_titles_tax_noindex['.$seopress_tax_key.']" name="seopress_titles_option_name[seopress_titles_tax_titles]['.$seopress_tax_key.'][noindex]" type="checkbox"';
694
- if ('1' == $seopress_titles_tax_titles) echo 'checked="yes"';
695
- echo ' value="1"/>';
696
-
697
- echo '<label for="seopress_titles_tax_noindex['.$seopress_tax_key.']">'. __( 'Do not display this taxonomy archive in search engine results <strong>(noindex)</strong>', 'wp-seopress' ) .'</label>';
698
- echo '</li>';
699
- }
700
- ?>
 
 
701
  </ul>
702
  </div>
703
  <?php } ?>
704
 
705
  <p class="seopress-setup-actions step">
706
- <button type="submit" class="button-primary button button-large button-next" value="<?php esc_attr_e( 'Continue', 'wp-seopress' ); ?>" name="save_step"><?php esc_html_e( 'Continue', 'wp-seopress' ); ?></button>
707
- <?php wp_nonce_field( 'seopress-setup' ); ?>
708
  </p>
709
  </form>
710
  <?php
711
- }
712
-
713
- /**
714
- * Save Step 3 settings.
715
- */
716
- public function seopress_setup_indexing_save() {
717
- check_admin_referer( 'seopress-setup' );
718
-
719
- //Get options
720
- $seopress_titles_option = get_option("seopress_titles_option_name");
721
-
722
- //Post Types noindex
723
- foreach (seopress_get_post_types() as $seopress_cpt_key => $seopress_cpt_value) {
724
- if (isset($_POST['seopress_titles_option_name']['seopress_titles_single_titles'][$seopress_cpt_key]['noindex'])) {
725
- $noindex = esc_attr(wp_unslash($_POST['seopress_titles_option_name']['seopress_titles_single_titles'][$seopress_cpt_key]['noindex']));
726
- } else {
727
- $noindex = NULL;
728
- }
729
- $seopress_titles_option['seopress_titles_single_titles'][$seopress_cpt_key]['noindex'] = $noindex;
730
- }
731
-
732
- //Post Type archives noindex
733
- foreach (seopress_get_post_types() as $seopress_cpt_key => $seopress_cpt_value) {
734
- if (isset($_POST['seopress_titles_option_name']['seopress_titles_archive_titles'][$seopress_cpt_key]['noindex'])) {
735
- $noindex = esc_attr(wp_unslash($_POST['seopress_titles_option_name']['seopress_titles_archive_titles'][$seopress_cpt_key]['noindex']));
736
- } else {
737
- $noindex = NULL;
738
- }
739
- $seopress_titles_option['seopress_titles_archive_titles'][$seopress_cpt_key]['noindex'] = $noindex;
740
- }
741
-
742
- //Archives noindex
743
- foreach (seopress_get_taxonomies() as $seopress_tax_key => $seopress_tax_value) {
744
- if (isset($_POST['seopress_titles_option_name']['seopress_titles_tax_titles'][$seopress_tax_key]['noindex'])) {
745
- $noindex = esc_attr(wp_unslash($_POST['seopress_titles_option_name']['seopress_titles_tax_titles'][$seopress_tax_key]['noindex']));
746
- } else {
747
- $noindex = NULL;
748
- }
749
- $seopress_titles_option['seopress_titles_tax_titles'][$seopress_tax_key]['noindex'] = $noindex;
750
- }
751
-
752
- //Save options
753
- update_option( 'seopress_titles_option_name', $seopress_titles_option );
754
-
755
- wp_redirect( esc_url_raw( $this->get_next_step_link() ) );
756
- exit;
757
- }
758
-
759
- /**
760
- * Init "Step 4: Advanced Step".
761
- */
762
- public function seopress_setup_advanced() {
763
- $seopress_titles_option = get_option( 'seopress_titles_option_name' );
764
- $author_noindex = isset($seopress_titles_option['seopress_titles_archives_author_noindex']);
765
-
766
- $seopress_advanced_option = get_option( 'seopress_advanced_option_name' );
767
- $attachments_file = isset($seopress_advanced_option['seopress_advanced_advanced_attachments_file']);
768
- $category_url = isset($seopress_advanced_option['seopress_advanced_advanced_category_url']);
769
- ?>
770
- <h1><?php esc_html_e( 'Advanced options', 'wp-seopress' ); ?></h1>
 
 
 
 
 
771
  <form method="post">
772
  <ul class="seopress-wizard-services">
773
- <?php
774
- //Noindex on author archives
775
- echo '<li class="seopress-wizard-service-item checkbox">';
776
- echo '<input id="author_noindex" class="location-input" name="author_noindex" type="checkbox"';
777
- if ('1' == $author_noindex) echo 'checked="yes"';
778
- echo ' value="1"/>';
779
-
780
- echo '<label for="author_noindex" class="location-prompt">'. __( 'Do not display author archives in search engine results <strong>(noindex)</strong>', 'wp-seopress' ) .'</label>';
781
- echo '</li>';
782
- echo '<li class="seopress-wizard-service-info">';
783
- _e('You only have one author on your site? Check this option to avoid duplicate content.','wp-seopress');
784
- echo '</li>';
785
-
786
- //Redirect attachment pages to URL
787
- echo '<li class="seopress-wizard-service-item checkbox">';
788
- echo '<input id="attachments_file" class="location-input" name="attachments_file" type="checkbox"';
789
- if ('1' == $attachments_file) echo 'checked="yes"';
790
- echo ' value="1"/>';
791
-
792
- 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>';
793
- echo '</li>';
794
- echo '<li class="seopress-wizard-service-info">';
795
- _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');
796
- echo '</li>';
797
-
798
- //Remove /category/ in URLs
799
- echo '<li class="seopress-wizard-service-item checkbox">';
800
- echo '<input id="category_url" name="category_url" type="checkbox" class="location-input"';
801
- if ('1' == $category_url) echo 'checked="yes"';
802
- echo ' value="1"/>';
803
-
804
- echo '<label for="category_url" class="location-prompt">'. __( 'Remove /category/ in your permalinks', 'wp-seopress' ) .'</label>';
805
- echo '</li>';
806
- echo '<li class="seopress-wizard-service-info">';
807
- _e('Shorten your URLs by removing /category/ and improve your SEO.','wp-seopress');
808
- echo '</li>';
809
- ?>
 
810
  </ul>
811
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
812
  <p class="seopress-setup-actions step">
813
- <button type="submit" class="button-primary button button-large button-next" value="<?php esc_attr_e( 'Continue', 'wp-seopress' ); ?>" name="save_step"><?php esc_html_e( 'Continue', 'wp-seopress' ); ?></button>
814
- <?php wp_nonce_field( 'seopress-setup' ); ?>
815
  </p>
816
  </form>
817
  <?php
818
- }
819
-
820
- /**
821
- * Save step 4 settings.
822
- */
823
- public function seopress_setup_advanced_save() {
824
- check_admin_referer( 'seopress-setup' );
825
-
826
- //Get options
827
- $seopress_titles_option = get_option("seopress_titles_option_name");
828
- $seopress_advanced_option = get_option("seopress_advanced_option_name");
829
-
830
- //Author indexing
831
- $seopress_titles_option['seopress_titles_archives_author_noindex'] = isset( $_POST['author_noindex'] ) ? esc_attr(wp_unslash($_POST['author_noindex'])) : NULL;
832
-
833
- //Advanced
834
- $seopress_advanced_option['seopress_advanced_advanced_attachments_file'] = isset( $_POST['attachments_file'] ) ? esc_attr(wp_unslash($_POST['attachments_file'])) : NULL;
835
- $seopress_advanced_option['seopress_advanced_advanced_category_url'] = isset( $_POST['category_url'] ) ? esc_attr(wp_unslash($_POST['category_url'])) : NULL;
836
-
837
- //Save options
838
- update_option( 'seopress_titles_option_name', $seopress_titles_option );
839
- update_option( 'seopress_advanced_option_name', $seopress_advanced_option );
840
-
841
- wp_redirect( esc_url_raw( $this->get_next_step_link() ) );
842
- exit;
843
- }
844
-
845
- /**
846
- * Final step.
847
- */
848
- public function seopress_setup_ready() {
849
- //Remove SEOPress notice
850
- $seopress_notices = get_option('seopress_notices');
851
- $seopress_notices['notice-wizard'] = "1";
852
- update_option('seopress_notices',$seopress_notices);
853
-
854
- //Flush permalinks
855
- flush_rewrite_rules(false);
856
- ?>
857
- <h1><?php esc_html_e( "Your site is now ready for search engines!", 'wp-seopress' ); ?></h1>
 
 
 
 
 
 
858
 
859
  <!-- SEOPress PRO -->
860
- <?php if (get_option( 'seopress_pro_license_status' ) !='valid' && is_plugin_active('wp-seopress-pro/seopress-pro.php') && !is_multisite()) { ?>
861
  <div class="seopress-message seopress-newsletter">
862
  <h3 class="seopress-setup-actions step">
863
- <?php esc_html_e( "Welcome to SEOPress PRO!","wp-seopress"); ?>
864
  </h3>
865
  <p class="seopress-setup-actions step">
866
- <?php esc_html_e( "Please activate your license to receive automatic updates and get premium support.", 'wp-seopress' ); ?>
867
  </p>
868
  <p class="seopress-setup-actions step">
869
- <a class="button button-primary button-large" href="<?php echo admin_url( 'admin.php?page=seopress-license' ); ?>">
870
  <span class="dashicons dashicons-admin-network"></span>
871
  <?php _e('Activate License', 'wp-seopress'); ?>
872
  </a>
873
  </p>
874
  </div>
875
- <?php } elseif (!is_plugin_active('wp-seopress-pro/seopress-pro.php') && !is_multisite()) { ?>
876
  <div class="seopress-message seopress-newsletter">
877
  <h3 class="seopress-setup-actions step">
878
- <?php esc_html_e( "Go PRO with SEOPress PRO!","wp-seopress"); ?>
879
  </h3>
880
  <p class="seopress-setup-actions step">
881
- <?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' ); ?>
882
  </p>
883
  <p class="seopress-setup-actions step">
884
  <a class="button button-primary button-large" href="https://www.seopress.org/" target="_blank">
@@ -892,14 +958,14 @@ class SEOPRESS_Admin_Setup_Wizard {
892
  <ul class="seopress-wizard-next-steps">
893
  <li class="seopress-wizard-next-step-item">
894
  <div class="seopress-wizard-next-step-description">
895
- <p class="next-step-heading"><?php esc_html_e("Next step","wp-seopress"); ?></p>
896
- <h3 class="next-step-description"><?php esc_html_e("Create your XML sitemaps","wp-seopress"); ?></h3>
897
- <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>
898
  </div>
899
  <div class="seopress-wizard-next-step-action">
900
  <p class="seopress-setup-actions step">
901
- <a class="button button-primary button-large" href="<?php echo admin_url( 'admin.php?page=seopress-xml-sitemap' ); ?>">
902
- <?php esc_html_e("Configure your XML sitemaps","wp-seopress"); ?>
903
  </a>
904
  </p>
905
  </div>
@@ -907,25 +973,25 @@ class SEOPRESS_Admin_Setup_Wizard {
907
  <?php seopress_wizard_follow_us(); ?>
908
  <li class="seopress-wizard-additional-steps">
909
  <div class="seopress-wizard-next-step-description">
910
- <p class="next-step-heading"><?php esc_html_e( 'You can also:', 'wp-seopress' ); ?></p>
911
  </div>
912
  <div class="seopress-wizard-next-step-action step">
913
  <p class="seopress-setup-actions step">
914
- <a class="button button-large" href="<?php echo esc_url( admin_url() ); ?>">
915
- <?php esc_html_e( 'Visit Dashboard', 'wp-seopress' ); ?>
916
  </a>
917
- <a class="button button-large" href="<?php echo esc_url( admin_url( 'admin.php?page=seopress-option' ) ); ?>">
918
- <?php esc_html_e( 'Review Settings', 'wp-seopress' ); ?>
919
  </a>
920
  <a class="button button-large" href="<?php echo esc_url('https://www.seopress.org/support/?utm_source=plugin&utm_medium=wizard&utm_campaign=seopress'); ?>" target="_blank">
921
- <?php esc_html_e( 'Knowledge base', 'wp-seopress' ); ?>
922
  </a>
923
  </p>
924
  </div>
925
  </li>
926
  </ul>
927
  <?php
928
- }
929
  }
930
 
931
- new SEOPRESS_Admin_Setup_Wizard();
1
  <?php
2
  /**
3
+ * Setup Wizard Class.
4
  *
5
  * Takes new users through some basic steps to setup SEOPress.
6
  *
 
7
  * @version 3.5.8
8
  */
9
+ if ( ! defined('ABSPATH')) {
10
+ exit;
 
11
  }
12
 
13
  /**
14
  * SEOPRESS_Admin_Setup_Wizard class.
15
  */
16
  class SEOPRESS_Admin_Setup_Wizard {
17
+ /**
18
+ * Current step.
19
+ *
20
+ * @var string
21
+ */
22
+ private $step = '';
23
+
24
+ /**
25
+ * Steps for the setup wizard.
26
+ *
27
+ * @var array
28
+ */
29
+ private $steps = [];
30
+
31
+ /**
32
+ * Hook in tabs.
33
+ */
34
+ public function __construct() {
35
+ if (apply_filters('seopress_enable_setup_wizard', true) && current_user_can(seopress_capability('manage_options', 'Admin_Setup_Wizard'))) {
36
+ add_action('admin_menu', [$this, 'admin_menus']);
37
+ add_action('admin_init', [$this, 'setup_wizard']);
38
+ add_action('admin_enqueue_scripts', [$this, 'enqueue_scripts']);
39
+ }
40
+ }
41
+
42
+ /**
43
+ * Add admin menus/screens.
44
+ */
45
+ public function admin_menus() {
46
+ add_dashboard_page('', '', seopress_capability('manage_options', 'menu'), 'seopress-setup', '');
47
+ }
48
+
49
+ /**
50
+ * Register/enqueue scripts and styles for the Setup Wizard.
51
+ *
52
+ * Hooked onto 'admin_enqueue_scripts'.
53
+ */
54
+ public function enqueue_scripts() {
55
+ $prefix = defined('SCRIPT_DEBUG') && SCRIPT_DEBUG ? '' : '.min';
56
+ wp_enqueue_style('seopress-setup', plugins_url('assets/css/seopress-setup' . $prefix . '.css', dirname(dirname(__FILE__))), ['dashicons', 'install'], SEOPRESS_VERSION);
57
+ wp_register_script('seopress-migrate-ajax', plugins_url('assets/js/seopress-migrate' . $prefix . '.js', dirname(dirname(__FILE__))), ['jquery'], SEOPRESS_VERSION, true);
 
58
 
59
  $seopress_migrate = [
60
  'seopress_aio_migrate' => [
61
+ 'seopress_nonce' => wp_create_nonce('seopress_aio_migrate_nonce'),
62
+ 'seopress_aio_migration' => admin_url('admin-ajax.php'),
63
  ],
64
  'seopress_yoast_migrate' => [
65
+ 'seopress_nonce' => wp_create_nonce('seopress_yoast_migrate_nonce'),
66
+ 'seopress_yoast_migration' => admin_url('admin-ajax.php'),
67
  ],
68
  'seopress_seo_framework_migrate' => [
69
+ 'seopress_nonce' => wp_create_nonce('seopress_seo_framework_migrate_nonce'),
70
+ 'seopress_seo_framework_migration' => admin_url('admin-ajax.php'),
71
  ],
72
  'seopress_rk_migrate' => [
73
+ 'seopress_nonce' => wp_create_nonce('seopress_rk_migrate_nonce'),
74
+ 'seopress_rk_migration' => admin_url('admin-ajax.php'),
75
  ],
76
  'seopress_squirrly_migrate' => [
77
+ 'seopress_nonce' => wp_create_nonce('seopress_squirrly_migrate_nonce'),
78
+ 'seopress_squirrly_migration' => admin_url('admin-ajax.php'),
79
+ ],
80
  'seopress_seo_ultimate_migrate' => [
81
+ 'seopress_nonce' => wp_create_nonce('seopress_seo_ultimate_migrate_nonce'),
82
+ 'seopress_seo_ultimate_migration' => admin_url('admin-ajax.php'),
83
+ ],
84
+ 'seopress_wp_meta_seo_migrate' => [
85
+ 'seopress_nonce' => wp_create_nonce('seopress_meta_seo_migrate_nonce'),
86
+ 'seopress_wp_meta_seo_migration' => admin_url('admin-ajax.php'),
87
+ ],
88
+ 'seopress_premium_seo_pack_migrate' => [
89
+ 'seopress_nonce' => wp_create_nonce('seopress_premium_seo_pack_migrate_nonce'),
90
+ 'seopress_premium_seo_pack_migration' => admin_url('admin-ajax.php'),
91
+ ],
92
+ 'seopress_wpseo_migrate' => [
93
+ 'seopress_nonce' => wp_create_nonce('seopress_wpseo_migrate_nonce'),
94
+ 'seopress_wpseo_migration' => admin_url('admin-ajax.php'),
95
+ ],
96
  'seopress_metadata_csv' => [
97
+ 'seopress_nonce' => wp_create_nonce('seopress_export_csv_metadata_nonce'),
98
+ 'seopress_metadata_export' => admin_url('admin-ajax.php'),
99
+ ],
100
  'i18n' => [
101
+ 'migration' => __('Migration completed!', 'wp-seopress'),
102
+ 'export' => __('Export completed!', 'wp-seopress'),
103
+ ],
104
+ ];
105
+ wp_localize_script('seopress-migrate-ajax', 'seopressAjaxMigrate', $seopress_migrate);
106
+ }
107
+
108
+ /**
109
+ * Show the setup wizard.
110
+ */
111
+ public function setup_wizard() {
112
+ if (empty($_GET['page']) || 'seopress-setup' !== $_GET['page']) {
113
+ return;
114
+ }
115
+ $default_steps = [
116
+ 'import_settings' => [
117
+ 'name' => __('Import SEO settings', 'wp-seopress'),
118
+ 'view' => [$this, 'seopress_setup_import_settings'],
119
+ 'handler' => [$this, 'seopress_setup_import_settings_save'],
120
+ ],
121
+ 'site' => [
122
+ 'name' => __('Your site', 'wp-seopress'),
123
+ 'view' => [$this, 'seopress_setup_site'],
124
+ 'handler' => [$this, 'seopress_setup_site_save'],
125
+ ],
126
+ 'indexing' => [
127
+ 'name' => __('Indexing', 'wp-seopress'),
128
+ 'view' => [$this, 'seopress_setup_indexing'],
129
+ 'handler' => [$this, 'seopress_setup_indexing_save'],
130
+ ],
131
+ 'advanced' => [
132
+ 'name' => __('Advanced options', 'wp-seopress'),
133
+ 'view' => [$this, 'seopress_setup_advanced'],
134
+ 'handler' => [$this, 'seopress_setup_advanced_save'],
135
+ ],
136
+ 'ready' => [
137
+ 'name' => __('Ready!', 'wp-seopress'),
138
+ 'view' => [$this, 'seopress_setup_ready'],
139
+ 'handler' => '',
140
+ ],
141
+ ];
142
+
143
+ $this->steps = apply_filters('seopress_setup_wizard_steps', $default_steps);
144
+ $this->step = isset($_GET['step']) ? sanitize_key($_GET['step']) : current(array_keys($this->steps));
145
+
146
+ if ( ! empty($_POST['save_step']) && isset($this->steps[$this->step]['handler'])) {
147
+ call_user_func($this->steps[$this->step]['handler'], $this);
148
+ }
149
+
150
+ ob_start();
151
+ $this->setup_wizard_header();
152
+ $this->setup_wizard_steps();
153
+ $this->setup_wizard_content();
154
+ $this->setup_wizard_footer();
155
+ exit;
156
+ }
157
+
158
+ /**
159
+ * Get the URL for the next step's screen.
160
+ *
161
+ * @param string $step slug (default: current step)
162
+ *
163
+ * @return string URL for next step if a next step exists.
164
+ * Admin URL if it's the last step.
165
+ * Empty string on failure.
166
+ *
167
+ * @since 3.5.8
168
+ */
169
+ public function get_next_step_link($step = '') {
170
+ if ( ! $step) {
171
+ $step = $this->step;
172
+ }
173
+
174
+ $keys = array_keys($this->steps);
175
+ if (end($keys) === $step) {
176
+ return admin_url();
177
+ }
178
+
179
+ $step_index = array_search($step, $keys, true);
180
+ if (false === $step_index) {
181
+ return '';
182
+ }
183
+
184
+ return add_query_arg('step', $keys[$step_index + 1], remove_query_arg('activate_error'));
185
+ }
186
+
187
+ /**
188
+ * Setup Wizard Header.
189
+ */
190
+ public function setup_wizard_header() {
191
+ set_current_screen(); ?>
192
  <!DOCTYPE html>
193
  <html <?php language_attributes(); ?>>
194
  <head>
195
  <meta name="viewport" content="width=device-width" />
196
  <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
197
+ <title><?php esc_html_e('SEOPress &rsaquo; Setup Wizard', 'wp-seopress'); ?></title>
198
+ <?php do_action('admin_enqueue_scripts'); ?>
199
+ <?php wp_print_scripts('seopress-migrate-ajax'); ?>
200
+ <?php do_action('admin_print_styles'); ?>
201
+ <?php do_action('admin_head'); ?>
202
  </head>
203
  <body class="seopress-setup wp-core-ui">
204
  <?php
205
+ }
206
+
207
+ /**
208
+ * Setup Wizard Footer.
209
+ */
210
+ public function setup_wizard_footer() {
211
+ ?>
212
+ <?php if ('import_settings' === $this->step) { ?>
213
+ <a class="seopress-setup-footer-links" href="<?php echo esc_url(admin_url()); ?>"><?php esc_html_e('Not right now', 'wp-seopress'); ?></a>
214
+ <?php } elseif ('site' === $this->step || 'indexing' === $this->step || 'advanced' === $this->step) { ?>
215
+ <a class="seopress-setup-footer-links" href="<?php echo esc_url($this->get_next_step_link()); ?>"><?php esc_html_e('Skip this step', 'wp-seopress'); ?></a>
216
+ <?php } ?>
217
+ <?php do_action('seopress_setup_footer'); ?>
218
  </body>
219
  </html>
220
  <?php
221
+ }
222
+
223
+ /**
224
+ * Output the steps.
225
+ */
226
+ public function setup_wizard_steps() {
227
+ $output_steps = $this->steps; ?>
 
228
  <ol class="seopress-setup-steps">
229
  <?php
230
+ foreach ($output_steps as $step_key => $step) {
231
+ $is_completed = array_search($this->step, array_keys($this->steps), true) > array_search($step_key, array_keys($this->steps), true);
232
 
233
+ if ($step_key === $this->step) {
234
+ ?>
235
+ <li class="active"><span><?php echo esc_html($step['name']); ?></span></li>
236
  <?php
237
+ } elseif ($is_completed) {
238
+ ?>
239
  <li class="done">
240
+ <a href="<?php echo esc_url(add_query_arg('step', $step_key, remove_query_arg('activate_error'))); ?>"><?php echo esc_html($step['name']); ?></a>
241
  </li>
242
  <?php
243
+ } else {
244
+ ?>
245
+ <li><span><?php echo esc_html($step['name']); ?></span></li>
246
  <?php
247
+ }
248
+ } ?>
 
249
  </ol>
250
  <?php
251
+ }
252
+
253
+ /**
254
+ * Output the content for the current step.
255
+ */
256
+ public function setup_wizard_content() {
257
+ echo '<div class="seopress-setup-content">';
258
+ if ( ! empty($this->steps[$this->step]['view'])) {
259
+ call_user_func($this->steps[$this->step]['view'], $this);
260
+ }
261
+ echo '</div>';
262
+ }
263
+
264
+ /**
265
+ * Init "Step 1: Import SEO settings".
266
+ */
267
+ public function seopress_setup_import_settings() {
268
+ ?>
269
  <form method="post" class="address-step">
270
+ <?php wp_nonce_field('seopress-setup'); ?>
271
+ <h2><?php _e('Welcome!', 'wp-seopress'); ?></h2>
272
+ <p class="store-setup"><?php esc_html_e('The following wizard will help you configure SEOPress and get you started quickly.', 'wp-seopress'); ?></p>
273
+ <p class="store-setup"><?php esc_html_e('The first step is to import your previous settings from other plugins to keep your SEO.', 'wp-seopress'); ?></p>
274
+ <p class="store-setup"><?php esc_html_e('No data to migrate? Click "Next step" button!', 'wp-seopress'); ?></p>
275
 
276
+ <h3><span><?php _e('Import posts and terms metadata from', 'wp-seopress'); ?></span></h3>
277
  <select id="select-wizard-import" name="select-wizard-import">
278
+ <option value="none"><?php _e('Select an option', 'wp-seopress'); ?></option>
279
+ <option value="yoast-migration-tool"><?php _e('Yoast SEO', 'wp-seopress'); ?></option>
280
+ <option value="aio-migration-tool"><?php _e('All In One SEO', 'wp-seopress'); ?></option>
281
+ <option value="seo-framework-migration-tool"><?php _e('The SEO Framework', 'wp-seopress'); ?></option>
282
+ <option value="rk-migration-tool"><?php _e('Rank Math', 'wp-seopress'); ?></option>
283
+ <option value="squirrly-migration-tool"><?php _e('Squirrly SEO', 'wp-seopress'); ?></option>
284
+ <option value="seo-ultimate-migration-tool"><?php _e('SEO Ultimate', 'wp-seopress'); ?></option>
285
+ <option value="wp-meta-seo-migration-tool"><?php _e('WP Meta SEO', 'wp-seopress'); ?></option>
286
+ <option value="premium-seo-pack-migration-tool"><?php _e('Premium SEO Pack', 'wp-seopress'); ?></option>
287
+ <option value="wpseo-migration-tool"><?php _e('wpSEO', 'wp-seopress'); ?></option>
288
  </select>
289
 
290
  <br><br>
292
  <div class="store-address-container">
293
  <!-- Yoast import tool -->
294
  <div id="yoast-migration-tool" class="postbox section-tool seopress-wizard-services">
295
+ <h3><span><?php _e('Import posts and terms metadata from Yoast', 'wp-seopress'); ?></span></h3>
296
+ <p><?php _e('By clicking Migrate, we\'ll import:', 'wp-seopress'); ?></p>
297
  <ul>
298
+ <li><?php _e('Title tags', 'wp-seopress'); ?></li>
299
+ <li><?php _e('Meta description', 'wp-seopress'); ?></li>
300
+ <li><?php _e('Facebook Open Graph tags (title, description and image thumbnail)', 'wp-seopress'); ?></li>
301
+ <li><?php _e('Twitter tags (title, description and image thumbnail)', 'wp-seopress'); ?></li>
302
+ <li><?php _e('Meta Robots (noindex, nofollow...)', 'wp-seopress'); ?></li>
303
+ <li><?php _e('Canonical URL', 'wp-seopress'); ?></li>
304
+ <li><?php _e('Focus keywords', 'wp-seopress'); ?></li>
305
+ <li><?php _e('Primary category', 'wp-seopress'); ?></li>
306
  </ul>
307
+ <p style="color:red"><span class="dashicons dashicons-warning"></span> <?php _e('<strong>WARNING:</strong> Migration will delete / update all SEOPress posts and terms metadata. Some dynamic variables will not be interpreted. We do NOT delete any Yoast data.', 'wp-seopress'); ?></p>
308
+ <button id="seopress-yoast-migrate" type="button" class="button"><?php _e('Migrate now', 'wp-seopress'); ?></button>
309
  <span class="spinner"></span>
310
  <div class="log"></div>
311
  </div><!-- .postbox -->
312
 
313
  <!-- All In One import tool -->
314
  <div id="aio-migration-tool" class="postbox section-tool seopress-wizard-services">
315
+ <h3><span><?php _e('Import posts and terms metadata from All In One SEO', 'wp-seopress'); ?></span></h3>
316
+ <p><?php _e('By clicking Migrate, we\'ll import:', 'wp-seopress'); ?></p>
317
  <ul>
318
+ <li><?php _e('Title tags', 'wp-seopress'); ?></li>
319
+ <li><?php _e('Meta description', 'wp-seopress'); ?></li>
320
+ <li><?php _e('Facebook Open Graph tags (title, description and image thumbnail)', 'wp-seopress'); ?></li>
321
+ <li><?php _e('Twitter image thumbnail', 'wp-seopress'); ?></li>
322
+ <li><?php _e('Meta Robots (noindex, nofollow)', 'wp-seopress'); ?></li>
323
  </ul>
324
+ <p style="color:red"><span class="dashicons dashicons-warning"></span> <?php _e('<strong>WARNING:</strong> Migration will update/delete all SEOPress posts and terms metadata. Some dynamic variables will not be interpreted. We do NOT delete any AIO data.', 'wp-seopress'); ?></p>
325
+ <button id="seopress-aio-migrate" type="button" class="button"><?php _e('Migrate now', 'wp-seopress'); ?></button>
326
  <span class="spinner"></span>
327
  <div class="log"></div>
328
  </div><!-- .postbox -->
329
 
330
  <!-- SEO Framework import tool -->
331
  <div id="seo-framework-migration-tool" class="postbox section-tool seopress-wizard-services">
332
+ <h3><span><?php _e('Import posts and terms metadata from The SEO Framework', 'wp-seopress'); ?></span></h3>
333
+ <p><?php _e('By clicking Migrate, we\'ll import:', 'wp-seopress'); ?></p>
334
  <ul>
335
+ <li><?php _e('Title tags', 'wp-seopress'); ?></li>
336
+ <li><?php _e('Meta description', 'wp-seopress'); ?></li>
337
+ <li><?php _e('Facebook Open Graph tags (title, description and image thumbnail)', 'wp-seopress'); ?></li>
338
+ <li><?php _e('Twitter tags (title, description and image thumbnail)', 'wp-seopress'); ?></li>
339
+ <li><?php _e('Meta Robots (noindex, nofollow, noarchive)', 'wp-seopress'); ?></li>
340
+ <li><?php _e('Canonical URL', 'wp-seopress'); ?></li>
341
+ <li><?php _e('Redirect URL', 'wp-seopress'); ?></li>
342
  </ul>
343
+ <p style="color:red"><span class="dashicons dashicons-warning"></span> <?php _e('<strong>WARNING:</strong> Migration will update / delete all SEOPress posts and terms metadata. Some dynamic variables will not be interpreted. We do NOT delete any SEO Framework data.', 'wp-seopress'); ?></p>
344
+ <button id="seopress-seo-framework-migrate" type="button" class="button"><?php _e('Migrate now', 'wp-seopress'); ?></button>
345
  <span class="spinner"></span>
346
  <div class="log"></div>
347
  </div><!-- .postbox -->
348
 
349
  <!-- RK import tool -->
350
  <div id="rk-migration-tool" class="postbox section-tool seopress-wizard-services">
351
+ <h3><span><?php _e('Import posts and terms metadata from Rank Math', 'wp-seopress'); ?></span></h3>
352
+ <p><?php _e('By clicking Migrate, we\'ll import:', 'wp-seopress'); ?></p>
353
  <ul>
354
+ <li><?php _e('Title tags', 'wp-seopress'); ?></li>
355
+ <li><?php _e('Meta description', 'wp-seopress'); ?></li>
356
+ <li><?php _e('Facebook Open Graph tags (title, description and image thumbnail)', 'wp-seopress'); ?></li>
357
+ <li><?php _e('Twitter tags (title, description and image thumbnail)', 'wp-seopress'); ?></li>
358
+ <li><?php _e('Meta Robots (noindex, nofollow, noarchive, noimageindex)', 'wp-seopress'); ?></li>
359
+ <li><?php _e('Canonical URL', 'wp-seopress'); ?></li>
360
+ <li><?php _e('Focus keywords', 'wp-seopress'); ?></li>
361
  </ul>
362
+ <p style="color:red"><span class="dashicons dashicons-warning"></span> <?php _e('<strong>WARNING:</strong> Migration will update / delete all SEOPress posts and terms metadata. Some dynamic variables will not be interpreted. We do NOT delete any Rank Math data.', 'wp-seopress'); ?></p>
363
+ <button id="seopress-rk-migrate" type="button" class="button"><?php _e('Migrate now', 'wp-seopress'); ?></button>
364
  <span class="spinner"></span>
365
  <div class="log"></div>
366
  </div><!-- .postbox -->
367
 
368
  <!-- Squirrly import tool -->
369
  <div id="squirrly-migration-tool" class="postbox section-tool seopress-wizard-services">
370
+ <h3><span><?php _e('Import posts metadata from Squirrly SEO', 'wp-seopress'); ?></span></h3>
371
+ <p><?php _e('By clicking Migrate, we\'ll import:', 'wp-seopress'); ?></p>
372
  <ul>
373
+ <li><?php _e('Title tags', 'wp-seopress'); ?></li>
374
+ <li><?php _e('Meta description', 'wp-seopress'); ?></li>
375
+ <li><?php _e('Facebook Open Graph tags (title, description and image thumbnail)', 'wp-seopress'); ?></li>
376
+ <li><?php _e('Twitter tags (title, description and image thumbnail)', 'wp-seopress'); ?></li>
377
+ <li><?php _e('Meta Robots (noindex or nofollow)', 'wp-seopress'); ?></li>
378
+ <li><?php _e('Canonical URL', 'wp-seopress'); ?></li>
379
  </ul>
380
+ <p style="color:red"><span class="dashicons dashicons-info"></span> <?php _e('<strong>WARNING:</strong> Migration will update / delete all SEOPress posts metadata. Some dynamic variables will not be interpreted. We do NOT delete any Squirrly SEO data.', 'wp-seopress'); ?></p>
381
+ <button id="seopress-squirrly-migrate" type="button" class="button"><?php _e('Migrate now', 'wp-seopress'); ?></button>
382
  <span class="spinner"></span>
383
  <div class="log"></div>
384
  </div><!-- .postbox -->
385
+
386
  <!-- SEO Ultimate import tool -->
387
  <div id="seo-ultimate-migration-tool" class="postbox section-tool seopress-wizard-services">
388
+ <h3><span><?php _e('Import posts metadata from SEO Ultimate', 'wp-seopress'); ?></span></h3>
389
+ <p><?php _e('By clicking Migrate, we\'ll import:', 'wp-seopress'); ?></p>
390
  <ul>
391
+ <li><?php _e('Title tags', 'wp-seopress'); ?></li>
392
+ <li><?php _e('Meta description', 'wp-seopress'); ?></li>
393
+ <li><?php _e('Facebook Open Graph tags (title, description and image thumbnail)', 'wp-seopress'); ?></li>
394
+ <li><?php _e('Twitter tags (title, description and image thumbnail)', 'wp-seopress'); ?></li>
395
+ <li><?php _e('Meta Robots (noindex or nofollow)', 'wp-seopress'); ?></li>
396
  </ul>
397
+ <p style="color:red"><span class="dashicons dashicons-info"></span> <?php _e('<strong>WARNING:</strong> Migration will update / delete all SEOPress posts metadata. Some dynamic variables will not be interpreted. We do NOT delete any SEO Ultimate data.', 'wp-seopress'); ?></p>
398
+ <button id="seopress-seo-ultimate-migrate" type="button" class="button"><?php _e('Migrate now', 'wp-seopress'); ?></button>
399
  <span class="spinner"></span>
400
  <div class="log"></div>
401
  </div><!-- .postbox -->
402
 
403
  <!-- WP Meta SEO import tool -->
404
  <div id="wp-meta-seo-migration-tool" class="postbox section-tool seopress-wizard-services">
405
+ <h3><span><?php _e('Import posts and terms metadata from WP Meta SEO', 'wp-seopress'); ?></span></h3>
406
+ <p><?php _e('By clicking Migrate, we\'ll import:', 'wp-seopress'); ?></p>
407
  <ul>
408
+ <li><?php _e('Title tags', 'wp-seopress'); ?></li>
409
+ <li><?php _e('Meta description', 'wp-seopress'); ?></li>
410
+ <li><?php _e('Facebook Open Graph tags (title, description and image thumbnail)', 'wp-seopress'); ?></li>
411
+ <li><?php _e('Twitter tags (title, description and image thumbnail)', 'wp-seopress'); ?></li>
412
  </ul>
413
+ <p style="color:red"><span class="dashicons dashicons-info"></span> <?php _e('<strong>WARNING:</strong> Migration will update / delete all SEOPress posts metadata. Some dynamic variables will not be interpreted. We do NOT delete any WP Meta SEO data.', 'wp-seopress'); ?></p>
414
+ <button id="seopress-wp-meta-seo-migrate" type="button" class="button"><?php _e('Migrate now', 'wp-seopress'); ?></button>
415
  <span class="spinner"></span>
416
  <div class="log"></div>
417
  </div><!-- .postbox -->
418
 
419
  <!-- Premium SEO Pack import tool -->
420
  <div id="premium-seo-pack-migration-tool" class="postbox section-tool seopress-wizard-services">
421
+ <h3><span><?php _e('Import posts and terms metadata from Premium SEO Pack', 'wp-seopress'); ?></span></h3>
422
+ <p><?php _e('By clicking Migrate, we\'ll import:', 'wp-seopress'); ?></p>
423
  <ul>
424
+ <li><?php _e('Title tags', 'wp-seopress'); ?></li>
425
+ <li><?php _e('Meta description', 'wp-seopress'); ?></li>
426
+ <li><?php _e('Facebook Open Graph tags (title, description and image thumbnail)', 'wp-seopress'); ?></li>
427
+ <li><?php _e('Meta Robots (noindex, nofollow)', 'wp-seopress'); ?></li>
428
+ <li><?php _e('Canonical URL', 'wp-seopress'); ?></li>
429
+ <li><?php _e('Focus keywords', 'wp-seopress'); ?></li>
430
  </ul>
431
+ <p style="color:red"><span class="dashicons dashicons-info"></span> <?php _e('<strong>WARNING:</strong> Migration will update / delete all SEOPress posts metadata. Some dynamic variables will not be interpreted. We do NOT delete any Premium SEO Pack data.', 'wp-seopress'); ?></p>
432
+ <button id="seopress-premium-seo-pack-migrate" type="button" class="button"><?php _e('Migrate now', 'wp-seopress'); ?></button>
433
  <span class="spinner"></span>
434
  <div class="log"></div>
435
  </div><!-- .postbox -->
437
  <!-- wpSEO import tool -->
438
  <div id="wpseo-migration-tool" class="postbox section-tool seopress-wizard-services">
439
  <div class="inside">
440
+ <h3><span><?php _e('Import posts and terms metadata from wpSEO', 'wp-seopress'); ?></span></h3>
441
+ <p><?php _e('By clicking Migrate, we\'ll import:', 'wp-seopress'); ?></p>
442
  <ul>
443
+ <li><?php _e('Title tags', 'wp-seopress'); ?></li>
444
+ <li><?php _e('Meta description', 'wp-seopress'); ?></li>
445
+ <li><?php _e('Facebook Open Graph tags (title, description and image thumbnail)', 'wp-seopress'); ?></li>
446
+ <li><?php _e('Twitter tags (title, description and image thumbnail)', 'wp-seopress'); ?></li>
447
+ <li><?php _e('Meta Robots (noindex, nofollow)', 'wp-seopress'); ?></li>
448
+ <li><?php _e('Canonical URL', 'wp-seopress'); ?></li>
449
+ <li><?php _e('Redirect URL', 'wp-seopress'); ?></li>
450
+ <li><?php _e('Main keyword', 'wp-seopress'); ?></li>
451
  </ul>
452
+ <p style="color:red"><span class="dashicons dashicons-info"></span> <?php _e('<strong>WARNING:</strong> Migration will update / delete all SEOPress posts metadata. Some dynamic variables will not be interpreted. We do NOT delete any wpSEO data.', 'wp-seopress'); ?></p>
453
+ <button id="seopress-wpseo-migrate" type="button" class="button"><?php _e('Migrate now', 'wp-seopress'); ?></button>
454
  <span class="spinner"></span>
455
  <div class="log"></div>
456
  </div><!-- .inside -->
458
  </div>
459
 
460
  <p class="seopress-setup-actions step">
461
+ <button type="submit" class="button-primary button button-large button-next" value="<?php esc_attr_e('Next step', 'wp-seopress'); ?>" name="save_step"><?php esc_html_e('Next step', 'wp-seopress'); ?></button>
462
+ <?php wp_nonce_field('seopress-setup'); ?>
463
  </p>
464
  </form>
465
  <?php
466
+ }
467
+
468
+ /**
469
+ * Save step 1 settings.
470
+ */
471
+ public function seopress_setup_import_settings_save() {
472
+ check_admin_referer('seopress-setup');
473
+ wp_safe_redirect(esc_url_raw($this->get_next_step_link()));
474
+ exit;
475
+ }
476
+
477
+ /**
478
+ * Init "Step 2: Your site".
479
+ */
480
+ public function seopress_setup_site() {
481
+ $seopress_titles_option = get_option('seopress_titles_option_name');
482
+ $seopress_social_option = get_option('seopress_social_option_name');
483
+
484
+ $site_sep = isset($seopress_titles_option['seopress_titles_sep']) ? $seopress_titles_option['seopress_titles_sep'] : null;
485
+ $site_title = isset($seopress_titles_option['seopress_titles_home_site_title']) ? $seopress_titles_option['seopress_titles_home_site_title'] : null;
486
+ $knowledge_type = isset($seopress_social_option['seopress_social_knowledge_type']) ? $seopress_social_option['seopress_social_knowledge_type'] : null;
487
+ $knowledge_name = isset($seopress_social_option['seopress_social_knowledge_name']) ? $seopress_social_option['seopress_social_knowledge_name'] : null;
488
+ $knowledge_img = isset($seopress_social_option['seopress_social_knowledge_img']) ? $seopress_social_option['seopress_social_knowledge_img'] : null;
489
+ $knowledge_fb = isset($seopress_social_option['seopress_social_accounts_facebook']) ? $seopress_social_option['seopress_social_accounts_facebook'] : null;
490
+ $knowledge_tw = isset($seopress_social_option['seopress_social_accounts_twitter']) ? $seopress_social_option['seopress_social_accounts_twitter'] : null;
491
+ $knowledge_pin = isset($seopress_social_option['seopress_social_accounts_pinterest']) ? $seopress_social_option['seopress_social_accounts_pinterest'] : null;
492
+ $knowledge_insta = isset($seopress_social_option['seopress_social_accounts_instagram']) ? $seopress_social_option['seopress_social_accounts_instagram'] : null;
493
+ $knowledge_yt = isset($seopress_social_option['seopress_social_accounts_youtube']) ? $seopress_social_option['seopress_social_accounts_youtube'] : null;
494
+ $knowledge_li = isset($seopress_social_option['seopress_social_accounts_linkedin']) ? $seopress_social_option['seopress_social_accounts_linkedin'] : null; ?>
495
+
496
+ <h1><?php esc_html_e('Your site', 'wp-seopress'); ?></h1>
 
 
 
 
497
  <form method="post">
498
+ <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>
499
 
500
+ <label class="location-prompt" for="site_sep"><?php esc_html_e('Separator', 'wp-seopress'); ?></label>
501
  <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; ?>" />
502
 
503
+ <label class="location-prompt" for="site_title"><?php esc_html_e('Site title', 'wp-seopress'); ?></label>
504
  <input type="text" id="site_title" class="location-input" name="site_title" placeholder="<?php esc_html_e('eg: My super website', 'wp-seopress'); ?>" required value="<?php echo $site_title; ?>" />
505
 
506
+ <label class="location-prompt" for="knowledge_type"><?php esc_html_e('Person or organization', 'wp-seopress'); ?></label>
507
  <?php
508
+ echo '<select id="knowledge_type" name="knowledge_type" data-placeholder="' . esc_attr__('Choose a knowledge type', 'wp-seopress') . '" class="location-input wc-enhanced-select dropdown">';
509
+ echo ' <option ';
510
+ if ('None' == $knowledge_type) {
511
+ echo 'selected="selected"';
512
+ }
513
+ echo ' value="none">' . __('None (will disable this feature)', 'wp-seopress') . '</option>';
514
+ echo ' <option ';
515
+ if ('Person' == $knowledge_type) {
516
+ echo 'selected="selected"';
517
+ }
518
+ echo ' value="Person">' . __('Person', 'wp-seopress') . '</option>';
519
+ echo '<option ';
520
+ if ('Organization' == $knowledge_type) {
521
+ echo 'selected="selected"';
522
+ }
523
+ echo ' value="Organization">' . __('Organization', 'wp-seopress') . '</option>';
524
+ echo '</select>'; ?>
525
+
526
+ <label class="location-prompt" for="knowledge_name"><?php esc_html_e('Your name/organization', 'wp-seopress'); ?></label>
527
  <input type="text" id="knowledge_name" class="location-input" name="knowledge_name" placeholder="<?php esc_html_e('eg: My Company Name', 'wp-seopress'); ?>" value="<?php echo $knowledge_name; ?>" />
528
 
529
+ <label class="location-prompt" for="knowledge_img"><?php esc_html_e('Your photo/organization logo', 'wp-seopress'); ?></label>
530
  <input type="text" id="knowledge_img" class="location-input" name="knowledge_img" placeholder="<?php esc_html_e('eg: https://www.example.com/logo.png', 'wp-seopress'); ?>" value="<?php echo $knowledge_img; ?>" />
531
 
532
+ <label class="location-prompt" for="knowledge_fb"><?php esc_html_e('Facebook page URL', 'wp-seopress'); ?></label>
533
+ <input type="text" id="knowledge_fb" class="location-input" name="knowledge_fb" placeholder="<?php esc_html_e('eg: https://facebook.com/my-page-url', 'wp-seopress'); ?>" value="<?php echo $knowledge_fb; ?>" />
534
 
535
+ <label class="location-prompt" for="knowledge_tw"><?php esc_html_e('Twitter Username', 'wp-seopress'); ?></label>
536
  <input type="text" id="knowledge_tw" class="location-input" name="knowledge_tw" placeholder="<?php esc_html_e('eg: @my_twitter_account', 'wp-seopress'); ?>" value="<?php echo $knowledge_tw; ?>" />
537
 
538
+ <label class="location-prompt" for="knowledge_pin"><?php esc_html_e('Pinterest URL', 'wp-seopress'); ?></label>
539
  <input type="text" id="knowledge_pin" class="location-input" name="knowledge_pin" placeholder="<?php esc_html_e('eg: https://pinterest.com/my-page-url/', 'wp-seopress'); ?>" value="<?php echo $knowledge_pin; ?>" />
540
 
541
+ <label class="location-prompt" for="knowledge_insta"><?php esc_html_e('Instagram URL', 'wp-seopress'); ?></label>
542
  <input type="text" id="knowledge_insta" class="location-input" name="knowledge_insta" placeholder="<?php esc_html_e('eg: https://www.instagram.com/my-page-url/', 'wp-seopress'); ?>" value="<?php echo $knowledge_insta; ?>" />
543
 
544
+ <label class="location-prompt" for="knowledge_yt"><?php esc_html_e('YouTube URL', 'wp-seopress'); ?></label>
545
  <input type="text" id="knowledge_yt" class="location-input" name="knowledge_yt" placeholder="<?php esc_html_e('eg: https://www.youtube.com/my-channel-url', 'wp-seopress'); ?>" value="<?php echo $knowledge_yt; ?>" />
546
 
547
+ <label class="location-prompt" for="knowledge_li"><?php esc_html_e('LinkedIn URL', 'wp-seopress'); ?></label>
548
  <input type="text" id="knowledge_li" class="location-input" name="knowledge_li" placeholder="<?php esc_html_e('eg: http://linkedin.com/company/my-company-url/', 'wp-seopress'); ?>" value="<?php echo $knowledge_li; ?>" />
549
 
 
 
 
 
 
 
 
 
 
550
  <p class="seopress-setup-actions step">
551
+ <button type="submit" class="button-primary button button-large button-next" value="<?php esc_attr_e('Continue', 'wp-seopress'); ?>" name="save_step"><?php esc_html_e('Continue', 'wp-seopress'); ?></button>
552
+ <?php wp_nonce_field('seopress-setup'); ?>
553
  </p>
554
  </form>
555
  <?php
556
+ }
557
+
558
+ /**
559
+ * Save step 2 settings.
560
+ */
561
+ public function seopress_setup_site_save() {
562
+ check_admin_referer('seopress-setup');
563
+
564
+ //Get options
565
+ $seopress_titles_option = get_option('seopress_titles_option_name');
566
+ $seopress_social_option = get_option('seopress_social_option_name');
567
+
568
+ //Titles
569
+ $seopress_titles_option['seopress_titles_sep'] = isset($_POST['site_sep']) ? esc_attr(wp_unslash($_POST['site_sep'])) : '';
570
+ $seopress_titles_option['seopress_titles_home_site_title'] = isset($_POST['site_title']) ? sanitize_text_field(wp_unslash($_POST['site_title'])) : '';
571
+
572
+ //Social
573
+ $seopress_social_option['seopress_social_knowledge_type'] = isset($_POST['knowledge_type']) ? esc_attr(wp_unslash($_POST['knowledge_type'])) : '';
574
+ $seopress_social_option['seopress_social_knowledge_name'] = isset($_POST['knowledge_name']) ? sanitize_text_field(wp_unslash($_POST['knowledge_name'])) : '';
575
+ $seopress_social_option['seopress_social_knowledge_img'] = isset($_POST['knowledge_img']) ? sanitize_text_field(wp_unslash($_POST['knowledge_img'])) : '';
576
+
577
+ //Social accounts
578
+ $seopress_social_option['seopress_social_accounts_facebook'] = isset($_POST['knowledge_fb']) ? sanitize_text_field(wp_unslash($_POST['knowledge_fb'])) : '';
579
+ $seopress_social_option['seopress_social_accounts_twitter'] = isset($_POST['knowledge_tw']) ? sanitize_text_field(wp_unslash($_POST['knowledge_tw'])) : '';
580
+ $seopress_social_option['seopress_social_accounts_pinterest'] = isset($_POST['knowledge_pin']) ? sanitize_text_field(wp_unslash($_POST['knowledge_pin'])) : '';
581
+ $seopress_social_option['seopress_social_accounts_instagram'] = isset($_POST['knowledge_insta']) ? sanitize_text_field(wp_unslash($_POST['knowledge_insta'])) : '';
582
+ $seopress_social_option['seopress_social_accounts_youtube'] = isset($_POST['knowledge_yt']) ? sanitize_text_field(wp_unslash($_POST['knowledge_yt'])) : '';
583
+ $seopress_social_option['seopress_social_accounts_linkedin'] = isset($_POST['knowledge_li']) ? sanitize_text_field(wp_unslash($_POST['knowledge_li'])) : '';
584
+
585
+ //Save options
586
+ update_option('seopress_titles_option_name', $seopress_titles_option);
587
+ update_option('seopress_social_option_name', $seopress_social_option);
588
+
589
+ wp_safe_redirect(esc_url_raw($this->get_next_step_link()));
590
+ exit;
591
+ }
592
+
593
+ /**
594
+ * Init "Step 3: Indexing Step".
595
+ */
596
+ public function seopress_setup_indexing() {
597
+ $seopress_titles_option = get_option('seopress_titles_option_name'); ?>
598
+ <h1><?php esc_html_e('Indexing', 'wp-seopress'); ?></h1>
599
+ <p><?php esc_html_e('Specify to the search engines what you want to be indexed or not.', 'wp-seopress'); ?></p>
600
+ <p><?php esc_html_e('Avoid indexing duplicate or poor quality content.', 'wp-seopress'); ?></p>
601
+ <p><?php esc_html_e('Default: index', 'wp-seopress'); ?></p>
 
 
 
 
602
  <form method="post" class="seopress-wizard-indexing-form">
603
+ <?php if ( ! empty(seopress_get_post_types())) { ?>
604
  <div class="seopress-wizard-services">
605
  <p>
606
+ <?php _e('For which single post types, should indexing be disabled?', 'wp-seopress'); ?>
607
  </p>
608
 
609
  <ul>
610
  <?php
611
+ //Post Types
612
+ foreach (seopress_get_post_types() as $seopress_cpt_key => $seopress_cpt_value) {
613
+ $seopress_titles_single_titles = isset($seopress_titles_option['seopress_titles_single_titles'][$seopress_cpt_key]['noindex']);
614
+
615
+ echo '<h3>' . $seopress_cpt_value->labels->name . ' <em><small>[' . $seopress_cpt_value->name . ']</small></em></h3>';
616
+
617
+ //Single No-Index CPT
618
+ echo '<li class="recommended-item checkbox">';
619
+ echo '<input id="seopress_titles_single_cpt_noindex[' . $seopress_cpt_key . ']" name="seopress_titles_option_name[seopress_titles_single_titles][' . $seopress_cpt_key . '][noindex]" type="checkbox"';
620
+ if ('1' == $seopress_titles_single_titles) {
621
+ echo 'checked="yes"';
622
+ }
623
+ echo ' value="1"/>';
624
+
625
+ echo '<label for="seopress_titles_single_cpt_noindex[' . $seopress_cpt_key . ']">' . __('Do not display this single post type in search engine results <strong>(noindex)</strong>', 'wp-seopress') . '</label>';
626
+ echo '</li>';
627
+ }
628
+ ?>
629
  </ul>
630
  </div>
631
  <?php } ?>
632
 
633
+ <?php if ( ! empty(seopress_get_post_types())) { ?>
634
  <div class="seopress-wizard-services">
635
  <p>
636
+ <?php _e('For which post type archives, should indexing be disabled?', 'wp-seopress'); ?>
637
  </p>
638
 
639
  <ul>
640
  <?php
641
+ foreach (seopress_get_post_types() as $seopress_cpt_key => $seopress_cpt_value) {
642
+ if ( ! in_array($seopress_cpt_key, ['post', 'page'])) {
643
+ echo '<h3>' . $seopress_cpt_value->labels->name . ' <em><small>[' . $seopress_cpt_value->name . ']</small></em></h2>';
644
+
645
+ //Archive No-Index CPT
646
+ $seopress_titles_archive_titles = isset($seopress_titles_option['seopress_titles_archive_titles'][$seopress_cpt_key]['noindex']);
647
+
648
+ echo '<li class="recommended-item checkbox">';
649
+ echo '<input id="seopress_titles_archive_cpt_noindex[' . $seopress_cpt_key . ']" name="seopress_titles_option_name[seopress_titles_archive_titles][' . $seopress_cpt_key . '][noindex]" type="checkbox"';
650
+ if ('1' == $seopress_titles_archive_titles) {
651
+ echo 'checked="yes"';
652
+ }
653
+ echo ' value="1"/>';
654
+
655
+ echo '<label for="seopress_titles_archive_cpt_noindex[' . $seopress_cpt_key . ']">' . __('Do not display this post type archive in search engine results <strong>(noindex)</strong>', 'wp-seopress') . '</label>';
656
+ echo '</li>';
657
+ }
658
+ }
659
+ ?>
660
  </ul>
661
  </div>
662
  <?php } ?>
663
 
664
+ <?php if ( ! empty(seopress_get_taxonomies())) { ?>
665
  <div class="seopress-wizard-services">
666
  <p>
667
+ <?php _e('For which taxonomy archives, should indexing be disabled?', 'wp-seopress'); ?>
668
  </p>
669
 
670
  <ul>
671
  <?php
672
+ //Archives
673
+ foreach (seopress_get_taxonomies() as $seopress_tax_key => $seopress_tax_value) {
674
+ $seopress_titles_tax_titles = isset($seopress_titles_option['seopress_titles_tax_titles'][$seopress_tax_key]['noindex']);
675
+
676
+ echo '<h3>' . $seopress_tax_value->labels->name . ' <em><small>[' . $seopress_tax_value->name . ']</small></em></h2>';
677
+
678
+ //Tax No-Index
679
+ echo '<li class="recommended-item checkbox">';
680
+ echo '<input id="seopress_titles_tax_noindex[' . $seopress_tax_key . ']" name="seopress_titles_option_name[seopress_titles_tax_titles][' . $seopress_tax_key . '][noindex]" type="checkbox"';
681
+ if ('1' == $seopress_titles_tax_titles) {
682
+ echo 'checked="yes"';
683
+ }
684
+ echo ' value="1"/>';
685
+
686
+ echo '<label for="seopress_titles_tax_noindex[' . $seopress_tax_key . ']">' . __('Do not display this taxonomy archive in search engine results <strong>(noindex)</strong>', 'wp-seopress') . '</label>';
687
+ echo '</li>';
688
+ }
689
+ ?>
690
  </ul>
691
  </div>
692
  <?php } ?>
693
 
694
  <p class="seopress-setup-actions step">
695
+ <button type="submit" class="button-primary button button-large button-next" value="<?php esc_attr_e('Continue', 'wp-seopress'); ?>" name="save_step"><?php esc_html_e('Continue', 'wp-seopress'); ?></button>
696
+ <?php wp_nonce_field('seopress-setup'); ?>
697
  </p>
698
  </form>
699
  <?php
700
+ }
701
+
702
+ /**
703
+ * Save Step 3 settings.
704
+ */
705
+ public function seopress_setup_indexing_save() {
706
+ check_admin_referer('seopress-setup');
707
+
708
+ //Get options
709
+ $seopress_titles_option = get_option('seopress_titles_option_name');
710
+
711
+ //Post Types noindex
712
+ foreach (seopress_get_post_types() as $seopress_cpt_key => $seopress_cpt_value) {
713
+ if (isset($_POST['seopress_titles_option_name']['seopress_titles_single_titles'][$seopress_cpt_key]['noindex'])) {
714
+ $noindex = esc_attr(wp_unslash($_POST['seopress_titles_option_name']['seopress_titles_single_titles'][$seopress_cpt_key]['noindex']));
715
+ } else {
716
+ $noindex = null;
717
+ }
718
+ $seopress_titles_option['seopress_titles_single_titles'][$seopress_cpt_key]['noindex'] = $noindex;
719
+ }
720
+
721
+ //Post Type archives noindex
722
+ foreach (seopress_get_post_types() as $seopress_cpt_key => $seopress_cpt_value) {
723
+ if (isset($_POST['seopress_titles_option_name']['seopress_titles_archive_titles'][$seopress_cpt_key]['noindex'])) {
724
+ $noindex = esc_attr(wp_unslash($_POST['seopress_titles_option_name']['seopress_titles_archive_titles'][$seopress_cpt_key]['noindex']));
725
+ } else {
726
+ $noindex = null;
727
+ }
728
+ $seopress_titles_option['seopress_titles_archive_titles'][$seopress_cpt_key]['noindex'] = $noindex;
729
+ }
730
+
731
+ //Archives noindex
732
+ foreach (seopress_get_taxonomies() as $seopress_tax_key => $seopress_tax_value) {
733
+ if (isset($_POST['seopress_titles_option_name']['seopress_titles_tax_titles'][$seopress_tax_key]['noindex'])) {
734
+ $noindex = esc_attr(wp_unslash($_POST['seopress_titles_option_name']['seopress_titles_tax_titles'][$seopress_tax_key]['noindex']));
735
+ } else {
736
+ $noindex = null;
737
+ }
738
+ $seopress_titles_option['seopress_titles_tax_titles'][$seopress_tax_key]['noindex'] = $noindex;
739
+ }
740
+
741
+ //Save options
742
+ update_option('seopress_titles_option_name', $seopress_titles_option);
743
+
744
+ wp_redirect(esc_url_raw($this->get_next_step_link()));
745
+ exit;
746
+ }
747
+
748
+ /**
749
+ * Init "Step 4: Advanced Step".
750
+ */
751
+ public function seopress_setup_advanced() {
752
+ $seopress_titles_option = get_option('seopress_titles_option_name');
753
+ $author_noindex = isset($seopress_titles_option['seopress_titles_archives_author_noindex']);
754
+ $seopress_advanced_option = get_option('seopress_advanced_option_name');
755
+ $attachments_file = isset($seopress_advanced_option['seopress_advanced_advanced_attachments_file']);
756
+ $category_url = isset($seopress_advanced_option['seopress_advanced_advanced_category_url']);
757
+ $meta_title = isset($seopress_advanced_option['seopress_advanced_appearance_title_col']);
758
+ $meta_desc = isset($seopress_advanced_option['seopress_advanced_appearance_meta_desc_col']);
759
+ $robots_noindex = isset($seopress_advanced_option['seopress_advanced_appearance_noindex_col']);
760
+ $robots_nofollow = isset($seopress_advanced_option['seopress_advanced_appearance_nofollow_col']);
761
+ $ca_score = isset($seopress_advanced_option['seopress_advanced_appearance_score_col']); ?>
762
+
763
+ <h1><?php esc_html_e('Advanced options', 'wp-seopress'); ?></h1>
764
+
765
  <form method="post">
766
  <ul class="seopress-wizard-services">
767
+ <!-- Noindex on author archives -->
768
+ <li class="seopress-wizard-service-item checkbox">
769
+ <input id="author_noindex" class="location-input" name="author_noindex" type="checkbox" <?php if ('1' == $author_noindex) {
770
+ echo 'checked="yes"';
771
+ } ?> value="1"/>
772
+ <label for="author_noindex" class="location-prompt">
773
+ <?php _e('Do not display author archives in search engine results <strong>(noindex)</strong>', 'wp-seopress'); ?>
774
+ </label>
775
+ </li>
776
+ <li class="seopress-wizard-service-info">
777
+ <?php _e('You only have one author on your site? Check this option to avoid duplicate content.', 'wp-seopress'); ?>
778
+ </li>
779
+
780
+ <!-- Redirect attachment pages to URL -->
781
+ <li class="seopress-wizard-service-item checkbox">
782
+ <input id="attachments_file" class="location-input" name="attachments_file" type="checkbox" <?php if ('1' == $attachments_file) {
783
+ echo 'checked="yes"';
784
+ } ?> value="1"/>
785
+ <label for="attachments_file" class="location-prompt">
786
+ <?php _e('Redirect attachment pages to their file URL (https://www.example.com/my-image-file.jpg)', 'wp-seopress'); ?>
787
+ </label>
788
+ </li>
789
+ <li class="seopress-wizard-service-info">
790
+ <?php _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'); ?>
791
+ </li>
792
+
793
+ <!-- Remove /category/ in URLs -->
794
+ <li class="seopress-wizard-service-item checkbox">
795
+ <input id="category_url" name="category_url" type="checkbox" class="location-input" <?php if ('1' == $category_url) {
796
+ echo 'checked="yes"';
797
+ } ?> value="1"/>
798
+ <label for="category_url" class="location-prompt">
799
+ <?php _e('Remove /category/ in your permalinks', 'wp-seopress'); ?>
800
+ </label>
801
+ </li>
802
+ <li class="seopress-wizard-service-info">
803
+ <?php _e('Shorten your URLs by removing /category/ and improve your SEO.', 'wp-seopress'); ?>
804
+ </li>
805
  </ul>
806
 
807
+ <p>
808
+ <?php _e('Choose which SEO columns to display in post types list:', 'wp-seopress'); ?>
809
+ </p>
810
+
811
+ <ul class="seopress-wizard-services">
812
+ <!-- Show meta title -->
813
+ <li class="seopress-wizard-service-item checkbox">
814
+ <input id="meta_title" name="meta_title" type="checkbox" class="location-input" <?php if ('1' == $meta_title) {
815
+ echo 'checked="yes"';
816
+ } ?> value="1"/>
817
+ <label for="meta_title" class="location-prompt">
818
+ <?php _e('Show Title tag column in post types', 'wp-seopress'); ?>
819
+ </label>
820
+ </li>
821
+
822
+ <!-- Show meta description -->
823
+ <li class="seopress-wizard-service-item checkbox">
824
+ <input id="meta_desc" name="meta_desc" type="checkbox" class="location-input" <?php if ('1' == $meta_desc) {
825
+ echo 'checked="yes"';
826
+ } ?> value="1"/>
827
+ <label for="meta_desc" class="location-prompt">
828
+ <?php _e('Show Meta description column in post types', 'wp-seopress'); ?>
829
+ </label>
830
+ </li>
831
+
832
+ <!-- Show meta robots noindex -->
833
+ <li class="seopress-wizard-service-item checkbox">
834
+ <input id="robots_noindex" name="robots_noindex" type="checkbox" class="location-input" <?php if ('1' == $robots_noindex) {
835
+ echo 'checked="yes"';
836
+ } ?> value="1"/>
837
+ <label for="robots_noindex" class="location-prompt">
838
+ <?php _e('Show noindex column in post types', 'wp-seopress'); ?>
839
+ </label>
840
+ </li>
841
+ <li class="seopress-wizard-service-info">
842
+ <?php _e('Quickly know if a content is in noindex.', 'wp-seopress'); ?>
843
+ </li>
844
+
845
+ <!-- Show meta robots nofollow -->
846
+ <li class="seopress-wizard-service-item checkbox">
847
+ <input id="robots_nofollow" name="robots_nofollow" type="checkbox" class="location-input" <?php if ('1' == $robots_nofollow) {
848
+ echo 'checked="yes"';
849
+ } ?> value="1"/>
850
+ <label for="robots_nofollow" class="location-prompt">
851
+ <?php _e('Show nofollow column in post types', 'wp-seopress'); ?>
852
+ </label>
853
+ </li>
854
+ <li class="seopress-wizard-service-info">
855
+ <?php _e('Quickly know if a content is in nofollow.', 'wp-seopress'); ?>
856
+ </li>
857
+
858
+ <!-- Show meta content analysis score -->
859
+ <li class="seopress-wizard-service-item checkbox">
860
+ <input id="ca_score" name="ca_score" type="checkbox" class="location-input" <?php if ('1' == $ca_score) {
861
+ echo 'checked="yes"';
862
+ } ?> value="1"/>
863
+ <label for="ca_score" class="location-prompt">
864
+ <?php _e('Show content analysis score column in post types', 'wp-seopress'); ?>
865
+ </label>
866
+ </li>
867
+ <li class="seopress-wizard-service-info">
868
+ <?php _e('Quickly know if a content is optimized for search engines.', 'wp-seopress'); ?>
869
+ </li>
870
+ </ul>
871
+
872
  <p class="seopress-setup-actions step">
873
+ <button type="submit" class="button-primary button button-large button-next" value="<?php esc_attr_e('Continue', 'wp-seopress'); ?>" name="save_step"><?php esc_html_e('Continue', 'wp-seopress'); ?></button>
874
+ <?php wp_nonce_field('seopress-setup'); ?>
875
  </p>
876
  </form>
877
  <?php
878
+ }
879
+
880
+ /**
881
+ * Save step 4 settings.
882
+ */
883
+ public function seopress_setup_advanced_save() {
884
+ check_admin_referer('seopress-setup');
885
+
886
+ //Get options
887
+ $seopress_titles_option = get_option('seopress_titles_option_name');
888
+ $seopress_advanced_option = get_option('seopress_advanced_option_name');
889
+
890
+ //Author indexing
891
+ $seopress_titles_option['seopress_titles_archives_author_noindex'] = isset($_POST['author_noindex']) ? esc_attr(wp_unslash($_POST['author_noindex'])) : null;
892
+
893
+ //Advanced
894
+ $seopress_advanced_option['seopress_advanced_advanced_attachments_file'] = isset($_POST['attachments_file']) ? esc_attr(wp_unslash($_POST['attachments_file'])) : null;
895
+ $seopress_advanced_option['seopress_advanced_advanced_category_url'] = isset($_POST['category_url']) ? esc_attr(wp_unslash($_POST['category_url'])) : null;
896
+
897
+ $seopress_advanced_option['seopress_advanced_appearance_title_col'] = isset($_POST['meta_title']) ? esc_attr(wp_unslash($_POST['meta_title'])) : null;
898
+ $seopress_advanced_option['seopress_advanced_appearance_meta_desc_col'] = isset($_POST['meta_desc']) ? esc_attr(wp_unslash($_POST['meta_desc'])) : null;
899
+
900
+ $seopress_advanced_option['seopress_advanced_appearance_noindex_col'] = isset($_POST['robots_noindex']) ? esc_attr(wp_unslash($_POST['robots_noindex'])) : null;
901
+ $seopress_advanced_option['seopress_advanced_appearance_nofollow_col'] = isset($_POST['robots_nofollow']) ? esc_attr(wp_unslash($_POST['robots_nofollow'])) : null;
902
+ $seopress_advanced_option['seopress_advanced_appearance_score_col'] = isset($_POST['ca_score']) ? esc_attr(wp_unslash($_POST['ca_score'])) : null;
903
+
904
+ //Save options
905
+ update_option('seopress_titles_option_name', $seopress_titles_option);
906
+ update_option('seopress_advanced_option_name', $seopress_advanced_option);
907
+
908
+ wp_redirect(esc_url_raw($this->get_next_step_link()));
909
+ exit;
910
+ }
911
+
912
+ /**
913
+ * Final step.
914
+ */
915
+ public function seopress_setup_ready() {
916
+ //Remove SEOPress notice
917
+ $seopress_notices = get_option('seopress_notices');
918
+ $seopress_notices['notice-wizard'] = '1';
919
+ update_option('seopress_notices', $seopress_notices);
920
+
921
+ //Flush permalinks
922
+ flush_rewrite_rules(false); ?>
923
+ <h1><?php esc_html_e('Your site is now ready for search engines!', 'wp-seopress'); ?></h1>
924
 
925
  <!-- SEOPress PRO -->
926
+ <?php if ('valid' != get_option('seopress_pro_license_status') && is_plugin_active('wp-seopress-pro/seopress-pro.php') && ! is_multisite()) { ?>
927
  <div class="seopress-message seopress-newsletter">
928
  <h3 class="seopress-setup-actions step">
929
+ <?php esc_html_e('Welcome to SEOPress PRO!', 'wp-seopress'); ?>
930
  </h3>
931
  <p class="seopress-setup-actions step">
932
+ <?php esc_html_e('Please activate your license to receive automatic updates and get premium support.', 'wp-seopress'); ?>
933
  </p>
934
  <p class="seopress-setup-actions step">
935
+ <a class="button button-primary button-large" href="<?php echo admin_url('admin.php?page=seopress-license'); ?>">
936
  <span class="dashicons dashicons-admin-network"></span>
937
  <?php _e('Activate License', 'wp-seopress'); ?>
938
  </a>
939
  </p>
940
  </div>
941
+ <?php } elseif ( ! is_plugin_active('wp-seopress-pro/seopress-pro.php') && ! is_multisite()) { ?>
942
  <div class="seopress-message seopress-newsletter">
943
  <h3 class="seopress-setup-actions step">
944
+ <?php esc_html_e('Go PRO with SEOPress PRO!', 'wp-seopress'); ?>
945
  </h3>
946
  <p class="seopress-setup-actions step">
947
+ <?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'); ?>
948
  </p>
949
  <p class="seopress-setup-actions step">
950
  <a class="button button-primary button-large" href="https://www.seopress.org/" target="_blank">
958
  <ul class="seopress-wizard-next-steps">
959
  <li class="seopress-wizard-next-step-item">
960
  <div class="seopress-wizard-next-step-description">
961
+ <p class="next-step-heading"><?php esc_html_e('Next step', 'wp-seopress'); ?></p>
962
+ <h3 class="next-step-description"><?php esc_html_e('Create your XML sitemaps', 'wp-seopress'); ?></h3>
963
+ <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>
964
  </div>
965
  <div class="seopress-wizard-next-step-action">
966
  <p class="seopress-setup-actions step">
967
+ <a class="button button-primary button-large" href="<?php echo admin_url('admin.php?page=seopress-xml-sitemap'); ?>">
968
+ <?php esc_html_e('Configure your XML sitemaps', 'wp-seopress'); ?>
969
  </a>
970
  </p>
971
  </div>
973
  <?php seopress_wizard_follow_us(); ?>
974
  <li class="seopress-wizard-additional-steps">
975
  <div class="seopress-wizard-next-step-description">
976
+ <p class="next-step-heading"><?php esc_html_e('You can also:', 'wp-seopress'); ?></p>
977
  </div>
978
  <div class="seopress-wizard-next-step-action step">
979
  <p class="seopress-setup-actions step">
980
+ <a class="button button-large" href="<?php echo esc_url(admin_url()); ?>">
981
+ <?php esc_html_e('Visit Dashboard', 'wp-seopress'); ?>
982
  </a>
983
+ <a class="button button-large" href="<?php echo esc_url(admin_url('admin.php?page=seopress-option')); ?>">
984
+ <?php esc_html_e('Review Settings', 'wp-seopress'); ?>
985
  </a>
986
  <a class="button button-large" href="<?php echo esc_url('https://www.seopress.org/support/?utm_source=plugin&utm_medium=wizard&utm_campaign=seopress'); ?>" target="_blank">
987
+ <?php esc_html_e('Knowledge base', 'wp-seopress'); ?>
988
  </a>
989
  </p>
990
  </div>
991
  </li>
992
  </ul>
993
  <?php
994
+ }
995
  }
996
 
997
+ new SEOPRESS_Admin_Setup_Wizard();
inc/admin/admin.php CHANGED
@@ -1,829 +1,654 @@
1
  <?php
2
 
3
- defined( 'ABSPATH' ) or die( 'Please don&rsquo;t call the plugin directly. Thanks :)' );
4
-
5
- class seopress_options
6
- {
7
- /**
8
- * Holds the values to be used in the fields callbacks
9
- */
10
- private $options;
11
-
12
- /**
13
- * Start up
14
- */
15
- public function __construct() {
16
- add_action( 'admin_menu', array( $this, 'add_plugin_page' ), 10 );
17
- add_action( 'admin_init', array( $this, 'set_default_values' ), 10 );
18
- add_action( 'admin_init', array( $this, 'page_init' ) );
19
- }
20
-
21
- public function activate() {
22
- update_option($this->seopress_options, $this->data);
23
- }
24
-
25
- public function deactivate() {
26
- delete_option($this->seopress_options);
27
- }
28
-
29
- public function set_default_values() {
30
-
31
- //Enable features==========================================================================
32
- $seopress_toggle_options = get_option('seopress_toggle');
33
-
34
- //Init if option doesn't exist
35
- if($seopress_toggle_options === false){
36
- $seopress_toggle_options = [];
37
- }
38
-
39
- $seopress_toggle_options['toggle-titles'] = '1';
40
- $seopress_toggle_options['toggle-xml-sitemap'] = '1';
41
- $seopress_toggle_options['toggle-social'] = '1';
42
- $seopress_toggle_options['toggle-google-analytics'] = '1';
43
- $seopress_toggle_options['toggle-advanced'] = '1';
44
- if ( is_plugin_active( 'woocommerce/woocommerce.php' )) {
45
- $seopress_toggle_options['toggle-woocommerce'] = '1';
46
- }
47
- $seopress_toggle_options['toggle-dublin-core'] = '1';
48
- $seopress_toggle_options['toggle-local-business'] = '1';
49
- $seopress_toggle_options['toggle-rich-snippets'] = '1';
50
- $seopress_toggle_options['toggle-breadcrumbs'] = '1';
51
- $seopress_toggle_options['toggle-robots'] = '1';
52
- $seopress_toggle_options['toggle-404'] = '1';
53
- $seopress_toggle_options['toggle-bot'] = '1';
54
-
55
- //Check if the value is an array (important!)
56
- if(is_array($seopress_toggle_options)) {
57
- add_option('seopress_toggle', $seopress_toggle_options);
58
- }
59
-
60
- //Titles & metas===========================================================================
61
- $seopress_titles_options = get_option('seopress_titles_option_name');
62
-
63
- //Init if option doesn't exist
64
- if($seopress_titles_options === false){
65
- $seopress_titles_options = [];
66
- }
67
-
68
- //Site Title
69
- $seopress_titles_options['seopress_titles_home_site_title'] = '%%sitetitle%%';
70
-
71
- //Meta Description
72
- $seopress_titles_options['seopress_titles_home_site_desc'] = '%%tagline%%';
73
-
74
- //Post Types
75
- if (function_exists('seopress_get_post_types') && !empty(seopress_get_post_types())) {
76
- foreach (seopress_get_post_types() as $seopress_cpt_key => $seopress_cpt_value) {
77
- $seopress_titles_options['seopress_titles_single_titles'][$seopress_cpt_key]['title'] = '%%post_title%% %%sep%% %%sitetitle%%';
78
- $seopress_titles_options['seopress_titles_single_titles'][$seopress_cpt_key]['description'] = '%%post_excerpt%%';
79
- }
80
- }
81
-
82
- //Taxonomies
83
- if (function_exists('seopress_get_taxonomies') && !empty(seopress_get_taxonomies())) {
84
- foreach (seopress_get_taxonomies() as $seopress_tax_key => $seopress_tax_value) {
85
- //Title
86
- if ($seopress_tax_key =='category') {
87
- $seopress_titles_options['seopress_titles_tax_titles'][$seopress_tax_key]['title'] = '%%_category_title%% %%current_pagination%% %%sep%% %%sitetitle%%';
88
- } elseif ($seopress_tax_key =='post_tag') {
89
- $seopress_titles_options['seopress_titles_tax_titles'][$seopress_tax_key]['title'] = '%%tag_title%% %%current_pagination%% %%sep%% %%sitetitle%%';
90
- } else {
91
- $seopress_titles_options['seopress_titles_tax_titles'][$seopress_tax_key]['title'] = '%%term_title%% %%current_pagination%% %%sep%% %%sitetitle%%';
92
- }
93
-
94
- //Desc
95
- if ($seopress_tax_key =='category') {
96
- $seopress_titles_options['seopress_titles_tax_titles'][$seopress_tax_key]['description'] = '%%_category_description%%';
97
- } elseif ($seopress_tax_key =='post_tag') {
98
- $seopress_titles_options['seopress_titles_tax_titles'][$seopress_tax_key]['description'] = '%%tag_description%%';
99
- } else {
100
- $seopress_titles_options['seopress_titles_tax_titles'][$seopress_tax_key]['description'] = '%%term_description%%';
101
- }
102
- }
103
- }
104
-
105
- //Archives
106
- if (function_exists('seopress_get_post_types') && !empty(seopress_get_post_types())) {
107
- foreach (seopress_get_post_types() as $seopress_cpt_key => $seopress_cpt_value) {
108
- $seopress_titles_options['seopress_titles_archive_titles'][$seopress_cpt_key]['title'] = '%%cpt_plural%% %%current_pagination%% %%sep%% %%sitetitle%%';
109
- }
110
- }
111
-
112
- //Author
113
- $seopress_titles_options['seopress_titles_archives_author_title'] = '%%post_author%% %%sep%% %%sitetitle%%';
114
- $seopress_titles_options['seopress_titles_archives_author_noindex'] = '1';
115
-
116
- //Date
117
- $seopress_titles_options['seopress_titles_archives_date_title'] = '%%archive_date%% %%sep%% %%sitetitle%%';
118
- $seopress_titles_options['seopress_titles_archives_date_noindex'] = '1';
119
-
120
- //BuddyPress Groups
121
- if ( is_plugin_active( 'buddypress/bp-loader.php' ) || is_plugin_active( 'buddyboss-platform/bp-loader.php' )) {
122
- $seopress_titles_options['seopress_titles_bp_groups_title'] = '%%post_title%% %%sep%% %%sitetitle%%';
123
- }
124
-
125
- //Search
126
- $seopress_titles_options['seopress_titles_archives_search_title'] = '%%search_keywords%% %%sep%% %%sitetitle%%';
127
-
128
- //404
129
- $seopress_titles_options['seopress_titles_archives_404_title'] = __('404 - Page not found','wp-seopress').' %%sep%% %%sitetitle%%';
130
-
131
- //Link rel prev/next
132
- $seopress_titles_options['seopress_titles_paged_rel'] = '1';
133
-
134
- //Check if the value is an array (important!)
135
- if(is_array($seopress_titles_options)) {
136
- add_option('seopress_titles_option_name', $seopress_titles_options);
137
- }
138
-
139
- //XML Sitemap==============================================================================
140
- $seopress_xml_sitemap_options = get_option('seopress_xml_sitemap_option_name');
141
-
142
- //Init if option doesn't exist
143
- if($seopress_xml_sitemap_options === false){
144
- $seopress_xml_sitemap_options = [];
145
- }
146
-
147
- $seopress_xml_sitemap_options['seopress_xml_sitemap_general_enable'] = '1';
148
- $seopress_xml_sitemap_options['seopress_xml_sitemap_img_enable'] = '1';
149
-
150
- global $wp_post_types;
151
-
152
- $args = array(
153
- 'show_ui' => true,
154
- );
155
-
156
- $output = 'objects'; // names or objects, note names is the default
157
- $operator = 'and'; // 'and' or 'or'
158
-
159
- $post_types = get_post_types( $args, $output, $operator );
160
-
161
- foreach ($post_types as $seopress_cpt_key => $seopress_cpt_value) {
162
- if ($seopress_cpt_key =='post' || $seopress_cpt_key =='page' || $seopress_cpt_key =='product') {
163
- $seopress_xml_sitemap_options['seopress_xml_sitemap_post_types_list'][$seopress_cpt_key]['include'] = '1';
164
- }
165
- }
166
-
167
- $args = array(
168
- 'show_ui' => true,
169
- 'public' => true,
170
-
171
- );
172
- $output = 'objects'; // or objects
173
- $operator = 'and'; // 'and' or 'or'
174
- $taxonomies = get_taxonomies( $args, $output, $operator );
175
-
176
- foreach ($taxonomies as $seopress_tax_key => $seopress_tax_value) {
177
- if ($seopress_tax_key =='category' || $seopress_tax_key =='post_tag') {
178
- $seopress_xml_sitemap_options['seopress_xml_sitemap_taxonomies_list'][$seopress_tax_key]['include'] = '1';
179
- }
180
- }
181
-
182
- //Check if the value is an array (important!)
183
- if(is_array($seopress_xml_sitemap_options)) {
184
- add_option('seopress_xml_sitemap_option_name', $seopress_xml_sitemap_options);
185
- }
186
-
187
- //Social===================================================================================
188
- $seopress_social_options = get_option('seopress_social_option_name');
189
-
190
- //Init if option doesn't exist
191
- if($seopress_social_options === false){
192
- $seopress_social_options = [];
193
- }
194
-
195
- $seopress_social_options['seopress_social_facebook_og'] = '1';
196
- $seopress_social_options['seopress_social_twitter_card'] = '1';
197
-
198
- //Check if the value is an array (important!)
199
- if(is_array($seopress_social_options)) {
200
- add_option('seopress_social_option_name', $seopress_social_options);
201
- }
202
-
203
- //Advanced=================================================================================
204
- $seopress_advanced_option_name = get_option('seopress_advanced_option_name');
205
-
206
- //Init if option doesn't exist
207
- if($seopress_advanced_option_name === false){
208
- $seopress_advanced_option_name = [];
209
- }
210
-
211
- $seopress_advanced_option_name['seopress_advanced_advanced_attachments'] = '1';
212
- $seopress_advanced_option_name['seopress_advanced_advanced_tax_desc_editor'] = '1';
213
- $seopress_advanced_option_name['seopress_advanced_appearance_title_col'] = '1';
214
- $seopress_advanced_option_name['seopress_advanced_appearance_meta_desc_col'] = '1';
215
- $seopress_advanced_option_name['seopress_advanced_appearance_score_col'] = '1';
216
-
217
- //Check if the value is an array (important!)
218
- if(is_array($seopress_advanced_option_name)) {
219
- add_option('seopress_advanced_option_name', $seopress_advanced_option_name);
220
- }
221
- }
222
-
223
- /**
224
- * Add options page
225
- */
226
- public function add_plugin_page()
227
- {
228
- if (has_filter('seopress_seo_admin_menu')) {
229
- $sp_seo_admin_menu['icon'] = '';
230
- $sp_seo_admin_menu['icon'] = apply_filters('seopress_seo_admin_menu', $sp_seo_admin_menu['icon']);
231
- } else {
232
- $sp_seo_admin_menu['icon'] = 'dashicons-admin-seopress';
233
- }
234
-
235
- add_menu_page('SEOPress Option Page', __('SEO','wp-seopress'), seopress_capability( 'manage_options', 'menu' ), 'seopress-option', array( $this, 'create_admin_page' ), $sp_seo_admin_menu['icon'], 90);
236
- add_submenu_page('seopress-option', __('Dashboard','wp-seopress'), __('Dashboard','wp-seopress'), seopress_capability( 'manage_options', 'menu' ), 'seopress-option', array( $this, 'create_admin_page' ));
237
- $seopress_titles_help_tab = add_submenu_page('seopress-option', __('Titles & Metas','wp-seopress'), __('Titles & Metas','wp-seopress'), seopress_capability( 'manage_options', 'menu' ), 'seopress-titles', array( $this, 'seopress_titles_page' ));
238
- add_submenu_page('seopress-option', __('XML / Image / Video / HTML Sitemap','wp-seopress'), __('XML / HTML Sitemap','wp-seopress'), seopress_capability( 'manage_options', 'menu' ), 'seopress-xml-sitemap', array( $this, 'seopress_xml_sitemap_page' ));
239
- add_submenu_page('seopress-option', __('Social Networks','wp-seopress'), __('Social Networks','wp-seopress'), seopress_capability( 'manage_options', 'menu' ), 'seopress-social', array( $this, 'seopress_social_page' ));
240
- $seopress_google_analytics_help_tab = add_submenu_page('seopress-option', __('Analytics','wp-seopress'), __('Analytics','wp-seopress'), seopress_capability( 'manage_options', 'menu' ), 'seopress-google-analytics', array( $this, 'seopress_google_analytics_page' ));
241
- add_submenu_page('seopress-option', __('Advanced','wp-seopress'), __('Advanced','wp-seopress'), seopress_capability( 'manage_options', 'menu' ), 'seopress-advanced', array( $this, 'seopress_advanced_page' ));
242
- add_submenu_page('seopress-option', __('Tools','wp-seopress'), __('Tools','wp-seopress'), seopress_capability( 'manage_options', 'menu' ), 'seopress-import-export', array( $this,'seopress_import_export_page'));
243
-
244
- function seopress_titles_help_tab() {
245
- $screen = get_current_screen();
246
-
247
- $seopress_titles_help_tab_content = '
248
  <ul>
249
- <li><span>%%sep%%</span>'.__('Separator (eg: - )','wp-seopress').'</li>
250
- <li><span>%%sitetitle%% (alias: %%sitename%%)</span>'.__('Site Title','wp-seopress').'</li>
251
- <li><span>%%tagline%% (alias %%sitedesc%%)</span>'.__('Tagline','wp-seopress').'</li>
252
- <li><span>%%post_title%% (alias %%title%%)</span>'.__('Post Title (post, page, custom post type)','wp-seopress').'</li>
253
- <li><span>%%post_excerpt%% (alias %%excerpt%%)</span>'.__('Post excerpt','wp-seopress').'</li>
254
- <li><span>%%post_content%%</span>'.__('Post content / product long description','wp-seopress').'</li>
255
- <li><span>%%post_thumbnail_url%%</span>'.__('Post thumbnail URL','wp-seopress').'</li>
256
- <li><span>%%post_url%%</span>'.__('Post URL (permalink)','wp-seopress').'</li>
257
- <li><span>%%post_date%% (alias %%date%%)</span>'.__('Post date','wp-seopress').'</li>
258
- <li><span>%%post_modified_date%%</span>'.__('Last modified post date','wp-seopress').'</li>
259
- <li><span>%%post_author%%</span>'.__('Post author','wp-seopress').'</li>
260
- <li><span>%%post_category%%</span>'.__('Post category','wp-seopress').'</li>
261
- <li><span>%%post_tag%%</span>'.__('Post tag','wp-seopress').'</li>
262
- <li><span>%%_category_title%%</span>'.__('Category title','wp-seopress').'</li>
263
- <li><span>%%_category_description%%</span>'.__('Category description','wp-seopress').'</li>
264
- <li><span>%%tag_title%%</span>'.__('Tag title','wp-seopress').'</li>
265
- <li><span>%%tag_description%%</span>'.__('Tag description','wp-seopress').'</li>
266
- <li><span>%%term_title%%</span>'.__('Term title','wp-seopress').'</li>
267
- <li><span>%%term_description%%</span>'.__('Term description','wp-seopress').'</li>
268
- <li><span>%%search_keywords%%</span>'.__('Search keywords','wp-seopress').'</li>
269
- <li><span>%%current_pagination%%</span>'.__('Current number page','wp-seopress').'</li>
270
- <li><span>%%page%%</span>'.__('Current page number with context (i.e. page 1 of 3)','wp-seopress').'</li>
271
- <li><span>%%cpt_plural%%</span>'.__('Plural Post Type Archive name','wp-seopress').'</li>
272
- <li><span>%%archive_title%%</span>'.__('Archive title','wp-seopress').'</li>
273
- <li><span>%%archive_date%%</span>'.__('Date Archive','wp-seopress').'</li>
274
- <li><span>%%archive_date_day%%</span>'.__('Day Archive date','wp-seopress').'</li>
275
- <li><span>%%archive_date_month%%</span>'.__('Month Archive title','wp-seopress').'</li>
276
- <li><span>%%archive_date_year%%</span>'.__('Year Archive title','wp-seopress').'</li>
277
- <li><span>%%_cf_your_custom_field_name%%</span>';
278
- /* translators: do not translate: your_custom_field_name */
279
- $seopress_titles_help_tab_content .= __('Custom fields from post, page or post type (replace <span style="color:red;margin:0">your_custom_field_name</span> with your custom field name)','wp-seopress').'</li>';
280
- /* translators: do not translate: your_custom_taxonomy_slug */
281
- $seopress_titles_help_tab_content .= '<li><span>%%_ct_your_custom_taxonomy_slug%%</span>'.__('Custom term taxonomy from post, page or post type (replace <span style="color:red;margin:0">your_custom_taxonomy_slug</span> with your custom taxonomy slug)','wp-seopress').'</li>
282
- <li><span>%%wc_single_cat%%</span>'.__('Single product category','wp-seopress').'</li>
283
- <li><span>%%wc_single_tag%%</span>'.__('Single product tag','wp-seopress').'</li>
284
- <li><span>%%wc_single_short_desc%%</span>'.__('Single product short description','wp-seopress').'</li>
285
- <li><span>%%wc_single_price%%</span>'.__('Single product price','wp-seopress').'</li>
286
- <li><span>%%wc_single_price_exc_tax%%</span>'.__('Single product price taxes excluded','wp-seopress').'</li>
287
- <li><span>%%wc_sku%%</span>'.__('Single SKU product','wp-seopress').'</li>
288
- <li><span>%%currentday%%</span>'.__('Current day','wp-seopress').'</li>
289
- <li><span>%%currentmonth%%</span>'.__('Current month','wp-seopress').'</li>
290
- <li><span>%%currentmonth_short%%</span>'.__('Current month in 3 letters, eg: "Jan" for "January"','wp-seopress').'</li>
291
- <li><span>%%currentyear%%</span>'.__('Current year','wp-seopress').'</li>
292
- <li><span>%%currentdate%%</span>'.__('Current date','wp-seopress').'</li>
293
- <li><span>%%currenttime%%</span>'.__('Current time','wp-seopress').'</li>
294
- <li><span>%%author_bio%%</span>'.__('Author biography (description), meta desc only','wp-seopress').'</li>
295
- <li><span>%%currentmonth_num%%</span>'.__('Current month in digital format','wp-seopress').'</li>
296
  </ul>
297
- '.wp_oembed_get('https://www.youtube.com/watch?v=HEa8m9u4mOk', array('width'=>530));
298
-
299
- $screen->add_help_tab( array(
300
- 'id' => 'seopress_titles_help_tab',
301
- 'title' => __('Templates variables', 'wp-seopress'),
302
- 'content' => $seopress_titles_help_tab_content,
303
- ));
304
-
305
- if (function_exists('seopress_get_locale') && seopress_get_locale() =='fr') {
306
- $screen->set_help_sidebar(
307
- '<ul>
308
- <li><a href="https://www.seopress.org/fr/support/guides/?utm_source=plugin&utm_medium=wp-admin-help-tab&utm_campaign=seopress" target="_blank">'.__("Browse our guides","wp-seopress").'</a></li>
309
- <li><a href="https://www.seopress.org/fr/support/faq/?utm_source=plugin&utm_medium=wp-admin-help-tab&utm_campaign=seopress" target="_blank">'.__("Read our FAQ","wp-seopress").'</a></li>
310
- <li><a href="https://www.seopress.org/fr/?utm_source=plugin&utm_medium=wp-admin-help-tab&utm_campaign=seopress" target="_blank">'.__("Check our website","wp-seopress").'</a></li>
311
  </ul>'
312
- );
313
- } else {
314
- $screen->set_help_sidebar(
315
- '<ul>
316
- <li><a href="https://www.seopress.org/support/guides/?utm_source=plugin&utm_medium=wp-admin-help-tab&utm_campaign=seopress" target="_blank">'.__("Browse our guides","wp-seopress").'</a></li>
317
- <li><a href="https://www.seopress.org/support/faq/?utm_source=plugin&utm_medium=wp-admin-help-tab&utm_campaign=seopress" target="_blank">'.__("Read our FAQ","wp-seopress").'</a></li>
318
- <li><a href="https://www.seopress.org/?utm_source=plugin&utm_medium=wp-admin-help-tab&utm_campaign=seopress" target="_blank">'.__("Check our website","wp-seopress").'</a></li>
319
  </ul>'
320
- );
321
- }
322
- }
323
- add_action('load-'.$seopress_titles_help_tab, 'seopress_titles_help_tab');
324
-
325
- function seopress_google_analytics_help_tab() {
326
- $screen = get_current_screen();
327
-
328
- $seopress_google_analytics_help_tab_content = '
329
- <p>'.__('Watch our video to learn how to connect your WordPress site with Google Analytics and get statistics right in your dashboard (PRO only).','wp-seopress').'</p>
330
- '.wp_oembed_get('https://www.youtube.com/watch?v=2EWdogYuFgs', array('width'=>530));
331
-
332
- $screen->add_help_tab( array(
333
- 'id' => 'seopress_google_analytics_help_tab',
334
- 'title' => __('How-to'),
335
- 'content' => $seopress_google_analytics_help_tab_content,
336
- ));
337
-
338
- if (function_exists('seopress_get_locale') && seopress_get_locale() =='fr') {
339
- $screen->set_help_sidebar(
340
- '<ul>
341
- <li><a href="https://www.seopress.org/fr/support/guides/connectez-site-wordpress-a-google-analytics/?utm_source=plugin&utm_medium=wp-admin-help-tab&utm_campaign=seopress" target="_blank">'.__("Read our guide","wp-seopress").'</a></li>
342
  </ul>'
343
- );
344
- } else {
345
- $screen->set_help_sidebar(
346
- '<ul>
347
- <li><a href="https://www.seopress.org/support/guides/connect-wordpress-site-google-analytics/?utm_source=plugin&utm_medium=wp-admin-help-tab&utm_campaign=seopress" target="_blank">'.__("Read our guide","wp-seopress").'</a></li>
348
  </ul>'
349
- );
350
- }
351
- }
352
- add_action('load-'.$seopress_google_analytics_help_tab, 'seopress_google_analytics_help_tab');
353
- }
354
-
355
-
356
- function seopress_titles_page(){
357
- $this->options = get_option( 'seopress_titles_option_name' );
358
- if (function_exists('seopress_admin_header')) {
359
- echo seopress_admin_header();
360
- }
361
- ?>
362
  <form method="post" action="<?php echo admin_url('options.php'); ?>" class="seopress-option">
363
  <?php
364
- if (isset($_GET['settings-updated']) && $_GET['settings-updated'] === 'true') {
365
- echo '<div class="components-snackbar-list" role="status" aria-live="polite" aria-atomic="true"><div class="components-snackbar"><div class="components-snackbar__content"><span class="dashicons dashicons-yes"></span>'.__('Your settings has been saved.','wp-seopress').'</div></div></div>';
366
- }
367
-
368
- global $wp_version, $title;
369
- $current_tab = '';
370
- $tag = version_compare( $wp_version, '4.4' ) >= 0 ? 'h1' : 'h2';
371
- echo '<'.$tag.'><span class="dashicons dashicons-editor-table"></span>'.$title;
372
-
373
- if(seopress_get_toggle_option('titles')=='1') {
374
- $seopress_get_toggle_titles_option = '"1"';
375
- } else {
376
- $seopress_get_toggle_titles_option = '"0"';
377
- }
378
- ?>
379
-
380
  <input type="checkbox" name="toggle-titles" id="toggle-titles" class="toggle" data-toggle=<?php echo $seopress_get_toggle_titles_option; ?>>
381
  <label for="toggle-titles"></label>
382
-
383
  <?php
384
- if(seopress_get_toggle_option('titles')=='1') {
385
- echo '<span id="titles-state-default" class="feature-state"><span class="dashicons dashicons-arrow-left-alt"></span>'.__('Click to disable this feature','wp-seopress').'</span>';
386
- echo '<span id="titles-state" class="feature-state feature-state-off"><span class="dashicons dashicons-arrow-left-alt"></span>'.__('Click to enable this feature','wp-seopress').'</span>';
387
- } else {
388
- echo '<span id="titles-state-default" class="feature-state"><span class="dashicons dashicons-arrow-left-alt"></span>'.__('Click to enable this feature','wp-seopress').'</span>';
389
- echo '<span id="titles-state" class="feature-state feature-state-off"><span class="dashicons dashicons-arrow-left-alt"></span>'.__('Click to disable this feature','wp-seopress').'</span>';
390
- }
391
 
392
- echo '<div id="seopress-notice-save" style="display: none"><span class="dashicons dashicons-yes"></span><span class="html"></span></div>';
393
 
394
- echo '</'.$tag.'>';
 
 
395
 
396
- settings_fields( 'seopress_titles_option_group' );
397
- ?>
398
-
399
  <div id="seopress-tabs" class="wrap">
400
- <?php
401
-
402
- $plugin_settings_tabs = array(
403
- 'tab_seopress_titles_home' => __( "Home", "wp-seopress" ),
404
- 'tab_seopress_titles_single' => __( "Single Post Types", "wp-seopress" ),
405
- 'tab_seopress_titles_archives' => __( "Archives", "wp-seopress" ),
406
- 'tab_seopress_titles_tax' => __( "Taxonomies", "wp-seopress" ),
407
- 'tab_seopress_titles_advanced' => __( "Advanced", "wp-seopress" ),
408
- );
409
-
410
- echo '<div class="nav-tab-wrapper">';
411
- foreach ( $plugin_settings_tabs as $tab_key => $tab_caption ) {
412
- echo '<a id="'. $tab_key .'-tab" class="nav-tab" href="?page=seopress-titles#tab=' . $tab_key . '">' . $tab_caption . '</a>';
413
- }
414
- echo '</div>';
415
- ?>
416
- <div class="seopress-tab <?php if ($current_tab == 'tab_seopress_titles_home') { echo 'active'; } ?>" id="tab_seopress_titles_home"><?php do_settings_sections( 'seopress-settings-admin-titles-home' ); ?></div>
417
- <div class="seopress-tab <?php if ($current_tab == 'tab_seopress_titles_single') { echo 'active'; } ?>" id="tab_seopress_titles_single"><?php do_settings_sections( 'seopress-settings-admin-titles-single' ); ?></div>
418
- <div class="seopress-tab <?php if ($current_tab == 'tab_seopress_titles_archives') { echo 'active'; } ?>" id="tab_seopress_titles_archives"><?php do_settings_sections( 'seopress-settings-admin-titles-archives' ); ?></div>
419
- <div class="seopress-tab <?php if ($current_tab == 'tab_seopress_titles_tax') { echo 'active'; } ?>" id="tab_seopress_titles_tax"><?php do_settings_sections( 'seopress-settings-admin-titles-tax' ); ?></div>
420
- <div class="seopress-tab <?php if ($current_tab == 'tab_seopress_titles_advanced') { echo 'active'; } ?>" id="tab_seopress_titles_advanced"><?php do_settings_sections( 'seopress-settings-admin-titles-advanced' ); ?></div>
 
 
 
 
 
 
 
 
 
421
  </div>
422
 
423
  <?php submit_button(); ?>
424
  </form>
425
  <?php
426
- }
427
-
428
- function seopress_xml_sitemap_page(){
429
- $this->options = get_option( 'seopress_xml_sitemap_option_name' );
430
- if (function_exists('seopress_admin_header')) {
431
- echo seopress_admin_header();
432
- }
433
- ?>
434
  <form method="post" action="<?php echo admin_url('options.php'); ?>" class="seopress-option" name="seopress-flush">
435
- <?php
436
- if (isset($_GET['settings-updated']) && $_GET['settings-updated'] === 'true') {
437
- echo '<div class="components-snackbar-list" role="status" aria-live="polite" aria-atomic="true"><div class="components-snackbar"><div class="components-snackbar__content"><span class="dashicons dashicons-yes"></span>'.__('Your settings has been saved.','wp-seopress').'</div></div></div>';
438
- }
439
- global $wp_version, $title;
440
- $current_tab = '';
441
- $tag = version_compare( $wp_version, '4.4' ) >= 0 ? 'h1' : 'h2';
442
- echo '<'.$tag.'><span class="dashicons dashicons-media-spreadsheet"></span>'.$title;
443
-
444
- if(seopress_get_toggle_option('xml-sitemap')=='1') {
445
- $seopress_get_toggle_xml_sitemap_option = '"1"';
446
- } else {
447
- $seopress_get_toggle_xml_sitemap_option = '"0"';
448
- } ?>
449
 
450
  <input type="checkbox" name="toggle-xml-sitemap" id="toggle-xml-sitemap" class="toggle" data-toggle=<?php echo $seopress_get_toggle_xml_sitemap_option; ?>>
451
-
452
  <label for="toggle-xml-sitemap"></label>
453
-
454
- <?php if(seopress_get_toggle_option('xml-sitemap')=='1') {
455
- echo '<span id="xml-sitemap-state-default" class="feature-state"><span class="dashicons dashicons-arrow-left-alt"></span>'.__('Click to disable this feature','wp-seopress').'</span>';
456
- echo '<span id="xml-sitemap-state" class="feature-state feature-state-off"><span class="dashicons dashicons-arrow-left-alt"></span>'.__('Click to enable this feature','wp-seopress').'</span>';
457
- } else {
458
- echo '<span id="xml-sitemap-state-default" class="feature-state"><span class="dashicons dashicons-arrow-left-alt"></span>'.__('Click to enable this feature','wp-seopress').'</span>';
459
- echo '<span id="xml-sitemap-state" class="feature-state feature-state-off"><span class="dashicons dashicons-arrow-left-alt"></span>'.__('Click to disable this feature','wp-seopress').'</span>';
460
- }
461
-
462
- echo '<div id="seopress-notice-save" style="display: none"><span class="dashicons dashicons-yes"></span><span class="html"></span></div>';
463
-
464
- echo '</'.$tag.'>';
465
-
466
- settings_fields( 'seopress_xml_sitemap_option_group' );
467
- ?>
468
-
469
  <div id="seopress-tabs" class="wrap">
470
- <?php
471
-
472
- $plugin_settings_tabs = array(
473
- 'tab_seopress_xml_sitemap_general' => __( "General", "wp-seopress" ),
474
- 'tab_seopress_xml_sitemap_post_types' => __( "Post Types", "wp-seopress" ),
475
- 'tab_seopress_xml_sitemap_taxonomies' => __( "Taxonomies", "wp-seopress" ),
476
- 'tab_seopress_html_sitemap' => __( "HTML Sitemap", "wp-seopress" ),
477
- );
478
-
479
- echo '<div class="nav-tab-wrapper">';
480
- foreach ( $plugin_settings_tabs as $tab_key => $tab_caption ) {
481
- echo '<a id="'. $tab_key .'-tab" class="nav-tab" href="?page=seopress-xml-sitemap#tab=' . $tab_key . '">' . $tab_caption . '</a>';
482
- }
483
- echo '</div>';
484
- ?>
485
- <div class="seopress-tab <?php if ($current_tab == 'tab_seopress_xml_sitemap_general') { echo 'active'; } ?>" id="tab_seopress_xml_sitemap_general"><?php do_settings_sections( 'seopress-settings-admin-xml-sitemap-general' ); ?></div>
486
- <div class="seopress-tab <?php if ($current_tab == 'tab_seopress_xml_sitemap_post_types') { echo 'active'; } ?>" id="tab_seopress_xml_sitemap_post_types"><?php do_settings_sections( 'seopress-settings-admin-xml-sitemap-post-types' ); ?></div>
487
- <div class="seopress-tab <?php if ($current_tab == 'tab_seopress_xml_sitemap_taxonomies') { echo 'active'; } ?>" id="tab_seopress_xml_sitemap_taxonomies"><?php do_settings_sections( 'seopress-settings-admin-xml-sitemap-taxonomies' ); ?></div>
488
- <div class="seopress-tab <?php if ($current_tab == 'tab_seopress_html_sitemap') { echo 'active'; } ?>" id="tab_seopress_html_sitemap"><?php do_settings_sections( 'seopress-settings-admin-html-sitemap' ); ?></div>
 
 
 
 
 
 
 
489
  </div>
490
  <?php submit_button(); ?>
491
  </form>
492
  <?php
493
- }
494
-
495
- function seopress_social_page(){
496
- $this->options = get_option( 'seopress_social_option_name' );
497
- if (function_exists('seopress_admin_header')) {
498
- echo seopress_admin_header();
499
- }
500
- ?>
501
  <form method="post" action="<?php echo admin_url('options.php'); ?>" class="seopress-option">
502
  <?php
503
- if (isset($_GET['settings-updated']) && $_GET['settings-updated'] === 'true') {
504
- echo '<div class="components-snackbar-list" role="status" aria-live="polite" aria-atomic="true"><div class="components-snackbar"><div class="components-snackbar__content"><span class="dashicons dashicons-yes"></span>'.__('Your settings has been saved.','wp-seopress').'</div></div></div>';
505
- }
506
-
507
- global $wp_version, $title;
508
- $current_tab = '';
509
- $tag = version_compare( $wp_version, '4.4' ) >= 0 ? 'h1' : 'h2';
510
- echo '<'.$tag.'><span class="dashicons dashicons-share"></span>'.$title;
511
-
512
- if(seopress_get_toggle_option('social')=='1') {
513
- $seopress_get_toggle_social_option = '"1"';
514
- } else {
515
- $seopress_get_toggle_social_option = '"0"';
516
- }
517
- ?>
518
-
519
  <input type="checkbox" name="toggle-social" id="toggle-social" class="toggle" data-toggle=<?php echo $seopress_get_toggle_social_option; ?>>
520
  <label for="toggle-social"></label>
521
-
522
  <?php
523
- if(seopress_get_toggle_option('social')=='1') {
524
- echo '<span id="social-state-default" class="feature-state"><span class="dashicons dashicons-arrow-left-alt"></span>'.__('Click to disable this feature','wp-seopress').'</span>';
525
- echo '<span id="social-state" class="feature-state feature-state-off"><span class="dashicons dashicons-arrow-left-alt"></span>'.__('Click to enable this feature','wp-seopress').'</span>';
526
- } else {
527
- echo '<span id="social-state-default" class="feature-state"><span class="dashicons dashicons-arrow-left-alt"></span>'.__('Click to enable this feature','wp-seopress').'</span>';
528
- echo '<span id="social-state" class="feature-state feature-state-off"><span class="dashicons dashicons-arrow-left-alt"></span>'.__('Click to disable this feature','wp-seopress').'</span>';
529
- }
530
 
531
- echo '<div id="seopress-notice-save" style="display: none"><span class="dashicons dashicons-yes"></span><span class="html"></span></div>';
532
 
533
- echo '</'.$tag.'>';
 
 
534
 
535
- settings_fields( 'seopress_social_option_group' );
536
- ?>
537
-
538
  <div id="seopress-tabs" class="wrap">
539
- <?php
540
-
541
- $plugin_settings_tabs = array(
542
- 'tab_seopress_social_knowledge' => __( "Knowledge Graph", "wp-seopress" ),
543
- 'tab_seopress_social_accounts' => __( "Your social accounts", "wp-seopress" ),
544
- 'tab_seopress_social_facebook' => __( "Facebook (Open Graph)", "wp-seopress" ),
545
- 'tab_seopress_social_twitter' => __( "Twitter (Twitter card)", "wp-seopress" ),
546
- );
547
-
548
- echo '<div class="nav-tab-wrapper">';
549
- foreach ( $plugin_settings_tabs as $tab_key => $tab_caption ) {
550
- echo '<a id="'. $tab_key .'-tab" class="nav-tab" href="?page=seopress-social#tab=' . $tab_key . '">' . $tab_caption . '</a>';
551
- }
552
- echo '</div>';
553
- ?>
554
- <div class="seopress-tab <?php if ($current_tab == 'tab_seopress_social_knowledge') { echo 'active'; } ?>" id="tab_seopress_social_knowledge"><?php do_settings_sections( 'seopress-settings-admin-social-knowledge' ); ?></div>
555
- <div class="seopress-tab <?php if ($current_tab == 'tab_seopress_social_accounts') { echo 'active'; } ?>" id="tab_seopress_social_accounts"><?php do_settings_sections( 'seopress-settings-admin-social-accounts' ); ?></div>
556
- <div class="seopress-tab <?php if ($current_tab == 'tab_seopress_social_facebook') { echo 'active'; } ?>" id="tab_seopress_social_facebook"><?php do_settings_sections( 'seopress-settings-admin-social-facebook' ); ?></div>
557
- <div class="seopress-tab <?php if ($current_tab == 'tab_seopress_social_twitter') { echo 'active'; } ?>" id="tab_seopress_social_twitter"><?php do_settings_sections( 'seopress-settings-admin-social-twitter' ); ?></div>
 
 
 
 
 
 
 
558
  </div>
559
 
560
  <?php submit_button(); ?>
561
  </form>
562
  <?php
563
- }
564
-
565
- function seopress_google_analytics_page(){
566
- $this->options = get_option( 'seopress_google_analytics_option_name' );
567
- if (function_exists('seopress_admin_header')) {
568
- echo seopress_admin_header();
569
- }
570
- ?>
571
  <form method="post" action="<?php echo admin_url('options.php'); ?>" class="seopress-option">
572
  <?php
573
- if (isset($_GET['settings-updated']) && $_GET['settings-updated'] === 'true') {
574
- echo '<div class="components-snackbar-list" role="status" aria-live="polite" aria-atomic="true"><div class="components-snackbar"><div class="components-snackbar__content"><span class="dashicons dashicons-yes"></span>'.__('Your settings has been saved.','wp-seopress').'</div></div></div>';
575
- }
576
-
577
- global $wp_version, $title;
578
- $current_tab = '';
579
- $tag = version_compare( $wp_version, '4.4' ) >= 0 ? 'h1' : 'h2';
580
- echo '<'.$tag.'><span class="dashicons dashicons-chart-area"></span>'.$title;
581
-
582
- if(seopress_get_toggle_option('google-analytics')=='1') {
583
- $seopress_get_toggle_google_analytics_option = '"1"';
584
- } else {
585
- $seopress_get_toggle_google_analytics_option = '"0"';
586
- }
587
- ?>
588
-
589
  <input type="checkbox" name="toggle-google-analytics" id="toggle-google-analytics" class="toggle" data-toggle=<?php echo $seopress_get_toggle_google_analytics_option; ?>>
590
-
591
  <label for="toggle-google-analytics"></label>
592
-
593
  <?php
594
- if(seopress_get_toggle_option('google-analytics')=='1') {
595
- echo '<span id="google-analytics-state-default" class="feature-state"><span class="dashicons dashicons-arrow-left-alt"></span>'.__('Click to disable this feature','wp-seopress').'</span>';
596
- echo '<span id="google-analytics-state" class="feature-state feature-state-off"><span class="dashicons dashicons-arrow-left-alt"></span>'.__('Click to enable this feature','wp-seopress').'</span>';
597
- } else {
598
- echo '<span id="google-analytics-state-default" class="feature-state"><span class="dashicons dashicons-arrow-left-alt"></span>'.__('Click to enable this feature','wp-seopress').'</span>';
599
- echo '<span id="google-analytics-state" class="feature-state feature-state-off"><span class="dashicons dashicons-arrow-left-alt"></span>'.__('Click to disable this feature','wp-seopress').'</span>';
600
- }
601
-
602
- echo '<div id="seopress-notice-save" style="display: none"><span class="dashicons dashicons-yes"></span><span class="html"></span></div>';
603
-
604
- echo '</'.$tag.'>';
605
-
606
- settings_fields( 'seopress_google_analytics_option_group' );
607
- ?>
608
-
609
  <div id="seopress-tabs" class="wrap">
610
  <?php
611
 
612
- if (is_plugin_active('wp-seopress-pro/seopress-pro.php')) {
613
- $plugin_settings_tabs = [
614
- 'tab_seopress_google_analytics_enable' => __( "General", "wp-seopress" ),
615
- 'tab_seopress_google_analytics_features' => __( "Tracking", "wp-seopress" ),
616
- 'tab_seopress_google_analytics_ecommerce' => __( "Ecommerce", "wp-seopress" ),
617
- 'tab_seopress_google_analytics_events' => __( "Events", "wp-seopress" ),
618
- 'tab_seopress_google_analytics_custom_dimensions' => __( "Custom Dimensions", "wp-seopress" ),
619
- 'tab_seopress_google_analytics_dashboard' => __( "Stats in Dashboard", "wp-seopress" ),
620
- 'tab_seopress_google_analytics_gdpr' => __( "Cookie bar / GDPR", "wp-seopress" ),
621
- 'tab_seopress_google_analytics_matomo' => __( "Matomo", "wp-seopress" ),
622
- ];
623
- } else {
624
- $plugin_settings_tabs = [
625
- 'tab_seopress_google_analytics_enable' => __( "General", "wp-seopress" ),
626
- 'tab_seopress_google_analytics_features' => __( "Tracking", "wp-seopress" ),
627
- 'tab_seopress_google_analytics_events' => __( "Events", "wp-seopress" ),
628
- 'tab_seopress_google_analytics_custom_dimensions' => __( "Custom Dimensions", "wp-seopress" ),
629
- 'tab_seopress_google_analytics_gdpr' => __( "Cookie bar / GDPR", "wp-seopress" ),
630
- 'tab_seopress_google_analytics_matomo' => __( "Matomo", "wp-seopress" ),
631
- ];
632
- }
633
-
634
- echo '<div class="nav-tab-wrapper">';
635
- foreach ( $plugin_settings_tabs as $tab_key => $tab_caption ) {
636
- echo '<a id="'. $tab_key .'-tab" class="nav-tab" href="?page=seopress-google-analytics#tab=' . $tab_key . '">' . $tab_caption . '</a>';
637
- }
638
- echo '</div>';
639
- ?>
640
- <div class="seopress-tab <?php if ($current_tab == 'tab_seopress_google_analytics_enable') { echo 'active'; } ?>" id="tab_seopress_google_analytics_enable"><?php do_settings_sections( 'seopress-settings-admin-google-analytics-enable' ); ?></div>
641
- <div class="seopress-tab <?php if ($current_tab == 'tab_seopress_google_analytics_features') { echo 'active'; } ?>" id="tab_seopress_google_analytics_features"><?php do_settings_sections( 'seopress-settings-admin-google-analytics-features' ); ?></div><div class="seopress-tab <?php if ($current_tab == 'tab_seopress_google_analytics_events') { echo 'active'; } ?>" id="tab_seopress_google_analytics_events"><?php do_settings_sections( 'seopress-settings-admin-google-analytics-events' ); ?></div>
642
- <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>
 
 
 
 
 
 
 
643
  <?php if (is_plugin_active('wp-seopress-pro/seopress-pro.php')) { ?>
644
- <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>
645
- <div class="seopress-tab <?php if ($current_tab == 'tab_seopress_google_analytics_ecommerce') { echo 'active'; } ?>" id="tab_seopress_google_analytics_ecommerce"><?php do_settings_sections( 'seopress-settings-admin-google-analytics-ecommerce' ); ?></div>
 
 
 
 
646
  <?php } ?>
647
- <div class="seopress-tab <?php if ($current_tab == 'tab_seopress_google_analytics_gdpr') { echo 'active'; } ?>" id="tab_seopress_google_analytics_gdpr"><?php do_settings_sections( 'seopress-settings-admin-google-analytics-gdpr' ); ?></div>
648
- <div class="seopress-tab <?php if ($current_tab == 'tab_seopress_google_analytics_matomo') { echo 'active'; } ?>" id="tab_seopress_google_analytics_matomo"><?php do_settings_sections( 'seopress-settings-admin-google-analytics-matomo' ); ?></div>
 
 
 
 
649
  </div>
650
 
651
  <?php submit_button(); ?>
652
  </form>
653
  <?php
654
- }
655
-
656
- function seopress_advanced_page(){
657
- $this->options = get_option( 'seopress_advanced_option_name' );
658
- if (function_exists('seopress_admin_header')) {
659
- echo seopress_admin_header();
660
- }
661
- ?>
662
  <form method="post" action="<?php echo admin_url('options.php'); ?>" class="seopress-option">
663
- <?php
664
- if (isset($_GET['settings-updated']) && $_GET['settings-updated'] === 'true') {
665
- echo '<div class="components-snackbar-list" role="status" aria-live="polite" aria-atomic="true"><div class="components-snackbar"><div class="components-snackbar__content"><span class="dashicons dashicons-yes"></span>'.__('Your settings has been saved.','wp-seopress').'</div></div></div>';
666
- }
667
-
668
- global $wp_version, $title;
669
- $current_tab = '';
670
- $tag = version_compare( $wp_version, '4.4' ) >= 0 ? 'h1' : 'h2';
671
- echo '<'.$tag.'><span class="dashicons dashicons-admin-tools"></span>'.$title;
672
-
673
- if(seopress_get_toggle_option('advanced')=='1') {
674
- $seopress_get_toggle_advanced_option = '"1"';
675
- } else {
676
- $seopress_get_toggle_advanced_option = '"0"';
677
- }
678
- ?>
679
-
680
  <input type="checkbox" name="toggle-advanced" id="toggle-advanced" class="toggle" data-toggle=<?php echo $seopress_get_toggle_advanced_option; ?>>
681
  <label for="toggle-advanced"></label>
682
-
683
  <?php
684
- if(seopress_get_toggle_option('advanced')=='1') {
685
- echo '<span id="advanced-state-default" class="feature-state"><span class="dashicons dashicons-arrow-left-alt"></span>'.__('Click to disable this feature','wp-seopress').'</span>';
686
- echo '<span id="advanced-state" class="feature-state feature-state-off"><span class="dashicons dashicons-arrow-left-alt"></span>'.__('Click to enable this feature','wp-seopress').'</span>';
687
- } else {
688
- echo '<span id="advanced-state-default" class="feature-state"><span class="dashicons dashicons-arrow-left-alt"></span>'.__('Click to enable this feature','wp-seopress').'</span>';
689
- echo '<span id="advanced-state" class="feature-state feature-state-off"><span class="dashicons dashicons-arrow-left-alt"></span>'.__('Click to disable this feature','wp-seopress').'</span>';
690
- }
691
 
692
- echo '<div id="seopress-notice-save" style="display: none"><span class="dashicons dashicons-yes"></span><span class="html"></span></div>';
693
 
694
- echo '</'.$tag.'>';
 
 
695
 
696
- settings_fields( 'seopress_advanced_option_group' );
697
- ?>
698
-
699
  <div id="seopress-tabs" class="wrap">
700
- <?php
701
-
702
- $plugin_settings_tabs = array(
703
- 'tab_seopress_advanced_advanced' => __( "Advanced", "wp-seopress" ),
704
- 'tab_seopress_advanced_appearance' => __( "Appearance", "wp-seopress" ),
705
- 'tab_seopress_advanced_security' => __( "Security", "wp-seopress" ),
706
- );
707
-
708
- echo '<div class="nav-tab-wrapper">';
709
- foreach ( $plugin_settings_tabs as $tab_key => $tab_caption ) {
710
- echo '<a id="'. $tab_key .'-tab" class="nav-tab" href="?page=seopress-advanced#tab=' . $tab_key . '">' . $tab_caption . '</a>';
711
- }
712
- echo '</div>';
713
- ?>
714
- <div class="seopress-tab <?php if ($current_tab == 'tab_seopress_advanced_advanced') { echo 'active'; } ?>" id="tab_seopress_advanced_advanced"><?php do_settings_sections( 'seopress-settings-admin-advanced-advanced' ); ?></div>
715
- <div class="seopress-tab <?php if ($current_tab == 'tab_seopress_advanced_appearance') { echo 'active'; } ?>" id="tab_seopress_advanced_appearance"><?php do_settings_sections( 'seopress-settings-admin-advanced-appearance' ); ?></div>
716
- <div class="seopress-tab <?php if ($current_tab == 'tab_seopress_advanced_security') { echo 'active'; } ?>" id="tab_seopress_advanced_security"><?php do_settings_sections( 'seopress-settings-admin-advanced-security' ); ?></div>
 
 
 
 
 
717
  </div>
718
 
719
  <?php submit_button(); ?>
720
  </form>
721
  <?php
722
- }
723
-
724
- function seopress_import_export_page(){
725
- $this->options = get_option( 'seopress_import_export_option_name' );
726
- if (function_exists('seopress_admin_header')) {
727
- echo seopress_admin_header();
728
- }
729
- ?>
730
  <div class="seopress-option">
731
  <?php global $wp_version, $title;
732
- $current_tab = '';
733
- $tag = version_compare( $wp_version, '4.4' ) >= 0 ? 'h1' : 'h2';
734
- echo '<'.$tag.'><span class="dashicons dashicons-admin-settings"></span>'.$title.'</'.$tag.'>';
735
- ?>
736
  <div id="seopress-tabs" class="wrap">
737
  <?php
738
- $plugin_settings_tabs = array(
739
- 'tab_seopress_tool_data' => __( "Data", "wp-seopress" ),
740
- 'tab_seopress_tool_settings' => __( "Settings", "wp-seopress" ),
741
- 'tab_seopress_tool_plugins' => __( "Plugins", "wp-seopress" ),
742
- 'tab_seopress_tool_redirects' => __( "Redirections", "wp-seopress" ),
743
- 'tab_seopress_tool_reset' => __( "Reset", "wp-seopress" ),
744
- );
745
-
746
- if (!is_plugin_active('wp-seopress-pro/seopress-pro.php')) {
747
- unset($plugin_settings_tabs['tab_seopress_tool_data']);
748
- unset($plugin_settings_tabs['tab_seopress_tool_redirects']);
749
- }
750
-
751
- echo '<div class="nav-tab-wrapper">';
752
- foreach ( $plugin_settings_tabs as $tab_key => $tab_caption ) {
753
- echo '<a id="'. $tab_key .'-tab" class="nav-tab" href="?page=seopress-import-export#tab=' . $tab_key . '">' . $tab_caption . '</a>';
754
- }
755
- echo '</div>';
756
- ?>
757
  <?php if (is_plugin_active('wp-seopress-pro/seopress-pro.php')) { ?>
758
- <div class="seopress-tab <?php if ($current_tab == 'tab_seopress_tool_data') { echo 'active'; } ?>" id="tab_seopress_tool_data">
 
 
759
  <div class="postbox section-tool">
760
  <div class="inside">
761
- <h3><span><?php _e( 'Import data from a CSV', 'wp-seopress' ); ?></span></h3>
762
- <p><?php _e( 'Upload a CSV file to quickly import post (post, page, single post type) and term metadata:', 'wp-seopress' ); ?></p>
763
  <ul>
764
  <li>
765
- <?php _e('Meta title','wp-seopress'); ?>
766
  </li>
767
  <li>
768
- <?php _e('Meta description','wp-seopress'); ?>
769
  </li>
770
  <li>
771
- <?php _e('Meta robots (noindex, nofollow...)','wp-seopress'); ?>
772
  </li>
773
  <li>
774
- <?php _e('Facebook Open Graph tags (title, description, image)','wp-seopress'); ?>
775
  </li>
776
  <li>
777
- <?php _e('Twitter cards tags (title, description, image)','wp-seopress'); ?>
778
  </li>
779
  <li>
780
- <?php _e('Redirection (enable, type, URL)','wp-seopress'); ?>
781
  </li>
782
  <li>
783
- <?php _e('Canonical URL','wp-seopress'); ?>
784
  </li>
785
  <li>
786
- <?php _e('Target keywords','wp-seopress'); ?>
 
 
 
787
  </li>
788
  </ul>
789
- <a class="button" href="<?php echo admin_url( 'admin.php?page=seopress_csv_importer' ); ?>"><?php _e('Run the importer','wp-seopress'); ?></a>
790
  </div><!-- .inside -->
791
  </div><!-- .postbox -->
792
  <div id="metadata-migration-tool" class="postbox section-tool">
793
  <div class="inside">
794
- <h3><span><?php _e( 'Export metadata to a CSV', 'wp-seopress' ); ?></span></h3>
795
- <p><?php _e( 'Export your post (post, page, single post type) and term metadata for this site as a .csv file.', 'wp-seopress' ); ?></p>
796
  <ul>
797
  <li>
798
- <?php _e('Meta title','wp-seopress'); ?>
799
  </li>
800
  <li>
801
- <?php _e('Meta description','wp-seopress'); ?>
802
  </li>
803
  <li>
804
- <?php _e('Meta robots (noindex, nofollow...)','wp-seopress'); ?>
805
  </li>
806
  <li>
807
- <?php _e('Facebook Open Graph tags (title, description, image)','wp-seopress'); ?>
808
  </li>
809
  <li>
810
- <?php _e('Twitter cards tags (title, description, image)','wp-seopress'); ?>
811
  </li>
812
  <li>
813
- <?php _e('Redirection (enable, type, URL)','wp-seopress'); ?>
 
 
 
814
  </li>
815
  <li>
816
- <?php _e('Canonical URL','wp-seopress'); ?>
817
  </li>
818
  <li>
819
- <?php _e('Target keywords','wp-seopress'); ?>
820
  </li>
821
  </ul>
822
  <form method="post">
823
  <p><input type="hidden" name="seopress_action" value="export_csv_metadata" /></p>
824
  <p>
825
- <?php wp_nonce_field( 'seopress_export_csv_metadata_nonce', 'seopress_export_csv_metadata_nonce' ); ?>
826
- <button id="seopress-metadata-migrate" type="button" class="button"><?php _e('Export','wp-seopress'); ?></button>
827
  <span class="spinner"></span>
828
  <div class="log"></div>
829
  </p>
@@ -832,16 +657,18 @@ class seopress_options
832
  </div><!-- .postbox -->
833
  </div>
834
  <?php } ?>
835
- <div class="seopress-tab <?php if ($current_tab == 'tab_seopress_tool_settings') { echo 'active'; } ?>" id="tab_seopress_tool_settings">
 
 
836
  <div class="postbox section-tool">
837
  <div class="inside">
838
- <h3><span><?php _e( 'Export plugin settings', 'wp-seopress' ); ?></span></h3>
839
- <p><?php _e( 'Export the plugin settings for this site as a .json file. This allows you to easily import the configuration into another site.', 'wp-seopress' ); ?></p>
840
  <form method="post">
841
  <p><input type="hidden" name="seopress_action" value="export_settings" /></p>
842
  <p>
843
- <?php wp_nonce_field( 'seopress_export_nonce', 'seopress_export_nonce' ); ?>
844
- <?php submit_button( __( 'Export', 'wp-seopress' ), 'secondary', 'submit', false ); ?>
845
  </p>
846
  </form>
847
  </div><!-- .inside -->
@@ -849,158 +676,160 @@ class seopress_options
849
 
850
  <div class="postbox section-tool">
851
  <div class="inside">
852
- <h3><span><?php _e( 'Import plugin settings', 'wp-seopress' ); ?></span></h3>
853
- <p><?php _e( 'Import the plugin settings from a .json file. This file can be obtained by exporting the settings on another site using the form above.', 'wp-seopress' ); ?></p>
854
  <form method="post" enctype="multipart/form-data">
855
  <p>
856
  <input type="file" name="import_file"/>
857
  </p>
858
  <p>
859
  <input type="hidden" name="seopress_action" value="import_settings" />
860
- <?php wp_nonce_field( 'seopress_import_nonce', 'seopress_import_nonce' ); ?>
861
- <?php submit_button( __( 'Import', 'wp-seopress' ), 'secondary', 'submit', false ); ?>
862
- <?php if(!empty($_GET["success"]) && htmlspecialchars($_GET["success"]) =='true') {
863
- echo '<div class="log">'.__('Import completed!','wp-seopress').'</div>';
864
- }; ?>
865
  </p>
866
  </form>
867
  </div><!-- .inside -->
868
  </div><!-- .postbox -->
869
  </div>
870
- <div class="seopress-tab <?php if ($current_tab == 'tab_seopress_tool_plugins') { echo 'active'; } ?>" id="tab_seopress_tool_plugins">
 
 
871
  <div class="postbox section-tool">
872
- <h3><span><?php _e('Import posts and terms metadata from','wp-seopress'); ?></span></h3>
873
  <select id="select-wizard-import" name="select-wizard-import">
874
- <option value="none"><?php _e('Select an option','wp-seopress'); ?></option>
875
- <option value="yoast-migration-tool"><?php _e('Yoast SEO','wp-seopress'); ?></option>
876
- <option value="aio-migration-tool"><?php _e('All In One SEO','wp-seopress'); ?></option>
877
- <option value="seo-framework-migration-tool"><?php _e('The SEO Framework','wp-seopress'); ?></option>
878
- <option value="rk-migration-tool"><?php _e('Rank Math','wp-seopress'); ?></option>
879
- <option value="squirrly-migration-tool"><?php _e('Squirrly SEO','wp-seopress'); ?></option>
880
- <option value="seo-ultimate-migration-tool"><?php _e('SEO Ultimate','wp-seopress'); ?></option>
881
- <option value="wp-meta-seo-migration-tool"><?php _e('WP Meta SEO','wp-seopress'); ?></option>
882
- <option value="premium-seo-pack-migration-tool"><?php _e('Premium SEO Pack','wp-seopress'); ?></option>
883
- <option value="wpseo-migration-tool"><?php _e('wpSEO','wp-seopress'); ?></option>
884
  </select>
885
  <br><br>
886
  </div>
887
- <!-- Yoast import tool -->
888
  <div id="yoast-migration-tool" class="postbox section-tool">
889
  <div class="inside">
890
- <h3><span><?php _e( 'Import posts and terms metadata from Yoast', 'wp-seopress' ); ?></span></h3>
891
- <p><?php _e( 'By clicking Migrate, we\'ll import:', 'wp-seopress' ); ?></p>
892
  <ul>
893
- <li><?php _e('Title tags','wp-seopress'); ?></li>
894
- <li><?php _e('Meta description','wp-seopress'); ?></li>
895
- <li><?php _e('Facebook Open Graph tags (title, description and image thumbnail)','wp-seopress'); ?></li>
896
- <li><?php _e('Twitter tags (title, description and image thumbnail)','wp-seopress'); ?></li>
897
- <li><?php _e('Meta Robots (noindex, nofollow...)','wp-seopress'); ?></li>
898
- <li><?php _e('Canonical URL','wp-seopress'); ?></li>
899
- <li><?php _e('Focus keywords','wp-seopress'); ?></li>
900
- <li><?php _e('Primary category','wp-seopress'); ?></li>
901
  </ul>
902
- <p style="color:red"><span class="dashicons dashicons-info"></span> <?php _e( '<strong>WARNING:</strong> Migration will delete / update all SEOPress posts and terms metadata. Some dynamic variables will not be interpreted. We do NOT delete any Yoast data.', 'wp-seopress' ); ?></p>
903
- <button id="seopress-yoast-migrate" type="button" class="button"><?php _e('Migrate now','wp-seopress'); ?></button>
904
  <span class="spinner"></span>
905
  <div class="log"></div>
906
  </div><!-- .inside -->
907
  </div><!-- .postbox -->
908
 
909
- <!-- All In One import tool -->
910
  <div id="aio-migration-tool" class="postbox section-tool">
911
  <div class="inside">
912
- <h3><span><?php _e( 'Import posts and terms metadata from All In One SEO', 'wp-seopress' ); ?></span></h3>
913
- <p><?php _e( 'By clicking Migrate, we\'ll import:', 'wp-seopress' ); ?></p>
914
  <ul>
915
- <li><?php _e('Title tags','wp-seopress'); ?></li>
916
- <li><?php _e('Meta description','wp-seopress'); ?></li>
917
- <li><?php _e('Facebook Open Graph tags (title, description and image thumbnail)','wp-seopress'); ?></li>
918
- <li><?php _e('Twitter image thumbnail','wp-seopress'); ?></li>
919
- <li><?php _e('Meta Robots (noindex, nofollow)','wp-seopress'); ?></li>
920
  </ul>
921
- <p style="color:red"><span class="dashicons dashicons-info"></span> <?php _e( '<strong>WARNING:</strong> Migration will update/delete all SEOPress posts and terms metadata. Some dynamic variables will not be interpreted. We do NOT delete any AIO data.', 'wp-seopress' ); ?></p>
922
- <button id="seopress-aio-migrate" type="button" class="button"><?php _e('Migrate now','wp-seopress'); ?></button>
923
  <span class="spinner"></span>
924
  <div class="log"></div>
925
  </div><!-- .inside -->
926
  </div><!-- .postbox -->
927
 
928
- <!-- SEO Framework import tool -->
929
  <div id="seo-framework-migration-tool" class="postbox section-tool">
930
  <div class="inside">
931
- <h3><span><?php _e( 'Import posts and terms metadata from The SEO Framework', 'wp-seopress' ); ?></span></h3>
932
- <p><?php _e( 'By clicking Migrate, we\'ll import:', 'wp-seopress' ); ?></p>
933
  <ul>
934
- <li><?php _e('Title tags','wp-seopress'); ?></li>
935
- <li><?php _e('Meta description','wp-seopress'); ?></li>
936
- <li><?php _e('Facebook Open Graph tags (title, description and image thumbnail)','wp-seopress'); ?></li>
937
- <li><?php _e('Twitter tags (title, description and image thumbnail)','wp-seopress'); ?></li>
938
- <li><?php _e('Meta Robots (noindex, nofollow, noarchive)','wp-seopress'); ?></li>
939
- <li><?php _e('Canonical URL','wp-seopress'); ?></li>
940
- <li><?php _e('Redirect URL','wp-seopress'); ?></li>
941
  </ul>
942
- <p style="color:red"><span class="dashicons dashicons-info"></span> <?php _e( '<strong>WARNING:</strong> Migration will update / delete all SEOPress posts and terms metadata. Some dynamic variables will not be interpreted. We do NOT delete any SEO Framework data.', 'wp-seopress' ); ?></p>
943
- <button id="seopress-seo-framework-migrate" type="button" class="button"><?php _e('Migrate now','wp-seopress'); ?></button>
944
  <span class="spinner"></span>
945
  <div class="log"></div>
946
  </div><!-- .inside -->
947
  </div><!-- .postbox -->
948
 
949
- <!-- RK import tool -->
950
  <div id="rk-migration-tool" class="postbox section-tool">
951
  <div class="inside">
952
- <h3><span><?php _e( 'Import posts and terms metadata from Rank Math', 'wp-seopress' ); ?></span></h3>
953
- <p><?php _e( 'By clicking Migrate, we\'ll import:', 'wp-seopress' ); ?></p>
954
  <ul>
955
- <li><?php _e('Title tags','wp-seopress'); ?></li>
956
- <li><?php _e('Meta description','wp-seopress'); ?></li>
957
- <li><?php _e('Facebook Open Graph tags (title, description and image thumbnail)','wp-seopress'); ?></li>
958
- <li><?php _e('Twitter tags (title, description and image thumbnail)','wp-seopress'); ?></li>
959
- <li><?php _e('Meta Robots (noindex, nofollow, noarchive, noimageindex)','wp-seopress'); ?></li>
960
- <li><?php _e('Canonical URL','wp-seopress'); ?></li>
961
- <li><?php _e('Focus keywords','wp-seopress'); ?></li>
962
  </ul>
963
- <p style="color:red"><span class="dashicons dashicons-info"></span> <?php _e( '<strong>WARNING:</strong> Migration will update / delete all SEOPress posts and terms metadata. Some dynamic variables will not be interpreted. We do NOT delete any Rank Math data.', 'wp-seopress' ); ?></p>
964
- <button id="seopress-rk-migrate" type="button" class="button"><?php _e('Migrate now','wp-seopress'); ?></button>
965
  <span class="spinner"></span>
966
  <div class="log"></div>
967
  </div><!-- .inside -->
968
  </div><!-- .postbox -->
969
-
970
- <!-- Squirrly import tool -->
971
  <div id="squirrly-migration-tool" class="postbox section-tool">
972
  <div class="inside">
973
- <h3><span><?php _e( 'Import posts metadata from Squirrly SEO', 'wp-seopress' ); ?></span></h3>
974
- <p><?php _e( 'By clicking Migrate, we\'ll import:', 'wp-seopress' ); ?></p>
975
  <ul>
976
- <li><?php _e('Title tags','wp-seopress'); ?></li>
977
- <li><?php _e('Meta description','wp-seopress'); ?></li>
978
- <li><?php _e('Facebook Open Graph tags (title, description and image thumbnail)','wp-seopress'); ?></li>
979
- <li><?php _e('Twitter tags (title, description and image thumbnail)','wp-seopress'); ?></li>
980
- <li><?php _e('Meta Robots (noindex or nofollow)','wp-seopress'); ?></li>
981
- <li><?php _e('Canonical URL','wp-seopress'); ?></li>
982
  </ul>
983
- <p style="color:red"><span class="dashicons dashicons-info"></span> <?php _e( '<strong>WARNING:</strong> Migration will update/delete all SEOPress posts metadata. Some dynamic variables will not be interpreted. We do NOT delete any Squirrly SEO data.', 'wp-seopress' ); ?></p>
984
- <button id="seopress-squirrly-migrate" type="button" class="button"><?php _e('Migrate now','wp-seopress'); ?></button>
985
  <span class="spinner"></span>
986
  <div class="log"></div>
987
  </div><!-- .inside -->
988
  </div><!-- .postbox -->
989
-
990
- <!-- SEO Ultimate import tool -->
991
  <div id="seo-ultimate-migration-tool" class="postbox section-tool">
992
  <div class="inside">
993
- <h3><span><?php _e( 'Import posts metadata from SEO Ultimate', 'wp-seopress' ); ?></span></h3>
994
- <p><?php _e( 'By clicking Migrate, we\'ll import:', 'wp-seopress' ); ?></p>
995
  <ul>
996
- <li><?php _e('Title tags','wp-seopress'); ?></li>
997
- <li><?php _e('Meta description','wp-seopress'); ?></li>
998
- <li><?php _e('Facebook Open Graph tags (title, description and image thumbnail)','wp-seopress'); ?></li>
999
- <li><?php _e('Twitter tags (title, description and image thumbnail)','wp-seopress'); ?></li>
1000
- <li><?php _e('Meta Robots (noindex or nofollow)','wp-seopress'); ?></li>
1001
  </ul>
1002
- <p style="color:red"><span class="dashicons dashicons-info"></span> <?php _e( '<strong>WARNING:</strong> Migration will update / delete all SEOPress posts metadata. Some dynamic variables will not be interpreted. We do NOT delete any SEO Ultimate data.', 'wp-seopress' ); ?></p>
1003
- <button id="seopress-seo-ultimate-migrate" type="button" class="button"><?php _e('Migrate now','wp-seopress'); ?></button>
1004
  <span class="spinner"></span>
1005
  <div class="log"></div>
1006
  </div><!-- .inside -->
@@ -1009,16 +838,16 @@ class seopress_options
1009
  <!-- WP Meta SEO import tool -->
1010
  <div id="wp-meta-seo-migration-tool" class="postbox section-tool">
1011
  <div class="inside">
1012
- <h3><span><?php _e( 'Import posts and terms metadata from WP Meta SEO', 'wp-seopress' ); ?></span></h3>
1013
- <p><?php _e( 'By clicking Migrate, we\'ll import:', 'wp-seopress' ); ?></p>
1014
  <ul>
1015
- <li><?php _e('Title tags','wp-seopress'); ?></li>
1016
- <li><?php _e('Meta description','wp-seopress'); ?></li>
1017
- <li><?php _e('Facebook Open Graph tags (title, description and image thumbnail)','wp-seopress'); ?></li>
1018
- <li><?php _e('Twitter tags (title, description and image thumbnail)','wp-seopress'); ?></li>
1019
  </ul>
1020
- <p style="color:red"><span class="dashicons dashicons-info"></span> <?php _e( '<strong>WARNING:</strong> Migration will update / delete all SEOPress posts metadata. Some dynamic variables will not be interpreted. We do NOT delete any WP Meta SEO data.', 'wp-seopress' ); ?></p>
1021
- <button id="seopress-wp-meta-seo-migrate" type="button" class="button"><?php _e('Migrate now','wp-seopress'); ?></button>
1022
  <span class="spinner"></span>
1023
  <div class="log"></div>
1024
  </div><!-- .inside -->
@@ -1027,18 +856,18 @@ class seopress_options
1027
  <!-- Premium SEO Pack import tool -->
1028
  <div id="premium-seo-pack-migration-tool" class="postbox section-tool">
1029
  <div class="inside">
1030
- <h3><span><?php _e( 'Import posts and terms metadata from Premium SEO Pack', 'wp-seopress' ); ?></span></h3>
1031
- <p><?php _e( 'By clicking Migrate, we\'ll import:', 'wp-seopress' ); ?></p>
1032
  <ul>
1033
- <li><?php _e('Title tags','wp-seopress'); ?></li>
1034
- <li><?php _e('Meta description','wp-seopress'); ?></li>
1035
- <li><?php _e('Facebook Open Graph tags (title, description and image thumbnail)','wp-seopress'); ?></li>
1036
- <li><?php _e('Meta Robots (noindex, nofollow)','wp-seopress'); ?></li>
1037
- <li><?php _e('Canonical URL','wp-seopress'); ?></li>
1038
- <li><?php _e('Focus keywords','wp-seopress'); ?></li>
1039
  </ul>
1040
- <p style="color:red"><span class="dashicons dashicons-info"></span> <?php _e( '<strong>WARNING:</strong> Migration will update / delete all SEOPress posts metadata. Some dynamic variables will not be interpreted. We do NOT delete any Premium SEO Pack data.', 'wp-seopress' ); ?></p>
1041
- <button id="seopress-premium-seo-pack-migrate" type="button" class="button"><?php _e('Migrate now','wp-seopress'); ?></button>
1042
  <span class="spinner"></span>
1043
  <div class="log"></div>
1044
  </div><!-- .inside -->
@@ -1047,208 +876,49 @@ class seopress_options
1047
  <!-- wpSEO import tool -->
1048
  <div id="wpseo-migration-tool" class="postbox section-tool">
1049
  <div class="inside">
1050
- <h3><span><?php _e( 'Import posts and terms metadata from wpSEO', 'wp-seopress' ); ?></span></h3>
1051
- <p><?php _e( 'By clicking Migrate, we\'ll import:', 'wp-seopress' ); ?></p>
1052
  <ul>
1053
- <li><?php _e('Title tags','wp-seopress'); ?></li>
1054
- <li><?php _e('Meta description','wp-seopress'); ?></li>
1055
- <li><?php _e('Facebook Open Graph tags (title, description and image thumbnail)','wp-seopress'); ?></li>
1056
- <li><?php _e('Twitter tags (title, description and image thumbnail)','wp-seopress'); ?></li>
1057
- <li><?php _e('Meta Robots (noindex, nofollow)','wp-seopress'); ?></li>
1058
- <li><?php _e('Canonical URL','wp-seopress'); ?></li>
1059
- <li><?php _e('Redirect URL','wp-seopress'); ?></li>
1060
- <li><?php _e('Main keyword','wp-seopress'); ?></li>
1061
  </ul>
1062
- <p style="color:red"><span class="dashicons dashicons-info"></span> <?php _e( '<strong>WARNING:</strong> Migration will update / delete all SEOPress posts metadata. Some dynamic variables will not be interpreted. We do NOT delete any wpSEO data.', 'wp-seopress' ); ?></p>
1063
- <button id="seopress-wpseo-migrate" type="button" class="button"><?php _e('Migrate now','wp-seopress'); ?></button>
1064
  <span class="spinner"></span>
1065
  <div class="log"></div>
1066
  </div><!-- .inside -->
1067
  </div><!-- .postbox -->
1068
  </div>
1069
- <div class="seopress-tab <?php if ($current_tab == 'tab_seopress_tool_redirects') { echo 'active'; } ?>" id="tab_seopress_tool_redirects">
 
 
1070
  <?php if (is_plugin_active('wp-seopress-pro/seopress-pro.php')) { ?>
1071
- <?php if(seopress_get_toggle_option('404')=='1') { ?>
1072
- <div class="postbox section-tool">
1073
- <h3><span><?php _e('Import your redirections','wp-seopress'); ?></span></h3>
1074
- <select id="select-wizard-redirects" name="select-wizard-redirects">
1075
- <option value="none"><?php _e('Select an option','wp-seopress'); ?></option>
1076
- <option value="section-import-redirects"><?php _e('CSV file (must match the template)','wp-seopress'); ?></option>
1077
- <option value="section-import-redirects-plugin"><?php _e('Redirections plugin (JSON - WordPress Redirects)','wp-seopress'); ?></option>
1078
- <option value="section-import-yoast-redirects"><?php _e('Yoast Premium plugin (CSV)','wp-seopress'); ?></option>
1079
- <option value="section-import-rk-redirects"><?php _e('Rank Math plugin (TXT)','wp-seopress'); ?></option>
1080
- </select>
1081
- <br><br>
1082
- </div>
1083
- <div id="section-import-redirects" class="postbox section-tool">
1084
- <div class="inside">
1085
- <h3><span><?php _e( 'Import Redirections', 'wp-seopress' ); ?></span></h3>
1086
- <p><?php _e( 'Import your own redirections from a .csv file (separator ";"). You must have these columns in this order:','wp-seopress'); ?>
1087
- <ul>
1088
- <li><?php _e( 'URL to match (without your domain name)', 'wp-seopress'); ?></li>
1089
- <li><?php _e( 'URL to redirect in absolute,','wp-seopress'); ?></li>
1090
- <li><?php _e( 'type of redirection (301, 302 or 307, 410, 451),','wp-seopress'); ?></li>
1091
- <li><?php _e( 'Yes to enable the redirect (leave it empty to disable the redirect)','wp-seopress'); ?></li>
1092
- <li><?php _e( 'the query parameter without the quotes ("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),', 'wp-seopress' ); ?></li>
1093
- <li><?php _e( 'the counter (optional),','wp-seopress'); ?></li>
1094
- <li><?php _e( 'and, the last parameter, category redirect IDs separated by commas (optional).','wp-seopress'); ?></li>
1095
- </ul>
1096
- </p>
1097
- <p>
1098
- <a href="https://www.seopress.org/wp-content/uploads/csv/seopress-redirections-example.csv" target="_blank">
1099
- <?php _e('Download a CSV example','wp-seopress'); ?>
1100
- </a>
1101
- </p>
1102
- <p><?php _e('Duplicate entries will be automatically removed during import.','wp-seopress'); ?></p>
1103
- <p><strong><?php _e('Select your separator:','wp-seopress'); ?></strong></p>
1104
- <form method="post" enctype="multipart/form-data">
1105
- <p>
1106
- <input id="import_sep_comma" name="import_sep" type="radio" value="comma"/>
1107
- <label for="import_sep_comma"><?php _e( 'Comma separator: "<strong>,</strong>"', 'wp-seopress' ); ?></label>
1108
- </p>
1109
- <p>
1110
- <input id="import_sep_semicolon" name="import_sep" type="radio" value="semicolon"/>
1111
- <label for="import_sep_semicolon"><?php _e( 'Semicolon separator: "<strong>;</strong>"', 'wp-seopress' ); ?></label>
1112
- </p>
1113
- <p>
1114
- <input type="file" name="import_file"/>
1115
- </p>
1116
- <p>
1117
- <input type="hidden" name="seopress_action" value="import_redirections_settings" />
1118
- <?php wp_nonce_field( 'seopress_import_redirections_nonce', 'seopress_import_redirections_nonce' ); ?>
1119
- <?php submit_button( __( 'Import', 'wp-seopress' ), 'secondary', 'submit', false ); ?>
1120
- </p>
1121
- </form>
1122
- </div><!-- .inside -->
1123
- </div><!-- .postbox -->
1124
- <div id="section-import-redirects-plugin" class="postbox section-tool">
1125
- <div class="inside">
1126
- <h3><span><?php _e( 'Import Redirections from the Redirections plugin', 'wp-seopress' ); ?></span></h3>
1127
- <p><?php _e( 'Import your own redirections from a .json file generated by the Redirections plugin (make sure to select <strong>"WordPress redirects"</strong> when you export your file). 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>
1128
- <form method="post" enctype="multipart/form-data">
1129
- <p>
1130
- <input type="file" name="import_file"/>
1131
- </p>
1132
- <p>
1133
- <input type="hidden" name="seopress_action" value="import_redirections_plugin_settings" />
1134
- <?php wp_nonce_field( 'seopress_import_redirections_plugin_nonce', 'seopress_import_redirections_plugin_nonce' ); ?>
1135
- <?php submit_button( __( 'Import', 'wp-seopress' ), 'secondary', 'submit', false ); ?>
1136
- </p>
1137
- </form>
1138
- </div><!-- .inside -->
1139
- </div><!-- .postbox -->
1140
- <div id="section-import-yoast-redirects" class="postbox section-tool">
1141
- <div class="inside">
1142
- <h3><span><?php _e( 'Import Redirections from Yoast Premium', 'wp-seopress' ); ?></span></h3>
1143
- <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>
1144
- <form method="post" enctype="multipart/form-data">
1145
- <p>
1146
- <input type="file" name="import_file"/>
1147
- </p>
1148
- <p>
1149
- <input type="hidden" name="seopress_action" value="import_yoast_redirections" />
1150
- <?php wp_nonce_field( 'seopress_import_yoast_redirections_nonce', 'seopress_import_yoast_redirections_nonce' ); ?>
1151
- <?php submit_button( __( 'Import', 'wp-seopress' ), 'secondary', 'submit', false ); ?>
1152
- </p>
1153
- </form>
1154
- </div><!-- .inside -->
1155
- </div><!-- .postbox -->
1156
- <div id="section-import-rk-redirects" class="postbox section-tool">
1157
- <div class="inside">
1158
- <h3><span><?php _e( 'Import Redirections from Rank Math', 'wp-seopress' ); ?></span></h3>
1159
- <p><?php _e( 'Import your own redirections from a .txt file generated by Rank Math. 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>
1160
- <form method="post" enctype="multipart/form-data">
1161
- <p>
1162
- <input type="file" name="import_file"/>
1163
- </p>
1164
- <p>
1165
- <input type="hidden" name="seopress_action" value="import_rk_redirections" />
1166
- <?php wp_nonce_field( 'seopress_import_rk_redirections_nonce', 'seopress_import_rk_redirections_nonce' ); ?>
1167
- <?php submit_button( __( 'Import', 'wp-seopress' ), 'secondary', 'submit', false ); ?>
1168
- </p>
1169
- </form>
1170
- </div><!-- .inside -->
1171
- </div><!-- .postbox -->
1172
- <div id="section-export-redirects" class="postbox section-tool">
1173
- <div class="inside">
1174
- <h3><span><?php _e( 'Export Redirections', 'wp-seopress' ); ?></span></h3>
1175
- <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>
1176
- <form method="post">
1177
- <p><input type="hidden" name="seopress_action" value="export_redirections" /></p>
1178
- <p>
1179
- <?php wp_nonce_field( 'seopress_export_redirections_nonce', 'seopress_export_redirections_nonce' ); ?>
1180
- <?php submit_button( __( 'Export', 'wp-seopress' ), 'secondary', 'submit', false ); ?>
1181
- </p>
1182
- </form>
1183
- </div><!-- .inside -->
1184
- </div><!-- .postbox -->
1185
- <div id="section-export-redirects-htaccess" class="postbox section-tool">
1186
- <div class="inside">
1187
- <h3><span><?php _e( 'Export Redirections for an .htaccess file', 'wp-seopress' ); ?></span></h3>
1188
- <p><?php _e( 'Export all redirects from this site to a txt file. Then copy and paste the formatted URLs into your .htaccess file.', 'wp-seopress' ); ?></p>
1189
- <p><?php _e( 'Only active redirections will be exported.', 'wp-seopress' ); ?></p>
1190
- <p><?php _e( 'Save your .htaccess file before editing it. <strong>Safety first!</strong>', 'wp-seopress' ); ?></p>
1191
- <p><?php _e( 'Do not forget to test every redirects!', 'wp-seopress' ); ?></p>
1192
- <form method="post">
1193
- <p><input type="hidden" name="seopress_action" value="export_redirections_htaccess" /></p>
1194
- <p>
1195
- <?php wp_nonce_field( 'seopress_export_redirections_htaccess_nonce', 'seopress_export_redirections_htaccess_nonce' ); ?>
1196
- <?php submit_button( __( 'Export', 'wp-seopress' ), 'secondary', 'submit', false ); ?>
1197
- </p>
1198
- </form>
1199
- </div><!-- .inside -->
1200
- </div><!-- .postbox -->
1201
- <div id="section-clean-404" class="postbox section-tool">
1202
- <div class="inside">
1203
- <h3><span><?php _e( 'Clean your 404', 'wp-seopress' ); ?></span></h3>
1204
- <p><?php _e( 'Delete all your 404 errors. We don‘t delete any redirects.', 'wp-seopress' ); ?></p>
1205
- <p class="seopress-help"><?php
1206
- if (function_exists('seopress_get_locale') && seopress_get_locale() =='fr') {
1207
- $seopress_docs_link['support']['redirects']['query'] = 'https://www.seopress.org/fr/support/guides/nettoyez-vos-erreurs-404-a-laide-dune-requete-mysql/?utm_source=plugin&utm_medium=wp-admin&utm_campaign=seopress';
1208
- } else {
1209
- $seopress_docs_link['support']['redirects']['query'] = 'https://www.seopress.org/support/guides/delete-your-404-errors-with-a-mysql-query/?utm_source=plugin&utm_medium=wp-admin&utm_campaign=seopress';
1210
- }
1211
- /* translators: %s link to documentation */
1212
- echo sprintf(__('You can also use <span class="dashicons dashicons-external"></span><a href="%s" target="_blank">this MySQL query</a> if necessary.','wp-seopress'),$seopress_docs_link['support']['redirects']['query']); ?></p>
1213
- <form method="post">
1214
- <p><input type="hidden" name="seopress_action" value="clean_404" /></p>
1215
- <p>
1216
- <?php wp_nonce_field( 'seopress_clean_404_nonce', 'seopress_clean_404_nonce' ); ?>
1217
- <?php submit_button( __( 'Delete all 404', 'wp-seopress' ), 'secondary', 'submit', false ); ?>
1218
- </p>
1219
- </form>
1220
- </div><!-- .inside -->
1221
- </div><!-- .postbox -->
1222
- <div id="section-clean-redirects" class="postbox section-tool">
1223
- <div class="inside">
1224
- <h3><span><?php _e( 'Clean all your redirects and 404 errors', 'wp-seopress' ); ?></span></h3>
1225
- <p><?php _e( 'Delete all your 301, 302, 307, 404, 410 and 451 entries.', 'wp-seopress' ); ?></p>
1226
- <p style="color:red"><span class="dashicons dashicons-info"></span> <?php _e( '<strong>WARNING:</strong> Backup your database before deletion. Safety FIRST!', 'wp-seopress' ); ?></p>
1227
- <form method="post">
1228
- <p><input type="hidden" name="seopress_action" value="clean_all" /></p>
1229
- <p>
1230
- <?php wp_nonce_field( 'seopress_clean_all_nonce', 'seopress_clean_all_nonce' ); ?>
1231
- <?php submit_button( __( 'Delete', 'wp-seopress' ), 'secondary', 'submit', false ); ?>
1232
- </p>
1233
- </form>
1234
- </div><!-- .inside -->
1235
- </div><!-- .postbox -->
1236
- <?php } else { ?>
1237
- <p><?php _e('Redirections feature is disabled. Please activate it from the PRO page.','wp-seopress'); ?></p>
1238
- <a href="<?php echo admin_url( 'admin.php?page=seopress-pro-page' ); ?>"><?php _e('Activate Redirections','wp-seopress'); ?></a>
1239
  <?php } ?>
1240
  <?php } ?>
1241
  </div>
1242
- <div class="seopress-tab <?php if ($current_tab == 'tab_seopress_tool_reset') { echo 'active'; } ?>" id="tab_seopress_tool_reset">
 
 
1243
  <div class="postbox section-tool">
1244
  <div class="inside">
1245
- <h3><span><?php _e( 'Reset All Notices From Notifications Center', 'wp-seopress' ); ?></span></h3>
1246
- <p><?php _e( 'By clicking Reset Notices, all notices in the notifications center will be set to their initial status.', 'wp-seopress' ); ?></p>
1247
  <form method="post" enctype="multipart/form-data">
1248
  <p>
1249
  <input type="hidden" name="seopress_action" value="reset_notices_settings" />
1250
- <?php wp_nonce_field( 'seopress_reset_notices_nonce', 'seopress_reset_notices_nonce' ); ?>
1251
- <?php submit_button( __( 'Reset notices', 'wp-seopress' ), 'secondary', 'submit', false ); ?>
1252
  </p>
1253
  </form>
1254
  </div><!-- .inside -->
@@ -1256,13 +926,13 @@ class seopress_options
1256
 
1257
  <div class="postbox section-tool">
1258
  <div class="inside">
1259
- <h3><span><?php _e( 'Reset All Settings', 'wp-seopress' ); ?></span></h3>
1260
- <p style="color:red"><span class="dashicons dashicons-info"></span> <?php _e( '<strong>WARNING:</strong> Delete all options related to this plugin in your database AND set settings to their default values.', 'wp-seopress' ); ?></p>
1261
  <form method="post" enctype="multipart/form-data">
1262
  <p>
1263
  <input type="hidden" name="seopress_action" value="reset_settings" />
1264
- <?php wp_nonce_field( 'seopress_reset_nonce', 'seopress_reset_nonce' ); ?>
1265
- <?php submit_button( __( 'Reset settings', 'wp-seopress' ), 'secondary', 'submit', false ); ?>
1266
  </p>
1267
  </form>
1268
  </div><!-- .inside -->
@@ -1271,1819 +941,1800 @@ class seopress_options
1271
  </div>
1272
  </div>
1273
  <?php
1274
- }
1275
-
1276
- /**
1277
- * Options page callback
1278
- */
1279
- public function create_admin_page()
1280
- {
1281
- // Set class property
1282
- $this->options = get_option( 'seopress_option_name' );
1283
- $current_tab ='';
1284
- if (function_exists('seopress_admin_header')) {
1285
- echo seopress_admin_header();
1286
- }
1287
- ?>
1288
  <div id="seopress-content">
1289
  <!--Get started-->
1290
  <?php
1291
- function seopress_get_hidden_notices_get_started_option() {
1292
- $seopress_get_hidden_notices_get_started_option = get_option("seopress_notices");
1293
- if ( ! empty ( $seopress_get_hidden_notices_get_started_option ) ) {
1294
- foreach ($seopress_get_hidden_notices_get_started_option as $key => $seopress_get_hidden_notices_get_started_value)
1295
- $options[$key] = $seopress_get_hidden_notices_get_started_value;
1296
- if (isset($seopress_get_hidden_notices_get_started_option['notice-get-started'])) {
1297
- return $seopress_get_hidden_notices_get_started_option['notice-get-started'];
1298
- }
1299
- }
1300
- }
1301
- if(seopress_get_hidden_notices_get_started_option() !='1') {
1302
- if (function_exists('seopress_get_toggle_white_label_option') && seopress_get_toggle_white_label_option() =='1') {
1303
- //do nothing
1304
- } else {
1305
- include_once(dirname( __FILE__ ).'/admin-get-started.php');
1306
- }
1307
- }
1308
- ?>
1309
 
1310
  <!--Notifications Center-->
1311
- <?php include_once(dirname( __FILE__ ).'/admin-notifications-center.php'); ?>
1312
 
1313
  <!--Features list-->
1314
- <?php include_once(dirname( __FILE__ ).'/admin-features-list.php'); ?>
1315
  </div>
1316
  <?php
1317
- }
1318
-
1319
- /**
1320
- * Register and add settings
1321
- */
1322
- public function page_init()
1323
- {
1324
- register_setting(
1325
- 'seopress_option_group', // Option group
1326
- 'seopress_option_name', // Option name
1327
- array( $this, 'sanitize' ) // Sanitize
1328
- );
1329
-
1330
- register_setting(
1331
- 'seopress_titles_option_group', // Option group
1332
- 'seopress_titles_option_name', // Option name
1333
- array( $this, 'sanitize' ) // Sanitize
1334
- );
1335
-
1336
- register_setting(
1337
- 'seopress_xml_sitemap_option_group', // Option group
1338
- 'seopress_xml_sitemap_option_name', // Option name
1339
- array( $this, 'sanitize' ) // Sanitize
1340
- );
1341
-
1342
- register_setting(
1343
- 'seopress_social_option_group', // Option group
1344
- 'seopress_social_option_name', // Option name
1345
- array( $this, 'sanitize' ) // Sanitize
1346
- );
1347
-
1348
- register_setting(
1349
- 'seopress_google_analytics_option_group', // Option group
1350
- 'seopress_google_analytics_option_name', // Option name
1351
- array( $this, 'sanitize' ) // Sanitize
1352
- );
1353
-
1354
- register_setting(
1355
- 'seopress_advanced_option_group', // Option group
1356
- 'seopress_advanced_option_name', // Option name
1357
- array( $this, 'sanitize' ) // Sanitize
1358
- );
1359
-
1360
- register_setting(
1361
- 'seopress_import_export_option_group', // Option group
1362
- 'seopress_import_export_option_name', // Option name
1363
- array( $this, 'sanitize' ) // Sanitize
1364
- );
1365
-
1366
- //Titles & metas SECTION===================================================================
1367
- add_settings_section(
1368
- 'seopress_setting_section_titles_home', // ID
1369
- '',
1370
- //__("Home","wp-seopress"), // Title
1371
- array( $this, 'print_section_info_titles' ), // Callback
1372
- 'seopress-settings-admin-titles-home' // Page
1373
- );
1374
-
1375
- add_settings_field(
1376
- 'seopress_titles_sep', // ID
1377
- __("Separator","wp-seopress"), // Title
1378
- array( $this, 'seopress_titles_sep_callback' ), // Callback
1379
- 'seopress-settings-admin-titles-home', // Page
1380
- 'seopress_setting_section_titles_home' // Section
1381
- );
1382
-
1383
- add_settings_field(
1384
- 'seopress_titles_home_site_title', // ID
1385
- __("Site title","wp-seopress"), // Title
1386
- array( $this, 'seopress_titles_home_site_title_callback' ), // Callback
1387
- 'seopress-settings-admin-titles-home', // Page
1388
- 'seopress_setting_section_titles_home' // Section
1389
- );
1390
-
1391
- add_settings_field(
1392
- 'seopress_titles_home_site_desc', // ID
1393
- __("Meta description","wp-seopress"), // Title
1394
- array( $this, 'seopress_titles_home_site_desc_callback' ), // Callback
1395
- 'seopress-settings-admin-titles-home', // Page
1396
- 'seopress_setting_section_titles_home' // Section
1397
- );
1398
-
1399
- //Single Post Types SECTION================================================================
1400
- add_settings_section(
1401
- 'seopress_setting_section_titles_single', // ID
1402
- '',
1403
- //__("Single Post Types","wp-seopress"), // Title
1404
- array( $this, 'print_section_info_single' ), // Callback
1405
- 'seopress-settings-admin-titles-single' // Page
1406
- );
1407
-
1408
- add_settings_field(
1409
- 'seopress_titles_single_titles', // ID
1410
- '',
1411
- array( $this, 'seopress_titles_single_titles_callback' ), // Callback
1412
- 'seopress-settings-admin-titles-single', // Page
1413
- 'seopress_setting_section_titles_single' // Section
1414
- );
1415
-
1416
- if ( is_plugin_active( 'buddypress/bp-loader.php' ) || is_plugin_active( 'buddyboss-platform/bp-loader.php' )) {
1417
- add_settings_field(
1418
- 'seopress_titles_bp_groups_title', // ID
1419
- '',
1420
- array( $this, 'seopress_titles_bp_groups_title_callback' ), // Callback
1421
- 'seopress-settings-admin-titles-single', // Page
1422
- 'seopress_setting_section_titles_single' // Section
1423
- );
1424
-
1425
- add_settings_field(
1426
- 'seopress_titles_bp_groups_desc', // ID
1427
- '',
1428
- array( $this, 'seopress_titles_bp_groups_desc_callback' ), // Callback
1429
- 'seopress-settings-admin-titles-single', // Page
1430
- 'seopress_setting_section_titles_single' // Section
1431
- );
1432
-
1433
- add_settings_field(
1434
- 'seopress_titles_bp_groups_noindex', // ID
1435
- '',
1436
- array( $this, 'seopress_titles_bp_groups_noindex_callback' ), // Callback
1437
- 'seopress-settings-admin-titles-single', // Page
1438
- 'seopress_setting_section_titles_single' // Section
1439
- );
1440
- }
1441
-
1442
- //Archives SECTION=========================================================================
1443
- add_settings_section(
1444
- 'seopress_setting_section_titles_archives', // ID
1445
- '',
1446
- //__("Archives","wp-seopress"), // Title
1447
- array( $this, 'print_section_info_archives' ), // Callback
1448
- 'seopress-settings-admin-titles-archives' // Page
1449
- );
1450
-
1451
- add_settings_field(
1452
- 'seopress_titles_archives_titles', // ID
1453
- '',
1454
- array( $this, 'seopress_titles_archives_titles_callback' ), // Callback
1455
- 'seopress-settings-admin-titles-archives', // Page
1456
- 'seopress_setting_section_titles_archives' // Section
1457
- );
1458
-
1459
- add_settings_field(
1460
- 'seopress_titles_archives_author_title', // ID
1461
- '',
1462
- //__('Title template','wp-seopress'),
1463
- array( $this, 'seopress_titles_archives_author_title_callback' ), // Callback
1464
- 'seopress-settings-admin-titles-archives', // Page
1465
- 'seopress_setting_section_titles_archives' // Section
1466
- );
1467
-
1468
- add_settings_field(
1469
- 'seopress_titles_archives_author_desc', // ID
1470
- '',
1471
- //__('Meta description template','wp-seopress'),
1472
- array( $this, 'seopress_titles_archives_author_desc_callback' ), // Callback
1473
- 'seopress-settings-admin-titles-archives', // Page
1474
- 'seopress_setting_section_titles_archives' // Section
1475
- );
1476
-
1477
- add_settings_field(
1478
- 'seopress_titles_archives_author_noindex', // ID
1479
- '',
1480
- //__("noindex","wp-seopress"), // Title
1481
- array( $this, 'seopress_titles_archives_author_noindex_callback' ), // Callback
1482
- 'seopress-settings-admin-titles-archives', // Page
1483
- 'seopress_setting_section_titles_archives' // Section
1484
- );
1485
-
1486
- add_settings_field(
1487
- 'seopress_titles_archives_author_disable', // ID
1488
- '',
1489
- //__("disable","wp-seopress"), // Title
1490
- array( $this, 'seopress_titles_archives_author_disable_callback' ), // Callback
1491
- 'seopress-settings-admin-titles-archives', // Page
1492
- 'seopress_setting_section_titles_archives' // Section
1493
- );
1494
-
1495
- add_settings_field(
1496
- 'seopress_titles_archives_date_title', // ID
1497
- '',
1498
- //__('Title template','wp-seopress'),
1499
- array( $this, 'seopress_titles_archives_date_title_callback' ), // Callback
1500
- 'seopress-settings-admin-titles-archives', // Page
1501
- 'seopress_setting_section_titles_archives' // Section
1502
- );
1503
-
1504
- add_settings_field(
1505
- 'seopress_titles_archives_date_desc', // ID
1506
- '',
1507
- //__('Meta description template','wp-seopress'),
1508
- array( $this, 'seopress_titles_archives_date_desc_callback' ), // Callback
1509
- 'seopress-settings-admin-titles-archives', // Page
1510
- 'seopress_setting_section_titles_archives' // Section
1511
- );
1512
-
1513
- add_settings_field(
1514
- 'seopress_titles_archives_date_noindex', // ID
1515
- '',
1516
- //__("noindex","wp-seopress"), // Title
1517
- array( $this, 'seopress_titles_archives_date_noindex_callback' ), // Callback
1518
- 'seopress-settings-admin-titles-archives', // Page
1519
- 'seopress_setting_section_titles_archives' // Section
1520
- );
1521
-
1522
- add_settings_field(
1523
- 'seopress_titles_archives_date_disable', // ID
1524
- '',
1525
- //__("disable","wp-seopress"), // Title
1526
- array( $this, 'seopress_titles_archives_date_disable_callback' ), // Callback
1527
- 'seopress-settings-admin-titles-archives', // Page
1528
- 'seopress_setting_section_titles_archives' // Section
1529
- );
1530
-
1531
- add_settings_field(
1532
- 'seopress_titles_archives_search_title', // ID
1533
- '',
1534
- //__('Title template','wp-seopress'),
1535
- array( $this, 'seopress_titles_archives_search_title_callback' ), // Callback
1536
- 'seopress-settings-admin-titles-archives', // Page
1537
- 'seopress_setting_section_titles_archives' // Section
1538
- );
1539
-
1540
- add_settings_field(
1541
- 'seopress_titles_archives_search_desc', // ID
1542
- '',
1543
- //__('Meta description template','wp-seopress'),
1544
- array( $this, 'seopress_titles_archives_search_desc_callback' ), // Callback
1545
- 'seopress-settings-admin-titles-archives', // Page
1546
- 'seopress_setting_section_titles_archives' // Section
1547
- );
1548
-
1549
- add_settings_field(
1550
- 'seopress_titles_archives_search_title_noindex', // ID
1551
- '',
1552
- //__('noindex','wp-seopress'),
1553
- array( $this, 'seopress_titles_archives_search_title_noindex_callback' ), // Callback
1554
- 'seopress-settings-admin-titles-archives', // Page
1555
- 'seopress_setting_section_titles_archives' // Section
1556
- );
1557
-
1558
- add_settings_field(
1559
- 'seopress_titles_archives_404_title', // ID
1560
- '',
1561
- //__('Title template','wp-seopress'),
1562
- array( $this, 'seopress_titles_archives_404_title_callback' ), // Callback
1563
- 'seopress-settings-admin-titles-archives', // Page
1564
- 'seopress_setting_section_titles_archives' // Section
1565
- );
1566
-
1567
- add_settings_field(
1568
- 'seopress_titles_archives_404_desc', // ID
1569
- '',
1570
- //__('Meta description template','wp-seopress'),
1571
- array( $this, 'seopress_titles_archives_404_desc_callback' ), // Callback
1572
- 'seopress-settings-admin-titles-archives', // Page
1573
- 'seopress_setting_section_titles_archives' // Section
1574
- );
1575
-
1576
- //Taxonomies SECTION=======================================================================
1577
- add_settings_section(
1578
- 'seopress_setting_section_titles_tax', // ID
1579
- '',
1580
- //__("Taxonomies","wp-seopress"), // Title
1581
- array( $this, 'print_section_info_tax' ), // Callback
1582
- 'seopress-settings-admin-titles-tax' // Page
1583
- );
1584
-
1585
- add_settings_field(
1586
- 'seopress_titles_tax_titles', // ID
1587
- '',
1588
- array( $this, 'seopress_titles_tax_titles_callback' ), // Callback
1589
- 'seopress-settings-admin-titles-tax', // Page
1590
- 'seopress_setting_section_titles_tax' // Section
1591
- );
1592
-
1593
- //Advanced SECTION=========================================================================
1594
- add_settings_section(
1595
- 'seopress_setting_section_titles_advanced', // ID
1596
- '',
1597
- //__("Advanced","wp-seopress"), // Title
1598
- array( $this, 'print_section_info_advanced' ), // Callback
1599
- 'seopress-settings-admin-titles-advanced' // Page
1600
- );
1601
-
1602
- add_settings_field(
1603
- 'seopress_titles_noindex', // ID
1604
- __("noindex","wp-seopress"), // Title
1605
- array( $this, 'seopress_titles_noindex_callback' ), // Callback
1606
- 'seopress-settings-admin-titles-advanced', // Page
1607
- 'seopress_setting_section_titles_advanced' // Section
1608
- );
1609
-
1610
- add_settings_field(
1611
- 'seopress_titles_nofollow', // ID
1612
- __("nofollow","wp-seopress"), // Title
1613
- array( $this, 'seopress_titles_nofollow_callback' ), // Callback
1614
- 'seopress-settings-admin-titles-advanced', // Page
1615
- 'seopress_setting_section_titles_advanced' // Section
1616
- );
1617
-
1618
- add_settings_field(
1619
- 'seopress_titles_noodp', // ID
1620
- __("noodp","wp-seopress"), // Title
1621
- array( $this, 'seopress_titles_noodp_callback' ), // Callback
1622
- 'seopress-settings-admin-titles-advanced', // Page
1623
- 'seopress_setting_section_titles_advanced' // Section
1624
- );
1625
-
1626
- add_settings_field(
1627
- 'seopress_titles_noimageindex', // ID
1628
- __("noimageindex","wp-seopress"), // Title
1629
- array( $this, 'seopress_titles_noimageindex_callback' ), // Callback
1630
- 'seopress-settings-admin-titles-advanced', // Page
1631
- 'seopress_setting_section_titles_advanced' // Section
1632
- );
1633
-
1634
- add_settings_field(
1635
- 'seopress_titles_noarchive', // ID
1636
- __("noarchive","wp-seopress"), // Title
1637
- array( $this, 'seopress_titles_noarchive_callback' ), // Callback
1638
- 'seopress-settings-admin-titles-advanced', // Page
1639
- 'seopress_setting_section_titles_advanced' // Section
1640
- );
1641
-
1642
- add_settings_field(
1643
- 'seopress_titles_nosnippet', // ID
1644
- __("nosnippet","wp-seopress"), // Title
1645
- array( $this, 'seopress_titles_nosnippet_callback' ), // Callback
1646
- 'seopress-settings-admin-titles-advanced', // Page
1647
- 'seopress_setting_section_titles_advanced' // Section
1648
- );
1649
-
1650
- add_settings_field(
1651
- 'seopress_titles_nositelinkssearchbox', // ID
1652
- __("nositelinkssearchbox","wp-seopress"), // Title
1653
- array( $this, 'seopress_titles_nositelinkssearchbox_callback' ), // Callback
1654
- 'seopress-settings-admin-titles-advanced', // Page
1655
- 'seopress_setting_section_titles_advanced' // Section
1656
- );
1657
-
1658
- add_settings_field(
1659
- 'seopress_titles_paged_rel', // ID
1660
- __("Indicate paginated content to Google","wp-seopress"), // Title
1661
- array( $this, 'seopress_titles_paged_rel_callback' ), // Callback
1662
- 'seopress-settings-admin-titles-advanced', // Page
1663
- 'seopress_setting_section_titles_advanced' // Section
1664
- );
1665
-
1666
- add_settings_field(
1667
- 'seopress_titles_paged_noindex', // ID
1668
- __("noindex on paged archives","wp-seopress"), // Title
1669
- array( $this, 'seopress_titles_paged_noindex_callback' ), // Callback
1670
- 'seopress-settings-admin-titles-advanced', // Page
1671
- 'seopress_setting_section_titles_advanced' // Section
1672
- );
1673
-
1674
- //XML Sitemap SECTION======================================================================
1675
- add_settings_section(
1676
- 'seopress_setting_section_xml_sitemap_general', // ID
1677
- '',
1678
- //__("General","wp-seopress"), // Title
1679
- array( $this, 'print_section_info_xml_sitemap_general' ), // Callback
1680
- 'seopress-settings-admin-xml-sitemap-general' // Page
1681
- );
1682
-
1683
- add_settings_field(
1684
- 'seopress_xml_sitemap_general_enable', // ID
1685
- __("Enable XML Sitemap","wp-seopress"), // Title
1686
- array( $this, 'seopress_xml_sitemap_general_enable_callback' ), // Callback
1687
- 'seopress-settings-admin-xml-sitemap-general', // Page
1688
- 'seopress_setting_section_xml_sitemap_general' // Section
1689
- );
1690
-
1691
- add_settings_field(
1692
- 'seopress_xml_sitemap_img_enable', // ID
1693
- __("Enable XML Image Sitemaps","wp-seopress"), // Title
1694
- array( $this, 'seopress_xml_sitemap_img_enable_callback' ), // Callback
1695
- 'seopress-settings-admin-xml-sitemap-general', // Page
1696
- 'seopress_setting_section_xml_sitemap_general' // Section
1697
- );
1698
-
1699
- if (is_plugin_active('wp-seopress-pro/seopress-pro.php')) {
1700
- add_settings_field(
1701
- 'seopress_xml_sitemap_video_enable_callback', // ID
1702
- __("Enable XML Video Sitemaps","wp-seopress"), // Title
1703
- array( $this, 'seopress_xml_sitemap_video_enable_callback' ), // Callback
1704
- 'seopress-settings-admin-xml-sitemap-general', // Page
1705
- 'seopress_setting_section_xml_sitemap_general' // Section
1706
- );
1707
- }
1708
-
1709
- add_settings_field(
1710
- 'seopress_xml_sitemap_author_enable', // ID
1711
- __("Enable Author Sitemap","wp-seopress"), // Title
1712
- array( $this, 'seopress_xml_sitemap_author_enable_callback' ), // Callback
1713
- 'seopress-settings-admin-xml-sitemap-general', // Page
1714
- 'seopress_setting_section_xml_sitemap_general' // Section
1715
- );
1716
-
1717
- add_settings_field(
1718
- 'seopress_xml_sitemap_html_enable', // ID
1719
- __("Enable HTML Sitemap","wp-seopress"), // Title
1720
- array( $this, 'seopress_xml_sitemap_html_enable_callback' ), // Callback
1721
- 'seopress-settings-admin-xml-sitemap-general', // Page
1722
- 'seopress_setting_section_xml_sitemap_general' // Section
1723
- );
1724
-
1725
- add_settings_section(
1726
- 'seopress_setting_section_xml_sitemap_post_types', // ID
1727
- '',
1728
- //__("Post Types","wp-seopress"), // Title
1729
- array( $this, 'print_section_info_xml_sitemap_post_types' ), // Callback
1730
- 'seopress-settings-admin-xml-sitemap-post-types' // Page
1731
- );
1732
-
1733
- add_settings_field(
1734
- 'seopress_xml_sitemap_post_types_list', // ID
1735
- __("Check to INCLUDE Post Types","wp-seopress"), // Title
1736
- array( $this, 'seopress_xml_sitemap_post_types_list_callback' ), // Callback
1737
- 'seopress-settings-admin-xml-sitemap-post-types', // Page
1738
- 'seopress_setting_section_xml_sitemap_post_types' // Section
1739
- );
1740
-
1741
- add_settings_section(
1742
- 'seopress_setting_section_xml_sitemap_taxonomies', // ID
1743
- '',
1744
- //__("Taxonomies","wp-seopress"), // Title
1745
- array( $this, 'print_section_info_xml_sitemap_taxonomies' ), // Callback
1746
- 'seopress-settings-admin-xml-sitemap-taxonomies' // Page
1747
- );
1748
-
1749
- add_settings_field(
1750
- 'seopress_xml_sitemap_taxonomies_list', // ID
1751
- __("Check to INCLUDE Taxonomies","wp-seopress"), // Title
1752
- array( $this, 'seopress_xml_sitemap_taxonomies_list_callback' ), // Callback
1753
- 'seopress-settings-admin-xml-sitemap-taxonomies', // Page
1754
- 'seopress_setting_section_xml_sitemap_taxonomies' // Section
1755
- );
1756
-
1757
- add_settings_section(
1758
- 'seopress_setting_section_html_sitemap', // ID
1759
- '',
1760
- //__("HTML Sitemap","wp-seopress"), // Title
1761
- array( $this, 'print_section_info_html_sitemap' ), // Callback
1762
- 'seopress-settings-admin-html-sitemap' // Page
1763
- );
1764
-
1765
- add_settings_field(
1766
- 'seopress_xml_sitemap_html_mapping', // ID
1767
- __("Enter a post, page or custom post type ID(s) to display the sitemap","wp-seopress"), // Title
1768
- array( $this, 'seopress_xml_sitemap_html_mapping_callback' ), // Callback
1769
- 'seopress-settings-admin-html-sitemap', // Page
1770
- 'seopress_setting_section_html_sitemap' // Section
1771
- );
1772
-
1773
- add_settings_field(
1774
- 'seopress_xml_sitemap_html_exclude', // ID
1775
- __("Exclude some Posts, Pages, Custom Post Types or Terms IDs","wp-seopress"), // Title
1776
- array( $this, 'seopress_xml_sitemap_html_exclude_callback' ), // Callback
1777
- 'seopress-settings-admin-html-sitemap', // Page
1778
- 'seopress_setting_section_html_sitemap' // Section
1779
- );
1780
-
1781
- add_settings_field(
1782
- 'seopress_xml_sitemap_html_order', // ID
1783
- __("Sort order","wp-seopress"), // Title
1784
- array( $this, 'seopress_xml_sitemap_html_order_callback' ), // Callback
1785
- 'seopress-settings-admin-html-sitemap', // Page
1786
- 'seopress_setting_section_html_sitemap' // Section
1787
- );
1788
-
1789
- add_settings_field(
1790
- 'seopress_xml_sitemap_html_orderby', // ID
1791
- __("Order posts by","wp-seopress"), // Title
1792
- array( $this, 'seopress_xml_sitemap_html_orderby_callback' ), // Callback
1793
- 'seopress-settings-admin-html-sitemap', // Page
1794
- 'seopress_setting_section_html_sitemap' // Section
1795
- );
1796
-
1797
- add_settings_field(
1798
- 'seopress_xml_sitemap_html_date', // ID
1799
- __("Disable the display of the publication date","wp-seopress"), // Title
1800
- array( $this, 'seopress_xml_sitemap_html_date_callback' ), // Callback
1801
- 'seopress-settings-admin-html-sitemap', // Page
1802
- 'seopress_setting_section_html_sitemap' // Section
1803
- );
1804
-
1805
- //Knowledge graph SECTION======================================================================
1806
- add_settings_section(
1807
- 'seopress_setting_section_social_knowledge', // ID
1808
- '',
1809
- //__("Knowledge graph","wp-seopress"), // Title
1810
- array( $this, 'print_section_info_social_knowledge' ), // Callback
1811
- 'seopress-settings-admin-social-knowledge' // Page
1812
- );
1813
-
1814
- add_settings_field(
1815
- 'seopress_social_knowledge_type', // ID
1816
- __("Person or organization","wp-seopress"), // Title
1817
- array( $this, 'seopress_social_knowledge_type_callback' ), // Callback
1818
- 'seopress-settings-admin-social-knowledge', // Page
1819
- 'seopress_setting_section_social_knowledge' // Section
1820
- );
1821
-
1822
- add_settings_field(
1823
- 'seopress_social_knowledge_name', // ID
1824
- __("Your name/organization","wp-seopress"), // Title
1825
- array( $this, 'seopress_social_knowledge_name_callback' ), // Callback
1826
- 'seopress-settings-admin-social-knowledge', // Page
1827
- 'seopress_setting_section_social_knowledge' // Section
1828
- );
1829
-
1830
- add_settings_field(
1831
- 'seopress_social_knowledge_img', // ID
1832
- __("Your photo/organization logo","wp-seopress"), // Title
1833
- array( $this, 'seopress_social_knowledge_img_callback' ), // Callback
1834
- 'seopress-settings-admin-social-knowledge', // Page
1835
- 'seopress_setting_section_social_knowledge' // Section
1836
- );
1837
-
1838
- add_settings_field(
1839
- 'seopress_social_knowledge_phone', // ID
1840
- __("Organization's phone number (only for Organizations)","wp-seopress"), // Title
1841
- array( $this, 'seopress_social_knowledge_phone_callback' ), // Callback
1842
- 'seopress-settings-admin-social-knowledge', // Page
1843
- 'seopress_setting_section_social_knowledge' // Section
1844
- );
1845
-
1846
- add_settings_field(
1847
- 'seopress_social_knowledge_contact_type', // ID
1848
- __("Contact type (only for Organizations)","wp-seopress"), // Title
1849
- array( $this, 'seopress_social_knowledge_contact_type_callback' ), // Callback
1850
- 'seopress-settings-admin-social-knowledge', // Page
1851
- 'seopress_setting_section_social_knowledge' // Section
1852
- );
1853
-
1854
- add_settings_field(
1855
- 'seopress_social_knowledge_contact_option', // ID
1856
- __("Contact option (only for Organizations)","wp-seopress"), // Title
1857
- array( $this, 'seopress_social_knowledge_contact_option_callback' ), // Callback
1858
- 'seopress-settings-admin-social-knowledge', // Page
1859
- 'seopress_setting_section_social_knowledge' // Section
1860
- );
1861
-
1862
- //Social SECTION=====================================================================================
1863
- add_settings_section(
1864
- 'seopress_setting_section_social_accounts', // ID
1865
- '',
1866
- //__("Social","wp-seopress"), // Title
1867
- array( $this, 'print_section_info_social_accounts' ), // Callback
1868
- 'seopress-settings-admin-social-accounts' // Page
1869
- );
1870
-
1871
- add_settings_field(
1872
- 'seopress_social_accounts_facebook', // ID
1873
- __("Facebook Page URL","wp-seopress"), // Title
1874
- array( $this, 'seopress_social_accounts_facebook_callback' ), // Callback
1875
- 'seopress-settings-admin-social-accounts', // Page
1876
- 'seopress_setting_section_social_accounts' // Section
1877
- );
1878
-
1879
- add_settings_field(
1880
- 'seopress_social_accounts_twitter', // ID
1881
- __("Twitter Username","wp-seopress"), // Title
1882
- array( $this, 'seopress_social_accounts_twitter_callback' ), // Callback
1883
- 'seopress-settings-admin-social-accounts', // Page
1884
- 'seopress_setting_section_social_accounts' // Section
1885
- );
1886
-
1887
- add_settings_field(
1888
- 'seopress_social_accounts_pinterest', // ID
1889
- __("Pinterest URL","wp-seopress"), // Title
1890
- array( $this, 'seopress_social_accounts_pinterest_callback' ), // Callback
1891
- 'seopress-settings-admin-social-accounts', // Page
1892
- 'seopress_setting_section_social_accounts' // Section
1893
- );
1894
-
1895
- add_settings_field(
1896
- 'seopress_social_accounts_instagram', // ID
1897
- __("Instagram URL","wp-seopress"), // Title
1898
- array( $this, 'seopress_social_accounts_instagram_callback' ), // Callback
1899
- 'seopress-settings-admin-social-accounts', // Page
1900
- 'seopress_setting_section_social_accounts' // Section
1901
- );
1902
-
1903
- add_settings_field(
1904
- 'seopress_social_accounts_youtube', // ID
1905
- __("YouTube URL","wp-seopress"), // Title
1906
- array( $this, 'seopress_social_accounts_youtube_callback' ), // Callback
1907
- 'seopress-settings-admin-social-accounts', // Page
1908
- 'seopress_setting_section_social_accounts' // Section
1909
- );
1910
-
1911
- add_settings_field(
1912
- 'seopress_social_accounts_linkedin', // ID
1913
- __("LinkedIn URL","wp-seopress"), // Title
1914
- array( $this, 'seopress_social_accounts_linkedin_callback' ), // Callback
1915
- 'seopress-settings-admin-social-accounts', // Page
1916
- 'seopress_setting_section_social_accounts' // Section
1917
- );
1918
-
1919
- add_settings_field(
1920
- 'seopress_social_accounts_myspace', // ID
1921
- __("MySpace URL","wp-seopress"), // Title
1922
- array( $this, 'seopress_social_accounts_myspace_callback' ), // Callback
1923
- 'seopress-settings-admin-social-accounts', // Page
1924
- 'seopress_setting_section_social_accounts' // Section
1925
- );
1926
-
1927
- add_settings_field(
1928
- 'seopress_social_accounts_soundcloud', // ID
1929
- __("Soundcloud URL","wp-seopress"), // Title
1930
- array( $this, 'seopress_social_accounts_soundcloud_callback' ), // Callback
1931
- 'seopress-settings-admin-social-accounts', // Page
1932
- 'seopress_setting_section_social_accounts' // Section
1933
- );
1934
-
1935
- add_settings_field(
1936
- 'seopress_social_accounts_tumblr', // ID
1937
- __("Tumblr URL","wp-seopress"), // Title
1938
- array( $this, 'seopress_social_accounts_tumblr_callback' ), // Callback
1939
- 'seopress-settings-admin-social-accounts', // Page
1940
- 'seopress_setting_section_social_accounts' // Section
1941
- );
1942
-
1943
- //Facebook SECTION=========================================================================
1944
- add_settings_section(
1945
- 'seopress_setting_section_social_facebook', // ID
1946
- '',
1947
- //__("Facebook","wp-seopress"), // Title
1948
- array( $this, 'print_section_info_social_facebook' ), // Callback
1949
- 'seopress-settings-admin-social-facebook' // Page
1950
- );
1951
-
1952
- add_settings_field(
1953
- 'seopress_social_facebook_og', // ID
1954
- __("Enable Open Graph Data","wp-seopress"), // Title
1955
- array( $this, 'seopress_social_facebook_og_callback' ), // Callback
1956
- 'seopress-settings-admin-social-facebook', // Page
1957
- 'seopress_setting_section_social_facebook' // Section
1958
- );
1959
-
1960
- add_settings_field(
1961
- 'seopress_social_facebook_img', // ID
1962
- __("Select a default image","wp-seopress"), // Title
1963
- array( $this, 'seopress_social_facebook_img_callback' ), // Callback
1964
- 'seopress-settings-admin-social-facebook', // Page
1965
- 'seopress_setting_section_social_facebook' // Section
1966
- );
1967
-
1968
- add_settings_field(
1969
- 'seopress_social_facebook_img_default', // ID
1970
- __("Apply this image to all your og:image tag","wp-seopress"), // Title
1971
- array( $this, 'seopress_social_facebook_img_default_callback' ), // Callback
1972
- 'seopress-settings-admin-social-facebook', // Page
1973
- 'seopress_setting_section_social_facebook' // Section
1974
- );
1975
-
1976
- add_settings_field(
1977
- 'seopress_social_facebook_img_cpt', // ID
1978
- __("Define custom og:image tag for post type archive pages","wp-seopress"), // Title
1979
- array( $this, 'seopress_social_facebook_img_cpt_callback' ), // Callback
1980
- 'seopress-settings-admin-social-facebook', // Page
1981
- 'seopress_setting_section_social_facebook' // Section
1982
- );
1983
-
1984
- add_settings_field(
1985
- 'seopress_social_facebook_link_ownership_id', // ID
1986
- __("Facebook Link Ownership ID","wp-seopress"), // Title
1987
- array( $this, 'seopress_social_facebook_link_ownership_id_callback' ), // Callback
1988
- 'seopress-settings-admin-social-facebook', // Page
1989
- 'seopress_setting_section_social_facebook' // Section
1990
- );
1991
-
1992
- add_settings_field(
1993
- 'seopress_social_facebook_admin_id', // ID
1994
- __("Facebook Admin ID","wp-seopress"), // Title
1995
- array( $this, 'seopress_social_facebook_admin_id_callback' ), // Callback
1996
- 'seopress-settings-admin-social-facebook', // Page
1997
- 'seopress_setting_section_social_facebook' // Section
1998
- );
1999
-
2000
- add_settings_field(
2001
- 'seopress_social_facebook_app_id', // ID
2002
- __("Facebook App ID","wp-seopress"), // Title
2003
- array( $this, 'seopress_social_facebook_app_id_callback' ), // Callback
2004
- 'seopress-settings-admin-social-facebook', // Page
2005
- 'seopress_setting_section_social_facebook' // Section
2006
- );
2007
-
2008
- //Twitter SECTION==========================================================================
2009
- add_settings_section(
2010
- 'seopress_setting_section_social_twitter', // ID
2011
- '',
2012
- //__("Twitter","wp-seopress"), // Title
2013
- array( $this, 'print_section_info_social_twitter' ), // Callback
2014
- 'seopress-settings-admin-social-twitter' // Page
2015
- );
2016
-
2017
- add_settings_field(
2018
- 'seopress_social_twitter_card', // ID
2019
- __("Enable Twitter Card","wp-seopress"), // Title
2020
- array( $this, 'seopress_social_twitter_card_callback' ), // Callback
2021
- 'seopress-settings-admin-social-twitter', // Page
2022
- 'seopress_setting_section_social_twitter' // Section
2023
- );
2024
-
2025
- add_settings_field(
2026
- 'seopress_social_twitter_card_og', // ID
2027
- __("Use Open Graph if no Twitter Card is filled","wp-seopress"), // Title
2028
- array( $this, 'seopress_social_twitter_card_og_callback' ), // Callback
2029
- 'seopress-settings-admin-social-twitter', // Page
2030
- 'seopress_setting_section_social_twitter' // Section
2031
- );
2032
-
2033
- add_settings_field(
2034
- 'seopress_social_twitter_card_img', // ID
2035
- __("Default Twitter Image","wp-seopress"), // Title
2036
- array( $this, 'seopress_social_twitter_card_img_callback' ), // Callback
2037
- 'seopress-settings-admin-social-twitter', // Page
2038
- 'seopress_setting_section_social_twitter' // Section
2039
- );
2040
-
2041
- add_settings_field(
2042
- 'seopress_social_twitter_card_img_size', // ID
2043
- __("Image size for Twitter Summary card","wp-seopress"), // Title
2044
- array( $this, 'seopress_social_twitter_card_img_size_callback' ), // Callback
2045
- 'seopress-settings-admin-social-twitter', // Page
2046
- 'seopress_setting_section_social_twitter' // Section
2047
- );
2048
-
2049
- //Google Analytics Enable SECTION==========================================================
2050
- add_settings_section(
2051
- 'seopress_setting_section_google_analytics_enable', // ID
2052
- '',
2053
- //__("Google Analytics","wp-seopress"), // Title
2054
- array( $this, 'print_section_info_google_analytics_enable' ), // Callback
2055
- 'seopress-settings-admin-google-analytics-enable' // Page
2056
- );
2057
-
2058
- add_settings_field(
2059
- 'seopress_google_analytics_enable', // ID
2060
- __("Enable Google Analytics tracking","wp-seopress"), // Title
2061
- array( $this, 'seopress_google_analytics_enable_callback' ), // Callback
2062
- 'seopress-settings-admin-google-analytics-enable', // Page
2063
- 'seopress_setting_section_google_analytics_enable' // Section
2064
- );
2065
-
2066
- add_settings_field(
2067
- 'seopress_google_analytics_ua', // ID
2068
- __("Enter your tracking ID","wp-seopress"), // Title
2069
- array( $this, 'seopress_google_analytics_ua_callback' ), // Callback
2070
- 'seopress-settings-admin-google-analytics-enable', // Page
2071
- 'seopress_setting_section_google_analytics_enable' // Section
2072
- );
2073
-
2074
- add_settings_field(
2075
- 'seopress_google_analytics_ga4', // ID
2076
- __("Enter your measurement ID (GA4)","wp-seopress"), // Title
2077
- array( $this, 'seopress_google_analytics_ga4_callback' ), // Callback
2078
- 'seopress-settings-admin-google-analytics-enable', // Page
2079
- 'seopress_setting_section_google_analytics_enable' // Section
2080
- );
2081
-
2082
- add_settings_field(
2083
- 'seopress_google_analytics_roles', // ID
2084
- __("Exclude user roles from tracking (Google Analytics and Matomo)","wp-seopress"), // Title
2085
- array( $this, 'seopress_google_analytics_roles_callback' ), // Callback
2086
- 'seopress-settings-admin-google-analytics-enable', // Page
2087
- 'seopress_setting_section_google_analytics_enable' // Section
2088
- );
2089
-
2090
- //Cookie bar / GDPR SECTION================================================================
2091
- add_settings_section(
2092
- 'seopress_setting_section_google_analytics_gdpr', // ID
2093
- '',
2094
- //__("Google Analytics","wp-seopress"), // Title
2095
- array( $this, 'print_section_info_google_analytics_gdpr' ), // Callback
2096
- 'seopress-settings-admin-google-analytics-gdpr' // Page
2097
- );
2098
-
2099
- add_settings_field(
2100
- 'seopress_google_analytics_disable', // ID
2101
- __("Analytics tracking opt-in","wp-seopress"), // Title
2102
- array( $this, 'seopress_google_analytics_disable_callback' ), // Callback
2103
- 'seopress-settings-admin-google-analytics-gdpr', // Page
2104
- 'seopress_setting_section_google_analytics_gdpr' // Section
2105
- );
2106
-
2107
- add_settings_field(
2108
- 'seopress_google_analytics_half_disable', // ID
2109
- '', // Title
2110
- array( $this, 'seopress_google_analytics_half_disable_callback' ), // Callback
2111
- 'seopress-settings-admin-google-analytics-gdpr', // Page
2112
- 'seopress_setting_section_google_analytics_gdpr' // Section
2113
- );
2114
-
2115
- add_settings_field(
2116
- 'seopress_google_analytics_opt_out_msg', // ID
2117
- __("Consent message for user tracking","wp-seopress"), // Title
2118
- array( $this, 'seopress_google_analytics_opt_out_msg_callback' ), // Callback
2119
- 'seopress-settings-admin-google-analytics-gdpr', // Page
2120
- 'seopress_setting_section_google_analytics_gdpr' // Section
2121
- );
2122
-
2123
- add_settings_field(
2124
- 'seopress_google_analytics_opt_out_msg_ok', // ID
2125
- __("Accept button for user tracking","wp-seopress"), // Title
2126
- array( $this, 'seopress_google_analytics_opt_out_msg_ok_callback' ), // Callback
2127
- 'seopress-settings-admin-google-analytics-gdpr', // Page
2128
- 'seopress_setting_section_google_analytics_gdpr' // Section
2129
- );
2130
-
2131
- add_settings_field(
2132
- 'seopress_google_analytics_opt_out_msg_close', // ID
2133
- __("Close button","wp-seopress"), // Title
2134
- array( $this, 'seopress_google_analytics_opt_out_msg_close_callback' ), // Callback
2135
- 'seopress-settings-admin-google-analytics-gdpr', // Page
2136
- 'seopress_setting_section_google_analytics_gdpr' // Section
2137
- );
2138
-
2139
- add_settings_field(
2140
- 'seopress_google_analytics_cb_exp_date', // ID
2141
- __("User consent cookie expiration date","wp-seopress"), // Title
2142
- array( $this, 'seopress_google_analytics_cb_exp_date_callback' ), // Callback
2143
- 'seopress-settings-admin-google-analytics-gdpr', // Page
2144
- 'seopress_setting_section_google_analytics_gdpr' // Section
2145
- );
2146
-
2147
- add_settings_field(
2148
- 'seopress_google_analytics_cb_pos', // ID
2149
- __("Cookie bar position","wp-seopress"), // Title
2150
- array( $this, 'seopress_google_analytics_cb_pos_callback' ), // Callback
2151
- 'seopress-settings-admin-google-analytics-gdpr', // Page
2152
- 'seopress_setting_section_google_analytics_gdpr' // Section
2153
- );
2154
-
2155
- add_settings_field(
2156
- 'seopress_google_analytics_cb_txt_align', // ID
2157
- __("Text alignment","wp-seopress"), // Title
2158
- array( $this, 'seopress_google_analytics_cb_txt_align_callback' ), // Callback
2159
- 'seopress-settings-admin-google-analytics-gdpr', // Page
2160
- 'seopress_setting_section_google_analytics_gdpr' // Section
2161
- );
2162
-
2163
- add_settings_field(
2164
- 'seopress_google_analytics_cb_width', // ID
2165
- __("Cookie bar width","wp-seopress"), // Title
2166
- array( $this, 'seopress_google_analytics_cb_width_callback' ), // Callback
2167
- 'seopress-settings-admin-google-analytics-gdpr', // Page
2168
- 'seopress_setting_section_google_analytics_gdpr' // Section
2169
- );
2170
-
2171
- add_settings_field(
2172
- 'seopress_google_analytics_cb_backdrop', // ID
2173
- __("Enable backdrop","wp-seopress"), // Title
2174
- array( $this, 'seopress_google_analytics_cb_backdrop_callback' ), // Callback
2175
- 'seopress-settings-admin-google-analytics-gdpr', // Page
2176
- 'seopress_setting_section_google_analytics_gdpr' // Section
2177
- );
2178
-
2179
- add_settings_field(
2180
- 'seopress_google_analytics_cb_backdrop_bg', // ID
2181
- __("Backdrop background color","wp-seopress"), // Title
2182
- array( $this, 'seopress_google_analytics_cb_backdrop_bg_callback' ), // Callback
2183
- 'seopress-settings-admin-google-analytics-gdpr', // Page
2184
- 'seopress_setting_section_google_analytics_gdpr' // Section
2185
- );
2186
-
2187
- add_settings_field(
2188
- 'seopress_google_analytics_cb_bg', // ID
2189
- __("Cookie bar background color","wp-seopress"), // Title
2190
- array( $this, 'seopress_google_analytics_cb_bg_callback' ), // Callback
2191
- 'seopress-settings-admin-google-analytics-gdpr', // Page
2192
- 'seopress_setting_section_google_analytics_gdpr' // Section
2193
- );
2194
-
2195
- add_settings_field(
2196
- 'seopress_google_analytics_cb_txt_col', // ID
2197
- __("Cookie bar text color","wp-seopress"), // Title
2198
- array( $this, 'seopress_google_analytics_cb_txt_col_callback' ), // Callback
2199
- 'seopress-settings-admin-google-analytics-gdpr', // Page
2200
- 'seopress_setting_section_google_analytics_gdpr' // Section
2201
- );
2202
-
2203
- add_settings_field(
2204
- 'seopress_google_analytics_cb_lk_col', // ID
2205
- __("Cookie bar link color","wp-seopress"), // Title
2206
- array( $this, 'seopress_google_analytics_cb_lk_col_callback' ), // Callback
2207
- 'seopress-settings-admin-google-analytics-gdpr', // Page
2208
- 'seopress_setting_section_google_analytics_gdpr' // Section
2209
- );
2210
-
2211
- add_settings_field(
2212
- 'seopress_google_analytics_cb_btn_bg', // ID
2213
- __("Cookie bar button background color","wp-seopress"), // Title
2214
- array( $this, 'seopress_google_analytics_cb_btn_bg_callback' ), // Callback
2215
- 'seopress-settings-admin-google-analytics-gdpr', // Page
2216
- 'seopress_setting_section_google_analytics_gdpr' // Section
2217
- );
2218
-
2219
- add_settings_field(
2220
- 'seopress_google_analytics_cb_btn_col', // ID
2221
- __("Cookie bar button color","wp-seopress"), // Title
2222
- array( $this, 'seopress_google_analytics_cb_btn_col_callback' ), // Callback
2223
- 'seopress-settings-admin-google-analytics-gdpr', // Page
2224
- 'seopress_setting_section_google_analytics_gdpr' // Section
2225
- );
2226
-
2227
- add_settings_field(
2228
- 'seopress_google_analytics_cb_btn_bg_hov', // ID
2229
- __("Cookie bar button hover background color","wp-seopress"), // Title
2230
- array( $this, 'seopress_google_analytics_cb_btn_bg_hov_callback' ), // Callback
2231
- 'seopress-settings-admin-google-analytics-gdpr', // Page
2232
- 'seopress_setting_section_google_analytics_gdpr' // Section
2233
- );
2234
-
2235
- add_settings_field(
2236
- 'seopress_google_analytics_cb_btn_col_hov', // ID
2237
- __("Cookie bar button hover color","wp-seopress"), // Title
2238
- array( $this, 'seopress_google_analytics_cb_btn_col_hov_callback' ), // Callback
2239
- 'seopress-settings-admin-google-analytics-gdpr', // Page
2240
- 'seopress_setting_section_google_analytics_gdpr' // Section
2241
- );
2242
-
2243
- add_settings_field(
2244
- 'seopress_google_analytics_cb_btn_sec_bg', // ID
2245
- __("Cookie bar secondary button background color","wp-seopress"), // Title
2246
- array( $this, 'seopress_google_analytics_cb_btn_sec_bg_callback' ), // Callback
2247
- 'seopress-settings-admin-google-analytics-gdpr', // Page
2248
- 'seopress_setting_section_google_analytics_gdpr' // Section
2249
- );
2250
-
2251
- add_settings_field(
2252
- 'seopress_google_analytics_cb_btn_sec_col', // ID
2253
- __("Cookie bar secondary button color","wp-seopress"), // Title
2254
- array( $this, 'seopress_google_analytics_cb_btn_sec_col_callback' ), // Callback
2255
- 'seopress-settings-admin-google-analytics-gdpr', // Page
2256
- 'seopress_setting_section_google_analytics_gdpr' // Section
2257
- );
2258
-
2259
- add_settings_field(
2260
- 'seopress_google_analytics_cb_btn_sec_bg_hov', // ID
2261
- __("Cookie bar secondary button hover background color","wp-seopress"), // Title
2262
- array( $this, 'seopress_google_analytics_cb_btn_sec_bg_hov_callback' ), // Callback
2263
- 'seopress-settings-admin-google-analytics-gdpr', // Page
2264
- 'seopress_setting_section_google_analytics_gdpr' // Section
2265
- );
2266
-
2267
- add_settings_field(
2268
- 'seopress_google_analytics_cb_btn_sec_col_hov', // ID
2269
- __("Cookie bar secondary button hover color","wp-seopress"), // Title
2270
- array( $this, 'seopress_google_analytics_cb_btn_sec_col_hov_callback' ), // Callback
2271
- 'seopress-settings-admin-google-analytics-gdpr', // Page
2272
- 'seopress_setting_section_google_analytics_gdpr' // Section
2273
- );
2274
-
2275
- //Google Analytics Tracking SECTION========================================================
2276
-
2277
- add_settings_section(
2278
- 'seopress_setting_section_google_analytics_features', // ID
2279
- '',
2280
- //__("Google Analytics","wp-seopress"), // Title
2281
- array( $this, 'print_section_info_google_analytics_features' ), // Callback
2282
- 'seopress-settings-admin-google-analytics-features' // Page
2283
- );
2284
-
2285
- add_settings_field(
2286
- 'seopress_google_analytics_optimize', // ID
2287
- __("Enable Google Optimize","wp-seopress"), // Title
2288
- array( $this, 'seopress_google_analytics_optimize_callback' ), // Callback
2289
- 'seopress-settings-admin-google-analytics-features', // Page
2290
- 'seopress_setting_section_google_analytics_features' // Section
2291
- );
2292
-
2293
- add_settings_field(
2294
- 'seopress_google_analytics_ads', // ID
2295
- __("Enable Google Ads","wp-seopress"), // Title
2296
- array( $this, 'seopress_google_analytics_ads_callback' ), // Callback
2297
- 'seopress-settings-admin-google-analytics-features', // Page
2298
- 'seopress_setting_section_google_analytics_features' // Section
2299
- );
2300
-
2301
- add_settings_field(
2302
- 'seopress_google_analytics_other_tracking', // ID
2303
- __("Add an additional tracking code (like Facebook Pixel, Hotjar...)","wp-seopress"), // Title
2304
- array( $this, 'seopress_google_analytics_other_tracking_callback' ), // Callback
2305
- 'seopress-settings-admin-google-analytics-features', // Page
2306
- 'seopress_setting_section_google_analytics_features' // Section
2307
- );
2308
-
2309
- add_settings_field(
2310
- 'seopress_google_analytics_other_tracking_body', // ID
2311
- __("[BODY] Add an additional tracking code (like Google Tag Manager...)","wp-seopress"), // Title
2312
- array( $this, 'seopress_google_analytics_other_tracking_body_callback' ), // Callback
2313
- 'seopress-settings-admin-google-analytics-features', // Page
2314
- 'seopress_setting_section_google_analytics_features' // Section
2315
- );
2316
-
2317
- add_settings_field(
2318
- 'seopress_google_analytics_other_tracking_footer', // ID
2319
- __("[BODY (FOOTER)] Add an additional tracking code (like Google Tag Manager...)","wp-seopress"), // Title
2320
- array( $this, 'seopress_google_analytics_other_tracking_footer_callback' ), // Callback
2321
- 'seopress-settings-admin-google-analytics-features', // Page
2322
- 'seopress_setting_section_google_analytics_features' // Section
2323
- );
2324
-
2325
- add_settings_field(
2326
- 'seopress_google_analytics_remarketing', // ID
2327
- __("Enable remarketing, demographics, and interests reporting","wp-seopress"), // Title
2328
- array( $this, 'seopress_google_analytics_remarketing_callback' ), // Callback
2329
- 'seopress-settings-admin-google-analytics-features', // Page
2330
- 'seopress_setting_section_google_analytics_features' // Section
2331
- );
2332
-
2333
- add_settings_field(
2334
- 'seopress_google_analytics_ip_anonymization', // ID
2335
- __("Enable IP Anonymization","wp-seopress"), // Title
2336
- array( $this, 'seopress_google_analytics_ip_anonymization_callback' ), // Callback
2337
- 'seopress-settings-admin-google-analytics-features', // Page
2338
- 'seopress_setting_section_google_analytics_features' // Section
2339
- );
2340
-
2341
- add_settings_field(
2342
- 'seopress_google_analytics_link_attribution', // ID
2343
- __("Enhanced Link Attribution","wp-seopress"), // Title
2344
- array( $this, 'seopress_google_analytics_link_attribution_callback' ), // Callback
2345
- 'seopress-settings-admin-google-analytics-features', // Page
2346
- 'seopress_setting_section_google_analytics_features' // Section
2347
- );
2348
-
2349
- add_settings_field(
2350
- 'seopress_google_analytics_cross_domain_enable', // ID
2351
- __("Enable cross-domain tracking","wp-seopress"), // Title
2352
- array( $this, 'seopress_google_analytics_cross_enable_callback' ), // Callback
2353
- 'seopress-settings-admin-google-analytics-features', // Page
2354
- 'seopress_setting_section_google_analytics_features' // Section
2355
- );
2356
-
2357
- add_settings_field(
2358
- 'seopress_google_analytics_cross_domain', // ID
2359
- __("Cross domains","wp-seopress"), // Title
2360
- array( $this, 'seopress_google_analytics_cross_domain_callback' ), // Callback
2361
- 'seopress-settings-admin-google-analytics-features', // Page
2362
- 'seopress_setting_section_google_analytics_features' // Section
2363
- );
2364
-
2365
- //Google Analytics Events SECTION==========================================================
2366
-
2367
- add_settings_section(
2368
- 'seopress_setting_section_google_analytics_events', // ID
2369
- '',
2370
- //__("Google Analytics","wp-seopress"), // Title
2371
- array( $this, 'print_section_info_google_analytics_events' ), // Callback
2372
- 'seopress-settings-admin-google-analytics-events' // Page
2373
- );
2374
-
2375
- add_settings_field(
2376
- 'seopress_google_analytics_link_tracking_enable', // ID
2377
- __("Enable external links tracking","wp-seopress"), // Title
2378
- array( $this, 'seopress_google_analytics_link_tracking_enable_callback' ), // Callback
2379
- 'seopress-settings-admin-google-analytics-events', // Page
2380
- 'seopress_setting_section_google_analytics_events' // Section
2381
- );
2382
-
2383
- add_settings_field(
2384
- 'seopress_google_analytics_download_tracking_enable', // ID
2385
- __("Enable downloads tracking (eg: PDF, XLSX, DOCX...)","wp-seopress"), // Title
2386
- array( $this, 'seopress_google_analytics_download_tracking_enable_callback' ), // Callback
2387
- 'seopress-settings-admin-google-analytics-events', // Page
2388
- 'seopress_setting_section_google_analytics_events' // Section
2389
- );
2390
-
2391
- add_settings_field(
2392
- 'seopress_google_analytics_download_tracking', // ID
2393
- __("Track downloads' clicks","wp-seopress"), // Title
2394
- array( $this, 'seopress_google_analytics_download_tracking_callback' ), // Callback
2395
- 'seopress-settings-admin-google-analytics-events', // Page
2396
- 'seopress_setting_section_google_analytics_events' // Section
2397
- );
2398
-
2399
- add_settings_field(
2400
- 'seopress_google_analytics_affiliate_tracking_enable', // ID
2401
- __("Enable affiliate/outbound links tracking (eg: aff, go, out, recommends)","wp-seopress"), // Title
2402
- array( $this, 'seopress_google_analytics_affiliate_tracking_enable_callback' ), // Callback
2403
- 'seopress-settings-admin-google-analytics-events', // Page
2404
- 'seopress_setting_section_google_analytics_events' // Section
2405
- );
2406
-
2407
- add_settings_field(
2408
- 'seopress_google_analytics_affiliate_tracking', // ID
2409
- __("Track affiliate/outbound links","wp-seopress"), // Title
2410
- array( $this, 'seopress_google_analytics_affiliate_tracking_callback' ), // Callback
2411
- 'seopress-settings-admin-google-analytics-events', // Page
2412
- 'seopress_setting_section_google_analytics_events' // Section
2413
- );
2414
-
2415
- //Google Analytics Custom Dimensions SECTION===============================================
2416
-
2417
- add_settings_section(
2418
- 'seopress_setting_section_google_analytics_custom_dimensions', // ID
2419
- '',
2420
- //__("Google Analytics","wp-seopress"), // Title
2421
- array( $this, 'print_section_info_google_analytics_custom_dimensions' ), // Callback
2422
- 'seopress-settings-admin-google-analytics-custom-dimensions' // Page
2423
- );
2424
-
2425
- add_settings_field(
2426
- 'seopress_google_analytics_cd_author', // ID
2427
- __("Track Authors","wp-seopress"), // Title
2428
- array( $this, 'seopress_google_analytics_cd_author_callback' ), // Callback
2429
- 'seopress-settings-admin-google-analytics-custom-dimensions', // Page
2430
- 'seopress_setting_section_google_analytics_custom_dimensions' // Section
2431
- );
2432
-
2433
- add_settings_field(
2434
- 'seopress_google_analytics_cd_category', // ID
2435
- __("Track Categories","wp-seopress"), // Title
2436
- array( $this, 'seopress_google_analytics_cd_category_callback' ), // Callback
2437
- 'seopress-settings-admin-google-analytics-custom-dimensions', // Page
2438
- 'seopress_setting_section_google_analytics_custom_dimensions' // Section
2439
- );
2440
-
2441
- add_settings_field(
2442
- 'seopress_google_analytics_cd_tag', // ID
2443
- __("Track Tags","wp-seopress"), // Title
2444
- array( $this, 'seopress_google_analytics_cd_tag_callback' ), // Callback
2445
- 'seopress-settings-admin-google-analytics-custom-dimensions', // Page
2446
- 'seopress_setting_section_google_analytics_custom_dimensions' // Section
2447
- );
2448
-
2449
- add_settings_field(
2450
- 'seopress_google_analytics_cd_post_type', // ID
2451
- __("Track Post Types","wp-seopress"), // Title
2452
- array( $this, 'seopress_google_analytics_cd_post_type_callback' ), // Callback
2453
- 'seopress-settings-admin-google-analytics-custom-dimensions', // Page
2454
- 'seopress_setting_section_google_analytics_custom_dimensions' // Section
2455
- );
2456
-
2457
- add_settings_field(
2458
- 'seopress_google_analytics_cd_logged_in_user', // ID
2459
- __("Track Logged In Users","wp-seopress"), // Title
2460
- array( $this, 'seopress_google_analytics_cd_logged_in_user_callback' ), // Callback
2461
- 'seopress-settings-admin-google-analytics-custom-dimensions', // Page
2462
- 'seopress_setting_section_google_analytics_custom_dimensions' // Section
2463
- );
2464
-
2465
- //Matomo SECTION===========================================================================
2466
- add_settings_section(
2467
- 'seopress_setting_section_google_analytics_matomo', // ID
2468
- '',
2469
- //__("Google Analytics","wp-seopress"), // Title
2470
- array( $this, 'print_section_info_google_analytics_matomo' ), // Callback
2471
- 'seopress-settings-admin-google-analytics-matomo' // Page
2472
- );
2473
-
2474
- add_settings_field(
2475
- 'seopress_google_analytics_matomo_enable', // ID
2476
- __("Enable Matomo tracking","wp-seopress"), // Title
2477
- array( $this, 'seopress_google_analytics_matomo_enable_callback' ), // Callback
2478
- 'seopress-settings-admin-google-analytics-matomo', // Page
2479
- 'seopress_setting_section_google_analytics_matomo' // Section
2480
- );
2481
-
2482
- add_settings_field(
2483
- 'seopress_google_analytics_matomo_id', // ID
2484
- __("Enter your tracking ID","wp-seopress"), // Title
2485
- array( $this, 'seopress_google_analytics_matomo_id_callback' ), // Callback
2486
- 'seopress-settings-admin-google-analytics-matomo', // Page
2487
- 'seopress_setting_section_google_analytics_matomo' // Section
2488
- );
2489
-
2490
- add_settings_field(
2491
- 'seopress_google_analytics_matomo_site_id', // ID
2492
- __("Enter your site ID","wp-seopress"), // Title
2493
- array( $this, 'seopress_google_analytics_matomo_site_id_callback' ), // Callback
2494
- 'seopress-settings-admin-google-analytics-matomo', // Page
2495
- 'seopress_setting_section_google_analytics_matomo' // Section
2496
- );
2497
-
2498
- add_settings_field(
2499
- 'seopress_google_analytics_matomo_subdomains', // ID
2500
- __("Track visitors across all subdomains","wp-seopress"), // Title
2501
- array( $this, 'seopress_google_analytics_matomo_subdomains_callback' ), // Callback
2502
- 'seopress-settings-admin-google-analytics-matomo', // Page
2503
- 'seopress_setting_section_google_analytics_matomo' // Section
2504
- );
2505
-
2506
- add_settings_field(
2507
- 'seopress_google_analytics_matomo_site_domain', // ID
2508
- __("Prepend the site domain","wp-seopress"), // Title
2509
- array( $this, 'seopress_google_analytics_matomo_site_domain_callback' ), // Callback
2510
- 'seopress-settings-admin-google-analytics-matomo', // Page
2511
- 'seopress_setting_section_google_analytics_matomo' // Section
2512
- );
2513
-
2514
- add_settings_field(
2515
- 'seopress_google_analytics_matomo_no_js', // ID
2516
- __("Track users with JavaScript disabled","wp-seopress"), // Title
2517
- array( $this, 'seopress_google_analytics_matomo_no_js_callback' ), // Callback
2518
- 'seopress-settings-admin-google-analytics-matomo', // Page
2519
- 'seopress_setting_section_google_analytics_matomo' // Section
2520
- );
2521
-
2522
- add_settings_field(
2523
- 'seopress_google_analytics_matomo_cross_domain', // ID
2524
- __("Enables cross domain linking","wp-seopress"), // Title
2525
- array( $this, 'seopress_google_analytics_matomo_cross_domain_callback' ), // Callback
2526
- 'seopress-settings-admin-google-analytics-matomo', // Page
2527
- 'seopress_setting_section_google_analytics_matomo' // Section
2528
- );
2529
-
2530
- add_settings_field(
2531
- 'seopress_google_analytics_matomo_cross_domain_sites', // ID
2532
- __("Cross domain","wp-seopress"), // Title
2533
- array( $this, 'seopress_google_analytics_matomo_cross_domain_sites_callback' ), // Callback
2534
- 'seopress-settings-admin-google-analytics-matomo', // Page
2535
- 'seopress_setting_section_google_analytics_matomo' // Section
2536
- );
2537
- add_settings_field(
2538
- 'seopress_google_analytics_matomo_dnt', // ID
2539
- __("Enable DoNotTrack detection","wp-seopress"), // Title
2540
- array( $this, 'seopress_google_analytics_matomo_dnt_callback' ), // Callback
2541
- 'seopress-settings-admin-google-analytics-matomo', // Page
2542
- 'seopress_setting_section_google_analytics_matomo' // Section
2543
- );
2544
-
2545
- add_settings_field(
2546
- 'seopress_google_analytics_matomo_no_cookies', // ID
2547
- __("Disable all tracking cookies","wp-seopress"), // Title
2548
- array( $this, 'seopress_google_analytics_matomo_no_cookies_callback' ), // Callback
2549
- 'seopress-settings-admin-google-analytics-matomo', // Page
2550
- 'seopress_setting_section_google_analytics_matomo' // Section
2551
- );
2552
-
2553
- add_settings_field(
2554
- 'seopress_google_analytics_matomo_link_tracking', // ID
2555
- __("Download & Outlink tracking","wp-seopress"), // Title
2556
- array( $this, 'seopress_google_analytics_matomo_link_tracking_callback' ), // Callback
2557
- 'seopress-settings-admin-google-analytics-matomo', // Page
2558
- 'seopress_setting_section_google_analytics_matomo' // Section
2559
- );
2560
-
2561
- add_settings_field(
2562
- 'seopress_google_analytics_matomo_no_heatmaps', // ID
2563
- __("Disable all heatmaps and session recordings","wp-seopress"), // Title
2564
- array( $this, 'seopress_google_analytics_matomo_no_heatmaps_callback' ), // Callback
2565
- 'seopress-settings-admin-google-analytics-matomo', // Page
2566
- 'seopress_setting_section_google_analytics_matomo' // Section
2567
- );
2568
-
2569
- //Advanced SECTION=========================================================================
2570
- add_settings_section(
2571
- 'seopress_setting_section_advanced_advanced', // ID
2572
- '',
2573
- //__("Advanced","wp-seopress"), // Title
2574
- array( $this, 'print_section_info_advanced_advanced' ), // Callback
2575
- 'seopress-settings-admin-advanced-advanced' // Page
2576
- );
2577
-
2578
- add_settings_field(
2579
- 'seopress_advanced_advanced_attachments', // ID
2580
- __("Redirect attachment pages to post parent","wp-seopress"), // Title
2581
- array( $this, 'seopress_advanced_advanced_attachments_callback' ), // Callback
2582
- 'seopress-settings-admin-advanced-advanced', // Page
2583
- 'seopress_setting_section_advanced_advanced' // Section
2584
- );
2585
-
2586
- add_settings_field(
2587
- 'seopress_advanced_advanced_attachments_file', // ID
2588
- __("Redirect attachment pages to their file URL","wp-seopress"), // Title
2589
- array( $this, 'seopress_advanced_advanced_attachments_file_callback' ), // Callback
2590
- 'seopress-settings-admin-advanced-advanced', // Page
2591
- 'seopress_setting_section_advanced_advanced' // Section
2592
- );
2593
-
2594
- add_settings_field(
2595
- 'seopress_advanced_advanced_replytocom', // ID
2596
- __("Remove ?replytocom link to avoid duplicate content","wp-seopress"), // Title
2597
- array( $this, 'seopress_advanced_advanced_replytocom_callback' ), // Callback
2598
- 'seopress-settings-admin-advanced-advanced', // Page
2599
- 'seopress_setting_section_advanced_advanced' // Section
2600
- );
2601
-
2602
- add_settings_field(
2603
- 'seopress_advanced_advanced_image_auto_title_editor', // ID
2604
- __("Automatically set the image Title","wp-seopress"), // Title
2605
- array( $this, 'seopress_advanced_advanced_image_auto_title_editor_callback' ), // Callback
2606
- 'seopress-settings-admin-advanced-advanced', // Page
2607
- 'seopress_setting_section_advanced_advanced' // Section
2608
- );
2609
-
2610
- add_settings_field(
2611
- 'seopress_advanced_advanced_image_auto_alt_editor', // ID
2612
- __("Automatically set the image Alt text","wp-seopress"), // Title
2613
- array( $this, 'seopress_advanced_advanced_image_auto_alt_editor_callback' ), // Callback
2614
- 'seopress-settings-admin-advanced-advanced', // Page
2615
- 'seopress_setting_section_advanced_advanced' // Section
2616
- );
2617
-
2618
- add_settings_field(
2619
- 'seopress_advanced_advanced_image_auto_alt_target_kw', // ID
2620
- __("Automatically set the image Alt text from target keywords","wp-seopress"), // Title
2621
- array( $this, 'seopress_advanced_advanced_image_auto_alt_target_kw_callback' ), // Callback
2622
- 'seopress-settings-admin-advanced-advanced', // Page
2623
- 'seopress_setting_section_advanced_advanced' // Section
2624
- );
2625
-
2626
- add_settings_field(
2627
- 'seopress_advanced_advanced_image_auto_caption_editor', // ID
2628
- __("Automatically set the image Caption","wp-seopress"), // Title
2629
- array( $this, 'seopress_advanced_advanced_image_auto_caption_editor_callback' ), // Callback
2630
- 'seopress-settings-admin-advanced-advanced', // Page
2631
- 'seopress_setting_section_advanced_advanced' // Section
2632
- );
2633
-
2634
- add_settings_field(
2635
- 'seopress_advanced_advanced_image_auto_desc_editor', // ID
2636
- __("Automatically set the image Description","wp-seopress"), // Title
2637
- array( $this, 'seopress_advanced_advanced_image_auto_desc_editor_callback' ), // Callback
2638
- 'seopress-settings-admin-advanced-advanced', // Page
2639
- 'seopress_setting_section_advanced_advanced' // Section
2640
- );
2641
-
2642
- add_settings_field(
2643
- 'seopress_advanced_advanced_tax_desc_editor', // ID
2644
- __("Add WP Editor to taxonomy description textarea","wp-seopress"), // Title
2645
- array( $this, 'seopress_advanced_advanced_tax_desc_editor_callback' ), // Callback
2646
- 'seopress-settings-admin-advanced-advanced', // Page
2647
- 'seopress_setting_section_advanced_advanced' // Section
2648
- );
2649
-
2650
- add_settings_field(
2651
- 'seopress_advanced_advanced_category_url', // ID
2652
- __("Remove /category/ in URL","wp-seopress"), // Title
2653
- array( $this, 'seopress_advanced_advanced_category_url_callback' ), // Callback
2654
- 'seopress-settings-admin-advanced-advanced', // Page
2655
- 'seopress_setting_section_advanced_advanced' // Section
2656
- );
2657
-
2658
- add_settings_field(
2659
- 'seopress_advanced_advanced_trailingslash', // ID
2660
- __("Disable trailing slash for metas","wp-seopress"), // Title
2661
- array( $this, 'seopress_advanced_advanced_trailingslash_callback' ), // Callback
2662
- 'seopress-settings-admin-advanced-advanced', // Page
2663
- 'seopress_setting_section_advanced_advanced' // Section
2664
- );
2665
-
2666
- add_settings_field(
2667
- 'seopress_advanced_advanced_wp_generator', // ID
2668
- __("Remove WordPress generator meta tag","wp-seopress"), // Title
2669
- array( $this, 'seopress_advanced_advanced_wp_generator_callback' ), // Callback
2670
- 'seopress-settings-admin-advanced-advanced', // Page
2671
- 'seopress_setting_section_advanced_advanced' // Section
2672
- );
2673
-
2674
- add_settings_field(
2675
- 'seopress_advanced_advanced_hentry', // ID
2676
- __("Remove hentry post class","wp-seopress"), // Title
2677
- array( $this, 'seopress_advanced_advanced_hentry_callback' ), // Callback
2678
- 'seopress-settings-admin-advanced-advanced', // Page
2679
- 'seopress_setting_section_advanced_advanced' // Section
2680
- );
2681
-
2682
- add_settings_field(
2683
- 'seopress_advanced_advanced_comments_author_url', // ID
2684
- __("Remove author URL","wp-seopress"), // Title
2685
- array( $this, 'seopress_advanced_advanced_comments_author_url_callback' ), // Callback
2686
- 'seopress-settings-admin-advanced-advanced', // Page
2687
- 'seopress_setting_section_advanced_advanced' // Section
2688
- );
2689
-
2690
- add_settings_field(
2691
- 'seopress_advanced_advanced_comments_website', // ID
2692
- __("Remove website field in comment form","wp-seopress"), // Title
2693
- array( $this, 'seopress_advanced_advanced_comments_website_callback' ), // Callback
2694
- 'seopress-settings-admin-advanced-advanced', // Page
2695
- 'seopress_setting_section_advanced_advanced' // Section
2696
- );
2697
-
2698
- add_settings_field(
2699
- 'seopress_advanced_advanced_wp_shortlink', // ID
2700
- __("Remove WordPress shortlink meta tag","wp-seopress"), // Title
2701
- array( $this, 'seopress_advanced_advanced_wp_shortlink_callback' ), // Callback
2702
- 'seopress-settings-admin-advanced-advanced', // Page
2703
- 'seopress_setting_section_advanced_advanced' // Section
2704
- );
2705
-
2706
- add_settings_field(
2707
- 'seopress_advanced_advanced_wp_wlw', // ID
2708
- __("Remove Windows Live Writer meta tag","wp-seopress"), // Title
2709
- array( $this, 'seopress_advanced_advanced_wp_wlw_callback' ), // Callback
2710
- 'seopress-settings-admin-advanced-advanced', // Page
2711
- 'seopress_setting_section_advanced_advanced' // Section
2712
- );
2713
-
2714
- add_settings_field(
2715
- 'seopress_advanced_advanced_wp_rsd', // ID
2716
- __("Remove RSD meta tag","wp-seopress"), // Title
2717
- array( $this, 'seopress_advanced_advanced_wp_rsd_callback' ), // Callback
2718
- 'seopress-settings-admin-advanced-advanced', // Page
2719
- 'seopress_setting_section_advanced_advanced' // Section
2720
- );
2721
-
2722
- add_settings_field(
2723
- 'seopress_advanced_advanced_google', // ID
2724
- __("Google site verification","wp-seopress"), // Title
2725
- array( $this, 'seopress_advanced_advanced_google_callback' ), // Callback
2726
- 'seopress-settings-admin-advanced-advanced', // Page
2727
- 'seopress_setting_section_advanced_advanced' // Section
2728
- );
2729
-
2730
- add_settings_field(
2731
- 'seopress_advanced_advanced_bing', // ID
2732
- __("Bing site verification","wp-seopress"), // Title
2733
- array( $this, 'seopress_advanced_advanced_bing_callback' ), // Callback
2734
- 'seopress-settings-admin-advanced-advanced', // Page
2735
- 'seopress_setting_section_advanced_advanced' // Section
2736
- );
2737
-
2738
- add_settings_field(
2739
- 'seopress_advanced_advanced_pinterest', // ID
2740
- __("Pinterest site verification","wp-seopress"), // Title
2741
- array( $this, 'seopress_advanced_advanced_pinterest_callback' ), // Callback
2742
- 'seopress-settings-admin-advanced-advanced', // Page
2743
- 'seopress_setting_section_advanced_advanced' // Section
2744
- );
2745
-
2746
- add_settings_field(
2747
- 'seopress_advanced_advanced_yandex', // ID
2748
- __("Yandex site verification","wp-seopress"), // Title
2749
- array( $this, 'seopress_advanced_advanced_yandex_callback' ), // Callback
2750
- 'seopress-settings-admin-advanced-advanced', // Page
2751
- 'seopress_setting_section_advanced_advanced' // Section
2752
- );
2753
-
2754
- //Appearance SECTION=======================================================================
2755
- add_settings_section(
2756
- 'seopress_setting_section_advanced_appearance', // ID
2757
- '',
2758
- //__("Appearance","wp-seopress"), // Title
2759
- array( $this, 'print_section_info_advanced_appearance' ), // Callback
2760
- 'seopress-settings-admin-advanced-appearance' // Page
2761
- );
2762
-
2763
- add_settings_field(
2764
- 'seopress_advanced_appearance_adminbar', // ID
2765
- __("SEO in admin bar","wp-seopress"), // Title
2766
- array( $this, 'seopress_advanced_appearance_adminbar_callback' ), // Callback
2767
- 'seopress-settings-admin-advanced-appearance', // Page
2768
- 'seopress_setting_section_advanced_appearance' // Section
2769
- );
2770
-
2771
- add_settings_field(
2772
- 'seopress_advanced_appearance_adminbar_noindex', // ID
2773
- __("Noindex in admin bar","wp-seopress"), // Title
2774
- array( $this, 'seopress_advanced_appearance_adminbar_noindex_callback' ), // Callback
2775
- 'seopress-settings-admin-advanced-appearance', // Page
2776
- 'seopress_setting_section_advanced_appearance' // Section
2777
- );
2778
-
2779
- add_settings_field(
2780
- 'seopress_advanced_appearance_metabox_position', // ID
2781
- __("Move SEO metabox's position","wp-seopress"), // Title
2782
- array( $this, 'seopress_advanced_appearance_metaboxe_position_callback' ), // Callback
2783
- 'seopress-settings-admin-advanced-appearance', // Page
2784
- 'seopress_setting_section_advanced_appearance' // Section
2785
- );
2786
-
2787
- add_settings_field(
2788
- 'seopress_advanced_appearance_schema_default_tab', // ID
2789
- __("Set default tab for Structured data metabox","wp-seopress"), // Title
2790
- array( $this, 'seopress_advanced_appearance_schema_default_tab_callback' ), // Callback
2791
- 'seopress-settings-admin-advanced-appearance', // Page
2792
- 'seopress_setting_section_advanced_appearance' // Section
2793
- );
2794
-
2795
- add_settings_field(
2796
- 'seopress_advanced_appearance_notifications', // ID
2797
- __("Hide Notifications Center","wp-seopress"), // Title
2798
- array( $this, 'seopress_advanced_appearance_notifications_callback' ), // Callback
2799
- 'seopress-settings-admin-advanced-appearance', // Page
2800
- 'seopress_setting_section_advanced_appearance' // Section
2801
- );
2802
-
2803
- add_settings_field(
2804
- 'seopress_advanced_appearance_seo_tools', // ID
2805
- __("Hide SEO tools","wp-seopress"), // Title
2806
- array( $this, 'seopress_advanced_appearance_seo_tools_callback' ), // Callback
2807
- 'seopress-settings-admin-advanced-appearance', // Page
2808
- 'seopress_setting_section_advanced_appearance' // Section
2809
- );
2810
-
2811
- add_settings_field(
2812
- 'seopress_advanced_appearance_useful_links', // ID
2813
- __("Hide Useful Links","wp-seopress"), // Title
2814
- array( $this, 'seopress_advanced_appearance_useful_links_callback' ), // Callback
2815
- 'seopress-settings-admin-advanced-appearance', // Page
2816
- 'seopress_setting_section_advanced_appearance' // Section
2817
- );
2818
-
2819
- add_settings_field(
2820
- 'seopress_advanced_appearance_title_col', // ID
2821
- __("Show Title tag column in post types","wp-seopress"), // Title
2822
- array( $this, 'seopress_advanced_appearance_title_col_callback' ), // Callback
2823
- 'seopress-settings-admin-advanced-appearance', // Page
2824
- 'seopress_setting_section_advanced_appearance' // Section
2825
- );
2826
-
2827
- add_settings_field(
2828
- 'seopress_advanced_appearance_meta_desc_col', // ID
2829
- __("Show Meta description column in post types","wp-seopress"), // Title
2830
- array( $this, 'seopress_advanced_appearance_meta_desc_col_callback' ), // Callback
2831
- 'seopress-settings-admin-advanced-appearance', // Page
2832
- 'seopress_setting_section_advanced_appearance' // Section
2833
- );
2834
-
2835
- add_settings_field(
2836
- 'seopress_advanced_appearance_redirect_enable_col', // ID
2837
- __("Show Redirection Enable column in post types","wp-seopress"), // Title
2838
- array( $this, 'seopress_advanced_appearance_redirect_enable_col_callback' ), // Callback
2839
- 'seopress-settings-admin-advanced-appearance', // Page
2840
- 'seopress_setting_section_advanced_appearance' // Section
2841
- );
2842
-
2843
- add_settings_field(
2844
- 'seopress_advanced_appearance_redirect_url_col', // ID
2845
- __("Show Redirect URL column in post types","wp-seopress"), // Title
2846
- array( $this, 'seopress_advanced_appearance_redirect_url_col_callback' ), // Callback
2847
- 'seopress-settings-admin-advanced-appearance', // Page
2848
- 'seopress_setting_section_advanced_appearance' // Section
2849
- );
2850
-
2851
- add_settings_field(
2852
- 'seopress_advanced_appearance_canonical', // ID
2853
- __("Show canonical URL column in post types","wp-seopress"), // Title
2854
- array( $this, 'seopress_advanced_appearance_canonical_callback' ), // Callback
2855
- 'seopress-settings-admin-advanced-appearance', // Page
2856
- 'seopress_setting_section_advanced_appearance' // Section
2857
- );
2858
-
2859
- add_settings_field(
2860
- 'seopress_advanced_appearance_target_kw_col', // ID
2861
- __("Show Target Keyword column in post types","wp-seopress"), // Title
2862
- array( $this, 'seopress_advanced_appearance_target_kw_col_callback' ), // Callback
2863
- 'seopress-settings-admin-advanced-appearance', // Page
2864
- 'seopress_setting_section_advanced_appearance' // Section
2865
- );
2866
-
2867
- add_settings_field(
2868
- 'seopress_advanced_appearance_noindex_col', // ID
2869
- __("Show noindex column in post types","wp-seopress"), // Title
2870
- array( $this, 'seopress_advanced_appearance_noindex_col_callback' ), // Callback
2871
- 'seopress-settings-admin-advanced-appearance', // Page
2872
- 'seopress_setting_section_advanced_appearance' // Section
2873
- );
2874
-
2875
- add_settings_field(
2876
- 'seopress_advanced_appearance_nofollow_col', // ID
2877
- __("Show nofollow column in post types","wp-seopress"), // Title
2878
- array( $this, 'seopress_advanced_appearance_nofollow_col_callback' ), // Callback
2879
- 'seopress-settings-admin-advanced-appearance', // Page
2880
- 'seopress_setting_section_advanced_appearance' // Section
2881
- );
2882
-
2883
- add_settings_field(
2884
- 'seopress_advanced_appearance_words_col', // ID
2885
- __("Show total number of words column in post types","wp-seopress"), // Title
2886
- array( $this, 'seopress_advanced_appearance_words_col_callback' ), // Callback
2887
- 'seopress-settings-admin-advanced-appearance', // Page
2888
- 'seopress_setting_section_advanced_appearance' // Section
2889
- );
2890
-
2891
- add_settings_field(
2892
- 'seopress_advanced_appearance_w3c_col', // ID
2893
- __("Show W3C validator column in post types","wp-seopress"), // Title
2894
- array( $this, 'seopress_advanced_appearance_w3c_col_callback' ), // Callback
2895
- 'seopress-settings-admin-advanced-appearance', // Page
2896
- 'seopress_setting_section_advanced_appearance' // Section
2897
- );
2898
- if (is_plugin_active('wp-seopress-pro/seopress-pro.php')) {
2899
- add_settings_field(
2900
- 'seopress_advanced_appearance_ps_col', // ID
2901
- __("Show Google Page Speed column in post types","wp-seopress"), // Title
2902
- array( $this, 'seopress_advanced_appearance_ps_col_callback' ), // Callback
2903
- 'seopress-settings-admin-advanced-appearance', // Page
2904
- 'seopress_setting_section_advanced_appearance' // Section
2905
- );
2906
- }
2907
-
2908
- if (is_plugin_active('wp-seopress-insights/seopress-insights.php')) {
2909
- add_settings_field(
2910
- 'seopress_advanced_appearance_insights_col', // ID
2911
- __("Show Insights column in post types","wp-seopress"), // Title
2912
- array( $this, 'seopress_advanced_appearance_insights_col_callback' ), // Callback
2913
- 'seopress-settings-admin-advanced-appearance', // Page
2914
- 'seopress_setting_section_advanced_appearance' // Section
2915
- );
2916
- }
2917
-
2918
- add_settings_field(
2919
- 'seopress_advanced_appearance_score_col', // ID
2920
- __("Show content analysis score column in post types","wp-seopress"), // Title
2921
- array( $this, 'seopress_advanced_appearance_score_col_callback' ), // Callback
2922
- 'seopress-settings-admin-advanced-appearance', // Page
2923
- 'seopress_setting_section_advanced_appearance' // Section
2924
- );
2925
-
2926
- add_settings_field(
2927
- 'seopress_advanced_appearance_genesis_seo_metaboxe', // ID
2928
- __("Hide Genesis SEO Metabox","wp-seopress"), // Title
2929
- array( $this, 'seopress_advanced_appearance_genesis_seo_metaboxe_callback' ), // Callback
2930
- 'seopress-settings-admin-advanced-appearance', // Page
2931
- 'seopress_setting_section_advanced_appearance' // Section
2932
- );
2933
-
2934
- add_settings_field(
2935
- 'seopress_advanced_appearance_genesis_seo_menu', // ID
2936
- __("Hide Genesis SEO Settings link","wp-seopress"), // Title
2937
- array( $this, 'seopress_advanced_appearance_genesis_seo_menu_callback' ), // Callback
2938
- 'seopress-settings-admin-advanced-appearance', // Page
2939
- 'seopress_setting_section_advanced_appearance' // Section
2940
- );
2941
-
2942
- add_settings_field(
2943
- 'seopress_advanced_appearance_advice_schema', // ID
2944
- __("Hide advice in Structured Data Types metabox","wp-seopress"), // Title
2945
- array( $this, 'seopress_advanced_appearance_advice_schema_callback' ), // Callback
2946
- 'seopress-settings-admin-advanced-appearance', // Page
2947
- 'seopress_setting_section_advanced_appearance' // Section
2948
- );
2949
-
2950
- //Security SECTION=======================================================================
2951
- add_settings_section(
2952
- 'seopress_setting_section_advanced_security', // ID
2953
- '',
2954
- //__("Security","wp-seopress"), // Title
2955
- array( $this, 'print_section_info_advanced_security' ), // Callback
2956
- 'seopress-settings-admin-advanced-security' // Page
2957
- );
2958
-
2959
- add_settings_field(
2960
- 'seopress_advanced_security_metaboxe_role', // ID
2961
- __("Block SEO metabox to user roles","wp-seopress"), // Title
2962
- array( $this, 'seopress_advanced_security_metaboxe_role_callback' ), // Callback
2963
- 'seopress-settings-admin-advanced-security', // Page
2964
- 'seopress_setting_section_advanced_security' // Section
2965
- );
2966
-
2967
- add_settings_field(
2968
- 'seopress_advanced_security_metaboxe_ca_role', // ID
2969
- __("Block Content analysis metabox to user roles","wp-seopress"), // Title
2970
- array( $this, 'seopress_advanced_security_metaboxe_ca_role_callback' ), // Callback
2971
- 'seopress-settings-admin-advanced-security', // Page
2972
- 'seopress_setting_section_advanced_security' // Section
2973
- );
2974
- }
2975
-
2976
- /**
2977
- * Sanitize each setting field as needed
2978
- *
2979
- * @param array $input Contains all settings fields as array keys
2980
- */
2981
- public function sanitize( $input )
2982
- {
2983
- $seopress_sanitize_fields = [
2984
- 'seopress_titles_sep',
2985
- 'seopress_titles_home_site_title',
2986
- 'seopress_titles_home_site_desc',
2987
- 'seopress_titles_archives_author_title',
2988
- 'seopress_titles_archives_author_desc',
2989
- 'seopress_titles_archives_date_title',
2990
- 'seopress_titles_archives_date_desc',
2991
- 'seopress_titles_archives_search_title',
2992
- 'seopress_titles_archives_search_desc',
2993
- 'seopress_titles_archives_404_title',
2994
- 'seopress_titles_archives_404_desc',
2995
- 'seopress_xml_sitemap_html_exclude',
2996
- 'seopress_social_knowledge_name',
2997
- 'seopress_social_knowledge_img',
2998
- 'seopress_social_knowledge_phone',
2999
- 'seopress_social_accounts_facebook',
3000
- 'seopress_social_accounts_twitter',
3001
- 'seopress_social_accounts_pinterest',
3002
- 'seopress_social_accounts_instagram',
3003
- 'seopress_social_accounts_youtube',
3004
- 'seopress_social_accounts_linkedin',
3005
- 'seopress_social_accounts_myspace',
3006
- 'seopress_social_accounts_soundcloud',
3007
- 'seopress_social_accounts_tumblr',
3008
- 'seopress_social_facebook_link_ownership_id',
3009
- 'seopress_social_facebook_admin_id',
3010
- 'seopress_social_facebook_app_id',
3011
- 'seopress_google_analytics_ua',
3012
- 'seopress_google_analytics_ga4',
3013
- 'seopress_google_analytics_download_tracking',
3014
- 'seopress_google_analytics_opt_out_msg',
3015
- 'seopress_google_analytics_opt_out_msg_ok',
3016
- 'seopress_google_analytics_other_tracking',
3017
- 'seopress_google_analytics_other_tracking_body',
3018
- 'seopress_google_analytics_optimize',
3019
- 'seopress_google_analytics_ads',
3020
- 'seopress_google_analytics_cross_domain',
3021
- 'seopress_google_analytics_matomo_id',
3022
- 'seopress_google_analytics_matomo_site_id',
3023
- 'seopress_google_analytics_matomo_cross_domain_sites',
3024
- 'seopress_google_analytics_cb_backdrop_bg',
3025
- 'seopress_google_analytics_cb_exp_date',
3026
- 'seopress_google_analytics_cb_bg',
3027
- 'seopress_google_analytics_cb_txt_col',
3028
- 'seopress_google_analytics_cb_lk_col',
3029
- 'seopress_google_analytics_cb_btn_bg',
3030
- 'seopress_google_analytics_cb_btn_col',
3031
- 'seopress_google_analytics_cb_btn_bg_hov',
3032
- 'seopress_google_analytics_cb_btn_col_hov',
3033
- 'seopress_google_analytics_cb_btn_sec_bg',
3034
- 'seopress_google_analytics_cb_btn_sec_col',
3035
- 'seopress_google_analytics_cb_btn_sec_bg_hov',
3036
- 'seopress_google_analytics_cb_btn_sec_col_hov',
3037
- 'seopress_google_analytics_cb_width',
3038
- ];
3039
-
3040
- $seopress_sanitize_site_verification = [
3041
- 'seopress_advanced_advanced_google',
3042
- 'seopress_advanced_advanced_bing',
3043
- 'seopress_advanced_advanced_pinterest',
3044
- 'seopress_advanced_advanced_yandex'
3045
- ];
3046
-
3047
- foreach ($seopress_sanitize_fields as $value) {
3048
- if (!empty( $input['seopress_google_analytics_opt_out_msg'] ) && $value =='seopress_google_analytics_opt_out_msg') {
3049
- $args = [
3050
- 'strong' => [],
3051
- 'em' => [],
3052
- 'br' => [],
3053
- 'a' => [
3054
- 'href' => [],
3055
- 'target' => []
3056
- ]
3057
- ];
3058
- $input[$value] = wp_kses($input[$value], $args);
3059
- } 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') || (!empty( $input['seopress_google_analytics_other_tracking_footer'] ) && $value =='seopress_google_analytics_other_tracking_footer')) {
3060
- $input[$value] = $input[$value]; //No sanitization for this field
3061
- } elseif( !empty( $input[$value] ) ) {
3062
- $input[$value] = sanitize_text_field( $input[$value] );
3063
- }
3064
- }
3065
-
3066
- foreach ($seopress_sanitize_site_verification as $value) {
3067
- if( !empty( $input[$value] ) ) {
3068
- if (preg_match('#content=\'([^"]+)\'#', $input[$value], $m)) {
3069
- $input[$value] = $m[1];
3070
- } elseif (preg_match('#content="([^"]+)"#', $input[$value], $m)) {
3071
- $input[$value] = $m[1];
3072
- }
3073
- }
3074
- }
3075
-
3076
- return $input;
3077
- }
3078
-
3079
- /**
3080
- * Print the Section text
3081
- */
3082
-
3083
- public function print_section_info_titles() {
3084
- print __('<p>Customize your title & meta description for homepage</p>', 'wp-seopress');
3085
-
3086
- echo "<script>function sp_get_field_length(e) {
1
  <?php
2
 
3
+ defined('ABSPATH') or exit('Please don&rsquo;t call the plugin directly. Thanks :)');
4
+
5
+ class seopress_options {
6
+ /**
7
+ * Holds the values to be used in the fields callbacks.
8
+ */
9
+ private $options;
10
+
11
+ /**
12
+ * Start up.
13
+ */
14
+ public function __construct() {
15
+ add_action('admin_menu', [$this, 'add_plugin_page'], 10);
16
+ add_action('admin_init', [$this, 'page_init']);
17
+ }
18
+
19
+ /**
20
+ * Add options page.
21
+ */
22
+ public function add_plugin_page() {
23
+ if (has_filter('seopress_seo_admin_menu')) {
24
+ $sp_seo_admin_menu['icon'] = '';
25
+ $sp_seo_admin_menu['icon'] = apply_filters('seopress_seo_admin_menu', $sp_seo_admin_menu['icon']);
26
+ } else {
27
+ $sp_seo_admin_menu['icon'] = 'dashicons-admin-seopress';
28
+ }
29
+
30
+ add_menu_page('SEOPress Option Page', __('SEO', 'wp-seopress'), seopress_capability('manage_options', 'menu'), 'seopress-option', [$this, 'create_admin_page'], $sp_seo_admin_menu['icon'], 90);
31
+ add_submenu_page('seopress-option', __('Dashboard', 'wp-seopress'), __('Dashboard', 'wp-seopress'), seopress_capability('manage_options', 'menu'), 'seopress-option', [$this, 'create_admin_page']);
32
+ $seopress_titles_help_tab = add_submenu_page('seopress-option', __('Titles & Metas', 'wp-seopress'), __('Titles & Metas', 'wp-seopress'), seopress_capability('manage_options', 'menu'), 'seopress-titles', [$this, 'seopress_titles_page']);
33
+ add_submenu_page('seopress-option', __('XML / Image / Video / HTML Sitemap', 'wp-seopress'), __('XML / HTML Sitemap', 'wp-seopress'), seopress_capability('manage_options', 'menu'), 'seopress-xml-sitemap', [$this, 'seopress_xml_sitemap_page']);
34
+ add_submenu_page('seopress-option', __('Social Networks', 'wp-seopress'), __('Social Networks', 'wp-seopress'), seopress_capability('manage_options', 'menu'), 'seopress-social', [$this, 'seopress_social_page']);
35
+ $seopress_google_analytics_help_tab = add_submenu_page('seopress-option', __('Analytics', 'wp-seopress'), __('Analytics', 'wp-seopress'), seopress_capability('manage_options', 'menu'), 'seopress-google-analytics', [$this, 'seopress_google_analytics_page']);
36
+ add_submenu_page('seopress-option', __('Advanced', 'wp-seopress'), __('Advanced', 'wp-seopress'), seopress_capability('manage_options', 'menu'), 'seopress-advanced', [$this, 'seopress_advanced_page']);
37
+ add_submenu_page('seopress-option', __('Tools', 'wp-seopress'), __('Tools', 'wp-seopress'), seopress_capability('manage_options', 'menu'), 'seopress-import-export', [$this, 'seopress_import_export_page']);
38
+
39
+ function seopress_titles_help_tab() {
40
+ $screen = get_current_screen();
41
+
42
+ $seopress_titles_help_tab_content = '
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
43
  <ul>
44
+ <li><span>' . __('%%sep%%', 'wp-seopress') . '</span>' . __('Separator (eg: - )', 'wp-seopress') . '</li>
45
+ <li><span>' . __('%%sitetitle%% (alias: %%sitename%%)', 'wp-seopress') . '</span>' . __('Site Title', 'wp-seopress') . '</li>
46
+ <li><span>' . __('%%tagline%% (alias %%sitedesc%%)', 'wp-seopress') . '</span>' . __('Tagline', 'wp-seopress') . '</li>
47
+ <li><span>' . __('%%post_title%% (alias %%title%%)', 'wp-seopress') . '</span>' . __('Post Title (post, page, custom post type)', 'wp-seopress') . '</li>
48
+ <li><span>' . __('%%post_excerpt%% (alias %%excerpt%%)', 'wp-seopress') . '</span>' . __('Post excerpt', 'wp-seopress') . '</li>
49
+ <li><span>' . __('%%post_content%%', 'wp-seopress') . '</span>' . __('Post content / product long description', 'wp-seopress') . '</li>
50
+ <li><span>' . __('%%post_thumbnail_url%%', 'wp-seopress') . '</span>' . __('Post thumbnail URL', 'wp-seopress') . '</li>
51
+ <li><span>' . __('%%post_url%%', 'wp-seopress') . '</span>' . __('Post URL (permalink)', 'wp-seopress') . '</li>
52
+ <li><span>' . __('%%post_date%% (alias %%date%%)', 'wp-seopress') . '</span>' . __('Post date', 'wp-seopress') . '</li>
53
+ <li><span>' . __('%%post_modified_date%%', 'wp-seopress') . '</span>' . __('Last modified post date', 'wp-seopress') . '</li>
54
+ <li><span>' . __('%%post_author%%', 'wp-seopress') . '</span>' . __('Post author', 'wp-seopress') . '</li>
55
+ <li><span>' . __('%%post_category%%', 'wp-seopress') . '</span>' . __('Post category', 'wp-seopress') . '</li>
56
+ <li><span>' . __('%%post_tag%%', 'wp-seopress') . '</span>' . __('Post tag', 'wp-seopress') . '</li>
57
+ <li><span>' . __('%%_category_title%%', 'wp-seopress') . '</span>' . __('Category title', 'wp-seopress') . '</li>
58
+ <li><span>' . __('%%_category_description%%', 'wp-seopress') . '</span>' . __('Category description', 'wp-seopress') . '</li>
59
+ <li><span>' . __('%%tag_title%%', 'wp-seopress') . '</span>' . __('Tag title', 'wp-seopress') . '</li>
60
+ <li><span>' . __('%%tag_description%%', 'wp-seopress') . '</span>' . __('Tag description', 'wp-seopress') . '</li>
61
+ <li><span>' . __('%%term_title%%', 'wp-seopress') . '</span>' . __('Term title', 'wp-seopress') . '</li>
62
+ <li><span>' . __('%%term_description%%', 'wp-seopress') . '</span>' . __('Term description', 'wp-seopress') . '</li>
63
+ <li><span>' . __('%%search_keywords%%', 'wp-seopress') . '</span>' . __('Search keywords', 'wp-seopress') . '</li>
64
+ <li><span>' . __('%%current_pagination%%', 'wp-seopress') . '</span>' . __('Current number page', 'wp-seopress') . '</li>
65
+ <li><span>' . __('%%page%%', 'wp-seopress') . '</span>' . __('Current page number with context (i.e. page 1 of 3)', 'wp-seopress') . '</li>
66
+ <li><span>' . __('%%cpt_plural%%', 'wp-seopress') . '</span>' . __('Plural Post Type Archive name', 'wp-seopress') . '</li>
67
+ <li><span>' . __('%%archive_title%%', 'wp-seopress') . '</span>' . __('Archive title', 'wp-seopress') . '</li>
68
+ <li><span>' . __('%%archive_date%%', 'wp-seopress') . '</span>' . __('Date Archive', 'wp-seopress') . '</li>
69
+ <li><span>' . __('%%archive_date_day%%', 'wp-seopress') . '</span>' . __('Day Archive date', 'wp-seopress') . '</li>
70
+ <li><span>' . __('%%archive_date_month%%', 'wp-seopress') . '</span>' . __('Month Archive title', 'wp-seopress') . '</li>
71
+ <li><span>' . __('%%archive_date_year%%', 'wp-seopress') . '</span>' . __('Year Archive title', 'wp-seopress') . '</li>
72
+ <li><span>' . __('%%_cf_your_custom_field_name%%', 'wp-seopress') . '</span>' . __('Custom fields from post, page or post type (replace <span style="color:red;margin:0">your_custom_field_name</span> with your custom field name)', 'wp-seopress') . '</li>
73
+ <li><span>' . __('%%_ct_your_custom_taxonomy_slug%%', 'wp-seopress') . '</span>' . __('Custom term taxonomy from post, page or post type (replace <span style="color:red;margin:0">your_custom_taxonomy_slug</span> with your custom taxonomy slug)', 'wp-seopress') . '</li>
74
+ <li><span>' . __('%%wc_single_cat%%', 'wp-seopress') . '</span>' . __('Single product category', 'wp-seopress') . '</li>
75
+ <li><span>' . __('%%wc_single_tag%%', 'wp-seopress') . '</span>' . __('Single product tag', 'wp-seopress') . '</li>
76
+ <li><span>' . __('%%wc_single_short_desc%%', 'wp-seopress') . '</span>' . __('Single product short description', 'wp-seopress') . '</li>
77
+ <li><span>' . __('%%wc_single_price%%', 'wp-seopress') . '</span>' . __('Single product price', 'wp-seopress') . '</li>
78
+ <li><span>' . __('%%wc_single_price_exc_tax%%', 'wp-seopress') . '</span>' . __('Single product price taxes excluded', 'wp-seopress') . '</li>
79
+ <li><span>' . __('%%wc_sku%%', 'wp-seopress') . '</span>' . __('Single SKU product', 'wp-seopress') . '</li>
80
+ <li><span>' . __('%%currentday%%', 'wp-seopress') . '</span>' . __('Current day', 'wp-seopress') . '</li>
81
+ <li><span>' . __('%%currentmonth%%', 'wp-seopress') . '</span>' . __('Current month', 'wp-seopress') . '</li>
82
+ <li><span>' . __('%%currentmonth_short%%', 'wp-seopress') . '</span>' . __('Current month in 3 letters, eg: "Jan" for "January"', 'wp-seopress') . '</li>
83
+ <li><span>' . __('%%currentyear%%', 'wp-seopress') . '</span>' . __('Current year', 'wp-seopress') . '</li>
84
+ <li><span>' . __('%%currentdate%%', 'wp-seopress') . '</span>' . __('Current date', 'wp-seopress') . '</li>
85
+ <li><span>' . __('%%currenttime%%', 'wp-seopress') . '</span>' . __('Current time', 'wp-seopress') . '</li>
86
+ <li><span>' . __('%%author_bio%%', 'wp-seopress') . '</span>' . __('Author biography (description), meta desc only', 'wp-seopress') . '</li>
87
+ <li><span>' . __('%%currentmonth_num%%', 'wp-seopress') . '</span>' . __('Current month in digital format', 'wp-seopress') . '</li>
 
 
 
88
  </ul>
89
+ ' . wp_oembed_get('https://www.youtube.com/watch?v=Jretu4Gpgo8', ['width'=>530]);
90
+
91
+ $screen->add_help_tab([
92
+ 'id' => 'seopress_titles_help_tab',
93
+ 'title' => __('Templates variables'),
94
+ 'content' => $seopress_titles_help_tab_content,
95
+ ]);
96
+
97
+ if (function_exists('seopress_get_locale') && 'fr' == seopress_get_locale()) {
98
+ $screen->set_help_sidebar(
99
+ '<ul>
100
+ <li><a href="https://www.seopress.org/fr/support/guides/?utm_source=plugin&utm_medium=wp-admin-help-tab&utm_campaign=seopress" target="_blank">' . __('Browse our guides', 'wp-seopress') . '</a></li>
101
+ <li><a href="https://www.seopress.org/fr/support/faq/?utm_source=plugin&utm_medium=wp-admin-help-tab&utm_campaign=seopress" target="_blank">' . __('Read our FAQ', 'wp-seopress') . '</a></li>
102
+ <li><a href="https://www.seopress.org/fr/?utm_source=plugin&utm_medium=wp-admin-help-tab&utm_campaign=seopress" target="_blank">' . __('Check our website', 'wp-seopress') . '</a></li>
103
  </ul>'
104
+ );
105
+ } else {
106
+ $screen->set_help_sidebar(
107
+ '<ul>
108
+ <li><a href="https://www.seopress.org/support/guides/?utm_source=plugin&utm_medium=wp-admin-help-tab&utm_campaign=seopress" target="_blank">' . __('Browse our guides', 'wp-seopress') . '</a></li>
109
+ <li><a href="https://www.seopress.org/support/faq/?utm_source=plugin&utm_medium=wp-admin-help-tab&utm_campaign=seopress" target="_blank">' . __('Read our FAQ', 'wp-seopress') . '</a></li>
110
+ <li><a href="https://www.seopress.org/?utm_source=plugin&utm_medium=wp-admin-help-tab&utm_campaign=seopress" target="_blank">' . __('Check our website', 'wp-seopress') . '</a></li>
111
  </ul>'
112
+ );
113
+ }
114
+ }
115
+ add_action('load-' . $seopress_titles_help_tab, 'seopress_titles_help_tab');
116
+
117
+ function seopress_google_analytics_help_tab() {
118
+ $screen = get_current_screen();
119
+
120
+ $seopress_google_analytics_help_tab_content = '
121
+ <p>' . __('Watch our video to learn how to connect your WordPress site with Google Analytics and get statistics right in your dashboard (PRO only).', 'wp-seopress') . '</p>
122
+ ' . wp_oembed_get('https://www.youtube.com/watch?v=2EWdogYuFgs', ['width'=>530]);
123
+
124
+ $screen->add_help_tab([
125
+ 'id' => 'seopress_google_analytics_help_tab',
126
+ 'title' => __('How-to'),
127
+ 'content' => $seopress_google_analytics_help_tab_content,
128
+ ]);
129
+
130
+ if (function_exists('seopress_get_locale') && 'fr' == seopress_get_locale()) {
131
+ $screen->set_help_sidebar(
132
+ '<ul>
133
+ <li><a href="https://www.seopress.org/fr/support/guides/connectez-site-wordpress-a-google-analytics/?utm_source=plugin&utm_medium=wp-admin-help-tab&utm_campaign=seopress" target="_blank">' . __('Read our guide', 'wp-seopress') . '</a></li>
134
  </ul>'
135
+ );
136
+ } else {
137
+ $screen->set_help_sidebar(
138
+ '<ul>
139
+ <li><a href="https://www.seopress.org/support/guides/connect-wordpress-site-google-analytics/?utm_source=plugin&utm_medium=wp-admin-help-tab&utm_campaign=seopress" target="_blank">' . __('Read our guide', 'wp-seopress') . '</a></li>
140
  </ul>'
141
+ );
142
+ }
143
+ }
144
+ add_action('load-' . $seopress_google_analytics_help_tab, 'seopress_google_analytics_help_tab');
145
+ }
146
+
147
+ public function seopress_titles_page() {
148
+ $this->options = get_option('seopress_titles_option_name');
149
+ if (function_exists('seopress_admin_header')) {
150
+ echo seopress_admin_header();
151
+ } ?>
 
 
152
  <form method="post" action="<?php echo admin_url('options.php'); ?>" class="seopress-option">
153
  <?php
154
+ if (isset($_GET['settings-updated']) && 'true' === $_GET['settings-updated']) {
155
+ echo '<div class="sp-components-snackbar-list"><div class="sp-components-snackbar"><div class="sp-components-snackbar__content"><span class="dashicons dashicons-yes"></span>' . __('Your settings has been saved.', 'wp-seopress') . '</div></div></div>';
156
+ }
157
+
158
+ global $wp_version, $title;
159
+ $current_tab = '';
160
+ $tag = version_compare($wp_version, '4.4') >= 0 ? 'h1' : 'h2';
161
+ echo '<' . $tag . '><span class="dashicons dashicons-editor-table"></span>' . $title;
162
+
163
+ if ('1' == seopress_get_toggle_option('titles')) {
164
+ $seopress_get_toggle_titles_option = '"1"';
165
+ } else {
166
+ $seopress_get_toggle_titles_option = '"0"';
167
+ } ?>
168
+
 
169
  <input type="checkbox" name="toggle-titles" id="toggle-titles" class="toggle" data-toggle=<?php echo $seopress_get_toggle_titles_option; ?>>
170
  <label for="toggle-titles"></label>
171
+
172
  <?php
173
+ if ('1' == seopress_get_toggle_option('titles')) {
174
+ echo '<span id="titles-state-default" class="feature-state"><span class="dashicons dashicons-arrow-left-alt"></span>' . __('Click to disable this feature', 'wp-seopress') . '</span>';
175
+ echo '<span id="titles-state" class="feature-state feature-state-off"><span class="dashicons dashicons-arrow-left-alt"></span>' . __('Click to enable this feature', 'wp-seopress') . '</span>';
176
+ } else {
177
+ echo '<span id="titles-state-default" class="feature-state"><span class="dashicons dashicons-arrow-left-alt"></span>' . __('Click to enable this feature', 'wp-seopress') . '</span>';
178
+ echo '<span id="titles-state" class="feature-state feature-state-off"><span class="dashicons dashicons-arrow-left-alt"></span>' . __('Click to disable this feature', 'wp-seopress') . '</span>';
179
+ }
180
 
181
+ echo '<div id="seopress-notice-save" style="display: none"><span class="dashicons dashicons-yes"></span><span class="html"></span></div>';
182
 
183
+ echo '</' . $tag . '>';
184
+
185
+ settings_fields('seopress_titles_option_group'); ?>
186
 
 
 
 
187
  <div id="seopress-tabs" class="wrap">
188
+ <?php
189
+
190
+ $plugin_settings_tabs = [
191
+ 'tab_seopress_titles_home' => __('Home', 'wp-seopress'),
192
+ 'tab_seopress_titles_single' => __('Single Post Types', 'wp-seopress'),
193
+ 'tab_seopress_titles_archives' => __('Archives', 'wp-seopress'),
194
+ 'tab_seopress_titles_tax' => __('Taxonomies', 'wp-seopress'),
195
+ 'tab_seopress_titles_advanced' => __('Advanced', 'wp-seopress'),
196
+ ];
197
+
198
+ echo '<div class="nav-tab-wrapper">';
199
+ foreach ($plugin_settings_tabs as $tab_key => $tab_caption) {
200
+ echo '<a id="' . $tab_key . '-tab" class="nav-tab" href="?page=seopress-titles#tab=' . $tab_key . '">' . $tab_caption . '</a>';
201
+ }
202
+ echo '</div>'; ?>
203
+ <div class="seopress-tab <?php if ('tab_seopress_titles_home' == $current_tab) {
204
+ echo 'active';
205
+ } ?>" id="tab_seopress_titles_home"><?php do_settings_sections('seopress-settings-admin-titles-home'); ?></div>
206
+ <div class="seopress-tab <?php if ('tab_seopress_titles_single' == $current_tab) {
207
+ echo 'active';
208
+ } ?>" id="tab_seopress_titles_single"><?php do_settings_sections('seopress-settings-admin-titles-single'); ?></div>
209
+ <div class="seopress-tab <?php if ('tab_seopress_titles_archives' == $current_tab) {
210
+ echo 'active';
211
+ } ?>" id="tab_seopress_titles_archives"><?php do_settings_sections('seopress-settings-admin-titles-archives'); ?></div>
212
+ <div class="seopress-tab <?php if ('tab_seopress_titles_tax' == $current_tab) {
213
+ echo 'active';
214
+ } ?>" id="tab_seopress_titles_tax"><?php do_settings_sections('seopress-settings-admin-titles-tax'); ?></div>
215
+ <div class="seopress-tab <?php if ('tab_seopress_titles_advanced' == $current_tab) {
216
+ echo 'active';
217
+ } ?>" id="tab_seopress_titles_advanced"><?php do_settings_sections('seopress-settings-admin-titles-advanced'); ?></div>
218
  </div>
219
 
220
  <?php submit_button(); ?>
221
  </form>
222
  <?php
223
+ }
224
+
225
+ public function seopress_xml_sitemap_page() {
226
+ $this->options = get_option('seopress_xml_sitemap_option_name');
227
+ if (function_exists('seopress_admin_header')) {
228
+ echo seopress_admin_header();
229
+ } ?>
 
230
  <form method="post" action="<?php echo admin_url('options.php'); ?>" class="seopress-option" name="seopress-flush">
231
+ <?php
232
+ if (isset($_GET['settings-updated']) && 'true' === $_GET['settings-updated']) {
233
+ echo '<div class="sp-components-snackbar-list"><div class="sp-components-snackbar"><div class="sp-components-snackbar__content"><span class="dashicons dashicons-yes"></span>' . __('Your settings has been saved.', 'wp-seopress') . '</div></div></div>';
234
+ }
235
+ global $wp_version, $title;
236
+ $current_tab = '';
237
+ $tag = version_compare($wp_version, '4.4') >= 0 ? 'h1' : 'h2';
238
+ echo '<' . $tag . '><span class="dashicons dashicons-media-spreadsheet"></span>' . $title;
239
+
240
+ if ('1' == seopress_get_toggle_option('xml-sitemap')) {
241
+ $seopress_get_toggle_xml_sitemap_option = '"1"';
242
+ } else {
243
+ $seopress_get_toggle_xml_sitemap_option = '"0"';
244
+ } ?>
245
 
246
  <input type="checkbox" name="toggle-xml-sitemap" id="toggle-xml-sitemap" class="toggle" data-toggle=<?php echo $seopress_get_toggle_xml_sitemap_option; ?>>
247
+
248
  <label for="toggle-xml-sitemap"></label>
249
+
250
+ <?php if ('1' == seopress_get_toggle_option('xml-sitemap')) {
251
+ echo '<span id="xml-sitemap-state-default" class="feature-state"><span class="dashicons dashicons-arrow-left-alt"></span>' . __('Click to disable this feature', 'wp-seopress') . '</span>';
252
+ echo '<span id="xml-sitemap-state" class="feature-state feature-state-off"><span class="dashicons dashicons-arrow-left-alt"></span>' . __('Click to enable this feature', 'wp-seopress') . '</span>';
253
+ } else {
254
+ echo '<span id="xml-sitemap-state-default" class="feature-state"><span class="dashicons dashicons-arrow-left-alt"></span>' . __('Click to enable this feature', 'wp-seopress') . '</span>';
255
+ echo '<span id="xml-sitemap-state" class="feature-state feature-state-off"><span class="dashicons dashicons-arrow-left-alt"></span>' . __('Click to disable this feature', 'wp-seopress') . '</span>';
256
+ }
257
+
258
+ echo '<div id="seopress-notice-save" style="display: none"><span class="dashicons dashicons-yes"></span><span class="html"></span></div>';
259
+
260
+ echo '</' . $tag . '>';
261
+
262
+ settings_fields('seopress_xml_sitemap_option_group'); ?>
263
+
 
264
  <div id="seopress-tabs" class="wrap">
265
+ <?php
266
+
267
+ $plugin_settings_tabs = [
268
+ 'tab_seopress_xml_sitemap_general' => __('General', 'wp-seopress'),
269
+ 'tab_seopress_xml_sitemap_post_types' => __('Post Types', 'wp-seopress'),
270
+ 'tab_seopress_xml_sitemap_taxonomies' => __('Taxonomies', 'wp-seopress'),
271
+ 'tab_seopress_html_sitemap' => __('HTML Sitemap', 'wp-seopress'),
272
+ ];
273
+
274
+ echo '<div class="nav-tab-wrapper">';
275
+ foreach ($plugin_settings_tabs as $tab_key => $tab_caption) {
276
+ echo '<a id="' . $tab_key . '-tab" class="nav-tab" href="?page=seopress-xml-sitemap#tab=' . $tab_key . '">' . $tab_caption . '</a>';
277
+ }
278
+ echo '</div>'; ?>
279
+ <div class="seopress-tab <?php if ('tab_seopress_xml_sitemap_general' == $current_tab) {
280
+ echo 'active';
281
+ } ?>" id="tab_seopress_xml_sitemap_general"><?php do_settings_sections('seopress-settings-admin-xml-sitemap-general'); ?></div>
282
+ <div class="seopress-tab <?php if ('tab_seopress_xml_sitemap_post_types' == $current_tab) {
283
+ echo 'active';
284
+ } ?>" id="tab_seopress_xml_sitemap_post_types"><?php do_settings_sections('seopress-settings-admin-xml-sitemap-post-types'); ?></div>
285
+ <div class="seopress-tab <?php if ('tab_seopress_xml_sitemap_taxonomies' == $current_tab) {
286
+ echo 'active';
287
+ } ?>" id="tab_seopress_xml_sitemap_taxonomies"><?php do_settings_sections('seopress-settings-admin-xml-sitemap-taxonomies'); ?></div>
288
+ <div class="seopress-tab <?php if ('tab_seopress_html_sitemap' == $current_tab) {
289
+ echo 'active';
290
+ } ?>" id="tab_seopress_html_sitemap"><?php do_settings_sections('seopress-settings-admin-html-sitemap'); ?></div>
291
  </div>
292
  <?php submit_button(); ?>
293
  </form>
294
  <?php
295
+ }
296
+
297
+ public function seopress_social_page() {
298
+ $this->options = get_option('seopress_social_option_name');
299
+ if (function_exists('seopress_admin_header')) {
300
+ echo seopress_admin_header();
301
+ } ?>
 
302
  <form method="post" action="<?php echo admin_url('options.php'); ?>" class="seopress-option">
303
  <?php
304
+ if (isset($_GET['settings-updated']) && 'true' === $_GET['settings-updated']) {
305
+ echo '<div class="sp-components-snackbar-list"><div class="sp-components-snackbar"><div class="sp-components-snackbar__content"><span class="dashicons dashicons-yes"></span>' . __('Your settings has been saved.', 'wp-seopress') . '</div></div></div>';
306
+ }
307
+
308
+ global $wp_version, $title;
309
+ $current_tab = '';
310
+ $tag = version_compare($wp_version, '4.4') >= 0 ? 'h1' : 'h2';
311
+ echo '<' . $tag . '><span class="dashicons dashicons-share"></span>' . $title;
312
+
313
+ if ('1' == seopress_get_toggle_option('social')) {
314
+ $seopress_get_toggle_social_option = '"1"';
315
+ } else {
316
+ $seopress_get_toggle_social_option = '"0"';
317
+ } ?>
318
+
 
319
  <input type="checkbox" name="toggle-social" id="toggle-social" class="toggle" data-toggle=<?php echo $seopress_get_toggle_social_option; ?>>
320
  <label for="toggle-social"></label>
321
+
322
  <?php
323
+ if ('1' == seopress_get_toggle_option('social')) {
324
+ echo '<span id="social-state-default" class="feature-state"><span class="dashicons dashicons-arrow-left-alt"></span>' . __('Click to disable this feature', 'wp-seopress') . '</span>';
325
+ echo '<span id="social-state" class="feature-state feature-state-off"><span class="dashicons dashicons-arrow-left-alt"></span>' . __('Click to enable this feature', 'wp-seopress') . '</span>';
326
+ } else {
327
+ echo '<span id="social-state-default" class="feature-state"><span class="dashicons dashicons-arrow-left-alt"></span>' . __('Click to enable this feature', 'wp-seopress') . '</span>';
328
+ echo '<span id="social-state" class="feature-state feature-state-off"><span class="dashicons dashicons-arrow-left-alt"></span>' . __('Click to disable this feature', 'wp-seopress') . '</span>';
329
+ }
330
 
331
+ echo '<div id="seopress-notice-save" style="display: none"><span class="dashicons dashicons-yes"></span><span class="html"></span></div>';
332
 
333
+ echo '</' . $tag . '>';
334
+
335
+ settings_fields('seopress_social_option_group'); ?>
336
 
 
 
 
337
  <div id="seopress-tabs" class="wrap">
338
+ <?php
339
+
340
+ $plugin_settings_tabs = [
341
+ 'tab_seopress_social_knowledge' => __('Knowledge Graph', 'wp-seopress'),
342
+ 'tab_seopress_social_accounts' => __('Your social accounts', 'wp-seopress'),
343
+ 'tab_seopress_social_facebook' => __('Facebook (Open Graph)', 'wp-seopress'),
344
+ 'tab_seopress_social_twitter' => __('Twitter (Twitter card)', 'wp-seopress'),
345
+ ];
346
+
347
+ echo '<div class="nav-tab-wrapper">';
348
+ foreach ($plugin_settings_tabs as $tab_key => $tab_caption) {
349
+ echo '<a id="' . $tab_key . '-tab" class="nav-tab" href="?page=seopress-social#tab=' . $tab_key . '">' . $tab_caption . '</a>';
350
+ }
351
+ echo '</div>'; ?>
352
+ <div class="seopress-tab <?php if ('tab_seopress_social_knowledge' == $current_tab) {
353
+ echo 'active';
354
+ } ?>" id="tab_seopress_social_knowledge"><?php do_settings_sections('seopress-settings-admin-social-knowledge'); ?></div>
355
+ <div class="seopress-tab <?php if ('tab_seopress_social_accounts' == $current_tab) {
356
+ echo 'active';
357
+ } ?>" id="tab_seopress_social_accounts"><?php do_settings_sections('seopress-settings-admin-social-accounts'); ?></div>
358
+ <div class="seopress-tab <?php if ('tab_seopress_social_facebook' == $current_tab) {
359
+ echo 'active';
360
+ } ?>" id="tab_seopress_social_facebook"><?php do_settings_sections('seopress-settings-admin-social-facebook'); ?></div>
361
+ <div class="seopress-tab <?php if ('tab_seopress_social_twitter' == $current_tab) {
362
+ echo 'active';
363
+ } ?>" id="tab_seopress_social_twitter"><?php do_settings_sections('seopress-settings-admin-social-twitter'); ?></div>
364
  </div>
365
 
366
  <?php submit_button(); ?>
367
  </form>
368
  <?php
369
+ }
370
+
371
+ public function seopress_google_analytics_page() {
372
+ $this->options = get_option('seopress_google_analytics_option_name');
373
+ if (function_exists('seopress_admin_header')) {
374
+ echo seopress_admin_header();
375
+ } ?>
 
376
  <form method="post" action="<?php echo admin_url('options.php'); ?>" class="seopress-option">
377
  <?php
378
+ if (isset($_GET['settings-updated']) && 'true' === $_GET['settings-updated']) {
379
+ echo '<div class="sp-components-snackbar-list"><div class="sp-components-snackbar"><div class="sp-components-snackbar__content"><span class="dashicons dashicons-yes"></span>' . __('Your settings has been saved.', 'wp-seopress') . '</div></div></div>';
380
+ }
381
+
382
+ global $wp_version, $title;
383
+ $current_tab = '';
384
+ $tag = version_compare($wp_version, '4.4') >= 0 ? 'h1' : 'h2';
385
+ echo '<' . $tag . '><span class="dashicons dashicons-chart-area"></span>' . $title;
386
+
387
+ if ('1' == seopress_get_toggle_option('google-analytics')) {
388
+ $seopress_get_toggle_google_analytics_option = '"1"';
389
+ } else {
390
+ $seopress_get_toggle_google_analytics_option = '"0"';
391
+ } ?>
392
+
 
393
  <input type="checkbox" name="toggle-google-analytics" id="toggle-google-analytics" class="toggle" data-toggle=<?php echo $seopress_get_toggle_google_analytics_option; ?>>
394
+
395
  <label for="toggle-google-analytics"></label>
396
+
397
  <?php
398
+ if ('1' == seopress_get_toggle_option('google-analytics')) {
399
+ echo '<span id="google-analytics-state-default" class="feature-state"><span class="dashicons dashicons-arrow-left-alt"></span>' . __('Click to disable this feature', 'wp-seopress') . '</span>';
400
+ echo '<span id="google-analytics-state" class="feature-state feature-state-off"><span class="dashicons dashicons-arrow-left-alt"></span>' . __('Click to enable this feature', 'wp-seopress') . '</span>';
401
+ } else {
402
+ echo '<span id="google-analytics-state-default" class="feature-state"><span class="dashicons dashicons-arrow-left-alt"></span>' . __('Click to enable this feature', 'wp-seopress') . '</span>';
403
+ echo '<span id="google-analytics-state" class="feature-state feature-state-off"><span class="dashicons dashicons-arrow-left-alt"></span>' . __('Click to disable this feature', 'wp-seopress') . '</span>';
404
+ }
405
+
406
+ echo '<div id="seopress-notice-save" style="display: none"><span class="dashicons dashicons-yes"></span><span class="html"></span></div>';
407
+
408
+ echo '</' . $tag . '>';
409
+
410
+ settings_fields('seopress_google_analytics_option_group'); ?>
411
+
 
412
  <div id="seopress-tabs" class="wrap">
413
  <?php
414
 
415
+ if (is_plugin_active('wp-seopress-pro/seopress-pro.php')) {
416
+ $plugin_settings_tabs = [
417
+ 'tab_seopress_google_analytics_enable' => __('General', 'wp-seopress'),
418
+ 'tab_seopress_google_analytics_features' => __('Tracking', 'wp-seopress'),
419
+ 'tab_seopress_google_analytics_ecommerce' => __('Ecommerce', 'wp-seopress'),
420
+ 'tab_seopress_google_analytics_events' => __('Events', 'wp-seopress'),
421
+ 'tab_seopress_google_analytics_custom_dimensions' => __('Custom Dimensions', 'wp-seopress'),
422
+ 'tab_seopress_google_analytics_dashboard' => __('Stats in Dashboard', 'wp-seopress'),
423
+ 'tab_seopress_google_analytics_gdpr' => __('Cookie bar / GDPR', 'wp-seopress'),
424
+ 'tab_seopress_google_analytics_matomo' => __('Matomo', 'wp-seopress'),
425
+ ];
426
+ } else {
427
+ $plugin_settings_tabs = [
428
+ 'tab_seopress_google_analytics_enable' => __('General', 'wp-seopress'),
429
+ 'tab_seopress_google_analytics_features' => __('Tracking', 'wp-seopress'),
430
+ 'tab_seopress_google_analytics_events' => __('Events', 'wp-seopress'),
431
+ 'tab_seopress_google_analytics_custom_dimensions' => __('Custom Dimensions', 'wp-seopress'),
432
+ 'tab_seopress_google_analytics_gdpr' => __('Cookie bar / GDPR', 'wp-seopress'),
433
+ 'tab_seopress_google_analytics_matomo' => __('Matomo', 'wp-seopress'),
434
+ ];
435
+ }
436
+
437
+ echo '<div class="nav-tab-wrapper">';
438
+ foreach ($plugin_settings_tabs as $tab_key => $tab_caption) {
439
+ echo '<a id="' . $tab_key . '-tab" class="nav-tab" href="?page=seopress-google-analytics#tab=' . $tab_key . '">' . $tab_caption . '</a>';
440
+ }
441
+ echo '</div>'; ?>
442
+ <div class="seopress-tab <?php if ('tab_seopress_google_analytics_enable' == $current_tab) {
443
+ echo 'active';
444
+ } ?>" id="tab_seopress_google_analytics_enable"><?php do_settings_sections('seopress-settings-admin-google-analytics-enable'); ?></div>
445
+ <div class="seopress-tab <?php if ('tab_seopress_google_analytics_features' == $current_tab) {
446
+ echo 'active';
447
+ } ?>" id="tab_seopress_google_analytics_features"><?php do_settings_sections('seopress-settings-admin-google-analytics-features'); ?></div><div class="seopress-tab <?php if ('tab_seopress_google_analytics_events' == $current_tab) {
448
+ echo 'active';
449
+ } ?>" id="tab_seopress_google_analytics_events"><?php do_settings_sections('seopress-settings-admin-google-analytics-events'); ?></div>
450
+ <div class="seopress-tab <?php if ('tab_seopress_google_analytics_custom_dimensions' == $current_tab) {
451
+ echo 'active';
452
+ } ?>" id="tab_seopress_google_analytics_custom_dimensions"><?php do_settings_sections('seopress-settings-admin-google-analytics-custom-dimensions'); ?></div>
453
  <?php if (is_plugin_active('wp-seopress-pro/seopress-pro.php')) { ?>
454
+ <div class="seopress-tab <?php if ('tab_seopress_google_analytics_dashboard' == $current_tab) {
455
+ echo 'active';
456
+ } ?>" id="tab_seopress_google_analytics_dashboard"><?php do_settings_sections('seopress-settings-admin-google-analytics-dashboard'); ?></div>
457
+ <div class="seopress-tab <?php if ('tab_seopress_google_analytics_ecommerce' == $current_tab) {
458
+ echo 'active';
459
+ } ?>" id="tab_seopress_google_analytics_ecommerce"><?php do_settings_sections('seopress-settings-admin-google-analytics-ecommerce'); ?></div>
460
  <?php } ?>
461
+ <div class="seopress-tab <?php if ('tab_seopress_google_analytics_gdpr' == $current_tab) {
462
+ echo 'active';
463
+ } ?>" id="tab_seopress_google_analytics_gdpr"><?php do_settings_sections('seopress-settings-admin-google-analytics-gdpr'); ?></div>
464
+ <div class="seopress-tab <?php if ('tab_seopress_google_analytics_matomo' == $current_tab) {
465
+ echo 'active';
466
+ } ?>" id="tab_seopress_google_analytics_matomo"><?php do_settings_sections('seopress-settings-admin-google-analytics-matomo'); ?></div>
467
  </div>
468
 
469
  <?php submit_button(); ?>
470
  </form>
471
  <?php
472
+ }
473
+
474
+ public function seopress_advanced_page() {
475
+ $this->options = get_option('seopress_advanced_option_name');
476
+ if (function_exists('seopress_admin_header')) {
477
+ echo seopress_admin_header();
478
+ } ?>
 
479
  <form method="post" action="<?php echo admin_url('options.php'); ?>" class="seopress-option">
480
+ <?php
481
+ if (isset($_GET['settings-updated']) && 'true' === $_GET['settings-updated']) {
482
+ echo '<div class="sp-components-snackbar-list"><div class="sp-components-snackbar"><div class="sp-components-snackbar__content"><span class="dashicons dashicons-yes"></span>' . __('Your settings has been saved.', 'wp-seopress') . '</div></div></div>';
483
+ }
484
+
485
+ global $wp_version, $title;
486
+ $current_tab = '';
487
+ $tag = version_compare($wp_version, '4.4') >= 0 ? 'h1' : 'h2';
488
+ echo '<' . $tag . '><span class="dashicons dashicons-admin-tools"></span>' . $title;
489
+
490
+ if ('1' == seopress_get_toggle_option('advanced')) {
491
+ $seopress_get_toggle_advanced_option = '"1"';
492
+ } else {
493
+ $seopress_get_toggle_advanced_option = '"0"';
494
+ } ?>
495
+
 
496
  <input type="checkbox" name="toggle-advanced" id="toggle-advanced" class="toggle" data-toggle=<?php echo $seopress_get_toggle_advanced_option; ?>>
497
  <label for="toggle-advanced"></label>
498
+
499
  <?php
500
+ if ('1' == seopress_get_toggle_option('advanced')) {
501
+ echo '<span id="advanced-state-default" class="feature-state"><span class="dashicons dashicons-arrow-left-alt"></span>' . __('Click to disable this feature', 'wp-seopress') . '</span>';
502
+ echo '<span id="advanced-state" class="feature-state feature-state-off"><span class="dashicons dashicons-arrow-left-alt"></span>' . __('Click to enable this feature', 'wp-seopress') . '</span>';
503
+ } else {
504
+ echo '<span id="advanced-state-default" class="feature-state"><span class="dashicons dashicons-arrow-left-alt"></span>' . __('Click to enable this feature', 'wp-seopress') . '</span>';
505
+ echo '<span id="advanced-state" class="feature-state feature-state-off"><span class="dashicons dashicons-arrow-left-alt"></span>' . __('Click to disable this feature', 'wp-seopress') . '</span>';
506
+ }
507
 
508
+ echo '<div id="seopress-notice-save" style="display: none"><span class="dashicons dashicons-yes"></span><span class="html"></span></div>';
509
 
510
+ echo '</' . $tag . '>';
511
+
512
+ settings_fields('seopress_advanced_option_group'); ?>
513
 
 
 
 
514
  <div id="seopress-tabs" class="wrap">
515
+ <?php
516
+
517
+ $plugin_settings_tabs = [
518
+ 'tab_seopress_advanced_advanced' => __('Advanced', 'wp-seopress'),
519
+ 'tab_seopress_advanced_appearance' => __('Appearance', 'wp-seopress'),
520
+ 'tab_seopress_advanced_security' => __('Security', 'wp-seopress'),
521
+ ];
522
+
523
+ echo '<div class="nav-tab-wrapper">';
524
+ foreach ($plugin_settings_tabs as $tab_key => $tab_caption) {
525
+ echo '<a id="' . $tab_key . '-tab" class="nav-tab" href="?page=seopress-advanced#tab=' . $tab_key . '">' . $tab_caption . '</a>';
526
+ }
527
+ echo '</div>'; ?>
528
+ <div class="seopress-tab <?php if ('tab_seopress_advanced_advanced' == $current_tab) {
529
+ echo 'active';
530
+ } ?>" id="tab_seopress_advanced_advanced"><?php do_settings_sections('seopress-settings-admin-advanced-advanced'); ?></div>
531
+ <div class="seopress-tab <?php if ('tab_seopress_advanced_appearance' == $current_tab) {
532
+ echo 'active';
533
+ } ?>" id="tab_seopress_advanced_appearance"><?php do_settings_sections('seopress-settings-admin-advanced-appearance'); ?></div>
534
+ <div class="seopress-tab <?php if ('tab_seopress_advanced_security' == $current_tab) {
535
+ echo 'active';
536
+ } ?>" id="tab_seopress_advanced_security"><?php do_settings_sections('seopress-settings-admin-advanced-security'); ?></div>
537
  </div>
538
 
539
  <?php submit_button(); ?>
540
  </form>
541
  <?php
542
+ }
543
+
544
+ public function seopress_import_export_page() {
545
+ $this->options = get_option('seopress_import_export_option_name');
546
+ if (function_exists('seopress_admin_header')) {
547
+ echo seopress_admin_header();
548
+ } ?>
 
549
  <div class="seopress-option">
550
  <?php global $wp_version, $title;
551
+ $current_tab = '';
552
+ $tag = version_compare($wp_version, '4.4') >= 0 ? 'h1' : 'h2';
553
+ echo '<' . $tag . '><span class="dashicons dashicons-admin-settings"></span>' . $title . '</' . $tag . '>'; ?>
 
554
  <div id="seopress-tabs" class="wrap">
555
  <?php
556
+ $plugin_settings_tabs = [
557
+ 'tab_seopress_tool_data' => __('Data', 'wp-seopress'),
558
+ 'tab_seopress_tool_settings' => __('Settings', 'wp-seopress'),
559
+ 'tab_seopress_tool_plugins' => __('Plugins', 'wp-seopress'),
560
+ 'tab_seopress_tool_redirects' => __('Redirections', 'wp-seopress'),
561
+ 'tab_seopress_tool_reset' => __('Reset', 'wp-seopress'),
562
+ ];
563
+
564
+ if ( ! is_plugin_active('wp-seopress-pro/seopress-pro.php')) {
565
+ unset($plugin_settings_tabs['tab_seopress_tool_data']);
566
+ unset($plugin_settings_tabs['tab_seopress_tool_redirects']);
567
+ }
568
+
569
+ echo '<div class="nav-tab-wrapper">';
570
+ foreach ($plugin_settings_tabs as $tab_key => $tab_caption) {
571
+ echo '<a id="' . $tab_key . '-tab" class="nav-tab" href="?page=seopress-import-export#tab=' . $tab_key . '">' . $tab_caption . '</a>';
572
+ }
573
+ echo '</div>'; ?>
 
574
  <?php if (is_plugin_active('wp-seopress-pro/seopress-pro.php')) { ?>
575
+ <div class="seopress-tab <?php if ('tab_seopress_tool_data' == $current_tab) {
576
+ echo 'active';
577
+ } ?>" id="tab_seopress_tool_data">
578
  <div class="postbox section-tool">
579
  <div class="inside">
580
+ <h3><span><?php _e('Import data from a CSV', 'wp-seopress'); ?></span></h3>
581
+ <p><?php _e('Upload a CSV file to quickly import post (post, page, single post type) and term metadata:', 'wp-seopress'); ?></p>
582
  <ul>
583
  <li>
584
+ <?php _e('Meta title', 'wp-seopress'); ?>
585
  </li>
586
  <li>
587
+ <?php _e('Meta description', 'wp-seopress'); ?>
588
  </li>
589
  <li>
590
+ <?php _e('Meta robots (noindex, nofollow...)', 'wp-seopress'); ?>
591
  </li>
592
  <li>
593
+ <?php _e('Facebook Open Graph tags (title, description, image)', 'wp-seopress'); ?>
594
  </li>
595
  <li>
596
+ <?php _e('Twitter cards tags (title, description, image)', 'wp-seopress'); ?>
597
  </li>
598
  <li>
599
+ <?php _e('Redirection (enable, type, URL)', 'wp-seopress'); ?>
600
  </li>
601
  <li>
602
+ <?php _e('Primary category', 'wp-seopress'); ?>
603
  </li>
604
  <li>
605
+ <?php _e('Canonical URL', 'wp-seopress'); ?>
606
+ </li>
607
+ <li>
608
+ <?php _e('Target keywords', 'wp-seopress'); ?>
609
  </li>
610
  </ul>
611
+ <a class="button" href="<?php echo admin_url('admin.php?page=seopress_csv_importer'); ?>"><?php _e('Run the importer', 'wp-seopress'); ?></a>
612
  </div><!-- .inside -->
613
  </div><!-- .postbox -->
614
  <div id="metadata-migration-tool" class="postbox section-tool">
615
  <div class="inside">
616
+ <h3><span><?php _e('Export metadata to a CSV', 'wp-seopress'); ?></span></h3>
617
+ <p><?php _e('Export your post (post, page, single post type) and term metadata for this site as a .csv file.', 'wp-seopress'); ?></p>
618
  <ul>
619
  <li>
620
+ <?php _e('Meta title', 'wp-seopress'); ?>
621
  </li>
622
  <li>
623
+ <?php _e('Meta description', 'wp-seopress'); ?>
624
  </li>
625
  <li>
626
+ <?php _e('Meta robots (noindex, nofollow...)', 'wp-seopress'); ?>
627
  </li>
628
  <li>
629
+ <?php _e('Facebook Open Graph tags (title, description, image)', 'wp-seopress'); ?>
630
  </li>
631
  <li>
632
+ <?php _e('Twitter cards tags (title, description, image)', 'wp-seopress'); ?>
633
  </li>
634
  <li>
635
+ <?php _e('Redirection (enable, type, URL)', 'wp-seopress'); ?>
636
+ </li>
637
+ <li>
638
+ <?php _e('Primary category', 'wp-seopress'); ?>
639
  </li>
640
  <li>
641
+ <?php _e('Canonical URL', 'wp-seopress'); ?>
642
  </li>
643
  <li>
644
+ <?php _e('Target keywords', 'wp-seopress'); ?>
645
  </li>
646
  </ul>
647
  <form method="post">
648
  <p><input type="hidden" name="seopress_action" value="export_csv_metadata" /></p>
649
  <p>
650
+ <?php wp_nonce_field('seopress_export_csv_metadata_nonce', 'seopress_export_csv_metadata_nonce'); ?>
651
+ <button id="seopress-metadata-migrate" type="button" class="button"><?php _e('Export', 'wp-seopress'); ?></button>
652
  <span class="spinner"></span>
653
  <div class="log"></div>
654
  </p>
657
  </div><!-- .postbox -->
658
  </div>
659
  <?php } ?>
660
+ <div class="seopress-tab <?php if ('tab_seopress_tool_settings' == $current_tab) {
661
+ echo 'active';
662
+ } ?>" id="tab_seopress_tool_settings">
663
  <div class="postbox section-tool">
664
  <div class="inside">
665
+ <h3><span><?php _e('Export plugin settings', 'wp-seopress'); ?></span></h3>
666
+ <p><?php _e('Export the plugin settings for this site as a .json file. This allows you to easily import the configuration into another site.', 'wp-seopress'); ?></p>
667
  <form method="post">
668
  <p><input type="hidden" name="seopress_action" value="export_settings" /></p>
669
  <p>
670
+ <?php wp_nonce_field('seopress_export_nonce', 'seopress_export_nonce'); ?>
671
+ <?php submit_button(__('Export', 'wp-seopress'), 'secondary', 'submit', false); ?>
672
  </p>
673
  </form>
674
  </div><!-- .inside -->
676
 
677
  <div class="postbox section-tool">
678
  <div class="inside">
679
+ <h3><span><?php _e('Import plugin settings', 'wp-seopress'); ?></span></h3>
680
+ <p><?php _e('Import the plugin settings from a .json file. This file can be obtained by exporting the settings on another site using the form above.', 'wp-seopress'); ?></p>
681
  <form method="post" enctype="multipart/form-data">
682
  <p>
683
  <input type="file" name="import_file"/>
684
  </p>
685
  <p>
686
  <input type="hidden" name="seopress_action" value="import_settings" />
687
+ <?php wp_nonce_field('seopress_import_nonce', 'seopress_import_nonce'); ?>
688
+ <?php submit_button(__('Import', 'wp-seopress'), 'secondary', 'submit', false); ?>
689
+ <?php if ( ! empty($_GET['success']) && 'true' == htmlspecialchars($_GET['success'])) {
690
+ echo '<div class="log">' . __('Import completed!', 'wp-seopress') . '</div>';
691
+ } ?>
692
  </p>
693
  </form>
694
  </div><!-- .inside -->
695
  </div><!-- .postbox -->
696
  </div>
697
+ <div class="seopress-tab <?php if ('tab_seopress_tool_plugins' == $current_tab) {
698
+ echo 'active';
699
+ } ?>" id="tab_seopress_tool_plugins">
700
  <div class="postbox section-tool">
701
+ <h3><span><?php _e('Import posts and terms metadata from', 'wp-seopress'); ?></span></h3>
702
  <select id="select-wizard-import" name="select-wizard-import">
703
+ <option value="none"><?php _e('Select an option', 'wp-seopress'); ?></option>
704
+ <option value="yoast-migration-tool"><?php _e('Yoast SEO', 'wp-seopress'); ?></option>
705
+ <option value="aio-migration-tool"><?php _e('All In One SEO', 'wp-seopress'); ?></option>
706
+ <option value="seo-framework-migration-tool"><?php _e('The SEO Framework', 'wp-seopress'); ?></option>
707
+ <option value="rk-migration-tool"><?php _e('Rank Math', 'wp-seopress'); ?></option>
708
+ <option value="squirrly-migration-tool"><?php _e('Squirrly SEO', 'wp-seopress'); ?></option>
709
+ <option value="seo-ultimate-migration-tool"><?php _e('SEO Ultimate', 'wp-seopress'); ?></option>
710
+ <option value="wp-meta-seo-migration-tool"><?php _e('WP Meta SEO', 'wp-seopress'); ?></option>
711
+ <option value="premium-seo-pack-migration-tool"><?php _e('Premium SEO Pack', 'wp-seopress'); ?></option>
712
+ <option value="wpseo-migration-tool"><?php _e('wpSEO', 'wp-seopress'); ?></option>
713
  </select>
714
  <br><br>
715
  </div>
716
+ <!-- Yoast import tool -->
717
  <div id="yoast-migration-tool" class="postbox section-tool">
718
  <div class="inside">
719
+ <h3><span><?php _e('Import posts and terms metadata from Yoast', 'wp-seopress'); ?></span></h3>
720
+ <p><?php _e('By clicking Migrate, we\'ll import:', 'wp-seopress'); ?></p>
721
  <ul>
722
+ <li><?php _e('Title tags', 'wp-seopress'); ?></li>
723
+ <li><?php _e('Meta description', 'wp-seopress'); ?></li>
724
+ <li><?php _e('Facebook Open Graph tags (title, description and image thumbnail)', 'wp-seopress'); ?></li>
725
+ <li><?php _e('Twitter tags (title, description and image thumbnail)', 'wp-seopress'); ?></li>
726
+ <li><?php _e('Meta Robots (noindex, nofollow...)', 'wp-seopress'); ?></li>
727
+ <li><?php _e('Canonical URL', 'wp-seopress'); ?></li>
728
+ <li><?php _e('Focus keywords', 'wp-seopress'); ?></li>
729
+ <li><?php _e('Primary category', 'wp-seopress'); ?></li>
730
  </ul>
731
+ <p style="color:red"><span class="dashicons dashicons-info"></span> <?php _e('<strong>WARNING:</strong> Migration will delete / update all SEOPress posts and terms metadata. Some dynamic variables will not be interpreted. We do NOT delete any Yoast data.', 'wp-seopress'); ?></p>
732
+ <button id="seopress-yoast-migrate" type="button" class="button"><?php _e('Migrate now', 'wp-seopress'); ?></button>
733
  <span class="spinner"></span>
734
  <div class="log"></div>
735
  </div><!-- .inside -->
736
  </div><!-- .postbox -->
737
 
738
+ <!-- All In One import tool -->
739
  <div id="aio-migration-tool" class="postbox section-tool">
740
  <div class="inside">
741
+ <h3><span><?php _e('Import posts and terms metadata from All In One SEO', 'wp-seopress'); ?></span></h3>
742
+ <p><?php _e('By clicking Migrate, we\'ll import:', 'wp-seopress'); ?></p>
743
  <ul>
744
+ <li><?php _e('Title tags', 'wp-seopress'); ?></li>
745
+ <li><?php _e('Meta description', 'wp-seopress'); ?></li>
746
+ <li><?php _e('Facebook Open Graph tags (title, description and image thumbnail)', 'wp-seopress'); ?></li>
747
+ <li><?php _e('Twitter image thumbnail', 'wp-seopress'); ?></li>
748
+ <li><?php _e('Meta Robots (noindex, nofollow)', 'wp-seopress'); ?></li>
749
  </ul>
750
+ <p style="color:red"><span class="dashicons dashicons-info"></span> <?php _e('<strong>WARNING:</strong> Migration will update/delete all SEOPress posts and terms metadata. Some dynamic variables will not be interpreted. We do NOT delete any AIO data.', 'wp-seopress'); ?></p>
751
+ <button id="seopress-aio-migrate" type="button" class="button"><?php _e('Migrate now', 'wp-seopress'); ?></button>
752
  <span class="spinner"></span>
753
  <div class="log"></div>
754
  </div><!-- .inside -->
755
  </div><!-- .postbox -->
756
 
757
+ <!-- SEO Framework import tool -->
758
  <div id="seo-framework-migration-tool" class="postbox section-tool">
759
  <div class="inside">
760
+ <h3><span><?php _e('Import posts and terms metadata from The SEO Framework', 'wp-seopress'); ?></span></h3>
761
+ <p><?php _e('By clicking Migrate, we\'ll import:', 'wp-seopress'); ?></p>
762
  <ul>
763
+ <li><?php _e('Title tags', 'wp-seopress'); ?></li>
764
+ <li><?php _e('Meta description', 'wp-seopress'); ?></li>
765
+ <li><?php _e('Facebook Open Graph tags (title, description and image thumbnail)', 'wp-seopress'); ?></li>
766
+ <li><?php _e('Twitter tags (title, description and image thumbnail)', 'wp-seopress'); ?></li>
767
+ <li><?php _e('Meta Robots (noindex, nofollow, noarchive)', 'wp-seopress'); ?></li>
768
+ <li><?php _e('Canonical URL', 'wp-seopress'); ?></li>
769
+ <li><?php _e('Redirect URL', 'wp-seopress'); ?></li>
770
  </ul>
771
+ <p style="color:red"><span class="dashicons dashicons-info"></span> <?php _e('<strong>WARNING:</strong> Migration will update / delete all SEOPress posts and terms metadata. Some dynamic variables will not be interpreted. We do NOT delete any SEO Framework data.', 'wp-seopress'); ?></p>
772
+ <button id="seopress-seo-framework-migrate" type="button" class="button"><?php _e('Migrate now', 'wp-seopress'); ?></button>
773
  <span class="spinner"></span>
774
  <div class="log"></div>
775
  </div><!-- .inside -->
776
  </div><!-- .postbox -->
777
 
778
+ <!-- RK import tool -->
779
  <div id="rk-migration-tool" class="postbox section-tool">
780
  <div class="inside">
781
+ <h3><span><?php _e('Import posts and terms metadata from Rank Math', 'wp-seopress'); ?></span></h3>
782
+ <p><?php _e('By clicking Migrate, we\'ll import:', 'wp-seopress'); ?></p>
783
  <ul>
784
+ <li><?php _e('Title tags', 'wp-seopress'); ?></li>
785
+ <li><?php _e('Meta description', 'wp-seopress'); ?></li>
786
+ <li><?php _e('Facebook Open Graph tags (title, description and image thumbnail)', 'wp-seopress'); ?></li>
787
+ <li><?php _e('Twitter tags (title, description and image thumbnail)', 'wp-seopress'); ?></li>
788
+ <li><?php _e('Meta Robots (noindex, nofollow, noarchive, noimageindex)', 'wp-seopress'); ?></li>
789
+ <li><?php _e('Canonical URL', 'wp-seopress'); ?></li>
790
+ <li><?php _e('Focus keywords', 'wp-seopress'); ?></li>
791
  </ul>
792
+ <p style="color:red"><span class="dashicons dashicons-info"></span> <?php _e('<strong>WARNING:</strong> Migration will update / delete all SEOPress posts and terms metadata. Some dynamic variables will not be interpreted. We do NOT delete any Rank Math data.', 'wp-seopress'); ?></p>
793
+ <button id="seopress-rk-migrate" type="button" class="button"><?php _e('Migrate now', 'wp-seopress'); ?></button>
794
  <span class="spinner"></span>
795
  <div class="log"></div>
796
  </div><!-- .inside -->
797
  </div><!-- .postbox -->
798
+
799
+ <!-- Squirrly import tool -->
800
  <div id="squirrly-migration-tool" class="postbox section-tool">
801
  <div class="inside">
802
+ <h3><span><?php _e('Import posts metadata from Squirrly SEO', 'wp-seopress'); ?></span></h3>
803
+ <p><?php _e('By clicking Migrate, we\'ll import:', 'wp-seopress'); ?></p>
804
  <ul>
805
+ <li><?php _e('Title tags', 'wp-seopress'); ?></li>
806
+ <li><?php _e('Meta description', 'wp-seopress'); ?></li>
807
+ <li><?php _e('Facebook Open Graph tags (title, description and image thumbnail)', 'wp-seopress'); ?></li>
808
+ <li><?php _e('Twitter tags (title, description and image thumbnail)', 'wp-seopress'); ?></li>
809
+ <li><?php _e('Meta Robots (noindex or nofollow)', 'wp-seopress'); ?></li>
810
+ <li><?php _e('Canonical URL', 'wp-seopress'); ?></li>
811
  </ul>
812
+ <p style="color:red"><span class="dashicons dashicons-info"></span> <?php _e('<strong>WARNING:</strong> Migration will update/delete all SEOPress posts metadata. Some dynamic variables will not be interpreted. We do NOT delete any Squirrly SEO data.', 'wp-seopress'); ?></p>
813
+ <button id="seopress-squirrly-migrate" type="button" class="button"><?php _e('Migrate now', 'wp-seopress'); ?></button>
814
  <span class="spinner"></span>
815
  <div class="log"></div>
816
  </div><!-- .inside -->
817
  </div><!-- .postbox -->
818
+
819
+ <!-- SEO Ultimate import tool -->
820
  <div id="seo-ultimate-migration-tool" class="postbox section-tool">
821
  <div class="inside">
822
+ <h3><span><?php _e('Import posts metadata from SEO Ultimate', 'wp-seopress'); ?></span></h3>
823
+ <p><?php _e('By clicking Migrate, we\'ll import:', 'wp-seopress'); ?></p>
824
  <ul>
825
+ <li><?php _e('Title tags', 'wp-seopress'); ?></li>
826
+ <li><?php _e('Meta description', 'wp-seopress'); ?></li>
827
+ <li><?php _e('Facebook Open Graph tags (title, description and image thumbnail)', 'wp-seopress'); ?></li>
828
+ <li><?php _e('Twitter tags (title, description and image thumbnail)', 'wp-seopress'); ?></li>
829
+ <li><?php _e('Meta Robots (noindex or nofollow)', 'wp-seopress'); ?></li>
830
  </ul>
831
+ <p style="color:red"><span class="dashicons dashicons-info"></span> <?php _e('<strong>WARNING:</strong> Migration will update / delete all SEOPress posts metadata. Some dynamic variables will not be interpreted. We do NOT delete any SEO Ultimate data.', 'wp-seopress'); ?></p>
832
+ <button id="seopress-seo-ultimate-migrate" type="button" class="button"><?php _e('Migrate now', 'wp-seopress'); ?></button>
833
  <span class="spinner"></span>
834
  <div class="log"></div>
835
  </div><!-- .inside -->
838
  <!-- WP Meta SEO import tool -->
839
  <div id="wp-meta-seo-migration-tool" class="postbox section-tool">
840
  <div class="inside">
841
+ <h3><span><?php _e('Import posts and terms metadata from WP Meta SEO', 'wp-seopress'); ?></span></h3>
842
+ <p><?php _e('By clicking Migrate, we\'ll import:', 'wp-seopress'); ?></p>
843
  <ul>
844
+ <li><?php _e('Title tags', 'wp-seopress'); ?></li>
845
+ <li><?php _e('Meta description', 'wp-seopress'); ?></li>
846
+ <li><?php _e('Facebook Open Graph tags (title, description and image thumbnail)', 'wp-seopress'); ?></li>
847
+ <li><?php _e('Twitter tags (title, description and image thumbnail)', 'wp-seopress'); ?></li>
848
  </ul>
849
+ <p style="color:red"><span class="dashicons dashicons-info"></span> <?php _e('<strong>WARNING:</strong> Migration will update / delete all SEOPress posts metadata. Some dynamic variables will not be interpreted. We do NOT delete any WP Meta SEO data.', 'wp-seopress'); ?></p>
850
+ <button id="seopress-wp-meta-seo-migrate" type="button" class="button"><?php _e('Migrate now', 'wp-seopress'); ?></button>
851
  <span class="spinner"></span>
852
  <div class="log"></div>
853
  </div><!-- .inside -->
856
  <!-- Premium SEO Pack import tool -->
857
  <div id="premium-seo-pack-migration-tool" class="postbox section-tool">
858
  <div class="inside">
859
+ <h3><span><?php _e('Import posts and terms metadata from Premium SEO Pack', 'wp-seopress'); ?></span></h3>
860
+ <p><?php _e('By clicking Migrate, we\'ll import:', 'wp-seopress'); ?></p>
861
  <ul>
862
+ <li><?php _e('Title tags', 'wp-seopress'); ?></li>
863
+ <li><?php _e('Meta description', 'wp-seopress'); ?></li>
864
+ <li><?php _e('Facebook Open Graph tags (title, description and image thumbnail)', 'wp-seopress'); ?></li>
865
+ <li><?php _e('Meta Robots (noindex, nofollow)', 'wp-seopress'); ?></li>
866
+ <li><?php _e('Canonical URL', 'wp-seopress'); ?></li>
867
+ <li><?php _e('Focus keywords', 'wp-seopress'); ?></li>
868
  </ul>
869
+ <p style="color:red"><span class="dashicons dashicons-info"></span> <?php _e('<strong>WARNING:</strong> Migration will update / delete all SEOPress posts metadata. Some dynamic variables will not be interpreted. We do NOT delete any Premium SEO Pack data.', 'wp-seopress'); ?></p>
870
+ <button id="seopress-premium-seo-pack-migrate" type="button" class="button"><?php _e('Migrate now', 'wp-seopress'); ?></button>
871
  <span class="spinner"></span>
872
  <div class="log"></div>
873
  </div><!-- .inside -->
876
  <!-- wpSEO import tool -->
877
  <div id="wpseo-migration-tool" class="postbox section-tool">
878
  <div class="inside">
879
+ <h3><span><?php _e('Import posts and terms metadata from wpSEO', 'wp-seopress'); ?></span></h3>
880
+ <p><?php _e('By clicking Migrate, we\'ll import:', 'wp-seopress'); ?></p>
881
  <ul>
882
+ <li><?php _e('Title tags', 'wp-seopress'); ?></li>
883
+ <li><?php _e('Meta description', 'wp-seopress'); ?></li>
884
+ <li><?php _e('Facebook Open Graph tags (title, description and image thumbnail)', 'wp-seopress'); ?></li>
885
+ <li><?php _e('Twitter tags (title, description and image thumbnail)', 'wp-seopress'); ?></li>
886
+ <li><?php _e('Meta Robots (noindex, nofollow)', 'wp-seopress'); ?></li>
887
+ <li><?php _e('Canonical URL', 'wp-seopress'); ?></li>
888
+ <li><?php _e('Redirect URL', 'wp-seopress'); ?></li>
889
+ <li><?php _e('Main keyword', 'wp-seopress'); ?></li>
890
  </ul>
891
+ <p style="color:red"><span class="dashicons dashicons-info"></span> <?php _e('<strong>WARNING:</strong> Migration will update / delete all SEOPress posts metadata. Some dynamic variables will not be interpreted. We do NOT delete any wpSEO data.', 'wp-seopress'); ?></p>
892
+ <button id="seopress-wpseo-migrate" type="button" class="button"><?php _e('Migrate now', 'wp-seopress'); ?></button>
893
  <span class="spinner"></span>
894
  <div class="log"></div>
895
  </div><!-- .inside -->
896
  </div><!-- .postbox -->
897
  </div>
898
+ <div class="seopress-tab <?php if ('tab_seopress_tool_redirects' == $current_tab) {
899
+ echo 'active';
900
+ } ?>" id="tab_seopress_tool_redirects">
901
  <?php if (is_plugin_active('wp-seopress-pro/seopress-pro.php')) { ?>
902
+ <?php if ('1' == seopress_get_toggle_option('404') && function_exists('seopress_get_redirection_pro_html')) {
903
+ seopress_get_redirection_pro_html();
904
+ } else { ?>
905
+ <p><?php _e('Redirections feature is disabled. Please activate it from the PRO page.', 'wp-seopress'); ?></p>
906
+ <a href="<?php echo admin_url('admin.php?page=seopress-pro-page'); ?>"><?php _e('Activate Redirections', 'wp-seopress'); ?></a>
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
907
  <?php } ?>
908
  <?php } ?>
909
  </div>
910
+ <div class="seopress-tab <?php if ('tab_seopress_tool_reset' == $current_tab) {
911
+ echo 'active';
912
+ } ?>" id="tab_seopress_tool_reset">
913
  <div class="postbox section-tool">
914
  <div class="inside">
915
+ <h3><span><?php _e('Reset All Notices From Notifications Center', 'wp-seopress'); ?></span></h3>
916
+ <p><?php _e('By clicking Reset Notices, all notices in the notifications center will be set to their initial status.', 'wp-seopress'); ?></p>
917
  <form method="post" enctype="multipart/form-data">
918
  <p>
919
  <input type="hidden" name="seopress_action" value="reset_notices_settings" />
920
+ <?php wp_nonce_field('seopress_reset_notices_nonce', 'seopress_reset_notices_nonce'); ?>
921
+ <?php submit_button(__('Reset notices', 'wp-seopress'), 'secondary', 'submit', false); ?>
922
  </p>
923
  </form>
924
  </div><!-- .inside -->
926
 
927
  <div class="postbox section-tool">
928
  <div class="inside">
929
+ <h3><span><?php _e('Reset All Settings', 'wp-seopress'); ?></span></h3>
930
+ <p style="color:red"><span class="dashicons dashicons-info"></span> <?php _e('<strong>WARNING:</strong> Delete all options related to this plugin in your database AND set settings to their default values.', 'wp-seopress'); ?></p>
931
  <form method="post" enctype="multipart/form-data">
932
  <p>
933
  <input type="hidden" name="seopress_action" value="reset_settings" />
934
+ <?php wp_nonce_field('seopress_reset_nonce', 'seopress_reset_nonce'); ?>
935
+ <?php submit_button(__('Reset settings', 'wp-seopress'), 'secondary', 'submit', false); ?>
936
  </p>
937
  </form>
938
  </div><!-- .inside -->
941
  </div>
942
  </div>
943
  <?php
944
+ }
945
+
946
+ /**
947
+ * Options page callback.
948
+ */
949
+ public function create_admin_page() {
950
+ // Set class property
951
+ $this->options = get_option('seopress_option_name');
952
+ $current_tab ='';
953
+ if (function_exists('seopress_admin_header')) {
954
+ echo seopress_admin_header();
955
+ } ?>
 
 
956
  <div id="seopress-content">
957
  <!--Get started-->
958
  <?php
959
+ function seopress_get_hidden_notices_get_started_option() {
960
+ $seopress_get_hidden_notices_get_started_option = get_option('seopress_notices');
961
+ if ( ! empty($seopress_get_hidden_notices_get_started_option)) {
962
+ foreach ($seopress_get_hidden_notices_get_started_option as $key => $seopress_get_hidden_notices_get_started_value) {
963
+ $options[$key] = $seopress_get_hidden_notices_get_started_value;
964
+ }
965
+ if (isset($seopress_get_hidden_notices_get_started_option['notice-get-started'])) {
966
+ return $seopress_get_hidden_notices_get_started_option['notice-get-started'];
967
+ }
968
+ }
969
+ }
970
+ if ('1' != seopress_get_hidden_notices_get_started_option()) {
971
+ if (function_exists('seopress_get_toggle_white_label_option') && '1' == seopress_get_toggle_white_label_option()) {
972
+ //do nothing
973
+ } else {
974
+ include_once dirname(__FILE__) . '/admin-get-started.php';
975
+ }
976
+ } ?>
977
 
978
  <!--Notifications Center-->
979
+ <?php include_once dirname(__FILE__) . '/admin-notifications-center.php'; ?>
980
 
981
  <!--Features list-->
982
+ <?php include_once dirname(__FILE__) . '/admin-features-list.php'; ?>
983
  </div>
984
  <?php
985
+ }
986
+
987
+ /**
988
+ * Register and add settings.
989
+ */
990
+ public function page_init() {
991
+ register_setting(
992
+ 'seopress_option_group', // Option group
993
+ 'seopress_option_name', // Option name
994
+ [$this, 'sanitize'] // Sanitize
995
+ );
996
+
997
+ register_setting(
998
+ 'seopress_titles_option_group', // Option group
999
+ 'seopress_titles_option_name', // Option name
1000
+ [$this, 'sanitize'] // Sanitize
1001
+ );
1002
+
1003
+ register_setting(
1004
+ 'seopress_xml_sitemap_option_group', // Option group
1005
+ 'seopress_xml_sitemap_option_name', // Option name
1006
+ [$this, 'sanitize'] // Sanitize
1007
+ );
1008
+
1009
+ register_setting(
1010
+ 'seopress_social_option_group', // Option group
1011
+ 'seopress_social_option_name', // Option name
1012
+ [$this, 'sanitize'] // Sanitize
1013
+ );
1014
+
1015
+ register_setting(
1016
+ 'seopress_google_analytics_option_group', // Option group
1017
+ 'seopress_google_analytics_option_name', // Option name
1018
+ [$this, 'sanitize'] // Sanitize
1019
+ );
1020
+
1021
+ register_setting(
1022
+ 'seopress_advanced_option_group', // Option group
1023
+ 'seopress_advanced_option_name', // Option name
1024
+ [$this, 'sanitize'] // Sanitize
1025
+ );
1026
+
1027
+ register_setting(
1028
+ 'seopress_import_export_option_group', // Option group
1029
+ 'seopress_import_export_option_name', // Option name
1030
+ [$this, 'sanitize'] // Sanitize
1031
+ );
1032
+
1033
+ //Titles & metas SECTION===================================================================
1034
+ add_settings_section(
1035
+ 'seopress_setting_section_titles_home', // ID
1036
+ '',
1037
+ //__("Home","wp-seopress"), // Title
1038
+ [$this, 'print_section_info_titles'], // Callback
1039
+ 'seopress-settings-admin-titles-home' // Page
1040
+ );
1041
+
1042
+ add_settings_field(
1043
+ 'seopress_titles_sep', // ID
1044
+ __('Separator', 'wp-seopress'), // Title
1045
+ [$this, 'seopress_titles_sep_callback'], // Callback
1046
+ 'seopress-settings-admin-titles-home', // Page
1047
+ 'seopress_setting_section_titles_home' // Section
1048
+ );
1049
+
1050
+ add_settings_field(
1051
+ 'seopress_titles_home_site_title', // ID
1052
+ __('Site title', 'wp-seopress'), // Title
1053
+ [$this, 'seopress_titles_home_site_title_callback'], // Callback
1054
+ 'seopress-settings-admin-titles-home', // Page
1055
+ 'seopress_setting_section_titles_home' // Section
1056
+ );
1057
+
1058
+ add_settings_field(
1059
+ 'seopress_titles_home_site_desc', // ID
1060
+ __('Meta description', 'wp-seopress'), // Title
1061
+ [$this, 'seopress_titles_home_site_desc_callback'], // Callback
1062
+ 'seopress-settings-admin-titles-home', // Page
1063
+ 'seopress_setting_section_titles_home' // Section
1064
+ );
1065
+
1066
+ //Single Post Types SECTION================================================================
1067
+ add_settings_section(
1068
+ 'seopress_setting_section_titles_single', // ID
1069
+ '',
1070
+ //__("Single Post Types","wp-seopress"), // Title
1071
+ [$this, 'print_section_info_single'], // Callback
1072
+ 'seopress-settings-admin-titles-single' // Page
1073
+ );
1074
+
1075
+ add_settings_field(
1076
+ 'seopress_titles_single_titles', // ID
1077
+ '',
1078
+ [$this, 'seopress_titles_single_titles_callback'], // Callback
1079
+ 'seopress-settings-admin-titles-single', // Page
1080
+ 'seopress_setting_section_titles_single' // Section
1081
+ );
1082
+
1083
+ if (is_plugin_active('buddypress/bp-loader.php') || is_plugin_active('buddyboss-platform/bp-loader.php')) {
1084
+ add_settings_field(
1085
+ 'seopress_titles_bp_groups_title', // ID
1086
+ '',
1087
+ [$this, 'seopress_titles_bp_groups_title_callback'], // Callback
1088
+ 'seopress-settings-admin-titles-single', // Page
1089
+ 'seopress_setting_section_titles_single' // Section
1090
+ );
1091
+
1092
+ add_settings_field(
1093
+ 'seopress_titles_bp_groups_desc', // ID
1094
+ '',
1095
+ [$this, 'seopress_titles_bp_groups_desc_callback'], // Callback
1096
+ 'seopress-settings-admin-titles-single', // Page
1097
+ 'seopress_setting_section_titles_single' // Section
1098
+ );
1099
+
1100
+ add_settings_field(
1101
+ 'seopress_titles_bp_groups_noindex', // ID
1102
+ '',
1103
+ [$this, 'seopress_titles_bp_groups_noindex_callback'], // Callback
1104
+ 'seopress-settings-admin-titles-single', // Page
1105
+ 'seopress_setting_section_titles_single' // Section
1106
+ );
1107
+ }
1108
+
1109
+ //Archives SECTION=========================================================================
1110
+ add_settings_section(
1111
+ 'seopress_setting_section_titles_archives', // ID
1112
+ '',
1113
+ //__("Archives","wp-seopress"), // Title
1114
+ [$this, 'print_section_info_archives'], // Callback
1115
+ 'seopress-settings-admin-titles-archives' // Page
1116
+ );
1117
+
1118
+ add_settings_field(
1119
+ 'seopress_titles_archives_titles', // ID
1120
+ '',
1121
+ [$this, 'seopress_titles_archives_titles_callback'], // Callback
1122
+ 'seopress-settings-admin-titles-archives', // Page
1123
+ 'seopress_setting_section_titles_archives' // Section
1124
+ );
1125
+
1126
+ add_settings_field(
1127
+ 'seopress_titles_archives_author_title', // ID
1128
+ '',
1129
+ //__('Title template','wp-seopress'),
1130
+ [$this, 'seopress_titles_archives_author_title_callback'], // Callback
1131
+ 'seopress-settings-admin-titles-archives', // Page
1132
+ 'seopress_setting_section_titles_archives' // Section
1133
+ );
1134
+
1135
+ add_settings_field(
1136
+ 'seopress_titles_archives_author_desc', // ID
1137
+ '',
1138
+ //__('Meta description template','wp-seopress'),
1139
+ [$this, 'seopress_titles_archives_author_desc_callback'], // Callback
1140
+ 'seopress-settings-admin-titles-archives', // Page
1141
+ 'seopress_setting_section_titles_archives' // Section
1142
+ );
1143
+
1144
+ add_settings_field(
1145
+ 'seopress_titles_archives_author_noindex', // ID
1146
+ '',
1147
+ //__("noindex","wp-seopress"), // Title
1148
+ [$this, 'seopress_titles_archives_author_noindex_callback'], // Callback
1149
+ 'seopress-settings-admin-titles-archives', // Page
1150
+ 'seopress_setting_section_titles_archives' // Section
1151
+ );
1152
+
1153
+ add_settings_field(
1154
+ 'seopress_titles_archives_author_disable', // ID
1155
+ '',
1156
+ //__("disable","wp-seopress"), // Title
1157
+ [$this, 'seopress_titles_archives_author_disable_callback'], // Callback
1158
+ 'seopress-settings-admin-titles-archives', // Page
1159
+ 'seopress_setting_section_titles_archives' // Section
1160
+ );
1161
+
1162
+ add_settings_field(
1163
+ 'seopress_titles_archives_date_title', // ID
1164
+ '',
1165
+ //__('Title template','wp-seopress'),
1166
+ [$this, 'seopress_titles_archives_date_title_callback'], // Callback
1167
+ 'seopress-settings-admin-titles-archives', // Page
1168
+ 'seopress_setting_section_titles_archives' // Section
1169
+ );
1170
+
1171
+ add_settings_field(
1172
+ 'seopress_titles_archives_date_desc', // ID
1173
+ '',
1174
+ //__('Meta description template','wp-seopress'),
1175
+ [$this, 'seopress_titles_archives_date_desc_callback'], // Callback
1176
+ 'seopress-settings-admin-titles-archives', // Page
1177
+ 'seopress_setting_section_titles_archives' // Section
1178
+ );
1179
+
1180
+ add_settings_field(
1181
+ 'seopress_titles_archives_date_noindex', // ID
1182
+ '',
1183
+ //__("noindex","wp-seopress"), // Title
1184
+ [$this, 'seopress_titles_archives_date_noindex_callback'], // Callback
1185
+ 'seopress-settings-admin-titles-archives', // Page
1186
+ 'seopress_setting_section_titles_archives' // Section
1187
+ );
1188
+
1189
+ add_settings_field(
1190
+ 'seopress_titles_archives_date_disable', // ID
1191
+ '',
1192
+ //__("disable","wp-seopress"), // Title
1193
+ [$this, 'seopress_titles_archives_date_disable_callback'], // Callback
1194
+ 'seopress-settings-admin-titles-archives', // Page
1195
+ 'seopress_setting_section_titles_archives' // Section
1196
+ );
1197
+
1198
+ add_settings_field(
1199
+ 'seopress_titles_archives_search_title', // ID
1200
+ '',
1201
+ //__('Title template','wp-seopress'),
1202
+ [$this, 'seopress_titles_archives_search_title_callback'], // Callback
1203
+ 'seopress-settings-admin-titles-archives', // Page
1204
+ 'seopress_setting_section_titles_archives' // Section
1205
+ );
1206
+
1207
+ add_settings_field(
1208
+ 'seopress_titles_archives_search_desc', // ID
1209
+ '',
1210
+ //__('Meta description template','wp-seopress'),
1211
+ [$this, 'seopress_titles_archives_search_desc_callback'], // Callback
1212
+ 'seopress-settings-admin-titles-archives', // Page
1213
+ 'seopress_setting_section_titles_archives' // Section
1214
+ );
1215
+
1216
+ add_settings_field(
1217
+ 'seopress_titles_archives_search_title_noindex', // ID
1218
+ '',
1219
+ //__('noindex','wp-seopress'),
1220
+ [$this, 'seopress_titles_archives_search_title_noindex_callback'], // Callback
1221
+ 'seopress-settings-admin-titles-archives', // Page
1222
+ 'seopress_setting_section_titles_archives' // Section
1223
+ );
1224
+
1225
+ add_settings_field(
1226
+ 'seopress_titles_archives_404_title', // ID
1227
+ '',
1228
+ //__('Title template','wp-seopress'),
1229
+ [$this, 'seopress_titles_archives_404_title_callback'], // Callback
1230
+ 'seopress-settings-admin-titles-archives', // Page
1231
+ 'seopress_setting_section_titles_archives' // Section
1232
+ );
1233
+
1234
+ add_settings_field(
1235
+ 'seopress_titles_archives_404_desc', // ID
1236
+ '',
1237
+ //__('Meta description template','wp-seopress'),
1238
+ [$this, 'seopress_titles_archives_404_desc_callback'], // Callback
1239
+ 'seopress-settings-admin-titles-archives', // Page
1240
+ 'seopress_setting_section_titles_archives' // Section
1241
+ );
1242
+
1243
+ //Taxonomies SECTION=======================================================================
1244
+ add_settings_section(
1245
+ 'seopress_setting_section_titles_tax', // ID
1246
+ '',
1247
+ //__("Taxonomies","wp-seopress"), // Title
1248
+ [$this, 'print_section_info_tax'], // Callback
1249
+ 'seopress-settings-admin-titles-tax' // Page
1250
+ );
1251
+
1252
+ add_settings_field(
1253
+ 'seopress_titles_tax_titles', // ID
1254
+ '',
1255
+ [$this, 'seopress_titles_tax_titles_callback'], // Callback
1256
+ 'seopress-settings-admin-titles-tax', // Page
1257
+ 'seopress_setting_section_titles_tax' // Section
1258
+ );
1259
+
1260
+ //Advanced SECTION=========================================================================
1261
+ add_settings_section(
1262
+ 'seopress_setting_section_titles_advanced', // ID
1263
+ '',
1264
+ //__("Advanced","wp-seopress"), // Title
1265
+ [$this, 'print_section_info_advanced'], // Callback
1266
+ 'seopress-settings-admin-titles-advanced' // Page
1267
+ );
1268
+
1269
+ add_settings_field(
1270
+ 'seopress_titles_noindex', // ID
1271
+ __('noindex', 'wp-seopress'), // Title
1272
+ [$this, 'seopress_titles_noindex_callback'], // Callback
1273
+ 'seopress-settings-admin-titles-advanced', // Page
1274
+ 'seopress_setting_section_titles_advanced' // Section
1275
+ );
1276
+
1277
+ add_settings_field(
1278
+ 'seopress_titles_nofollow', // ID
1279
+ __('nofollow', 'wp-seopress'), // Title
1280
+ [$this, 'seopress_titles_nofollow_callback'], // Callback
1281
+ 'seopress-settings-admin-titles-advanced', // Page
1282
+ 'seopress_setting_section_titles_advanced' // Section
1283
+ );
1284
+
1285
+ add_settings_field(
1286
+ 'seopress_titles_noodp', // ID
1287
+ __('noodp', 'wp-seopress'), // Title
1288
+ [$this, 'seopress_titles_noodp_callback'], // Callback
1289
+ 'seopress-settings-admin-titles-advanced', // Page
1290
+ 'seopress_setting_section_titles_advanced' // Section
1291
+ );
1292
+
1293
+ add_settings_field(
1294
+ 'seopress_titles_noimageindex', // ID
1295
+ __('noimageindex', 'wp-seopress'), // Title
1296
+ [$this, 'seopress_titles_noimageindex_callback'], // Callback
1297
+ 'seopress-settings-admin-titles-advanced', // Page
1298
+ 'seopress_setting_section_titles_advanced' // Section
1299
+ );
1300
+
1301
+ add_settings_field(
1302
+ 'seopress_titles_noarchive', // ID
1303
+ __('noarchive', 'wp-seopress'), // Title
1304
+ [$this, 'seopress_titles_noarchive_callback'], // Callback
1305
+ 'seopress-settings-admin-titles-advanced', // Page
1306
+ 'seopress_setting_section_titles_advanced' // Section
1307
+ );
1308
+
1309
+ add_settings_field(
1310
+ 'seopress_titles_nosnippet', // ID
1311
+ __('nosnippet', 'wp-seopress'), // Title
1312
+ [$this, 'seopress_titles_nosnippet_callback'], // Callback
1313
+ 'seopress-settings-admin-titles-advanced', // Page
1314
+ 'seopress_setting_section_titles_advanced' // Section
1315
+ );
1316
+
1317
+ add_settings_field(
1318
+ 'seopress_titles_nositelinkssearchbox', // ID
1319
+ __('nositelinkssearchbox', 'wp-seopress'), // Title
1320
+ [$this, 'seopress_titles_nositelinkssearchbox_callback'], // Callback
1321
+ 'seopress-settings-admin-titles-advanced', // Page
1322
+ 'seopress_setting_section_titles_advanced' // Section
1323
+ );
1324
+
1325
+ add_settings_field(
1326
+ 'seopress_titles_paged_rel', // ID
1327
+ __('Indicate paginated content to Google', 'wp-seopress'), // Title
1328
+ [$this, 'seopress_titles_paged_rel_callback'], // Callback
1329
+ 'seopress-settings-admin-titles-advanced', // Page
1330
+ 'seopress_setting_section_titles_advanced' // Section
1331
+ );
1332
+
1333
+ add_settings_field(
1334
+ 'seopress_titles_paged_noindex', // ID
1335
+ __('noindex on paged archives', 'wp-seopress'), // Title
1336
+ [$this, 'seopress_titles_paged_noindex_callback'], // Callback
1337
+ 'seopress-settings-admin-titles-advanced', // Page
1338
+ 'seopress_setting_section_titles_advanced' // Section
1339
+ );
1340
+
1341
+ //XML Sitemap SECTION======================================================================
1342
+ add_settings_section(
1343
+ 'seopress_setting_section_xml_sitemap_general', // ID
1344
+ '',
1345
+ //__("General","wp-seopress"), // Title
1346
+ [$this, 'print_section_info_xml_sitemap_general'], // Callback
1347
+ 'seopress-settings-admin-xml-sitemap-general' // Page
1348
+ );
1349
+
1350
+ add_settings_field(
1351
+ 'seopress_xml_sitemap_general_enable', // ID
1352
+ __('Enable XML Sitemap', 'wp-seopress'), // Title
1353
+ [$this, 'seopress_xml_sitemap_general_enable_callback'], // Callback
1354
+ 'seopress-settings-admin-xml-sitemap-general', // Page
1355
+ 'seopress_setting_section_xml_sitemap_general' // Section
1356
+ );
1357
+
1358
+ add_settings_field(
1359
+ 'seopress_xml_sitemap_img_enable', // ID
1360
+ __('Enable XML Image Sitemaps', 'wp-seopress'), // Title
1361
+ [$this, 'seopress_xml_sitemap_img_enable_callback'], // Callback
1362
+ 'seopress-settings-admin-xml-sitemap-general', // Page
1363
+ 'seopress_setting_section_xml_sitemap_general' // Section
1364
+ );
1365
+
1366
+ if (is_plugin_active('wp-seopress-pro/seopress-pro.php')) {
1367
+ add_settings_field(
1368
+ 'seopress_xml_sitemap_video_enable_callback', // ID
1369
+ __('Enable XML Video Sitemaps', 'wp-seopress'), // Title
1370
+ [$this, 'seopress_xml_sitemap_video_enable_callback'], // Callback
1371
+ 'seopress-settings-admin-xml-sitemap-general', // Page
1372
+ 'seopress_setting_section_xml_sitemap_general' // Section
1373
+ );
1374
+ }
1375
+
1376
+ add_settings_field(
1377
+ 'seopress_xml_sitemap_author_enable', // ID
1378
+ __('Enable Author Sitemap', 'wp-seopress'), // Title
1379
+ [$this, 'seopress_xml_sitemap_author_enable_callback'], // Callback
1380
+ 'seopress-settings-admin-xml-sitemap-general', // Page
1381
+ 'seopress_setting_section_xml_sitemap_general' // Section
1382
+ );
1383
+
1384
+ add_settings_field(
1385
+ 'seopress_xml_sitemap_html_enable', // ID
1386
+ __('Enable HTML Sitemap', 'wp-seopress'), // Title
1387
+ [$this, 'seopress_xml_sitemap_html_enable_callback'], // Callback
1388
+ 'seopress-settings-admin-xml-sitemap-general', // Page
1389
+ 'seopress_setting_section_xml_sitemap_general' // Section
1390
+ );
1391
+
1392
+ add_settings_section(
1393
+ 'seopress_setting_section_xml_sitemap_post_types', // ID
1394
+ '',
1395
+ //__("Post Types","wp-seopress"), // Title
1396
+ [$this, 'print_section_info_xml_sitemap_post_types'], // Callback
1397
+ 'seopress-settings-admin-xml-sitemap-post-types' // Page
1398
+ );
1399
+
1400
+ add_settings_field(
1401
+ 'seopress_xml_sitemap_post_types_list', // ID
1402
+ __('Check to INCLUDE Post Types', 'wp-seopress'), // Title
1403
+ [$this, 'seopress_xml_sitemap_post_types_list_callback'], // Callback
1404
+ 'seopress-settings-admin-xml-sitemap-post-types', // Page
1405
+ 'seopress_setting_section_xml_sitemap_post_types' // Section
1406
+ );
1407
+
1408
+ add_settings_section(
1409
+ 'seopress_setting_section_xml_sitemap_taxonomies', // ID
1410
+ '',
1411
+ //__("Taxonomies","wp-seopress"), // Title
1412
+ [$this, 'print_section_info_xml_sitemap_taxonomies'], // Callback
1413
+ 'seopress-settings-admin-xml-sitemap-taxonomies' // Page
1414
+ );
1415
+
1416
+ add_settings_field(
1417
+ 'seopress_xml_sitemap_taxonomies_list', // ID
1418
+ __('Check to INCLUDE Taxonomies', 'wp-seopress'), // Title
1419
+ [$this, 'seopress_xml_sitemap_taxonomies_list_callback'], // Callback
1420
+ 'seopress-settings-admin-xml-sitemap-taxonomies', // Page
1421
+ 'seopress_setting_section_xml_sitemap_taxonomies' // Section
1422
+ );
1423
+
1424
+ add_settings_section(
1425
+ 'seopress_setting_section_html_sitemap', // ID
1426
+ '',
1427
+ //__("HTML Sitemap","wp-seopress"), // Title
1428
+ [$this, 'print_section_info_html_sitemap'], // Callback
1429
+ 'seopress-settings-admin-html-sitemap' // Page
1430
+ );
1431
+
1432
+ add_settings_field(
1433
+ 'seopress_xml_sitemap_html_mapping', // ID
1434
+ __('Enter a post, page or custom post type ID(s) to display the sitemap', 'wp-seopress'), // Title
1435
+ [$this, 'seopress_xml_sitemap_html_mapping_callback'], // Callback
1436
+ 'seopress-settings-admin-html-sitemap', // Page
1437
+ 'seopress_setting_section_html_sitemap' // Section
1438
+ );
1439
+
1440
+ add_settings_field(
1441
+ 'seopress_xml_sitemap_html_exclude', // ID
1442
+ __('Exclude some Posts, Pages, Custom Post Types or Terms IDs', 'wp-seopress'), // Title
1443
+ [$this, 'seopress_xml_sitemap_html_exclude_callback'], // Callback
1444
+ 'seopress-settings-admin-html-sitemap', // Page
1445
+ 'seopress_setting_section_html_sitemap' // Section
1446
+ );
1447
+
1448
+ add_settings_field(
1449
+ 'seopress_xml_sitemap_html_order', // ID
1450
+ __('Sort order', 'wp-seopress'), // Title
1451
+ [$this, 'seopress_xml_sitemap_html_order_callback'], // Callback
1452
+ 'seopress-settings-admin-html-sitemap', // Page
1453
+ 'seopress_setting_section_html_sitemap' // Section
1454
+ );
1455
+
1456
+ add_settings_field(
1457
+ 'seopress_xml_sitemap_html_orderby', // ID
1458
+ __('Order posts by', 'wp-seopress'), // Title
1459
+ [$this, 'seopress_xml_sitemap_html_orderby_callback'], // Callback
1460
+ 'seopress-settings-admin-html-sitemap', // Page
1461
+ 'seopress_setting_section_html_sitemap' // Section
1462
+ );
1463
+
1464
+ add_settings_field(
1465
+ 'seopress_xml_sitemap_html_date', // ID
1466
+ __('Disable the display of the publication date', 'wp-seopress'), // Title
1467
+ [$this, 'seopress_xml_sitemap_html_date_callback'], // Callback
1468
+ 'seopress-settings-admin-html-sitemap', // Page
1469
+ 'seopress_setting_section_html_sitemap' // Section
1470
+ );
1471
+
1472
+ //Knowledge graph SECTION======================================================================
1473
+ add_settings_section(
1474
+ 'seopress_setting_section_social_knowledge', // ID
1475
+ '',
1476
+ //__("Knowledge graph","wp-seopress"), // Title
1477
+ [$this, 'print_section_info_social_knowledge'], // Callback
1478
+ 'seopress-settings-admin-social-knowledge' // Page
1479
+ );
1480
+
1481
+ add_settings_field(
1482
+ 'seopress_social_knowledge_type', // ID
1483
+ __('Person or organization', 'wp-seopress'), // Title
1484
+ [$this, 'seopress_social_knowledge_type_callback'], // Callback
1485
+ 'seopress-settings-admin-social-knowledge', // Page
1486
+ 'seopress_setting_section_social_knowledge' // Section
1487
+ );
1488
+
1489
+ add_settings_field(
1490
+ 'seopress_social_knowledge_name', // ID
1491
+ __('Your name/organization', 'wp-seopress'), // Title
1492
+ [$this, 'seopress_social_knowledge_name_callback'], // Callback
1493
+ 'seopress-settings-admin-social-knowledge', // Page
1494
+ 'seopress_setting_section_social_knowledge' // Section
1495
+ );
1496
+
1497
+ add_settings_field(
1498
+ 'seopress_social_knowledge_img', // ID
1499
+ __('Your photo/organization logo', 'wp-seopress'), // Title
1500
+ [$this, 'seopress_social_knowledge_img_callback'], // Callback
1501
+ 'seopress-settings-admin-social-knowledge', // Page
1502
+ 'seopress_setting_section_social_knowledge' // Section
1503
+ );
1504
+
1505
+ add_settings_field(
1506
+ 'seopress_social_knowledge_phone', // ID
1507
+ __("Organization's phone number (only for Organizations)", 'wp-seopress'), // Title
1508
+ [$this, 'seopress_social_knowledge_phone_callback'], // Callback
1509
+ 'seopress-settings-admin-social-knowledge', // Page
1510
+ 'seopress_setting_section_social_knowledge' // Section
1511
+ );
1512
+
1513
+ add_settings_field(
1514
+ 'seopress_social_knowledge_contact_type', // ID
1515
+ __('Contact type (only for Organizations)', 'wp-seopress'), // Title
1516
+ [$this, 'seopress_social_knowledge_contact_type_callback'], // Callback
1517
+ 'seopress-settings-admin-social-knowledge', // Page
1518
+ 'seopress_setting_section_social_knowledge' // Section
1519
+ );
1520
+
1521
+ add_settings_field(
1522
+ 'seopress_social_knowledge_contact_option', // ID
1523
+ __('Contact option (only for Organizations)', 'wp-seopress'), // Title
1524
+ [$this, 'seopress_social_knowledge_contact_option_callback'], // Callback
1525
+ 'seopress-settings-admin-social-knowledge', // Page
1526
+ 'seopress_setting_section_social_knowledge' // Section
1527
+ );
1528
+
1529
+ //Social SECTION=====================================================================================
1530
+ add_settings_section(
1531
+ 'seopress_setting_section_social_accounts', // ID
1532
+ '',
1533
+ //__("Social","wp-seopress"), // Title
1534
+ [$this, 'print_section_info_social_accounts'], // Callback
1535
+ 'seopress-settings-admin-social-accounts' // Page
1536
+ );
1537
+
1538
+ add_settings_field(
1539
+ 'seopress_social_accounts_facebook', // ID
1540
+ __('Facebook Page URL', 'wp-seopress'), // Title
1541
+ [$this, 'seopress_social_accounts_facebook_callback'], // Callback
1542
+ 'seopress-settings-admin-social-accounts', // Page
1543
+ 'seopress_setting_section_social_accounts' // Section
1544
+ );
1545
+
1546
+ add_settings_field(
1547
+ 'seopress_social_accounts_twitter', // ID
1548
+ __('Twitter Username', 'wp-seopress'), // Title
1549
+ [$this, 'seopress_social_accounts_twitter_callback'], // Callback
1550
+ 'seopress-settings-admin-social-accounts', // Page
1551
+ 'seopress_setting_section_social_accounts' // Section
1552
+ );
1553
+
1554
+ add_settings_field(
1555
+ 'seopress_social_accounts_pinterest', // ID
1556
+ __('Pinterest URL', 'wp-seopress'), // Title
1557
+ [$this, 'seopress_social_accounts_pinterest_callback'], // Callback
1558
+ 'seopress-settings-admin-social-accounts', // Page
1559
+ 'seopress_setting_section_social_accounts' // Section
1560
+ );
1561
+
1562
+ add_settings_field(
1563
+ 'seopress_social_accounts_instagram', // ID
1564
+ __('Instagram URL', 'wp-seopress'), // Title
1565
+ [$this, 'seopress_social_accounts_instagram_callback'], // Callback
1566
+ 'seopress-settings-admin-social-accounts', // Page
1567
+ 'seopress_setting_section_social_accounts' // Section
1568
+ );
1569
+
1570
+ add_settings_field(
1571
+ 'seopress_social_accounts_youtube', // ID
1572
+ __('YouTube URL', 'wp-seopress'), // Title
1573
+ [$this, 'seopress_social_accounts_youtube_callback'], // Callback
1574
+ 'seopress-settings-admin-social-accounts', // Page
1575
+ 'seopress_setting_section_social_accounts' // Section
1576
+ );
1577
+
1578
+ add_settings_field(
1579
+ 'seopress_social_accounts_linkedin', // ID
1580
+ __('LinkedIn URL', 'wp-seopress'), // Title
1581
+ [$this, 'seopress_social_accounts_linkedin_callback'], // Callback
1582
+ 'seopress-settings-admin-social-accounts', // Page
1583
+ 'seopress_setting_section_social_accounts' // Section
1584
+ );
1585
+
1586
+ //Facebook SECTION=========================================================================
1587
+ add_settings_section(
1588
+ 'seopress_setting_section_social_facebook', // ID
1589
+ '',
1590
+ //__("Facebook","wp-seopress"), // Title
1591
+ [$this, 'print_section_info_social_facebook'], // Callback
1592
+ 'seopress-settings-admin-social-facebook' // Page
1593
+ );
1594
+
1595
+ add_settings_field(
1596
+ 'seopress_social_facebook_og', // ID
1597
+ __('Enable Open Graph Data', 'wp-seopress'), // Title
1598
+ [$this, 'seopress_social_facebook_og_callback'], // Callback
1599
+ 'seopress-settings-admin-social-facebook', // Page
1600
+ 'seopress_setting_section_social_facebook' // Section
1601
+ );
1602
+
1603
+ add_settings_field(
1604
+ 'seopress_social_facebook_img', // ID
1605
+ __('Select a default image', 'wp-seopress'), // Title
1606
+ [$this, 'seopress_social_facebook_img_callback'], // Callback
1607
+ 'seopress-settings-admin-social-facebook', // Page
1608
+ 'seopress_setting_section_social_facebook' // Section
1609
+ );
1610
+
1611
+ add_settings_field(
1612
+ 'seopress_social_facebook_img_default', // ID
1613
+ __('Apply this image to all your og:image tag', 'wp-seopress'), // Title
1614
+ [$this, 'seopress_social_facebook_img_default_callback'], // Callback
1615
+ 'seopress-settings-admin-social-facebook', // Page
1616
+ 'seopress_setting_section_social_facebook' // Section
1617
+ );
1618
+
1619
+ add_settings_field(
1620
+ 'seopress_social_facebook_img_cpt', // ID
1621
+ __('Define custom og:image tag for post type archive pages', 'wp-seopress'), // Title
1622
+ [$this, 'seopress_social_facebook_img_cpt_callback'], // Callback
1623
+ 'seopress-settings-admin-social-facebook', // Page
1624
+ 'seopress_setting_section_social_facebook' // Section
1625
+ );
1626
+
1627
+ add_settings_field(
1628
+ 'seopress_social_facebook_link_ownership_id', // ID
1629
+ __('Facebook Link Ownership ID', 'wp-seopress'), // Title
1630
+ [$this, 'seopress_social_facebook_link_ownership_id_callback'], // Callback
1631
+ 'seopress-settings-admin-social-facebook', // Page
1632
+ 'seopress_setting_section_social_facebook' // Section
1633
+ );
1634
+
1635
+ add_settings_field(
1636
+ 'seopress_social_facebook_admin_id', // ID
1637
+ __('Facebook Admin ID', 'wp-seopress'), // Title
1638
+ [$this, 'seopress_social_facebook_admin_id_callback'], // Callback
1639
+ 'seopress-settings-admin-social-facebook', // Page
1640
+ 'seopress_setting_section_social_facebook' // Section
1641
+ );
1642
+
1643
+ add_settings_field(
1644
+ 'seopress_social_facebook_app_id', // ID
1645
+ __('Facebook App ID', 'wp-seopress'), // Title
1646
+ [$this, 'seopress_social_facebook_app_id_callback'], // Callback
1647
+ 'seopress-settings-admin-social-facebook', // Page
1648
+ 'seopress_setting_section_social_facebook' // Section
1649
+ );
1650
+
1651
+ //Twitter SECTION==========================================================================
1652
+ add_settings_section(
1653
+ 'seopress_setting_section_social_twitter', // ID
1654
+ '',
1655
+ //__("Twitter","wp-seopress"), // Title
1656
+ [$this, 'print_section_info_social_twitter'], // Callback
1657
+ 'seopress-settings-admin-social-twitter' // Page
1658
+ );
1659
+
1660
+ add_settings_field(
1661
+ 'seopress_social_twitter_card', // ID
1662
+ __('Enable Twitter Card', 'wp-seopress'), // Title
1663
+ [$this, 'seopress_social_twitter_card_callback'], // Callback
1664
+ 'seopress-settings-admin-social-twitter', // Page
1665
+ 'seopress_setting_section_social_twitter' // Section
1666
+ );
1667
+
1668
+ add_settings_field(
1669
+ 'seopress_social_twitter_card_og', // ID
1670
+ __('Use Open Graph if no Twitter Card is filled', 'wp-seopress'), // Title
1671
+ [$this, 'seopress_social_twitter_card_og_callback'], // Callback
1672
+ 'seopress-settings-admin-social-twitter', // Page
1673
+ 'seopress_setting_section_social_twitter' // Section
1674
+ );
1675
+
1676
+ add_settings_field(
1677
+ 'seopress_social_twitter_card_img', // ID
1678
+ __('Default Twitter Image', 'wp-seopress'), // Title
1679
+ [$this, 'seopress_social_twitter_card_img_callback'], // Callback
1680
+ 'seopress-settings-admin-social-twitter', // Page
1681
+ 'seopress_setting_section_social_twitter' // Section
1682
+ );
1683
+
1684
+ add_settings_field(
1685
+ 'seopress_social_twitter_card_img_size', // ID
1686
+ __('Image size for Twitter Summary card', 'wp-seopress'), // Title
1687
+ [$this, 'seopress_social_twitter_card_img_size_callback'], // Callback
1688
+ 'seopress-settings-admin-social-twitter', // Page
1689
+ 'seopress_setting_section_social_twitter' // Section
1690
+ );
1691
+
1692
+ //Google Analytics Enable SECTION==========================================================
1693
+ add_settings_section(
1694
+ 'seopress_setting_section_google_analytics_enable', // ID
1695
+ '',
1696
+ //__("Google Analytics","wp-seopress"), // Title
1697
+ [$this, 'print_section_info_google_analytics_enable'], // Callback
1698
+ 'seopress-settings-admin-google-analytics-enable' // Page
1699
+ );
1700
+
1701
+ add_settings_field(
1702
+ 'seopress_google_analytics_enable', // ID
1703
+ __('Enable Google Analytics tracking', 'wp-seopress'), // Title
1704
+ [$this, 'seopress_google_analytics_enable_callback'], // Callback
1705
+ 'seopress-settings-admin-google-analytics-enable', // Page
1706
+ 'seopress_setting_section_google_analytics_enable' // Section
1707
+ );
1708
+
1709
+ add_settings_field(
1710
+ 'seopress_google_analytics_ua', // ID
1711
+ __('Enter your tracking ID', 'wp-seopress'), // Title
1712
+ [$this, 'seopress_google_analytics_ua_callback'], // Callback
1713
+ 'seopress-settings-admin-google-analytics-enable', // Page
1714
+ 'seopress_setting_section_google_analytics_enable' // Section
1715
+ );
1716
+
1717
+ add_settings_field(
1718
+ 'seopress_google_analytics_ga4', // ID
1719
+ __('Enter your measurement ID (GA4)', 'wp-seopress'), // Title
1720
+ [$this, 'seopress_google_analytics_ga4_callback'], // Callback
1721
+ 'seopress-settings-admin-google-analytics-enable', // Page
1722
+ 'seopress_setting_section_google_analytics_enable' // Section
1723
+ );
1724
+
1725
+ add_settings_field(
1726
+ 'seopress_google_analytics_roles', // ID
1727
+ __('Exclude user roles from tracking (Google Analytics and Matomo)', 'wp-seopress'), // Title
1728
+ [$this, 'seopress_google_analytics_roles_callback'], // Callback
1729
+ 'seopress-settings-admin-google-analytics-enable', // Page
1730
+ 'seopress_setting_section_google_analytics_enable' // Section
1731
+ );
1732
+
1733
+ //Cookie bar / GDPR SECTION================================================================
1734
+ add_settings_section(
1735
+ 'seopress_setting_section_google_analytics_gdpr', // ID
1736
+ '',
1737
+ //__("Google Analytics","wp-seopress"), // Title
1738
+ [$this, 'print_section_info_google_analytics_gdpr'], // Callback
1739
+ 'seopress-settings-admin-google-analytics-gdpr' // Page
1740
+ );
1741
+
1742
+ add_settings_field(
1743
+ 'seopress_google_analytics_disable', // ID
1744
+ __('Analytics tracking opt-in', 'wp-seopress'), // Title
1745
+ [$this, 'seopress_google_analytics_disable_callback'], // Callback
1746
+ 'seopress-settings-admin-google-analytics-gdpr', // Page
1747
+ 'seopress_setting_section_google_analytics_gdpr' // Section
1748
+ );
1749
+
1750
+ add_settings_field(
1751
+ 'seopress_google_analytics_half_disable', // ID
1752
+ '', // Title
1753
+ [$this, 'seopress_google_analytics_half_disable_callback'], // Callback
1754
+ 'seopress-settings-admin-google-analytics-gdpr', // Page
1755
+ 'seopress_setting_section_google_analytics_gdpr' // Section
1756
+ );
1757
+
1758
+ add_settings_field(
1759
+ 'seopress_google_analytics_opt_out_msg', // ID
1760
+ __('Consent message for user tracking', 'wp-seopress'), // Title
1761
+ [$this, 'seopress_google_analytics_opt_out_msg_callback'], // Callback
1762
+ 'seopress-settings-admin-google-analytics-gdpr', // Page
1763
+ 'seopress_setting_section_google_analytics_gdpr' // Section
1764
+ );
1765
+
1766
+ add_settings_field(
1767
+ 'seopress_google_analytics_opt_out_msg_ok', // ID
1768
+ __('Accept button for user tracking', 'wp-seopress'), // Title
1769
+ [$this, 'seopress_google_analytics_opt_out_msg_ok_callback'], // Callback
1770
+ 'seopress-settings-admin-google-analytics-gdpr', // Page
1771
+ 'seopress_setting_section_google_analytics_gdpr' // Section
1772
+ );
1773
+
1774
+ add_settings_field(
1775
+ 'seopress_google_analytics_opt_out_msg_close', // ID
1776
+ __('Close button', 'wp-seopress'), // Title
1777
+ [$this, 'seopress_google_analytics_opt_out_msg_close_callback'], // Callback
1778
+ 'seopress-settings-admin-google-analytics-gdpr', // Page
1779
+ 'seopress_setting_section_google_analytics_gdpr' // Section
1780
+ );
1781
+
1782
+ add_settings_field(
1783
+ 'seopress_google_analytics_cb_exp_date', // ID
1784
+ __('User consent cookie expiration date', 'wp-seopress'), // Title
1785
+ [$this, 'seopress_google_analytics_cb_exp_date_callback'], // Callback
1786
+ 'seopress-settings-admin-google-analytics-gdpr', // Page
1787
+ 'seopress_setting_section_google_analytics_gdpr' // Section
1788
+ );
1789
+
1790
+ add_settings_field(
1791
+ 'seopress_google_analytics_cb_pos', // ID
1792
+ __('Cookie bar position', 'wp-seopress'), // Title
1793
+ [$this, 'seopress_google_analytics_cb_pos_callback'], // Callback
1794
+ 'seopress-settings-admin-google-analytics-gdpr', // Page
1795
+ 'seopress_setting_section_google_analytics_gdpr' // Section
1796
+ );
1797
+
1798
+ add_settings_field(
1799
+ 'seopress_google_analytics_cb_txt_align', // ID
1800
+ __('Text alignment', 'wp-seopress'), // Title
1801
+ [$this, 'seopress_google_analytics_cb_txt_align_callback'], // Callback
1802
+ 'seopress-settings-admin-google-analytics-gdpr', // Page
1803
+ 'seopress_setting_section_google_analytics_gdpr' // Section
1804
+ );
1805
+
1806
+ add_settings_field(
1807
+ 'seopress_google_analytics_cb_width', // ID
1808
+ __('Cookie bar width', 'wp-seopress'), // Title
1809
+ [$this, 'seopress_google_analytics_cb_width_callback'], // Callback
1810
+ 'seopress-settings-admin-google-analytics-gdpr', // Page
1811
+ 'seopress_setting_section_google_analytics_gdpr' // Section
1812
+ );
1813
+
1814
+ add_settings_field(
1815
+ 'seopress_google_analytics_cb_backdrop', // ID
1816
+ __('Enable backdrop', 'wp-seopress'), // Title
1817
+ [$this, 'seopress_google_analytics_cb_backdrop_callback'], // Callback
1818
+ 'seopress-settings-admin-google-analytics-gdpr', // Page
1819
+ 'seopress_setting_section_google_analytics_gdpr' // Section
1820
+ );
1821
+
1822
+ add_settings_field(
1823
+ 'seopress_google_analytics_cb_backdrop_bg', // ID
1824
+ __('Backdrop background color', 'wp-seopress'), // Title
1825
+ [$this, 'seopress_google_analytics_cb_backdrop_bg_callback'], // Callback
1826
+ 'seopress-settings-admin-google-analytics-gdpr', // Page
1827
+ 'seopress_setting_section_google_analytics_gdpr' // Section
1828
+ );
1829
+
1830
+ add_settings_field(
1831
+ 'seopress_google_analytics_cb_bg', // ID
1832
+ __('Cookie bar background color', 'wp-seopress'), // Title
1833
+ [$this, 'seopress_google_analytics_cb_bg_callback'], // Callback
1834
+ 'seopress-settings-admin-google-analytics-gdpr', // Page
1835
+ 'seopress_setting_section_google_analytics_gdpr' // Section
1836
+ );
1837
+
1838
+ add_settings_field(
1839
+ 'seopress_google_analytics_cb_txt_col', // ID
1840
+ __('Cookie bar text color', 'wp-seopress'), // Title
1841
+ [$this, 'seopress_google_analytics_cb_txt_col_callback'], // Callback
1842
+ 'seopress-settings-admin-google-analytics-gdpr', // Page
1843
+ 'seopress_setting_section_google_analytics_gdpr' // Section
1844
+ );
1845
+
1846
+ add_settings_field(
1847
+ 'seopress_google_analytics_cb_lk_col', // ID
1848
+ __('Cookie bar link color', 'wp-seopress'), // Title
1849
+ [$this, 'seopress_google_analytics_cb_lk_col_callback'], // Callback
1850
+ 'seopress-settings-admin-google-analytics-gdpr', // Page
1851
+ 'seopress_setting_section_google_analytics_gdpr' // Section
1852
+ );
1853
+
1854
+ add_settings_field(
1855
+ 'seopress_google_analytics_cb_btn_bg', // ID
1856
+ __('Cookie bar button background color', 'wp-seopress'), // Title
1857
+ [$this, 'seopress_google_analytics_cb_btn_bg_callback'], // Callback
1858
+ 'seopress-settings-admin-google-analytics-gdpr', // Page
1859
+ 'seopress_setting_section_google_analytics_gdpr' // Section
1860
+ );
1861
+
1862
+ add_settings_field(
1863
+ 'seopress_google_analytics_cb_btn_col', // ID
1864
+ __('Cookie bar button color', 'wp-seopress'), // Title
1865
+ [$this, 'seopress_google_analytics_cb_btn_col_callback'], // Callback
1866
+ 'seopress-settings-admin-google-analytics-gdpr', // Page
1867
+ 'seopress_setting_section_google_analytics_gdpr' // Section
1868
+ );
1869
+
1870
+ add_settings_field(
1871
+ 'seopress_google_analytics_cb_btn_bg_hov', // ID
1872
+ __('Cookie bar button hover background color', 'wp-seopress'), // Title
1873
+ [$this, 'seopress_google_analytics_cb_btn_bg_hov_callback'], // Callback
1874
+ 'seopress-settings-admin-google-analytics-gdpr', // Page
1875
+ 'seopress_setting_section_google_analytics_gdpr' // Section
1876
+ );
1877
+
1878
+ add_settings_field(
1879
+ 'seopress_google_analytics_cb_btn_col_hov', // ID
1880
+ __('Cookie bar button hover color', 'wp-seopress'), // Title
1881
+ [$this, 'seopress_google_analytics_cb_btn_col_hov_callback'], // Callback
1882
+ 'seopress-settings-admin-google-analytics-gdpr', // Page
1883
+ 'seopress_setting_section_google_analytics_gdpr' // Section
1884
+ );
1885
+
1886
+ add_settings_field(
1887
+ 'seopress_google_analytics_cb_btn_sec_bg', // ID
1888
+ __('Cookie bar secondary button background color', 'wp-seopress'), // Title
1889
+ [$this, 'seopress_google_analytics_cb_btn_sec_bg_callback'], // Callback
1890
+ 'seopress-settings-admin-google-analytics-gdpr', // Page
1891
+ 'seopress_setting_section_google_analytics_gdpr' // Section
1892
+ );
1893
+
1894
+ add_settings_field(
1895
+ 'seopress_google_analytics_cb_btn_sec_col', // ID
1896
+ __('Cookie bar secondary button color', 'wp-seopress'), // Title
1897
+ [$this, 'seopress_google_analytics_cb_btn_sec_col_callback'], // Callback
1898
+ 'seopress-settings-admin-google-analytics-gdpr', // Page
1899
+ 'seopress_setting_section_google_analytics_gdpr' // Section
1900
+ );
1901
+
1902
+ add_settings_field(
1903
+ 'seopress_google_analytics_cb_btn_sec_bg_hov', // ID
1904
+ __('Cookie bar secondary button hover background color', 'wp-seopress'), // Title
1905
+ [$this, 'seopress_google_analytics_cb_btn_sec_bg_hov_callback'], // Callback
1906
+ 'seopress-settings-admin-google-analytics-gdpr', // Page
1907
+ 'seopress_setting_section_google_analytics_gdpr' // Section
1908
+ );
1909
+
1910
+ add_settings_field(
1911
+ 'seopress_google_analytics_cb_btn_sec_col_hov', // ID
1912
+ __('Cookie bar secondary button hover color', 'wp-seopress'), // Title
1913
+ [$this, 'seopress_google_analytics_cb_btn_sec_col_hov_callback'], // Callback
1914
+ 'seopress-settings-admin-google-analytics-gdpr', // Page
1915
+ 'seopress_setting_section_google_analytics_gdpr' // Section
1916
+ );
1917
+
1918
+ //Google Analytics Tracking SECTION========================================================
1919
+
1920
+ add_settings_section(
1921
+ 'seopress_setting_section_google_analytics_features', // ID
1922
+ '',
1923
+ //__("Google Analytics","wp-seopress"), // Title
1924
+ [$this, 'print_section_info_google_analytics_features'], // Callback
1925
+ 'seopress-settings-admin-google-analytics-features' // Page
1926
+ );
1927
+
1928
+ add_settings_field(
1929
+ 'seopress_google_analytics_optimize', // ID
1930
+ __('Enable Google Optimize', 'wp-seopress'), // Title
1931
+ [$this, 'seopress_google_analytics_optimize_callback'], // Callback
1932
+ 'seopress-settings-admin-google-analytics-features', // Page
1933
+ 'seopress_setting_section_google_analytics_features' // Section
1934
+ );
1935
+
1936
+ add_settings_field(
1937
+ 'seopress_google_analytics_ads', // ID
1938
+ __('Enable Google Ads', 'wp-seopress'), // Title
1939
+ [$this, 'seopress_google_analytics_ads_callback'], // Callback
1940
+ 'seopress-settings-admin-google-analytics-features', // Page
1941
+ 'seopress_setting_section_google_analytics_features' // Section
1942
+ );
1943
+
1944
+ add_settings_field(
1945
+ 'seopress_google_analytics_other_tracking', // ID
1946
+ __('Add an additional tracking code (like Facebook Pixel, Hotjar...)', 'wp-seopress'), // Title
1947
+ [$this, 'seopress_google_analytics_other_tracking_callback'], // Callback
1948
+ 'seopress-settings-admin-google-analytics-features', // Page
1949
+ 'seopress_setting_section_google_analytics_features' // Section
1950
+ );
1951
+
1952
+ add_settings_field(
1953
+ 'seopress_google_analytics_other_tracking_body', // ID
1954
+ __('[BODY] Add an additional tracking code (like Google Tag Manager...)', 'wp-seopress'), // Title
1955
+ [$this, 'seopress_google_analytics_other_tracking_body_callback'], // Callback
1956
+ 'seopress-settings-admin-google-analytics-features', // Page
1957
+ 'seopress_setting_section_google_analytics_features' // Section
1958
+ );
1959
+
1960
+ add_settings_field(
1961
+ 'seopress_google_analytics_other_tracking_footer', // ID
1962
+ __('[BODY (FOOTER)] Add an additional tracking code (like Google Tag Manager...)', 'wp-seopress'), // Title
1963
+ [$this, 'seopress_google_analytics_other_tracking_footer_callback'], // Callback
1964
+ 'seopress-settings-admin-google-analytics-features', // Page
1965
+ 'seopress_setting_section_google_analytics_features' // Section
1966
+ );
1967
+
1968
+ add_settings_field(
1969
+ 'seopress_google_analytics_remarketing', // ID
1970
+ __('Enable remarketing, demographics, and interests reporting', 'wp-seopress'), // Title
1971
+ [$this, 'seopress_google_analytics_remarketing_callback'], // Callback
1972
+ 'seopress-settings-admin-google-analytics-features', // Page
1973
+ 'seopress_setting_section_google_analytics_features' // Section
1974
+ );
1975
+
1976
+ add_settings_field(
1977
+ 'seopress_google_analytics_ip_anonymization', // ID
1978
+ __('Enable IP Anonymization', 'wp-seopress'), // Title
1979
+ [$this, 'seopress_google_analytics_ip_anonymization_callback'], // Callback
1980
+ 'seopress-settings-admin-google-analytics-features', // Page
1981
+ 'seopress_setting_section_google_analytics_features' // Section
1982
+ );
1983
+
1984
+ add_settings_field(
1985
+ 'seopress_google_analytics_link_attribution', // ID
1986
+ __('Enhanced Link Attribution', 'wp-seopress'), // Title
1987
+ [$this, 'seopress_google_analytics_link_attribution_callback'], // Callback
1988
+ 'seopress-settings-admin-google-analytics-features', // Page
1989
+ 'seopress_setting_section_google_analytics_features' // Section
1990
+ );
1991
+
1992
+ add_settings_field(
1993
+ 'seopress_google_analytics_cross_domain_enable', // ID
1994
+ __('Enable cross-domain tracking', 'wp-seopress'), // Title
1995
+ [$this, 'seopress_google_analytics_cross_enable_callback'], // Callback
1996
+ 'seopress-settings-admin-google-analytics-features', // Page
1997
+ 'seopress_setting_section_google_analytics_features' // Section
1998
+ );
1999
+
2000
+ add_settings_field(
2001
+ 'seopress_google_analytics_cross_domain', // ID
2002
+ __('Cross domains', 'wp-seopress'), // Title
2003
+ [$this, 'seopress_google_analytics_cross_domain_callback'], // Callback
2004
+ 'seopress-settings-admin-google-analytics-features', // Page
2005
+ 'seopress_setting_section_google_analytics_features' // Section
2006
+ );
2007
+
2008
+ //Google Analytics Events SECTION==========================================================
2009
+
2010
+ add_settings_section(
2011
+ 'seopress_setting_section_google_analytics_events', // ID
2012
+ '',
2013
+ //__("Google Analytics","wp-seopress"), // Title
2014
+ [$this, 'print_section_info_google_analytics_events'], // Callback
2015
+ 'seopress-settings-admin-google-analytics-events' // Page
2016
+ );
2017
+
2018
+ add_settings_field(
2019
+ 'seopress_google_analytics_link_tracking_enable', // ID
2020
+ __('Enable external links tracking', 'wp-seopress'), // Title
2021
+ [$this, 'seopress_google_analytics_link_tracking_enable_callback'], // Callback
2022
+ 'seopress-settings-admin-google-analytics-events', // Page
2023
+ 'seopress_setting_section_google_analytics_events' // Section
2024
+ );
2025
+
2026
+ add_settings_field(
2027
+ 'seopress_google_analytics_download_tracking_enable', // ID
2028
+ __('Enable downloads tracking (eg: PDF, XLSX, DOCX...)', 'wp-seopress'), // Title
2029
+ [$this, 'seopress_google_analytics_download_tracking_enable_callback'], // Callback
2030
+ 'seopress-settings-admin-google-analytics-events', // Page
2031
+ 'seopress_setting_section_google_analytics_events' // Section
2032
+ );
2033
+
2034
+ add_settings_field(
2035
+ 'seopress_google_analytics_download_tracking', // ID
2036
+ __("Track downloads' clicks", 'wp-seopress'), // Title
2037
+ [$this, 'seopress_google_analytics_download_tracking_callback'], // Callback
2038
+ 'seopress-settings-admin-google-analytics-events', // Page
2039
+ 'seopress_setting_section_google_analytics_events' // Section
2040
+ );
2041
+
2042
+ add_settings_field(
2043
+ 'seopress_google_analytics_affiliate_tracking_enable', // ID
2044
+ __('Enable affiliate/outbound links tracking (eg: aff, go, out, recommends)', 'wp-seopress'), // Title
2045
+ [$this, 'seopress_google_analytics_affiliate_tracking_enable_callback'], // Callback
2046
+ 'seopress-settings-admin-google-analytics-events', // Page
2047
+ 'seopress_setting_section_google_analytics_events' // Section
2048
+ );
2049
+
2050
+ add_settings_field(
2051
+ 'seopress_google_analytics_affiliate_tracking', // ID
2052
+ __('Track affiliate/outbound links', 'wp-seopress'), // Title
2053
+ [$this, 'seopress_google_analytics_affiliate_tracking_callback'], // Callback
2054
+ 'seopress-settings-admin-google-analytics-events', // Page
2055
+ 'seopress_setting_section_google_analytics_events' // Section
2056
+ );
2057
+
2058
+ //Google Analytics Custom Dimensions SECTION===============================================
2059
+
2060
+ add_settings_section(
2061
+ 'seopress_setting_section_google_analytics_custom_dimensions', // ID
2062
+ '',
2063
+ //__("Google Analytics","wp-seopress"), // Title
2064
+ [$this, 'print_section_info_google_analytics_custom_dimensions'], // Callback
2065
+ 'seopress-settings-admin-google-analytics-custom-dimensions' // Page
2066
+ );
2067
+
2068
+ add_settings_field(
2069
+ 'seopress_google_analytics_cd_author', // ID
2070
+ __('Track Authors', 'wp-seopress'), // Title
2071
+ [$this, 'seopress_google_analytics_cd_author_callback'], // Callback
2072
+ 'seopress-settings-admin-google-analytics-custom-dimensions', // Page
2073
+ 'seopress_setting_section_google_analytics_custom_dimensions' // Section
2074
+ );
2075
+
2076
+ add_settings_field(
2077
+ 'seopress_google_analytics_cd_category', // ID
2078
+ __('Track Categories', 'wp-seopress'), // Title
2079
+ [$this, 'seopress_google_analytics_cd_category_callback'], // Callback
2080
+ 'seopress-settings-admin-google-analytics-custom-dimensions', // Page
2081
+ 'seopress_setting_section_google_analytics_custom_dimensions' // Section
2082
+ );
2083
+
2084
+ add_settings_field(
2085
+ 'seopress_google_analytics_cd_tag', // ID
2086
+ __('Track Tags', 'wp-seopress'), // Title
2087
+ [$this, 'seopress_google_analytics_cd_tag_callback'], // Callback
2088
+ 'seopress-settings-admin-google-analytics-custom-dimensions', // Page
2089
+ 'seopress_setting_section_google_analytics_custom_dimensions' // Section
2090
+ );
2091
+
2092
+ add_settings_field(
2093
+ 'seopress_google_analytics_cd_post_type', // ID
2094
+ __('Track Post Types', 'wp-seopress'), // Title
2095
+ [$this, 'seopress_google_analytics_cd_post_type_callback'], // Callback
2096
+ 'seopress-settings-admin-google-analytics-custom-dimensions', // Page
2097
+ 'seopress_setting_section_google_analytics_custom_dimensions' // Section
2098
+ );
2099
+
2100
+ add_settings_field(
2101
+ 'seopress_google_analytics_cd_logged_in_user', // ID
2102
+ __('Track Logged In Users', 'wp-seopress'), // Title
2103
+ [$this, 'seopress_google_analytics_cd_logged_in_user_callback'], // Callback
2104
+ 'seopress-settings-admin-google-analytics-custom-dimensions', // Page
2105
+ 'seopress_setting_section_google_analytics_custom_dimensions' // Section
2106
+ );
2107
+
2108
+ //Matomo SECTION===========================================================================
2109
+ add_settings_section(
2110
+ 'seopress_setting_section_google_analytics_matomo', // ID
2111
+ '',
2112
+ //__("Google Analytics","wp-seopress"), // Title
2113
+ [$this, 'print_section_info_google_analytics_matomo'], // Callback
2114
+ 'seopress-settings-admin-google-analytics-matomo' // Page
2115
+ );
2116
+
2117
+ add_settings_field(
2118
+ 'seopress_google_analytics_matomo_enable', // ID
2119
+ __('Enable Matomo tracking', 'wp-seopress'), // Title
2120
+ [$this, 'seopress_google_analytics_matomo_enable_callback'], // Callback
2121
+ 'seopress-settings-admin-google-analytics-matomo', // Page
2122
+ 'seopress_setting_section_google_analytics_matomo' // Section
2123
+ );
2124
+
2125
+ add_settings_field(
2126
+ 'seopress_google_analytics_matomo_id', // ID
2127
+ __('Enter your tracking ID', 'wp-seopress'), // Title
2128
+ [$this, 'seopress_google_analytics_matomo_id_callback'], // Callback
2129
+ 'seopress-settings-admin-google-analytics-matomo', // Page
2130
+ 'seopress_setting_section_google_analytics_matomo' // Section
2131
+ );
2132
+
2133
+ add_settings_field(
2134
+ 'seopress_google_analytics_matomo_site_id', // ID
2135
+ __('Enter your site ID', 'wp-seopress'), // Title
2136
+ [$this, 'seopress_google_analytics_matomo_site_id_callback'], // Callback
2137
+ 'seopress-settings-admin-google-analytics-matomo', // Page
2138
+ 'seopress_setting_section_google_analytics_matomo' // Section
2139
+ );
2140
+
2141
+ add_settings_field(
2142
+ 'seopress_google_analytics_matomo_subdomains', // ID
2143
+ __('Track visitors across all subdomains', 'wp-seopress'), // Title
2144
+ [$this, 'seopress_google_analytics_matomo_subdomains_callback'], // Callback
2145
+ 'seopress-settings-admin-google-analytics-matomo', // Page
2146
+ 'seopress_setting_section_google_analytics_matomo' // Section
2147
+ );
2148
+
2149
+ add_settings_field(
2150
+ 'seopress_google_analytics_matomo_site_domain', // ID
2151
+ __('Prepend the site domain', 'wp-seopress'), // Title
2152
+ [$this, 'seopress_google_analytics_matomo_site_domain_callback'], // Callback
2153
+ 'seopress-settings-admin-google-analytics-matomo', // Page
2154
+ 'seopress_setting_section_google_analytics_matomo' // Section
2155
+ );
2156
+
2157
+ add_settings_field(
2158
+ 'seopress_google_analytics_matomo_no_js', // ID
2159
+ __('Track users with JavaScript disabled', 'wp-seopress'), // Title
2160
+ [$this, 'seopress_google_analytics_matomo_no_js_callback'], // Callback
2161
+ 'seopress-settings-admin-google-analytics-matomo', // Page
2162
+ 'seopress_setting_section_google_analytics_matomo' // Section
2163
+ );
2164
+
2165
+ add_settings_field(
2166
+ 'seopress_google_analytics_matomo_cross_domain', // ID
2167
+ __('Enables cross domain linking', 'wp-seopress'), // Title
2168
+ [$this, 'seopress_google_analytics_matomo_cross_domain_callback'], // Callback
2169
+ 'seopress-settings-admin-google-analytics-matomo', // Page
2170
+ 'seopress_setting_section_google_analytics_matomo' // Section
2171
+ );
2172
+
2173
+ add_settings_field(
2174
+ 'seopress_google_analytics_matomo_cross_domain_sites', // ID
2175
+ __('Cross domain', 'wp-seopress'), // Title
2176
+ [$this, 'seopress_google_analytics_matomo_cross_domain_sites_callback'], // Callback
2177
+ 'seopress-settings-admin-google-analytics-matomo', // Page
2178
+ 'seopress_setting_section_google_analytics_matomo' // Section
2179
+ );
2180
+ add_settings_field(
2181
+ 'seopress_google_analytics_matomo_dnt', // ID
2182
+ __('Enable DoNotTrack detection', 'wp-seopress'), // Title
2183
+ [$this, 'seopress_google_analytics_matomo_dnt_callback'], // Callback
2184
+ 'seopress-settings-admin-google-analytics-matomo', // Page
2185
+ 'seopress_setting_section_google_analytics_matomo' // Section
2186
+ );
2187
+
2188
+ add_settings_field(
2189
+ 'seopress_google_analytics_matomo_no_cookies', // ID
2190
+ __('Disable all tracking cookies', 'wp-seopress'), // Title
2191
+ [$this, 'seopress_google_analytics_matomo_no_cookies_callback'], // Callback
2192
+ 'seopress-settings-admin-google-analytics-matomo', // Page
2193
+ 'seopress_setting_section_google_analytics_matomo' // Section
2194
+ );
2195
+
2196
+ add_settings_field(
2197
+ 'seopress_google_analytics_matomo_link_tracking', // ID
2198
+ __('Download & Outlink tracking', 'wp-seopress'), // Title
2199
+ [$this, 'seopress_google_analytics_matomo_link_tracking_callback'], // Callback
2200
+ 'seopress-settings-admin-google-analytics-matomo', // Page
2201
+ 'seopress_setting_section_google_analytics_matomo' // Section
2202
+ );
2203
+
2204
+ add_settings_field(
2205
+ 'seopress_google_analytics_matomo_no_heatmaps', // ID
2206
+ __('Disable all heatmaps and session recordings', 'wp-seopress'), // Title
2207
+ [$this, 'seopress_google_analytics_matomo_no_heatmaps_callback'], // Callback
2208
+ 'seopress-settings-admin-google-analytics-matomo', // Page
2209
+ 'seopress_setting_section_google_analytics_matomo' // Section
2210
+ );
2211
+
2212
+ //Advanced SECTION=========================================================================
2213
+ add_settings_section(
2214
+ 'seopress_setting_section_advanced_advanced', // ID
2215
+ '',
2216
+ //__("Advanced","wp-seopress"), // Title
2217
+ [$this, 'print_section_info_advanced_advanced'], // Callback
2218
+ 'seopress-settings-admin-advanced-advanced' // Page
2219
+ );
2220
+
2221
+ add_settings_field(
2222
+ 'seopress_advanced_advanced_attachments', // ID
2223
+ __('Redirect attachment pages to post parent', 'wp-seopress'), // Title
2224
+ [$this, 'seopress_advanced_advanced_attachments_callback'], // Callback
2225
+ 'seopress-settings-admin-advanced-advanced', // Page
2226
+ 'seopress_setting_section_advanced_advanced' // Section
2227
+ );
2228
+
2229
+ add_settings_field(
2230
+ 'seopress_advanced_advanced_attachments_file', // ID
2231
+ __('Redirect attachment pages to their file URL', 'wp-seopress'), // Title
2232
+ [$this, 'seopress_advanced_advanced_attachments_file_callback'], // Callback
2233
+ 'seopress-settings-admin-advanced-advanced', // Page
2234
+ 'seopress_setting_section_advanced_advanced' // Section
2235
+ );
2236
+
2237
+ add_settings_field(
2238
+ 'seopress_advanced_advanced_replytocom', // ID
2239
+ __('Remove ?replytocom link to avoid duplicate content', 'wp-seopress'), // Title
2240
+ [$this, 'seopress_advanced_advanced_replytocom_callback'], // Callback
2241
+ 'seopress-settings-admin-advanced-advanced', // Page
2242
+ 'seopress_setting_section_advanced_advanced' // Section
2243
+ );
2244
+
2245
+ add_settings_field(
2246
+ 'seopress_advanced_advanced_image_auto_title_editor', // ID
2247
+ __('Automatically set the image Title', 'wp-seopress'), // Title
2248
+ [$this, 'seopress_advanced_advanced_image_auto_title_editor_callback'], // Callback
2249
+ 'seopress-settings-admin-advanced-advanced', // Page
2250
+ 'seopress_setting_section_advanced_advanced' // Section
2251
+ );
2252
+
2253
+ add_settings_field(
2254
+ 'seopress_advanced_advanced_image_auto_alt_editor', // ID
2255
+ __('Automatically set the image Alt text', 'wp-seopress'), // Title
2256
+ [$this, 'seopress_advanced_advanced_image_auto_alt_editor_callback'], // Callback
2257
+ 'seopress-settings-admin-advanced-advanced', // Page
2258
+ 'seopress_setting_section_advanced_advanced' // Section
2259
+ );
2260
+
2261
+ add_settings_field(
2262
+ 'seopress_advanced_advanced_image_auto_alt_target_kw', // ID
2263
+ __('Automatically set the image Alt text from target keywords', 'wp-seopress'), // Title
2264
+ [$this, 'seopress_advanced_advanced_image_auto_alt_target_kw_callback'], // Callback
2265
+ 'seopress-settings-admin-advanced-advanced', // Page
2266
+ 'seopress_setting_section_advanced_advanced' // Section
2267
+ );
2268
+
2269
+ add_settings_field(
2270
+ 'seopress_advanced_advanced_image_auto_caption_editor', // ID
2271
+ __('Automatically set the image Caption', 'wp-seopress'), // Title
2272
+ [$this, 'seopress_advanced_advanced_image_auto_caption_editor_callback'], // Callback
2273
+ 'seopress-settings-admin-advanced-advanced', // Page
2274
+ 'seopress_setting_section_advanced_advanced' // Section
2275
+ );
2276
+
2277
+ add_settings_field(
2278
+ 'seopress_advanced_advanced_image_auto_desc_editor', // ID
2279
+ __('Automatically set the image Description', 'wp-seopress'), // Title
2280
+ [$this, 'seopress_advanced_advanced_image_auto_desc_editor_callback'], // Callback
2281
+ 'seopress-settings-admin-advanced-advanced', // Page
2282
+ 'seopress_setting_section_advanced_advanced' // Section
2283
+ );
2284
+
2285
+ add_settings_field(
2286
+ 'seopress_advanced_advanced_tax_desc_editor', // ID
2287
+ __('Add WP Editor to taxonomy description textarea', 'wp-seopress'), // Title
2288
+ [$this, 'seopress_advanced_advanced_tax_desc_editor_callback'], // Callback
2289
+ 'seopress-settings-admin-advanced-advanced', // Page
2290
+ 'seopress_setting_section_advanced_advanced' // Section
2291
+ );
2292
+
2293
+ add_settings_field(
2294
+ 'seopress_advanced_advanced_category_url', // ID
2295
+ __('Remove /category/ in URL', 'wp-seopress'), // Title
2296
+ [$this, 'seopress_advanced_advanced_category_url_callback'], // Callback
2297
+ 'seopress-settings-admin-advanced-advanced', // Page
2298
+ 'seopress_setting_section_advanced_advanced' // Section
2299
+ );
2300
+
2301
+ add_settings_field(
2302
+ 'seopress_advanced_advanced_trailingslash', // ID
2303
+ __('Disable trailing slash for metas', 'wp-seopress'), // Title
2304
+ [$this, 'seopress_advanced_advanced_trailingslash_callback'], // Callback
2305
+ 'seopress-settings-admin-advanced-advanced', // Page
2306
+ 'seopress_setting_section_advanced_advanced' // Section
2307
+ );
2308
+
2309
+ add_settings_field(
2310
+ 'seopress_advanced_advanced_wp_generator', // ID
2311
+ __('Remove WordPress generator meta tag', 'wp-seopress'), // Title
2312
+ [$this, 'seopress_advanced_advanced_wp_generator_callback'], // Callback
2313
+ 'seopress-settings-admin-advanced-advanced', // Page
2314
+ 'seopress_setting_section_advanced_advanced' // Section
2315
+ );
2316
+
2317
+ add_settings_field(
2318
+ 'seopress_advanced_advanced_hentry', // ID
2319
+ __('Remove hentry post class', 'wp-seopress'), // Title
2320
+ [$this, 'seopress_advanced_advanced_hentry_callback'], // Callback
2321
+ 'seopress-settings-admin-advanced-advanced', // Page
2322
+ 'seopress_setting_section_advanced_advanced' // Section
2323
+ );
2324
+
2325
+ add_settings_field(
2326
+ 'seopress_advanced_advanced_comments_author_url', // ID
2327
+ __('Remove author URL', 'wp-seopress'), // Title
2328
+ [$this, 'seopress_advanced_advanced_comments_author_url_callback'], // Callback
2329
+ 'seopress-settings-admin-advanced-advanced', // Page
2330
+ 'seopress_setting_section_advanced_advanced' // Section
2331
+ );
2332
+
2333
+ add_settings_field(
2334
+ 'seopress_advanced_advanced_comments_website', // ID
2335
+ __('Remove website field in comment form', 'wp-seopress'), // Title
2336
+ [$this, 'seopress_advanced_advanced_comments_website_callback'], // Callback
2337
+ 'seopress-settings-admin-advanced-advanced', // Page
2338
+ 'seopress_setting_section_advanced_advanced' // Section
2339
+ );
2340
+
2341
+ add_settings_field(
2342
+ 'seopress_advanced_advanced_wp_shortlink', // ID
2343
+ __('Remove WordPress shortlink meta tag', 'wp-seopress'), // Title
2344
+ [$this, 'seopress_advanced_advanced_wp_shortlink_callback'], // Callback
2345
+ 'seopress-settings-admin-advanced-advanced', // Page
2346
+ 'seopress_setting_section_advanced_advanced' // Section
2347
+ );
2348
+
2349
+ add_settings_field(
2350
+ 'seopress_advanced_advanced_wp_wlw', // ID
2351
+ __('Remove Windows Live Writer meta tag', 'wp-seopress'), // Title
2352
+ [$this, 'seopress_advanced_advanced_wp_wlw_callback'], // Callback
2353
+ 'seopress-settings-admin-advanced-advanced', // Page
2354
+ 'seopress_setting_section_advanced_advanced' // Section
2355
+ );
2356
+
2357
+ add_settings_field(
2358
+ 'seopress_advanced_advanced_wp_rsd', // ID
2359
+ __('Remove RSD meta tag', 'wp-seopress'), // Title
2360
+ [$this, 'seopress_advanced_advanced_wp_rsd_callback'], // Callback
2361
+ 'seopress-settings-admin-advanced-advanced', // Page
2362
+ 'seopress_setting_section_advanced_advanced' // Section
2363
+ );
2364
+
2365
+ add_settings_field(
2366
+ 'seopress_advanced_advanced_google', // ID
2367
+ __('Google site verification', 'wp-seopress'), // Title
2368
+ [$this, 'seopress_advanced_advanced_google_callback'], // Callback
2369
+ 'seopress-settings-admin-advanced-advanced', // Page
2370
+ 'seopress_setting_section_advanced_advanced' // Section
2371
+ );
2372
+
2373
+ add_settings_field(
2374
+ 'seopress_advanced_advanced_bing', // ID
2375
+ __('Bing site verification', 'wp-seopress'), // Title
2376
+ [$this, 'seopress_advanced_advanced_bing_callback'], // Callback
2377
+ 'seopress-settings-admin-advanced-advanced', // Page
2378
+ 'seopress_setting_section_advanced_advanced' // Section
2379
+ );
2380
+
2381
+ add_settings_field(
2382
+ 'seopress_advanced_advanced_pinterest', // ID
2383
+ __('Pinterest site verification', 'wp-seopress'), // Title
2384
+ [$this, 'seopress_advanced_advanced_pinterest_callback'], // Callback
2385
+ 'seopress-settings-admin-advanced-advanced', // Page
2386
+ 'seopress_setting_section_advanced_advanced' // Section
2387
+ );
2388
+
2389
+ add_settings_field(
2390
+ 'seopress_advanced_advanced_yandex', // ID
2391
+ __('Yandex site verification', 'wp-seopress'), // Title
2392
+ [$this, 'seopress_advanced_advanced_yandex_callback'], // Callback
2393
+ 'seopress-settings-admin-advanced-advanced', // Page
2394
+ 'seopress_setting_section_advanced_advanced' // Section
2395
+ );
2396
+
2397
+ //Appearance SECTION=======================================================================
2398
+ add_settings_section(
2399
+ 'seopress_setting_section_advanced_appearance', // ID
2400
+ '',
2401
+ //__("Appearance","wp-seopress"), // Title
2402
+ [$this, 'print_section_info_advanced_appearance'], // Callback
2403
+ 'seopress-settings-admin-advanced-appearance' // Page
2404
+ );
2405
+
2406
+ add_settings_field(
2407
+ 'seopress_advanced_appearance_adminbar', // ID
2408
+ __('SEO in admin bar', 'wp-seopress'), // Title
2409
+ [$this, 'seopress_advanced_appearance_adminbar_callback'], // Callback
2410
+ 'seopress-settings-admin-advanced-appearance', // Page
2411
+ 'seopress_setting_section_advanced_appearance' // Section
2412
+ );
2413
+
2414
+ add_settings_field(
2415
+ 'seopress_advanced_appearance_adminbar_noindex', // ID
2416
+ __('Noindex in admin bar', 'wp-seopress'), // Title
2417
+ [$this, 'seopress_advanced_appearance_adminbar_noindex_callback'], // Callback
2418
+ 'seopress-settings-admin-advanced-appearance', // Page
2419
+ 'seopress_setting_section_advanced_appearance' // Section
2420
+ );
2421
+
2422
+ add_settings_field(
2423
+ 'seopress_advanced_appearance_metabox_position', // ID
2424
+ __("Move SEO metabox's position", 'wp-seopress'), // Title
2425
+ [$this, 'seopress_advanced_appearance_metaboxe_position_callback'], // Callback
2426
+ 'seopress-settings-admin-advanced-appearance', // Page
2427
+ 'seopress_setting_section_advanced_appearance' // Section
2428
+ );
2429
+
2430
+ if (is_plugin_active('wp-seopress-pro/seopress-pro.php')) {
2431
+ add_settings_field(
2432
+ 'seopress_advanced_appearance_schema_default_tab', // ID
2433
+ __('Set default tab for Structured data metabox', 'wp-seopress'), // Title
2434
+ [$this, 'seopress_advanced_appearance_schema_default_tab_callback'], // Callback
2435
+ 'seopress-settings-admin-advanced-appearance', // Page
2436
+ 'seopress_setting_section_advanced_appearance' // Section
2437
+ );
2438
+ }
2439
+
2440
+ add_settings_field(
2441
+ 'seopress_advanced_appearance_notifications', // ID
2442
+ __('Hide Notifications Center', 'wp-seopress'), // Title
2443
+ [$this, 'seopress_advanced_appearance_notifications_callback'], // Callback
2444
+ 'seopress-settings-admin-advanced-appearance', // Page
2445
+ 'seopress_setting_section_advanced_appearance' // Section
2446
+ );
2447
+
2448
+ add_settings_field(
2449
+ 'seopress_advanced_appearance_seo_tools', // ID
2450
+ __('Hide SEO tools', 'wp-seopress'), // Title
2451
+ [$this, 'seopress_advanced_appearance_seo_tools_callback'], // Callback
2452
+ 'seopress-settings-admin-advanced-appearance', // Page
2453
+ 'seopress_setting_section_advanced_appearance' // Section
2454
+ );
2455
+
2456
+ add_settings_field(
2457
+ 'seopress_advanced_appearance_useful_links', // ID
2458
+ __('Hide Useful Links', 'wp-seopress'), // Title
2459
+ [$this, 'seopress_advanced_appearance_useful_links_callback'], // Callback
2460
+ 'seopress-settings-admin-advanced-appearance', // Page
2461
+ 'seopress_setting_section_advanced_appearance' // Section
2462
+ );
2463
+
2464
+ add_settings_field(
2465
+ 'seopress_advanced_appearance_title_col', // ID
2466
+ __('Show Title tag column in post types', 'wp-seopress'), // Title
2467
+ [$this, 'seopress_advanced_appearance_title_col_callback'], // Callback
2468
+ 'seopress-settings-admin-advanced-appearance', // Page
2469
+ 'seopress_setting_section_advanced_appearance' // Section
2470
+ );
2471
+
2472
+ add_settings_field(
2473
+ 'seopress_advanced_appearance_meta_desc_col', // ID
2474
+ __('Show Meta description column in post types', 'wp-seopress'), // Title
2475
+ [$this, 'seopress_advanced_appearance_meta_desc_col_callback'], // Callback
2476
+ 'seopress-settings-admin-advanced-appearance', // Page
2477
+ 'seopress_setting_section_advanced_appearance' // Section
2478
+ );
2479
+
2480
+ add_settings_field(
2481
+ 'seopress_advanced_appearance_redirect_enable_col', // ID
2482
+ __('Show Redirection Enable column in post types', 'wp-seopress'), // Title
2483
+ [$this, 'seopress_advanced_appearance_redirect_enable_col_callback'], // Callback
2484
+ 'seopress-settings-admin-advanced-appearance', // Page
2485
+ 'seopress_setting_section_advanced_appearance' // Section
2486
+ );
2487
+
2488
+ add_settings_field(
2489
+ 'seopress_advanced_appearance_redirect_url_col', // ID
2490
+ __('Show Redirect URL column in post types', 'wp-seopress'), // Title
2491
+ [$this, 'seopress_advanced_appearance_redirect_url_col_callback'], // Callback
2492
+ 'seopress-settings-admin-advanced-appearance', // Page
2493
+ 'seopress_setting_section_advanced_appearance' // Section
2494
+ );
2495
+
2496
+ add_settings_field(
2497
+ 'seopress_advanced_appearance_canonical', // ID
2498
+ __('Show canonical URL column in post types', 'wp-seopress'), // Title
2499
+ [$this, 'seopress_advanced_appearance_canonical_callback'], // Callback
2500
+ 'seopress-settings-admin-advanced-appearance', // Page
2501
+ 'seopress_setting_section_advanced_appearance' // Section
2502
+ );
2503
+
2504
+ add_settings_field(
2505
+ 'seopress_advanced_appearance_target_kw_col', // ID
2506
+ __('Show Target Keyword column in post types', 'wp-seopress'), // Title
2507
+ [$this, 'seopress_advanced_appearance_target_kw_col_callback'], // Callback
2508
+ 'seopress-settings-admin-advanced-appearance', // Page
2509
+ 'seopress_setting_section_advanced_appearance' // Section
2510
+ );
2511
+
2512
+ add_settings_field(
2513
+ 'seopress_advanced_appearance_noindex_col', // ID
2514
+ __('Show noindex column in post types', 'wp-seopress'), // Title
2515
+ [$this, 'seopress_advanced_appearance_noindex_col_callback'], // Callback
2516
+ 'seopress-settings-admin-advanced-appearance', // Page
2517
+ 'seopress_setting_section_advanced_appearance' // Section
2518
+ );
2519
+
2520
+ add_settings_field(
2521
+ 'seopress_advanced_appearance_nofollow_col', // ID
2522
+ __('Show nofollow column in post types', 'wp-seopress'), // Title
2523
+ [$this, 'seopress_advanced_appearance_nofollow_col_callback'], // Callback
2524
+ 'seopress-settings-admin-advanced-appearance', // Page
2525
+ 'seopress_setting_section_advanced_appearance' // Section
2526
+ );
2527
+
2528
+ add_settings_field(
2529
+ 'seopress_advanced_appearance_words_col', // ID
2530
+ __('Show total number of words column in post types', 'wp-seopress'), // Title
2531
+ [$this, 'seopress_advanced_appearance_words_col_callback'], // Callback
2532
+ 'seopress-settings-admin-advanced-appearance', // Page
2533
+ 'seopress_setting_section_advanced_appearance' // Section
2534
+ );
2535
+
2536
+ add_settings_field(
2537
+ 'seopress_advanced_appearance_w3c_col', // ID
2538
+ __('Show W3C validator column in post types', 'wp-seopress'), // Title
2539
+ [$this, 'seopress_advanced_appearance_w3c_col_callback'], // Callback
2540
+ 'seopress-settings-admin-advanced-appearance', // Page
2541
+ 'seopress_setting_section_advanced_appearance' // Section
2542
+ );
2543
+ if (is_plugin_active('wp-seopress-pro/seopress-pro.php')) {
2544
+ add_settings_field(
2545
+ 'seopress_advanced_appearance_ps_col', // ID
2546
+ __('Show Google Page Speed column in post types', 'wp-seopress'), // Title
2547
+ [$this, 'seopress_advanced_appearance_ps_col_callback'], // Callback
2548
+ 'seopress-settings-admin-advanced-appearance', // Page
2549
+ 'seopress_setting_section_advanced_appearance' // Section
2550
+ );
2551
+ }
2552
+
2553
+ if (is_plugin_active('wp-seopress-insights/seopress-insights.php')) {
2554
+ add_settings_field(
2555
+ 'seopress_advanced_appearance_insights_col', // ID
2556
+ __('Show Insights column in post types', 'wp-seopress'), // Title
2557
+ [$this, 'seopress_advanced_appearance_insights_col_callback'], // Callback
2558
+ 'seopress-settings-admin-advanced-appearance', // Page
2559
+ 'seopress_setting_section_advanced_appearance' // Section
2560
+ );
2561
+ }
2562
+
2563
+ add_settings_field(
2564
+ 'seopress_advanced_appearance_score_col', // ID
2565
+ __('Show content analysis score column in post types', 'wp-seopress'), // Title
2566
+ [$this, 'seopress_advanced_appearance_score_col_callback'], // Callback
2567
+ 'seopress-settings-admin-advanced-appearance', // Page
2568
+ 'seopress_setting_section_advanced_appearance' // Section
2569
+ );
2570
+
2571
+ add_settings_field(
2572
+ 'seopress_advanced_appearance_genesis_seo_metaboxe', // ID
2573
+ __('Hide Genesis SEO Metabox', 'wp-seopress'), // Title
2574
+ [$this, 'seopress_advanced_appearance_genesis_seo_metaboxe_callback'], // Callback
2575
+ 'seopress-settings-admin-advanced-appearance', // Page
2576
+ 'seopress_setting_section_advanced_appearance' // Section
2577
+ );
2578
+
2579
+ add_settings_field(
2580
+ 'seopress_advanced_appearance_genesis_seo_menu', // ID
2581
+ __('Hide Genesis SEO Settings link', 'wp-seopress'), // Title
2582
+ [$this, 'seopress_advanced_appearance_genesis_seo_menu_callback'], // Callback
2583
+ 'seopress-settings-admin-advanced-appearance', // Page
2584
+ 'seopress_setting_section_advanced_appearance' // Section
2585
+ );
2586
+
2587
+ add_settings_field(
2588
+ 'seopress_advanced_appearance_advice_schema', // ID
2589
+ __('Hide advice in Structured Data Types metabox', 'wp-seopress'), // Title
2590
+ [$this, 'seopress_advanced_appearance_advice_schema_callback'], // Callback
2591
+ 'seopress-settings-admin-advanced-appearance', // Page
2592
+ 'seopress_setting_section_advanced_appearance' // Section
2593
+ );
2594
+
2595
+ //Security SECTION=======================================================================
2596
+ add_settings_section(
2597
+ 'seopress_setting_section_advanced_security', // ID
2598
+ '',
2599
+ //__("Security","wp-seopress"), // Title
2600
+ [$this, 'print_section_info_advanced_security'], // Callback
2601
+ 'seopress-settings-admin-advanced-security' // Page
2602
+ );
2603
+
2604
+ add_settings_field(
2605
+ 'seopress_advanced_security_metaboxe_role', // ID
2606
+ __('Block SEO metabox to user roles', 'wp-seopress'), // Title
2607
+ [$this, 'seopress_advanced_security_metaboxe_role_callback'], // Callback
2608
+ 'seopress-settings-admin-advanced-security', // Page
2609
+ 'seopress_setting_section_advanced_security' // Section
2610
+ );
2611
+
2612
+ add_settings_field(
2613
+ 'seopress_advanced_security_metaboxe_ca_role', // ID
2614
+ __('Block Content analysis metabox to user roles', 'wp-seopress'), // Title
2615
+ [$this, 'seopress_advanced_security_metaboxe_ca_role_callback'], // Callback
2616
+ 'seopress-settings-admin-advanced-security', // Page
2617
+ 'seopress_setting_section_advanced_security' // Section
2618
+ );
2619
+ }
2620
+
2621
+ /**
2622
+ * Sanitize each setting field as needed.
2623
+ *
2624
+ * @param array $input Contains all settings fields as array keys
2625
+ */
2626
+ public function sanitize($input) {
2627
+ $seopress_sanitize_fields = [
2628
+ 'seopress_titles_home_site_title',
2629
+ 'seopress_titles_home_site_desc',
2630
+ 'seopress_titles_archives_author_title',
2631
+ 'seopress_titles_archives_author_desc',
2632
+ 'seopress_titles_archives_date_title',
2633
+ 'seopress_titles_archives_date_desc',
2634
+ 'seopress_titles_archives_search_title',
2635
+ 'seopress_titles_archives_search_desc',
2636
+ 'seopress_titles_archives_404_title',
2637
+ 'seopress_titles_archives_404_desc',
2638
+ 'seopress_xml_sitemap_html_exclude',
2639
+ 'seopress_social_knowledge_name',
2640
+ 'seopress_social_knowledge_img',
2641
+ 'seopress_social_knowledge_phone',
2642
+ 'seopress_social_accounts_facebook',
2643
+ 'seopress_social_accounts_twitter',
2644
+ 'seopress_social_accounts_pinterest',
2645
+ 'seopress_social_accounts_instagram',
2646
+ 'seopress_social_accounts_youtube',
2647
+ 'seopress_social_accounts_linkedin',
2648
+ 'seopress_social_facebook_link_ownership_id',
2649
+ 'seopress_social_facebook_admin_id',
2650
+ 'seopress_social_facebook_app_id',
2651
+ 'seopress_google_analytics_ua',
2652
+ 'seopress_google_analytics_ga4',
2653
+ 'seopress_google_analytics_download_tracking',
2654
+ 'seopress_google_analytics_opt_out_msg',
2655
+ 'seopress_google_analytics_opt_out_msg_ok',
2656
+ 'seopress_google_analytics_other_tracking',
2657
+ 'seopress_google_analytics_other_tracking_body',
2658
+ 'seopress_google_analytics_optimize',
2659
+ 'seopress_google_analytics_ads',
2660
+ 'seopress_google_analytics_cross_domain',
2661
+ 'seopress_google_analytics_matomo_id',
2662
+ 'seopress_google_analytics_matomo_site_id',
2663
+ 'seopress_google_analytics_matomo_cross_domain_sites',
2664
+ 'seopress_google_analytics_cb_backdrop_bg',
2665
+ 'seopress_google_analytics_cb_exp_date',
2666
+ 'seopress_google_analytics_cb_bg',
2667
+ 'seopress_google_analytics_cb_txt_col',
2668
+ 'seopress_google_analytics_cb_lk_col',
2669
+ 'seopress_google_analytics_cb_btn_bg',
2670
+ 'seopress_google_analytics_cb_btn_col',
2671
+ 'seopress_google_analytics_cb_btn_bg_hov',
2672
+ 'seopress_google_analytics_cb_btn_col_hov',
2673
+ 'seopress_google_analytics_cb_btn_sec_bg',
2674
+ 'seopress_google_analytics_cb_btn_sec_col',
2675
+