Version Description
- NEW Google Analytics
- NEW Import Yoast Posts metadata in SEOPress (Title tags, Meta description, Facebook Open Graph tags (title, description and image thumbnail), Twitter tags (title, description and image thumbnail), Meta Robots (noindex, nofollow...), Canonical URL)
- NEW Google News Sitemap (SEOPress PRO only)
- NEW Breadcrumbs (SEOPress PRO only)
- NEW Google Page Speed tool (SEOPress PRO only)
- NEW Robots.txt (SEOPress PRO only)
- NEW htaccess (SEOPress PRO only)
- NEW WooCommerce OG:PRICE meta for product (SEOPress PRO only)
- NEW WooCommerce OG:CURRENCY meta for product (SEOPress PRO only)
- NEW WooCommerce Noindex cart page (SEOPress PRO only)
- NEW WooCommerce Noindex checkout page (SEOPress PRO only)
- NEW WooCommerce Noindex customer account pages (SEOPress PRO only)
- NEW Add Title tag column in post types
- NEW Add Meta description column in post types
- NEW Set default values (settings need to be reset if you already own the plugin)
- NEW Add SEOPress in Admin Bar for quick access (you can remove it)
- NEW Manage Titles, Meta Descriptions and Meta Robots for Custom Post Type Archives
- NEW Add new checks in notifications center
- NEW Add Logo preview in Knowledge graph
- INFO If Jetpack enabled, disable Jetpack Open Graph Tags for compatibility
- INFO Check if SEOPress is installed, if not, display a notice for SEOPress Pro users
- INFO Improve some labels
- INFO Add minimum size required for Facebook and Twitter thumbnail
- INFO Add SEOPress icon in admin menu
- INFO Add descriptions / tooltips for labels, inputs...
- FIX Disable article:published_time, article:modified_time and og:updated_time on homepage
- FIX CSS bugs
- FIX XML Sitemaps namespaces
- FIX Escape HTML in OG:Title, Twitter:title
- FIX Wrong link for rating SEOPress on w.org
- FIX Replace get_site_url() by get_home_url() (thanks to Ludovic Riaudel)
- FIX Title tag and meta description for frontpage
- FIX Notification center checks
- FIX if function exists errors
- FIX WooCommerce checks
Download this release
Release Info
Developer | rainbowgeek |
Plugin | SEOPress |
Version | 1.0 |
Comparing to | |
See all releases |
Code changes from version 0.9 to 1.0
- assets/css/seopress.css +325 -35
- assets/img/logo-seopress.png +0 -0
- assets/js/seopress-dashboard.js +212 -0
- assets/js/seopress-tabs.js +36 -1
- assets/js/seopress-tabs6.js +28 -0
- assets/js/seopress-yoast-migrate.js +25 -0
- contributors.txt +4 -0
- inc/admin/admin-header.php +63 -0
- inc/admin/admin-metaboxes.php +77 -20
- inc/admin/admin.php +1620 -231
- inc/admin/adminbar.php +64 -0
- inc/admin/ajax.php +85 -0
- inc/functions/options-advanced-admin.php +72 -1
- inc/functions/options-google-analytics.php +285 -0
- inc/functions/options-import-export.php +13 -3
- inc/functions/options-social.php +37 -39
- inc/functions/options-titles-metas.php +183 -70
- inc/functions/options.php +40 -23
- inc/functions/sitemap/index.php +3 -0
- inc/functions/sitemap/template-xml-sitemaps-single-term.php +15 -21
- inc/functions/sitemap/template-xml-sitemaps-single.php +5 -5
- inc/functions/sitemap/template-xml-sitemaps-xsl.php +22 -17
- inc/functions/sitemap/template-xml-sitemaps.php +33 -12
- languages/wp-seopress-fr_FR.mo +0 -0
- languages/wp-seopress-fr_FR.po +844 -262
- languages/wp-seopress.mo +0 -0
- languages/wp-seopress.po +761 -234
- readme.txt +58 -5
- seopress.php +153 -18
- wpgod/composer-temp.phar +0 -0
- wpgod/composer.json +16 -0
- wpgod/composer.phar +0 -0
- wpgod/public/js/send-error.js +8 -0
- wpgod/public/js/send-tracking-general.js +8 -0
- wpgod/src/WPGod/Handler/GodAdminNoticeHandler.php +118 -0
- wpgod/src/WPGod/Handler/GodErrorHandler.php +136 -0
- wpgod/src/WPGod/Handler/GodTrackingHandler.php +101 -0
- wpgod/src/WPGod/Helpers/GodEnvironmentInfo.php +107 -0
- wpgod/src/WPGod/Helpers/GodError.php +73 -0
- wpgod/src/WPGod/Helpers/GodServerInfo.php +101 -0
- wpgod/src/WPGod/Helpers/GodTypeDevelopment.php +21 -0
- wpgod/src/WPGod/Models/GodHandlerInterface.php +34 -0
- wpgod/src/WPGod/Models/HelperInterface.php +14 -0
- wpgod/src/WPGod/Models/HooksInterface.php +25 -0
- wpgod/src/WPGod/Models/ServiceInterface.php +14 -0
- wpgod/src/WPGod/Models/Specification/AbstractSpecification.php +55 -0
- wpgod/src/WPGod/Models/Specification/AndX.php +39 -0
- wpgod/src/WPGod/Models/Specification/ContainsSpecification.php +22 -0
- wpgod/src/WPGod/Models/Specification/EqualsSpecification.php +16 -0
- wpgod/src/WPGod/Models/Specification/NotX.php +36 -0
- wpgod/src/WPGod/Models/Specification/OrX.php +40 -0
- wpgod/src/WPGod/Models/Specification/SpecificationInterface.php +43 -0
- wpgod/src/WPGod/Services/GodAbstractService.php +71 -0
- wpgod/src/WPGod/Services/GodApi.php +148 -0
- wpgod/src/WPGod/Services/GodAuthorizeError.php +69 -0
- wpgod/src/WPGod/Services/GodCheckErrors.php +86 -0
- wpgod/src/WPGod/Services/GodFilesRules.php +154 -0
- wpgod/src/WPGod/WPGod.php +164 -0
- wpgod/vendor/autoload.php +7 -0
- wpgod/vendor/composer/ClassLoader.php +413 -0
- wpgod/vendor/composer/LICENSE +21 -0
- wpgod/vendor/composer/autoload_classmap.php +9 -0
- wpgod/vendor/composer/autoload_namespaces.php +9 -0
- wpgod/vendor/composer/autoload_psr4.php +10 -0
- wpgod/vendor/composer/autoload_real.php +45 -0
assets/css/seopress.css
CHANGED
@@ -9,19 +9,30 @@
|
|
9 |
z-index: 50;
|
10 |
margin: 0;
|
11 |
padding: 0;
|
|
|
|
|
12 |
}
|
13 |
#seopress_cpt .ui-helper-clearfix:after {
|
14 |
content:none;
|
15 |
}
|
|
|
|
|
|
|
16 |
#seopress_cpt .ui-tabs .ui-tabs-panel {
|
17 |
background: none repeat scroll 0 0 #FFFFFF;
|
18 |
border: 1px solid #DDDDDD;
|
19 |
-
border-radius: 0
|
20 |
display: inline-block;
|
21 |
padding: 1em 1.4em;
|
22 |
width: 100%;
|
23 |
box-sizing: border-box;
|
24 |
}
|
|
|
|
|
|
|
|
|
|
|
|
|
25 |
#seopress_cpt .ui-tabs .ui-tabs-nav li, #seopress_cpt .ui-tabs-anchor {
|
26 |
cursor:pointer !important;
|
27 |
}
|
@@ -34,15 +45,18 @@
|
|
34 |
position: relative;
|
35 |
z-index: 60;
|
36 |
cursor:pointer;
|
|
|
37 |
}
|
38 |
#seopress_cpt #tabs-1 label,
|
39 |
#seopress_cpt #tabs-2 label[for=seopress_robots_canonical_meta],
|
40 |
#seopress_cpt #tabs-3 label,
|
41 |
#seopress_cpt #tabs-4 label,
|
|
|
42 |
#seopress_cpt .subsection-title {
|
43 |
border-bottom: 1px solid #DDDDDD;
|
44 |
display: block;
|
45 |
margin: 20px 0 5px;
|
|
|
46 |
}
|
47 |
#seopress_cpt .wp-color-result {
|
48 |
margin:0;
|
@@ -51,22 +65,31 @@
|
|
51 |
#seopress_cpt #tabs-2 input[type=text],
|
52 |
#seopress_cpt #tabs-3 textarea,
|
53 |
#seopress_cpt #tabs-3 input[type=text],
|
54 |
-
#seopress_cpt #tabs-4 input[type=text]
|
|
|
55 |
width:100%;
|
56 |
}
|
57 |
#seopress_cpt select {
|
58 |
width:300px;
|
59 |
}
|
60 |
#seopress_cpt #tabs-4 select {
|
61 |
-
width:
|
62 |
display: inline;
|
63 |
}
|
64 |
#seopress_cpt #tabs-4 #seopress_redirections_value_meta {
|
65 |
-
width: calc(100% -
|
66 |
float: right;
|
67 |
}
|
68 |
-
#seopress_cpt #tabs-4 #seopress_redirections_enabled
|
|
|
69 |
border-bottom: none;
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
70 |
}
|
71 |
#seopress_cpt .mandatory {
|
72 |
color: #cc0000;
|
@@ -129,16 +152,21 @@
|
|
129 |
#seopress_cpt .ui-tabs {
|
130 |
position: relative;/* position: relative prevents IE scroll bug (element with position: relative inside container with overflow: auto appear as "fixed") */
|
131 |
padding: .2em;
|
|
|
|
|
|
|
132 |
}
|
133 |
#seopress_cpt .ui-tabs .ui-tabs-nav li {
|
134 |
list-style: none;
|
135 |
float: left;
|
136 |
position: relative;
|
137 |
top: 0;
|
138 |
-
margin: 1px .2em 0 0;
|
139 |
border-bottom-width: 0;
|
140 |
padding: 0;
|
141 |
white-space: nowrap;
|
|
|
|
|
142 |
}
|
143 |
#seopress_cpt .ui-tabs .ui-tabs-nav li a {
|
144 |
float: left;
|
@@ -157,6 +185,8 @@
|
|
157 |
#seopress_cpt .ui-tabs .ui-tabs-nav li a, /* first selector in group seems obsolete, but required to overcome bug in Opera applying cursor: text overall if defined elsewhere... */
|
158 |
#seopress_cpt .ui-tabs-collapsible .ui-tabs-nav li.ui-tabs-active a {
|
159 |
cursor: pointer;
|
|
|
|
|
160 |
}
|
161 |
#seopress_cpt .ui-tabs-vertical { width: 55em; }
|
162 |
#seopress_cpt .ui-tabs-vertical .ui-tabs-nav { padding: .2em .1em .2em .2em; float: left; width: 12em; }
|
@@ -172,21 +202,76 @@
|
|
172 |
/*************************************************************************************************/
|
173 |
/* Admin - Options panel */
|
174 |
/*************************************************************************************************/
|
175 |
-
.
|
176 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
177 |
}
|
178 |
.seopress-styles #wpcontent {
|
179 |
padding-left: 0;
|
|
|
180 |
}
|
181 |
.seopress-styles #seopress-admin {
|
182 |
background: #FFF;
|
183 |
-
box-shadow:
|
|
|
|
|
|
|
|
|
|
|
|
|
184 |
}
|
185 |
.seopress-styles #seopress-navbar {
|
186 |
padding: 10px 25px;
|
187 |
height: 40px;
|
188 |
margin: 0 auto;
|
189 |
-
width:
|
190 |
}
|
191 |
#seopress-header {
|
192 |
margin: 0;
|
@@ -203,7 +288,7 @@
|
|
203 |
}
|
204 |
#seopress-header #seopress-admin h1 .seopress-info-version {
|
205 |
position: relative;
|
206 |
-
left:
|
207 |
top: -17px;
|
208 |
}
|
209 |
#seopress-header #seopress-admin .wpc-info-version {
|
@@ -252,6 +337,8 @@
|
|
252 |
}
|
253 |
.seopress-tab {
|
254 |
display: none;
|
|
|
|
|
255 |
}
|
256 |
.seopress-tab.active {
|
257 |
display: block;
|
@@ -322,7 +409,7 @@
|
|
322 |
.seopress-page-list .seopress-feature, #seopress-notifications-center {
|
323 |
background: #fff;
|
324 |
margin: 20px auto;
|
325 |
-
box-shadow:
|
326 |
max-width: 45rem;
|
327 |
padding: 1.5rem;
|
328 |
width: 100%;
|
@@ -348,23 +435,41 @@
|
|
348 |
margin: 0px;
|
349 |
display: block;
|
350 |
}
|
351 |
-
.seopress-page-list .seopress-feature
|
352 |
margin: 0;
|
353 |
font-size: 16px;
|
354 |
font-weight: bold;
|
355 |
}
|
356 |
-
.seopress-page-list .seopress-feature
|
357 |
font-size: 16px;
|
358 |
margin-left: 5px;
|
359 |
vertical-align: middle;
|
360 |
}
|
361 |
-
.seopress-page-list a
|
362 |
-
|
|
|
363 |
text-decoration: none;
|
364 |
-
|
365 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
366 |
text-decoration: none;
|
367 |
-
color: #
|
|
|
|
|
|
|
|
|
|
|
368 |
}
|
369 |
#seopress-notifications-center h2 {
|
370 |
margin: 5px 0px 15px 5px;
|
@@ -375,22 +480,46 @@
|
|
375 |
margin-right: 10px;
|
376 |
}
|
377 |
#seopress-notifications-center .seopress-alert {
|
378 |
-
padding:
|
379 |
-
display: block;
|
380 |
-
margin:
|
381 |
-
border: 1px solid rgba(224, 224, 224, 1);
|
382 |
-
|
383 |
}
|
384 |
#seopress-notifications-center .seopress-alert p {
|
385 |
display: inline-block;
|
386 |
}
|
387 |
-
#seopress-notifications-center .seopress-alert .
|
388 |
-
|
389 |
-
|
390 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
391 |
}
|
392 |
#seopress-notifications-center .seopress-alert .dashicons {
|
393 |
-
color
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
394 |
}
|
395 |
.seopress-option .seopress-table {
|
396 |
background: #FFF none repeat scroll 0% 0%;
|
@@ -411,12 +540,35 @@
|
|
411 |
font-weight: bold;
|
412 |
background: #f1f1f1;
|
413 |
}
|
414 |
-
#seopress-
|
415 |
-
|
416 |
-
|
417 |
-
|
418 |
-
|
419 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
420 |
}
|
421 |
.seopress-option input[type="text"].seopress-admin-menu-input {
|
422 |
min-width: inherit;
|
@@ -425,3 +577,141 @@
|
|
425 |
.seopress_page_seopress-import-export .postbox {
|
426 |
width: calc(100% - 20px);
|
427 |
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
9 |
z-index: 50;
|
10 |
margin: 0;
|
11 |
padding: 0;
|
12 |
+
background: none;
|
13 |
+
border: none;
|
14 |
}
|
15 |
#seopress_cpt .ui-helper-clearfix:after {
|
16 |
content:none;
|
17 |
}
|
18 |
+
.seopress_page_seopress-titles #seopress-tabs .form-table td {
|
19 |
+
padding: 0;
|
20 |
+
}
|
21 |
#seopress_cpt .ui-tabs .ui-tabs-panel {
|
22 |
background: none repeat scroll 0 0 #FFFFFF;
|
23 |
border: 1px solid #DDDDDD;
|
24 |
+
border-radius: 0;
|
25 |
display: inline-block;
|
26 |
padding: 1em 1.4em;
|
27 |
width: 100%;
|
28 |
box-sizing: border-box;
|
29 |
}
|
30 |
+
#seopress_cpt .ui-tabs .ui-tabs-panel .dashicons-info {
|
31 |
+
font-size: 16px;
|
32 |
+
vertical-align: middle;
|
33 |
+
height: 16px;
|
34 |
+
width: 16px;
|
35 |
+
}
|
36 |
#seopress_cpt .ui-tabs .ui-tabs-nav li, #seopress_cpt .ui-tabs-anchor {
|
37 |
cursor:pointer !important;
|
38 |
}
|
45 |
position: relative;
|
46 |
z-index: 60;
|
47 |
cursor:pointer;
|
48 |
+
border-radius: 0;
|
49 |
}
|
50 |
#seopress_cpt #tabs-1 label,
|
51 |
#seopress_cpt #tabs-2 label[for=seopress_robots_canonical_meta],
|
52 |
#seopress_cpt #tabs-3 label,
|
53 |
#seopress_cpt #tabs-4 label,
|
54 |
+
#seopress_cpt #tabs-5 label,
|
55 |
#seopress_cpt .subsection-title {
|
56 |
border-bottom: 1px solid #DDDDDD;
|
57 |
display: block;
|
58 |
margin: 20px 0 5px;
|
59 |
+
font-weight: bold;
|
60 |
}
|
61 |
#seopress_cpt .wp-color-result {
|
62 |
margin:0;
|
65 |
#seopress_cpt #tabs-2 input[type=text],
|
66 |
#seopress_cpt #tabs-3 textarea,
|
67 |
#seopress_cpt #tabs-3 input[type=text],
|
68 |
+
#seopress_cpt #tabs-4 input[type=text],
|
69 |
+
#seopress_cpt #tabs-5 input[type=text] {
|
70 |
width:100%;
|
71 |
}
|
72 |
#seopress_cpt select {
|
73 |
width:300px;
|
74 |
}
|
75 |
#seopress_cpt #tabs-4 select {
|
76 |
+
width:60px;
|
77 |
display: inline;
|
78 |
}
|
79 |
#seopress_cpt #tabs-4 #seopress_redirections_value_meta {
|
80 |
+
width: calc(100% - 68px);
|
81 |
float: right;
|
82 |
}
|
83 |
+
#seopress_cpt #tabs-4 #seopress_redirections_enabled,
|
84 |
+
#seopress_cpt #tabs-5 #seopress_news_disabled {
|
85 |
border-bottom: none;
|
86 |
+
font-weight: normal;
|
87 |
+
}
|
88 |
+
#seopress_cpt .advise {
|
89 |
+
margin: 5px;
|
90 |
+
display: block;
|
91 |
+
color: red;
|
92 |
+
font-style: italic;
|
93 |
}
|
94 |
#seopress_cpt .mandatory {
|
95 |
color: #cc0000;
|
152 |
#seopress_cpt .ui-tabs {
|
153 |
position: relative;/* position: relative prevents IE scroll bug (element with position: relative inside container with overflow: auto appear as "fixed") */
|
154 |
padding: .2em;
|
155 |
+
border: none;
|
156 |
+
font-family: inherit;
|
157 |
+
font-size: inherit;
|
158 |
}
|
159 |
#seopress_cpt .ui-tabs .ui-tabs-nav li {
|
160 |
list-style: none;
|
161 |
float: left;
|
162 |
position: relative;
|
163 |
top: 0;
|
164 |
+
margin: -1px .2em 0 0;
|
165 |
border-bottom-width: 0;
|
166 |
padding: 0;
|
167 |
white-space: nowrap;
|
168 |
+
border: none;
|
169 |
+
background: none;
|
170 |
}
|
171 |
#seopress_cpt .ui-tabs .ui-tabs-nav li a {
|
172 |
float: left;
|
185 |
#seopress_cpt .ui-tabs .ui-tabs-nav li a, /* first selector in group seems obsolete, but required to overcome bug in Opera applying cursor: text overall if defined elsewhere... */
|
186 |
#seopress_cpt .ui-tabs-collapsible .ui-tabs-nav li.ui-tabs-active a {
|
187 |
cursor: pointer;
|
188 |
+
color: #0073aa;
|
189 |
+
text-decoration: none;
|
190 |
}
|
191 |
#seopress_cpt .ui-tabs-vertical { width: 55em; }
|
192 |
#seopress_cpt .ui-tabs-vertical .ui-tabs-nav { padding: .2em .1em .2em .2em; float: left; width: 12em; }
|
202 |
/*************************************************************************************************/
|
203 |
/* Admin - Options panel */
|
204 |
/*************************************************************************************************/
|
205 |
+
.seopress-styles .seopress-option {
|
206 |
+
margin: 20px auto 0;
|
207 |
+
max-width: 90%;
|
208 |
+
box-shadow: 0px 0px 20px rgba(0,0,0,0.1);
|
209 |
+
padding: 1.0rem;
|
210 |
+
background: #fff;
|
211 |
+
}
|
212 |
+
.seopress-styles .seopress-option h1 span,
|
213 |
+
.seopress-styles .seopress-option h2 span {
|
214 |
+
margin: 0 10px;
|
215 |
+
font-size: 40px;
|
216 |
+
width: 40px;
|
217 |
+
height: 40px;
|
218 |
+
vertical-align: middle;
|
219 |
+
}
|
220 |
+
.seopress-styles .seopress-option .metabox-holder h2 span {
|
221 |
+
font-size: 16px;
|
222 |
+
}
|
223 |
+
.seopress-styles .wrap {
|
224 |
+
margin: 0;
|
225 |
+
}
|
226 |
+
.seopress-styles .seopress-option .submit {
|
227 |
+
background: #fff;
|
228 |
+
text-align: center;
|
229 |
+
border-top: 1px solid #F1F1F1;
|
230 |
+
padding-top: 20px;
|
231 |
+
padding-bottom: 20px;
|
232 |
+
margin: 0;
|
233 |
+
}
|
234 |
+
.seopress-styles .seopress-option #submit,
|
235 |
+
.seopress-styles .seopress-option #seopress-yoast-migrate {
|
236 |
+
color: #232323;
|
237 |
+
text-decoration: none;
|
238 |
+
background: #F1F1F1;
|
239 |
+
border: none;
|
240 |
+
border-radius: 30px;
|
241 |
+
padding-right: 20px;
|
242 |
+
padding-left: 20px;
|
243 |
+
line-height: 34px;
|
244 |
+
text-transform: uppercase;
|
245 |
+
height: 34px;
|
246 |
+
transition: all 300ms linear;
|
247 |
+
box-shadow: none;
|
248 |
+
text-shadow: none;
|
249 |
+
}
|
250 |
+
.seopress-styles .seopress-option #submit:hover,
|
251 |
+
.seopress-styles .seopress-option #seopress-yoast-migrate:hover {
|
252 |
+
text-decoration: none;
|
253 |
+
color: #FFF;
|
254 |
+
background: #232323;
|
255 |
}
|
256 |
.seopress-styles #wpcontent {
|
257 |
padding-left: 0;
|
258 |
+
background: #F7F7F7;
|
259 |
}
|
260 |
.seopress-styles #seopress-admin {
|
261 |
background: #FFF;
|
262 |
+
box-shadow: 0px 0px 20px rgba(0,0,0,0.1);
|
263 |
+
}
|
264 |
+
#adminmenu div.wp-menu-image.dashicons-admin-seopress {
|
265 |
+
background-image: url('data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAQAAAAEACAYAAABccqhmAAAABHNCSVQICAgIfAhkiAAAAAlwSFlzAAALEgAACxIB0t1+/AAAABV0RVh0Q3JlYXRpb24gVGltZQA1LzEyLzE2LEZ4ogAAABx0RVh0U29mdHdhcmUAQWRvYmUgRmlyZXdvcmtzIENTNui8sowAABn1SURBVHic7Z2/bxtJnsWfvQPsJupVeAB7sZzQnYwvIgMN1heogaOwWB9E4GhMMmJAX2YGVCielw7FgAytgJqNxIDEzQZmQAZnwwrI6OwJyMuGA5DAhRr2H7AXSE3LMkk1u6u7qrrfBxgMLIvNksV69f1dDxAB6XT6CYDHAHYBPLn58p+ieG9CNOHdzf/fArgC8GE6nb4N+00fhPHQdDr9GMDTm/++CeM9CEkIHwH8CODH6XT6QfTDhQlAOp1OAyjjetP/UdRzCSFLfsG1GDSm0+lUxAMDC8CNeV8G8JfAqyGEeOXvuBaCt0Ee4lsAbsz8BujLEyKTdwDKft2D3/h5UTqdfgngAkDaz+sJIcJIA/iP3d3dB1dXV2+3ffFWFsDNqf8DGNgjREU+Avh+G2vAswCk0+mnuN78v99+XYSQiPgV1yLwo5dv9uQCpNPp73Ft8v/O/7oIIRHwOwCF3d3dX66uru61BO4VgJvNfy5gYYSQ6HjqRQQ2ugA3Zv9/CV0WISRK/m2TO7BWAG4Cfm9Bn58QnfkVwJN1gcGHG174A7j5CdGd3+N6L69kZQzgJs//7+GshxASMf+0rk7gCxfgxvT/nyhWRQiJlH++6wqscgEaES2GEBItX+ztzwTgprGHtf2ExJM/3ezxJXctgJeRLYUQIoOXt/+wjAHc9PP/HPFiCCHR87U7T+C2BVCWsxZCSMQs9/ptAXgqYSGEkOhZ7vWHwDL1xzFehCSDP97s+aUF8L28tRBCJPA98EkAnkhbBiFEBk+ATwLACT+EJItvAODBTWHAf0tdCiFEBv/yENc39hBCksfjh+BkX0KSSpoWACHJ5fGmgSCEkJjzIJ1O/0P2IgghcqAFQEiCoQAQkmAoAIQkGAoAIQmGAkBIgqEAEJJgKACEJBgKACEJhgJASIKhABCSYCgAhCSYr2QvIEmYpgnTND/72mw2w2w2k7QiknQoAILJZrOwLAumaS7/n0qlPL12MplgsVhgOBxiPB5jPB5THEiosBswIKZpwrZt2LaNTCYj/Pnz+Rz9fh+dTgfj8Vj480myoQD4wDAM5PN55PN5PHr0KLL3nc/naDQa6Pf7WCwWkb0viS8UgC2wLAvFYhGHh4dS1+E4DlqtFhoN3uROgkEB8EA2m0W5XA7FxA/CfD5HrVZDv9/39P3tdnvlz/D111+LXhrRBKYBN2CaJur1Oi4uLpTb/ACQSqXw+vVrnJ2dwTCMjd+bzWZX/gyTySSs5RENoACsoVwuo9frSTf3vbC/v4/Ly0tks9m131Mur778mYHFZEMBuINlWej1enjx4gV2dnZkL8czOzs7uLi4WLnR153+AAUg6VAAbpHP59FutyON7IvmxYsXqNfrn30tn8+v/f7hcBj2kojCMAh4Q71eF27uTyYTDIdDzGaz5Uk7Ho8/S+EZhgHLsgB8KiLKZrOBrY/JZIJCoQDDMPD+/fu138cAYLJJvAAYhoF6vY79/X0hzxsMBuj3+4Fz9W5xURBRmkwmmM1ma3+20WiEQqHg+/lEfxItAIZhCDH53bx8q9USXqBjmibK5XIowcjz83PUajXhzyX6kNgYgKjN32w2sbe3h0ajEUp13mw2Q6VSwbNnz+A4jtBn0/8niRWAarUaaPNPJhMcHByEtvHvMhwOsbe3JzRvzwwASaQAVKvVQCb1YDBAoVCIfAMtFgsUCgUhIuA4DjsNSfIEwLZtHB0d+X59t9tFqVSS1oyzWCxQKpUCuwM0/wmQMAFwS3v9MhgMUKlUBK7IH25cIAg0/wmQMAGo1+u+8+uTyUSJze/S7/cxGo18v54WAAESJAD5fD5QQ0+lUlGuBz9IOzAtAAIkZCSYYRhrm2G80Gw2ldwww+EQo9Foa2FzR4/pSrFYvLf78S7D4ZBWzwoSIQDFYtHzXL67uEU+qtJqtbYWABXFzCumaeLk5GTr17mzFsnnxN4FMAwDxWLR9+vDqO4TSb/f3zojoLMAbGp53gQ3/2piLwD5fD5QY02n0xG4mnDwOhHIRWcBsG1769fM53Otf+Ywib0ABDn93WYa1dlWAHQ+Df1YADr/vGETawGwLMu37w9sv7Fksc0HPEjqUDa2bfuy5igA64m1AGwahOEFXczGxWLhuTxYl59pFfT/xRNrAfDjL95G5eDfXbx+yHUWAL/+vw5unCxiKwDbXMm1Dp02i9e16noa+v196uLGySK2AuDXXLyNThaAl1NO5w5Av9acroIXFbEVAHfOXhC2rTaTiZcPuk4WzV0oAOFAAQj5GSqh62YwDMNXH4fuJc9REFsBEHF662QBAPen+HQVAEb/wyO2AiBitn/cLABdXQC/5j8DgPcTWwEQgYhAYpRs2uDz+Vxbc5j+f3hQADaQyWS0cgM2bXBdT3/LsnxV/+lc8RglFIB7CFpNqAq6noY8/cOFAnAPQZqJVEJXC4D+f7hQAO4hlUppIwKbXAAdT0TDMHwFcx3H0Vbwoia2V4P99NNPwq73dhwHe3t72gbRdCWfz+P09HTr1w0GA5RKpRBWFD9iawGIPAF2dnZwdnYm7HnEG/T/wye2MwFns1mgKcB3yWQyKJfLgSbxku0QXQBkmiZM01z5d4vFIpFuQ2wFYDweC79R98WLF5jNZlqMCdOdbDbry4VzHAemacK27eWG3zaV6E6CGo/HGA6HGI/HsXX/YhsDsCwLb968Ef5cx3Gk3AuYNKrVaqAr3EQzGo3Q7/fR7/e17ahcRWwFABAbCLwNRSB8Li8vA89zCIvBYIBWqxWLWENsg4BAeLngnZ0dtNvt2PUKqIKIYS5hsr+/j4uLC7Tbbe3Kxe8SawEI01enCIRH0FFuUZHJZHBxcYFqtapVyfhtYi0Aw+EQ8/k8tOe7IqDLB1YHTNPUrvz66OgIvV5Py8Mg1gIABLtA0ws7Ozt4/fq1NtWCqpLNZtFut/H+/XshrdxRk0ql8ObNG+3EK9ZBQJeoAkrdbhe1Wi22KaMwsG0bxWJRaM2GbI6Pj7VJFSdCAGzbxuvXryN5r8lkglKpFKtUURhks1mUy+XQNv7dceDD4XAZsIsiyKiLCCRCAADg7OwM+/v7kbyX4zioVCrsSFuBZVmoVqvCN36320Wn08FsNvMkvoZhwLZt5PP50ETo2bNnyqcKEyMAhmHg8vIylLqAdZyfn6NWq0X2fipjGAaq1arw6kyXg4MD33UZYYmS4zjI5XJKW4OxDwK6LBYLVCqVSN/z6OgI7XZ7bf15Usjn87i8vAxt8we9/Xc8HqNQKODVq1cCV3UdIK7X60KfKZrECABwXRjU7XYjfc9MJoNer5fIVKFpmmi32zg9PQ3V8hJlZrdaLRwcHMBxHCHPA65//ypnBhIlAABQq9U8X6QpCjdVWK1WI31fmeTzefR6vUii+yL9bNcaEEm5XBb6PJEkTgAWiwVKpZJQlfeKzgUjXjEMA2dnZ6Gf+rcRHWgbj8c4Pj4W9rxUKqWsFZA4AQCuZwWIVnmvPHr0CG/evIll4ZBlWej1eltnW7rdru8pvm7rrmg6nQ4Gg4Gw56lqBSRSAADxKr8tJycnODs707aG/C7FYhFv3rzZKr8+Go1wcHCASqXi2yoKM81WqVSEWYqpVErJOFBiBQC4VnmZIrC/vx8Ll6Ber+Pk5MTz9zuOg+Pj42VLtd/hH0C4ArBYLNBqtYQ9jwKgILJFQNcacuDa3+/1elul9waDAfb29j6rkguyMcIutGm1WsKsAAqAosgWAQA4PT1VPmd8G9ff99q44zgOnj9/jlKp9EWvhN+e+tFoFHrfxWKxEFbSu7Ozo9z8AArADSqIwOHhIdrttvJxAcuy0G63Pfv7o9EIe3t7K0ujTdP03f0XVZmtyJp+CoDCdDod4YUg25LJZJQWAdu20W63PfvszWYThUJh7UmtsvnvMh6Phc2VoAAojlsIEuYgkft49OiRksHBfD6P169fe9r8juPg2bNn985j8LshHMeJtNFG1Hup9julAKxgPB4jl8tFXjF4m1QqpdTIsW1u6ZlMJsjlcp42jd8Ozai77ES9X5TNaF6gAKxhsVggl8tF3jtwG1XmDm6z+bvdLgqFgqfiHB3MfxeRxUYquQEUgHuoVCpSg4OyRcC2bc+bv9lsolKpeI7M6yQAqvf1+4UC4AE3OCgrLiBLBCzL8pyaPD4+3nr+YhD/X8adDKKCwyoFeCkAHnHjAiLrw7fB7S2P6sPjtvLe57O6VX3bpsosy/I9lkvWpCVRoiPbpbsNBWAL3E7C4+NjKanCR48eRXZL8Ww2u3ejuTck+cmTB/GD42qOy4AC4INOpyMtS5DJZCKbK1CpVNYGQYNej6aT/x9nKAA+mc1myOVyOD8/j/y9j46OIoskrxKBoJvfMAzfg0LuTvslwaAABKRWq+H58+eRuwRRthLfFgERF6MGOf05aVksFAAB9Pv9yF2CnZ2dSEeMVSoVnJ+fC7kVOen+v0q3SlMABOFOGYqycOjw8DDSopJarSbkw5t0/1+lm6MoAAJxR4+LHi+9CZ1aiIHrFJjfctjJZCJ188RxvDsFIARarVZkcQGVB06uQmf/X9R1YnQBEkC/30ehUIhEBFQdOLkKXc1/kac/XYCEEFVXoS5WQJDhH0A8BMDv9OOwoACEjBscDFsEdLACggQsZZVgu4gKtqpk/gMUgEhYLBahi0AqlVKqxnwVupr/gLj6fQpAQolCBFR3A3TO/4sSANk/x10oABEStgioOHbaxbZt3+k/We2/LkE6F2+jYhkzBSBiwrybMJVKKZurDnL6y07/ifL/Zf8cq6AASCDMuwlVjQPo7P+Lcq1k/xyroABIIqy7CVUUANM0A5nQstN/QVKXLo7j0AIgn9PpdIT3Dqg0cNIlyOkv228WFVcRebmISCgAkqnValLvIIgCnf1/Ude4i7xkVCRfyV7AJorF4sqe906no1w01S9uA9HFxYWQ5/kdtBEWhmH4nv0PyDX/bdsWEv0fjUbKfl6VFoB1V06Px2Nl/0H9MBwOcX5+jqOjI9lLEU5Ql0SmAIg6/bedlhwlyroAm4JZKga6gtJoNKTeSRgWQXxome2/2WxWiDU1Go2UjP67KCsAquazw2KxWCjrJwZBV/9fVG+Fyqc/oLAAbDrl4yoOqkaK/RK0gk7WyZmU0x+gACjFbDaT3vUmkqApNFmbR9SsxVqtJuQ5YaKsAGza5HEVAEDNajG/BBEAWUJYLBaFFP6cn58r1/m3CmUFYNMvQdRoJhWJiwAYhqHd8A/DMIT4/o7jKO/7uygpAF6i/CpWvIkg6KmhSlGRjuZ/vV733bF4m21uSJaNkgLgxcSPsxsQZGyUKvURQQRaRvuvbduBCpZcBoOB9OrFbVBSALxYAHGsBRCBKgKgU/efaZpCxqvP53NUKhUBK4oObQUgri4AEGwDqCAA2Ww2kCkd9QkqyvQvlUramP4uSgqAF/NeRKQ2jqgQRNTJ/69Wq0Jy/q9evdIi6n8XJQXA6+ZWeQSWLFT4EAaxzqJs/83n80L6L7rdrrZVnMoJwDa+fZzdAD/IvjoL0Gf2v2VZOD09DfycyWSiRcHPOpQTgG2uvI6rBeBX2FQw/4OKchT+v2VZaLfbgZ8zmUxQKBSki24QlBOAbT5AOszC98M2IngbFdJPqvv/pmmi3W4HDvo5jqNVvn8dygnAtvl91Wfh+8GPCT2fz5WwAILk0sN2YQzDwNnZmZDNXygUlIi3BEV7AYibG+DXhObpvxnX7A+aPYrT5gcUFIBtUzK6XIzpFb+bSIUotKr+Pzf/epQSAL/lvUkXAFVmzqloAWSzWSE+/3w+j93mB2IiAJlMJhYpQb9DKFXoPAs6/COMa7Pz+TwuLi4Cb/7JZIJcLhe7zQ8oJgBBNrEO12Pfh58hlKpMnVHN/K/X60Ly/IPBQPtU3yaUEoAgHX6ZTEbrgKBt275KUlU4/QF1zH/LstDr9XB4eBj4Wc1mU8v6/m2IjQAA13XdfnPoMjEMw9cYqsFgoMTpbxhGoHp6Ue2/xWJRWLDv+fPnyohrmCglAEGbMlKplLB5blFSLpe39p8dx1GmBFX27H+3uOfk5ESYv69CWjUKlBEAUQM+Dg8PtcoK+G1IabVaSkT+geDmf5DNVi6X0ev1hHT0NZtN5HI5Zf5do0CZm4FETvipVqsYj8fKR20ty/JlsYxGI6XMUxn+fz6f92U5rcId5KGCOxU1ylgAItN4Ozs7aLfbSvcJuMUp25qsbg26KliWFcjs3rb9183rn56eCtn87qmfxM0PKCQAomf8qSwCtm37Lk6pVCpKmahRnf75fB69Xg8XFxfCLu04ODhAo9GIdZT/PmLpAri4IqBSBVe5XMaLFy98vbbZbCoXnArT/zdNE/l8Hvl8Xtgo+Pl8jkajEbtbmPzyIJ1O/0P2IgDg559/3vj3juMEMjVfvXoltV7eHTzp9/TqdrtKmf7Adfrv48ePgZ7xzTfffHYCG4YB27aFTel1cRwHrVYLrVYr0Sf+XZSwAO47/QeDARqNRqCa7pOTE9i2HbkJbRgGisWi71MfUHPzA8FPf7f917IsZLNZZLNZoZse4Ma/Dy0EYDgcYjweo1AoBBKBTCaD9+/fo9vtotFohCoErvlaLBYDWS6qbn4guACYpomffvpJyETeu3Dje0MJF+A+v/jbb79dblbLsnB2dibEJ3Qvcej3+0I+JKLNV5U3P4DQNm8QXB9f1O807ighAPV6fW3t9nw+x97e3mdfMwxDSMnnbdymmuFwiMVi4SlomM1mYZrm0oQVuZ5ms6lUrv8u2WwWFxcXspexZDAYoNVqJTad5xflXYBVv9DFYoFcLrdROLYlk8kgk8l8YYncHVMVNO99H26eX7Vo/11UaLyaz+dotVro9/tKpUZ1QgkB2BQZ37QR3OqtarUa2qaM8gKSyWSCUqmkxYdZlgDM53P0+310Oh1lUrs6I10AvAQAN9HpdDAcDgOl2FRAdZP/NqZpRnpF+2g0Qr/fXwaDiTiUFgCvU2JnsxkKhQKKxSLK5bJygalNjEYj5ar77iPs038ymSzjMW5MhoSDdAHY1AOwrR/carXQ6XRQLpeFXPkUJjo3oIjs23DnGbrNWzr+e+iMdAHYZAH4CYQtFgvUajW0Wi2Uy2VhQUJRTCaTpVDpStAUZxR1GMQb0puB1glA0Ckxs9kMlUoF3377LZrNJubzue9niaDb7eLZs2fI5XJab34R5r9KswySjnQLYF23nihTcDabodFooNFoLIt0bNuOJE4gutBIBYIKgKjxX0QMShQCycCtPc9ms8KyB6PRaOnHxjV4dXl5GSgDMBgMUCqVBK6IBEG6BSALd5O6mKYJ0zSXAS73z6uYzWZLE3abykHdCTr7H1DjBmPyicQKwF3cTc0P6HpERP/576sW0oOARB+CDludz+eJsJR0ggJAPGEYRuCyaJ7+6kEBIJ4Qkf6jAKgHBYB4gv5/PKEAEE+IGP/F4h/1oACQexExA4Gnv5pQAMi9iLhqjQKgJhQAci/0/+MLBYBsxDTNwOm/0WgUy7LoOEABIBvh6R9vKABkI8z/xxsKANlIUAvAcRwKgMJQAMhaRMxN4OZXGwoAWQv9//hDASBrof8ffygAZCUiZv+z/Vd9KABkJTz9kwEFgKyEApAMKADkCwzDEDIoVfULTgkFgKxARPSf5b96QAEgX0DzPzlQAMgXMP+fHCgA5DNEzP4HQPNfEygA5DNEXf3N/L8eUADIZ4gSAKIHFACyRMTwD6IXFACypFwuC3uWiEAiCR8KAAFwffofHh4Kex5dCT2gABAYhoGzszOhzzw6OoJlWUKfScRDAUg4hmGg3W6H4vu3222KgOL8Znd396XsRZDoMQwDf/7zn/G3v/1NSN5/Fb/97W/x3Xff4Q9/+AMWiwVvBlKQB+l0+h+yF0HCxzRNmKYJy7KQzWaRzWYDj/vaFsdxMB6PMRwOMR6Pl6JAYZAHBSCGVKtV5PP5yDe4KLrdLiqViuxlJALGAGKIiLv8ZEKLIDooADFERC+/TCgA0UEBiBmGYcheQmAoANFBAYgZcUi7sZEoOigAMSMOAsBW4uigAMQM3V2A0WgkewmJ4ivZCyBiGY/HaDabspfhG/r/0cI6AEISDF0AQhIMBYCQBEMBICTBUAAISTAUAEISDAWAkARDASAkwTwE8E72IgghUnhHC4CQBPMQwAfZiyCESOHDQwBT2asghEhhSguAkOTy4QEAsCGIkOQxnU4fuEHAj1JXQgiJmo/ApzqAt/LWQQiRwFvgkwD8IG0ZhBAZ/AAAD9w/pdPpKYA/SloMISQ6fplOp2ng81LgH+WshRASMcu9flsAGhIWQgiJnuVeXwrAdDqdgn0BhMSddzd7HcCX3YAvI10KISRqXt7+w4O7f5tOp98C+FNEiyGERMe76XT65PYXVnUDlqNZCyEkYr7Y27+5+4Wrq6v/293dfQDgSRQrIoREwl+n02n77he/cAFc0un0BwDfhLokQkgUfJxOp49X/cWmgSDfA/g1lOUQQqLiV1zv5ZWsFYDpdPph0wsJIVrw/c1eXskXMYDbXF1d/e/u7u4vAJ4KXxYhJGyOVvn9t9koAABwdXX1gSJAiHYcTafTH+77pnsFAFiKwEcA/wrgdwEXRggJj18BPLvv5HdZmwVYRTqdfozrNkJmBwhRj4+4x+e/y1YC4JJOp18C+E8/ryWEhMJfp9Ppy21f5EsAgKU10ADLhgmRyTsA5W1O/dv4FgCXdDr9BNclhn8J+ixCiGf+DqAxnU7fBnlIYAFwSafTaVwLwVNwshAhYfALrod5NG639AZBmADc5sY9eHrzHwOGhPjnI643/Y9+zfxNhCIAd7lxEx4D2MWnJiPGDgj5hDuM5y2AKwAfgpr3Xvh/hENXm+CaxHYAAAAASUVORK5CYII=');
|
266 |
+
background-repeat: no-repeat;
|
267 |
+
background-position: center center;
|
268 |
+
background-size: 22px;
|
269 |
}
|
270 |
.seopress-styles #seopress-navbar {
|
271 |
padding: 10px 25px;
|
272 |
height: 40px;
|
273 |
margin: 0 auto;
|
274 |
+
width: 55rem;
|
275 |
}
|
276 |
#seopress-header {
|
277 |
margin: 0;
|
288 |
}
|
289 |
#seopress-header #seopress-admin h1 .seopress-info-version {
|
290 |
position: relative;
|
291 |
+
left: 190px;
|
292 |
top: -17px;
|
293 |
}
|
294 |
#seopress-header #seopress-admin .wpc-info-version {
|
337 |
}
|
338 |
.seopress-tab {
|
339 |
display: none;
|
340 |
+
background: #fff;
|
341 |
+
padding: 1.5rem;
|
342 |
}
|
343 |
.seopress-tab.active {
|
344 |
display: block;
|
409 |
.seopress-page-list .seopress-feature, #seopress-notifications-center {
|
410 |
background: #fff;
|
411 |
margin: 20px auto;
|
412 |
+
box-shadow: 0px 0px 20px rgba(0,0,0,0.1);
|
413 |
max-width: 45rem;
|
414 |
padding: 1.5rem;
|
415 |
width: 100%;
|
435 |
margin: 0px;
|
436 |
display: block;
|
437 |
}
|
438 |
+
.seopress-page-list .seopress-feature h3 {
|
439 |
margin: 0;
|
440 |
font-size: 16px;
|
441 |
font-weight: bold;
|
442 |
}
|
443 |
+
.seopress-page-list .seopress-feature h3 .dashicons {
|
444 |
font-size: 16px;
|
445 |
margin-left: 5px;
|
446 |
vertical-align: middle;
|
447 |
}
|
448 |
+
#seopress-content .seopress-page-list .seopress-feature a,
|
449 |
+
#seopress-notifications-center .seopress-alert .button-primary {
|
450 |
+
color: #232323;
|
451 |
text-decoration: none;
|
452 |
+
background: #F1F1F1;
|
453 |
+
border: none;
|
454 |
+
border-radius: 30px;
|
455 |
+
padding-right: 20px;
|
456 |
+
padding-left: 20px;
|
457 |
+
line-height: 34px;
|
458 |
+
text-transform: uppercase;
|
459 |
+
height: 34px;
|
460 |
+
transition: all 300ms linear;
|
461 |
+
box-shadow: none;
|
462 |
+
text-shadow: none;
|
463 |
+
}
|
464 |
+
#seopress-content .seopress-page-list .seopress-feature a:hover,
|
465 |
+
#seopress-notifications-center .seopress-alert .button-primary:hover {
|
466 |
text-decoration: none;
|
467 |
+
color: #FFF;
|
468 |
+
background: #232323;
|
469 |
+
}
|
470 |
+
#seopress-notifications-center .seopress-alert .button-primary {
|
471 |
+
float: right;
|
472 |
+
margin: 5px 0;
|
473 |
}
|
474 |
#seopress-notifications-center h2 {
|
475 |
margin: 5px 0px 15px 5px;
|
480 |
margin-right: 10px;
|
481 |
}
|
482 |
#seopress-notifications-center .seopress-alert {
|
483 |
+
padding: 0;
|
484 |
+
display: inline-block;
|
485 |
+
margin: 0px 10px 10px 5px;
|
486 |
+
border-bottom: 1px solid rgba(224, 224, 224, 1);
|
487 |
+
width: calc(100% - 30px);
|
488 |
}
|
489 |
#seopress-notifications-center .seopress-alert p {
|
490 |
display: inline-block;
|
491 |
}
|
492 |
+
#seopress-notifications-center .seopress-alert .impact {
|
493 |
+
padding: 4px 5px;
|
494 |
+
color: #fff;
|
495 |
+
text-transform: uppercase;
|
496 |
+
font-weight: bold;
|
497 |
+
font-size: 10px;
|
498 |
+
}
|
499 |
+
#seopress-notifications-center .seopress-alert .impact.low {
|
500 |
+
background: #F89406;
|
501 |
+
}
|
502 |
+
#seopress-notifications-center .seopress-alert .impact.medium {
|
503 |
+
background: #F9F04C;
|
504 |
+
color: #515151;
|
505 |
+
}
|
506 |
+
#seopress-notifications-center .seopress-alert .impact.high {
|
507 |
+
background: #ff4949;
|
508 |
}
|
509 |
#seopress-notifications-center .seopress-alert .dashicons {
|
510 |
+
color: #FFC82C;
|
511 |
+
}
|
512 |
+
#seopress-content .seopress-page-list .seopress-feature .seopress-doc {
|
513 |
+
background: none;
|
514 |
+
float: right;
|
515 |
+
padding: 0;
|
516 |
+
width: inherit;
|
517 |
+
height: inherit;
|
518 |
+
text-align: right;
|
519 |
+
}
|
520 |
+
#seopress-content .seopress-page-list .seopress-feature .seopress-doc:hover {
|
521 |
+
color: #747474;
|
522 |
+
background: none;
|
523 |
}
|
524 |
.seopress-option .seopress-table {
|
525 |
background: #FFF none repeat scroll 0% 0%;
|
540 |
font-weight: bold;
|
541 |
background: #f1f1f1;
|
542 |
}
|
543 |
+
#seopress-content .feature-state {
|
544 |
+
font-style: italic;
|
545 |
+
font-size: 12px;
|
546 |
+
}
|
547 |
+
#seopress-content .feature-state.feature-state-on {
|
548 |
+
display: inline;
|
549 |
+
}
|
550 |
+
#seopress-content .feature-state-on {
|
551 |
+
display: inline;
|
552 |
+
}
|
553 |
+
#seopress-content .feature-state-off {
|
554 |
+
display: none;
|
555 |
+
}
|
556 |
+
.seopress-option .postbox .inside li {
|
557 |
+
list-style: square inside;
|
558 |
+
padding-left: 5px;
|
559 |
+
}
|
560 |
+
#tab_seopress_page_speed .inside li {
|
561 |
+
list-style: none;
|
562 |
+
padding-left: 0;
|
563 |
+
}
|
564 |
+
.seopress-option .log {
|
565 |
+
margin: 0;
|
566 |
+
text-transform: uppercase;
|
567 |
+
display: inline-block;
|
568 |
+
vertical-align: middle;
|
569 |
+
padding: 5px;
|
570 |
+
color: rgba(19,191,17,1);
|
571 |
+
font-style: italic;
|
572 |
}
|
573 |
.seopress-option input[type="text"].seopress-admin-menu-input {
|
574 |
min-width: inherit;
|
577 |
.seopress_page_seopress-import-export .postbox {
|
578 |
width: calc(100% - 20px);
|
579 |
}
|
580 |
+
.seopress-option .wrap-tags {
|
581 |
+
position: relative;
|
582 |
+
display: inline-block;
|
583 |
+
width: 100%;
|
584 |
+
margin-bottom: 10px;
|
585 |
+
}
|
586 |
+
.seopress-option .tag-title {
|
587 |
+
padding: 3px 5px;
|
588 |
+
background: #F1F1F1;
|
589 |
+
font-weight: bold;
|
590 |
+
position: relative;
|
591 |
+
top: 5px;
|
592 |
+
left: 0;
|
593 |
+
font-size: 11px;
|
594 |
+
transition: all 300ms linear;
|
595 |
+
cursor: pointer;
|
596 |
+
float: left;
|
597 |
+
margin-right: 5px;
|
598 |
+
user-select: none;
|
599 |
+
}
|
600 |
+
.seopress-option .tag-title:hover, .seopress-option .tag-title:focus, .seopress-option .tag-title:active {
|
601 |
+
background: #232323;
|
602 |
+
color: #fff;
|
603 |
+
user-select: none;
|
604 |
+
}
|
605 |
+
.seopress-option .tag-title .dashicons {
|
606 |
+
padding: 0;
|
607 |
+
height: 16px;
|
608 |
+
width: 16px;
|
609 |
+
font-size: 16px;
|
610 |
+
margin-right: 5px;
|
611 |
+
vertical-align: middle;
|
612 |
+
}
|
613 |
+
|
614 |
+
/*************************************************************************************************/
|
615 |
+
/* Admin - Dashboard */
|
616 |
+
/*************************************************************************************************/
|
617 |
+
input.toggle {
|
618 |
+
max-height: 0;
|
619 |
+
max-width: 0;
|
620 |
+
opacity: 0;
|
621 |
+
}
|
622 |
+
input.toggle + label {
|
623 |
+
display: inline-block;
|
624 |
+
position: relative;
|
625 |
+
box-shadow: inset 0 0 0px 1px #d5d5d5;
|
626 |
+
text-indent: -5000px;
|
627 |
+
height: 30px;
|
628 |
+
width: 50px;
|
629 |
+
border-radius: 15px;
|
630 |
+
}
|
631 |
+
input.toggle + label:before {
|
632 |
+
content: "";
|
633 |
+
position: absolute;
|
634 |
+
display: block;
|
635 |
+
height: 30px;
|
636 |
+
width: 30px;
|
637 |
+
top: 0;
|
638 |
+
left: 0;
|
639 |
+
border-radius: 15px;
|
640 |
+
background: rgba(19,191,17,0);
|
641 |
+
-moz-transition: .25s ease-in-out;
|
642 |
+
-webkit-transition: .25s ease-in-out;
|
643 |
+
transition: .25s ease-in-out;
|
644 |
+
}
|
645 |
+
input.toggle + label:after {
|
646 |
+
content: "";
|
647 |
+
position: absolute;
|
648 |
+
display: block;
|
649 |
+
height: 30px;
|
650 |
+
width: 30px;
|
651 |
+
top: 0;
|
652 |
+
left: 0px;
|
653 |
+
border-radius: 15px;
|
654 |
+
background: white;
|
655 |
+
box-shadow: inset 0 0 0 1px rgba(0,0,0,.2), 0 2px 4px rgba(0,0,0,.2);
|
656 |
+
-moz-transition: .25s ease-in-out;
|
657 |
+
-webkit-transition: .25s ease-in-out;
|
658 |
+
transition: .25s ease-in-out;
|
659 |
+
}
|
660 |
+
input.toggle[data-toggle="1"] + label:before {
|
661 |
+
width: 50px;
|
662 |
+
background: rgba(19,191,17,1);
|
663 |
+
}
|
664 |
+
input.toggle[data-toggle="1"] + label:after {
|
665 |
+
left: 20px;
|
666 |
+
box-shadow: inset 0 0 0 1px rgba(19,191,17,1), 0 2px 4px rgba(0,0,0,.2);
|
667 |
+
}
|
668 |
+
#seopress-content .seopress-page-list {
|
669 |
+
position: relative;
|
670 |
+
}
|
671 |
+
#seopress-notice-save {
|
672 |
+
position: fixed;
|
673 |
+
color: #fff;
|
674 |
+
padding: 15px 40px;
|
675 |
+
font-size: 14px;
|
676 |
+
text-align: center;
|
677 |
+
border-radius: 50px;
|
678 |
+
background: #4AB866;
|
679 |
+
top: 50px;
|
680 |
+
right: 20px;
|
681 |
+
}
|
682 |
+
.seopress_page_seopress-pro-page #wpcontent {
|
683 |
+
background: #F4F7FA;
|
684 |
+
}
|
685 |
+
.seopress-option .wrap h2.nav-tab-wrapper, .seopress-option h1.nav-tab-wrapper, .seopress-option h3.nav-tab-wrapper {
|
686 |
+
border-bottom: 1px solid #EEE;
|
687 |
+
margin: 0;
|
688 |
+
padding-top: 9px;
|
689 |
+
padding-bottom: 0;
|
690 |
+
line-height: inherit;
|
691 |
+
background: none;
|
692 |
+
}
|
693 |
+
.seopress-option .nav-tab {
|
694 |
+
border: 0px solid #ccc;
|
695 |
+
border-bottom: none;
|
696 |
+
background: none;
|
697 |
+
opacity: 0.5;
|
698 |
+
transition: opacity 300ms linear;
|
699 |
+
}
|
700 |
+
.seopress-option .about-wrap h2 .nav-tab-active, .seopress-option .nav-tab-active, .seopress-option .nav-tab-active:hover {
|
701 |
+
background-color: #fff;
|
702 |
+
border-bottom-color: rgb(35, 40, 45);
|
703 |
+
}
|
704 |
+
.seopress-option .nav-tab-active, .nav-tab-active:focus, .seopress-option .nav-tab-active:focus:active, .seopress-option .nav-tab-active:hover {
|
705 |
+
border-bottom: 2px solid rgb(35, 40, 45);
|
706 |
+
background: none;
|
707 |
+
color: rgb(35, 40, 45);
|
708 |
+
opacity: 1;
|
709 |
+
outline: none;
|
710 |
+
}
|
711 |
+
.seopress-option .nav-tab:hover {
|
712 |
+
opacity:1;
|
713 |
+
}
|
714 |
+
.seopress-option .nav-tab:focus {
|
715 |
+
outline: none;
|
716 |
+
box-shadow: none;
|
717 |
+
}
|
assets/img/logo-seopress.png
CHANGED
Binary file
|
assets/js/seopress-dashboard.js
ADDED
@@ -0,0 +1,212 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
jQuery(document).ready(function(){
|
2 |
+
//Titles
|
3 |
+
jQuery('#toggle-titles').on('click', function() {
|
4 |
+
jQuery('#toggle-titles').attr('data-toggle', jQuery('#toggle-titles').attr('data-toggle') == '1' ? '0' : '1');
|
5 |
+
jQuery.ajax({
|
6 |
+
method : 'POST',
|
7 |
+
url : seopressAjaxToggleFeatures.seopress_toggle_features,
|
8 |
+
_ajax_nonce: seopressAjaxToggleFeatures.seopress_nonce,
|
9 |
+
data : {
|
10 |
+
action: 'seopress_toggle_features',
|
11 |
+
feature: 'toggle-titles',
|
12 |
+
feature_value: jQuery('#toggle-titles').attr('data-toggle'),
|
13 |
+
},
|
14 |
+
success : function( data ) {
|
15 |
+
jQuery( '#seopress-notice-save' ).css('display', 'block');
|
16 |
+
jQuery( '#seopress-notice-save .html' ).html('Titles & metas has been successfully updated!');
|
17 |
+
jQuery( '#titles-state' ).toggleClass('feature-state-on');
|
18 |
+
jQuery( '#titles-state-default' ).toggleClass('feature-state-off');
|
19 |
+
jQuery( '#seopress-notice-save' ).delay(3500).fadeOut();
|
20 |
+
},
|
21 |
+
});
|
22 |
+
});
|
23 |
+
//XML Sitemap
|
24 |
+
jQuery('#toggle-xml-sitemap').on('click', function() {
|
25 |
+
jQuery('#toggle-xml-sitemap').attr('data-toggle', jQuery('#toggle-xml-sitemap').attr('data-toggle') == '1' ? '0' : '1');
|
26 |
+
jQuery.ajax({
|
27 |
+
method : 'POST',
|
28 |
+
url : seopressAjaxToggleFeatures.seopress_toggle_features,
|
29 |
+
_ajax_nonce: seopressAjaxToggleFeatures.seopress_nonce,
|
30 |
+
data : {
|
31 |
+
action: 'seopress_toggle_features',
|
32 |
+
feature: 'toggle-xml-sitemap',
|
33 |
+
feature_value: jQuery('#toggle-xml-sitemap').attr('data-toggle'),
|
34 |
+
},
|
35 |
+
success : function( data ) {
|
36 |
+
jQuery( '#seopress-notice-save' ).css('display', 'block');
|
37 |
+
jQuery( '#seopress-notice-save .html' ).html('XML Sitemap has been successfully updated!');
|
38 |
+
jQuery( '#sitemap-state' ).toggleClass('feature-state-on');
|
39 |
+
jQuery( '#sitemap-state-default' ).toggleClass('feature-state-off');
|
40 |
+
jQuery( '#seopress-notice-save' ).delay(3500).fadeOut();
|
41 |
+
},
|
42 |
+
});
|
43 |
+
});
|
44 |
+
//Social
|
45 |
+
jQuery('#toggle-social').on('click', function() {
|
46 |
+
jQuery('#toggle-social').attr('data-toggle', jQuery('#toggle-social').attr('data-toggle') == '1' ? '0' : '1');
|
47 |
+
jQuery.ajax({
|
48 |
+
method : 'POST',
|
49 |
+
url : seopressAjaxToggleFeatures.seopress_toggle_features,
|
50 |
+
_ajax_nonce: seopressAjaxToggleFeatures.seopress_nonce,
|
51 |
+
data : {
|
52 |
+
action: 'seopress_toggle_features',
|
53 |
+
feature: 'toggle-social',
|
54 |
+
feature_value: jQuery('#toggle-social').attr('data-toggle'),
|
55 |
+
},
|
56 |
+
success : function( data ) {
|
57 |
+
jQuery( '#seopress-notice-save' ).css('display', 'block');
|
58 |
+
jQuery( '#seopress-notice-save .html' ).html('Social has been successfully updated!');
|
59 |
+
jQuery( '#social-state' ).toggleClass('feature-state-on');
|
60 |
+
jQuery( '#social-state-default' ).toggleClass('feature-state-off');
|
61 |
+
jQuery( '#seopress-notice-save' ).delay(3500).fadeOut();
|
62 |
+
},
|
63 |
+
});
|
64 |
+
});
|
65 |
+
//Google Analytics
|
66 |
+
jQuery('#toggle-google-analytics').on('click', function() {
|
67 |
+
jQuery('#toggle-google-analytics').attr('data-toggle', jQuery('#toggle-google-analytics').attr('data-toggle') == '1' ? '0' : '1');
|
68 |
+
jQuery.ajax({
|
69 |
+
method : 'POST',
|
70 |
+
url : seopressAjaxToggleFeatures.seopress_toggle_features,
|
71 |
+
_ajax_nonce: seopressAjaxToggleFeatures.seopress_nonce,
|
72 |
+
data : {
|
73 |
+
action: 'seopress_toggle_features',
|
74 |
+
feature: 'toggle-google-analytics',
|
75 |
+
feature_value: jQuery('#toggle-google-analytics').attr('data-toggle'),
|
76 |
+
},
|
77 |
+
success : function( data ) {
|
78 |
+
jQuery( '#seopress-notice-save' ).css('display', 'block');
|
79 |
+
jQuery( '#seopress-notice-save .html' ).html('Google Analytics has been successfully updated!');
|
80 |
+
jQuery( '#analytics-state' ).toggleClass('feature-state-on');
|
81 |
+
jQuery( '#analytics-state-default' ).toggleClass('feature-state-off');
|
82 |
+
jQuery( '#seopress-notice-save' ).delay(3500).fadeOut();
|
83 |
+
},
|
84 |
+
});
|
85 |
+
});
|
86 |
+
//Advanced
|
87 |
+
jQuery('#toggle-advanced').on('click', function() {
|
88 |
+
jQuery('#toggle-advanced').attr('data-toggle', jQuery('#toggle-advanced').attr('data-toggle') == '1' ? '0' : '1');
|
89 |
+
jQuery.ajax({
|
90 |
+
method : 'POST',
|
91 |
+
url : seopressAjaxToggleFeatures.seopress_toggle_features,
|
92 |
+
_ajax_nonce: seopressAjaxToggleFeatures.seopress_nonce,
|
93 |
+
data : {
|
94 |
+
action: 'seopress_toggle_features',
|
95 |
+
feature: 'toggle-advanced',
|
96 |
+
feature_value: jQuery('#toggle-advanced').attr('data-toggle'),
|
97 |
+
},
|
98 |
+
success : function( data ) {
|
99 |
+
jQuery( '#seopress-notice-save' ).css('display', 'block');
|
100 |
+
jQuery( '#seopress-notice-save .html' ).html('Advanced features has been successfully updated!');
|
101 |
+
jQuery( '#advanced-state' ).toggleClass('feature-state-on');
|
102 |
+
jQuery( '#advanced-state-default' ).toggleClass('feature-state-off');
|
103 |
+
jQuery( '#seopress-notice-save' ).delay(3500).fadeOut();
|
104 |
+
},
|
105 |
+
});
|
106 |
+
});
|
107 |
+
//WooCommerce
|
108 |
+
jQuery('#toggle-woocommerce').on('click', function() {
|
109 |
+
jQuery('#toggle-woocommerce').attr('data-toggle', jQuery('#toggle-woocommerce').attr('data-toggle') == '1' ? '0' : '1');
|
110 |
+
jQuery.ajax({
|
111 |
+
method : 'POST',
|
112 |
+
url : seopressAjaxToggleFeatures.seopress_toggle_features,
|
113 |
+
_ajax_nonce: seopressAjaxToggleFeatures.seopress_nonce,
|
114 |
+
data : {
|
115 |
+
action: 'seopress_toggle_features',
|
116 |
+
feature: 'toggle-woocommerce',
|
117 |
+
feature_value: jQuery('#toggle-woocommerce').attr('data-toggle'),
|
118 |
+
},
|
119 |
+
success : function( data ) {
|
120 |
+
jQuery( '#seopress-notice-save' ).css('display', 'block');
|
121 |
+
jQuery( '#seopress-notice-save .html' ).html('WooCommerce has been successfully updated!');
|
122 |
+
jQuery( '#woocommerce-state' ).toggleClass('feature-state-on');
|
123 |
+
jQuery( '#woocommerce-state-default' ).toggleClass('feature-state-off');
|
124 |
+
jQuery( '#seopress-notice-save' ).delay(3500).fadeOut();
|
125 |
+
},
|
126 |
+
});
|
127 |
+
});
|
128 |
+
//Breadcrumbs
|
129 |
+
jQuery('#toggle-breadcrumbs').on('click', function() {
|
130 |
+
jQuery('#toggle-breadcrumbs').attr('data-toggle', jQuery('#toggle-breadcrumbs').attr('data-toggle') == '1' ? '0' : '1');
|
131 |
+
jQuery.ajax({
|
132 |
+
method : 'POST',
|
133 |
+
url : seopressAjaxToggleFeatures.seopress_toggle_features,
|
134 |
+
_ajax_nonce: seopressAjaxToggleFeatures.seopress_nonce,
|
135 |
+
data : {
|
136 |
+
action: 'seopress_toggle_features',
|
137 |
+
feature: 'toggle-breadcrumbs',
|
138 |
+
feature_value: jQuery('#toggle-breadcrumbs').attr('data-toggle'),
|
139 |
+
},
|
140 |
+
success : function( data ) {
|
141 |
+
jQuery( '#seopress-notice-save' ).css('display', 'block');
|
142 |
+
jQuery( '#seopress-notice-save .html' ).html('Breadcrumbs has been successfully updated!');
|
143 |
+
jQuery( '#breadcrumbs-state' ).toggleClass('feature-state-on');
|
144 |
+
jQuery( '#breadcrumbs-state-default' ).toggleClass('feature-state-off');
|
145 |
+
jQuery( '#seopress-notice-save' ).delay(3500).fadeOut();
|
146 |
+
},
|
147 |
+
});
|
148 |
+
});
|
149 |
+
//Robots
|
150 |
+
jQuery('#toggle-robots').on('click', function() {
|
151 |
+
jQuery('#toggle-robots').attr('data-toggle', jQuery('#toggle-robots').attr('data-toggle') == '1' ? '0' : '1');
|
152 |
+
jQuery.ajax({
|
153 |
+
method : 'POST',
|
154 |
+
url : seopressAjaxToggleFeatures.seopress_toggle_features,
|
155 |
+
_ajax_nonce: seopressAjaxToggleFeatures.seopress_nonce,
|
156 |
+
data : {
|
157 |
+
action: 'seopress_toggle_features',
|
158 |
+
feature: 'toggle-robots',
|
159 |
+
feature_value: jQuery('#toggle-robots').attr('data-toggle'),
|
160 |
+
},
|
161 |
+
success : function( data ) {
|
162 |
+
jQuery( '#seopress-notice-save' ).css('display', 'block');
|
163 |
+
jQuery( '#seopress-notice-save .html' ).html('Robots has been successfully updated!');
|
164 |
+
jQuery( '#robots-state' ).toggleClass('feature-state-on');
|
165 |
+
jQuery( '#robots-state-default' ).toggleClass('feature-state-off');
|
166 |
+
jQuery( '#seopress-notice-save' ).delay(3500).fadeOut();
|
167 |
+
},
|
168 |
+
});
|
169 |
+
});
|
170 |
+
//Google News
|
171 |
+
jQuery('#toggle-news').on('click', function() {
|
172 |
+
jQuery('#toggle-news').attr('data-toggle', jQuery('#toggle-news').attr('data-toggle') == '1' ? '0' : '1');
|
173 |
+
jQuery.ajax({
|
174 |
+
method : 'POST',
|
175 |
+
url : seopressAjaxToggleFeatures.seopress_toggle_features,
|
176 |
+
_ajax_nonce: seopressAjaxToggleFeatures.seopress_nonce,
|
177 |
+
data : {
|
178 |
+
action: 'seopress_toggle_features',
|
179 |
+
feature: 'toggle-news',
|
180 |
+
feature_value: jQuery('#toggle-news').attr('data-toggle'),
|
181 |
+
},
|
182 |
+
success : function( data ) {
|
183 |
+
jQuery( '#seopress-notice-save' ).css('display', 'block');
|
184 |
+
jQuery( '#seopress-notice-save .html' ).html('Google News Sitemap has been successfully updated!');
|
185 |
+
jQuery( '#news-state' ).toggleClass('feature-state-on');
|
186 |
+
jQuery( '#news-state-default' ).toggleClass('feature-state-off');
|
187 |
+
jQuery( '#seopress-notice-save' ).delay(3500).fadeOut();
|
188 |
+
},
|
189 |
+
});
|
190 |
+
});
|
191 |
+
//404
|
192 |
+
jQuery('#toggle-404').on('click', function() {
|
193 |
+
jQuery('#toggle-404').attr('data-toggle', jQuery('#toggle-404').attr('data-toggle') == '1' ? '0' : '1');
|
194 |
+
jQuery.ajax({
|
195 |
+
method : 'POST',
|
196 |
+
url : seopressAjaxToggleFeatures.seopress_toggle_features,
|
197 |
+
_ajax_nonce: seopressAjaxToggleFeatures.seopress_nonce,
|
198 |
+
data : {
|
199 |
+
action: 'seopress_toggle_features',
|
200 |
+
feature: 'toggle-404',
|
201 |
+
feature_value: jQuery('#toggle-404').attr('data-toggle'),
|
202 |
+
},
|
203 |
+
success : function( data ) {
|
204 |
+
jQuery( '#seopress-notice-save' ).css('display', 'block');
|
205 |
+
jQuery( '#seopress-notice-save .html' ).html('Redirections has been successfully updated!');
|
206 |
+
jQuery( '#redirections-state' ).toggleClass('feature-state-on');
|
207 |
+
jQuery( '#redirections-state-default' ).toggleClass('feature-state-off');
|
208 |
+
jQuery( '#seopress-notice-save' ).delay(3500).fadeOut();
|
209 |
+
},
|
210 |
+
});
|
211 |
+
});
|
212 |
+
});
|
assets/js/seopress-tabs.js
CHANGED
@@ -20,10 +20,45 @@ jQuery(document).ready(function($) {
|
|
20 |
jQuery('#seopress-tabs').find('.nav-tab.nav-tab-active').removeClass("nav-tab-active");
|
21 |
jQuery('#'+hash+'-tab').addClass("nav-tab-active");
|
22 |
|
23 |
-
|
24 |
sessionStorage.setItem("seopress_titles_tab", hash);
|
25 |
|
26 |
jQuery('#seopress-tabs').find('.seopress-tab.active').removeClass("active");
|
27 |
jQuery('#'+hash).addClass("active");
|
28 |
});
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
29 |
});
|
20 |
jQuery('#seopress-tabs').find('.nav-tab.nav-tab-active').removeClass("nav-tab-active");
|
21 |
jQuery('#'+hash+'-tab').addClass("nav-tab-active");
|
22 |
|
|
|
23 |
sessionStorage.setItem("seopress_titles_tab", hash);
|
24 |
|
25 |
jQuery('#seopress-tabs').find('.seopress-tab.active').removeClass("active");
|
26 |
jQuery('#'+hash).addClass("active");
|
27 |
});
|
28 |
+
});
|
29 |
+
|
30 |
+
jQuery(document).ready(function($) {
|
31 |
+
jQuery('#seopress-tag-site-title').click(function() {
|
32 |
+
jQuery("#seopress_titles_home_site_title").val(jQuery("#seopress_titles_home_site_title").val() + ' ' + jQuery('#seopress-tag-site-title').attr('data-tag'));
|
33 |
+
});
|
34 |
+
jQuery('#seopress-tag-site-title-author').click(function() {
|
35 |
+
jQuery("#seopress_titles_archive_post_author").val(jQuery("#seopress_titles_archive_post_author").val() + ' ' + jQuery('#seopress-tag-site-title-author').attr('data-tag'));
|
36 |
+
});
|
37 |
+
jQuery('#seopress-tag-site-title-date').click(function() {
|
38 |
+
jQuery("#seopress_titles_archives_date_title").val(jQuery("#seopress_titles_archives_date_title").val() + ' ' + jQuery('#seopress-tag-site-title-date').attr('data-tag'));
|
39 |
+
});
|
40 |
+
jQuery('#seopress-tag-site-title-search').click(function() {
|
41 |
+
jQuery("#seopress_titles_archives_search_title").val(jQuery("#seopress_titles_archives_search_title").val() + ' ' + jQuery('#seopress-tag-site-title-search').attr('data-tag'));
|
42 |
+
});
|
43 |
+
jQuery('#seopress-tag-site-title-404').click(function() {
|
44 |
+
jQuery("#seopress_titles_archives_404_title").val(jQuery("#seopress_titles_archives_404_title").val() + ' ' + jQuery('#seopress-tag-site-title-404').attr('data-tag'));
|
45 |
+
});
|
46 |
+
jQuery('#seopress-tag-site-desc').click(function() {
|
47 |
+
jQuery("#seopress_titles_home_site_title").val(jQuery("#seopress_titles_home_site_title").val() + ' ' + jQuery('#seopress-tag-site-desc').attr('data-tag'));
|
48 |
+
});
|
49 |
+
jQuery('#seopress-tag-meta-desc').click(function() {
|
50 |
+
jQuery("#seopress_titles_home_site_desc").val(jQuery("#seopress_titles_home_site_desc").val() + ' ' + jQuery('#seopress-tag-meta-desc').attr('data-tag'));
|
51 |
+
});
|
52 |
+
jQuery('#seopress-tag-post-author').click(function() {
|
53 |
+
jQuery("#seopress_titles_archive_post_author").val(jQuery("#seopress_titles_archive_post_author").val() + ' ' + jQuery('#seopress-tag-post-author').attr('data-tag'));
|
54 |
+
});
|
55 |
+
jQuery('#seopress-tag-archive-date').click(function() {
|
56 |
+
jQuery("#seopress_titles_archives_date_title").val(jQuery("#seopress_titles_archives_date_title").val() + ' ' + jQuery('#seopress-tag-archive-date').attr('data-tag'));
|
57 |
+
});
|
58 |
+
jQuery('#seopress-tag-search-keywords').click(function() {
|
59 |
+
jQuery("#seopress_titles_archives_search_title").val(jQuery("#seopress_titles_archives_search_title").val() + ' ' + jQuery('#seopress-tag-search-keywords').attr('data-tag'));
|
60 |
+
});
|
61 |
+
jQuery('.more-tags').click(function() {
|
62 |
+
jQuery('#contextual-help-link').click();
|
63 |
+
});
|
64 |
});
|
assets/js/seopress-tabs6.js
ADDED
@@ -0,0 +1,28 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
jQuery(document).ready(function($) {
|
2 |
+
if(typeof sessionStorage!='undefined') {
|
3 |
+
var seopress_tab_session_storage = sessionStorage.getItem("tab_seopress_google_analytics_enable");
|
4 |
+
if (seopress_tab_session_storage) {
|
5 |
+
jQuery('#seopress-tabs').find('.nav-tab.nav-tab-active').removeClass("nav-tab-active");
|
6 |
+
jQuery('#seopress-tabs').find('.seopress-tab.active').removeClass("active");
|
7 |
+
|
8 |
+
jQuery('#'+seopress_tab_session_storage+'-tab').addClass("nav-tab-active");
|
9 |
+
jQuery('#'+seopress_tab_session_storage).addClass("active");
|
10 |
+
} else {
|
11 |
+
//Default TAB
|
12 |
+
jQuery('#tab_seopress_google_analytics_enable-tab').addClass("nav-tab-active");
|
13 |
+
jQuery('#tab_seopress_google_analytics_enable').addClass("active");
|
14 |
+
}
|
15 |
+
};
|
16 |
+
jQuery("#seopress-tabs").find("a.nav-tab").click(function(e){
|
17 |
+
e.preventDefault();
|
18 |
+
var hash = jQuery(this).attr('href').split('#tab=')[1];
|
19 |
+
|
20 |
+
jQuery('#seopress-tabs').find('.nav-tab.nav-tab-active').removeClass("nav-tab-active");
|
21 |
+
jQuery('#'+hash+'-tab').addClass("nav-tab-active");
|
22 |
+
|
23 |
+
sessionStorage.setItem("tab_seopress_google_analytics_enable", hash);
|
24 |
+
|
25 |
+
jQuery('#seopress-tabs').find('.seopress-tab.active').removeClass("active");
|
26 |
+
jQuery('#'+hash).addClass("active");
|
27 |
+
});
|
28 |
+
});
|
assets/js/seopress-yoast-migrate.js
ADDED
@@ -0,0 +1,25 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
jQuery(document).ready(function(){
|
2 |
+
jQuery('#seopress-yoast-migrate').on('click', function() {
|
3 |
+
jQuery.ajax({
|
4 |
+
method : 'POST',
|
5 |
+
url : seopressAjaxYoastMigrate.seopress_yoast_migration,
|
6 |
+
_ajax_nonce: seopressAjaxYoastMigrate.seopress_nonce,
|
7 |
+
data : {
|
8 |
+
action: 'seopress_yoast_migration',
|
9 |
+
},
|
10 |
+
success : function( data ) {
|
11 |
+
jQuery('#seopress-yoast-migrate').removeAttr("disabled");
|
12 |
+
jQuery( '.spinner' ).css( "visibility", "hidden" );
|
13 |
+
jQuery( '#yoast-migration-tool .log' ).html('Migration completed!');
|
14 |
+
},
|
15 |
+
});
|
16 |
+
});
|
17 |
+
});
|
18 |
+
jQuery(document).ready(function(){
|
19 |
+
jQuery('#seopress-yoast-migrate').on('click', function() {
|
20 |
+
jQuery(this).attr("disabled", "disabled");
|
21 |
+
jQuery( '.spinner' ).css( "visibility", "visible" );
|
22 |
+
jQuery( '.spinner' ).css( "float", "none" );
|
23 |
+
jQuery( '#yoast-migration-tool .log' ).html('');
|
24 |
+
});
|
25 |
+
});
|
contributors.txt
CHANGED
@@ -2,3 +2,7 @@ Great people who contributed to this plugin :
|
|
2 |
|
3 |
Developers:
|
4 |
- Benjamin Denis: contact@seopress.org / @wpcloudy
|
|
|
|
|
|
|
|
2 |
|
3 |
Developers:
|
4 |
- Benjamin Denis: contact@seopress.org / @wpcloudy
|
5 |
+
|
6 |
+
Beta testers:
|
7 |
+
- Mickael Gris: mickael.gris@gmail.com / @mickaelgris
|
8 |
+
- Aurélien Denis: contact@wp-alacarte.com / @wpchannel
|
inc/admin/admin-header.php
ADDED
@@ -0,0 +1,63 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
<?php
|
2 |
+
|
3 |
+
defined( 'ABSPATH' ) or die( 'Please don’t call the plugin directly. Thanks :)' );
|
4 |
+
|
5 |
+
function seopress_admin_header() { ?>
|
6 |
+
<div id="seopress-header">
|
7 |
+
<div id="seopress-admin">
|
8 |
+
<div id="seopress-navbar">
|
9 |
+
<h1>
|
10 |
+
<span class="screen-reader-text"><?php _e( 'SEOPress', 'wp-seopress' ); ?></span>
|
11 |
+
<?php if ( is_plugin_active( 'seopress-pro/seopress-pro.php' ) ) { ?>
|
12 |
+
<span class="seopress-info-version">
|
13 |
+
<strong>
|
14 |
+
<?php _e('PRO', 'wp-seopress'); ?>
|
15 |
+
<?php echo SEOPRESSPRO_VERSION; ?>
|
16 |
+
</strong>
|
17 |
+
</span>
|
18 |
+
<?php } else { ?>
|
19 |
+
<span class="seopress-info-version"><?php echo SEOPRESS_VERSION; ?></span>
|
20 |
+
<?php } ?>
|
21 |
+
</h1>
|
22 |
+
<div id="seopress-notice">
|
23 |
+
<div class="small">
|
24 |
+
<span class="dashicons dashicons-wordpress"></span>
|
25 |
+
<?php _e( 'You like SEOPress? Don\'t forget to rate it 5 stars!', 'wp-seopress' ); ?>
|
26 |
+
|
27 |
+
<div class="wporg-ratings rating-stars">
|
28 |
+
<a href="//wordpress.org/support/view/plugin-reviews/wp-seopress?rate=1#postform" data-rating="1" title="" target="_blank"><span class="dashicons dashicons-star-filled" style="color:#e6b800 !important;"></span></a>
|
29 |
+
<a href="//wordpress.org/support/view/plugin-reviews/wp-seopress?rate=2#postform" data-rating="2" title="" target="_blank"><span class="dashicons dashicons-star-filled" style="color:#e6b800 !important;"></span></a>
|
30 |
+
<a href="//wordpress.org/support/view/plugin-reviews/wp-seopress?rate=3#postform" data-rating="3" title="" target="_blank"><span class="dashicons dashicons-star-filled" style="color:#e6b800 !important;"></span></a>
|
31 |
+
<a href="//wordpress.org/support/view/plugin-reviews/wp-seopress?rate=4#postform" data-rating="4" title="" target="_blank"><span class="dashicons dashicons-star-filled" style="color:#e6b800 !important;"></span></a>
|
32 |
+
<a href="//wordpress.org/support/view/plugin-reviews/wp-seopress?rate=5#postform" data-rating="5" title="" target="_blank"><span class="dashicons dashicons-star-filled" style="color:#e6b800 !important;"></span></a>
|
33 |
+
</div>
|
34 |
+
<script>
|
35 |
+
jQuery(document).ready( function($) {
|
36 |
+
$('.rating-stars').find('a').hover(
|
37 |
+
function() {
|
38 |
+
$(this).nextAll('a').children('span').removeClass('dashicons-star-filled').addClass('dashicons-star-empty');
|
39 |
+
$(this).prevAll('a').children('span').removeClass('dashicons-star-empty').addClass('dashicons-star-filled');
|
40 |
+
$(this).children('span').removeClass('dashicons-star-empty').addClass('dashicons-star-filled');
|
41 |
+
}, function() {
|
42 |
+
var rating = $('input#rating').val();
|
43 |
+
if (rating) {
|
44 |
+
var list = $('.rating-stars a');
|
45 |
+
list.children('span').removeClass('dashicons-star-filled').addClass('dashicons-star-empty');
|
46 |
+
list.slice(0, rating).children('span').removeClass('dashicons-star-empty').addClass('dashicons-star-filled');
|
47 |
+
}
|
48 |
+
}
|
49 |
+
);
|
50 |
+
});
|
51 |
+
</script>
|
52 |
+
</div>
|
53 |
+
<div class="small">
|
54 |
+
<a href="http://twitter.com/wpcloudy" target="_blank"><div class="dashicons dashicons-twitter"></div></a>
|
55 |
+
<a href="https://www.seopress.org/" target="_blank"><div class="dashicons dashicons-info"></div></a>
|
56 |
+
|
57 |
+
<a href="https://www.seopress.org/support" target="_blank"><?php _e( 'Support', 'wp-seopress' ); ?></a>
|
58 |
+
</div>
|
59 |
+
</div>
|
60 |
+
</div>
|
61 |
+
</div>
|
62 |
+
</div>
|
63 |
+
<?php } ?>
|
inc/admin/admin-metaboxes.php
CHANGED
@@ -8,11 +8,13 @@ defined( 'ABSPATH' ) or die( 'Please don’t call the plugin directly. Thank
|
|
8 |
add_action('add_meta_boxes','seopress_init_metabox');
|
9 |
function seopress_init_metabox(){
|
10 |
foreach (seopress_get_post_types() as $key => $value) {
|
11 |
-
add_meta_box('seopress_cpt', __('
|
12 |
}
|
|
|
13 |
}
|
14 |
|
15 |
function seopress_cpt($post){
|
|
|
16 |
$seopress_titles_title = get_post_meta($post->ID,'_seopress_titles_title',true);
|
17 |
$seopress_titles_desc = get_post_meta($post->ID,'_seopress_titles_desc',true);
|
18 |
$seopress_robots_index = get_post_meta($post->ID,'_seopress_robots_index',true);
|
@@ -31,7 +33,10 @@ function seopress_cpt($post){
|
|
31 |
$seopress_redirections_enabled = get_post_meta($post->ID,'_seopress_redirections_enabled',true);
|
32 |
$seopress_redirections_type = get_post_meta($post->ID,'_seopress_redirections_type',true);
|
33 |
$seopress_redirections_value = get_post_meta($post->ID,'_seopress_redirections_value',true);
|
34 |
-
|
|
|
|
|
|
|
35 |
function seopress_titles_title($seopress_titles_title) {
|
36 |
if ($seopress_titles_title !='') {
|
37 |
return $seopress_titles_title;
|
@@ -75,15 +80,23 @@ function seopress_cpt($post){
|
|
75 |
}
|
76 |
}
|
77 |
|
78 |
-
echo '<div id="seopress-tabs">
|
79 |
-
|
80 |
-
|
81 |
-
|
82 |
-
|
83 |
-
|
84 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
85 |
|
86 |
-
|
|
|
87 |
<div class="box-left">
|
88 |
<p>
|
89 |
<label for="seopress_titles_title_meta">'. __( 'Title', 'wp-seopress' ) .'</label>
|
@@ -122,37 +135,37 @@ function seopress_cpt($post){
|
|
122 |
<label for="seopress_robots_index_meta">
|
123 |
<input type="checkbox" name="seopress_robots_index" id="seopress_robots_index_meta" value="yes" '. checked( $seopress_robots_index, 'yes', false ) .' />
|
124 |
'. __( 'noindex', 'wp-seopress' ) .'
|
125 |
-
</label>
|
126 |
</p>
|
127 |
<p>
|
128 |
<label for="seopress_robots_follow_meta">
|
129 |
<input type="checkbox" name="seopress_robots_follow" id="seopress_robots_follow_meta" value="yes" '. checked( $seopress_robots_follow, 'yes', false ) .' />
|
130 |
'. __( 'nofollow', 'wp-seopress' ) .'
|
131 |
-
</label>
|
132 |
</p>
|
133 |
<p>
|
134 |
<label for="seopress_robots_odp_meta">
|
135 |
<input type="checkbox" name="seopress_robots_odp" id="seopress_robots_odp_meta" value="yes" '. checked( $seopress_robots_odp, 'yes', false ) .' />
|
136 |
'. __( 'noodp', 'wp-seopress' ) .'
|
137 |
-
</label>
|
138 |
</p>
|
139 |
<p>
|
140 |
<label for="seopress_robots_imageindex_meta">
|
141 |
<input type="checkbox" name="seopress_robots_imageindex" id="seopress_robots_imageindex_meta" value="yes" '. checked( $seopress_robots_imageindex, 'yes', false ) .' />
|
142 |
'. __( 'noimageindex', 'wp-seopress' ) .'
|
143 |
-
</label>
|
144 |
</p>
|
145 |
<p>
|
146 |
<label for="seopress_robots_archive_meta">
|
147 |
<input type="checkbox" name="seopress_robots_archive" id="seopress_robots_archive_meta" value="yes" '. checked( $seopress_robots_archive, 'yes', false ) .' />
|
148 |
'. __( 'noarchive', 'wp-seopress' ) .'
|
149 |
-
</label>
|
150 |
</p>
|
151 |
<p>
|
152 |
<label for="seopress_robots_snippet_meta">
|
153 |
<input type="checkbox" name="seopress_robots_snippet" id="seopress_robots_snippet_meta" value="yes" '. checked( $seopress_robots_snippet, 'yes', false ) .' />
|
154 |
'. __( 'nosnippet', 'wp-seopress' ) .'
|
155 |
-
</label>
|
156 |
</p>
|
157 |
<p>
|
158 |
<label for="seopress_robots_canonical_meta">'. __( 'Canonical URL', 'wp-seopress' ) .'</label>
|
@@ -171,6 +184,7 @@ function seopress_cpt($post){
|
|
171 |
</p>
|
172 |
<p>
|
173 |
<label for="seopress_social_fb_img_meta">'. __( 'Facebook Thumbnail', 'wp-seopress' ) .'</label>
|
|
|
174 |
<input id="seopress_social_fb_img_meta" type="text" name="seopress_social_fb_img" placeholder="'.__('Select your default thumbnail','wp-seopress').'" value="'.$seopress_social_fb_img.'" />
|
175 |
<input id="seopress_social_fb_img_upload" class="button" type="button" value="'.__('Upload an Image','wp-seopress').'" />
|
176 |
</p>
|
@@ -186,11 +200,14 @@ function seopress_cpt($post){
|
|
186 |
</p>
|
187 |
<p>
|
188 |
<label for="seopress_social_twitter_img_meta">'. __( 'Twitter Thumbnail', 'wp-seopress' ) .'</label>
|
|
|
189 |
<input id="seopress_social_twitter_img_meta" type="text" name="seopress_social_twitter_img" placeholder="'.__('Select your default thumbnail','wp-seopress').'" value="'.$seopress_social_twitter_img.'" />
|
190 |
<input id="seopress_social_twitter_img_upload" class="button" type="button" value="'.__('Upload an Image','wp-seopress').'" />
|
191 |
</p>
|
192 |
-
</div>
|
193 |
-
|
|
|
|
|
194 |
<p>
|
195 |
<label for="seopress_redirections_enabled_meta" id="seopress_redirections_enabled">
|
196 |
<input type="checkbox" name="seopress_redirections_enabled" id="seopress_redirections_enabled_meta" value="yes" '. checked( $seopress_redirections_enabled, 'yes', false ) .' />
|
@@ -211,8 +228,37 @@ function seopress_cpt($post){
|
|
211 |
}
|
212 |
echo '<a href="" id="seopress_redirections_value_live" class="button" target="_blank" style="display: none">'.__('Test your URL','wp-seopress').'</a>
|
213 |
</p>
|
214 |
-
</div>
|
215 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
216 |
';
|
217 |
}
|
218 |
|
@@ -287,6 +333,17 @@ function seopress_save_metabox($post_id){
|
|
287 |
} else {
|
288 |
delete_post_meta( $post_id, '_seopress_redirections_enabled', '' );
|
289 |
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
290 |
}
|
291 |
}
|
292 |
?>
|
8 |
add_action('add_meta_boxes','seopress_init_metabox');
|
9 |
function seopress_init_metabox(){
|
10 |
foreach (seopress_get_post_types() as $key => $value) {
|
11 |
+
add_meta_box('seopress_cpt', __('SEO','wp-seopress'), 'seopress_cpt', $key, 'advanced');
|
12 |
}
|
13 |
+
add_meta_box('seopress_cpt', __('SEO','wp-seopress'), 'seopress_cpt', 'seopress_404', 'advanced');
|
14 |
}
|
15 |
|
16 |
function seopress_cpt($post){
|
17 |
+
global $typenow;
|
18 |
$seopress_titles_title = get_post_meta($post->ID,'_seopress_titles_title',true);
|
19 |
$seopress_titles_desc = get_post_meta($post->ID,'_seopress_titles_desc',true);
|
20 |
$seopress_robots_index = get_post_meta($post->ID,'_seopress_robots_index',true);
|
33 |
$seopress_redirections_enabled = get_post_meta($post->ID,'_seopress_redirections_enabled',true);
|
34 |
$seopress_redirections_type = get_post_meta($post->ID,'_seopress_redirections_type',true);
|
35 |
$seopress_redirections_value = get_post_meta($post->ID,'_seopress_redirections_value',true);
|
36 |
+
$seopress_news_disabled = get_post_meta($post->ID,'_seopress_news_disabled',true);
|
37 |
+
$seopress_news_genres = get_post_meta($post->ID,'_seopress_news_genres',true);
|
38 |
+
$seopress_news_keyboard = get_post_meta($post->ID,'_seopress_news_keyboard',true);
|
39 |
+
|
40 |
function seopress_titles_title($seopress_titles_title) {
|
41 |
if ($seopress_titles_title !='') {
|
42 |
return $seopress_titles_title;
|
80 |
}
|
81 |
}
|
82 |
|
83 |
+
echo '<div id="seopress-tabs">';
|
84 |
+
echo'<ul>';
|
85 |
+
if ("seopress_404" != $typenow) {
|
86 |
+
echo '<li><a href="#tabs-1"><span class="dashicons dashicons-editor-table"></span>'. __( 'Titles settings', 'wp-seopress' ) .'</a></li>
|
87 |
+
<li><a href="#tabs-2"><span class="dashicons dashicons-admin-generic"></span>'. __( 'Advanced', 'wp-seopress' ) .'</a></li>
|
88 |
+
<li><a href="#tabs-3"><span class="dashicons dashicons-share"></span>'. __( 'Social', 'wp-seopress' ) .'</a></li>';
|
89 |
+
}
|
90 |
+
echo '<li><a href="#tabs-4"><span class="dashicons dashicons-admin-links"></span>'. __( 'Redirections', 'wp-seopress' ) .'</a></li>';
|
91 |
+
if (is_plugin_active( 'wp-seopress-pro/seopress-pro.php' )) {
|
92 |
+
if ("seopress_404" != $typenow) {
|
93 |
+
echo '<li><a href="#tabs-5"><span class="dashicons dashicons-admin-post"></span>'. __( 'Google News', 'wp-seopress-pro' ) .'</a></li>';
|
94 |
+
}
|
95 |
+
}
|
96 |
+
echo '</ul>';
|
97 |
|
98 |
+
if ("seopress_404" != $typenow) {
|
99 |
+
echo '<div id="tabs-1">
|
100 |
<div class="box-left">
|
101 |
<p>
|
102 |
<label for="seopress_titles_title_meta">'. __( 'Title', 'wp-seopress' ) .'</label>
|
135 |
<label for="seopress_robots_index_meta">
|
136 |
<input type="checkbox" name="seopress_robots_index" id="seopress_robots_index_meta" value="yes" '. checked( $seopress_robots_index, 'yes', false ) .' />
|
137 |
'. __( 'noindex', 'wp-seopress' ) .'
|
138 |
+
</label><span class="dashicons dashicons-info" title="'.__('Do not display all pages of the site in Google search results and do not display "Cached" links in search results.','wp-seopress').'"></span>
|
139 |
</p>
|
140 |
<p>
|
141 |
<label for="seopress_robots_follow_meta">
|
142 |
<input type="checkbox" name="seopress_robots_follow" id="seopress_robots_follow_meta" value="yes" '. checked( $seopress_robots_follow, 'yes', false ) .' />
|
143 |
'. __( 'nofollow', 'wp-seopress' ) .'
|
144 |
+
</label><span class="dashicons dashicons-info" title="'.__('Do not follow links for all pages.','wp-seopress').'"></span>
|
145 |
</p>
|
146 |
<p>
|
147 |
<label for="seopress_robots_odp_meta">
|
148 |
<input type="checkbox" name="seopress_robots_odp" id="seopress_robots_odp_meta" value="yes" '. checked( $seopress_robots_odp, 'yes', false ) .' />
|
149 |
'. __( 'noodp', 'wp-seopress' ) .'
|
150 |
+
</label><span class="dashicons dashicons-info" title="'.__('Do not use Open Directory project metadata for titles or excerpts for all pages.','wp-seopress').'"></span>
|
151 |
</p>
|
152 |
<p>
|
153 |
<label for="seopress_robots_imageindex_meta">
|
154 |
<input type="checkbox" name="seopress_robots_imageindex" id="seopress_robots_imageindex_meta" value="yes" '. checked( $seopress_robots_imageindex, 'yes', false ) .' />
|
155 |
'. __( 'noimageindex', 'wp-seopress' ) .'
|
156 |
+
</label><span class="dashicons dashicons-info" title="'.__('Do not index images from the entire site.','wp-seopress').'"></span>
|
157 |
</p>
|
158 |
<p>
|
159 |
<label for="seopress_robots_archive_meta">
|
160 |
<input type="checkbox" name="seopress_robots_archive" id="seopress_robots_archive_meta" value="yes" '. checked( $seopress_robots_archive, 'yes', false ) .' />
|
161 |
'. __( 'noarchive', 'wp-seopress' ) .'
|
162 |
+
</label><span class="dashicons dashicons-info" title="'.__('Do not display a "Cached" link in the Google search results.','wp-seopress').'"></span>
|
163 |
</p>
|
164 |
<p>
|
165 |
<label for="seopress_robots_snippet_meta">
|
166 |
<input type="checkbox" name="seopress_robots_snippet" id="seopress_robots_snippet_meta" value="yes" '. checked( $seopress_robots_snippet, 'yes', false ) .' />
|
167 |
'. __( 'nosnippet', 'wp-seopress' ) .'
|
168 |
+
</label><span class="dashicons dashicons-info" title="'.__('Do not display a description in the Google search results for all pages.','wp-seopress').'"></span>
|
169 |
</p>
|
170 |
<p>
|
171 |
<label for="seopress_robots_canonical_meta">'. __( 'Canonical URL', 'wp-seopress' ) .'</label>
|
184 |
</p>
|
185 |
<p>
|
186 |
<label for="seopress_social_fb_img_meta">'. __( 'Facebook Thumbnail', 'wp-seopress' ) .'</label>
|
187 |
+
<span class="advise">'. __('Minimum size: 200x200px', 'wp-seopress') .'</span>
|
188 |
<input id="seopress_social_fb_img_meta" type="text" name="seopress_social_fb_img" placeholder="'.__('Select your default thumbnail','wp-seopress').'" value="'.$seopress_social_fb_img.'" />
|
189 |
<input id="seopress_social_fb_img_upload" class="button" type="button" value="'.__('Upload an Image','wp-seopress').'" />
|
190 |
</p>
|
200 |
</p>
|
201 |
<p>
|
202 |
<label for="seopress_social_twitter_img_meta">'. __( 'Twitter Thumbnail', 'wp-seopress' ) .'</label>
|
203 |
+
<span class="advise">'. __('Minimum size: 160x160px', 'wp-seopress') .'</span>
|
204 |
<input id="seopress_social_twitter_img_meta" type="text" name="seopress_social_twitter_img" placeholder="'.__('Select your default thumbnail','wp-seopress').'" value="'.$seopress_social_twitter_img.'" />
|
205 |
<input id="seopress_social_twitter_img_upload" class="button" type="button" value="'.__('Upload an Image','wp-seopress').'" />
|
206 |
</p>
|
207 |
+
</div>';
|
208 |
+
}
|
209 |
+
|
210 |
+
echo '<div id="tabs-4">
|
211 |
<p>
|
212 |
<label for="seopress_redirections_enabled_meta" id="seopress_redirections_enabled">
|
213 |
<input type="checkbox" name="seopress_redirections_enabled" id="seopress_redirections_enabled_meta" value="yes" '. checked( $seopress_redirections_enabled, 'yes', false ) .' />
|
228 |
}
|
229 |
echo '<a href="" id="seopress_redirections_value_live" class="button" target="_blank" style="display: none">'.__('Test your URL','wp-seopress').'</a>
|
230 |
</p>
|
231 |
+
</div>';
|
232 |
+
if (is_plugin_active( 'wp-seopress-pro/seopress-pro.php' )) {
|
233 |
+
if ("seopress_404" != $typenow) {
|
234 |
+
echo '<div id="tabs-5">
|
235 |
+
<p>
|
236 |
+
<label for="seopress_news_disabled_meta" id="seopress_news_disabled">
|
237 |
+
<input type="checkbox" name="seopress_news_disabled" id="seopress_news_disabled_meta" value="yes" '. checked( $seopress_news_disabled, 'yes', false ) .' />
|
238 |
+
'. __( 'Exclude this post from Google News Sitemap?', 'wp-seopress' ) .'
|
239 |
+
</label>
|
240 |
+
</p>
|
241 |
+
<p>
|
242 |
+
<label for="seopress_news_genres_meta">'. __( 'Google News Genres', 'wp-seopress' ) .'</label>
|
243 |
+
<select name="seopress_news_genres">
|
244 |
+
<option ' . selected( 'none', $seopress_news_genres, false ) . ' value="none">'. __( 'None', 'wp-seopress' ) .'</option>
|
245 |
+
<option ' . selected( 'pressrelease', $seopress_news_genres, false ) . ' value="pressrelease">'. __( 'Press Release', 'wp-seopress' ) .'</option>
|
246 |
+
<option ' . selected( 'satire', $seopress_news_genres, false ) . ' value="satire">'. __( 'Satire', 'wp-seopress' ) .'</option>
|
247 |
+
<option ' . selected( 'blog', $seopress_news_genres, false ) . ' value="blog">'. __( 'Blog', 'wp-seopress' ) .'</option>
|
248 |
+
<option ' . selected( 'oped', $seopress_news_genres, false ) . ' value="oped">'. __( 'OpEd', 'wp-seopress' ) .'</option>
|
249 |
+
<option ' . selected( 'opinion', $seopress_news_genres, false ) . ' value="opinion">'. __( 'Opinion', 'wp-seopress' ) .'</option>
|
250 |
+
<option ' . selected( 'usergenerated', $seopress_news_genres, false ) . ' value="usergenerated">'. __( 'UserGenerated', 'wp-seopress' ) .'</option>
|
251 |
+
</select>
|
252 |
+
</p>
|
253 |
+
<p>
|
254 |
+
<label for="seopress_news_keyboard_meta" id="seopress_news_keyboard">
|
255 |
+
'. __( 'Google News Keywords <em>(max recommended limit: 12)</em>', 'wp-seopress' ) .'</label>
|
256 |
+
<input id="seopress_news_keyboard_meta" type="text" name="seopress_news_keyboard" placeholder="'.__('Enter your Google News Keywords','wp-seopress').'" value="'.$seopress_news_keyboard.'" />
|
257 |
+
</p>
|
258 |
+
</div>';
|
259 |
+
}
|
260 |
+
}
|
261 |
+
echo '</div>
|
262 |
';
|
263 |
}
|
264 |
|
333 |
} else {
|
334 |
delete_post_meta( $post_id, '_seopress_redirections_enabled', '' );
|
335 |
}
|
336 |
+
if( isset( $_POST[ 'seopress_news_disabled' ] ) ) {
|
337 |
+
update_post_meta( $post_id, '_seopress_news_disabled', 'yes' );
|
338 |
+
} else {
|
339 |
+
delete_post_meta( $post_id, '_seopress_news_disabled', '' );
|
340 |
+
}
|
341 |
+
if(isset($_POST['seopress_news_genres'])){
|
342 |
+
update_post_meta($post_id, '_seopress_news_genres', $_POST['seopress_news_genres']);
|
343 |
+
}
|
344 |
+
if(isset($_POST['seopress_news_keyboard'])){
|
345 |
+
update_post_meta($post_id, '_seopress_news_keyboard', esc_html($_POST['seopress_news_keyboard']));
|
346 |
+
}
|
347 |
}
|
348 |
}
|
349 |
?>
|
inc/admin/admin.php
CHANGED
@@ -14,6 +14,7 @@ class seopress_options
|
|
14 |
*/
|
15 |
public function __construct() {
|
16 |
add_action( 'admin_menu', array( $this, 'add_plugin_page' ), 10 );
|
|
|
17 |
add_action( 'admin_init', array( $this, 'page_init' ) );
|
18 |
}
|
19 |
|
@@ -25,15 +26,151 @@ class seopress_options
|
|
25 |
delete_option($this->seopress_options);
|
26 |
}
|
27 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
28 |
/**
|
29 |
* Add options page
|
30 |
*/
|
31 |
public function add_plugin_page()
|
32 |
{
|
33 |
-
add_menu_page('SEOPress Option Page', 'SEOPress', 'manage_options', 'seopress-option', array( $this, 'create_admin_page' ), 'dashicons-admin-
|
34 |
$seopress_titles_help_tab = add_submenu_page('seopress-option', __('Titles & Metas','wp-seopress'), __('Titles & Metas','wp-seopress'), 'manage_options', 'seopress-titles', array( $this, 'seopress_titles_page' ));
|
35 |
add_submenu_page('seopress-option', __('XML Sitemap','wp-seopress'), __('XML Sitemap','wp-seopress'), 'manage_options', 'seopress-xml-sitemap', array( $this, 'seopress_xml_sitemap_page' ));
|
36 |
add_submenu_page('seopress-option', __('Social','wp-seopress'), __('Social','wp-seopress'), 'manage_options', 'seopress-social', array( $this, 'seopress_social_page' ));
|
|
|
37 |
add_submenu_page('seopress-option', __('Advanced','wp-seopress'), __('Advanced','wp-seopress'), 'manage_options', 'seopress-advanced', array( $this, 'seopress_advanced_page' ));
|
38 |
add_submenu_page('seopress-option', __('Import / Export / Reset settings','wp-seopress'), __('Import / Export / Reset','wp-seopress'), 'manage_options', 'seopress-import-export', array( $this,'seopress_import_export_page'));
|
39 |
|
@@ -56,6 +193,8 @@ class seopress_options
|
|
56 |
<li><span>'.__('%%term_description%%','wp-seopress').'</span>'.__('Term description','wp-seopress').'</li>
|
57 |
<li><span>'.__('%%search_keywords%%','wp-seopress').'</span>'.__('Search keywords','wp-seopress').'</li>
|
58 |
<li><span>'.__('%%current_pagination%%','wp-seopress').'</span>'.__('Current number page','wp-seopress').'</li>
|
|
|
|
|
59 |
</ul>
|
60 |
';
|
61 |
|
@@ -71,6 +210,9 @@ class seopress_options
|
|
71 |
|
72 |
function seopress_titles_page(){
|
73 |
$this->options = get_option( 'seopress_titles_option_name' );
|
|
|
|
|
|
|
74 |
?>
|
75 |
<form method="post" action="options.php" class="seopress-option">
|
76 |
<?php
|
@@ -83,7 +225,7 @@ class seopress_options
|
|
83 |
global $wp_version, $title;
|
84 |
$current_tab = '';
|
85 |
$tag = version_compare( $wp_version, '4.4' ) >= 0 ? 'h1' : 'h2';
|
86 |
-
echo '<'.$tag.'>'.$title.'</'.$tag.'>';
|
87 |
settings_fields( 'seopress_titles_option_group' );
|
88 |
?>
|
89 |
|
@@ -93,8 +235,8 @@ class seopress_options
|
|
93 |
$plugin_settings_tabs = array(
|
94 |
'tab_seopress_titles_home' => __( "Home", "wp-seopress" ),
|
95 |
'tab_seopress_titles_single' => __( "Single Post Types", "wp-seopress" ),
|
96 |
-
'tab_seopress_titles_tax' => __( "Taxonomies", "wp-seopress" ),
|
97 |
'tab_seopress_titles_archives' => __( "Archives", "wp-seopress" ),
|
|
|
98 |
'tab_seopress_titles_advanced' => __( "Advanced", "wp-seopress" ),
|
99 |
);
|
100 |
|
@@ -106,8 +248,8 @@ class seopress_options
|
|
106 |
?>
|
107 |
<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>
|
108 |
<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>
|
109 |
-
<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>
|
110 |
<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>
|
|
|
111 |
<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>
|
112 |
</div>
|
113 |
|
@@ -118,13 +260,16 @@ class seopress_options
|
|
118 |
|
119 |
function seopress_xml_sitemap_page(){
|
120 |
$this->options = get_option( 'seopress_xml_sitemap_option_name' );
|
|
|
|
|
|
|
121 |
?>
|
122 |
-
<form method="post" action="options.php" class="seopress-option">
|
123 |
<?php
|
124 |
global $wp_version, $title;
|
125 |
$current_tab = '';
|
126 |
$tag = version_compare( $wp_version, '4.4' ) >= 0 ? 'h1' : 'h2';
|
127 |
-
echo '<'.$tag.'>'.$title.'</'.$tag.'>';
|
128 |
settings_fields( 'seopress_xml_sitemap_option_group' );
|
129 |
?>
|
130 |
|
@@ -147,7 +292,6 @@ class seopress_options
|
|
147 |
<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>
|
148 |
<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>
|
149 |
</div>
|
150 |
-
|
151 |
<?php submit_button(); ?>
|
152 |
</form>
|
153 |
<?php
|
@@ -155,13 +299,16 @@ class seopress_options
|
|
155 |
|
156 |
function seopress_social_page(){
|
157 |
$this->options = get_option( 'seopress_social_option_name' );
|
|
|
|
|
|
|
158 |
?>
|
159 |
<form method="post" action="options.php" class="seopress-option">
|
160 |
<?php
|
161 |
global $wp_version, $title;
|
162 |
$current_tab = '';
|
163 |
$tag = version_compare( $wp_version, '4.4' ) >= 0 ? 'h1' : 'h2';
|
164 |
-
echo '<'.$tag.'>'.$title.'</'.$tag.'>';
|
165 |
settings_fields( 'seopress_social_option_group' );
|
166 |
?>
|
167 |
|
@@ -192,8 +339,51 @@ class seopress_options
|
|
192 |
<?php
|
193 |
}
|
194 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
195 |
function seopress_advanced_page(){
|
196 |
$this->options = get_option( 'seopress_advanced_option_name' );
|
|
|
|
|
|
|
197 |
?>
|
198 |
<form method="post" action="options.php" class="seopress-option">
|
199 |
<?php
|
@@ -201,7 +391,7 @@ class seopress_options
|
|
201 |
global $wp_version, $title;
|
202 |
$current_tab = '';
|
203 |
$tag = version_compare( $wp_version, '4.4' ) >= 0 ? 'h1' : 'h2';
|
204 |
-
echo '<'.$tag.'>'.$title.'</'.$tag.'>';
|
205 |
settings_fields( 'seopress_advanced_option_group' );
|
206 |
?>
|
207 |
|
@@ -210,6 +400,7 @@ class seopress_options
|
|
210 |
|
211 |
$plugin_settings_tabs = array(
|
212 |
'tab_seopress_advanced_advanced' => __( "Advanced", "wp-seopress" ),
|
|
|
213 |
);
|
214 |
|
215 |
echo '<h2 class="nav-tab-wrapper">';
|
@@ -219,6 +410,7 @@ class seopress_options
|
|
219 |
echo '</h2>';
|
220 |
?>
|
221 |
<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>
|
|
|
222 |
</div>
|
223 |
|
224 |
<?php submit_button(); ?>
|
@@ -228,59 +420,81 @@ class seopress_options
|
|
228 |
|
229 |
function seopress_import_export_page(){
|
230 |
$this->options = get_option( 'seopress_import_export_option_name' );
|
|
|
|
|
|
|
231 |
?>
|
232 |
-
|
233 |
-
|
234 |
-
|
235 |
-
|
236 |
-
|
237 |
-
|
238 |
-
|
239 |
-
|
240 |
-
|
241 |
-
|
242 |
-
|
243 |
-
|
244 |
-
|
245 |
-
|
246 |
-
|
247 |
-
|
248 |
-
</
|
249 |
-
</
|
250 |
-
</div><!-- .
|
251 |
-
|
252 |
-
|
253 |
-
|
254 |
-
|
255 |
-
|
256 |
-
|
257 |
-
|
258 |
-
|
259 |
-
|
260 |
-
|
261 |
-
|
262 |
-
|
263 |
-
|
264 |
-
|
265 |
-
</
|
266 |
-
</
|
267 |
-
</div><!-- .
|
268 |
-
|
269 |
-
|
270 |
-
|
271 |
-
|
272 |
-
|
273 |
-
|
274 |
-
|
275 |
-
|
276 |
-
<
|
277 |
-
|
278 |
-
|
279 |
-
|
280 |
-
|
281 |
-
|
282 |
-
|
283 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
284 |
<?php
|
285 |
}
|
286 |
|
@@ -292,103 +506,101 @@ class seopress_options
|
|
292 |
|
293 |
// Set class property
|
294 |
$this->options = get_option( 'seopress_option_name' );
|
|
|
|
|
295 |
?>
|
296 |
-
<div id="seopress-
|
297 |
-
|
298 |
-
<
|
299 |
-
|
300 |
-
|
301 |
-
|
302 |
-
<span class="
|
303 |
-
|
304 |
-
|
305 |
-
|
306 |
-
</strong>
|
307 |
-
</span>
|
308 |
-
<?php } else { ?>
|
309 |
-
<span class="seopress-info-version"><?php echo SEOPRESS_VERSION; ?></span>
|
310 |
-
<?php } ?>
|
311 |
-
</h1>
|
312 |
-
<div id="seopress-notice">
|
313 |
-
<div class="small">
|
314 |
-
<span class="dashicons dashicons-wordpress"></span>
|
315 |
-
<?php _e( 'You like SEOPress? Don\'t forget to rate it 5 stars!', 'wp-seopress' ); ?>
|
316 |
-
|
317 |
-
<div class="wporg-ratings rating-stars">
|
318 |
-
<a href="//wordpress.org/support/view/plugin-reviews/seopress?rate=1#postform" data-rating="1" title="" target="_blank"><span class="dashicons dashicons-star-filled" style="color:#e6b800 !important;"></span></a>
|
319 |
-
<a href="//wordpress.org/support/view/plugin-reviews/seopress?rate=2#postform" data-rating="2" title="" target="_blank"><span class="dashicons dashicons-star-filled" style="color:#e6b800 !important;"></span></a>
|
320 |
-
<a href="//wordpress.org/support/view/plugin-reviews/seopress?rate=3#postform" data-rating="3" title="" target="_blank"><span class="dashicons dashicons-star-filled" style="color:#e6b800 !important;"></span></a>
|
321 |
-
<a href="//wordpress.org/support/view/plugin-reviews/seopress?rate=4#postform" data-rating="4" title="" target="_blank"><span class="dashicons dashicons-star-filled" style="color:#e6b800 !important;"></span></a>
|
322 |
-
<a href="//wordpress.org/support/view/plugin-reviews/seopress?rate=5#postform" data-rating="5" title="" target="_blank"><span class="dashicons dashicons-star-filled" style="color:#e6b800 !important;"></span></a>
|
323 |
-
</div>
|
324 |
-
<script>
|
325 |
-
jQuery(document).ready( function($) {
|
326 |
-
$('.rating-stars').find('a').hover(
|
327 |
-
function() {
|
328 |
-
$(this).nextAll('a').children('span').removeClass('dashicons-star-filled').addClass('dashicons-star-empty');
|
329 |
-
$(this).prevAll('a').children('span').removeClass('dashicons-star-empty').addClass('dashicons-star-filled');
|
330 |
-
$(this).children('span').removeClass('dashicons-star-empty').addClass('dashicons-star-filled');
|
331 |
-
}, function() {
|
332 |
-
var rating = $('input#rating').val();
|
333 |
-
if (rating) {
|
334 |
-
var list = $('.rating-stars a');
|
335 |
-
list.children('span').removeClass('dashicons-star-filled').addClass('dashicons-star-empty');
|
336 |
-
list.slice(0, rating).children('span').removeClass('dashicons-star-empty').addClass('dashicons-star-filled');
|
337 |
-
}
|
338 |
-
}
|
339 |
-
);
|
340 |
-
});
|
341 |
-
</script>
|
342 |
-
</div>
|
343 |
-
<div class="small">
|
344 |
-
<a href="http://twitter.com/wpcloudy" target="_blank"><div class="dashicons dashicons-twitter"></div></a>
|
345 |
-
<a href="http://www.seopress.org/" target="_blank"><div class="dashicons dashicons-info"></div></a>
|
346 |
-
|
347 |
-
<a href="http://www.seopress.org/support" target="_blank"><?php _e( 'Support', 'wp-seopress' ); ?></a>
|
348 |
-
</div>
|
349 |
</div>
|
350 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
351 |
</div>
|
352 |
-
</div>
|
353 |
-
<div id="seopress-content">
|
354 |
-
<?php if (get_option('blog_public') !='1' || seopress_xml_sitemap_general_enable_option() !='1') { ?>
|
355 |
-
<div id="seopress-notifications-center">
|
356 |
-
<h2><span class="dashicons dashicons-flag"></span><?php _e('Notifications center','wp-seopress'); ?></h2>
|
357 |
-
<?php if (get_option('blog_public') !='1') { ?>
|
358 |
-
<div class="seopress-alert">
|
359 |
-
<p><span class="dashicons dashicons-warning"></span><?php _e('Your site is not visible to Search Engines!','wp-seopress'); ?></p>
|
360 |
-
<a class="button-primary" href="<?php echo admin_url( 'options-reading.php' ); ?>"><?php _e('Fix this!','wp-seopress'); ?></a>
|
361 |
-
</div>
|
362 |
-
<?php } ?>
|
363 |
-
<?php if (get_option('blogname') =='') { ?>
|
364 |
-
<div class="seopress-alert">
|
365 |
-
<p><span class="dashicons dashicons-warning"></span><?php _e('Your site title is empty!','wp-seopress'); ?></p>
|
366 |
-
<a class="button-primary" href="<?php echo admin_url( 'options-general.php' ); ?>"><?php _e('Fix this!','wp-seopress'); ?></a>
|
367 |
-
</div>
|
368 |
-
<?php } ?>
|
369 |
-
<?php if (get_option('permalink_structure') =='') { ?>
|
370 |
-
<div class="seopress-alert">
|
371 |
-
<p><span class="dashicons dashicons-warning"></span><?php _e('Your permalinks are not SEO Friendly! Enable pretty permalinks to fix this.','wp-seopress'); ?></p>
|
372 |
-
<a class="button-primary" href="<?php echo admin_url( 'options-permalink.php' ); ?>"><?php _e('Fix this!','wp-seopress'); ?></a>
|
373 |
-
</div>
|
374 |
-
<?php } ?>
|
375 |
-
<?php if (seopress_xml_sitemap_general_enable_option() !='1') { ?>
|
376 |
-
<div class="seopress-alert">
|
377 |
-
<p><span class="dashicons dashicons-warning"></span><?php _e('You don\'t have an XML Sitemap!','wp-seopress'); ?></p>
|
378 |
-
<a class="button-primary" href="<?php echo admin_url( 'admin.php?page=seopress-xml-sitemap' ); ?>"><?php _e('Fix this!','wp-seopress'); ?></a>
|
379 |
-
</div>
|
380 |
-
<?php } ?>
|
381 |
-
</div>
|
382 |
-
<?php } ?>
|
383 |
<div class="seopress-page-list">
|
|
|
384 |
<div class="seopress-feature">
|
385 |
<div class="img-tool">
|
386 |
<span class="dashicons dashicons-editor-table"></span>
|
387 |
</div>
|
388 |
<span class="inner">
|
389 |
-
<
|
390 |
<p><?php _e('Manage all your titles & metas','wp-seopress'); ?></p>
|
391 |
<a class="button-secondary" href="<?php echo admin_url( 'admin.php?page=seopress-titles' ); ?>"><?php _e('Manage','wp-seopress'); ?></a>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
392 |
</span>
|
393 |
</div>
|
394 |
<div class="seopress-feature">
|
@@ -396,9 +608,28 @@ class seopress_options
|
|
396 |
<span class="dashicons dashicons-media-spreadsheet"></span>
|
397 |
</div>
|
398 |
<span class="inner">
|
399 |
-
<
|
400 |
<p><?php _e('Manage your XML Sitemap','wp-seopress'); ?></p>
|
401 |
<a class="button-secondary" href="<?php echo admin_url( 'admin.php?page=seopress-xml-sitemap' ); ?>"><?php _e('Manage','wp-seopress'); ?></a>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
402 |
</span>
|
403 |
</div>
|
404 |
<div class="seopress-feature">
|
@@ -406,9 +637,57 @@ class seopress_options
|
|
406 |
<span class="dashicons dashicons-share"></span>
|
407 |
</div>
|
408 |
<span class="inner">
|
409 |
-
<
|
410 |
<p><?php _e('Open Graph, Twitter Card, Google Knowledge Graph and more...','wp-seopress'); ?></p>
|
411 |
<a class="button-secondary" href="<?php echo admin_url( 'admin.php?page=seopress-social' ); ?>"><?php _e('Manage','wp-seopress'); ?></a>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
412 |
</span>
|
413 |
</div>
|
414 |
<div class="seopress-feature">
|
@@ -416,21 +695,220 @@ class seopress_options
|
|
416 |
<span class="dashicons dashicons-admin-tools"></span>
|
417 |
</div>
|
418 |
<span class="inner">
|
419 |
-
<
|
420 |
<p><?php _e('Advanced SEO options for advanced users!','wp-seopress'); ?></p>
|
421 |
<a class="button-secondary" href="<?php echo admin_url( 'admin.php?page=seopress-advanced' ); ?>"><?php _e('Manage','wp-seopress'); ?></a>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
422 |
</span>
|
423 |
</div>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
424 |
<div class="seopress-feature">
|
425 |
<div class="img-tool">
|
426 |
<span class="dashicons dashicons-admin-settings"></span>
|
427 |
</div>
|
428 |
<span class="inner">
|
429 |
-
<
|
430 |
<p><?php _e('Import / export SEOPress settings from site to site.','wp-seopress'); ?></p>
|
431 |
<a class="button-secondary" href="<?php echo admin_url( 'admin.php?page=seopress-import-export' ); ?>"><?php _e('Manage','wp-seopress'); ?></a>
|
|
|
432 |
</span>
|
433 |
</div>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
434 |
</div>
|
435 |
</div>
|
436 |
<?php
|
@@ -463,6 +941,12 @@ class seopress_options
|
|
463 |
'seopress_social_option_group', // Option group
|
464 |
'seopress_social_option_name', // Option name
|
465 |
array( $this, 'sanitize' ) // Sanitize
|
|
|
|
|
|
|
|
|
|
|
|
|
466 |
);
|
467 |
|
468 |
register_setting(
|
@@ -519,23 +1003,6 @@ class seopress_options
|
|
519 |
'seopress_setting_section_titles_single' // Section
|
520 |
);
|
521 |
|
522 |
-
//Taxonomies SECTION=======================================================================
|
523 |
-
add_settings_section(
|
524 |
-
'seopress_setting_section_titles_tax', // ID
|
525 |
-
'',
|
526 |
-
//__("Taxonomies","wp-seopress"), // Title
|
527 |
-
array( $this, 'print_section_info_tax' ), // Callback
|
528 |
-
'seopress-settings-admin-titles-tax' // Page
|
529 |
-
);
|
530 |
-
|
531 |
-
add_settings_field(
|
532 |
-
'seopress_titles_tax_titles', // ID
|
533 |
-
'',
|
534 |
-
array( $this, 'seopress_titles_tax_titles_callback' ), // Callback
|
535 |
-
'seopress-settings-admin-titles-tax', // Page
|
536 |
-
'seopress_setting_section_titles_tax' // Section
|
537 |
-
);
|
538 |
-
|
539 |
//Archives SECTION=========================================================================
|
540 |
add_settings_section(
|
541 |
'seopress_setting_section_titles_archives', // ID
|
@@ -545,6 +1012,14 @@ class seopress_options
|
|
545 |
'seopress-settings-admin-titles-archives' // Page
|
546 |
);
|
547 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
548 |
add_settings_field(
|
549 |
'seopress_titles_archives_author_title', // ID
|
550 |
'',
|
@@ -633,24 +1108,23 @@ class seopress_options
|
|
633 |
array( $this, 'seopress_titles_archives_404_desc_callback' ), // Callback
|
634 |
'seopress-settings-admin-titles-archives', // Page
|
635 |
'seopress_setting_section_titles_archives' // Section
|
636 |
-
);
|
637 |
|
638 |
-
|
639 |
-
|
|
|
640 |
'',
|
641 |
-
//__(
|
642 |
-
array( $this, '
|
643 |
-
'seopress-settings-admin-titles-
|
644 |
-
|
645 |
-
);
|
646 |
|
647 |
add_settings_field(
|
648 |
-
'
|
649 |
'',
|
650 |
-
|
651 |
-
|
652 |
-
'
|
653 |
-
'seopress_setting_section_titles_archives' // Section
|
654 |
);
|
655 |
|
656 |
//Advanced SECTION=========================================================================
|
@@ -778,7 +1252,7 @@ class seopress_options
|
|
778 |
|
779 |
add_settings_field(
|
780 |
'seopress_social_knowledge_name', // ID
|
781 |
-
__("Your name/organization","wp-seopress"), // Title
|
782 |
array( $this, 'seopress_social_knowledge_name_callback' ), // Callback
|
783 |
'seopress-settings-admin-social-knowledge', // Page
|
784 |
'seopress_setting_section_social_knowledge' // Section
|
@@ -954,6 +1428,140 @@ class seopress_options
|
|
954 |
'seopress-settings-admin-social-twitter', // Page
|
955 |
'seopress_setting_section_social_twitter' // Section
|
956 |
);
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
957 |
//Advanced SECTION=========================================================================
|
958 |
add_settings_section(
|
959 |
'seopress_setting_section_advanced_advanced', // ID
|
@@ -965,7 +1573,7 @@ class seopress_options
|
|
965 |
|
966 |
add_settings_field(
|
967 |
'seopress_advanced_advanced_attachments', // ID
|
968 |
-
__("Redirect attachment pages to post parent
|
969 |
array( $this, 'seopress_advanced_advanced_attachments_callback' ), // Callback
|
970 |
'seopress-settings-admin-advanced-advanced', // Page
|
971 |
'seopress_setting_section_advanced_advanced' // Section
|
@@ -1009,7 +1617,40 @@ class seopress_options
|
|
1009 |
array( $this, 'seopress_advanced_advanced_yandex_callback' ), // Callback
|
1010 |
'seopress-settings-admin-advanced-advanced', // Page
|
1011 |
'seopress_setting_section_advanced_advanced' // Section
|
1012 |
-
);
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1013 |
}
|
1014 |
|
1015 |
/**
|
@@ -1020,7 +1661,7 @@ class seopress_options
|
|
1020 |
public function sanitize( $input )
|
1021 |
{
|
1022 |
|
1023 |
-
$seopress_sanitize_fields = array('seopress_titles_home_site_title', 'seopress_titles_home_site_desc', 'seopress_titles_archives_author_title', 'seopress_titles_archives_author_desc', 'seopress_titles_archives_date_title', 'seopress_titles_archives_date_desc', 'seopress_titles_archives_search_title', 'seopress_titles_archives_search_desc', 'seopress_titles_archives_404_title', 'seopress_titles_archives_404_desc', '
|
1024 |
|
1025 |
$seopress_sanitize_site_verification = array('seopress_advanced_advanced_google', 'seopress_advanced_advanced_bing', 'seopress_advanced_advanced_pinterest', 'seopress_advanced_advanced_yandex' );
|
1026 |
|
@@ -1080,7 +1721,7 @@ class seopress_options
|
|
1080 |
echo __('Only the last 1000 items are listed in Sitemaps for performances issues.', 'wp-seopress');
|
1081 |
echo '<br>';
|
1082 |
echo '<br>';
|
1083 |
-
echo '<a href="'.home_url().'/sitemaps
|
1084 |
echo ' ';
|
1085 |
echo '<a href="http://www.google.com/ping?sitemap='.home_url().'/sitemaps/" target="_blank" class="button">'.__('Ping Google manually','wp-seopress').'</a>';
|
1086 |
echo ' ';
|
@@ -1116,11 +1757,31 @@ class seopress_options
|
|
1116 |
public function print_section_info_social_twitter()
|
1117 |
{
|
1118 |
print __('<p>Manage your Twitter card</p>', 'wp-seopress');
|
1119 |
-
}
|
1120 |
|
1121 |
-
public function
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1122 |
{
|
1123 |
print __('<p>Advanced SEO options</p>', 'wp-seopress');
|
|
|
|
|
|
|
|
|
|
|
1124 |
}
|
1125 |
|
1126 |
/**
|
@@ -1131,21 +1792,23 @@ class seopress_options
|
|
1131 |
public function seopress_titles_home_site_title_callback()
|
1132 |
{
|
1133 |
printf(
|
1134 |
-
|
1135 |
-
|
1136 |
-
|
1137 |
-
);
|
1138 |
-
|
|
|
1139 |
}
|
1140 |
|
1141 |
public function seopress_titles_home_site_desc_callback()
|
1142 |
{
|
1143 |
printf(
|
1144 |
-
'<textarea name="seopress_titles_option_name[seopress_titles_home_site_desc]" placeholder="'.__('This is cool website about Wookiees','wp-seopress').'">%s</textarea>',
|
1145 |
esc_html( $this->options['seopress_titles_home_site_desc'])
|
1146 |
|
1147 |
);
|
1148 |
-
|
|
|
1149 |
}
|
1150 |
|
1151 |
//Single CPT
|
@@ -1161,11 +1824,28 @@ class seopress_options
|
|
1161 |
_e('Title template','wp-seopress');
|
1162 |
echo "<br/>";
|
1163 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1164 |
printf(
|
1165 |
-
'<input type="text" name="seopress_titles_option_name[seopress_titles_single_titles]['.$seopress_cpt_key.'][title]" value="%s"/>',
|
1166 |
esc_html( $this->options['seopress_titles_single_titles'][$seopress_cpt_key]['title'])
|
1167 |
);
|
1168 |
|
|
|
|
|
|
|
|
|
|
|
|
|
1169 |
echo '</div>';
|
1170 |
|
1171 |
//Single Meta Description CPT
|
@@ -1253,11 +1933,34 @@ class seopress_options
|
|
1253 |
_e('Title template','wp-seopress');
|
1254 |
echo "<br/>";
|
1255 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1256 |
printf(
|
1257 |
-
'<input type="text" name="seopress_titles_option_name[seopress_titles_tax_titles]['.$seopress_tax_key.'][title]" value="%s"/>',
|
1258 |
esc_html( $this->options['seopress_titles_tax_titles'][$seopress_tax_key]['title'])
|
1259 |
);
|
1260 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1261 |
echo '</div>';
|
1262 |
|
1263 |
//Tax Meta Description
|
@@ -1266,11 +1969,29 @@ class seopress_options
|
|
1266 |
_e('Meta description template','wp-seopress');
|
1267 |
echo "<br/>";
|
1268 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1269 |
printf(
|
1270 |
-
'<textarea name="seopress_titles_option_name[seopress_titles_tax_titles]['.$seopress_tax_key.'][description]">%s</textarea>',
|
1271 |
esc_html( $this->options['seopress_titles_tax_titles'][$seopress_tax_key]['description'])
|
1272 |
);
|
1273 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1274 |
echo '</div>';
|
1275 |
|
1276 |
//Tax No-Index
|
@@ -1314,18 +2035,112 @@ class seopress_options
|
|
1314 |
}
|
1315 |
|
1316 |
//Archives
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1317 |
public function seopress_titles_archives_author_title_callback()
|
1318 |
{
|
1319 |
echo '<h2>'.__('Author archives','wp-seopress').'</h2>';
|
1320 |
|
1321 |
_e('Title template','wp-seopress');
|
1322 |
echo "<br/>";
|
1323 |
-
|
1324 |
printf(
|
1325 |
-
'<input type="text" name="seopress_titles_option_name[seopress_titles_archives_author_title]" value="%s"/>',
|
1326 |
esc_html( $this->options['seopress_titles_archives_author_title'])
|
1327 |
|
1328 |
);
|
|
|
|
|
|
|
|
|
1329 |
|
1330 |
}
|
1331 |
|
@@ -1368,10 +2183,14 @@ class seopress_options
|
|
1368 |
echo "<br/>";
|
1369 |
|
1370 |
printf(
|
1371 |
-
'<input type="text" name="seopress_titles_option_name[seopress_titles_archives_date_title]" value="%s"/>',
|
1372 |
esc_html( $this->options['seopress_titles_archives_date_title'])
|
1373 |
|
1374 |
);
|
|
|
|
|
|
|
|
|
1375 |
|
1376 |
}
|
1377 |
|
@@ -1413,10 +2232,14 @@ class seopress_options
|
|
1413 |
echo "<br/>";
|
1414 |
|
1415 |
printf(
|
1416 |
-
'<input type="text" name="seopress_titles_option_name[seopress_titles_archives_search_title]" value="%s"/>',
|
1417 |
esc_html( $this->options['seopress_titles_archives_search_title'])
|
1418 |
|
1419 |
);
|
|
|
|
|
|
|
|
|
1420 |
|
1421 |
}
|
1422 |
|
@@ -1441,10 +2264,12 @@ class seopress_options
|
|
1441 |
echo "<br/>";
|
1442 |
|
1443 |
printf(
|
1444 |
-
'<input type="text" name="seopress_titles_option_name[seopress_titles_archives_404_title]" value="%s"/>',
|
1445 |
esc_html( $this->options['seopress_titles_archives_404_title'])
|
1446 |
|
1447 |
);
|
|
|
|
|
1448 |
|
1449 |
}
|
1450 |
|
@@ -1461,34 +2286,6 @@ class seopress_options
|
|
1461 |
|
1462 |
}
|
1463 |
|
1464 |
-
public function seopress_titles_archives_paged_title_callback()
|
1465 |
-
{
|
1466 |
-
echo '<h2>'.__('Paged archives','wp-seopress').'</h2>';
|
1467 |
-
|
1468 |
-
_e('Title template','wp-seopress');
|
1469 |
-
echo "<br/>";
|
1470 |
-
|
1471 |
-
printf(
|
1472 |
-
'<input type="text" name="seopress_titles_option_name[seopress_titles_archives_paged_title]" value="%s"/>',
|
1473 |
-
esc_html( $this->options['seopress_titles_archives_paged_title'])
|
1474 |
-
|
1475 |
-
);
|
1476 |
-
|
1477 |
-
}
|
1478 |
-
|
1479 |
-
public function seopress_titles_archives_paged_desc_callback()
|
1480 |
-
{
|
1481 |
-
_e('Meta description template','wp-seopress');
|
1482 |
-
echo "<br/>";
|
1483 |
-
|
1484 |
-
printf(
|
1485 |
-
'<textarea name="seopress_titles_option_name[seopress_titles_archives_paged_desc]">%s</textarea>',
|
1486 |
-
esc_html( $this->options['seopress_titles_archives_paged_desc'])
|
1487 |
-
|
1488 |
-
);
|
1489 |
-
|
1490 |
-
}
|
1491 |
-
|
1492 |
//Advanced
|
1493 |
public function seopress_titles_noindex_callback()
|
1494 |
{
|
@@ -1502,6 +2299,8 @@ class seopress_options
|
|
1502 |
|
1503 |
echo '<label for="seopress_titles_noindex">'. __( 'noindex', 'wp-seopress' ) .'</label>';
|
1504 |
|
|
|
|
|
1505 |
if (isset($this->options['seopress_titles_noindex'])) {
|
1506 |
esc_attr( $this->options['seopress_titles_noindex']);
|
1507 |
}
|
@@ -1519,6 +2318,8 @@ class seopress_options
|
|
1519 |
|
1520 |
echo '<label for="seopress_titles_nofollow">'. __( 'nofollow', 'wp-seopress' ) .'</label>';
|
1521 |
|
|
|
|
|
1522 |
if (isset($this->options['seopress_titles_nofollow'])) {
|
1523 |
esc_attr( $this->options['seopress_titles_nofollow']);
|
1524 |
}
|
@@ -1536,6 +2337,8 @@ class seopress_options
|
|
1536 |
|
1537 |
echo '<label for="seopress_titles_noodp">'. __( 'noodp', 'wp-seopress' ) .'</label>';
|
1538 |
|
|
|
|
|
1539 |
if (isset($this->options['seopress_titles_noodp'])) {
|
1540 |
esc_attr( $this->options['seopress_titles_noodp']);
|
1541 |
}
|
@@ -1553,6 +2356,8 @@ class seopress_options
|
|
1553 |
|
1554 |
echo '<label for="seopress_titles_noimageindex">'. __( 'noimageindex', 'wp-seopress' ) .'</label>';
|
1555 |
|
|
|
|
|
1556 |
if (isset($this->options['seopress_titles_noimageindex'])) {
|
1557 |
esc_attr( $this->options['seopress_titles_noimageindex']);
|
1558 |
}
|
@@ -1570,6 +2375,8 @@ class seopress_options
|
|
1570 |
|
1571 |
echo '<label for="seopress_titles_noarchive">'. __( 'noarchive', 'wp-seopress' ) .'</label>';
|
1572 |
|
|
|
|
|
1573 |
if (isset($this->options['seopress_titles_noarchive'])) {
|
1574 |
esc_attr( $this->options['seopress_titles_noarchive']);
|
1575 |
}
|
@@ -1587,6 +2394,8 @@ class seopress_options
|
|
1587 |
|
1588 |
echo '<label for="seopress_titles_nosnippet">'. __( 'nosnippet', 'wp-seopress' ) .'</label>';
|
1589 |
|
|
|
|
|
1590 |
if (isset($this->options['seopress_titles_nosnippet'])) {
|
1591 |
esc_attr( $this->options['seopress_titles_nosnippet']);
|
1592 |
}
|
@@ -1732,6 +2541,20 @@ class seopress_options
|
|
1732 |
if (isset($this->options['seopress_social_knowledge_img'])) {
|
1733 |
esc_attr( $this->options['seopress_social_knowledge_img']);
|
1734 |
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1735 |
}
|
1736 |
|
1737 |
public function seopress_social_accounts_facebook_callback()
|
@@ -1938,6 +2761,521 @@ class seopress_options
|
|
1938 |
}
|
1939 |
}
|
1940 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1941 |
public function seopress_advanced_advanced_attachments_callback()
|
1942 |
{
|
1943 |
$options = get_option( 'seopress_advanced_option_name' );
|
@@ -2011,6 +3349,57 @@ class seopress_options
|
|
2011 |
);
|
2012 |
|
2013 |
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
2014 |
}
|
2015 |
|
2016 |
if( is_admin() )
|
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 |
|
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 |
+
$seopress_toggle_options['toggle-titles'] = '1';
|
35 |
+
$seopress_toggle_options['toggle-xml-sitemap'] = '1';
|
36 |
+
$seopress_toggle_options['toggle-social'] = '1';
|
37 |
+
$seopress_toggle_options['toggle-advanced'] = '1';
|
38 |
+
if ( is_plugin_active( 'woocommerce/woocommerce.php' )) {
|
39 |
+
$seopress_toggle_options['toggle-woocommerce'] = '1';
|
40 |
+
}
|
41 |
+
$seopress_toggle_options['toggle-breadcrumbs'] = '1';
|
42 |
+
$seopress_toggle_options['toggle-robots'] = '1';
|
43 |
+
$seopress_toggle_options['toggle-404'] = '1';
|
44 |
+
|
45 |
+
add_option('seopress_toggle', $seopress_toggle_options);
|
46 |
+
|
47 |
+
//Titles & metas===========================================================================
|
48 |
+
$seopress_titles_options = get_option('seopress_titles_option_name');
|
49 |
+
|
50 |
+
//Site Title
|
51 |
+
$seopress_titles_options['seopress_titles_home_site_title'] = '%%sitetitle%%';
|
52 |
+
|
53 |
+
//Meta Description
|
54 |
+
$seopress_titles_options['seopress_titles_home_site_desc'] = '%%tagline%%';
|
55 |
+
|
56 |
+
//Post Types
|
57 |
+
foreach (seopress_get_post_types() as $seopress_cpt_key => $seopress_cpt_value) {
|
58 |
+
$seopress_titles_options['seopress_titles_single_titles'][$seopress_cpt_key]['title'] = '%%post_title%% - %%sitetitle%%';
|
59 |
+
}
|
60 |
+
|
61 |
+
//Taxonomies
|
62 |
+
foreach (seopress_get_taxonomies() as $seopress_tax_key => $seopress_tax_value) {
|
63 |
+
//Title
|
64 |
+
if ($seopress_tax_key =='category') {
|
65 |
+
$seopress_titles_options['seopress_titles_tax_titles'][$seopress_tax_key]['title'] = '%%_category_title%% %%current_pagination%% - %%sitetitle%%';
|
66 |
+
} elseif ($seopress_tax_key =='post_tag') {
|
67 |
+
$seopress_titles_options['seopress_titles_tax_titles'][$seopress_tax_key]['title'] = '%%tag_title%% %%current_pagination%% - %%sitetitle%%';
|
68 |
+
} else {
|
69 |
+
$seopress_titles_options['seopress_titles_tax_titles'][$seopress_tax_key]['title'] = '%%term_title%% %%current_pagination%% - %%sitetitle%%';
|
70 |
+
}
|
71 |
+
|
72 |
+
//Desc
|
73 |
+
if ($seopress_tax_key =='category') {
|
74 |
+
$seopress_titles_options['seopress_titles_tax_titles'][$seopress_tax_key]['description'] = '%%_category_description%%';
|
75 |
+
} elseif ($seopress_tax_key =='post_tag') {
|
76 |
+
$seopress_titles_options['seopress_titles_tax_titles'][$seopress_tax_key]['description'] = '%%tag_description%%';
|
77 |
+
} else {
|
78 |
+
$seopress_titles_options['seopress_titles_tax_titles'][$seopress_tax_key]['description'] = '%%term_description%%';
|
79 |
+
}
|
80 |
+
|
81 |
+
//noindex
|
82 |
+
$seopress_titles_options['seopress_titles_tax_titles'][$seopress_tax_key]['noindex'] ='1';
|
83 |
+
}
|
84 |
+
|
85 |
+
//Archives
|
86 |
+
foreach (seopress_get_post_types() as $seopress_cpt_key => $seopress_cpt_value) {
|
87 |
+
$seopress_titles_options['seopress_titles_archive_titles'][$seopress_cpt_key]['title'] = '%%cpt_plural%% %%current_pagination%% - %%sitetitle%%';
|
88 |
+
}
|
89 |
+
|
90 |
+
//Author
|
91 |
+
$seopress_titles_options['seopress_titles_archives_author_title'] = '%%post_author%% - %%sitetitle%%';
|
92 |
+
$seopress_titles_options['seopress_titles_archives_author_noindex'] = '1';
|
93 |
+
|
94 |
+
//Date
|
95 |
+
$seopress_titles_options['seopress_titles_archives_date_title'] = '%%archive_date%% - %%sitetitle%%';
|
96 |
+
$seopress_titles_options['seopress_titles_archives_date_noindex'] = '1';
|
97 |
+
|
98 |
+
//Search
|
99 |
+
$seopress_titles_options['seopress_titles_archives_search_title'] = '%%search_keywords%% - %%sitetitle%%';
|
100 |
+
|
101 |
+
//404
|
102 |
+
$seopress_titles_options['seopress_titles_archives_404_title'] = __('404 - Page not found','wp-seopress').' - %%sitetitle%%';
|
103 |
+
|
104 |
+
add_option('seopress_titles_option_name', $seopress_titles_options);
|
105 |
+
|
106 |
+
//XML Sitemap==============================================================================
|
107 |
+
$seopress_xml_sitemap_options = get_option('seopress_xml_sitemap_option_name');
|
108 |
+
|
109 |
+
$seopress_xml_sitemap_options['seopress_xml_sitemap_general_enable'] = '1';
|
110 |
+
|
111 |
+
global $wp_post_types;
|
112 |
+
|
113 |
+
$args = array(
|
114 |
+
'show_ui' => true,
|
115 |
+
);
|
116 |
+
|
117 |
+
$output = 'objects'; // names or objects, note names is the default
|
118 |
+
$operator = 'and'; // 'and' or 'or'
|
119 |
+
|
120 |
+
$post_types = get_post_types( $args, $output, $operator );
|
121 |
+
|
122 |
+
foreach ($post_types as $seopress_cpt_key => $seopress_cpt_value) {
|
123 |
+
if ($seopress_cpt_key =='post' || $seopress_cpt_key =='page' || $seopress_cpt_key =='product') {
|
124 |
+
$seopress_xml_sitemap_options['seopress_xml_sitemap_post_types_list'][$seopress_cpt_key]['include'] = '1';
|
125 |
+
}
|
126 |
+
}
|
127 |
+
|
128 |
+
$args = array(
|
129 |
+
'show_ui' => true,
|
130 |
+
'public' => true,
|
131 |
+
|
132 |
+
);
|
133 |
+
$output = 'objects'; // or objects
|
134 |
+
$operator = 'and'; // 'and' or 'or'
|
135 |
+
$taxonomies = get_taxonomies( $args, $output, $operator );
|
136 |
+
|
137 |
+
foreach ($taxonomies as $seopress_tax_key => $seopress_tax_value) {
|
138 |
+
if ($seopress_tax_key =='category' || $seopress_tax_key =='post_tag') {
|
139 |
+
$seopress_xml_sitemap_options['seopress_xml_sitemap_taxonomies_list'][$seopress_tax_key]['include'] = '1';
|
140 |
+
}
|
141 |
+
}
|
142 |
+
|
143 |
+
add_option('seopress_xml_sitemap_option_name', $seopress_xml_sitemap_options);
|
144 |
+
|
145 |
+
//Social===================================================================================
|
146 |
+
$seopress_social_options = get_option('seopress_social_option_name');
|
147 |
+
|
148 |
+
$seopress_social_options['seopress_social_facebook_og'] = '1';
|
149 |
+
$seopress_social_options['seopress_social_twitter_card'] = '1';
|
150 |
+
|
151 |
+
add_option('seopress_social_option_name', $seopress_social_options);
|
152 |
+
|
153 |
+
//Advanced=================================================================================
|
154 |
+
$seopress_advanced_option_name = get_option('seopress_advanced_option_name');
|
155 |
+
|
156 |
+
$seopress_advanced_option_name['seopress_advanced_advanced_attachments'] = '1';
|
157 |
+
$seopress_advanced_option_name['seopress_advanced_advanced_stop_words'] = '1';
|
158 |
+
$seopress_advanced_option_name['seopress_advanced_appearance_title_col'] = '1';
|
159 |
+
$seopress_advanced_option_name['seopress_advanced_appearance_meta_desc_col'] = '1';
|
160 |
+
|
161 |
+
add_option('seopress_advanced_option_name', $seopress_advanced_option_name);
|
162 |
+
}
|
163 |
+
|
164 |
/**
|
165 |
* Add options page
|
166 |
*/
|
167 |
public function add_plugin_page()
|
168 |
{
|
169 |
+
add_menu_page('SEOPress Option Page', 'SEOPress', 'manage_options', 'seopress-option', array( $this, 'create_admin_page' ), 'dashicons-admin-seopress', 90);
|
170 |
$seopress_titles_help_tab = add_submenu_page('seopress-option', __('Titles & Metas','wp-seopress'), __('Titles & Metas','wp-seopress'), 'manage_options', 'seopress-titles', array( $this, 'seopress_titles_page' ));
|
171 |
add_submenu_page('seopress-option', __('XML Sitemap','wp-seopress'), __('XML Sitemap','wp-seopress'), 'manage_options', 'seopress-xml-sitemap', array( $this, 'seopress_xml_sitemap_page' ));
|
172 |
add_submenu_page('seopress-option', __('Social','wp-seopress'), __('Social','wp-seopress'), 'manage_options', 'seopress-social', array( $this, 'seopress_social_page' ));
|
173 |
+
add_submenu_page('seopress-option', __('Google Analytics','wp-seopress'), __('Google Analytics','wp-seopress'), 'manage_options', 'seopress-google-analytics', array( $this, 'seopress_google_analytics_page' ));
|
174 |
add_submenu_page('seopress-option', __('Advanced','wp-seopress'), __('Advanced','wp-seopress'), 'manage_options', 'seopress-advanced', array( $this, 'seopress_advanced_page' ));
|
175 |
add_submenu_page('seopress-option', __('Import / Export / Reset settings','wp-seopress'), __('Import / Export / Reset','wp-seopress'), 'manage_options', 'seopress-import-export', array( $this,'seopress_import_export_page'));
|
176 |
|
193 |
<li><span>'.__('%%term_description%%','wp-seopress').'</span>'.__('Term description','wp-seopress').'</li>
|
194 |
<li><span>'.__('%%search_keywords%%','wp-seopress').'</span>'.__('Search keywords','wp-seopress').'</li>
|
195 |
<li><span>'.__('%%current_pagination%%','wp-seopress').'</span>'.__('Current number page','wp-seopress').'</li>
|
196 |
+
<li><span>'.__('%%cpt_plural%%','wp-seopress').'</span>'.__('Plural Post Type Archive name','wp-seopress').'</li>
|
197 |
+
<li><span>'.__('%%date_archive%%','wp-seopress').'</span>'.__('Date Archive','wp-seopress').'</li>
|
198 |
</ul>
|
199 |
';
|
200 |
|
210 |
|
211 |
function seopress_titles_page(){
|
212 |
$this->options = get_option( 'seopress_titles_option_name' );
|
213 |
+
if (function_exists(seopress_admin_header)) {
|
214 |
+
echo seopress_admin_header();
|
215 |
+
}
|
216 |
?>
|
217 |
<form method="post" action="options.php" class="seopress-option">
|
218 |
<?php
|
225 |
global $wp_version, $title;
|
226 |
$current_tab = '';
|
227 |
$tag = version_compare( $wp_version, '4.4' ) >= 0 ? 'h1' : 'h2';
|
228 |
+
echo '<'.$tag.'><span class="dashicons dashicons-editor-table"></span>'.$title.'</'.$tag.'>';
|
229 |
settings_fields( 'seopress_titles_option_group' );
|
230 |
?>
|
231 |
|
235 |
$plugin_settings_tabs = array(
|
236 |
'tab_seopress_titles_home' => __( "Home", "wp-seopress" ),
|
237 |
'tab_seopress_titles_single' => __( "Single Post Types", "wp-seopress" ),
|
|
|
238 |
'tab_seopress_titles_archives' => __( "Archives", "wp-seopress" ),
|
239 |
+
'tab_seopress_titles_tax' => __( "Taxonomies", "wp-seopress" ),
|
240 |
'tab_seopress_titles_advanced' => __( "Advanced", "wp-seopress" ),
|
241 |
);
|
242 |
|
248 |
?>
|
249 |
<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>
|
250 |
<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>
|
|
|
251 |
<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>
|
252 |
+
<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>
|
253 |
<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>
|
254 |
</div>
|
255 |
|
260 |
|
261 |
function seopress_xml_sitemap_page(){
|
262 |
$this->options = get_option( 'seopress_xml_sitemap_option_name' );
|
263 |
+
if (function_exists(seopress_admin_header)) {
|
264 |
+
echo seopress_admin_header();
|
265 |
+
}
|
266 |
?>
|
267 |
+
<form method="post" action="options.php" class="seopress-option" name="seopress-flush">
|
268 |
<?php
|
269 |
global $wp_version, $title;
|
270 |
$current_tab = '';
|
271 |
$tag = version_compare( $wp_version, '4.4' ) >= 0 ? 'h1' : 'h2';
|
272 |
+
echo '<'.$tag.'><span class="dashicons dashicons-media-spreadsheet"></span>'.$title.'</'.$tag.'>';
|
273 |
settings_fields( 'seopress_xml_sitemap_option_group' );
|
274 |
?>
|
275 |
|
292 |
<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>
|
293 |
<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>
|
294 |
</div>
|
|
|
295 |
<?php submit_button(); ?>
|
296 |
</form>
|
297 |
<?php
|
299 |
|
300 |
function seopress_social_page(){
|
301 |
$this->options = get_option( 'seopress_social_option_name' );
|
302 |
+
if (function_exists(seopress_admin_header)) {
|
303 |
+
echo seopress_admin_header();
|
304 |
+
}
|
305 |
?>
|
306 |
<form method="post" action="options.php" class="seopress-option">
|
307 |
<?php
|
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.'</'.$tag.'>';
|
312 |
settings_fields( 'seopress_social_option_group' );
|
313 |
?>
|
314 |
|
339 |
<?php
|
340 |
}
|
341 |
|
342 |
+
function seopress_google_analytics_page(){
|
343 |
+
$this->options = get_option( 'seopress_google_analytics_option_name' );
|
344 |
+
if (function_exists(seopress_admin_header)) {
|
345 |
+
echo seopress_admin_header();
|
346 |
+
}
|
347 |
+
?>
|
348 |
+
<form method="post" action="options.php" class="seopress-option">
|
349 |
+
<?php
|
350 |
+
global $wp_version, $title;
|
351 |
+
$current_tab = '';
|
352 |
+
$tag = version_compare( $wp_version, '4.4' ) >= 0 ? 'h1' : 'h2';
|
353 |
+
echo '<'.$tag.'><span class="dashicons dashicons-chart-area"></span>'.$title.'</'.$tag.'>';
|
354 |
+
settings_fields( 'seopress_google_analytics_option_group' );
|
355 |
+
?>
|
356 |
+
|
357 |
+
<div id="seopress-tabs" class="wrap">
|
358 |
+
<?php
|
359 |
+
|
360 |
+
$plugin_settings_tabs = array(
|
361 |
+
'tab_seopress_google_analytics_enable' => __( "General", "wp-seopress" ),
|
362 |
+
'tab_seopress_google_analytics_features' => __( "Tracking", "wp-seopress" ),
|
363 |
+
'tab_seopress_google_analytics_custom_dimensions' => __( "Custom Dimensions", "wp-seopress" ),
|
364 |
+
);
|
365 |
+
|
366 |
+
echo '<h2 class="nav-tab-wrapper">';
|
367 |
+
foreach ( $plugin_settings_tabs as $tab_key => $tab_caption ) {
|
368 |
+
echo '<a id="'. $tab_key .'-tab" class="nav-tab" href="?page=seopress-google-analytics#tab=' . $tab_key . '">' . $tab_caption . '</a>';
|
369 |
+
}
|
370 |
+
echo '</h2>';
|
371 |
+
?>
|
372 |
+
<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>
|
373 |
+
<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>
|
374 |
+
<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>
|
375 |
+
</div>
|
376 |
+
|
377 |
+
<?php submit_button(); ?>
|
378 |
+
</form>
|
379 |
+
<?php
|
380 |
+
}
|
381 |
+
|
382 |
function seopress_advanced_page(){
|
383 |
$this->options = get_option( 'seopress_advanced_option_name' );
|
384 |
+
if (function_exists(seopress_admin_header)) {
|
385 |
+
echo seopress_admin_header();
|
386 |
+
}
|
387 |
?>
|
388 |
<form method="post" action="options.php" class="seopress-option">
|
389 |
<?php
|
391 |
global $wp_version, $title;
|
392 |
$current_tab = '';
|
393 |
$tag = version_compare( $wp_version, '4.4' ) >= 0 ? 'h1' : 'h2';
|
394 |
+
echo '<'.$tag.'><span class="dashicons dashicons-admin-tools"></span>'.$title.'</'.$tag.'>';
|
395 |
settings_fields( 'seopress_advanced_option_group' );
|
396 |
?>
|
397 |
|
400 |
|
401 |
$plugin_settings_tabs = array(
|
402 |
'tab_seopress_advanced_advanced' => __( "Advanced", "wp-seopress" ),
|
403 |
+
'tab_seopress_advanced_appearance' => __( "Appearance", "wp-seopress" ),
|
404 |
);
|
405 |
|
406 |
echo '<h2 class="nav-tab-wrapper">';
|
410 |
echo '</h2>';
|
411 |
?>
|
412 |
<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>
|
413 |
+
<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>
|
414 |
</div>
|
415 |
|
416 |
<?php submit_button(); ?>
|
420 |
|
421 |
function seopress_import_export_page(){
|
422 |
$this->options = get_option( 'seopress_import_export_option_name' );
|
423 |
+
if (function_exists(seopress_admin_header)) {
|
424 |
+
echo seopress_admin_header();
|
425 |
+
}
|
426 |
?>
|
427 |
+
<div class="seopress-option">
|
428 |
+
<?php global $wp_version, $title;
|
429 |
+
$tag = version_compare( $wp_version, '4.4' ) >= 0 ? 'h1' : 'h2';
|
430 |
+
echo '<'.$tag.'><span class="dashicons dashicons-admin-settings"></span>'.$title.'</'.$tag.'>';
|
431 |
+
?>
|
432 |
+
<div class="metabox-holder">
|
433 |
+
<div class="postbox">
|
434 |
+
<h3><span><?php _e( 'Export Settings', 'wp-seopress' ); ?></span></h3>
|
435 |
+
<div class="inside">
|
436 |
+
<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>
|
437 |
+
<form method="post">
|
438 |
+
<p><input type="hidden" name="seopress_action" value="export_settings" /></p>
|
439 |
+
<p>
|
440 |
+
<?php wp_nonce_field( 'seopress_export_nonce', 'seopress_export_nonce' ); ?>
|
441 |
+
<?php submit_button( __( 'Export', 'wp-seopress' ), 'secondary', 'submit', false ); ?>
|
442 |
+
</p>
|
443 |
+
</form>
|
444 |
+
</div><!-- .inside -->
|
445 |
+
</div><!-- .postbox -->
|
446 |
+
|
447 |
+
<div class="postbox">
|
448 |
+
<h3><span><?php _e( 'Import Settings', 'wp-seopress' ); ?></span></h3>
|
449 |
+
<div class="inside">
|
450 |
+
<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>
|
451 |
+
<form method="post" enctype="multipart/form-data">
|
452 |
+
<p>
|
453 |
+
<input type="file" name="import_file"/>
|
454 |
+
</p>
|
455 |
+
<p>
|
456 |
+
<input type="hidden" name="seopress_action" value="import_settings" />
|
457 |
+
<?php wp_nonce_field( 'seopress_import_nonce', 'seopress_import_nonce' ); ?>
|
458 |
+
<?php submit_button( __( 'Import', 'wp-seopress' ), 'secondary', 'submit', false ); ?>
|
459 |
+
</p>
|
460 |
+
</form>
|
461 |
+
</div><!-- .inside -->
|
462 |
+
</div><!-- .postbox -->
|
463 |
+
|
464 |
+
<div id="yoast-migration-tool" class="postbox">
|
465 |
+
<h3><span><?php _e( 'Import posts metadata from Yoast', 'wp-seopress' ); ?></span></h3>
|
466 |
+
<div class="inside">
|
467 |
+
<p><?php _e( 'By clicking Migrate, we\'ll import:', 'wp-seopress' ); ?></p>
|
468 |
+
<ul>
|
469 |
+
<li><?php _e('Title tags','wp-seopress'); ?></li>
|
470 |
+
<li><?php _e('Meta description','wp-seopress'); ?></li>
|
471 |
+
<li><?php _e('Facebook Open Graph tags (title, description and image thumbnail)','wp-seopress'); ?></li>
|
472 |
+
<li><?php _e('Twitter tags (title, description and image thumbnail)','wp-seopress'); ?></li>
|
473 |
+
<li><?php _e('Meta Robots (noindex, nofollow...)','wp-seopress'); ?></li>
|
474 |
+
<li><?php _e('Canonical URL','wp-seopress'); ?></li>
|
475 |
+
</ul>
|
476 |
+
<p style="color:red"><span class="dashicons dashicons-warning"></span> <?php _e( '<strong>WARNING:</strong> Migration will delete all SEOPress posts metadata', 'wp-seopress' ); ?></p>
|
477 |
+
<div id="seopress-yoast-migrate" class="button"><?php _e('Migrate now','wp-seopress'); ?></div>
|
478 |
+
<span class="spinner"></span>
|
479 |
+
<div class="log"></div>
|
480 |
+
</div><!-- .inside -->
|
481 |
+
</div><!-- .postbox -->
|
482 |
+
|
483 |
+
<div class="postbox">
|
484 |
+
<h3><span><?php _e( 'Reset All Settings', 'wp-seopress' ); ?></span></h3>
|
485 |
+
<div class="inside">
|
486 |
+
<p style="color:red"><span class="dashicons dashicons-warning"></span> <?php _e( '<strong>WARNING:</strong> Delete all options related to SEOPress in your database AND set settings to their default values.', 'wp-seopress' ); ?></p>
|
487 |
+
<form method="post" enctype="multipart/form-data">
|
488 |
+
<p>
|
489 |
+
<input type="hidden" name="seopress_action" value="reset_settings" />
|
490 |
+
<?php wp_nonce_field( 'seopress_reset_nonce', 'seopress_reset_nonce' ); ?>
|
491 |
+
<?php submit_button( __( 'Reset settings', 'wp-seopress' ), 'secondary', 'submit', false ); ?>
|
492 |
+
</p>
|
493 |
+
</form>
|
494 |
+
</div><!-- .inside -->
|
495 |
+
</div><!-- .postbox -->
|
496 |
+
</div><!-- .metabox-holder -->
|
497 |
+
</div>
|
498 |
<?php
|
499 |
}
|
500 |
|
506 |
|
507 |
// Set class property
|
508 |
$this->options = get_option( 'seopress_option_name' );
|
509 |
+
|
510 |
+
echo seopress_admin_header();
|
511 |
?>
|
512 |
+
<div id="seopress-content">
|
513 |
+
<div id="seopress-notifications-center">
|
514 |
+
<h2><span class="dashicons dashicons-flag"></span><?php _e('Notifications center','wp-seopress'); ?></h2>
|
515 |
+
<?php if (is_plugin_active('wordpress-seo/wp-seo.php')) { ?>
|
516 |
+
<div class="seopress-alert">
|
517 |
+
<p>
|
518 |
+
<span class="dashicons dashicons-warning"></span>
|
519 |
+
<?php _e('We notice that you use Yoast SEO plugin. <br>Do you want to migrate all your posts metadata to SEOPress?','wp-seopress'); ?>
|
520 |
+
</p>
|
521 |
+
<a class="button-primary" href="<?php echo admin_url( 'admin.php?page=seopress-import-export#yoast-migration-tool' ); ?>"><?php _e('Migrate!','wp-seopress'); ?></a>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
522 |
</div>
|
523 |
+
<?php } ?>
|
524 |
+
<?php if (!is_ssl()) { ?>
|
525 |
+
<div class="seopress-alert">
|
526 |
+
<p>
|
527 |
+
<span class="dashicons dashicons-warning"></span>
|
528 |
+
<?php _e('Your site doesn\'t use an SSL certificate!','wp-seopress'); ?>
|
529 |
+
<span class="impact low"><?php _e('Low impact','wp-seopress'); ?></span>
|
530 |
+
</p>
|
531 |
+
<a class="button-primary" href="https://www.namecheap.com/?aff=105841" target="_blank"><?php _e('Buy an SSL!','wp-seopress'); ?></a>
|
532 |
+
</div>
|
533 |
+
<?php } ?>
|
534 |
+
<?php if (get_option('blog_public') !='1') { ?>
|
535 |
+
<div class="seopress-alert">
|
536 |
+
<p>
|
537 |
+
<span class="dashicons dashicons-warning"></span>
|
538 |
+
<?php _e('Your site is not visible to Search Engines!','wp-seopress'); ?>
|
539 |
+
<span class="impact high"><?php _e('High impact','wp-seopress'); ?></span>
|
540 |
+
</p>
|
541 |
+
<a class="button-primary" href="<?php echo admin_url( 'options-reading.php' ); ?>"><?php _e('Fix this!','wp-seopress'); ?></a>
|
542 |
+
</div>
|
543 |
+
<?php } ?>
|
544 |
+
<?php if (get_option('blogname') =='') { ?>
|
545 |
+
<div class="seopress-alert">
|
546 |
+
<p>
|
547 |
+
<span class="dashicons dashicons-warning"></span>
|
548 |
+
<?php _e('Your site title is empty!','wp-seopress'); ?>
|
549 |
+
<span class="impact high"><?php _e('High impact','wp-seopress'); ?></span>
|
550 |
+
</p>
|
551 |
+
<a class="button-primary" href="<?php echo admin_url( 'options-general.php' ); ?>"><?php _e('Fix this!','wp-seopress'); ?></a>
|
552 |
+
</div>
|
553 |
+
<?php } ?>
|
554 |
+
<?php if (get_option('permalink_structure') =='') { ?>
|
555 |
+
<div class="seopress-alert">
|
556 |
+
<p>
|
557 |
+
<span class="dashicons dashicons-warning"></span>
|
558 |
+
<?php _e('Your permalinks are not SEO Friendly! Enable pretty permalinks to fix this.','wp-seopress'); ?>
|
559 |
+
<span class="impact high"><?php _e('High impact','wp-seopress'); ?></span>
|
560 |
+
</p>
|
561 |
+
<a class="button-primary" href="<?php echo admin_url( 'options-permalink.php' ); ?>"><?php _e('Fix this!','wp-seopress'); ?></a>
|
562 |
+
</div>
|
563 |
+
<?php } ?>
|
564 |
+
<?php if (seopress_xml_sitemap_general_enable_option() !='1') { ?>
|
565 |
+
<div class="seopress-alert">
|
566 |
+
<p>
|
567 |
+
<span class="dashicons dashicons-warning"></span>
|
568 |
+
<?php _e('You don\'t have an XML Sitemap!','wp-seopress'); ?>
|
569 |
+
<span class="impact medium"><?php _e('Medium impact','wp-seopress'); ?></span>
|
570 |
+
</p>
|
571 |
+
<a class="button-primary" href="<?php echo admin_url( 'admin.php?page=seopress-xml-sitemap' ); ?>"><?php _e('Fix this!','wp-seopress'); ?></a>
|
572 |
+
</div>
|
573 |
+
<?php } ?>
|
574 |
</div>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
575 |
<div class="seopress-page-list">
|
576 |
+
<div id="seopress-notice-save" style="display: none"><span class="dashicons dashicons-yes"></span><span class="html"></span></div>
|
577 |
<div class="seopress-feature">
|
578 |
<div class="img-tool">
|
579 |
<span class="dashicons dashicons-editor-table"></span>
|
580 |
</div>
|
581 |
<span class="inner">
|
582 |
+
<h3><?php _e('Titles & metas','wp-seopress'); ?></h3>
|
583 |
<p><?php _e('Manage all your titles & metas','wp-seopress'); ?></p>
|
584 |
<a class="button-secondary" href="<?php echo admin_url( 'admin.php?page=seopress-titles' ); ?>"><?php _e('Manage','wp-seopress'); ?></a>
|
585 |
+
<?php
|
586 |
+
if(seopress_get_toggle_titles_option()=='1') {
|
587 |
+
$seopress_get_toggle_titles_option = '"1"';
|
588 |
+
} else {
|
589 |
+
$seopress_get_toggle_titles_option = '"0"';
|
590 |
+
}
|
591 |
+
?>
|
592 |
+
<input type="checkbox" name="toggle-titles" id="toggle-titles" class="toggle" data-toggle=<?php echo $seopress_get_toggle_titles_option; ?>>
|
593 |
+
<label for="toggle-titles"></label>
|
594 |
+
<?php
|
595 |
+
if(seopress_get_toggle_titles_option()=='1') {
|
596 |
+
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>';
|
597 |
+
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>';
|
598 |
+
} else {
|
599 |
+
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>';
|
600 |
+
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>';
|
601 |
+
}
|
602 |
+
?>
|
603 |
+
<a href="https://www.seopress.org/support/guides/manage-titles-meta-descriptions/" target="_blank" class="seopress-doc"><span class="dashicons dashicons-editor-help"></span></a>
|
604 |
</span>
|
605 |
</div>
|
606 |
<div class="seopress-feature">
|
608 |
<span class="dashicons dashicons-media-spreadsheet"></span>
|
609 |
</div>
|
610 |
<span class="inner">
|
611 |
+
<h3><?php _e('XML Sitemap','wp-seopress'); ?></h3>
|
612 |
<p><?php _e('Manage your XML Sitemap','wp-seopress'); ?></p>
|
613 |
<a class="button-secondary" href="<?php echo admin_url( 'admin.php?page=seopress-xml-sitemap' ); ?>"><?php _e('Manage','wp-seopress'); ?></a>
|
614 |
+
<?php
|
615 |
+
if(seopress_get_toggle_xml_sitemap_option()=='1') {
|
616 |
+
$seopress_get_toggle_xml_sitemap_option = '"1"';
|
617 |
+
} else {
|
618 |
+
$seopress_get_toggle_xml_sitemap_option = '"0"';
|
619 |
+
}
|
620 |
+
?>
|
621 |
+
<input type="checkbox" name="toggle-xml-sitemap" id="toggle-xml-sitemap" class="toggle" data-toggle=<?php echo $seopress_get_toggle_xml_sitemap_option; ?>>
|
622 |
+
<label for="toggle-xml-sitemap"></label>
|
623 |
+
<?php
|
624 |
+
if(seopress_get_toggle_xml_sitemap_option()=='1') {
|
625 |
+
echo '<span id="sitemap-state-default" class="feature-state"><span class="dashicons dashicons-arrow-left-alt"></span>'.__('Click to disable this feature','wp-seopress').'</span>';
|
626 |
+
echo '<span id="sitemap-state" class="feature-state feature-state-off"><span class="dashicons dashicons-arrow-left-alt"></span>'.__('Click to enable this feature','wp-seopress').'</span>';
|
627 |
+
} else {
|
628 |
+
echo '<span id="sitemap-state-default" class="feature-state"><span class="dashicons dashicons-arrow-left-alt"></span>'.__('Click to enable this feature','wp-seopress').'</span>';
|
629 |
+
echo '<span id="sitemap-state" class="feature-state feature-state-off"><span class="dashicons dashicons-arrow-left-alt"></span>'.__('Click to disable this feature','wp-seopress').'</span>';
|
630 |
+
}
|
631 |
+
?>
|
632 |
+
<a href="https://www.seopress.org/support/guides/enable-xml-sitemaps/" target="_blank" class="seopress-doc"><span class="dashicons dashicons-editor-help"></span></a>
|
633 |
</span>
|
634 |
</div>
|
635 |
<div class="seopress-feature">
|
637 |
<span class="dashicons dashicons-share"></span>
|
638 |
</div>
|
639 |
<span class="inner">
|
640 |
+
<h3><?php _e('Social','wp-seopress'); ?></h3>
|
641 |
<p><?php _e('Open Graph, Twitter Card, Google Knowledge Graph and more...','wp-seopress'); ?></p>
|
642 |
<a class="button-secondary" href="<?php echo admin_url( 'admin.php?page=seopress-social' ); ?>"><?php _e('Manage','wp-seopress'); ?></a>
|
643 |
+
<?php
|
644 |
+
if(seopress_get_toggle_social_option()=='1') {
|
645 |
+
$seopress_get_toggle_social_option = '"1"';
|
646 |
+
} else {
|
647 |
+
$seopress_get_toggle_social_option = '"0"';
|
648 |
+
}
|
649 |
+
?>
|
650 |
+
<input type="checkbox" name="toggle-social" id="toggle-social" class="toggle" data-toggle=<?php echo $seopress_get_toggle_social_option; ?>>
|
651 |
+
<label for="toggle-social"></label>
|
652 |
+
<?php
|
653 |
+
if(seopress_get_toggle_social_option()=='1') {
|
654 |
+
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>';
|
655 |
+
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>';
|
656 |
+
} else {
|
657 |
+
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>';
|
658 |
+
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>';
|
659 |
+
}
|
660 |
+
?>
|
661 |
+
<a href="https://www.seopress.org/support/guides/enable-google-knowledge-graph/" target="_blank" class="seopress-doc"><span class="dashicons dashicons-editor-help"></span></a>
|
662 |
+
</span>
|
663 |
+
</div>
|
664 |
+
<div class="seopress-feature">
|
665 |
+
<div class="img-tool">
|
666 |
+
<span class="dashicons dashicons-chart-area"></span>
|
667 |
+
</div>
|
668 |
+
<span class="inner">
|
669 |
+
<h3><?php _e('Google Analytics','wp-seopress'); ?></h3>
|
670 |
+
<p><?php _e('Track everything about your visitors with Google Analytics','wp-seopress'); ?></p>
|
671 |
+
<a class="button-secondary" href="<?php echo admin_url( 'admin.php?page=seopress-google-analytics' ); ?>"><?php _e('Manage','wp-seopress'); ?></a>
|
672 |
+
<?php
|
673 |
+
if(seopress_get_toggle_google_analytics_option()=='1') {
|
674 |
+
$seopress_get_toggle_google_analytics_option = '"1"';
|
675 |
+
} else {
|
676 |
+
$seopress_get_toggle_google_analytics_option = '"0"';
|
677 |
+
}
|
678 |
+
?>
|
679 |
+
<input type="checkbox" name="toggle-google-analytics" id="toggle-google-analytics" class="toggle" data-toggle=<?php echo $seopress_get_toggle_google_analytics_option; ?>>
|
680 |
+
<label for="toggle-google-analytics"></label>
|
681 |
+
<?php
|
682 |
+
if(seopress_get_toggle_google_analytics_option()=='1') {
|
683 |
+
echo '<span id="analytics-state-default" class="feature-state"><span class="dashicons dashicons-arrow-left-alt"></span>'.__('Click to disable this feature','wp-seopress').'</span>';
|
684 |
+
echo '<span id="analytics-state" class="feature-state feature-state-off"><span class="dashicons dashicons-arrow-left-alt"></span>'.__('Click to enable this feature','wp-seopress').'</span>';
|
685 |
+
} else {
|
686 |
+
echo '<span id="analytics-state-default" class="feature-state"><span class="dashicons dashicons-arrow-left-alt"></span>'.__('Click to enable this feature','wp-seopress').'</span>';
|
687 |
+
echo '<span id="analytics-state" class="feature-state feature-state-off"><span class="dashicons dashicons-arrow-left-alt"></span>'.__('Click to disable this feature','wp-seopress').'</span>';
|
688 |
+
}
|
689 |
+
?>
|
690 |
+
<a href="https://www.seopress.org/support/guides/google-analytics/" target="_blank" class="seopress-doc"><span class="dashicons dashicons-editor-help"></span></a>
|
691 |
</span>
|
692 |
</div>
|
693 |
<div class="seopress-feature">
|
695 |
<span class="dashicons dashicons-admin-tools"></span>
|
696 |
</div>
|
697 |
<span class="inner">
|
698 |
+
<h3><?php _e('Advanced','wp-seopress'); ?></h3>
|
699 |
<p><?php _e('Advanced SEO options for advanced users!','wp-seopress'); ?></p>
|
700 |
<a class="button-secondary" href="<?php echo admin_url( 'admin.php?page=seopress-advanced' ); ?>"><?php _e('Manage','wp-seopress'); ?></a>
|
701 |
+
<?php
|
702 |
+
if(seopress_get_toggle_advanced_option()=='1') {
|
703 |
+
$seopress_get_toggle_advanced_option = '"1"';
|
704 |
+
} else {
|
705 |
+
$seopress_get_toggle_advanced_option = '"0"';
|
706 |
+
}
|
707 |
+
?>
|
708 |
+
<input type="checkbox" name="toggle-advanced" id="toggle-advanced" class="toggle" data-toggle=<?php echo $seopress_get_toggle_advanced_option; ?>>
|
709 |
+
<label for="toggle-advanced"></label>
|
710 |
+
<?php
|
711 |
+
if(seopress_get_toggle_advanced_option()=='1') {
|
712 |
+
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>';
|
713 |
+
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>';
|
714 |
+
} else {
|
715 |
+
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>';
|
716 |
+
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>';
|
717 |
+
}
|
718 |
+
?>
|
719 |
</span>
|
720 |
</div>
|
721 |
+
<?php if (is_plugin_active('wp-seopress-pro/seopress-pro.php')) { ?>
|
722 |
+
<div class="seopress-feature">
|
723 |
+
<div class="img-tool">
|
724 |
+
<span class="dashicons dashicons-cart"></span>
|
725 |
+
</div>
|
726 |
+
<span class="inner">
|
727 |
+
<h3><?php _e('WooCommerce','wp-seopress'); ?></h3>
|
728 |
+
<p><?php _e('Improve WooCommerce SEO','wp-seopress'); ?></p>
|
729 |
+
<a class="button-secondary" href="<?php echo admin_url( 'admin.php?page=seopress-pro-page#tab=tab_seopress_woocommerce$1' ); ?>"><?php _e('Manage','wp-seopress'); ?></a>
|
730 |
+
<?php
|
731 |
+
if(seopress_get_toggle_woocommerce_option()=='1') {
|
732 |
+
$seopress_get_toggle_woocommerce_option = '"1"';
|
733 |
+
} else {
|
734 |
+
$seopress_get_toggle_woocommerce_option = '"0"';
|
735 |
+
}
|
736 |
+
?>
|
737 |
+
<input type="checkbox" name="toggle-woocommerce" id="toggle-woocommerce" class="toggle" data-toggle=<?php echo $seopress_get_toggle_woocommerce_option; ?>>
|
738 |
+
<label for="toggle-woocommerce"></label>
|
739 |
+
<?php
|
740 |
+
if(seopress_get_toggle_woocommerce_option()=='1') {
|
741 |
+
echo '<span id="woocommerce-state-default" class="feature-state"><span class="dashicons dashicons-arrow-left-alt"></span>'.__('Click to disable this feature','wp-seopress').'</span>';
|
742 |
+
echo '<span id="woocommerce-state" class="feature-state feature-state-off"><span class="dashicons dashicons-arrow-left-alt"></span>'.__('Click to enable this feature','wp-seopress').'</span>';
|
743 |
+
} else {
|
744 |
+
echo '<span id="woocommerce-state-default" class="feature-state"><span class="dashicons dashicons-arrow-left-alt"></span>'.__('Click to enable this feature','wp-seopress').'</span>';
|
745 |
+
echo '<span id="woocommerce-state" class="feature-state feature-state-off"><span class="dashicons dashicons-arrow-left-alt"></span>'.__('Click to disable this feature','wp-seopress').'</span>';
|
746 |
+
}
|
747 |
+
?>
|
748 |
+
</span>
|
749 |
+
</div>
|
750 |
+
<div class="seopress-feature">
|
751 |
+
<div class="img-tool">
|
752 |
+
<span class="dashicons dashicons-feedback"></span>
|
753 |
+
</div>
|
754 |
+
<span class="inner">
|
755 |
+
<h3><?php _e('Breadcrumbs','wp-seopress'); ?></h3>
|
756 |
+
<p><?php _e('Enable Breadcrumbs for your theme and improve your SEO in SERPs','wp-seopress'); ?></p>
|
757 |
+
<a class="button-secondary" href="<?php echo admin_url( 'admin.php?page=seopress-pro-page#tab=tab_seopress_breadcrumbs$2' ); ?>"><?php _e('Manage','wp-seopress'); ?></a>
|
758 |
+
<?php
|
759 |
+
if(seopress_get_toggle_breadcrumbs_option()=='1') {
|
760 |
+
$seopress_get_toggle_breadcrumbs_option = '"1"';
|
761 |
+
} else {
|
762 |
+
$seopress_get_toggle_breadcrumbs_option = '"0"';
|
763 |
+
}
|
764 |
+
?>
|
765 |
+
<input type="checkbox" name="toggle-breadcrumbs" id="toggle-breadcrumbs" class="toggle" data-toggle=<?php echo $seopress_get_toggle_breadcrumbs_option; ?>>
|
766 |
+
<label for="toggle-breadcrumbs"></label>
|
767 |
+
<?php
|
768 |
+
if(seopress_get_toggle_breadcrumbs_option()=='1') {
|
769 |
+
echo '<span id="breadcrumbs-state-default" class="feature-state"><span class="dashicons dashicons-arrow-left-alt"></span>'.__('Click to disable this feature','wp-seopress').'</span>';
|
770 |
+
echo '<span id="breadcrumbs-state" class="feature-state feature-state-off"><span class="dashicons dashicons-arrow-left-alt"></span>'.__('Click to enable this feature','wp-seopress').'</span>';
|
771 |
+
} else {
|
772 |
+
echo '<span id="breadcrumbs-state-default" class="feature-state"><span class="dashicons dashicons-arrow-left-alt"></span>'.__('Click to enable this feature','wp-seopress').'</span>';
|
773 |
+
echo '<span id="breadcrumbs-state" class="feature-state feature-state-off"><span class="dashicons dashicons-arrow-left-alt"></span>'.__('Click to disable this feature','wp-seopress').'</span>';
|
774 |
+
}
|
775 |
+
?>
|
776 |
+
<a href="https://www.seopress.org/support/guides/enable-breadcrumbs/" target="_blank" class="seopress-doc"><span class="dashicons dashicons-editor-help"></span></a>
|
777 |
+
</span>
|
778 |
+
</div>
|
779 |
+
<div class="seopress-feature">
|
780 |
+
<div class="img-tool">
|
781 |
+
<span class="dashicons dashicons-performance"></span>
|
782 |
+
</div>
|
783 |
+
<span class="inner">
|
784 |
+
<h3><?php _e('Google Page Speed','wp-seopress'); ?></h3>
|
785 |
+
<p><?php _e('Track your website performance to improve SEO with Google Page Speed','wp-seopress'); ?></p>
|
786 |
+
<a class="button-secondary" href="<?php echo admin_url( 'admin.php?page=seopress-pro-page#tab=tab_seopress_page_speed$3' ); ?>"><?php _e('Manage','wp-seopress'); ?></a>
|
787 |
+
<a href="http://www.seopress.org/support/guides/analyse-site-google-page-speed/" target="_blank" class="seopress-doc"><span class="dashicons dashicons-editor-help"></span></a>
|
788 |
+
</span>
|
789 |
+
</div>
|
790 |
+
<div class="seopress-feature">
|
791 |
+
<div class="img-tool">
|
792 |
+
<span class="dashicons dashicons-media-text"></span>
|
793 |
+
</div>
|
794 |
+
<span class="inner">
|
795 |
+
<h3><?php _e('Robots','wp-seopress'); ?></h3>
|
796 |
+
<p><?php _e('Edit your robots.txt file','wp-seopress'); ?></p>
|
797 |
+
<a class="button-secondary" href="<?php echo admin_url( 'admin.php?page=seopress-pro-page#tab=tab_seopress_robots$4' ); ?>"><?php _e('Manage','wp-seopress'); ?></a>
|
798 |
+
<?php
|
799 |
+
if(seopress_get_toggle_robots_option()=='1') {
|
800 |
+
$seopress_get_toggle_robots_option = '"1"';
|
801 |
+
} else {
|
802 |
+
$seopress_get_toggle_robots_option = '"0"';
|
803 |
+
}
|
804 |
+
?>
|
805 |
+
<input type="checkbox" name="toggle-robots" id="toggle-robots" class="toggle" data-toggle=<?php echo $seopress_get_toggle_robots_option; ?>>
|
806 |
+
<label for="toggle-robots"></label>
|
807 |
+
<?php
|
808 |
+
if(seopress_get_toggle_robots_option()=='1') {
|
809 |
+
echo '<span id="robots-state-default" class="feature-state"><span class="dashicons dashicons-arrow-left-alt"></span>'.__('Click to disable this feature','wp-seopress').'</span>';
|
810 |
+
echo '<span id="robots-state" class="feature-state feature-state-off"><span class="dashicons dashicons-arrow-left-alt"></span>'.__('Click to enable this feature','wp-seopress').'</span>';
|
811 |
+
} else {
|
812 |
+
echo '<span id="robots-state-default" class="feature-state"><span class="dashicons dashicons-arrow-left-alt"></span>'.__('Click to enable this feature','wp-seopress').'</span>';
|
813 |
+
echo '<span id="robots-state" class="feature-state feature-state-off"><span class="dashicons dashicons-arrow-left-alt"></span>'.__('Click to disable this feature','wp-seopress').'</span>';
|
814 |
+
}
|
815 |
+
?>
|
816 |
+
<a href="https://www.seopress.org/support/guides/edit-robots-txt-file/" target="_blank" class="seopress-doc"><span class="dashicons dashicons-editor-help"></span></a>
|
817 |
+
</span>
|
818 |
+
</div>
|
819 |
+
<div class="seopress-feature">
|
820 |
+
<div class="img-tool">
|
821 |
+
<span class="dashicons dashicons-admin-post"></span>
|
822 |
+
</div>
|
823 |
+
<span class="inner">
|
824 |
+
<h3><?php _e('Google News Sitemap','wp-seopress'); ?></h3>
|
825 |
+
<p><?php _e('Optimize your site for Google News','wp-seopress'); ?></p>
|
826 |
+
<a class="button-secondary" href="<?php echo admin_url( 'admin.php?page=seopress-pro-page#tab=tab_seopress_news$5' ); ?>"><?php _e('Manage','wp-seopress'); ?></a>
|
827 |
+
<?php
|
828 |
+
if(seopress_get_toggle_news_option()=='1') {
|
829 |
+
$seopress_get_toggle_news_option = '"1"';
|
830 |
+
} else {
|
831 |
+
$seopress_get_toggle_news_option = '"0"';
|
832 |
+
}
|
833 |
+
?>
|
834 |
+
<input type="checkbox" name="toggle-news" id="toggle-news" class="toggle" data-toggle=<?php echo $seopress_get_toggle_news_option; ?>>
|
835 |
+
<label for="toggle-news"></label>
|
836 |
+
<?php
|
837 |
+
if(seopress_get_toggle_news_option()=='1') {
|
838 |
+
echo '<span id="news-state-default" class="feature-state"><span class="dashicons dashicons-arrow-left-alt"></span>'.__('Click to disable this feature','wp-seopress').'</span>';
|
839 |
+
echo '<span id="news-state" class="feature-state feature-state-off"><span class="dashicons dashicons-arrow-left-alt"></span>'.__('Click to enable this feature','wp-seopress').'</span>';
|
840 |
+
} else {
|
841 |
+
echo '<span id="news-state-default" class="feature-state"><span class="dashicons dashicons-arrow-left-alt"></span>'.__('Click to enable this feature','wp-seopress').'</span>';
|
842 |
+
echo '<span id="news-state" class="feature-state feature-state-off"><span class="dashicons dashicons-arrow-left-alt"></span>'.__('Click to disable this feature','wp-seopress').'</span>';
|
843 |
+
}
|
844 |
+
?>
|
845 |
+
</span>
|
846 |
+
</div>
|
847 |
+
<div class="seopress-feature">
|
848 |
+
<div class="img-tool">
|
849 |
+
<span class="dashicons dashicons-admin-links"></span>
|
850 |
+
</div>
|
851 |
+
<span class="inner">
|
852 |
+
<h3><?php _e('Redirections','wp-seopress'); ?></h3>
|
853 |
+
<p><?php _e('Monitor 404, create 301, 302 and 307 redirections','wp-seopress'); ?></p>
|
854 |
+
<a class="button-secondary" href="<?php echo admin_url( 'admin.php?page=seopress-pro-page#tab=tab_seopress_404$6' ); ?>"><?php _e('Manage','wp-seopress'); ?></a>
|
855 |
+
<?php
|
856 |
+
if(seopress_get_toggle_404_option()=='1') {
|
857 |
+
$seopress_get_toggle_404_option = '"1"';
|
858 |
+
} else {
|
859 |
+
$seopress_get_toggle_404_option = '"0"';
|
860 |
+
}
|
861 |
+
?>
|
862 |
+
<input type="checkbox" name="toggle-404" id="toggle-404" class="toggle" data-toggle=<?php echo $seopress_get_toggle_404_option; ?>>
|
863 |
+
<label for="toggle-404"></label>
|
864 |
+
<?php
|
865 |
+
if(seopress_get_toggle_404_option()=='1') {
|
866 |
+
echo '<span id="redirections-state-default" class="feature-state"><span class="dashicons dashicons-arrow-left-alt"></span>'.__('Click to disable this feature','wp-seopress').'</span>';
|
867 |
+
echo '<span id="redirections-state" class="feature-state feature-state-off"><span class="dashicons dashicons-arrow-left-alt"></span>'.__('Click to enable this feature','wp-seopress').'</span>';
|
868 |
+
} else {
|
869 |
+
echo '<span id="redirections-state-default" class="feature-state"><span class="dashicons dashicons-arrow-left-alt"></span>'.__('Click to enable this feature','wp-seopress').'</span>';
|
870 |
+
echo '<span id="redirections-state" class="feature-state feature-state-off"><span class="dashicons dashicons-arrow-left-alt"></span>'.__('Click to disable this feature','wp-seopress').'</span>';
|
871 |
+
}
|
872 |
+
?>
|
873 |
+
<a href="http://www.seopress.org/support/guides/redirections/" target="_blank" class="seopress-doc"><span class="dashicons dashicons-editor-help"></span></a>
|
874 |
+
</span>
|
875 |
+
</div>
|
876 |
+
<div class="seopress-feature">
|
877 |
+
<div class="img-tool">
|
878 |
+
<span class="dashicons dashicons-media-text"></span>
|
879 |
+
</div>
|
880 |
+
<span class="inner">
|
881 |
+
<h3><?php _e('htaccess','wp-seopress'); ?></h3>
|
882 |
+
<p><?php _e('Edit your htaccess file.','wp-seopress'); ?></p>
|
883 |
+
<a class="button-secondary" href="<?php echo admin_url( 'admin.php?page=seopress-pro-page#tab=tab_seopress_htaccess$7' ); ?>"><?php _e('Manage','wp-seopress'); ?>
|
884 |
+
</a>
|
885 |
+
</span>
|
886 |
+
</div>
|
887 |
+
<?php } ?>
|
888 |
<div class="seopress-feature">
|
889 |
<div class="img-tool">
|
890 |
<span class="dashicons dashicons-admin-settings"></span>
|
891 |
</div>
|
892 |
<span class="inner">
|
893 |
+
<h3><?php _e('Import / Export / Reset','wp-seopress'); ?></h3>
|
894 |
<p><?php _e('Import / export SEOPress settings from site to site.','wp-seopress'); ?></p>
|
895 |
<a class="button-secondary" href="<?php echo admin_url( 'admin.php?page=seopress-import-export' ); ?>"><?php _e('Manage','wp-seopress'); ?></a>
|
896 |
+
<a href="https://www.seopress.org/support/guides/export-import-reset-settings/" target="_blank" class="seopress-doc"><span class="dashicons dashicons-editor-help"></span></a>
|
897 |
</span>
|
898 |
</div>
|
899 |
+
<?php if (is_plugin_active('wp-seopress-pro/seopress-pro.php')) { ?>
|
900 |
+
<div class="seopress-feature">
|
901 |
+
<div class="img-tool">
|
902 |
+
<span class="dashicons dashicons-admin-network"></span>
|
903 |
+
</div>
|
904 |
+
<span class="inner">
|
905 |
+
<h3><?php _e('License','wp-seopress'); ?></h3>
|
906 |
+
<p><?php _e('Edit your SEOPress license key.','wp-seopress'); ?></p>
|
907 |
+
<a class="button-secondary" href="<?php echo admin_url( 'admin.php?page=seopress-license' ); ?>"><?php _e('Manage','wp-seopress'); ?></a>
|
908 |
+
<a href="https://www.seopress.org/support/guides/activate-seopress-pro-license/" target="_blank" class="seopress-doc"><span class="dashicons dashicons-editor-help"></span></a>
|
909 |
+
</span>
|
910 |
+
</div>
|
911 |
+
<?php } ?>
|
912 |
</div>
|
913 |
</div>
|
914 |
<?php
|
941 |
'seopress_social_option_group', // Option group
|
942 |
'seopress_social_option_name', // Option name
|
943 |
array( $this, 'sanitize' ) // Sanitize
|
944 |
+
);
|
945 |
+
|
946 |
+
register_setting(
|
947 |
+
'seopress_google_analytics_option_group', // Option group
|
948 |
+
'seopress_google_analytics_option_name', // Option name
|
949 |
+
array( $this, 'sanitize' ) // Sanitize
|
950 |
);
|
951 |
|
952 |
register_setting(
|
1003 |
'seopress_setting_section_titles_single' // Section
|
1004 |
);
|
1005 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1006 |
//Archives SECTION=========================================================================
|
1007 |
add_settings_section(
|
1008 |
'seopress_setting_section_titles_archives', // ID
|
1012 |
'seopress-settings-admin-titles-archives' // Page
|
1013 |
);
|
1014 |
|
1015 |
+
add_settings_field(
|
1016 |
+
'seopress_titles_archives_titles', // ID
|
1017 |
+
'',
|
1018 |
+
array( $this, 'seopress_titles_archives_titles_callback' ), // Callback
|
1019 |
+
'seopress-settings-admin-titles-archives', // Page
|
1020 |
+
'seopress_setting_section_titles_archives' // Section
|
1021 |
+
);
|
1022 |
+
|
1023 |
add_settings_field(
|
1024 |
'seopress_titles_archives_author_title', // ID
|
1025 |
'',
|
1108 |
array( $this, 'seopress_titles_archives_404_desc_callback' ), // Callback
|
1109 |
'seopress-settings-admin-titles-archives', // Page
|
1110 |
'seopress_setting_section_titles_archives' // Section
|
1111 |
+
);
|
1112 |
|
1113 |
+
//Taxonomies SECTION=======================================================================
|
1114 |
+
add_settings_section(
|
1115 |
+
'seopress_setting_section_titles_tax', // ID
|
1116 |
'',
|
1117 |
+
//__("Taxonomies","wp-seopress"), // Title
|
1118 |
+
array( $this, 'print_section_info_tax' ), // Callback
|
1119 |
+
'seopress-settings-admin-titles-tax' // Page
|
1120 |
+
);
|
|
|
1121 |
|
1122 |
add_settings_field(
|
1123 |
+
'seopress_titles_tax_titles', // ID
|
1124 |
'',
|
1125 |
+
array( $this, 'seopress_titles_tax_titles_callback' ), // Callback
|
1126 |
+
'seopress-settings-admin-titles-tax', // Page
|
1127 |
+
'seopress_setting_section_titles_tax' // Section
|
|
|
1128 |
);
|
1129 |
|
1130 |
//Advanced SECTION=========================================================================
|
1252 |
|
1253 |
add_settings_field(
|
1254 |
'seopress_social_knowledge_name', // ID
|
1255 |
+
__("Your name / organization","wp-seopress"), // Title
|
1256 |
array( $this, 'seopress_social_knowledge_name_callback' ), // Callback
|
1257 |
'seopress-settings-admin-social-knowledge', // Page
|
1258 |
'seopress_setting_section_social_knowledge' // Section
|
1428 |
'seopress-settings-admin-social-twitter', // Page
|
1429 |
'seopress_setting_section_social_twitter' // Section
|
1430 |
);
|
1431 |
+
|
1432 |
+
//Google Analytics Enable SECTION==========================================================
|
1433 |
+
add_settings_section(
|
1434 |
+
'seopress_setting_section_google_analytics_enable', // ID
|
1435 |
+
'',
|
1436 |
+
//__("Google Analytics","wp-seopress"), // Title
|
1437 |
+
array( $this, 'print_section_info_google_analytics_enable' ), // Callback
|
1438 |
+
'seopress-settings-admin-google-analytics-enable' // Page
|
1439 |
+
);
|
1440 |
+
|
1441 |
+
add_settings_field(
|
1442 |
+
'seopress_google_analytics_enable', // ID
|
1443 |
+
__("Enable Google Analytics tracking","wp-seopress"), // Title
|
1444 |
+
array( $this, 'seopress_google_analytics_enable_callback' ), // Callback
|
1445 |
+
'seopress-settings-admin-google-analytics-enable', // Page
|
1446 |
+
'seopress_setting_section_google_analytics_enable' // Section
|
1447 |
+
);
|
1448 |
+
|
1449 |
+
add_settings_field(
|
1450 |
+
'seopress_google_analytics_ua', // ID
|
1451 |
+
__("Enter your tracking ID","wp-seopress"), // Title
|
1452 |
+
array( $this, 'seopress_google_analytics_ua_callback' ), // Callback
|
1453 |
+
'seopress-settings-admin-google-analytics-enable', // Page
|
1454 |
+
'seopress_setting_section_google_analytics_enable' // Section
|
1455 |
+
);
|
1456 |
+
|
1457 |
+
add_settings_field(
|
1458 |
+
'seopress_google_analytics_roles', // ID
|
1459 |
+
__("Exclude user roles from tracking","wp-seopress"), // Title
|
1460 |
+
array( $this, 'seopress_google_analytics_roles_callback' ), // Callback
|
1461 |
+
'seopress-settings-admin-google-analytics-enable', // Page
|
1462 |
+
'seopress_setting_section_google_analytics_enable' // Section
|
1463 |
+
);
|
1464 |
+
|
1465 |
+
//Google Analytics Tracking SECTION========================================================
|
1466 |
+
|
1467 |
+
add_settings_section(
|
1468 |
+
'seopress_setting_section_google_analytics_features', // ID
|
1469 |
+
'',
|
1470 |
+
//__("Google Analytics","wp-seopress"), // Title
|
1471 |
+
array( $this, 'print_section_info_google_analytics_features' ), // Callback
|
1472 |
+
'seopress-settings-admin-google-analytics-features' // Page
|
1473 |
+
);
|
1474 |
+
|
1475 |
+
add_settings_field(
|
1476 |
+
'seopress_google_analytics_remarketing', // ID
|
1477 |
+
__("Enable remarketing, demographics and interest reporting","wp-seopress"), // Title
|
1478 |
+
array( $this, 'seopress_google_analytics_remarketing_callback' ), // Callback
|
1479 |
+
'seopress-settings-admin-google-analytics-features', // Page
|
1480 |
+
'seopress_setting_section_google_analytics_features' // Section
|
1481 |
+
);
|
1482 |
+
|
1483 |
+
add_settings_field(
|
1484 |
+
'seopress_google_analytics_ip_anonymization', // ID
|
1485 |
+
__("Enable IP Anonymization","wp-seopress"), // Title
|
1486 |
+
array( $this, 'seopress_google_analytics_ip_anonymization_callback' ), // Callback
|
1487 |
+
'seopress-settings-admin-google-analytics-features', // Page
|
1488 |
+
'seopress_setting_section_google_analytics_features' // Section
|
1489 |
+
);
|
1490 |
+
|
1491 |
+
add_settings_field(
|
1492 |
+
'seopress_google_analytics_link_attribution', // ID
|
1493 |
+
__("Enhanced Link Attribution","wp-seopress"), // Title
|
1494 |
+
array( $this, 'seopress_google_analytics_link_attribution_callback' ), // Callback
|
1495 |
+
'seopress-settings-admin-google-analytics-features', // Page
|
1496 |
+
'seopress_setting_section_google_analytics_features' // Section
|
1497 |
+
);
|
1498 |
+
|
1499 |
+
add_settings_field(
|
1500 |
+
'seopress_google_analytics_cross_domain_enable', // ID
|
1501 |
+
__("Enable cross-domain tracking","wp-seopress"), // Title
|
1502 |
+
array( $this, 'seopress_google_analytics_cross_enable_callback' ), // Callback
|
1503 |
+
'seopress-settings-admin-google-analytics-features', // Page
|
1504 |
+
'seopress_setting_section_google_analytics_features' // Section
|
1505 |
+
);
|
1506 |
+
|
1507 |
+
add_settings_field(
|
1508 |
+
'seopress_google_analytics_cross_domain', // ID
|
1509 |
+
__("Cross domains","wp-seopress"), // Title
|
1510 |
+
array( $this, 'seopress_google_analytics_cross_domain_callback' ), // Callback
|
1511 |
+
'seopress-settings-admin-google-analytics-features', // Page
|
1512 |
+
'seopress_setting_section_google_analytics_features' // Section
|
1513 |
+
);
|
1514 |
+
|
1515 |
+
//Google Analytics Custom Dimensions SECTION===============================================
|
1516 |
+
|
1517 |
+
add_settings_section(
|
1518 |
+
'seopress_setting_section_google_analytics_custom_dimensions', // ID
|
1519 |
+
'',
|
1520 |
+
//__("Google Analytics","wp-seopress"), // Title
|
1521 |
+
array( $this, 'print_section_info_google_analytics_custom_dimensions' ), // Callback
|
1522 |
+
'seopress-settings-admin-google-analytics-custom-dimensions' // Page
|
1523 |
+
);
|
1524 |
+
|
1525 |
+
add_settings_field(
|
1526 |
+
'seopress_google_analytics_cd_author', // ID
|
1527 |
+
__("Track Authors","wp-seopress"), // Title
|
1528 |
+
array( $this, 'seopress_google_analytics_cd_author_callback' ), // Callback
|
1529 |
+
'seopress-settings-admin-google-analytics-custom-dimensions', // Page
|
1530 |
+
'seopress_setting_section_google_analytics_custom_dimensions' // Section
|
1531 |
+
);
|
1532 |
+
|
1533 |
+
add_settings_field(
|
1534 |
+
'seopress_google_analytics_cd_category', // ID
|
1535 |
+
__("Track Categories","wp-seopress"), // Title
|
1536 |
+
array( $this, 'seopress_google_analytics_cd_category_callback' ), // Callback
|
1537 |
+
'seopress-settings-admin-google-analytics-custom-dimensions', // Page
|
1538 |
+
'seopress_setting_section_google_analytics_custom_dimensions' // Section
|
1539 |
+
);
|
1540 |
+
|
1541 |
+
add_settings_field(
|
1542 |
+
'seopress_google_analytics_cd_tag', // ID
|
1543 |
+
__("Track Tags","wp-seopress"), // Title
|
1544 |
+
array( $this, 'seopress_google_analytics_cd_tag_callback' ), // Callback
|
1545 |
+
'seopress-settings-admin-google-analytics-custom-dimensions', // Page
|
1546 |
+
'seopress_setting_section_google_analytics_custom_dimensions' // Section
|
1547 |
+
);
|
1548 |
+
|
1549 |
+
add_settings_field(
|
1550 |
+
'seopress_google_analytics_cd_post_type', // ID
|
1551 |
+
__("Track Post Types","wp-seopress"), // Title
|
1552 |
+
array( $this, 'seopress_google_analytics_cd_post_type_callback' ), // Callback
|
1553 |
+
'seopress-settings-admin-google-analytics-custom-dimensions', // Page
|
1554 |
+
'seopress_setting_section_google_analytics_custom_dimensions' // Section
|
1555 |
+
);
|
1556 |
+
|
1557 |
+
add_settings_field(
|
1558 |
+
'seopress_google_analytics_cd_logged_in_user', // ID
|
1559 |
+
__("Track Logged In Users","wp-seopress"), // Title
|
1560 |
+
array( $this, 'seopress_google_analytics_cd_logged_in_user_callback' ), // Callback
|
1561 |
+
'seopress-settings-admin-google-analytics-custom-dimensions', // Page
|
1562 |
+
'seopress_setting_section_google_analytics_custom_dimensions' // Section
|
1563 |
+
);
|
1564 |
+
|
1565 |
//Advanced SECTION=========================================================================
|
1566 |
add_settings_section(
|
1567 |
'seopress_setting_section_advanced_advanced', // ID
|
1573 |
|
1574 |
add_settings_field(
|
1575 |
'seopress_advanced_advanced_attachments', // ID
|
1576 |
+
__("Redirect attachment pages to post parent","wp-seopress"), // Title
|
1577 |
array( $this, 'seopress_advanced_advanced_attachments_callback' ), // Callback
|
1578 |
'seopress-settings-admin-advanced-advanced', // Page
|
1579 |
'seopress_setting_section_advanced_advanced' // Section
|
1617 |
array( $this, 'seopress_advanced_advanced_yandex_callback' ), // Callback
|
1618 |
'seopress-settings-admin-advanced-advanced', // Page
|
1619 |
'seopress_setting_section_advanced_advanced' // Section
|
1620 |
+
);
|
1621 |
+
|
1622 |
+
//Appearance SECTION=======================================================================
|
1623 |
+
add_settings_section(
|
1624 |
+
'seopress_setting_section_advanced_appearance', // ID
|
1625 |
+
'',
|
1626 |
+
//__("Appearance","wp-seopress"), // Title
|
1627 |
+
array( $this, 'print_section_info_advanced_appearance' ), // Callback
|
1628 |
+
'seopress-settings-admin-advanced-appearance' // Page
|
1629 |
+
);
|
1630 |
+
|
1631 |
+
add_settings_field(
|
1632 |
+
'seopress_advanced_appearance_adminbar', // ID
|
1633 |
+
__("SEOPress in admin bar","wp-seopress"), // Title
|
1634 |
+
array( $this, 'seopress_advanced_appearance_adminbar_callback' ), // Callback
|
1635 |
+
'seopress-settings-admin-advanced-appearance', // Page
|
1636 |
+
'seopress_setting_section_advanced_appearance' // Section
|
1637 |
+
);
|
1638 |
+
|
1639 |
+
add_settings_field(
|
1640 |
+
'seopress_advanced_appearance_title_col', // ID
|
1641 |
+
__("Show Title tag column in post types","wp-seopress"), // Title
|
1642 |
+
array( $this, 'seopress_advanced_appearance_title_col_callback' ), // Callback
|
1643 |
+
'seopress-settings-admin-advanced-appearance', // Page
|
1644 |
+
'seopress_setting_section_advanced_appearance' // Section
|
1645 |
+
);
|
1646 |
+
|
1647 |
+
add_settings_field(
|
1648 |
+
'seopress_advanced_appearance_meta_desc_col', // ID
|
1649 |
+
__("Show Meta description column in post types","wp-seopress"), // Title
|
1650 |
+
array( $this, 'seopress_advanced_appearance_meta_desc_col_callback' ), // Callback
|
1651 |
+
'seopress-settings-admin-advanced-appearance', // Page
|
1652 |
+
'seopress_setting_section_advanced_appearance' // Section
|
1653 |
+
);
|
1654 |
}
|
1655 |
|
1656 |
/**
|
1661 |
public function sanitize( $input )
|
1662 |
{
|
1663 |
|
1664 |
+
$seopress_sanitize_fields = array('seopress_titles_home_site_title', 'seopress_titles_home_site_desc', 'seopress_titles_archives_author_title', 'seopress_titles_archives_author_desc', 'seopress_titles_archives_date_title', 'seopress_titles_archives_date_desc', 'seopress_titles_archives_search_title', 'seopress_titles_archives_search_desc', 'seopress_titles_archives_404_title', 'seopress_titles_archives_404_desc', 'seopress_social_knowledge_name', 'seopress_social_knowledge_img', 'seopress_social_accounts_facebook', 'seopress_social_accounts_twitter', 'seopress_social_accounts_google', 'seopress_social_accounts_pinterest', 'seopress_social_accounts_instagram', 'seopress_social_accounts_youtube', 'seopress_social_accounts_linkedin', 'seopress_social_accounts_myspace', 'seopress_social_accounts_soundcloud', 'seopress_social_accounts_tumblr', 'seopress_social_facebook_admin_id', 'seopress_social_facebook_app_id', 'seopress_google_analytics_ua' );
|
1665 |
|
1666 |
$seopress_sanitize_site_verification = array('seopress_advanced_advanced_google', 'seopress_advanced_advanced_bing', 'seopress_advanced_advanced_pinterest', 'seopress_advanced_advanced_yandex' );
|
1667 |
|
1721 |
echo __('Only the last 1000 items are listed in Sitemaps for performances issues.', 'wp-seopress');
|
1722 |
echo '<br>';
|
1723 |
echo '<br>';
|
1724 |
+
echo '<a href="'.home_url().'/sitemaps.xml" target="_blank" class="button">'.__('View your sitemap','wp-seopress').'</a>';
|
1725 |
echo ' ';
|
1726 |
echo '<a href="http://www.google.com/ping?sitemap='.home_url().'/sitemaps/" target="_blank" class="button">'.__('Ping Google manually','wp-seopress').'</a>';
|
1727 |
echo ' ';
|
1757 |
public function print_section_info_social_twitter()
|
1758 |
{
|
1759 |
print __('<p>Manage your Twitter card</p>', 'wp-seopress');
|
1760 |
+
}
|
1761 |
|
1762 |
+
public function print_section_info_google_analytics_enable()
|
1763 |
+
{
|
1764 |
+
print __('<p>Link your Google Analytics to your website</p>', 'wp-seopress');
|
1765 |
+
}
|
1766 |
+
|
1767 |
+
public function print_section_info_google_analytics_features()
|
1768 |
+
{
|
1769 |
+
print __('<p>Configure your Google Analytics tracking code</p>', 'wp-seopress');
|
1770 |
+
}
|
1771 |
+
|
1772 |
+
public function print_section_info_google_analytics_custom_dimensions()
|
1773 |
+
{
|
1774 |
+
print __('<p>Configure your Google Analytics custom dimensions</p>', 'wp-seopress');
|
1775 |
+
}
|
1776 |
+
|
1777 |
+
public function print_section_info_advanced_advanced()
|
1778 |
{
|
1779 |
print __('<p>Advanced SEO options</p>', 'wp-seopress');
|
1780 |
+
}
|
1781 |
+
|
1782 |
+
public function print_section_info_advanced_appearance()
|
1783 |
+
{
|
1784 |
+
print __('<p>Customize SEOPress to fit your needs</p>', 'wp-seopress');
|
1785 |
}
|
1786 |
|
1787 |
/**
|
1792 |
public function seopress_titles_home_site_title_callback()
|
1793 |
{
|
1794 |
printf(
|
1795 |
+
'<input type="text" id="seopress_titles_home_site_title" name="seopress_titles_option_name[seopress_titles_home_site_title]" placeholder="'.__('My awesome website','wp-seopress').'" value="%s"/>',
|
1796 |
+
esc_html( $this->options['seopress_titles_home_site_title'])
|
1797 |
+
);
|
1798 |
+
echo '<div class="wrap-tags"><span id="seopress-tag-site-title" data-tag="%%sitetitle%%" class="tag-title"><span class="dashicons dashicons-plus"></span>'.__('Site Title','wp-seopress').'</span>';
|
1799 |
+
echo '<span id="seopress-tag-site-desc" data-tag="%%tagline%%" class="tag-title"><span class="dashicons dashicons-plus"></span>'.__('Tagline','wp-seopress').'</span>';
|
1800 |
+
echo '<span id="seopress-quick-help" class="tag-title more-tags"><span class="dashicons dashicons-menu"></span>'.__('More tags','wp-seopress').'</span></div>';
|
1801 |
}
|
1802 |
|
1803 |
public function seopress_titles_home_site_desc_callback()
|
1804 |
{
|
1805 |
printf(
|
1806 |
+
'<textarea id="seopress_titles_home_site_desc" name="seopress_titles_option_name[seopress_titles_home_site_desc]" placeholder="'.__('This is a cool website about Wookiees','wp-seopress').'">%s</textarea>',
|
1807 |
esc_html( $this->options['seopress_titles_home_site_desc'])
|
1808 |
|
1809 |
);
|
1810 |
+
echo '<div class="wrap-tags"><span id="seopress-tag-meta-desc" data-tag="%%tagline%%" class="tag-title"><span class="dashicons dashicons-plus"></span>'.__('Tagline','wp-seopress').'</span>';
|
1811 |
+
echo '<span id="seopress-quick-help" class="tag-title more-tags"><span class="dashicons dashicons-menu"></span>'.__('More tags','wp-seopress').'</span></div>';
|
1812 |
}
|
1813 |
|
1814 |
//Single CPT
|
1824 |
_e('Title template','wp-seopress');
|
1825 |
echo "<br/>";
|
1826 |
|
1827 |
+
echo "<script>
|
1828 |
+
jQuery(document).ready(function($) {
|
1829 |
+
jQuery('#seopress-tag-single-title-".$seopress_cpt_key."').click(function() {
|
1830 |
+
jQuery('#seopress_titles_single_titles_".$seopress_cpt_key."').val(jQuery('#seopress_titles_single_titles_".$seopress_cpt_key."').val() + ' ' + jQuery('#seopress-tag-single-title-".$seopress_cpt_key."').attr('data-tag'));
|
1831 |
+
});
|
1832 |
+
jQuery('#seopress-tag-single-sitetitle-".$seopress_cpt_key."').click(function() {
|
1833 |
+
jQuery('#seopress_titles_single_titles_".$seopress_cpt_key."').val(jQuery('#seopress_titles_single_titles_".$seopress_cpt_key."').val() + ' ' + jQuery('#seopress-tag-single-sitetitle-".$seopress_cpt_key."').attr('data-tag'));
|
1834 |
+
});
|
1835 |
+
});
|
1836 |
+
</script>";
|
1837 |
+
|
1838 |
printf(
|
1839 |
+
'<input type="text" id="seopress_titles_single_titles_'.$seopress_cpt_key.'" name="seopress_titles_option_name[seopress_titles_single_titles]['.$seopress_cpt_key.'][title]" value="%s"/>',
|
1840 |
esc_html( $this->options['seopress_titles_single_titles'][$seopress_cpt_key]['title'])
|
1841 |
);
|
1842 |
|
1843 |
+
echo '<div class="wrap-tags"><span id="seopress-tag-single-title-'.$seopress_cpt_key.'" data-tag="%%post_title%%" class="tag-title"><span class="dashicons dashicons-plus"></span>'.__('Post Title','wp-seopress').'</span>';
|
1844 |
+
|
1845 |
+
echo '<span id="seopress-tag-single-sitetitle-'.$seopress_cpt_key.'" data-tag="%%sitetitle%%" class="tag-title"><span class="dashicons dashicons-plus"></span>'.__('Site Title','wp-seopress').'</span>';
|
1846 |
+
|
1847 |
+
echo '<span id="seopress-quick-help" class="tag-title more-tags"><span class="dashicons dashicons-menu"></span>'.__('More tags','wp-seopress').'</span></div>';
|
1848 |
+
|
1849 |
echo '</div>';
|
1850 |
|
1851 |
//Single Meta Description CPT
|
1933 |
_e('Title template','wp-seopress');
|
1934 |
echo "<br/>";
|
1935 |
|
1936 |
+
echo "<script>
|
1937 |
+
jQuery(document).ready(function($) {
|
1938 |
+
jQuery('#seopress-tag-tax-title-".$seopress_tax_key."').click(function() {
|
1939 |
+
jQuery('#seopress_titles_tax_titles_".$seopress_tax_key."').val(jQuery('#seopress_titles_tax_titles_".$seopress_tax_key."').val() + ' ' + jQuery('#seopress-tag-tax-title-".$seopress_tax_key."').attr('data-tag'));
|
1940 |
+
});
|
1941 |
+
jQuery('#seopress-tag-tax-sitetitle-".$seopress_tax_key."').click(function() {
|
1942 |
+
jQuery('#seopress_titles_tax_titles_".$seopress_tax_key."').val(jQuery('#seopress_titles_tax_titles_".$seopress_tax_key."').val() + ' ' + jQuery('#seopress-tag-tax-sitetitle-".$seopress_tax_key."').attr('data-tag'));
|
1943 |
+
});
|
1944 |
+
});
|
1945 |
+
</script>";
|
1946 |
+
|
1947 |
printf(
|
1948 |
+
'<input type="text" id="seopress_titles_tax_titles_'.$seopress_tax_key.'" name="seopress_titles_option_name[seopress_titles_tax_titles]['.$seopress_tax_key.'][title]" value="%s"/>',
|
1949 |
esc_html( $this->options['seopress_titles_tax_titles'][$seopress_tax_key]['title'])
|
1950 |
);
|
1951 |
|
1952 |
+
if ($seopress_tax_key =='category') {
|
1953 |
+
echo '<div class="wrap-tags"><span id="seopress-tag-tax-title-'.$seopress_tax_key.'" data-tag="%%_category_title%%" class="tag-title"><span class="dashicons dashicons-plus"></span>'.__('Category Title','wp-seopress').'</span>';
|
1954 |
+
} elseif ($seopress_tax_key =='post_tag') {
|
1955 |
+
echo '<div class="wrap-tags"><span id="seopress-tag-tax-title-'.$seopress_tax_key.'" data-tag="%%tag_title%%" class="tag-title"><span class="dashicons dashicons-plus"></span>'.__('Tag Title','wp-seopress').'</span>';
|
1956 |
+
} else {
|
1957 |
+
echo '<div class="wrap-tags"><span id="seopress-tag-tax-title-'.$seopress_tax_key.'" data-tag="%%term_title%%" class="tag-title"><span class="dashicons dashicons-plus"></span>'.__('Term Title','wp-seopress').'</span>';
|
1958 |
+
}
|
1959 |
+
|
1960 |
+
echo '<span id="seopress-tag-tax-sitetitle-'.$seopress_tax_key.'" data-tag="%%sitetitle%%" class="tag-title"><span class="dashicons dashicons-plus"></span>'.__('Site Title','wp-seopress').'</span>';
|
1961 |
+
|
1962 |
+
echo '<span id="seopress-quick-help" class="tag-title more-tags"><span class="dashicons dashicons-menu"></span>'.__('More tags','wp-seopress').'</span></div>';
|
1963 |
+
|
1964 |
echo '</div>';
|
1965 |
|
1966 |
//Tax Meta Description
|
1969 |
_e('Meta description template','wp-seopress');
|
1970 |
echo "<br/>";
|
1971 |
|
1972 |
+
echo "<script>
|
1973 |
+
jQuery(document).ready(function($) {
|
1974 |
+
jQuery('#seopress-tag-tax-desc-".$seopress_tax_key."').click(function() {
|
1975 |
+
jQuery('#seopress_titles_tax_desc_".$seopress_tax_key."').val(jQuery('#seopress_titles_tax_desc_".$seopress_tax_key."').val() + ' ' + jQuery('#seopress-tag-tax-desc-".$seopress_tax_key."').attr('data-tag'));
|
1976 |
+
});
|
1977 |
+
});
|
1978 |
+
</script>";
|
1979 |
+
|
1980 |
printf(
|
1981 |
+
'<textarea id="seopress_titles_tax_desc_'.$seopress_tax_key.'" name="seopress_titles_option_name[seopress_titles_tax_titles]['.$seopress_tax_key.'][description]">%s</textarea>',
|
1982 |
esc_html( $this->options['seopress_titles_tax_titles'][$seopress_tax_key]['description'])
|
1983 |
);
|
1984 |
|
1985 |
+
if ($seopress_tax_key =='category') {
|
1986 |
+
echo '<div class="wrap-tags"><span id="seopress-tag-tax-desc-'.$seopress_tax_key.'" data-tag="%%_category_description%%" class="tag-title"><span class="dashicons dashicons-plus"></span>'.__('Category Description','wp-seopress').'</span>';
|
1987 |
+
} elseif ($seopress_tax_key =='post_tag') {
|
1988 |
+
echo '<div class="wrap-tags"><span id="seopress-tag-tax-desc-'.$seopress_tax_key.'" data-tag="%%tag_description%%" class="tag-title"><span class="dashicons dashicons-plus"></span>'.__('Tag Description','wp-seopress').'</span>';
|
1989 |
+
} else {
|
1990 |
+
echo '<div class="wrap-tags"><span id="seopress-tag-tax-desc-'.$seopress_tax_key.'" data-tag="%%term_description%%" class="tag-title"><span class="dashicons dashicons-plus"></span>'.__('Term Description','wp-seopress').'</span>';
|
1991 |
+
}
|
1992 |
+
|
1993 |
+
echo '<span id="seopress-quick-help" class="tag-title more-tags"><span class="dashicons dashicons-menu"></span>'.__('More tags','wp-seopress').'</span></div>';
|
1994 |
+
|
1995 |
echo '</div>';
|
1996 |
|
1997 |
//Tax No-Index
|
2035 |
}
|
2036 |
|
2037 |
//Archives
|
2038 |
+
public function seopress_titles_archives_titles_callback()
|
2039 |
+
{
|
2040 |
+
foreach (seopress_get_post_types() as $seopress_cpt_key => $seopress_cpt_value) {
|
2041 |
+
|
2042 |
+
echo '<h2>'.$seopress_cpt_value->labels->name.'</h2>';
|
2043 |
+
|
2044 |
+
//Archive Title CPT
|
2045 |
+
echo '<div class="seopress_wrap_archive_cpt">';
|
2046 |
+
|
2047 |
+
_e('Title template','wp-seopress');
|
2048 |
+
echo "<br/>";
|
2049 |
+
|
2050 |
+
echo "<script>
|
2051 |
+
jQuery(document).ready(function($) {
|
2052 |
+
jQuery('#seopress-tag-archive-title-".$seopress_cpt_key."').click(function() {
|
2053 |
+
jQuery('#seopress_titles_archive_titles_".$seopress_cpt_key."').val(jQuery('#seopress_titles_archive_titles_".$seopress_cpt_key."').val() + ' ' + jQuery('#seopress-tag-archive-title-".$seopress_cpt_key."').attr('data-tag'));
|
2054 |
+
});
|
2055 |
+
jQuery('#seopress-tag-archive-sitetitle-".$seopress_cpt_key."').click(function() {
|
2056 |
+
jQuery('#seopress_titles_archive_titles_".$seopress_cpt_key."').val(jQuery('#seopress_titles_archive_titles_".$seopress_cpt_key."').val() + ' ' + jQuery('#seopress-tag-archive-sitetitle-".$seopress_cpt_key."').attr('data-tag'));
|
2057 |
+
});
|
2058 |
+
});
|
2059 |
+
</script>";
|
2060 |
+
|
2061 |
+
printf(
|
2062 |
+
'<input type="text" id="seopress_titles_archive_titles_'.$seopress_cpt_key.'" name="seopress_titles_option_name[seopress_titles_archive_titles]['.$seopress_cpt_key.'][title]" value="%s"/>',
|
2063 |
+
esc_html( $this->options['seopress_titles_archive_titles'][$seopress_cpt_key]['title'])
|
2064 |
+
);
|
2065 |
+
|
2066 |
+
echo '<div class="wrap-tags"><span id="seopress-tag-archive-title-'.$seopress_cpt_key.'" data-tag="%%cpt_plural%%" class="tag-title"><span class="dashicons dashicons-plus"></span>'.__('Post Type Archive Name','wp-seopress').'</span>';
|
2067 |
+
|
2068 |
+
echo '<span id="seopress-tag-archive-sitetitle-'.$seopress_cpt_key.'" data-tag="%%sitetitle%%" class="tag-title"><span class="dashicons dashicons-plus"></span>'.__('Site Title','wp-seopress').'</span>';
|
2069 |
+
|
2070 |
+
echo '<span id="seopress-quick-help" class="tag-title more-tags"><span class="dashicons dashicons-menu"></span>'.__('More tags','wp-seopress').'</span></div>';
|
2071 |
+
|
2072 |
+
echo '</div>';
|
2073 |
+
|
2074 |
+
//Archive Meta Description CPT
|
2075 |
+
echo '<div class="seopress_wrap_archive_cpt">';
|
2076 |
+
|
2077 |
+
_e('Meta description template','wp-seopress');
|
2078 |
+
echo "<br/>";
|
2079 |
+
|
2080 |
+
printf(
|
2081 |
+
'<textarea name="seopress_titles_option_name[seopress_titles_archive_titles]['.$seopress_cpt_key.'][description]">%s</textarea>',
|
2082 |
+
esc_html( $this->options['seopress_titles_archive_titles'][$seopress_cpt_key]['description'])
|
2083 |
+
);
|
2084 |
+
|
2085 |
+
echo '</div>';
|
2086 |
+
|
2087 |
+
//Archive No-Index CPT
|
2088 |
+
echo '<div class="seopress_wrap_archive_cpt">';
|
2089 |
+
|
2090 |
+
$options = get_option( 'seopress_titles_option_name' );
|
2091 |
+
|
2092 |
+
$check = isset($options['seopress_titles_archive_titles'][$seopress_cpt_key]['noindex']);
|
2093 |
+
|
2094 |
+
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"';
|
2095 |
+
if ('1' == $check) echo 'checked="yes"';
|
2096 |
+
echo ' value="1"/>';
|
2097 |
+
|
2098 |
+
echo '<label for="seopress_titles_archive_cpt_noindex['.$seopress_cpt_key.']">'. __( 'noindex', 'wp-seopress' ) .'</label>';
|
2099 |
+
|
2100 |
+
if (isset($this->options['seopress_titles_archive_titles'][$seopress_cpt_key]['noindex'])) {
|
2101 |
+
esc_attr( $this->options['seopress_titles_archive_titles'][$seopress_cpt_key]['noindex']);
|
2102 |
+
}
|
2103 |
+
|
2104 |
+
echo '</div>';
|
2105 |
+
|
2106 |
+
//Archive No-Follow CPT
|
2107 |
+
echo '<div class="seopress_wrap_archive_cpt">';
|
2108 |
+
|
2109 |
+
$options = get_option( 'seopress_titles_option_name' );
|
2110 |
+
|
2111 |
+
$check = isset($options['seopress_titles_archive_titles'][$seopress_cpt_key]['nofollow']);
|
2112 |
+
|
2113 |
+
echo '<input id="seopress_titles_archive_cpt_nofollow['.$seopress_cpt_key.']" name="seopress_titles_option_name[seopress_titles_archive_titles]['.$seopress_cpt_key.'][nofollow]" type="checkbox"';
|
2114 |
+
if ('1' == $check) echo 'checked="yes"';
|
2115 |
+
echo ' value="1"/>';
|
2116 |
+
|
2117 |
+
echo '<label for="seopress_titles_archive_cpt_nofollow['.$seopress_cpt_key.']">'. __( 'nofollow', 'wp-seopress' ) .'</label>';
|
2118 |
+
|
2119 |
+
if (isset($this->options['seopress_titles_archive_titles'][$seopress_cpt_key]['nofollow'])) {
|
2120 |
+
esc_attr( $this->options['seopress_titles_archive_titles'][$seopress_cpt_key]['nofollow']);
|
2121 |
+
}
|
2122 |
+
|
2123 |
+
echo '</div>';
|
2124 |
+
}
|
2125 |
+
}
|
2126 |
+
|
2127 |
+
|
2128 |
public function seopress_titles_archives_author_title_callback()
|
2129 |
{
|
2130 |
echo '<h2>'.__('Author archives','wp-seopress').'</h2>';
|
2131 |
|
2132 |
_e('Title template','wp-seopress');
|
2133 |
echo "<br/>";
|
2134 |
+
|
2135 |
printf(
|
2136 |
+
'<input id="seopress_titles_archive_post_author" type="text" name="seopress_titles_option_name[seopress_titles_archives_author_title]" value="%s"/>',
|
2137 |
esc_html( $this->options['seopress_titles_archives_author_title'])
|
2138 |
|
2139 |
);
|
2140 |
+
|
2141 |
+
echo '<div class="wrap-tags"><span id="seopress-tag-post-author" data-tag="%%post_author%%" class="tag-title"><span class="dashicons dashicons-plus"></span>'.__('Post author','wp-seopress').'</span>';
|
2142 |
+
echo '<span id="seopress-tag-site-title-author" data-tag="%%sitetitle%%" class="tag-title"><span class="dashicons dashicons-plus"></span>'.__('Site Title','wp-seopress').'</span>';
|
2143 |
+
echo '<span id="seopress-quick-help" class="tag-title more-tags"><span class="dashicons dashicons-menu"></span>'.__('More tags','wp-seopress').'</span></div>';
|
2144 |
|
2145 |
}
|
2146 |
|
2183 |
echo "<br/>";
|
2184 |
|
2185 |
printf(
|
2186 |
+
'<input id="seopress_titles_archives_date_title" type="text" name="seopress_titles_option_name[seopress_titles_archives_date_title]" value="%s"/>',
|
2187 |
esc_html( $this->options['seopress_titles_archives_date_title'])
|
2188 |
|
2189 |
);
|
2190 |
+
|
2191 |
+
echo '<div class="wrap-tags"><span id="seopress-tag-archive-date" data-tag="%%archive_date%%" class="tag-title"><span class="dashicons dashicons-plus"></span>'.__('Archive date','wp-seopress').'</span>';
|
2192 |
+
echo '<span id="seopress-tag-site-title-date" data-tag="%%sitetitle%%" class="tag-title"><span class="dashicons dashicons-plus"></span>'.__('Site Title','wp-seopress').'</span>';
|
2193 |
+
echo '<span id="seopress-quick-help" class="tag-title more-tags"><span class="dashicons dashicons-menu"></span>'.__('More tags','wp-seopress').'</span></div>';
|
2194 |
|
2195 |
}
|
2196 |
|
2232 |
echo "<br/>";
|
2233 |
|
2234 |
printf(
|
2235 |
+
'<input id="seopress_titles_archives_search_title" type="text" name="seopress_titles_option_name[seopress_titles_archives_search_title]" value="%s"/>',
|
2236 |
esc_html( $this->options['seopress_titles_archives_search_title'])
|
2237 |
|
2238 |
);
|
2239 |
+
|
2240 |
+
echo '<div class="wrap-tags"><span id="seopress-tag-search-keywords" data-tag="%%search_keywords%%" class="tag-title"><span class="dashicons dashicons-plus"></span>'.__('Search Keywords','wp-seopress').'</span>';
|
2241 |
+
echo '<span id="seopress-tag-site-title-search" data-tag="%%sitetitle%%" class="tag-title"><span class="dashicons dashicons-plus"></span>'.__('Site Title','wp-seopress').'</span>';
|
2242 |
+
echo '<span id="seopress-quick-help" class="tag-title more-tags"><span class="dashicons dashicons-menu"></span>'.__('More tags','wp-seopress').'</span></div>';
|
2243 |
|
2244 |
}
|
2245 |
|
2264 |
echo "<br/>";
|
2265 |
|
2266 |
printf(
|
2267 |
+
'<input id="seopress_titles_archives_404_title" type="text" name="seopress_titles_option_name[seopress_titles_archives_404_title]" value="%s"/>',
|
2268 |
esc_html( $this->options['seopress_titles_archives_404_title'])
|
2269 |
|
2270 |
);
|
2271 |
+
echo '<div class="wrap-tags"><span id="seopress-tag-site-title-404" data-tag="%%sitetitle%%" class="tag-title"><span class="dashicons dashicons-plus"></span>'.__('Site Title','wp-seopress').'</span>';
|
2272 |
+
echo '<span id="seopress-quick-help" class="tag-title more-tags"><span class="dashicons dashicons-menu"></span>'.__('More tags','wp-seopress').'</span></div>';
|
2273 |
|
2274 |
}
|
2275 |
|
2286 |
|
2287 |
}
|
2288 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
2289 |
//Advanced
|
2290 |
public function seopress_titles_noindex_callback()
|
2291 |
{
|
2299 |
|
2300 |
echo '<label for="seopress_titles_noindex">'. __( 'noindex', 'wp-seopress' ) .'</label>';
|
2301 |
|
2302 |
+
echo '<p class="description">'.__('Do not display all pages of the site in Google search results and do not display "Cached" links in search results.','wp-seopress').'</p>';
|
2303 |
+
|
2304 |
if (isset($this->options['seopress_titles_noindex'])) {
|
2305 |
esc_attr( $this->options['seopress_titles_noindex']);
|
2306 |
}
|
2318 |
|
2319 |
echo '<label for="seopress_titles_nofollow">'. __( 'nofollow', 'wp-seopress' ) .'</label>';
|
2320 |
|
2321 |
+
echo '<p class="description">'.__('Do not follow links for all pages.','wp-seopress').'</p>';
|
2322 |
+
|
2323 |
if (isset($this->options['seopress_titles_nofollow'])) {
|
2324 |
esc_attr( $this->options['seopress_titles_nofollow']);
|
2325 |
}
|
2337 |
|
2338 |
echo '<label for="seopress_titles_noodp">'. __( 'noodp', 'wp-seopress' ) .'</label>';
|
2339 |
|
2340 |
+
echo '<p class="description">'.__('Do not use Open Directory project metadata for titles or excerpts for all pages.','wp-seopress').'</p>';
|
2341 |
+
|
2342 |
if (isset($this->options['seopress_titles_noodp'])) {
|
2343 |
esc_attr( $this->options['seopress_titles_noodp']);
|
2344 |
}
|
2356 |
|
2357 |
echo '<label for="seopress_titles_noimageindex">'. __( 'noimageindex', 'wp-seopress' ) .'</label>';
|
2358 |
|
2359 |
+
echo '<p class="description">'.__('Do not index images from the entire site.','wp-seopress').'</p>';
|
2360 |
+
|
2361 |
if (isset($this->options['seopress_titles_noimageindex'])) {
|
2362 |
esc_attr( $this->options['seopress_titles_noimageindex']);
|
2363 |
}
|
2375 |
|
2376 |
echo '<label for="seopress_titles_noarchive">'. __( 'noarchive', 'wp-seopress' ) .'</label>';
|
2377 |
|
2378 |
+
echo '<p class="description">'.__('Do not display a "Cached" link in the Google search results.','wp-seopress').'</p>';
|
2379 |
+
|
2380 |
if (isset($this->options['seopress_titles_noarchive'])) {
|
2381 |
esc_attr( $this->options['seopress_titles_noarchive']);
|
2382 |
}
|
2394 |
|
2395 |
echo '<label for="seopress_titles_nosnippet">'. __( 'nosnippet', 'wp-seopress' ) .'</label>';
|
2396 |
|
2397 |
+
echo '<p class="description">'.__('Do not display a description in the Google search results for all pages.','wp-seopress').'</p>';
|
2398 |
+
|
2399 |
if (isset($this->options['seopress_titles_nosnippet'])) {
|
2400 |
esc_attr( $this->options['seopress_titles_nosnippet']);
|
2401 |
}
|
2541 |
if (isset($this->options['seopress_social_knowledge_img'])) {
|
2542 |
esc_attr( $this->options['seopress_social_knowledge_img']);
|
2543 |
}
|
2544 |
+
|
2545 |
+
function seopress_social_knowledge_img_option() {
|
2546 |
+
$seopress_social_knowledge_img_option = get_option("seopress_social_option_name");
|
2547 |
+
if ( ! empty ( $seopress_social_knowledge_img_option ) ) {
|
2548 |
+
foreach ($seopress_social_knowledge_img_option as $key => $seopress_social_knowledge_img_value)
|
2549 |
+
$options[$key] = $seopress_social_knowledge_img_value;
|
2550 |
+
if (isset($seopress_social_knowledge_img_option['seopress_social_knowledge_img'])) {
|
2551 |
+
return $seopress_social_knowledge_img_option['seopress_social_knowledge_img'];
|
2552 |
+
}
|
2553 |
+
}
|
2554 |
+
}
|
2555 |
+
echo '<br>';
|
2556 |
+
echo '<br>';
|
2557 |
+
echo '<img style="width:200px;max-height:300px;" src="'.seopress_social_knowledge_img_option().'"/>';
|
2558 |
}
|
2559 |
|
2560 |
public function seopress_social_accounts_facebook_callback()
|
2761 |
}
|
2762 |
}
|
2763 |
|
2764 |
+
public function seopress_google_analytics_enable_callback()
|
2765 |
+
{
|
2766 |
+
$options = get_option( 'seopress_google_analytics_option_name' );
|
2767 |
+
|
2768 |
+
$check = isset($options['seopress_google_analytics_enable']);
|
2769 |
+
|
2770 |
+
echo '<input id="seopress_google_analytics_enable" name="seopress_google_analytics_option_name[seopress_google_analytics_enable]" type="checkbox"';
|
2771 |
+
if ('1' == $check) echo 'checked="yes"';
|
2772 |
+
echo ' value="1"/>';
|
2773 |
+
|
2774 |
+
echo '<label for="seopress_google_analytics_enable">'. __( 'Enable Google Analytics tracking', 'wp-seopress' ) .'</label>';
|
2775 |
+
|
2776 |
+
if (isset($this->options['seopress_google_analytics_enable'])) {
|
2777 |
+
esc_attr( $this->options['seopress_google_analytics_enable']);
|
2778 |
+
}
|
2779 |
+
}
|
2780 |
+
|
2781 |
+
public function seopress_google_analytics_ua_callback()
|
2782 |
+
{
|
2783 |
+
printf(
|
2784 |
+
'<input type="text" name="seopress_google_analytics_option_name[seopress_google_analytics_ua]" placeholder="'.__('Enter your Tracking ID (UA-XXXX-XX)','wp-seopress').'" value="%s"/>',
|
2785 |
+
esc_html( $this->options['seopress_google_analytics_ua'])
|
2786 |
+
|
2787 |
+
);
|
2788 |
+
|
2789 |
+
}
|
2790 |
+
|
2791 |
+
public function seopress_google_analytics_roles_callback()
|
2792 |
+
{
|
2793 |
+
$options = get_option( 'seopress_google_analytics_option_name' );
|
2794 |
+
|
2795 |
+
global $wp_roles;
|
2796 |
+
|
2797 |
+
if ( ! isset( $wp_roles ) )
|
2798 |
+
$wp_roles = new WP_Roles();
|
2799 |
+
|
2800 |
+
foreach ($wp_roles->get_names() as $key => $value) {
|
2801 |
+
|
2802 |
+
$check = isset($options['seopress_google_analytics_roles'][$key]);
|
2803 |
+
|
2804 |
+
echo '<input id="seopress_google_analytics_roles_'.$key.'" name="seopress_google_analytics_option_name[seopress_google_analytics_roles]['.$key.']" type="checkbox"';
|
2805 |
+
if ('1' == $check) echo 'checked="yes"';
|
2806 |
+
echo ' value="1"/>';
|
2807 |
+
|
2808 |
+
echo '<label for="seopress_google_analytics_roles_'.$key.'">'. $value .'</label><br/>';
|
2809 |
+
|
2810 |
+
if (isset($this->options['seopress_google_analytics_roles'][$key])) {
|
2811 |
+
esc_attr( $this->options['seopress_google_analytics_roles'][$key]);
|
2812 |
+
}
|
2813 |
+
}
|
2814 |
+
}
|
2815 |
+
|
2816 |
+
public function seopress_google_analytics_remarketing_callback()
|
2817 |
+
{
|
2818 |
+
$options = get_option( 'seopress_google_analytics_option_name' );
|
2819 |
+
|
2820 |
+
$check = isset($options['seopress_google_analytics_remarketing']);
|
2821 |
+
|
2822 |
+
echo '<input id="seopress_google_analytics_remarketing" name="seopress_google_analytics_option_name[seopress_google_analytics_remarketing]" type="checkbox"';
|
2823 |
+
if ('1' == $check) echo 'checked="yes"';
|
2824 |
+
echo ' value="1"/>';
|
2825 |
+
|
2826 |
+
echo '<label for="seopress_google_analytics_remarketing">'. __( 'Enable remarketing, demographics and interest reporting', 'wp-seopress' ) .'</label>';
|
2827 |
+
|
2828 |
+
if (isset($this->options['seopress_google_analytics_remarketing'])) {
|
2829 |
+
esc_attr( $this->options['seopress_google_analytics_remarketing']);
|
2830 |
+
}
|
2831 |
+
}
|
2832 |
+
|
2833 |
+
public function seopress_google_analytics_ip_anonymization_callback()
|
2834 |
+
{
|
2835 |
+
$options = get_option( 'seopress_google_analytics_option_name' );
|
2836 |
+
|
2837 |
+
$check = isset($options['seopress_google_analytics_ip_anonymization']);
|
2838 |
+
|
2839 |
+
echo '<input id="seopress_google_analytics_ip_anonymization" name="seopress_google_analytics_option_name[seopress_google_analytics_ip_anonymization]" type="checkbox"';
|
2840 |
+
if ('1' == $check) echo 'checked="yes"';
|
2841 |
+
echo ' value="1"/>';
|
2842 |
+
|
2843 |
+
echo '<label for="seopress_google_analytics_ip_anonymization">'. __( 'Enable IP Anonymization', 'wp-seopress' ) .'</label>';
|
2844 |
+
|
2845 |
+
if (isset($this->options['seopress_google_analytics_ip_anonymization'])) {
|
2846 |
+
esc_attr( $this->options['seopress_google_analytics_ip_anonymization']);
|
2847 |
+
}
|
2848 |
+
}
|
2849 |
+
|
2850 |
+
public function seopress_google_analytics_link_attribution_callback()
|
2851 |
+
{
|
2852 |
+
$options = get_option( 'seopress_google_analytics_option_name' );
|
2853 |
+
|
2854 |
+
$check = isset($options['seopress_google_analytics_link_attribution']);
|
2855 |
+
|
2856 |
+
echo '<input id="seopress_google_analytics_link_attribution" name="seopress_google_analytics_option_name[seopress_google_analytics_link_attribution]" type="checkbox"';
|
2857 |
+
if ('1' == $check) echo 'checked="yes"';
|
2858 |
+
echo ' value="1"/>';
|
2859 |
+
|
2860 |
+
echo '<label for="seopress_google_analytics_link_attribution">'. __( 'Enhanced Link Attribution', 'wp-seopress' ) .'</label>';
|
2861 |
+
|
2862 |
+
if (isset($this->options['seopress_google_analytics_link_attribution'])) {
|
2863 |
+
esc_attr( $this->options['seopress_google_analytics_link_attribution']);
|
2864 |
+
}
|
2865 |
+
}
|
2866 |
+
|
2867 |
+
public function seopress_google_analytics_cross_enable_callback()
|
2868 |
+
{
|
2869 |
+
$options = get_option( 'seopress_google_analytics_option_name' );
|
2870 |
+
|
2871 |
+
$check = isset($options['seopress_google_analytics_cross_enable']);
|
2872 |
+
|
2873 |
+
echo '<input id="seopress_google_analytics_cross_enable" name="seopress_google_analytics_option_name[seopress_google_analytics_cross_enable]" type="checkbox"';
|
2874 |
+
if ('1' == $check) echo 'checked="yes"';
|
2875 |
+
echo ' value="1"/>';
|
2876 |
+
|
2877 |
+
echo '<label for="seopress_google_analytics_cross_enable">'. __( 'Enable cross-domain tracking', 'wp-seopress' ) .'</label>';
|
2878 |
+
|
2879 |
+
if (isset($this->options['seopress_google_analytics_cross_enable'])) {
|
2880 |
+
esc_attr( $this->options['seopress_google_analytics_cross_enable']);
|
2881 |
+
}
|
2882 |
+
}
|
2883 |
+
|
2884 |
+
public function seopress_google_analytics_cross_domain_callback()
|
2885 |
+
{
|
2886 |
+
printf(
|
2887 |
+
'<input type="text" name="seopress_google_analytics_option_name[seopress_google_analytics_cross_domain]" placeholder="'.__('Enter yours domains','wp-seopress').'" value="%s"/>',
|
2888 |
+
esc_html( $this->options['seopress_google_analytics_cross_domain'])
|
2889 |
+
|
2890 |
+
);
|
2891 |
+
|
2892 |
+
}
|
2893 |
+
|
2894 |
+
public function seopress_google_analytics_cd_author_callback()
|
2895 |
+
{
|
2896 |
+
$options = get_option( 'seopress_google_analytics_option_name' );
|
2897 |
+
|
2898 |
+
$selected = $options['seopress_google_analytics_cd_author'];
|
2899 |
+
|
2900 |
+
echo '<select id="seopress_google_analytics_cd_author" name="seopress_google_analytics_option_name[seopress_google_analytics_cd_author]">';
|
2901 |
+
echo ' <option ';
|
2902 |
+
if ('none' == $selected) echo 'selected="selected"';
|
2903 |
+
echo ' value="none">'. __("None","wp-seopress") .'</option>';
|
2904 |
+
echo ' <option ';
|
2905 |
+
if ('dimension1' == $selected) echo 'selected="selected"';
|
2906 |
+
echo ' value="dimension1">'. __("Custom Dimension #1","wp-seopress") .'</option>';
|
2907 |
+
echo '<option ';
|
2908 |
+
if ('dimension2' == $selected) echo 'selected="selected"';
|
2909 |
+
echo ' value="dimension2">'. __("Custom Dimension #2","wp-seopress") .'</option>';
|
2910 |
+
echo '<option ';
|
2911 |
+
if ('dimension3' == $selected) echo 'selected="selected"';
|
2912 |
+
echo ' value="dimension3">'. __("Custom Dimension #3","wp-seopress") .'</option>';
|
2913 |
+
echo '<option ';
|
2914 |
+
if ('dimension4' == $selected) echo 'selected="selected"';
|
2915 |
+
echo ' value="dimension4">'. __("Custom Dimension #4","wp-seopress") .'</option>';
|
2916 |
+
echo '<option ';
|
2917 |
+
if ('dimension5' == $selected) echo 'selected="selected"';
|
2918 |
+
echo ' value="dimension5">'. __("Custom Dimension #5","wp-seopress") .'</option>';
|
2919 |
+
echo '<option ';
|
2920 |
+
if ('dimension6' == $selected) echo 'selected="selected"';
|
2921 |
+
echo ' value="dimension6">'. __("Custom Dimension #6","wp-seopress") .'</option>';
|
2922 |
+
echo '<option ';
|
2923 |
+
if ('dimension7' == $selected) echo 'selected="selected"';
|
2924 |
+
echo ' value="dimension7">'. __("Custom Dimension #7","wp-seopress") .'</option>';
|
2925 |
+
echo '<option ';
|
2926 |
+
if ('dimension8' == $selected) echo 'selected="selected"';
|
2927 |
+
echo ' value="dimension8">'. __("Custom Dimension #8","wp-seopress") .'</option>';
|
2928 |
+
echo '<option ';
|
2929 |
+
if ('dimension9' == $selected) echo 'selected="selected"';
|
2930 |
+
echo ' value="dimension9">'. __("Custom Dimension #9","wp-seopress") .'</option>';
|
2931 |
+
echo '<option ';
|
2932 |
+
if ('dimension10' == $selected) echo 'selected="selected"';
|
2933 |
+
echo ' value="dimension10">'. __("Custom Dimension #10","wp-seopress") .'</option>';
|
2934 |
+
echo '<option ';
|
2935 |
+
if ('dimension11' == $selected) echo 'selected="selected"';
|
2936 |
+
echo ' value="dimension11">'. __("Custom Dimension #11","wp-seopress") .'</option>';
|
2937 |
+
echo '<option ';
|
2938 |
+
if ('dimension12' == $selected) echo 'selected="selected"';
|
2939 |
+
echo ' value="dimension12">'. __("Custom Dimension #12","wp-seopress") .'</option>';
|
2940 |
+
echo '<option ';
|
2941 |
+
if ('dimension13' == $selected) echo 'selected="selected"';
|
2942 |
+
echo ' value="dimension13">'. __("Custom Dimension #13","wp-seopress") .'</option>';
|
2943 |
+
echo '<option ';
|
2944 |
+
if ('dimension14' == $selected) echo 'selected="selected"';
|
2945 |
+
echo ' value="dimension14">'. __("Custom Dimension #14","wp-seopress") .'</option>';
|
2946 |
+
echo '<option ';
|
2947 |
+
if ('dimension15' == $selected) echo 'selected="selected"';
|
2948 |
+
echo ' value="dimension15">'. __("Custom Dimension #15","wp-seopress") .'</option>';
|
2949 |
+
echo '<option ';
|
2950 |
+
if ('dimension16' == $selected) echo 'selected="selected"';
|
2951 |
+
echo ' value="dimension16">'. __("Custom Dimension #16","wp-seopress") .'</option>';
|
2952 |
+
echo '<option ';
|
2953 |
+
if ('dimension17' == $selected) echo 'selected="selected"';
|
2954 |
+
echo ' value="dimension17">'. __("Custom Dimension #17","wp-seopress") .'</option>';
|
2955 |
+
echo '<option ';
|
2956 |
+
if ('dimension18' == $selected) echo 'selected="selected"';
|
2957 |
+
echo ' value="dimension18">'. __("Custom Dimension #18","wp-seopress") .'</option>';
|
2958 |
+
echo '<option ';
|
2959 |
+
if ('dimension19' == $selected) echo 'selected="selected"';
|
2960 |
+
echo ' value="dimension19">'. __("Custom Dimension #19","wp-seopress") .'</option>';
|
2961 |
+
echo '<option ';
|
2962 |
+
if ('dimension20' == $selected) echo 'selected="selected"';
|
2963 |
+
echo ' value="dimension20">'. __("Custom Dimension #20","wp-seopress") .'</option>';
|
2964 |
+
echo '</select>';
|
2965 |
+
|
2966 |
+
if (isset($this->options['seopress_google_analytics_cd_author'])) {
|
2967 |
+
esc_attr( $this->options['seopress_google_analytics_cd_author']);
|
2968 |
+
}
|
2969 |
+
}
|
2970 |
+
|
2971 |
+
public function seopress_google_analytics_cd_category_callback()
|
2972 |
+
{
|
2973 |
+
$options = get_option( 'seopress_google_analytics_option_name' );
|
2974 |
+
|
2975 |
+
$selected = $options['seopress_google_analytics_cd_category'];
|
2976 |
+
|
2977 |
+
echo '<select id="seopress_google_analytics_cd_category" name="seopress_google_analytics_option_name[seopress_google_analytics_cd_category]">';
|
2978 |
+
echo ' <option ';
|
2979 |
+
if ('none' == $selected) echo 'selected="selected"';
|
2980 |
+
echo ' value="none">'. __("None","wp-seopress") .'</option>';
|
2981 |
+
echo ' <option ';
|
2982 |
+
if ('dimension1' == $selected) echo 'selected="selected"';
|
2983 |
+
echo ' value="dimension1">'. __("Custom Dimension #1","wp-seopress") .'</option>';
|
2984 |
+
echo '<option ';
|
2985 |
+
if ('dimension2' == $selected) echo 'selected="selected"';
|
2986 |
+
echo ' value="dimension2">'. __("Custom Dimension #2","wp-seopress") .'</option>';
|
2987 |
+
echo '<option ';
|
2988 |
+
if ('dimension3' == $selected) echo 'selected="selected"';
|
2989 |
+
echo ' value="dimension3">'. __("Custom Dimension #3","wp-seopress") .'</option>';
|
2990 |
+
echo '<option ';
|
2991 |
+
if ('dimension4' == $selected) echo 'selected="selected"';
|
2992 |
+
echo ' value="dimension4">'. __("Custom Dimension #4","wp-seopress") .'</option>';
|
2993 |
+
echo '<option ';
|
2994 |
+
if ('dimension5' == $selected) echo 'selected="selected"';
|
2995 |
+
echo ' value="dimension5">'. __("Custom Dimension #5","wp-seopress") .'</option>';
|
2996 |
+
echo '<option ';
|
2997 |
+
if ('dimension6' == $selected) echo 'selected="selected"';
|
2998 |
+
echo ' value="dimension6">'. __("Custom Dimension #6","wp-seopress") .'</option>';
|
2999 |
+
echo '<option ';
|
3000 |
+
if ('dimension7' == $selected) echo 'selected="selected"';
|
3001 |
+
echo ' value="dimension7">'. __("Custom Dimension #7","wp-seopress") .'</option>';
|
3002 |
+
echo '<option ';
|
3003 |
+
if ('dimension8' == $selected) echo 'selected="selected"';
|
3004 |
+
echo ' value="dimension8">'. __("Custom Dimension #8","wp-seopress") .'</option>';
|
3005 |
+
echo '<option ';
|
3006 |
+
if ('dimension9' == $selected) echo 'selected="selected"';
|
3007 |
+
echo ' value="dimension9">'. __("Custom Dimension #9","wp-seopress") .'</option>';
|
3008 |
+
echo '<option ';
|
3009 |
+
if ('dimension10' == $selected) echo 'selected="selected"';
|
3010 |
+
echo ' value="dimension10">'. __("Custom Dimension #10","wp-seopress") .'</option>';
|
3011 |
+
echo '<option ';
|
3012 |
+
if ('dimension11' == $selected) echo 'selected="selected"';
|
3013 |
+
echo ' value="dimension11">'. __("Custom Dimension #11","wp-seopress") .'</option>';
|
3014 |
+
echo '<option ';
|
3015 |
+
if ('dimension12' == $selected) echo 'selected="selected"';
|
3016 |
+
echo ' value="dimension12">'. __("Custom Dimension #12","wp-seopress") .'</option>';
|
3017 |
+
echo '<option ';
|
3018 |
+
if ('dimension13' == $selected) echo 'selected="selected"';
|
3019 |
+
echo ' value="dimension13">'. __("Custom Dimension #13","wp-seopress") .'</option>';
|
3020 |
+
echo '<option ';
|
3021 |
+
if ('dimension14' == $selected) echo 'selected="selected"';
|
3022 |
+
echo ' value="dimension14">'. __("Custom Dimension #14","wp-seopress") .'</option>';
|
3023 |
+
echo '<option ';
|
3024 |
+
if ('dimension15' == $selected) echo 'selected="selected"';
|
3025 |
+
echo ' value="dimension15">'. __("Custom Dimension #15","wp-seopress") .'</option>';
|
3026 |
+
echo '<option ';
|
3027 |
+
if ('dimension16' == $selected) echo 'selected="selected"';
|
3028 |
+
echo ' value="dimension16">'. __("Custom Dimension #16","wp-seopress") .'</option>';
|
3029 |
+
echo '<option ';
|
3030 |
+
if ('dimension17' == $selected) echo 'selected="selected"';
|
3031 |
+
echo ' value="dimension17">'. __("Custom Dimension #17","wp-seopress") .'</option>';
|
3032 |
+
echo '<option ';
|
3033 |
+
if ('dimension18' == $selected) echo 'selected="selected"';
|
3034 |
+
echo ' value="dimension18">'. __("Custom Dimension #18","wp-seopress") .'</option>';
|
3035 |
+
echo '<option ';
|
3036 |
+
if ('dimension19' == $selected) echo 'selected="selected"';
|
3037 |
+
echo ' value="dimension19">'. __("Custom Dimension #19","wp-seopress") .'</option>';
|
3038 |
+
echo '<option ';
|
3039 |
+
if ('dimension20' == $selected) echo 'selected="selected"';
|
3040 |
+
echo ' value="dimension20">'. __("Custom Dimension #20","wp-seopress") .'</option>';
|
3041 |
+
echo '</select>';
|
3042 |
+
|
3043 |
+
if (isset($this->options['seopress_google_analytics_cd_category'])) {
|
3044 |
+
esc_attr( $this->options['seopress_google_analytics_cd_category']);
|
3045 |
+
}
|
3046 |
+
}
|
3047 |
+
|
3048 |
+
public function seopress_google_analytics_cd_tag_callback()
|
3049 |
+
{
|
3050 |
+
$options = get_option( 'seopress_google_analytics_option_name' );
|
3051 |
+
|
3052 |
+
$selected = $options['seopress_google_analytics_cd_tag'];
|
3053 |
+
|
3054 |
+
echo '<select id="seopress_google_analytics_cd_tag" name="seopress_google_analytics_option_name[seopress_google_analytics_cd_tag]">';
|
3055 |
+
echo ' <option ';
|
3056 |
+
if ('none' == $selected) echo 'selected="selected"';
|
3057 |
+
echo ' value="none">'. __("None","wp-seopress") .'</option>';
|
3058 |
+
echo ' <option ';
|
3059 |
+
if ('dimension1' == $selected) echo 'selected="selected"';
|
3060 |
+
echo ' value="dimension1">'. __("Custom Dimension #1","wp-seopress") .'</option>';
|
3061 |
+
echo '<option ';
|
3062 |
+
if ('dimension2' == $selected) echo 'selected="selected"';
|
3063 |
+
echo ' value="dimension2">'. __("Custom Dimension #2","wp-seopress") .'</option>';
|
3064 |
+
echo '<option ';
|
3065 |
+
if ('dimension3' == $selected) echo 'selected="selected"';
|
3066 |
+
echo ' value="dimension3">'. __("Custom Dimension #3","wp-seopress") .'</option>';
|
3067 |
+
echo '<option ';
|
3068 |
+
if ('dimension4' == $selected) echo 'selected="selected"';
|
3069 |
+
echo ' value="dimension4">'. __("Custom Dimension #4","wp-seopress") .'</option>';
|
3070 |
+
echo '<option ';
|
3071 |
+
if ('dimension5' == $selected) echo 'selected="selected"';
|
3072 |
+
echo ' value="dimension5">'. __("Custom Dimension #5","wp-seopress") .'</option>';
|
3073 |
+
echo '<option ';
|
3074 |
+
if ('dimension6' == $selected) echo 'selected="selected"';
|
3075 |
+
echo ' value="dimension6">'. __("Custom Dimension #6","wp-seopress") .'</option>';
|
3076 |
+
echo '<option ';
|
3077 |
+
if ('dimension7' == $selected) echo 'selected="selected"';
|
3078 |
+
echo ' value="dimension7">'. __("Custom Dimension #7","wp-seopress") .'</option>';
|
3079 |
+
echo '<option ';
|
3080 |
+
if ('dimension8' == $selected) echo 'selected="selected"';
|
3081 |
+
echo ' value="dimension8">'. __("Custom Dimension #8","wp-seopress") .'</option>';
|
3082 |
+
echo '<option ';
|
3083 |
+
if ('dimension9' == $selected) echo 'selected="selected"';
|
3084 |
+
echo ' value="dimension9">'. __("Custom Dimension #9","wp-seopress") .'</option>';
|
3085 |
+
echo '<option ';
|
3086 |
+
if ('dimension10' == $selected) echo 'selected="selected"';
|
3087 |
+
echo ' value="dimension10">'. __("Custom Dimension #10","wp-seopress") .'</option>';
|
3088 |
+
echo '<option ';
|
3089 |
+
if ('dimension11' == $selected) echo 'selected="selected"';
|
3090 |
+
echo ' value="dimension11">'. __("Custom Dimension #11","wp-seopress") .'</option>';
|
3091 |
+
echo '<option ';
|
3092 |
+
if ('dimension12' == $selected) echo 'selected="selected"';
|
3093 |
+
echo ' value="dimension12">'. __("Custom Dimension #12","wp-seopress") .'</option>';
|
3094 |
+
echo '<option ';
|
3095 |
+
if ('dimension13' == $selected) echo 'selected="selected"';
|
3096 |
+
echo ' value="dimension13">'. __("Custom Dimension #13","wp-seopress") .'</option>';
|
3097 |
+
echo '<option ';
|
3098 |
+
if ('dimension14' == $selected) echo 'selected="selected"';
|
3099 |
+
echo ' value="dimension14">'. __("Custom Dimension #14","wp-seopress") .'</option>';
|
3100 |
+
echo '<option ';
|
3101 |
+
if ('dimension15' == $selected) echo 'selected="selected"';
|
3102 |
+
echo ' value="dimension15">'. __("Custom Dimension #15","wp-seopress") .'</option>';
|
3103 |
+
echo '<option ';
|
3104 |
+
if ('dimension16' == $selected) echo 'selected="selected"';
|
3105 |
+
echo ' value="dimension16">'. __("Custom Dimension #16","wp-seopress") .'</option>';
|
3106 |
+
echo '<option ';
|
3107 |
+
if ('dimension17' == $selected) echo 'selected="selected"';
|
3108 |
+
echo ' value="dimension17">'. __("Custom Dimension #17","wp-seopress") .'</option>';
|
3109 |
+
echo '<option ';
|
3110 |
+
if ('dimension18' == $selected) echo 'selected="selected"';
|
3111 |
+
echo ' value="dimension18">'. __("Custom Dimension #18","wp-seopress") .'</option>';
|
3112 |
+
echo '<option ';
|
3113 |
+
if ('dimension19' == $selected) echo 'selected="selected"';
|
3114 |
+
echo ' value="dimension19">'. __("Custom Dimension #19","wp-seopress") .'</option>';
|
3115 |
+
echo '<option ';
|
3116 |
+
if ('dimension20' == $selected) echo 'selected="selected"';
|
3117 |
+
echo ' value="dimension20">'. __("Custom Dimension #20","wp-seopress") .'</option>';
|
3118 |
+
echo '</select>';
|
3119 |
+
|
3120 |
+
if (isset($this->options['seopress_google_analytics_cd_tag'])) {
|
3121 |
+
esc_attr( $this->options['seopress_google_analytics_cd_tag']);
|
3122 |
+
}
|
3123 |
+
}
|
3124 |
+
|
3125 |
+
public function seopress_google_analytics_cd_post_type_callback()
|
3126 |
+
{
|
3127 |
+
$options = get_option( 'seopress_google_analytics_option_name' );
|
3128 |
+
|
3129 |
+
$selected = $options['seopress_google_analytics_cd_post_type'];
|
3130 |
+
|
3131 |
+
echo '<select id="seopress_google_analytics_cd_post_type" name="seopress_google_analytics_option_name[seopress_google_analytics_cd_post_type]">';
|
3132 |
+
echo ' <option ';
|
3133 |
+
if ('none' == $selected) echo 'selected="selected"';
|
3134 |
+
echo ' value="none">'. __("None","wp-seopress") .'</option>';
|
3135 |
+
echo ' <option ';
|
3136 |
+
if ('dimension1' == $selected) echo 'selected="selected"';
|
3137 |
+
echo ' value="dimension1">'. __("Custom Dimension #1","wp-seopress") .'</option>';
|
3138 |
+
echo '<option ';
|
3139 |
+
if ('dimension2' == $selected) echo 'selected="selected"';
|
3140 |
+
echo ' value="dimension2">'. __("Custom Dimension #2","wp-seopress") .'</option>';
|
3141 |
+
echo '<option ';
|
3142 |
+
if ('dimension3' == $selected) echo 'selected="selected"';
|
3143 |
+
echo ' value="dimension3">'. __("Custom Dimension #3","wp-seopress") .'</option>';
|
3144 |
+
echo '<option ';
|
3145 |
+
if ('dimension4' == $selected) echo 'selected="selected"';
|
3146 |
+
echo ' value="dimension4">'. __("Custom Dimension #4","wp-seopress") .'</option>';
|
3147 |
+
echo '<option ';
|
3148 |
+
if ('dimension5' == $selected) echo 'selected="selected"';
|
3149 |
+
echo ' value="dimension5">'. __("Custom Dimension #5","wp-seopress") .'</option>';
|
3150 |
+
echo '<option ';
|
3151 |
+
if ('dimension6' == $selected) echo 'selected="selected"';
|
3152 |
+
echo ' value="dimension6">'. __("Custom Dimension #6","wp-seopress") .'</option>';
|
3153 |
+
echo '<option ';
|
3154 |
+
if ('dimension7' == $selected) echo 'selected="selected"';
|
3155 |
+
echo ' value="dimension7">'. __("Custom Dimension #7","wp-seopress") .'</option>';
|
3156 |
+
echo '<option ';
|
3157 |
+
if ('dimension8' == $selected) echo 'selected="selected"';
|
3158 |
+
echo ' value="dimension8">'. __("Custom Dimension #8","wp-seopress") .'</option>';
|
3159 |
+
echo '<option ';
|
3160 |
+
if ('dimension9' == $selected) echo 'selected="selected"';
|
3161 |
+
echo ' value="dimension9">'. __("Custom Dimension #9","wp-seopress") .'</option>';
|
3162 |
+
echo '<option ';
|
3163 |
+
if ('dimension10' == $selected) echo 'selected="selected"';
|
3164 |
+
echo ' value="dimension10">'. __("Custom Dimension #10","wp-seopress") .'</option>';
|
3165 |
+
echo '<option ';
|
3166 |
+
if ('dimension11' == $selected) echo 'selected="selected"';
|
3167 |
+
echo ' value="dimension11">'. __("Custom Dimension #11","wp-seopress") .'</option>';
|
3168 |
+
echo '<option ';
|
3169 |
+
if ('dimension12' == $selected) echo 'selected="selected"';
|
3170 |
+
echo ' value="dimension12">'. __("Custom Dimension #12","wp-seopress") .'</option>';
|
3171 |
+
echo '<option ';
|
3172 |
+
if ('dimension13' == $selected) echo 'selected="selected"';
|
3173 |
+
echo ' value="dimension13">'. __("Custom Dimension #13","wp-seopress") .'</option>';
|
3174 |
+
echo '<option ';
|
3175 |
+
if ('dimension14' == $selected) echo 'selected="selected"';
|
3176 |
+
echo ' value="dimension14">'. __("Custom Dimension #14","wp-seopress") .'</option>';
|
3177 |
+
echo '<option ';
|
3178 |
+
if ('dimension15' == $selected) echo 'selected="selected"';
|
3179 |
+
echo ' value="dimension15">'. __("Custom Dimension #15","wp-seopress") .'</option>';
|
3180 |
+
echo '<option ';
|
3181 |
+
if ('dimension16' == $selected) echo 'selected="selected"';
|
3182 |
+
echo ' value="dimension16">'. __("Custom Dimension #16","wp-seopress") .'</option>';
|
3183 |
+
echo '<option ';
|
3184 |
+
if ('dimension17' == $selected) echo 'selected="selected"';
|
3185 |
+
echo ' value="dimension17">'. __("Custom Dimension #17","wp-seopress") .'</option>';
|
3186 |
+
echo '<option ';
|
3187 |
+
if ('dimension18' == $selected) echo 'selected="selected"';
|
3188 |
+
echo ' value="dimension18">'. __("Custom Dimension #18","wp-seopress") .'</option>';
|
3189 |
+
echo '<option ';
|
3190 |
+
if ('dimension19' == $selected) echo 'selected="selected"';
|
3191 |
+
echo ' value="dimension19">'. __("Custom Dimension #19","wp-seopress") .'</option>';
|
3192 |
+
echo '<option ';
|
3193 |
+
if ('dimension20' == $selected) echo 'selected="selected"';
|
3194 |
+
echo ' value="dimension20">'. __("Custom Dimension #20","wp-seopress") .'</option>';
|
3195 |
+
echo '</select>';
|
3196 |
+
|
3197 |
+
if (isset($this->options['seopress_google_analytics_cd_post_type'])) {
|
3198 |
+
esc_attr( $this->options['seopress_google_analytics_cd_post_type']);
|
3199 |
+
}
|
3200 |
+
}
|
3201 |
+
|
3202 |
+
public function seopress_google_analytics_cd_logged_in_user_callback()
|
3203 |
+
{
|
3204 |
+
$options = get_option( 'seopress_google_analytics_option_name' );
|
3205 |
+
|
3206 |
+
$selected = $options['seopress_google_analytics_cd_logged_in_user'];
|
3207 |
+
|
3208 |
+
echo '<select id="seopress_google_analytics_cd_logged_in_user" name="seopress_google_analytics_option_name[seopress_google_analytics_cd_logged_in_user]">';
|
3209 |
+
echo ' <option ';
|
3210 |
+
if ('none' == $selected) echo 'selected="selected"';
|
3211 |
+
echo ' value="none">'. __("None","wp-seopress") .'</option>';
|
3212 |
+
echo ' <option ';
|
3213 |
+
if ('dimension1' == $selected) echo 'selected="selected"';
|
3214 |
+
echo ' value="dimension1">'. __("Custom Dimension #1","wp-seopress") .'</option>';
|
3215 |
+
echo '<option ';
|
3216 |
+
if ('dimension2' == $selected) echo 'selected="selected"';
|
3217 |
+
echo ' value="dimension2">'. __("Custom Dimension #2","wp-seopress") .'</option>';
|
3218 |
+
echo '<option ';
|
3219 |
+
if ('dimension3' == $selected) echo 'selected="selected"';
|
3220 |
+
echo ' value="dimension3">'. __("Custom Dimension #3","wp-seopress") .'</option>';
|
3221 |
+
echo '<option ';
|
3222 |
+
if ('dimension4' == $selected) echo 'selected="selected"';
|
3223 |
+
echo ' value="dimension4">'. __("Custom Dimension #4","wp-seopress") .'</option>';
|
3224 |
+
echo '<option ';
|
3225 |
+
if ('dimension5' == $selected) echo 'selected="selected"';
|
3226 |
+
echo ' value="dimension5">'. __("Custom Dimension #5","wp-seopress") .'</option>';
|
3227 |
+
echo '<option ';
|
3228 |
+
if ('dimension6' == $selected) echo 'selected="selected"';
|
3229 |
+
echo ' value="dimension6">'. __("Custom Dimension #6","wp-seopress") .'</option>';
|
3230 |
+
echo '<option ';
|
3231 |
+
if ('dimension7' == $selected) echo 'selected="selected"';
|
3232 |
+
echo ' value="dimension7">'. __("Custom Dimension #7","wp-seopress") .'</option>';
|
3233 |
+
echo '<option ';
|
3234 |
+
if ('dimension8' == $selected) echo 'selected="selected"';
|
3235 |
+
echo ' value="dimension8">'. __("Custom Dimension #8","wp-seopress") .'</option>';
|
3236 |
+
echo '<option ';
|
3237 |
+
if ('dimension9' == $selected) echo 'selected="selected"';
|
3238 |
+
echo ' value="dimension9">'. __("Custom Dimension #9","wp-seopress") .'</option>';
|
3239 |
+
echo '<option ';
|
3240 |
+
if ('dimension10' == $selected) echo 'selected="selected"';
|
3241 |
+
echo ' value="dimension10">'. __("Custom Dimension #10","wp-seopress") .'</option>';
|
3242 |
+
echo '<option ';
|
3243 |
+
if ('dimension11' == $selected) echo 'selected="selected"';
|
3244 |
+
echo ' value="dimension11">'. __("Custom Dimension #11","wp-seopress") .'</option>';
|
3245 |
+
echo '<option ';
|
3246 |
+
if ('dimension12' == $selected) echo 'selected="selected"';
|
3247 |
+
echo ' value="dimension12">'. __("Custom Dimension #12","wp-seopress") .'</option>';
|
3248 |
+
echo '<option ';
|
3249 |
+
if ('dimension13' == $selected) echo 'selected="selected"';
|
3250 |
+
echo ' value="dimension13">'. __("Custom Dimension #13","wp-seopress") .'</option>';
|
3251 |
+
echo '<option ';
|
3252 |
+
if ('dimension14' == $selected) echo 'selected="selected"';
|
3253 |
+
echo ' value="dimension14">'. __("Custom Dimension #14","wp-seopress") .'</option>';
|
3254 |
+
echo '<option ';
|
3255 |
+
if ('dimension15' == $selected) echo 'selected="selected"';
|
3256 |
+
echo ' value="dimension15">'. __("Custom Dimension #15","wp-seopress") .'</option>';
|
3257 |
+
echo '<option ';
|
3258 |
+
if ('dimension16' == $selected) echo 'selected="selected"';
|
3259 |
+
echo ' value="dimension16">'. __("Custom Dimension #16","wp-seopress") .'</option>';
|
3260 |
+
echo '<option ';
|
3261 |
+
if ('dimension17' == $selected) echo 'selected="selected"';
|
3262 |
+
echo ' value="dimension17">'. __("Custom Dimension #17","wp-seopress") .'</option>';
|
3263 |
+
echo '<option ';
|
3264 |
+
if ('dimension18' == $selected) echo 'selected="selected"';
|
3265 |
+
echo ' value="dimension18">'. __("Custom Dimension #18","wp-seopress") .'</option>';
|
3266 |
+
echo '<option ';
|
3267 |
+
if ('dimension19' == $selected) echo 'selected="selected"';
|
3268 |
+
echo ' value="dimension19">'. __("Custom Dimension #19","wp-seopress") .'</option>';
|
3269 |
+
echo '<option ';
|
3270 |
+
if ('dimension20' == $selected) echo 'selected="selected"';
|
3271 |
+
echo ' value="dimension20">'. __("Custom Dimension #20","wp-seopress") .'</option>';
|
3272 |
+
echo '</select>';
|
3273 |
+
|
3274 |
+
if (isset($this->options['seopress_google_analytics_cd_logged_in_user'])) {
|
3275 |
+
esc_attr( $this->options['seopress_google_analytics_cd_logged_in_user']);
|
3276 |
+
}
|
3277 |
+
}
|
3278 |
+
|
3279 |
public function seopress_advanced_advanced_attachments_callback()
|
3280 |
{
|
3281 |
$options = get_option( 'seopress_advanced_option_name' );
|
3349 |
);
|
3350 |
|
3351 |
}
|
3352 |
+
|
3353 |
+
public function seopress_advanced_appearance_adminbar_callback()
|
3354 |
+
{
|
3355 |
+
$options = get_option( 'seopress_advanced_option_name' );
|
3356 |
+
|
3357 |
+
$check = isset($options['seopress_advanced_appearance_adminbar']);
|
3358 |
+
|
3359 |
+
echo '<input id="seopress_advanced_appearance_adminbar" name="seopress_advanced_option_name[seopress_advanced_appearance_adminbar]" type="checkbox"';
|
3360 |
+
if ('1' == $check) echo 'checked="yes"';
|
3361 |
+
echo ' value="1"/>';
|
3362 |
+
|
3363 |
+
echo '<label for="seopress_advanced_appearance_adminbar">'. __( 'Remove SEOPress from Admin Bar in backend', 'wp-seopress' ) .'</label>';
|
3364 |
+
|
3365 |
+
if (isset($this->options['seopress_advanced_appearance_adminbar'])) {
|
3366 |
+
esc_attr( $this->options['seopress_advanced_appearance_adminbar']);
|
3367 |
+
}
|
3368 |
+
}
|
3369 |
+
|
3370 |
+
public function seopress_advanced_appearance_title_col_callback()
|
3371 |
+
{
|
3372 |
+
$options = get_option( 'seopress_advanced_option_name' );
|
3373 |
+
|
3374 |
+
$check = isset($options['seopress_advanced_appearance_title_col']);
|
3375 |
+
|
3376 |
+
echo '<input id="seopress_advanced_appearance_title_col" name="seopress_advanced_option_name[seopress_advanced_appearance_title_col]" type="checkbox"';
|
3377 |
+
if ('1' == $check) echo 'checked="yes"';
|
3378 |
+
echo ' value="1"/>';
|
3379 |
+
|
3380 |
+
echo '<label for="seopress_advanced_appearance_title_col">'. __( 'Add title column', 'wp-seopress' ) .'</label>';
|
3381 |
+
|
3382 |
+
if (isset($this->options['seopress_advanced_appearance_title_col'])) {
|
3383 |
+
esc_attr( $this->options['seopress_advanced_appearance_title_col']);
|
3384 |
+
}
|
3385 |
+
}
|
3386 |
+
|
3387 |
+
public function seopress_advanced_appearance_meta_desc_col_callback()
|
3388 |
+
{
|
3389 |
+
$options = get_option( 'seopress_advanced_option_name' );
|
3390 |
+
|
3391 |
+
$check = isset($options['seopress_advanced_appearance_meta_desc_col']);
|
3392 |
+
|
3393 |
+
echo '<input id="seopress_advanced_appearance_meta_desc_col" name="seopress_advanced_option_name[seopress_advanced_appearance_meta_desc_col]" type="checkbox"';
|
3394 |
+
if ('1' == $check) echo 'checked="yes"';
|
3395 |
+
echo ' value="1"/>';
|
3396 |
+
|
3397 |
+
echo '<label for="seopress_advanced_appearance_meta_desc_col">'. __( 'Add meta description column', 'wp-seopress' ) .'</label>';
|
3398 |
+
|
3399 |
+
if (isset($this->options['seopress_advanced_appearance_meta_desc_col'])) {
|
3400 |
+
esc_attr( $this->options['seopress_advanced_appearance_meta_desc_col']);
|
3401 |
+
}
|
3402 |
+
}
|
3403 |
}
|
3404 |
|
3405 |
if( is_admin() )
|
inc/admin/adminbar.php
ADDED
@@ -0,0 +1,64 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
<?php
|
2 |
+
defined( 'ABSPATH' ) or die( 'Please don’t call the plugin directly. Thanks :)' );
|
3 |
+
|
4 |
+
/**
|
5 |
+
* Admin bar customization
|
6 |
+
*/
|
7 |
+
|
8 |
+
function seopress_admin_bar_links() {
|
9 |
+
|
10 |
+
global $wp_admin_bar;
|
11 |
+
|
12 |
+
// Adds a new top level admin bar link and a submenu to it
|
13 |
+
$wp_admin_bar->add_menu( array(
|
14 |
+
'parent' => false,
|
15 |
+
'id' => 'seopress_custom_top_level',
|
16 |
+
'title' => '<img style="height:22px;vertical-align:middle;margin-right:5px" src=" data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAQAAAAEACAYAAABccqhmAAAABHNCSVQICAgIfAhkiAAAAAlwSFlzAAALEgAACxIB0t1+/AAAABV0RVh0Q3JlYXRpb24gVGltZQA1LzEyLzE2LEZ4ogAAABx0RVh0U29mdHdhcmUAQWRvYmUgRmlyZXdvcmtzIENTNui8sowAABn1SURBVHic7Z2/bxtJnsWfvQPsJupVeAB7sZzQnYwvIgMN1heogaOwWB9E4GhMMmJAX2YGVCielw7FgAytgJqNxIDEzQZmQAZnwwrI6OwJyMuGA5DAhRr2H7AXSE3LMkk1u6u7qrrfBxgMLIvNksV69f1dDxAB6XT6CYDHAHYBPLn58p+ieG9CNOHdzf/fArgC8GE6nb4N+00fhPHQdDr9GMDTm/++CeM9CEkIHwH8CODH6XT6QfTDhQlAOp1OAyjjetP/UdRzCSFLfsG1GDSm0+lUxAMDC8CNeV8G8JfAqyGEeOXvuBaCt0Ee4lsAbsz8BujLEyKTdwDKft2D3/h5UTqdfgngAkDaz+sJIcJIA/iP3d3dB1dXV2+3ffFWFsDNqf8DGNgjREU+Avh+G2vAswCk0+mnuN78v99+XYSQiPgV1yLwo5dv9uQCpNPp73Ft8v/O/7oIIRHwOwCF3d3dX66uru61BO4VgJvNfy5gYYSQ6HjqRQQ2ugA3Zv9/CV0WISRK/m2TO7BWAG4Cfm9Bn58QnfkVwJN1gcGHG174A7j5CdGd3+N6L69kZQzgJs//7+GshxASMf+0rk7gCxfgxvT/nyhWRQiJlH++6wqscgEaES2GEBItX+ztzwTgprGHtf2ExJM/3ezxJXctgJeRLYUQIoOXt/+wjAHc9PP/HPFiCCHR87U7T+C2BVCWsxZCSMQs9/ptAXgqYSGEkOhZ7vWHwDL1xzFehCSDP97s+aUF8L28tRBCJPA98EkAnkhbBiFEBk+ATwLACT+EJItvAODBTWHAf0tdCiFEBv/yENc39hBCksfjh+BkX0KSSpoWACHJ5fGmgSCEkJjzIJ1O/0P2IgghcqAFQEiCoQAQkmAoAIQkGAoAIQmGAkBIgqEAEJJgKACEJBgKACEJhgJASIKhABCSYCgAhCSYr2QvIEmYpgnTND/72mw2w2w2k7QiknQoAILJZrOwLAumaS7/n0qlPL12MplgsVhgOBxiPB5jPB5THEiosBswIKZpwrZt2LaNTCYj/Pnz+Rz9fh+dTgfj8Vj480myoQD4wDAM5PN55PN5PHr0KLL3nc/naDQa6Pf7WCwWkb0viS8UgC2wLAvFYhGHh4dS1+E4DlqtFhoN3uROgkEB8EA2m0W5XA7FxA/CfD5HrVZDv9/39P3tdnvlz/D111+LXhrRBKYBN2CaJur1Oi4uLpTb/ACQSqXw+vVrnJ2dwTCMjd+bzWZX/gyTySSs5RENoACsoVwuo9frSTf3vbC/v4/Ly0tks9m131Mur778mYHFZEMBuINlWej1enjx4gV2dnZkL8czOzs7uLi4WLnR153+AAUg6VAAbpHP59FutyON7IvmxYsXqNfrn30tn8+v/f7hcBj2kojCMAh4Q71eF27uTyYTDIdDzGaz5Uk7Ho8/S+EZhgHLsgB8KiLKZrOBrY/JZIJCoQDDMPD+/fu138cAYLJJvAAYhoF6vY79/X0hzxsMBuj3+4Fz9W5xURBRmkwmmM1ma3+20WiEQqHg+/lEfxItAIZhCDH53bx8q9USXqBjmibK5XIowcjz83PUajXhzyX6kNgYgKjN32w2sbe3h0ajEUp13mw2Q6VSwbNnz+A4jtBn0/8niRWAarUaaPNPJhMcHByEtvHvMhwOsbe3JzRvzwwASaQAVKvVQCb1YDBAoVCIfAMtFgsUCgUhIuA4DjsNSfIEwLZtHB0d+X59t9tFqVSS1oyzWCxQKpUCuwM0/wmQMAFwS3v9MhgMUKlUBK7IH25cIAg0/wmQMAGo1+u+8+uTyUSJze/S7/cxGo18v54WAAESJAD5fD5QQ0+lUlGuBz9IOzAtAAIkZCSYYRhrm2G80Gw2ldwww+EQo9Foa2FzR4/pSrFYvLf78S7D4ZBWzwoSIQDFYtHzXL67uEU+qtJqtbYWABXFzCumaeLk5GTr17mzFsnnxN4FMAwDxWLR9+vDqO4TSb/f3zojoLMAbGp53gQ3/2piLwD5fD5QY02n0xG4mnDwOhHIRWcBsG1769fM53Otf+Ywib0ABDn93WYa1dlWAHQ+Df1YADr/vGETawGwLMu37w9sv7Fksc0HPEjqUDa2bfuy5igA64m1AGwahOEFXczGxWLhuTxYl59pFfT/xRNrAfDjL95G5eDfXbx+yHUWAL/+vw5unCxiKwDbXMm1Dp02i9e16noa+v196uLGySK2AuDXXLyNThaAl1NO5w5Av9acroIXFbEVAHfOXhC2rTaTiZcPuk4WzV0oAOFAAQj5GSqh62YwDMNXH4fuJc9REFsBEHF662QBAPen+HQVAEb/wyO2AiBitn/cLABdXQC/5j8DgPcTWwEQgYhAYpRs2uDz+Vxbc5j+f3hQADaQyWS0cgM2bXBdT3/LsnxV/+lc8RglFIB7CFpNqAq6noY8/cOFAnAPQZqJVEJXC4D+f7hQAO4hlUppIwKbXAAdT0TDMHwFcx3H0Vbwoia2V4P99NNPwq73dhwHe3t72gbRdCWfz+P09HTr1w0GA5RKpRBWFD9iawGIPAF2dnZwdnYm7HnEG/T/wye2MwFns1mgKcB3yWQyKJfLgSbxku0QXQBkmiZM01z5d4vFIpFuQ2wFYDweC79R98WLF5jNZlqMCdOdbDbry4VzHAemacK27eWG3zaV6E6CGo/HGA6HGI/HsXX/YhsDsCwLb968Ef5cx3Gk3AuYNKrVaqAr3EQzGo3Q7/fR7/e17ahcRWwFABAbCLwNRSB8Li8vA89zCIvBYIBWqxWLWENsg4BAeLngnZ0dtNvt2PUKqIKIYS5hsr+/j4uLC7Tbbe3Kxe8SawEI01enCIRH0FFuUZHJZHBxcYFqtapVyfhtYi0Aw+EQ8/k8tOe7IqDLB1YHTNPUrvz66OgIvV5Py8Mg1gIABLtA0ws7Ozt4/fq1NtWCqpLNZtFut/H+/XshrdxRk0ql8ObNG+3EK9ZBQJeoAkrdbhe1Wi22KaMwsG0bxWJRaM2GbI6Pj7VJFSdCAGzbxuvXryN5r8lkglKpFKtUURhks1mUy+XQNv7dceDD4XAZsIsiyKiLCCRCAADg7OwM+/v7kbyX4zioVCrsSFuBZVmoVqvCN36320Wn08FsNvMkvoZhwLZt5PP50ETo2bNnyqcKEyMAhmHg8vIylLqAdZyfn6NWq0X2fipjGAaq1arw6kyXg4MD33UZYYmS4zjI5XJKW4OxDwK6LBYLVCqVSN/z6OgI7XZ7bf15Usjn87i8vAxt8we9/Xc8HqNQKODVq1cCV3UdIK7X60KfKZrECABwXRjU7XYjfc9MJoNer5fIVKFpmmi32zg9PQ3V8hJlZrdaLRwcHMBxHCHPA65//ypnBhIlAABQq9U8X6QpCjdVWK1WI31fmeTzefR6vUii+yL9bNcaEEm5XBb6PJEkTgAWiwVKpZJQlfeKzgUjXjEMA2dnZ6Gf+rcRHWgbj8c4Pj4W9rxUKqWsFZA4AQCuZwWIVnmvPHr0CG/evIll4ZBlWej1eltnW7rdru8pvm7rrmg6nQ4Gg4Gw56lqBSRSAADxKr8tJycnODs707aG/C7FYhFv3rzZKr8+Go1wcHCASqXi2yoKM81WqVSEWYqpVErJOFBiBQC4VnmZIrC/vx8Ll6Ber+Pk5MTz9zuOg+Pj42VLtd/hH0C4ArBYLNBqtYQ9jwKgILJFQNcacuDa3+/1elul9waDAfb29j6rkguyMcIutGm1WsKsAAqAosgWAQA4PT1VPmd8G9ff99q44zgOnj9/jlKp9EWvhN+e+tFoFHrfxWKxEFbSu7Ozo9z8AArADSqIwOHhIdrttvJxAcuy0G63Pfv7o9EIe3t7K0ujTdP03f0XVZmtyJp+CoDCdDod4YUg25LJZJQWAdu20W63PfvszWYThUJh7UmtsvnvMh6Phc2VoAAojlsIEuYgkft49OiRksHBfD6P169fe9r8juPg2bNn985j8LshHMeJtNFG1Hup9julAKxgPB4jl8tFXjF4m1QqpdTIsW1u6ZlMJsjlcp42jd8Ozai77ES9X5TNaF6gAKxhsVggl8tF3jtwG1XmDm6z+bvdLgqFgqfiHB3MfxeRxUYquQEUgHuoVCpSg4OyRcC2bc+bv9lsolKpeI7M6yQAqvf1+4UC4AE3OCgrLiBLBCzL8pyaPD4+3nr+YhD/X8adDKKCwyoFeCkAHnHjAiLrw7fB7S2P6sPjtvLe57O6VX3bpsosy/I9lkvWpCVRoiPbpbsNBWAL3E7C4+NjKanCR48eRXZL8Ww2u3ejuTck+cmTB/GD42qOy4AC4INOpyMtS5DJZCKbK1CpVNYGQYNej6aT/x9nKAA+mc1myOVyOD8/j/y9j46OIoskrxKBoJvfMAzfg0LuTvslwaAABKRWq+H58+eRuwRRthLfFgERF6MGOf05aVksFAAB9Pv9yF2CnZ2dSEeMVSoVnJ+fC7kVOen+v0q3SlMABOFOGYqycOjw8DDSopJarSbkw5t0/1+lm6MoAAJxR4+LHi+9CZ1aiIHrFJjfctjJZCJ188RxvDsFIARarVZkcQGVB06uQmf/X9R1YnQBEkC/30ehUIhEBFQdOLkKXc1/kac/XYCEEFVXoS5WQJDhH0A8BMDv9OOwoACEjBscDFsEdLACggQsZZVgu4gKtqpk/gMUgEhYLBahi0AqlVKqxnwVupr/gLj6fQpAQolCBFR3A3TO/4sSANk/x10oABEStgioOHbaxbZt3+k/We2/LkE6F2+jYhkzBSBiwrybMJVKKZurDnL6y07/ifL/Zf8cq6AASCDMuwlVjQPo7P+Lcq1k/xyroABIIqy7CVUUANM0A5nQstN/QVKXLo7j0AIgn9PpdIT3Dqg0cNIlyOkv228WFVcRebmISCgAkqnValLvIIgCnf1/Ude4i7xkVCRfyV7AJorF4sqe906no1w01S9uA9HFxYWQ5/kdtBEWhmH4nv0PyDX/bdsWEv0fjUbKfl6VFoB1V06Px2Nl/0H9MBwOcX5+jqOjI9lLEU5Ql0SmAIg6/bedlhwlyroAm4JZKga6gtJoNKTeSRgWQXxome2/2WxWiDU1Go2UjP67KCsAquazw2KxWCjrJwZBV/9fVG+Fyqc/oLAAbDrl4yoOqkaK/RK0gk7WyZmU0x+gACjFbDaT3vUmkqApNFmbR9SsxVqtJuQ5YaKsAGza5HEVAEDNajG/BBEAWUJYLBaFFP6cn58r1/m3CmUFYNMvQdRoJhWJiwAYhqHd8A/DMIT4/o7jKO/7uygpAF6i/CpWvIkg6KmhSlGRjuZ/vV733bF4m21uSJaNkgLgxcSPsxsQZGyUKvURQQRaRvuvbduBCpZcBoOB9OrFbVBSALxYAHGsBRCBKgKgU/efaZpCxqvP53NUKhUBK4oObQUgri4AEGwDqCAA2Ww2kCkd9QkqyvQvlUramP4uSgqAF/NeRKQ2jqgQRNTJ/69Wq0Jy/q9evdIi6n8XJQXA6+ZWeQSWLFT4EAaxzqJs/83n80L6L7rdrrZVnMoJwDa+fZzdAD/IvjoL0Gf2v2VZOD09DfycyWSiRcHPOpQTgG2uvI6rBeBX2FQw/4OKchT+v2VZaLfbgZ8zmUxQKBSki24QlBOAbT5AOszC98M2IngbFdJPqvv/pmmi3W4HDvo5jqNVvn8dygnAtvl91Wfh+8GPCT2fz5WwAILk0sN2YQzDwNnZmZDNXygUlIi3BEV7AYibG+DXhObpvxnX7A+aPYrT5gcUFIBtUzK6XIzpFb+bSIUotKr+Pzf/epQSAL/lvUkXAFVmzqloAWSzWSE+/3w+j93mB2IiAJlMJhYpQb9DKFXoPAs6/COMa7Pz+TwuLi4Cb/7JZIJcLhe7zQ8oJgBBNrEO12Pfh58hlKpMnVHN/K/X60Ly/IPBQPtU3yaUEoAgHX6ZTEbrgKBt275KUlU4/QF1zH/LstDr9XB4eBj4Wc1mU8v6/m2IjQAA13XdfnPoMjEMw9cYqsFgoMTpbxhGoHp6Ue2/xWJRWLDv+fPnyohrmCglAEGbMlKplLB5blFSLpe39p8dx1GmBFX27H+3uOfk5ESYv69CWjUKlBEAUQM+Dg8PtcoK+G1IabVaSkT+geDmf5DNVi6X0ev1hHT0NZtN5HI5Zf5do0CZm4FETvipVqsYj8fKR20ty/JlsYxGI6XMUxn+fz6f92U5rcId5KGCOxU1ylgAItN4Ozs7aLfbSvcJuMUp25qsbg26KliWFcjs3rb9183rn56eCtn87qmfxM0PKCQAomf8qSwCtm37Lk6pVCpKmahRnf75fB69Xg8XFxfCLu04ODhAo9GIdZT/PmLpAri4IqBSBVe5XMaLFy98vbbZbCoXnArT/zdNE/l8Hvl8Xtgo+Pl8jkajEbtbmPzyIJ1O/0P2IgDg559/3vj3juMEMjVfvXoltV7eHTzp9/TqdrtKmf7Adfrv48ePgZ7xzTfffHYCG4YB27aFTel1cRwHrVYLrVYr0Sf+XZSwAO47/QeDARqNRqCa7pOTE9i2HbkJbRgGisWi71MfUHPzA8FPf7f917IsZLNZZLNZoZse4Ma/Dy0EYDgcYjweo1AoBBKBTCaD9+/fo9vtotFohCoErvlaLBYDWS6qbn4guACYpomffvpJyETeu3Dje0MJF+A+v/jbb79dblbLsnB2dibEJ3Qvcej3+0I+JKLNV5U3P4DQNm8QXB9f1O807ighAPV6fW3t9nw+x97e3mdfMwxDSMnnbdymmuFwiMVi4SlomM1mYZrm0oQVuZ5ms6lUrv8u2WwWFxcXspexZDAYoNVqJTad5xflXYBVv9DFYoFcLrdROLYlk8kgk8l8YYncHVMVNO99H26eX7Vo/11UaLyaz+dotVro9/tKpUZ1QgkB2BQZ37QR3OqtarUa2qaM8gKSyWSCUqmkxYdZlgDM53P0+310Oh1lUrs6I10AvAQAN9HpdDAcDgOl2FRAdZP/NqZpRnpF+2g0Qr/fXwaDiTiUFgCvU2JnsxkKhQKKxSLK5bJygalNjEYj5ar77iPs038ymSzjMW5MhoSDdAHY1AOwrR/carXQ6XRQLpeFXPkUJjo3oIjs23DnGbrNWzr+e+iMdAHYZAH4CYQtFgvUajW0Wi2Uy2VhQUJRTCaTpVDpStAUZxR1GMQb0puB1glA0Ckxs9kMlUoF3377LZrNJubzue9niaDb7eLZs2fI5XJab34R5r9KswySjnQLYF23nihTcDabodFooNFoLIt0bNuOJE4gutBIBYIKgKjxX0QMShQCycCtPc9ms8KyB6PRaOnHxjV4dXl5GSgDMBgMUCqVBK6IBEG6BSALd5O6mKYJ0zSXAS73z6uYzWZLE3abykHdCTr7H1DjBmPyicQKwF3cTc0P6HpERP/576sW0oOARB+CDludz+eJsJR0ggJAPGEYRuCyaJ7+6kEBIJ4Qkf6jAKgHBYB4gv5/PKEAEE+IGP/F4h/1oACQexExA4Gnv5pQAMi9iLhqjQKgJhQAci/0/+MLBYBsxDTNwOm/0WgUy7LoOEABIBvh6R9vKABkI8z/xxsKANlIUAvAcRwKgMJQAMhaRMxN4OZXGwoAWQv9//hDASBrof8ffygAZCUiZv+z/Vd9KABkJTz9kwEFgKyEApAMKADkCwzDEDIoVfULTgkFgKxARPSf5b96QAEgX0DzPzlQAMgXMP+fHCgA5DNEzP4HQPNfEygA5DNEXf3N/L8eUADIZ4gSAKIHFACyRMTwD6IXFACypFwuC3uWiEAiCR8KAAFwffofHh4Kex5dCT2gABAYhoGzszOhzzw6OoJlWUKfScRDAUg4hmGg3W6H4vu3222KgOL8Znd396XsRZDoMQwDf/7zn/G3v/1NSN5/Fb/97W/x3Xff4Q9/+AMWiwVvBlKQB+l0+h+yF0HCxzRNmKYJy7KQzWaRzWYDj/vaFsdxMB6PMRwOMR6Pl6JAYZAHBSCGVKtV5PP5yDe4KLrdLiqViuxlJALGAGKIiLv8ZEKLIDooADFERC+/TCgA0UEBiBmGYcheQmAoANFBAYgZcUi7sZEoOigAMSMOAsBW4uigAMQM3V2A0WgkewmJ4ivZCyBiGY/HaDabspfhG/r/0cI6AEISDF0AQhIMBYCQBEMBICTBUAAISTAUAEISDAWAkARDASAkwTwE8E72IgghUnhHC4CQBPMQwAfZiyCESOHDQwBT2asghEhhSguAkOTy4QEAsCGIkOQxnU4fuEHAj1JXQgiJmo/ApzqAt/LWQQiRwFvgkwD8IG0ZhBAZ/AAAD9w/pdPpKYA/SloMISQ6fplOp2ng81LgH+WshRASMcu9flsAGhIWQgiJnuVeXwrAdDqdgn0BhMSddzd7HcCX3YAvI10KISRqXt7+w4O7f5tOp98C+FNEiyGERMe76XT65PYXVnUDlqNZCyEkYr7Y27+5+4Wrq6v/293dfQDgSRQrIoREwl+n02n77he/cAFc0un0BwDfhLokQkgUfJxOp49X/cWmgSDfA/g1lOUQQqLiV1zv5ZWsFYDpdPph0wsJIVrw/c1eXskXMYDbXF1d/e/u7u4vAJ4KXxYhJGyOVvn9t9koAABwdXX1gSJAiHYcTafTH+77pnsFAFiKwEcA/wrgdwEXRggJj18BPLvv5HdZmwVYRTqdfozrNkJmBwhRj4+4x+e/y1YC4JJOp18C+E8/ryWEhMJfp9Ppy21f5EsAgKU10ADLhgmRyTsA5W1O/dv4FgCXdDr9BNclhn8J+ixCiGf+DqAxnU7fBnlIYAFwSafTaVwLwVNwshAhYfALrod5NG639AZBmADc5sY9eHrzHwOGhPjnI643/Y9+zfxNhCIAd7lxEx4D2MWnJiPGDgj5hDuM5y2AKwAfgpr3Xvh/hENXm+CaxHYAAAAASUVORK5CYII="/>'.__( 'SEO', 'wp-seopress' ),
|
17 |
+
'href' => admin_url( 'admin.php?page=seopress-option' ),
|
18 |
+
));
|
19 |
+
$wp_admin_bar->add_menu( array(
|
20 |
+
'parent' => 'seopress_custom_top_level',
|
21 |
+
'id' => 'seopress_custom_sub_menu_titles',
|
22 |
+
'title' => __( 'Titles & Metas', 'wp-seopress' ),
|
23 |
+
'href' => admin_url( 'admin.php?page=seopress-titles' ),
|
24 |
+
));
|
25 |
+
$wp_admin_bar->add_menu( array(
|
26 |
+
'parent' => 'seopress_custom_top_level',
|
27 |
+
'id' => 'seopress_custom_sub_menu_xml_sitemap',
|
28 |
+
'title' => __( 'XML Sitemap', 'wp-seopress' ),
|
29 |
+
'href' => admin_url( 'admin.php?page=seopress-xml-sitemap' ),
|
30 |
+
));
|
31 |
+
$wp_admin_bar->add_menu( array(
|
32 |
+
'parent' => 'seopress_custom_top_level',
|
33 |
+
'id' => 'seopress_custom_sub_menu_social',
|
34 |
+
'title' => __( 'Social', 'wp-seopress' ),
|
35 |
+
'href' => admin_url( 'admin.php?page=seopress-social' ),
|
36 |
+
));
|
37 |
+
$wp_admin_bar->add_menu( array(
|
38 |
+
'parent' => 'seopress_custom_top_level',
|
39 |
+
'id' => 'seopress_custom_sub_menu_google_analytics',
|
40 |
+
'title' => __( 'Google Analytics', 'wp-seopress' ),
|
41 |
+
'href' => admin_url( 'admin.php?page=seopress-google-analytics' ),
|
42 |
+
));
|
43 |
+
$wp_admin_bar->add_menu( array(
|
44 |
+
'parent' => 'seopress_custom_top_level',
|
45 |
+
'id' => 'seopress_custom_sub_menu_advanced',
|
46 |
+
'title' => __( 'Advanced', 'wp-seopress' ),
|
47 |
+
'href' => admin_url( 'admin.php?page=seopress-advanced' ),
|
48 |
+
));
|
49 |
+
$wp_admin_bar->add_menu( array(
|
50 |
+
'parent' => 'seopress_custom_top_level',
|
51 |
+
'id' => 'seopress_custom_sub_menu_import_export',
|
52 |
+
'title' => __( 'Import / Export / Reset', 'wp-seopress' ),
|
53 |
+
'href' => admin_url( 'admin.php?page=seopress-import-export' ),
|
54 |
+
));
|
55 |
+
if ( is_plugin_active( 'wp-seopress-pro/seopress-pro.php' ) ) {
|
56 |
+
$wp_admin_bar->add_menu( array(
|
57 |
+
'parent' => 'seopress_custom_top_level',
|
58 |
+
'id' => 'seopress_custom_sub_menu_pro',
|
59 |
+
'title' => __( 'PRO', 'wp-seopress' ),
|
60 |
+
'href' => admin_url( 'admin.php?page=seopress-pro-page' ),
|
61 |
+
));
|
62 |
+
}
|
63 |
+
}
|
64 |
+
add_action( 'admin_bar_menu', 'seopress_admin_bar_links', 99 );
|
inc/admin/ajax.php
CHANGED
@@ -10,3 +10,88 @@ function seopress_flush_permalinks() {
|
|
10 |
}
|
11 |
add_action('wp_ajax_seopress_flush_permalinks', 'seopress_flush_permalinks');
|
12 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
10 |
}
|
11 |
add_action('wp_ajax_seopress_flush_permalinks', 'seopress_flush_permalinks');
|
12 |
|
13 |
+
///////////////////////////////////////////////////////////////////////////////////////////////////
|
14 |
+
//Dashboard toggle features
|
15 |
+
///////////////////////////////////////////////////////////////////////////////////////////////////
|
16 |
+
function seopress_toggle_features() {
|
17 |
+
if ( isset( $_POST['feature']) && isset( $_POST['feature_value'] )) {
|
18 |
+
$seopress_toggle_options = get_option('seopress_toggle');
|
19 |
+
$seopress_toggle_options[$_POST['feature']] = $_POST['feature_value'];
|
20 |
+
update_option('seopress_toggle', $seopress_toggle_options, yes);
|
21 |
+
}
|
22 |
+
die();
|
23 |
+
}
|
24 |
+
add_action('wp_ajax_seopress_toggle_features', 'seopress_toggle_features');
|
25 |
+
|
26 |
+
///////////////////////////////////////////////////////////////////////////////////////////////////
|
27 |
+
//Yoast migration
|
28 |
+
///////////////////////////////////////////////////////////////////////////////////////////////////
|
29 |
+
function seopress_yoast_migration() {
|
30 |
+
global $post;
|
31 |
+
$args = array(
|
32 |
+
'posts_per_page' => '-1',
|
33 |
+
'post_type' => 'any',
|
34 |
+
);
|
35 |
+
|
36 |
+
$yoast_query = get_posts( $args );
|
37 |
+
|
38 |
+
if ($yoast_query) {
|
39 |
+
foreach ($yoast_query as $post) {
|
40 |
+
if (get_post_meta($post->ID, '_yoast_wpseo_title', true) !='') { //Import title tag
|
41 |
+
update_post_meta($post->ID, '_seopress_titles_title', get_post_meta($post->ID, '_yoast_wpseo_title', true));
|
42 |
+
}
|
43 |
+
if (get_post_meta($post->ID, '_yoast_wpseo_metadesc', true) !='') { //Import meta desc
|
44 |
+
update_post_meta($post->ID, '_seopress_titles_desc', get_post_meta($post->ID, '_yoast_wpseo_metadesc', true));
|
45 |
+
}
|
46 |
+
if (get_post_meta($post->ID, '_yoast_wpseo_opengraph-title', true) !='') { //Import Facebook Title
|
47 |
+
update_post_meta($post->ID, '_seopress_social_fb_title', get_post_meta($post->ID, '_yoast_wpseo_opengraph-title', true));
|
48 |
+
}
|
49 |
+
if (get_post_meta($post->ID, '_yoast_wpseo_opengraph-description', true) !='') { //Import Facebook Desc
|
50 |
+
update_post_meta($post->ID, '_seopress_social_fb_desc', get_post_meta($post->ID, '_yoast_wpseo_opengraph-description', true));
|
51 |
+
}
|
52 |
+
if (get_post_meta($post->ID, '_yoast_wpseo_opengraph-image', true) !='') { //Import Facebook Image
|
53 |
+
update_post_meta($post->ID, '_seopress_social_fb_img', get_post_meta($post->ID, '_yoast_wpseo_opengraph-image', true));
|
54 |
+
}
|
55 |
+
if (get_post_meta($post->ID, '_yoast_wpseo_twitter-title', true) !='') { //Import Twitter Title
|
56 |
+
update_post_meta($post->ID, '_seopress_social_twitter_title', get_post_meta($post->ID, '_yoast_wpseo_twitter-title', true));
|
57 |
+
}
|
58 |
+
if (get_post_meta($post->ID, '_yoast_wpseo_twitter-description', true) !='') { //Import Twitter Desc
|
59 |
+
update_post_meta($post->ID, '_seopress_social_twitter_desc', get_post_meta($post->ID, '_yoast_wpseo_twitter-description', true));
|
60 |
+
}
|
61 |
+
if (get_post_meta($post->ID, '_yoast_wpseo_twitter-image', true) !='') { //Import Twitter Image
|
62 |
+
update_post_meta($post->ID, '_seopress_social_twitter_img', get_post_meta($post->ID, '_yoast_wpseo_twitter-image', true));
|
63 |
+
}
|
64 |
+
if (get_post_meta($post->ID, '_yoast_wpseo_meta-robots-noindex', true) =='1') { //Import Robots NoIndex
|
65 |
+
update_post_meta($post->ID, '_seopress_robots_index', "yes");
|
66 |
+
}
|
67 |
+
if (get_post_meta($post->ID, '_yoast_wpseo_meta-robots-nofollow', true) =='1') { //Import Robots NoFollow
|
68 |
+
update_post_meta($post->ID, '_seopress_robots_follow', "yes");
|
69 |
+
}
|
70 |
+
if (get_post_meta($post->ID, '_yoast_wpseo_meta-robots-adv', true) !='') { //Import Robots NoOdp, NoImageIndex, NoArchive, NoSnippet
|
71 |
+
$yoast_wpseo_meta_robots_adv = get_post_meta($post->ID, '_yoast_wpseo_meta-robots-adv', true);
|
72 |
+
|
73 |
+
if (strpos($yoast_wpseo_meta_robots_adv, 'noodp') !== false) {
|
74 |
+
update_post_meta($post->ID, '_seopress_robots_odp', "yes");
|
75 |
+
}
|
76 |
+
if (strpos($yoast_wpseo_meta_robots_adv, 'noimageindex') !== false) {
|
77 |
+
update_post_meta($post->ID, '_seopress_robots_imageindex', "yes");
|
78 |
+
}
|
79 |
+
if (strpos($yoast_wpseo_meta_robots_adv, 'noarchive') !== false) {
|
80 |
+
update_post_meta($post->ID, '_seopress_robots_archive', "yes");
|
81 |
+
}
|
82 |
+
if (strpos($yoast_wpseo_meta_robots_adv, 'nosnippet') !== false) {
|
83 |
+
update_post_meta($post->ID, '_seopress_robots_snippet', "yes");
|
84 |
+
}
|
85 |
+
}
|
86 |
+
if (get_post_meta($post->ID, '_yoast_wpseo_canonical', true) !='') { //Import Canonical URL
|
87 |
+
update_post_meta($post->ID, '_seopress_robots_canonical', get_post_meta($post->ID, '_yoast_wpseo_canonical', true));
|
88 |
+
}
|
89 |
+
}
|
90 |
+
}
|
91 |
+
|
92 |
+
wp_reset_query();
|
93 |
+
|
94 |
+
die();
|
95 |
+
}
|
96 |
+
add_action('wp_ajax_seopress_yoast_migration', 'seopress_yoast_migration');
|
97 |
+
|
inc/functions/options-advanced-admin.php
CHANGED
@@ -3,6 +3,77 @@ defined( 'ABSPATH' ) or die( 'Please don’t call the plugin directly. Thank
|
|
3 |
|
4 |
//Advanced
|
5 |
//=================================================================================================
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
6 |
//Stop words
|
7 |
function seopress_advanced_advanced_stop_words_option() {
|
8 |
$seopress_advanced_advanced_stop_words_option = get_option("seopress_advanced_option_name");
|
@@ -13,7 +84,7 @@ function seopress_advanced_advanced_stop_words_option() {
|
|
13 |
return $seopress_advanced_advanced_stop_words_option['seopress_advanced_advanced_stop_words'];
|
14 |
}
|
15 |
}
|
16 |
-
}
|
17 |
|
18 |
if (seopress_advanced_advanced_stop_words_option() !='') {
|
19 |
function seopress_advanced_advanced_stop_words_hook($slug) {
|
3 |
|
4 |
//Advanced
|
5 |
//=================================================================================================
|
6 |
+
//Admin bar
|
7 |
+
function seopress_advanced_appearance_adminbar_option() {
|
8 |
+
$seopress_advanced_appearance_adminbar_option = get_option("seopress_advanced_option_name");
|
9 |
+
if ( ! empty ( $seopress_advanced_appearance_adminbar_option ) ) {
|
10 |
+
foreach ($seopress_advanced_appearance_adminbar_option as $key => $seopress_advanced_appearance_adminbar_value)
|
11 |
+
$options[$key] = $seopress_advanced_appearance_adminbar_value;
|
12 |
+
if (isset($seopress_advanced_appearance_adminbar_option['seopress_advanced_appearance_adminbar'])) {
|
13 |
+
return $seopress_advanced_appearance_adminbar_option['seopress_advanced_appearance_adminbar'];
|
14 |
+
}
|
15 |
+
}
|
16 |
+
}
|
17 |
+
|
18 |
+
if (seopress_advanced_appearance_adminbar_option() !='') {
|
19 |
+
add_action( 'admin_bar_menu', 'seopress_advanced_appearance_adminbar_hook', 999 );
|
20 |
+
|
21 |
+
function seopress_advanced_appearance_adminbar_hook( $wp_admin_bar ) {
|
22 |
+
$wp_admin_bar->remove_node( 'seopress_custom_top_level' );
|
23 |
+
}
|
24 |
+
}
|
25 |
+
|
26 |
+
//Columns in post types
|
27 |
+
function seopress_advanced_appearance_title_col_option() {
|
28 |
+
$seopress_advanced_appearance_title_col_option = get_option("seopress_advanced_option_name");
|
29 |
+
if ( ! empty ( $seopress_advanced_appearance_title_col_option ) ) {
|
30 |
+
foreach ($seopress_advanced_appearance_title_col_option as $key => $seopress_advanced_appearance_title_col_value)
|
31 |
+
$options[$key] = $seopress_advanced_appearance_title_col_value;
|
32 |
+
if (isset($seopress_advanced_appearance_title_col_option['seopress_advanced_appearance_title_col'])) {
|
33 |
+
return $seopress_advanced_appearance_title_col_option['seopress_advanced_appearance_title_col'];
|
34 |
+
}
|
35 |
+
}
|
36 |
+
}
|
37 |
+
function seopress_advanced_appearance_meta_desc_col_option() {
|
38 |
+
$seopress_advanced_appearance_meta_desc_col_option = get_option("seopress_advanced_option_name");
|
39 |
+
if ( ! empty ( $seopress_advanced_appearance_meta_desc_col_option ) ) {
|
40 |
+
foreach ($seopress_advanced_appearance_meta_desc_col_option as $key => $seopress_advanced_appearance_meta_desc_col_value)
|
41 |
+
$options[$key] = $seopress_advanced_appearance_meta_desc_col_value;
|
42 |
+
if (isset($seopress_advanced_appearance_meta_desc_col_option['seopress_advanced_appearance_meta_desc_col'])) {
|
43 |
+
return $seopress_advanced_appearance_meta_desc_col_option['seopress_advanced_appearance_meta_desc_col'];
|
44 |
+
}
|
45 |
+
}
|
46 |
+
}
|
47 |
+
|
48 |
+
if (seopress_advanced_appearance_title_col_option() !='' || seopress_advanced_appearance_meta_desc_col_option() !='') {
|
49 |
+
function seopress_add_columns() {
|
50 |
+
foreach (seopress_get_post_types() as $key => $value) {
|
51 |
+
add_filter('manage_'.$key.'_posts_columns', 'seopress_title_columns');
|
52 |
+
add_action('manage_'.$key.'_posts_custom_column', 'seopress_title_display_column', 10, 2);
|
53 |
+
}
|
54 |
+
|
55 |
+
function seopress_title_columns($columns) {
|
56 |
+
if(seopress_advanced_appearance_title_col_option() !='') {
|
57 |
+
$columns['seopress_title'] = __('Title tag', 'wp-seopress-pro');
|
58 |
+
}
|
59 |
+
if(seopress_advanced_appearance_meta_desc_col_option() !='') {
|
60 |
+
$columns['seopress_desc'] = __('Meta Desc.', 'wp-seopress-pro');
|
61 |
+
}
|
62 |
+
return $columns;
|
63 |
+
}
|
64 |
+
|
65 |
+
function seopress_title_display_column($column, $post_id) {
|
66 |
+
if ($column == 'seopress_title') {
|
67 |
+
echo get_post_meta($post_id, "_seopress_titles_title", true);
|
68 |
+
}
|
69 |
+
if ($column == 'seopress_desc') {
|
70 |
+
echo get_post_meta($post_id, "_seopress_titles_desc", true);
|
71 |
+
}
|
72 |
+
}
|
73 |
+
}
|
74 |
+
add_action('admin_menu', 'seopress_add_columns', 999);
|
75 |
+
}
|
76 |
+
|
77 |
//Stop words
|
78 |
function seopress_advanced_advanced_stop_words_option() {
|
79 |
$seopress_advanced_advanced_stop_words_option = get_option("seopress_advanced_option_name");
|
84 |
return $seopress_advanced_advanced_stop_words_option['seopress_advanced_advanced_stop_words'];
|
85 |
}
|
86 |
}
|
87 |
+
}
|
88 |
|
89 |
if (seopress_advanced_advanced_stop_words_option() !='') {
|
90 |
function seopress_advanced_advanced_stop_words_hook($slug) {
|
inc/functions/options-google-analytics.php
ADDED
@@ -0,0 +1,285 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
<?php
|
2 |
+
defined( 'ABSPATH' ) or die( 'Please don’t call the plugin directly. Thanks :)' );
|
3 |
+
|
4 |
+
//Google Analytics
|
5 |
+
//=================================================================================================
|
6 |
+
//Enabled
|
7 |
+
function seopress_google_analytics_enable_option() {
|
8 |
+
$seopress_google_analytics_enable_option = get_option("seopress_google_analytics_option_name");
|
9 |
+
if ( ! empty ( $seopress_google_analytics_enable_option ) ) {
|
10 |
+
foreach ($seopress_google_analytics_enable_option as $key => $seopress_google_analytics_enable_value)
|
11 |
+
$options[$key] = $seopress_google_analytics_enable_value;
|
12 |
+
if (isset($seopress_google_analytics_enable_option['seopress_google_analytics_enable'])) {
|
13 |
+
return $seopress_google_analytics_enable_option['seopress_google_analytics_enable'];
|
14 |
+
}
|
15 |
+
}
|
16 |
+
}
|
17 |
+
|
18 |
+
//UA
|
19 |
+
function seopress_google_analytics_ua_option() {
|
20 |
+
$seopress_google_analytics_ua_option = get_option("seopress_google_analytics_option_name");
|
21 |
+
if ( ! empty ( $seopress_google_analytics_ua_option ) ) {
|
22 |
+
foreach ($seopress_google_analytics_ua_option as $key => $seopress_google_analytics_ua_value)
|
23 |
+
$options[$key] = $seopress_google_analytics_ua_value;
|
24 |
+
if (isset($seopress_google_analytics_ua_option['seopress_google_analytics_ua'])) {
|
25 |
+
return $seopress_google_analytics_ua_option['seopress_google_analytics_ua'];
|
26 |
+
}
|
27 |
+
}
|
28 |
+
}
|
29 |
+
|
30 |
+
//User roles
|
31 |
+
function seopress_google_analytics_roles_option() {
|
32 |
+
$seopress_google_analytics_roles_option = get_option("seopress_google_analytics_option_name");
|
33 |
+
if ( ! empty ( $seopress_google_analytics_roles_option ) ) {
|
34 |
+
foreach ($seopress_google_analytics_roles_option as $key => $seopress_google_analytics_roles_value)
|
35 |
+
$options[$key] = $seopress_google_analytics_roles_value;
|
36 |
+
if (isset($seopress_google_analytics_roles_option['seopress_google_analytics_roles'])) {
|
37 |
+
return $seopress_google_analytics_roles_option['seopress_google_analytics_roles'];
|
38 |
+
}
|
39 |
+
}
|
40 |
+
}
|
41 |
+
|
42 |
+
//Remarketing
|
43 |
+
function seopress_google_analytics_remarketing_option() {
|
44 |
+
$seopress_google_analytics_remarketing_option = get_option("seopress_google_analytics_option_name");
|
45 |
+
if ( ! empty ( $seopress_google_analytics_remarketing_option ) ) {
|
46 |
+
foreach ($seopress_google_analytics_remarketing_option as $key => $seopress_google_analytics_remarketing_value)
|
47 |
+
$options[$key] = $seopress_google_analytics_remarketing_value;
|
48 |
+
if (isset($seopress_google_analytics_remarketing_option['seopress_google_analytics_remarketing'])) {
|
49 |
+
return $seopress_google_analytics_remarketing_option['seopress_google_analytics_remarketing'];
|
50 |
+
}
|
51 |
+
}
|
52 |
+
}
|
53 |
+
|
54 |
+
//IP Anonymization
|
55 |
+
function seopress_google_analytics_ip_anonymization_option() {
|
56 |
+
$seopress_google_analytics_ip_anonymization_option = get_option("seopress_google_analytics_option_name");
|
57 |
+
if ( ! empty ( $seopress_google_analytics_ip_anonymization_option ) ) {
|
58 |
+
foreach ($seopress_google_analytics_ip_anonymization_option as $key => $seopress_google_analytics_ip_anonymization_value)
|
59 |
+
$options[$key] = $seopress_google_analytics_ip_anonymization_value;
|
60 |
+
if (isset($seopress_google_analytics_ip_anonymization_option['seopress_google_analytics_ip_anonymization'])) {
|
61 |
+
return $seopress_google_analytics_ip_anonymization_option['seopress_google_analytics_ip_anonymization'];
|
62 |
+
}
|
63 |
+
}
|
64 |
+
}
|
65 |
+
|
66 |
+
//Link attribution
|
67 |
+
function seopress_google_analytics_link_attribution_option() {
|
68 |
+
$seopress_google_analytics_link_attribution_option = get_option("seopress_google_analytics_option_name");
|
69 |
+
if ( ! empty ( $seopress_google_analytics_link_attribution_option ) ) {
|
70 |
+
foreach ($seopress_google_analytics_link_attribution_option as $key => $seopress_google_analytics_link_attribution_value)
|
71 |
+
$options[$key] = $seopress_google_analytics_link_attribution_value;
|
72 |
+
if (isset($seopress_google_analytics_link_attribution_option['seopress_google_analytics_link_attribution'])) {
|
73 |
+
return $seopress_google_analytics_link_attribution_option['seopress_google_analytics_link_attribution'];
|
74 |
+
}
|
75 |
+
}
|
76 |
+
}
|
77 |
+
|
78 |
+
//Cross Domain Enable
|
79 |
+
function seopress_google_analytics_cross_enable_option() {
|
80 |
+
$seopress_google_analytics_cross_enable_option = get_option("seopress_google_analytics_option_name");
|
81 |
+
if ( ! empty ( $seopress_google_analytics_cross_enable_option ) ) {
|
82 |
+
foreach ($seopress_google_analytics_cross_enable_option as $key => $seopress_google_analytics_cross_enable_value)
|
83 |
+
$options[$key] = $seopress_google_analytics_cross_enable_value;
|
84 |
+
if (isset($seopress_google_analytics_cross_enable_option['seopress_google_analytics_cross_enable'])) {
|
85 |
+
return $seopress_google_analytics_cross_enable_option['seopress_google_analytics_cross_enable'];
|
86 |
+
}
|
87 |
+
}
|
88 |
+
}
|
89 |
+
|
90 |
+
//Cross Domain
|
91 |
+
function seopress_google_analytics_cross_domain_option() {
|
92 |
+
$seopress_google_analytics_cross_domain_option = get_option("seopress_google_analytics_option_name");
|
93 |
+
if ( ! empty ( $seopress_google_analytics_cross_domain_option ) ) {
|
94 |
+
foreach ($seopress_google_analytics_cross_domain_option as $key => $seopress_google_analytics_cross_domain_value)
|
95 |
+
$options[$key] = $seopress_google_analytics_cross_domain_value;
|
96 |
+
if (isset($seopress_google_analytics_cross_domain_option['seopress_google_analytics_cross_domain'])) {
|
97 |
+
return $seopress_google_analytics_cross_domain_option['seopress_google_analytics_cross_domain'];
|
98 |
+
}
|
99 |
+
}
|
100 |
+
}
|
101 |
+
|
102 |
+
//Custom Dimension Author
|
103 |
+
function seopress_google_analytics_cd_author_option() {
|
104 |
+
$seopress_google_analytics_cd_author_option = get_option("seopress_google_analytics_option_name");
|
105 |
+
if ( ! empty ( $seopress_google_analytics_cd_author_option ) ) {
|
106 |
+
foreach ($seopress_google_analytics_cd_author_option as $key => $seopress_google_analytics_cd_author_value)
|
107 |
+
$options[$key] = $seopress_google_analytics_cd_author_value;
|
108 |
+
if (isset($seopress_google_analytics_cd_author_option['seopress_google_analytics_cd_author'])) {
|
109 |
+
return $seopress_google_analytics_cd_author_option['seopress_google_analytics_cd_author'];
|
110 |
+
}
|
111 |
+
}
|
112 |
+
}
|
113 |
+
|
114 |
+
//Custom Dimension Category
|
115 |
+
function seopress_google_analytics_cd_category_option() {
|
116 |
+
$seopress_google_analytics_cd_category_option = get_option("seopress_google_analytics_option_name");
|
117 |
+
if ( ! empty ( $seopress_google_analytics_cd_category_option ) ) {
|
118 |
+
foreach ($seopress_google_analytics_cd_category_option as $key => $seopress_google_analytics_cd_category_value)
|
119 |
+
$options[$key] = $seopress_google_analytics_cd_category_value;
|
120 |
+
if (isset($seopress_google_analytics_cd_category_option['seopress_google_analytics_cd_category'])) {
|
121 |
+
return $seopress_google_analytics_cd_category_option['seopress_google_analytics_cd_category'];
|
122 |
+
}
|
123 |
+
}
|
124 |
+
}
|
125 |
+
|
126 |
+
//Custom Dimension Tag
|
127 |
+
function seopress_google_analytics_cd_tag_option() {
|
128 |
+
$seopress_google_analytics_cd_tag_option = get_option("seopress_google_analytics_option_name");
|
129 |
+
if ( ! empty ( $seopress_google_analytics_cd_tag_option ) ) {
|
130 |
+
foreach ($seopress_google_analytics_cd_tag_option as $key => $seopress_google_analytics_cd_tag_value)
|
131 |
+
$options[$key] = $seopress_google_analytics_cd_tag_value;
|
132 |
+
if (isset($seopress_google_analytics_cd_tag_option['seopress_google_analytics_cd_tag'])) {
|
133 |
+
return $seopress_google_analytics_cd_tag_option['seopress_google_analytics_cd_tag'];
|
134 |
+
}
|
135 |
+
}
|
136 |
+
}
|
137 |
+
|
138 |
+
//Custom Dimension Post Type
|
139 |
+
function seopress_google_analytics_cd_post_type_option() {
|
140 |
+
$seopress_google_analytics_cd_post_type_option = get_option("seopress_google_analytics_option_name");
|
141 |
+
if ( ! empty ( $seopress_google_analytics_cd_post_type_option ) ) {
|
142 |
+
foreach ($seopress_google_analytics_cd_post_type_option as $key => $seopress_google_analytics_cd_post_type_value)
|
143 |
+
$options[$key] = $seopress_google_analytics_cd_post_type_value;
|
144 |
+
if (isset($seopress_google_analytics_cd_post_type_option['seopress_google_analytics_cd_post_type'])) {
|
145 |
+
return $seopress_google_analytics_cd_post_type_option['seopress_google_analytics_cd_post_type'];
|
146 |
+
}
|
147 |
+
}
|
148 |
+
}
|
149 |
+
|
150 |
+
//Custom Dimension Logged In
|
151 |
+
function seopress_google_analytics_cd_logged_in_user_option() {
|
152 |
+
$seopress_google_analytics_cd_logged_in_user_option = get_option("seopress_google_analytics_option_name");
|
153 |
+
if ( ! empty ( $seopress_google_analytics_cd_logged_in_user_option ) ) {
|
154 |
+
foreach ($seopress_google_analytics_cd_logged_in_user_option as $key => $seopress_google_analytics_cd_logged_in_user_value)
|
155 |
+
$options[$key] = $seopress_google_analytics_cd_logged_in_user_value;
|
156 |
+
if (isset($seopress_google_analytics_cd_logged_in_user_option['seopress_google_analytics_cd_logged_in_user'])) {
|
157 |
+
return $seopress_google_analytics_cd_logged_in_user_option['seopress_google_analytics_cd_logged_in_user'];
|
158 |
+
}
|
159 |
+
}
|
160 |
+
}
|
161 |
+
|
162 |
+
//Build Custom GA
|
163 |
+
function seopress_google_analytics_js() {
|
164 |
+
$seopress_google_analytics_html =
|
165 |
+
"<!-- Google Analytics -->
|
166 |
+
<script>
|
167 |
+
(function(i,s,o,g,r,a,m){i['GoogleAnalyticsObject']=r;i[r]=i[r]||function(){
|
168 |
+
(i[r].q=i[r].q||[]).push(arguments)},i[r].l=1*new Date();a=s.createElement(o),
|
169 |
+
m=s.getElementsByTagName(o)[0];a.async=1;a.src=g;m.parentNode.insertBefore(a,m)
|
170 |
+
})(window,document,'script','https://www.google-analytics.com/analytics.js','ga');
|
171 |
+
";
|
172 |
+
if (seopress_google_analytics_ua_option() && seopress_google_analytics_ip_anonymization_option() =='1') {
|
173 |
+
$seopress_google_analytics_html .= "ga('create', '".seopress_google_analytics_ua_option()."', 'auto', {anonymizeIp: true});";
|
174 |
+
$seopress_google_analytics_html .= "\n";
|
175 |
+
} elseif (seopress_google_analytics_ua_option()) {
|
176 |
+
$seopress_google_analytics_html .= "ga('create', '".seopress_google_analytics_ua_option()."', 'auto');";
|
177 |
+
$seopress_google_analytics_html .= "\n";
|
178 |
+
}
|
179 |
+
|
180 |
+
if (seopress_google_analytics_cross_enable_option() =='1' && seopress_google_analytics_cross_domain_option()) {
|
181 |
+
$seopress_google_analytics_html .= "ga('require', 'linker');";
|
182 |
+
$seopress_google_analytics_html .= "\n";
|
183 |
+
$seopress_google_analytics_html .= "ga('linker:autoLink', ['".seopress_google_analytics_cross_domain_option()."'], false, true);";
|
184 |
+
$seopress_google_analytics_html .= "\n";
|
185 |
+
}
|
186 |
+
|
187 |
+
if (seopress_google_analytics_remarketing_option() =='1') {
|
188 |
+
$seopress_google_analytics_html .= "ga('require', 'displayfeatures');";
|
189 |
+
$seopress_google_analytics_html .= "\n";
|
190 |
+
}
|
191 |
+
|
192 |
+
if (seopress_google_analytics_link_attribution_option() =='1') {
|
193 |
+
$seopress_google_analytics_html .= "ga('require', 'linkid', 'linkid.js');";
|
194 |
+
$seopress_google_analytics_html .= "\n";
|
195 |
+
}
|
196 |
+
|
197 |
+
if (seopress_google_analytics_cd_author_option() !='') {
|
198 |
+
if (seopress_google_analytics_cd_author_option() !='none') {
|
199 |
+
if (is_singular()) {
|
200 |
+
$seopress_google_analytics_html .= "ga('set', '".seopress_google_analytics_cd_author_option()."', '".get_the_author()."');";
|
201 |
+
$seopress_google_analytics_html .= "\n";
|
202 |
+
}
|
203 |
+
}
|
204 |
+
}
|
205 |
+
|
206 |
+
if (seopress_google_analytics_cd_category_option() !='') {
|
207 |
+
if (seopress_google_analytics_cd_category_option() !='none') {
|
208 |
+
if (is_single() && has_category()) {
|
209 |
+
$categories = get_the_category();
|
210 |
+
|
211 |
+
if ( ! empty( $categories ) ) {
|
212 |
+
$get_first_category = esc_html( $categories[0]->name );
|
213 |
+
}
|
214 |
+
$seopress_google_analytics_html .= "ga('set', '".seopress_google_analytics_cd_category_option()."', '".$get_first_category."');";
|
215 |
+
$seopress_google_analytics_html .= "\n";
|
216 |
+
}
|
217 |
+
}
|
218 |
+
}
|
219 |
+
|
220 |
+
if (seopress_google_analytics_cd_tag_option() !='') {
|
221 |
+
if (seopress_google_analytics_cd_tag_option() !='none') {
|
222 |
+
if (is_single() && has_tag()) {
|
223 |
+
$tags = get_the_tags();
|
224 |
+
if ( ! empty( $tags ) ) {
|
225 |
+
$seopress_comma_count = count($tags);
|
226 |
+
foreach ($tags as $key => $value) {
|
227 |
+
$get_tags .= esc_html( $value->name );
|
228 |
+
if ( $key < $seopress_comma_count -1){
|
229 |
+
$get_tags .= ', ';
|
230 |
+
}
|
231 |
+
}
|
232 |
+
}
|
233 |
+
$seopress_google_analytics_html .= "ga('set', '".seopress_google_analytics_cd_tag_option()."', '".$get_tags."');";
|
234 |
+
$seopress_google_analytics_html .= "\n";
|
235 |
+
}
|
236 |
+
}
|
237 |
+
}
|
238 |
+
|
239 |
+
if (seopress_google_analytics_cd_post_type_option() !='') {
|
240 |
+
if (seopress_google_analytics_cd_post_type_option() !='none') {
|
241 |
+
if (is_single()) {
|
242 |
+
$seopress_google_analytics_html .= "ga('set', '".seopress_google_analytics_cd_post_type_option()."', '".get_post_type()."');";
|
243 |
+
$seopress_google_analytics_html .= "\n";
|
244 |
+
}
|
245 |
+
}
|
246 |
+
}
|
247 |
+
|
248 |
+
if (seopress_google_analytics_cd_logged_in_user_option() !='') {
|
249 |
+
if (seopress_google_analytics_cd_logged_in_user_option() !='none') {
|
250 |
+
if (wp_get_current_user()->user_login) {
|
251 |
+
$seopress_google_analytics_html .= "ga('set', '".seopress_google_analytics_cd_logged_in_user_option()."', '".wp_get_current_user()->user_login."');";
|
252 |
+
$seopress_google_analytics_html .= "\n";
|
253 |
+
}
|
254 |
+
}
|
255 |
+
}
|
256 |
+
|
257 |
+
$seopress_google_analytics_html .= "ga('send', 'pageview');";
|
258 |
+
$seopress_google_analytics_html .= "\n";
|
259 |
+
$seopress_google_analytics_html .= "</script>
|
260 |
+
<!-- End Google Analytics -->";
|
261 |
+
$seopress_google_analytics_html .= "\n";
|
262 |
+
|
263 |
+
echo $seopress_google_analytics_html;
|
264 |
+
}
|
265 |
+
|
266 |
+
if (seopress_google_analytics_enable_option() =='1' && seopress_google_analytics_ua_option() !='') {
|
267 |
+
if (is_user_logged_in()) {
|
268 |
+
global $wp_roles;
|
269 |
+
|
270 |
+
//Get current user role
|
271 |
+
if(isset(wp_get_current_user()->roles[0])) {
|
272 |
+
$seopress_user_role = wp_get_current_user()->roles[0];
|
273 |
+
//If current user role matchs values from SEOPress GA settings then apply
|
274 |
+
if (function_exists('seopress_google_analytics_roles_option')) {
|
275 |
+
if( array_key_exists( $seopress_user_role, seopress_google_analytics_roles_option())) {
|
276 |
+
//do nothing
|
277 |
+
} else {
|
278 |
+
add_action( 'wp_head', 'seopress_google_analytics_js', 999 );
|
279 |
+
}
|
280 |
+
}
|
281 |
+
}
|
282 |
+
} else {
|
283 |
+
add_action( 'wp_head', 'seopress_google_analytics_js', 999 );
|
284 |
+
}
|
285 |
+
}
|
inc/functions/options-import-export.php
CHANGED
@@ -17,8 +17,13 @@ function seopress_export_settings() {
|
|
17 |
$settings["seopress_activated"] = get_option( 'seopress_activated' );
|
18 |
$settings["seopress_titles_option_name"] = get_option( 'seopress_titles_option_name' );
|
19 |
$settings["seopress_social_option_name"] = get_option( 'seopress_social_option_name' );
|
20 |
-
$settings["
|
|
|
21 |
$settings["seopress_xml_sitemap_option_name"] = get_option( 'seopress_xml_sitemap_option_name' );
|
|
|
|
|
|
|
|
|
22 |
|
23 |
ignore_user_abort( true );
|
24 |
nocache_headers();
|
@@ -30,7 +35,7 @@ function seopress_export_settings() {
|
|
30 |
}
|
31 |
add_action( 'admin_init', 'seopress_export_settings' );
|
32 |
|
33 |
-
//Import
|
34 |
function seopress_import_settings() {
|
35 |
if( empty( $_POST['seopress_action'] ) || 'import_settings' != $_POST['seopress_action'] )
|
36 |
return;
|
@@ -52,14 +57,19 @@ function seopress_import_settings() {
|
|
52 |
update_option( 'seopress_activated', $settings["seopress_activated"] );
|
53 |
update_option( 'seopress_titles_option_name', $settings["seopress_titles_option_name"] );
|
54 |
update_option( 'seopress_social_option_name', $settings["seopress_social_option_name"] );
|
|
|
55 |
update_option( 'seopress_advanced_option_name', $settings["seopress_advanced_option_name"] );
|
56 |
update_option( 'seopress_xml_sitemap_option_name', $settings["seopress_xml_sitemap_option_name"] );
|
|
|
|
|
|
|
|
|
57 |
|
58 |
wp_safe_redirect( admin_url( 'admin.php?page=seopress-import-export' ) ); exit;
|
59 |
}
|
60 |
add_action( 'admin_init', 'seopress_import_settings' );
|
61 |
|
62 |
-
//Reset
|
63 |
function seopress_reset_settings() {
|
64 |
if( empty( $_POST['seopress_action'] ) || 'reset_settings' != $_POST['seopress_action'] )
|
65 |
return;
|
17 |
$settings["seopress_activated"] = get_option( 'seopress_activated' );
|
18 |
$settings["seopress_titles_option_name"] = get_option( 'seopress_titles_option_name' );
|
19 |
$settings["seopress_social_option_name"] = get_option( 'seopress_social_option_name' );
|
20 |
+
$settings["seopress_google_analytics_option_name"] = get_option( 'seopress_google_analytics_option_name' );
|
21 |
+
$settings["seopress_advanced_option_name"] = get_option( 'seopress_advanced_option_name' );
|
22 |
$settings["seopress_xml_sitemap_option_name"] = get_option( 'seopress_xml_sitemap_option_name' );
|
23 |
+
$settings["seopress_pro_option_name"] = get_option( 'seopress_pro_option_name' );
|
24 |
+
$settings["seopress_pro_license_key"] = get_option( 'seopress_pro_license_key' );
|
25 |
+
$settings["seopress_pro_license_status"] = get_option( 'seopress_pro_license_status' );
|
26 |
+
$settings["seopress_toggle"] = get_option( 'seopress_toggle' );
|
27 |
|
28 |
ignore_user_abort( true );
|
29 |
nocache_headers();
|
35 |
}
|
36 |
add_action( 'admin_init', 'seopress_export_settings' );
|
37 |
|
38 |
+
//Import SEOPress Settings from JSON
|
39 |
function seopress_import_settings() {
|
40 |
if( empty( $_POST['seopress_action'] ) || 'import_settings' != $_POST['seopress_action'] )
|
41 |
return;
|
57 |
update_option( 'seopress_activated', $settings["seopress_activated"] );
|
58 |
update_option( 'seopress_titles_option_name', $settings["seopress_titles_option_name"] );
|
59 |
update_option( 'seopress_social_option_name', $settings["seopress_social_option_name"] );
|
60 |
+
update_option( 'seopress_analytics_option_name', $settings["seopress_analytics_option_name"] );
|
61 |
update_option( 'seopress_advanced_option_name', $settings["seopress_advanced_option_name"] );
|
62 |
update_option( 'seopress_xml_sitemap_option_name', $settings["seopress_xml_sitemap_option_name"] );
|
63 |
+
update_option( 'seopress_pro_option_name', $settings["seopress_pro_option_name"] );
|
64 |
+
update_option( 'seopress_pro_license_key', $settings["seopress_pro_license_key"] );
|
65 |
+
update_option( 'seopress_pro_license_status', $settings["seopress_pro_license_status"] );
|
66 |
+
update_option( 'seopress_toggle', $settings["seopress_toggle"] );
|
67 |
|
68 |
wp_safe_redirect( admin_url( 'admin.php?page=seopress-import-export' ) ); exit;
|
69 |
}
|
70 |
add_action( 'admin_init', 'seopress_import_settings' );
|
71 |
|
72 |
+
//Reset SEOPress Settings
|
73 |
function seopress_reset_settings() {
|
74 |
if( empty( $_POST['seopress_action'] ) || 'reset_settings' != $_POST['seopress_action'] )
|
75 |
return;
|
inc/functions/options-social.php
CHANGED
@@ -14,7 +14,7 @@ function seopress_social_knowledge_type_option() {
|
|
14 |
return $seopress_social_knowledge_type_option['seopress_social_knowledge_type'];
|
15 |
}
|
16 |
}
|
17 |
-
}
|
18 |
|
19 |
//Person name
|
20 |
function seopress_social_knowledge_name_option() {
|
@@ -26,7 +26,7 @@ function seopress_social_knowledge_name_option() {
|
|
26 |
return $seopress_social_knowledge_name_option['seopress_social_knowledge_name'];
|
27 |
}
|
28 |
}
|
29 |
-
}
|
30 |
|
31 |
//Logo
|
32 |
function seopress_social_knowledge_img_option() {
|
@@ -38,7 +38,7 @@ function seopress_social_knowledge_img_option() {
|
|
38 |
return $seopress_social_knowledge_img_option['seopress_social_knowledge_img'];
|
39 |
}
|
40 |
}
|
41 |
-
}
|
42 |
|
43 |
//Accounts
|
44 |
//Facebook
|
@@ -51,7 +51,7 @@ function seopress_social_accounts_facebook_option() {
|
|
51 |
return $seopress_social_accounts_facebook_option['seopress_social_accounts_facebook'];
|
52 |
}
|
53 |
}
|
54 |
-
}
|
55 |
|
56 |
//Twitter
|
57 |
function seopress_social_accounts_twitter_option() {
|
@@ -63,7 +63,7 @@ function seopress_social_accounts_twitter_option() {
|
|
63 |
return $seopress_social_accounts_twitter_option['seopress_social_accounts_twitter'];
|
64 |
}
|
65 |
}
|
66 |
-
}
|
67 |
|
68 |
//Google +
|
69 |
function seopress_social_accounts_google_option() {
|
@@ -75,7 +75,7 @@ function seopress_social_accounts_google_option() {
|
|
75 |
return $seopress_social_accounts_google_option['seopress_social_accounts_google'];
|
76 |
}
|
77 |
}
|
78 |
-
}
|
79 |
|
80 |
//Pinterest
|
81 |
function seopress_social_accounts_pinterest_option() {
|
@@ -87,7 +87,7 @@ function seopress_social_accounts_pinterest_option() {
|
|
87 |
return $seopress_social_accounts_pinterest_option['seopress_social_accounts_pinterest'];
|
88 |
}
|
89 |
}
|
90 |
-
}
|
91 |
|
92 |
//Instagram
|
93 |
function seopress_social_accounts_instagram_option() {
|
@@ -99,7 +99,7 @@ function seopress_social_accounts_instagram_option() {
|
|
99 |
return $seopress_social_accounts_instagram_option['seopress_social_accounts_instagram'];
|
100 |
}
|
101 |
}
|
102 |
-
}
|
103 |
|
104 |
//YouTube
|
105 |
function seopress_social_accounts_youtube_option() {
|
@@ -111,7 +111,7 @@ function seopress_social_accounts_youtube_option() {
|
|
111 |
return $seopress_social_accounts_youtube_option['seopress_social_accounts_youtube'];
|
112 |
}
|
113 |
}
|
114 |
-
}
|
115 |
|
116 |
//LinkedIn
|
117 |
function seopress_social_accounts_linkedin_option() {
|
@@ -123,7 +123,7 @@ function seopress_social_accounts_linkedin_option() {
|
|
123 |
return $seopress_social_accounts_linkedin_option['seopress_social_accounts_linkedin'];
|
124 |
}
|
125 |
}
|
126 |
-
}
|
127 |
|
128 |
//MySpace
|
129 |
function seopress_social_accounts_myspace_option() {
|
@@ -135,7 +135,7 @@ function seopress_social_accounts_myspace_option() {
|
|
135 |
return $seopress_social_accounts_myspace_option['seopress_social_accounts_myspace'];
|
136 |
}
|
137 |
}
|
138 |
-
}
|
139 |
|
140 |
//Soundcloud
|
141 |
function seopress_social_accounts_soundcloud_option() {
|
@@ -147,7 +147,7 @@ function seopress_social_accounts_soundcloud_option() {
|
|
147 |
return $seopress_social_accounts_soundcloud_option['seopress_social_accounts_soundcloud'];
|
148 |
}
|
149 |
}
|
150 |
-
}
|
151 |
|
152 |
//Tumblr
|
153 |
function seopress_social_accounts_tumblr_option() {
|
@@ -159,7 +159,7 @@ function seopress_social_accounts_tumblr_option() {
|
|
159 |
return $seopress_social_accounts_tumblr_option['seopress_social_accounts_tumblr'];
|
160 |
}
|
161 |
}
|
162 |
-
}
|
163 |
|
164 |
function seopress_social_accounts_jsonld_hook() {
|
165 |
|
@@ -226,7 +226,7 @@ function seopress_social_accounts_jsonld_hook() {
|
|
226 |
if ($seopress_social_knowledge_img_option) {
|
227 |
echo '"image": '.$seopress_social_knowledge_img_option.',';
|
228 |
}
|
229 |
-
echo '"name" : '.$seopress_social_knowledge_name_option.',"url" : '.json_encode(
|
230 |
|
231 |
$seopress_social_accounts_facebook_option ='';
|
232 |
$seopress_social_accounts_twitter_option ='';
|
@@ -253,17 +253,17 @@ function seopress_social_accounts_jsonld_hook() {
|
|
253 |
echo '}';
|
254 |
echo '</script>';
|
255 |
echo "\n";
|
256 |
-
}
|
257 |
add_action( 'wp_head', 'seopress_social_accounts_jsonld_hook', 1 );
|
258 |
|
259 |
//Website Schema.org in JSON-LD
|
260 |
function seopress_social_website_option() {
|
261 |
-
$target =
|
262 |
echo '<script type="application/ld+json">';
|
263 |
echo '{
|
264 |
"@context": "http://schema.org",
|
265 |
"@type": "WebSite",
|
266 |
-
"url" : '.json_encode(
|
267 |
"potentialAction": {
|
268 |
"@type": "SearchAction",
|
269 |
"target": '.json_encode($target).',
|
@@ -288,7 +288,7 @@ function seopress_social_facebook_og_option() {
|
|
288 |
return $seopress_social_facebook_og_option['seopress_social_facebook_og'];
|
289 |
}
|
290 |
}
|
291 |
-
}
|
292 |
|
293 |
//OG URL
|
294 |
function seopress_social_facebook_og_url_hook() {
|
@@ -298,7 +298,7 @@ function seopress_social_facebook_og_url_hook() {
|
|
298 |
$current_url = home_url(add_query_arg(array(), $wp->request));
|
299 |
|
300 |
if (is_search()) {
|
301 |
-
$seopress_social_og_url = '<meta property="og:url" content="'.
|
302 |
} else {
|
303 |
$seopress_social_og_url = '<meta property="og:url" content="'.$current_url.'" />';
|
304 |
}
|
@@ -354,17 +354,17 @@ function seopress_social_fb_title_post_option() {
|
|
354 |
if ($_seopress_social_fb_title != '') {
|
355 |
return $_seopress_social_fb_title;
|
356 |
}
|
357 |
-
}
|
358 |
|
359 |
function seopress_social_fb_title_hook() {
|
360 |
if (seopress_social_facebook_og_option() =='1' && seopress_social_fb_title_post_option() !='') {
|
361 |
echo '<meta property="og:title" content="'.seopress_social_fb_title_post_option().'" />';
|
362 |
echo "\n";
|
363 |
} elseif (seopress_social_facebook_og_option() =='1' && get_the_title() !='') {
|
364 |
-
echo '<meta property="og:title" content="'.
|
365 |
echo "\n";
|
366 |
}
|
367 |
-
}
|
368 |
add_action( 'wp_head', 'seopress_social_fb_title_hook', 1 );
|
369 |
|
370 |
//Facebook Desc
|
@@ -373,7 +373,7 @@ function seopress_social_fb_desc_post_option() {
|
|
373 |
if ($_seopress_social_fb_desc != '') {
|
374 |
return $_seopress_social_fb_desc;
|
375 |
}
|
376 |
-
}
|
377 |
|
378 |
function seopress_social_fb_desc_hook() {
|
379 |
global $post;
|
@@ -385,7 +385,7 @@ function seopress_social_fb_desc_hook() {
|
|
385 |
echo '<meta property="og:description" content="'.wp_trim_words(esc_html(get_the_excerpt()), 30).'" />';
|
386 |
echo "\n";
|
387 |
}
|
388 |
-
}
|
389 |
add_action( 'wp_head', 'seopress_social_fb_desc_hook', 1 );
|
390 |
|
391 |
//Facebook Thumbnail
|
@@ -394,7 +394,7 @@ function seopress_social_fb_img_post_option() {
|
|
394 |
if ($_seopress_social_fb_img != '') {
|
395 |
return $_seopress_social_fb_img;
|
396 |
}
|
397 |
-
}
|
398 |
|
399 |
function seopress_social_facebook_img_option() {
|
400 |
$seopress_social_facebook_img_option = get_option("seopress_social_option_name");
|
@@ -405,7 +405,7 @@ function seopress_social_facebook_img_option() {
|
|
405 |
return $seopress_social_facebook_img_option['seopress_social_facebook_img'];
|
406 |
}
|
407 |
}
|
408 |
-
}
|
409 |
|
410 |
function seopress_social_fb_img_hook() {
|
411 |
if (seopress_social_facebook_og_option() =='1' && seopress_social_fb_img_post_option() !='') {
|
@@ -418,7 +418,7 @@ function seopress_social_fb_img_hook() {
|
|
418 |
echo '<meta property="og:image" content="'.seopress_social_facebook_img_option().'" />';
|
419 |
echo "\n";
|
420 |
}
|
421 |
-
}
|
422 |
add_action( 'wp_head', 'seopress_social_fb_img_hook', 1 );
|
423 |
|
424 |
//Twitter
|
@@ -432,7 +432,7 @@ function seopress_social_twitter_card_option() {
|
|
432 |
return $seopress_social_twitter_card_option['seopress_social_twitter_card'];
|
433 |
}
|
434 |
}
|
435 |
-
}
|
436 |
|
437 |
//Twitter Site
|
438 |
function seopress_social_twitter_card_site_hook() {
|
@@ -466,17 +466,17 @@ function seopress_social_twitter_title_post_option() {
|
|
466 |
if ($_seopress_social_twitter_title != '') {
|
467 |
return $_seopress_social_twitter_title;
|
468 |
}
|
469 |
-
}
|
470 |
|
471 |
function seopress_social_twitter_title_hook() {
|
472 |
if (seopress_social_twitter_card_option() =='1' && seopress_social_twitter_title_post_option() !='') {
|
473 |
echo '<meta name="twitter:title" content="'.seopress_social_twitter_title_post_option().'" />';
|
474 |
echo "\n";
|
475 |
} elseif (seopress_social_twitter_card_option() =='1' && get_the_title() !='') {
|
476 |
-
echo '<meta name="twitter:title" content="'.
|
477 |
echo "\n";
|
478 |
}
|
479 |
-
}
|
480 |
add_action( 'wp_head', 'seopress_social_twitter_title_hook', 1 );
|
481 |
|
482 |
//Twitter Desc
|
@@ -485,7 +485,7 @@ function seopress_social_twitter_desc_post_option() {
|
|
485 |
if ($_seopress_social_twitter_desc != '') {
|
486 |
return $_seopress_social_twitter_desc;
|
487 |
}
|
488 |
-
}
|
489 |
|
490 |
function seopress_social_twitter_desc_hook() {
|
491 |
global $post;
|
@@ -498,7 +498,7 @@ function seopress_social_twitter_desc_hook() {
|
|
498 |
echo '<meta name="twitter:description" content="'.wp_trim_words(esc_html(get_the_excerpt()), 30).'" />';
|
499 |
echo "\n";
|
500 |
}
|
501 |
-
}
|
502 |
add_action( 'wp_head', 'seopress_social_twitter_desc_hook', 1 );
|
503 |
|
504 |
//Twitter Thumbnail
|
@@ -507,7 +507,7 @@ function seopress_social_twitter_img_post_option() {
|
|
507 |
if ($_seopress_social_twitter_img != '') {
|
508 |
return $_seopress_social_twitter_img;
|
509 |
}
|
510 |
-
}
|
511 |
|
512 |
function seopress_social_twitter_img_option() {
|
513 |
$seopress_social_twitter_img_option = get_option("seopress_social_option_name");
|
@@ -518,7 +518,7 @@ function seopress_social_twitter_img_option() {
|
|
518 |
return $seopress_social_twitter_img_option['seopress_social_twitter_card_img'];
|
519 |
}
|
520 |
}
|
521 |
-
}
|
522 |
|
523 |
function seopress_social_twitter_img_size_option() {
|
524 |
$seopress_social_twitter_img_size_option = get_option("seopress_social_option_name");
|
@@ -529,7 +529,7 @@ function seopress_social_twitter_img_size_option() {
|
|
529 |
return $seopress_social_twitter_img_size_option['seopress_social_twitter_card_img_size'];
|
530 |
}
|
531 |
}
|
532 |
-
}
|
533 |
|
534 |
function seopress_social_twitter_img_hook() {
|
535 |
if (seopress_social_twitter_card_option() =='1') {
|
@@ -559,7 +559,5 @@ function seopress_social_twitter_img_hook() {
|
|
559 |
}
|
560 |
}
|
561 |
}
|
562 |
-
}
|
563 |
add_action( 'wp_head', 'seopress_social_twitter_img_hook', 1 );
|
564 |
-
|
565 |
-
|
14 |
return $seopress_social_knowledge_type_option['seopress_social_knowledge_type'];
|
15 |
}
|
16 |
}
|
17 |
+
}
|
18 |
|
19 |
//Person name
|
20 |
function seopress_social_knowledge_name_option() {
|
26 |
return $seopress_social_knowledge_name_option['seopress_social_knowledge_name'];
|
27 |
}
|
28 |
}
|
29 |
+
}
|
30 |
|
31 |
//Logo
|
32 |
function seopress_social_knowledge_img_option() {
|
38 |
return $seopress_social_knowledge_img_option['seopress_social_knowledge_img'];
|
39 |
}
|
40 |
}
|
41 |
+
}
|
42 |
|
43 |
//Accounts
|
44 |
//Facebook
|
51 |
return $seopress_social_accounts_facebook_option['seopress_social_accounts_facebook'];
|
52 |
}
|
53 |
}
|
54 |
+
}
|
55 |
|
56 |
//Twitter
|
57 |
function seopress_social_accounts_twitter_option() {
|
63 |
return $seopress_social_accounts_twitter_option['seopress_social_accounts_twitter'];
|
64 |
}
|
65 |
}
|
66 |
+
}
|
67 |
|
68 |
//Google +
|
69 |
function seopress_social_accounts_google_option() {
|
75 |
return $seopress_social_accounts_google_option['seopress_social_accounts_google'];
|
76 |
}
|
77 |
}
|
78 |
+
}
|
79 |
|
80 |
//Pinterest
|
81 |
function seopress_social_accounts_pinterest_option() {
|
87 |
return $seopress_social_accounts_pinterest_option['seopress_social_accounts_pinterest'];
|
88 |
}
|
89 |
}
|
90 |
+
}
|
91 |
|
92 |
//Instagram
|
93 |
function seopress_social_accounts_instagram_option() {
|
99 |
return $seopress_social_accounts_instagram_option['seopress_social_accounts_instagram'];
|
100 |
}
|
101 |
}
|
102 |
+
}
|
103 |
|
104 |
//YouTube
|
105 |
function seopress_social_accounts_youtube_option() {
|
111 |
return $seopress_social_accounts_youtube_option['seopress_social_accounts_youtube'];
|
112 |
}
|
113 |
}
|
114 |
+
}
|
115 |
|
116 |
//LinkedIn
|
117 |
function seopress_social_accounts_linkedin_option() {
|
123 |
return $seopress_social_accounts_linkedin_option['seopress_social_accounts_linkedin'];
|
124 |
}
|
125 |
}
|
126 |
+
}
|
127 |
|
128 |
//MySpace
|
129 |
function seopress_social_accounts_myspace_option() {
|
135 |
return $seopress_social_accounts_myspace_option['seopress_social_accounts_myspace'];
|
136 |
}
|
137 |
}
|
138 |
+
}
|
139 |
|
140 |
//Soundcloud
|
141 |
function seopress_social_accounts_soundcloud_option() {
|
147 |
return $seopress_social_accounts_soundcloud_option['seopress_social_accounts_soundcloud'];
|
148 |
}
|
149 |
}
|
150 |
+
}
|
151 |
|
152 |
//Tumblr
|
153 |
function seopress_social_accounts_tumblr_option() {
|
159 |
return $seopress_social_accounts_tumblr_option['seopress_social_accounts_tumblr'];
|
160 |
}
|
161 |
}
|
162 |
+
}
|
163 |
|
164 |
function seopress_social_accounts_jsonld_hook() {
|
165 |
|
226 |
if ($seopress_social_knowledge_img_option) {
|
227 |
echo '"image": '.$seopress_social_knowledge_img_option.',';
|
228 |
}
|
229 |
+
echo '"name" : '.$seopress_social_knowledge_name_option.',"url" : '.json_encode(get_home_url()).'';
|
230 |
|
231 |
$seopress_social_accounts_facebook_option ='';
|
232 |
$seopress_social_accounts_twitter_option ='';
|
253 |
echo '}';
|
254 |
echo '</script>';
|
255 |
echo "\n";
|
256 |
+
}
|
257 |
add_action( 'wp_head', 'seopress_social_accounts_jsonld_hook', 1 );
|
258 |
|
259 |
//Website Schema.org in JSON-LD
|
260 |
function seopress_social_website_option() {
|
261 |
+
$target = get_home_url().'/?s={search_term_string}';
|
262 |
echo '<script type="application/ld+json">';
|
263 |
echo '{
|
264 |
"@context": "http://schema.org",
|
265 |
"@type": "WebSite",
|
266 |
+
"url" : '.json_encode(get_home_url()).',
|
267 |
"potentialAction": {
|
268 |
"@type": "SearchAction",
|
269 |
"target": '.json_encode($target).',
|
288 |
return $seopress_social_facebook_og_option['seopress_social_facebook_og'];
|
289 |
}
|
290 |
}
|
291 |
+
}
|
292 |
|
293 |
//OG URL
|
294 |
function seopress_social_facebook_og_url_hook() {
|
298 |
$current_url = home_url(add_query_arg(array(), $wp->request));
|
299 |
|
300 |
if (is_search()) {
|
301 |
+
$seopress_social_og_url = '<meta property="og:url" content="'.get_home_url().'/search/'.get_search_query().'" />';
|
302 |
} else {
|
303 |
$seopress_social_og_url = '<meta property="og:url" content="'.$current_url.'" />';
|
304 |
}
|
354 |
if ($_seopress_social_fb_title != '') {
|
355 |
return $_seopress_social_fb_title;
|
356 |
}
|
357 |
+
}
|
358 |
|
359 |
function seopress_social_fb_title_hook() {
|
360 |
if (seopress_social_facebook_og_option() =='1' && seopress_social_fb_title_post_option() !='') {
|
361 |
echo '<meta property="og:title" content="'.seopress_social_fb_title_post_option().'" />';
|
362 |
echo "\n";
|
363 |
} elseif (seopress_social_facebook_og_option() =='1' && get_the_title() !='') {
|
364 |
+
echo '<meta property="og:title" content="'.the_title_attribute('echo=0').'" />';
|
365 |
echo "\n";
|
366 |
}
|
367 |
+
}
|
368 |
add_action( 'wp_head', 'seopress_social_fb_title_hook', 1 );
|
369 |
|
370 |
//Facebook Desc
|
373 |
if ($_seopress_social_fb_desc != '') {
|
374 |
return $_seopress_social_fb_desc;
|
375 |
}
|
376 |
+
}
|
377 |
|
378 |
function seopress_social_fb_desc_hook() {
|
379 |
global $post;
|
385 |
echo '<meta property="og:description" content="'.wp_trim_words(esc_html(get_the_excerpt()), 30).'" />';
|
386 |
echo "\n";
|
387 |
}
|
388 |
+
}
|
389 |
add_action( 'wp_head', 'seopress_social_fb_desc_hook', 1 );
|
390 |
|
391 |
//Facebook Thumbnail
|
394 |
if ($_seopress_social_fb_img != '') {
|
395 |
return $_seopress_social_fb_img;
|
396 |
}
|
397 |
+
}
|
398 |
|
399 |
function seopress_social_facebook_img_option() {
|
400 |
$seopress_social_facebook_img_option = get_option("seopress_social_option_name");
|
405 |
return $seopress_social_facebook_img_option['seopress_social_facebook_img'];
|
406 |
}
|
407 |
}
|
408 |
+
}
|
409 |
|
410 |
function seopress_social_fb_img_hook() {
|
411 |
if (seopress_social_facebook_og_option() =='1' && seopress_social_fb_img_post_option() !='') {
|
418 |
echo '<meta property="og:image" content="'.seopress_social_facebook_img_option().'" />';
|
419 |
echo "\n";
|
420 |
}
|
421 |
+
}
|
422 |
add_action( 'wp_head', 'seopress_social_fb_img_hook', 1 );
|
423 |
|
424 |
//Twitter
|
432 |
return $seopress_social_twitter_card_option['seopress_social_twitter_card'];
|
433 |
}
|
434 |
}
|
435 |
+
}
|
436 |
|
437 |
//Twitter Site
|
438 |
function seopress_social_twitter_card_site_hook() {
|
466 |
if ($_seopress_social_twitter_title != '') {
|
467 |
return $_seopress_social_twitter_title;
|
468 |
}
|
469 |
+
}
|
470 |
|
471 |
function seopress_social_twitter_title_hook() {
|
472 |
if (seopress_social_twitter_card_option() =='1' && seopress_social_twitter_title_post_option() !='') {
|
473 |
echo '<meta name="twitter:title" content="'.seopress_social_twitter_title_post_option().'" />';
|
474 |
echo "\n";
|
475 |
} elseif (seopress_social_twitter_card_option() =='1' && get_the_title() !='') {
|
476 |
+
echo '<meta name="twitter:title" content="'.the_title_attribute('echo=0').'" />';
|
477 |
echo "\n";
|
478 |
}
|
479 |
+
}
|
480 |
add_action( 'wp_head', 'seopress_social_twitter_title_hook', 1 );
|
481 |
|
482 |
//Twitter Desc
|
485 |
if ($_seopress_social_twitter_desc != '') {
|
486 |
return $_seopress_social_twitter_desc;
|
487 |
}
|
488 |
+
}
|
489 |
|
490 |
function seopress_social_twitter_desc_hook() {
|
491 |
global $post;
|
498 |
echo '<meta name="twitter:description" content="'.wp_trim_words(esc_html(get_the_excerpt()), 30).'" />';
|
499 |
echo "\n";
|
500 |
}
|
501 |
+
}
|
502 |
add_action( 'wp_head', 'seopress_social_twitter_desc_hook', 1 );
|
503 |
|
504 |
//Twitter Thumbnail
|
507 |
if ($_seopress_social_twitter_img != '') {
|
508 |
return $_seopress_social_twitter_img;
|
509 |
}
|
510 |
+
}
|
511 |
|
512 |
function seopress_social_twitter_img_option() {
|
513 |
$seopress_social_twitter_img_option = get_option("seopress_social_option_name");
|
518 |
return $seopress_social_twitter_img_option['seopress_social_twitter_card_img'];
|
519 |
}
|
520 |
}
|
521 |
+
}
|
522 |
|
523 |
function seopress_social_twitter_img_size_option() {
|
524 |
$seopress_social_twitter_img_size_option = get_option("seopress_social_option_name");
|
529 |
return $seopress_social_twitter_img_size_option['seopress_social_twitter_card_img_size'];
|
530 |
}
|
531 |
}
|
532 |
+
}
|
533 |
|
534 |
function seopress_social_twitter_img_hook() {
|
535 |
if (seopress_social_twitter_card_option() =='1') {
|
559 |
}
|
560 |
}
|
561 |
}
|
562 |
+
}
|
563 |
add_action( 'wp_head', 'seopress_social_twitter_img_hook', 1 );
|
|
|
|
inc/functions/options-titles-metas.php
CHANGED
@@ -35,6 +35,21 @@ if (get_option('blog_public') =='1') {
|
|
35 |
}
|
36 |
};
|
37 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
38 |
//Tax archives Titles
|
39 |
function seopress_titles_tax_titles_option() {
|
40 |
$queried_object = get_queried_object();
|
@@ -97,18 +112,6 @@ if (get_option('blog_public') =='1') {
|
|
97 |
}
|
98 |
}
|
99 |
};
|
100 |
-
|
101 |
-
//Paged archive Titles
|
102 |
-
function seopress_titles_archives_paged_title_option() {
|
103 |
-
$seopress_titles_archives_paged_title_option = get_option("seopress_titles_option_name");
|
104 |
-
if ( ! empty ( $seopress_titles_archives_paged_title_option ) ) {
|
105 |
-
foreach ($seopress_titles_archives_paged_title_option as $key => $seopress_titles_archives_paged_title_value)
|
106 |
-
$options[$key] = $seopress_titles_archives_paged_title_value;
|
107 |
-
if (isset($seopress_titles_archives_paged_title_option['seopress_titles_archives_paged_title'])) {
|
108 |
-
return $seopress_titles_archives_paged_title_option['seopress_titles_archives_paged_title'];
|
109 |
-
}
|
110 |
-
}
|
111 |
-
};
|
112 |
|
113 |
//Homepage Description
|
114 |
function seopress_titles_home_site_desc_option() {
|
@@ -137,6 +140,21 @@ if (get_option('blog_public') =='1') {
|
|
137 |
}
|
138 |
};
|
139 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
140 |
//Tax archives Desc
|
141 |
function seopress_titles_tax_desc_option() {
|
142 |
$queried_object = get_queried_object();
|
@@ -200,18 +218,6 @@ if (get_option('blog_public') =='1') {
|
|
200 |
}
|
201 |
};
|
202 |
|
203 |
-
//Paged archives Desc
|
204 |
-
function seopress_titles_archives_paged_desc_option() {
|
205 |
-
$seopress_titles_archives_paged_desc_option = get_option("seopress_titles_option_name");
|
206 |
-
if ( ! empty ( $seopress_titles_archives_paged_desc_option ) ) {
|
207 |
-
foreach ($seopress_titles_archives_paged_desc_option as $key => $seopress_titles_archives_paged_desc_value)
|
208 |
-
$options[$key] = $seopress_titles_archives_paged_desc_value;
|
209 |
-
if (isset($seopress_titles_archives_paged_desc_option['seopress_titles_archives_paged_desc'])) {
|
210 |
-
return $seopress_titles_archives_paged_desc_option['seopress_titles_archives_paged_desc'];
|
211 |
-
}
|
212 |
-
}
|
213 |
-
};
|
214 |
-
|
215 |
//THE Title Tag
|
216 |
function seopress_titles_the_title() {
|
217 |
|
@@ -248,7 +254,9 @@ if (get_option('blog_public') =='1') {
|
|
248 |
'%%term_title%%',
|
249 |
'%%term_description%%',
|
250 |
'%%search_keywords%%',
|
251 |
-
'%%current_pagination%%'
|
|
|
|
|
252 |
);
|
253 |
$seopress_titles_template_replace_array = array(
|
254 |
get_bloginfo('name'),
|
@@ -264,10 +272,28 @@ if (get_option('blog_public') =='1') {
|
|
264 |
single_term_title('', false),
|
265 |
term_description(),
|
266 |
get_search_query(),
|
267 |
-
$seopress_paged
|
|
|
|
|
268 |
);
|
269 |
|
270 |
-
if (
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
271 |
if (get_post_meta($post->ID,'_seopress_titles_title',true)) { //IS METABOXE
|
272 |
$seopress_titles_the_title = get_post_meta($post->ID,'_seopress_titles_title',true);
|
273 |
|
@@ -280,6 +306,11 @@ if (get_option('blog_public') =='1') {
|
|
280 |
$seopress_titles_title_template = str_replace($seopress_titles_template_variables_array, $seopress_titles_template_replace_array, $seopress_titles_single_titles_option);
|
281 |
return $seopress_titles_title_template;
|
282 |
}
|
|
|
|
|
|
|
|
|
|
|
283 |
} elseif ((is_tax() || is_category() || is_tag()) && seopress_titles_tax_titles_option()) { //IS TAX
|
284 |
$seopress_titles_tax_titles_option = seopress_titles_tax_titles_option();
|
285 |
|
@@ -305,19 +336,7 @@ if (get_option('blog_public') =='1') {
|
|
305 |
|
306 |
$seopress_titles_title_template = str_replace($seopress_titles_template_variables_array, $seopress_titles_template_replace_array, $seopress_titles_archives_404_title_option);
|
307 |
return $seopress_titles_title_template;
|
308 |
-
}
|
309 |
-
$seopress_titles_archives_paged_title_option = seopress_titles_archives_paged_title_option();
|
310 |
-
|
311 |
-
$seopress_titles_title_template = str_replace($seopress_titles_template_variables_array, $seopress_titles_template_replace_array, $seopress_titles_archives_paged_title_option);
|
312 |
-
return $seopress_titles_title_template;
|
313 |
-
} elseif (is_home() || is_front_page()) { //HOMEPAGE
|
314 |
-
if (seopress_titles_home_site_title_option() !='') {
|
315 |
-
$seopress_titles_the_title = seopress_titles_home_site_title_option();
|
316 |
-
|
317 |
-
$seopress_titles_title_template = str_replace($seopress_titles_template_variables_array, $seopress_titles_template_replace_array, $seopress_titles_the_title);
|
318 |
-
return $seopress_titles_title_template;
|
319 |
-
}
|
320 |
-
}
|
321 |
}
|
322 |
add_filter( 'pre_get_document_title', 'seopress_titles_the_title', 10 );
|
323 |
|
@@ -351,7 +370,9 @@ if (get_option('blog_public') =='1') {
|
|
351 |
'%%term_title%%',
|
352 |
'%%term_description%%',
|
353 |
'%%search_keywords%%',
|
354 |
-
'%%current_pagination%%'
|
|
|
|
|
355 |
);
|
356 |
$seopress_titles_template_replace_array = array(
|
357 |
get_bloginfo('name'),
|
@@ -367,10 +388,30 @@ if (get_option('blog_public') =='1') {
|
|
367 |
single_term_title('', false),
|
368 |
term_description(),
|
369 |
get_search_query(),
|
370 |
-
$seopress_paged
|
|
|
|
|
371 |
);
|
372 |
|
373 |
-
if (
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
374 |
if (get_post_meta($post->ID,'_seopress_titles_desc',true)) { //IS METABOXE
|
375 |
$seopress_titles_the_description_meta = get_post_meta($post->ID,'_seopress_titles_desc',true);
|
376 |
$seopress_titles_the_description = '<meta name="description" content="'.$seopress_titles_the_description_meta.'" />';
|
@@ -392,6 +433,12 @@ if (get_option('blog_public') =='1') {
|
|
392 |
$seopress_titles_description_template = str_replace($seopress_titles_template_variables_array, $seopress_titles_template_replace_array, $seopress_titles_the_description);
|
393 |
echo $seopress_titles_description_template;
|
394 |
}
|
|
|
|
|
|
|
|
|
|
|
|
|
395 |
} elseif ((is_tax() || is_category() || is_tag()) && seopress_titles_tax_desc_option()) { //IS TAX
|
396 |
$seopress_titles_the_description = '<meta name="description" content="'.seopress_titles_tax_desc_option().'" />';
|
397 |
$seopress_titles_the_description .= "\n";
|
@@ -422,20 +469,6 @@ if (get_option('blog_public') =='1') {
|
|
422 |
|
423 |
$seopress_titles_description_template = str_replace($seopress_titles_template_variables_array, $seopress_titles_template_replace_array, $seopress_titles_the_description);
|
424 |
echo $seopress_titles_description_template;
|
425 |
-
} elseif (is_paged() && seopress_titles_archives_paged_desc_option()) { //IS PAGED
|
426 |
-
$seopress_titles_the_description = '<meta name="description" content="'.seopress_titles_archives_paged_desc_option().'" />';
|
427 |
-
$seopress_titles_the_description .= "\n";
|
428 |
-
|
429 |
-
$seopress_titles_description_template = str_replace($seopress_titles_template_variables_array, $seopress_titles_template_replace_array, $seopress_titles_the_description);
|
430 |
-
echo $seopress_titles_description_template;
|
431 |
-
} elseif (is_home() || is_front_page()) { //HOMEPAGE
|
432 |
-
if (seopress_titles_home_site_desc_option() !='') { //IS GLOBAL
|
433 |
-
$seopress_titles_the_description = '<meta name="description" content="'.seopress_titles_home_site_desc_option().'" />';
|
434 |
-
$seopress_titles_the_description .= "\n";
|
435 |
-
|
436 |
-
$seopress_titles_description_template = str_replace($seopress_titles_template_variables_array, $seopress_titles_template_replace_array, $seopress_titles_the_description);
|
437 |
-
echo $seopress_titles_description_template;
|
438 |
-
}
|
439 |
}
|
440 |
}
|
441 |
add_action( 'wp_head', 'seopress_titles_the_description', 1 );
|
@@ -457,6 +490,21 @@ if (get_option('blog_public') =='1') {
|
|
457 |
}
|
458 |
};
|
459 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
460 |
//Tax archive noindex
|
461 |
function seopress_titles_tax_noindex_option() {
|
462 |
$queried_object = get_queried_object();
|
@@ -516,6 +564,42 @@ if (get_option('blog_public') =='1') {
|
|
516 |
}
|
517 |
};
|
518 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
519 |
function seopress_titles_noindex_bypass() {
|
520 |
if (seopress_titles_noindex_option()) { //Single CPT Global Advanced tab
|
521 |
return seopress_titles_noindex_option();
|
@@ -523,16 +607,26 @@ if (get_option('blog_public') =='1') {
|
|
523 |
return seopress_titles_single_cpt_noindex_option();
|
524 |
} elseif (is_singular() && seopress_titles_noindex_post_option() ) { //Single CPT Metaboxe
|
525 |
return seopress_titles_noindex_post_option();
|
|
|
|
|
526 |
} elseif ((is_tax() || is_category() || is_tag()) && seopress_titles_tax_noindex_option()) { //IS TAX
|
527 |
return seopress_titles_tax_noindex_option();
|
528 |
} elseif (is_author() && seopress_titles_archives_author_noindex_option()) { //IS Author archive
|
529 |
return seopress_titles_archives_author_noindex_option();
|
530 |
} elseif (is_date() && seopress_titles_archives_date_noindex_option()) { //IS Date archive
|
531 |
return seopress_titles_archives_date_noindex_option();
|
532 |
-
} elseif (
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
533 |
return "noindex";
|
534 |
}
|
535 |
-
}
|
536 |
|
537 |
//nofollow
|
538 |
//Single CPT nofollow
|
@@ -550,6 +644,21 @@ if (get_option('blog_public') =='1') {
|
|
550 |
}
|
551 |
};
|
552 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
553 |
//Tax archive nofollow
|
554 |
function seopress_titles_tax_nofollow_option() {
|
555 |
$queried_object = get_queried_object();
|
@@ -591,6 +700,8 @@ if (get_option('blog_public') =='1') {
|
|
591 |
return seopress_titles_single_cpt_nofollow_option();
|
592 |
} elseif (is_singular() && seopress_titles_nofollow_post_option() ) { //Single CPT Metaboxe
|
593 |
return seopress_titles_nofollow_post_option();
|
|
|
|
|
594 |
} elseif ((is_tax() || is_category() || is_tag()) && seopress_titles_tax_nofollow_option()) { //IS TAX
|
595 |
return seopress_titles_tax_nofollow_option();
|
596 |
}
|
@@ -612,15 +723,17 @@ if (get_option('blog_public') =='1') {
|
|
612 |
};
|
613 |
|
614 |
function seopress_titles_single_cpt_date_hook() {
|
615 |
-
if (
|
616 |
-
|
617 |
-
|
618 |
-
|
619 |
-
|
620 |
-
|
621 |
-
|
622 |
-
|
623 |
-
|
|
|
|
|
624 |
}
|
625 |
}
|
626 |
add_action( 'wp_head', 'seopress_titles_single_cpt_date_hook', 1 );
|
@@ -707,7 +820,7 @@ if (get_option('blog_public') =='1') {
|
|
707 |
elseif (is_singular() && seopress_titles_nosnippet_post_option()) {
|
708 |
return seopress_titles_nosnippet_post_option();
|
709 |
}
|
710 |
-
}
|
711 |
|
712 |
if (seopress_titles_noindex_bypass() || seopress_titles_nofollow_bypass() || seopress_titles_noodp_bypass() || seopress_titles_noarchive_bypass() || seopress_titles_nosnippet_bypass() ) {
|
713 |
function seopress_titles_advanced_robots_hook() {
|
@@ -807,7 +920,7 @@ if (seopress_titles_canonical_post_option()) {
|
|
807 |
global $wp;
|
808 |
$current_url = home_url(add_query_arg(array(), $wp->request));
|
809 |
if (is_search()) {
|
810 |
-
$seopress_titles_canonical = '<link rel="canonical" href="'.
|
811 |
} else {
|
812 |
$seopress_titles_canonical = '<link rel="canonical" href="'.$current_url.'" />';
|
813 |
}
|
35 |
}
|
36 |
};
|
37 |
|
38 |
+
//Archive CPT Titles
|
39 |
+
function seopress_titles_archive_titles_option() {
|
40 |
+
global $post;
|
41 |
+
$seopress_get_current_cpt = get_post_type($post);
|
42 |
+
|
43 |
+
$seopress_titles_archive_titles_option = get_option("seopress_titles_option_name");
|
44 |
+
if ( ! empty ( $seopress_titles_archive_titles_option ) ) {
|
45 |
+
foreach ($seopress_titles_archive_titles_option as $key => $seopress_titles_archive_titles_value)
|
46 |
+
$options[$key] = $seopress_titles_archive_titles_value;
|
47 |
+
if (isset($seopress_titles_archive_titles_option['seopress_titles_archive_titles'][$seopress_get_current_cpt]['title'])) {
|
48 |
+
return $seopress_titles_archive_titles_option['seopress_titles_archive_titles'][$seopress_get_current_cpt]['title'];
|
49 |
+
}
|
50 |
+
}
|
51 |
+
};
|
52 |
+
|
53 |
//Tax archives Titles
|
54 |
function seopress_titles_tax_titles_option() {
|
55 |
$queried_object = get_queried_object();
|
112 |
}
|
113 |
}
|
114 |
};
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
115 |
|
116 |
//Homepage Description
|
117 |
function seopress_titles_home_site_desc_option() {
|
140 |
}
|
141 |
};
|
142 |
|
143 |
+
//Archive CPT Description
|
144 |
+
function seopress_titles_archive_desc_option() {
|
145 |
+
global $post;
|
146 |
+
$seopress_get_current_cpt = get_post_type($post);
|
147 |
+
|
148 |
+
$seopress_titles_archive_desc_option = get_option("seopress_titles_option_name");
|
149 |
+
if ( ! empty ( $seopress_titles_archive_desc_option ) ) {
|
150 |
+
foreach ($seopress_titles_archive_desc_option as $key => $seopress_titles_archive_desc_value)
|
151 |
+
$options[$key] = $seopress_titles_archive_desc_value;
|
152 |
+
if (isset($seopress_titles_archive_desc_option['seopress_titles_archive_titles'][$seopress_get_current_cpt]['description'])) {
|
153 |
+
return $seopress_titles_archive_desc_option['seopress_titles_archive_titles'][$seopress_get_current_cpt]['description'];
|
154 |
+
}
|
155 |
+
}
|
156 |
+
};
|
157 |
+
|
158 |
//Tax archives Desc
|
159 |
function seopress_titles_tax_desc_option() {
|
160 |
$queried_object = get_queried_object();
|
218 |
}
|
219 |
};
|
220 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
221 |
//THE Title Tag
|
222 |
function seopress_titles_the_title() {
|
223 |
|
254 |
'%%term_title%%',
|
255 |
'%%term_description%%',
|
256 |
'%%search_keywords%%',
|
257 |
+
'%%current_pagination%%',
|
258 |
+
'%%cpt_plural%%',
|
259 |
+
'%%archive_date%%',
|
260 |
);
|
261 |
$seopress_titles_template_replace_array = array(
|
262 |
get_bloginfo('name'),
|
272 |
single_term_title('', false),
|
273 |
term_description(),
|
274 |
get_search_query(),
|
275 |
+
$seopress_paged,
|
276 |
+
post_type_archive_title('', false),
|
277 |
+
get_the_archive_title(),
|
278 |
);
|
279 |
|
280 |
+
if ( is_front_page() && is_home() && get_post_meta($post->ID,'_seopress_titles_title',true) =='') { //HOMEPAGE
|
281 |
+
if (seopress_titles_home_site_title_option() !='') {
|
282 |
+
$seopress_titles_the_title = seopress_titles_home_site_title_option();
|
283 |
+
|
284 |
+
$seopress_titles_title_template = str_replace($seopress_titles_template_variables_array, $seopress_titles_template_replace_array, $seopress_titles_the_title);
|
285 |
+
return $seopress_titles_title_template;
|
286 |
+
}
|
287 |
+
} elseif ( is_front_page() && get_post_meta($post->ID,'_seopress_titles_title',true) ==''){ //STATIC HOMEPAGE
|
288 |
+
if (seopress_titles_home_site_title_option() !='') {
|
289 |
+
$seopress_titles_the_title = seopress_titles_home_site_title_option();
|
290 |
+
|
291 |
+
$seopress_titles_title_template = str_replace($seopress_titles_template_variables_array, $seopress_titles_template_replace_array, $seopress_titles_the_title);
|
292 |
+
return $seopress_titles_title_template;
|
293 |
+
}
|
294 |
+
} elseif ( is_home() && get_post_meta($post->ID,'_seopress_titles_title',true) ==''){ //BLOG PAGE
|
295 |
+
//Do Nothing
|
296 |
+
} elseif (is_singular()) { //IS SINGULAR
|
297 |
if (get_post_meta($post->ID,'_seopress_titles_title',true)) { //IS METABOXE
|
298 |
$seopress_titles_the_title = get_post_meta($post->ID,'_seopress_titles_title',true);
|
299 |
|
306 |
$seopress_titles_title_template = str_replace($seopress_titles_template_variables_array, $seopress_titles_template_replace_array, $seopress_titles_single_titles_option);
|
307 |
return $seopress_titles_title_template;
|
308 |
}
|
309 |
+
} elseif (is_post_type_archive() && seopress_titles_archive_titles_option()) { //IS POST TYPE ARCHIVE
|
310 |
+
$seopress_titles_archive_titles_option = seopress_titles_archive_titles_option();
|
311 |
+
|
312 |
+
$seopress_titles_title_template = str_replace($seopress_titles_template_variables_array, $seopress_titles_template_replace_array, $seopress_titles_archive_titles_option);
|
313 |
+
return $seopress_titles_title_template;
|
314 |
} elseif ((is_tax() || is_category() || is_tag()) && seopress_titles_tax_titles_option()) { //IS TAX
|
315 |
$seopress_titles_tax_titles_option = seopress_titles_tax_titles_option();
|
316 |
|
336 |
|
337 |
$seopress_titles_title_template = str_replace($seopress_titles_template_variables_array, $seopress_titles_template_replace_array, $seopress_titles_archives_404_title_option);
|
338 |
return $seopress_titles_title_template;
|
339 |
+
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
340 |
}
|
341 |
add_filter( 'pre_get_document_title', 'seopress_titles_the_title', 10 );
|
342 |
|
370 |
'%%term_title%%',
|
371 |
'%%term_description%%',
|
372 |
'%%search_keywords%%',
|
373 |
+
'%%current_pagination%%',
|
374 |
+
'%%cpt_plural%%',
|
375 |
+
'%%archive_date%%',
|
376 |
);
|
377 |
$seopress_titles_template_replace_array = array(
|
378 |
get_bloginfo('name'),
|
388 |
single_term_title('', false),
|
389 |
term_description(),
|
390 |
get_search_query(),
|
391 |
+
$seopress_paged,
|
392 |
+
post_type_archive_title('', false),
|
393 |
+
get_the_archive_title(),
|
394 |
);
|
395 |
|
396 |
+
if ( is_front_page() && is_home() && get_post_meta($post->ID,'_seopress_titles_desc',true) =='' ) { //HOMEPAGE
|
397 |
+
if (seopress_titles_home_site_desc_option() !='' && get_post_meta($post->ID,'_seopress_titles_desc',true) =='') { //IS GLOBAL
|
398 |
+
$seopress_titles_the_description = '<meta name="description" content="'.seopress_titles_home_site_desc_option().'" />';
|
399 |
+
$seopress_titles_the_description .= "\n";
|
400 |
+
|
401 |
+
$seopress_titles_description_template = str_replace($seopress_titles_template_variables_array, $seopress_titles_template_replace_array, $seopress_titles_the_description);
|
402 |
+
echo $seopress_titles_description_template;
|
403 |
+
}
|
404 |
+
} elseif ( is_front_page() && get_post_meta($post->ID,'_seopress_titles_desc',true) ==''){ //STATIC HOMEPAGE
|
405 |
+
if (seopress_titles_home_site_desc_option() !='' && get_post_meta($post->ID,'_seopress_titles_desc',true) =='') { //IS GLOBAL
|
406 |
+
$seopress_titles_the_description = '<meta name="description" content="'.seopress_titles_home_site_desc_option().'" />';
|
407 |
+
$seopress_titles_the_description .= "\n";
|
408 |
+
|
409 |
+
$seopress_titles_description_template = str_replace($seopress_titles_template_variables_array, $seopress_titles_template_replace_array, $seopress_titles_the_description);
|
410 |
+
echo $seopress_titles_description_template;
|
411 |
+
}
|
412 |
+
} elseif ( is_home() && get_post_meta($post->ID,'_seopress_titles_desc',true) ==''){ //BLOG PAGE
|
413 |
+
//Do Nothing
|
414 |
+
} elseif (is_singular()) { //IS SINGLE
|
415 |
if (get_post_meta($post->ID,'_seopress_titles_desc',true)) { //IS METABOXE
|
416 |
$seopress_titles_the_description_meta = get_post_meta($post->ID,'_seopress_titles_desc',true);
|
417 |
$seopress_titles_the_description = '<meta name="description" content="'.$seopress_titles_the_description_meta.'" />';
|
433 |
$seopress_titles_description_template = str_replace($seopress_titles_template_variables_array, $seopress_titles_template_replace_array, $seopress_titles_the_description);
|
434 |
echo $seopress_titles_description_template;
|
435 |
}
|
436 |
+
} elseif (is_post_type_archive() && seopress_titles_archive_desc_option()) { //IS POST TYPE ARCHIVE
|
437 |
+
$seopress_titles_the_description = '<meta name="description" content="'.seopress_titles_archive_desc_option().'" />';
|
438 |
+
$seopress_titles_the_description .= "\n";
|
439 |
+
|
440 |
+
$seopress_titles_description_template = str_replace($seopress_titles_template_variables_array, $seopress_titles_template_replace_array, $seopress_titles_the_description);
|
441 |
+
echo $seopress_titles_description_template;
|
442 |
} elseif ((is_tax() || is_category() || is_tag()) && seopress_titles_tax_desc_option()) { //IS TAX
|
443 |
$seopress_titles_the_description = '<meta name="description" content="'.seopress_titles_tax_desc_option().'" />';
|
444 |
$seopress_titles_the_description .= "\n";
|
469 |
|
470 |
$seopress_titles_description_template = str_replace($seopress_titles_template_variables_array, $seopress_titles_template_replace_array, $seopress_titles_the_description);
|
471 |
echo $seopress_titles_description_template;
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
472 |
}
|
473 |
}
|
474 |
add_action( 'wp_head', 'seopress_titles_the_description', 1 );
|
490 |
}
|
491 |
};
|
492 |
|
493 |
+
//Archive CPT noindex
|
494 |
+
function seopress_titles_archive_cpt_noindex_option() {
|
495 |
+
global $post;
|
496 |
+
$seopress_get_current_cpt = get_post_type($post);
|
497 |
+
|
498 |
+
$seopress_titles_archive_cpt_noindex_option = get_option("seopress_titles_option_name");
|
499 |
+
if ( ! empty ( $seopress_titles_archive_cpt_noindex_option ) ) {
|
500 |
+
foreach ($seopress_titles_archive_cpt_noindex_option as $key => $seopress_titles_archive_cpt_noindex_value)
|
501 |
+
$options[$key] = $seopress_titles_archive_cpt_noindex_value;
|
502 |
+
if (isset($seopress_titles_archive_cpt_noindex_option['seopress_titles_archive_titles'][$seopress_get_current_cpt]['noindex'])) {
|
503 |
+
return $seopress_titles_archive_cpt_noindex_option['seopress_titles_archive_titles'][$seopress_get_current_cpt]['noindex'];
|
504 |
+
}
|
505 |
+
}
|
506 |
+
};
|
507 |
+
|
508 |
//Tax archive noindex
|
509 |
function seopress_titles_tax_noindex_option() {
|
510 |
$queried_object = get_queried_object();
|
564 |
}
|
565 |
};
|
566 |
|
567 |
+
//noindex WooCommerce page
|
568 |
+
include_once( ABSPATH . 'wp-admin/includes/plugin.php' );
|
569 |
+
if (is_plugin_active('wp-seopress-pro/seopress-pro.php')) {
|
570 |
+
//Cart page
|
571 |
+
function seopress_woocommerce_cart_page_no_index_option() {
|
572 |
+
$seopress_woocommerce_cart_page_no_index_option = get_option("seopress_pro_option_name");
|
573 |
+
if ( ! empty ( $seopress_woocommerce_cart_page_no_index_option ) ) {
|
574 |
+
foreach ($seopress_woocommerce_cart_page_no_index_option as $key => $seopress_woocommerce_cart_page_no_index_value)
|
575 |
+
$options[$key] = $seopress_woocommerce_cart_page_no_index_value;
|
576 |
+
if (isset($seopress_woocommerce_cart_page_no_index_option['seopress_woocommerce_cart_page_no_index'])) {
|
577 |
+
return $seopress_woocommerce_cart_page_no_index_option['seopress_woocommerce_cart_page_no_index'];
|
578 |
+
}
|
579 |
+
}
|
580 |
+
}
|
581 |
+
function seopress_woocommerce_checkout_page_no_index_option() {
|
582 |
+
$seopress_woocommerce_checkout_page_no_index_option = get_option("seopress_pro_option_name");
|
583 |
+
if ( ! empty ( $seopress_woocommerce_checkout_page_no_index_option ) ) {
|
584 |
+
foreach ($seopress_woocommerce_checkout_page_no_index_option as $key => $seopress_woocommerce_checkout_page_no_index_value)
|
585 |
+
$options[$key] = $seopress_woocommerce_checkout_page_no_index_value;
|
586 |
+
if (isset($seopress_woocommerce_checkout_page_no_index_option['seopress_woocommerce_checkout_page_no_index'])) {
|
587 |
+
return $seopress_woocommerce_checkout_page_no_index_option['seopress_woocommerce_checkout_page_no_index'];
|
588 |
+
}
|
589 |
+
}
|
590 |
+
}
|
591 |
+
function seopress_woocommerce_customer_account_page_no_index_option() {
|
592 |
+
$seopress_woocommerce_customer_account_page_no_index_option = get_option("seopress_pro_option_name");
|
593 |
+
if ( ! empty ( $seopress_woocommerce_customer_account_page_no_index_option ) ) {
|
594 |
+
foreach ($seopress_woocommerce_customer_account_page_no_index_option as $key => $seopress_woocommerce_customer_account_page_no_index_value)
|
595 |
+
$options[$key] = $seopress_woocommerce_customer_account_page_no_index_value;
|
596 |
+
if (isset($seopress_woocommerce_customer_account_page_no_index_option['seopress_woocommerce_customer_account_page_no_index'])) {
|
597 |
+
return $seopress_woocommerce_customer_account_page_no_index_option['seopress_woocommerce_customer_account_page_no_index'];
|
598 |
+
}
|
599 |
+
}
|
600 |
+
}
|
601 |
+
}
|
602 |
+
|
603 |
function seopress_titles_noindex_bypass() {
|
604 |
if (seopress_titles_noindex_option()) { //Single CPT Global Advanced tab
|
605 |
return seopress_titles_noindex_option();
|
607 |
return seopress_titles_single_cpt_noindex_option();
|
608 |
} elseif (is_singular() && seopress_titles_noindex_post_option() ) { //Single CPT Metaboxe
|
609 |
return seopress_titles_noindex_post_option();
|
610 |
+
} elseif (is_post_type_archive() && seopress_titles_archive_cpt_noindex_option() ) { //IS POST TYPE ARCHIVE
|
611 |
+
return seopress_titles_archive_cpt_noindex_option();
|
612 |
} elseif ((is_tax() || is_category() || is_tag()) && seopress_titles_tax_noindex_option()) { //IS TAX
|
613 |
return seopress_titles_tax_noindex_option();
|
614 |
} elseif (is_author() && seopress_titles_archives_author_noindex_option()) { //IS Author archive
|
615 |
return seopress_titles_archives_author_noindex_option();
|
616 |
} elseif (is_date() && seopress_titles_archives_date_noindex_option()) { //IS Date archive
|
617 |
return seopress_titles_archives_date_noindex_option();
|
618 |
+
} elseif (function_exists('is_cart') && (is_cart() && seopress_woocommerce_cart_page_no_index_option())) { //IS WooCommerce Cart page
|
619 |
+
return seopress_woocommerce_cart_page_no_index_option();
|
620 |
+
} elseif (function_exists('is_checkout') && (is_checkout() && seopress_woocommerce_checkout_page_no_index_option())) { //IS WooCommerce Checkout page
|
621 |
+
return seopress_woocommerce_checkout_page_no_index_option();
|
622 |
+
} elseif (function_exists('is_account_page') && (is_account_page() && seopress_woocommerce_customer_account_page_no_index_option())) { //IS WooCommerce Customer account pages
|
623 |
+
return seopress_woocommerce_customer_account_page_no_index_option();
|
624 |
+
} elseif (function_exists('is_wc_endpoint_url') && (is_wc_endpoint_url() && seopress_woocommerce_customer_account_page_no_index_option())) { //IS WooCommerce Customer account pages
|
625 |
+
return seopress_woocommerce_customer_account_page_no_index_option();
|
626 |
+
} elseif(is_404()) { //Is 404 page
|
627 |
return "noindex";
|
628 |
}
|
629 |
+
}
|
630 |
|
631 |
//nofollow
|
632 |
//Single CPT nofollow
|
644 |
}
|
645 |
};
|
646 |
|
647 |
+
//Archive CPT nofollow
|
648 |
+
function seopress_titles_archive_cpt_nofollow_option() {
|
649 |
+
global $post;
|
650 |
+
$seopress_get_current_cpt = get_post_type($post);
|
651 |
+
|
652 |
+
$seopress_titles_archive_cpt_nofollow_option = get_option("seopress_titles_option_name");
|
653 |
+
if ( ! empty ( $seopress_titles_archive_cpt_nofollow_option ) ) {
|
654 |
+
foreach ($seopress_titles_archive_cpt_nofollow_option as $key => $seopress_titles_archive_cpt_nofollow_value)
|
655 |
+
$options[$key] = $seopress_titles_archive_cpt_nofollow_value;
|
656 |
+
if (isset($seopress_titles_archive_cpt_nofollow_option['seopress_titles_archive_titles'][$seopress_get_current_cpt]['nofollow'])) {
|
657 |
+
return $seopress_titles_archive_cpt_nofollow_option['seopress_titles_archive_titles'][$seopress_get_current_cpt]['nofollow'];
|
658 |
+
}
|
659 |
+
}
|
660 |
+
};
|
661 |
+
|
662 |
//Tax archive nofollow
|
663 |
function seopress_titles_tax_nofollow_option() {
|
664 |
$queried_object = get_queried_object();
|
700 |
return seopress_titles_single_cpt_nofollow_option();
|
701 |
} elseif (is_singular() && seopress_titles_nofollow_post_option() ) { //Single CPT Metaboxe
|
702 |
return seopress_titles_nofollow_post_option();
|
703 |
+
} elseif (is_post_type_archive() && seopress_titles_archive_cpt_nofollow_option() ) { //IS POST TYPE ARCHIVE
|
704 |
+
return seopress_titles_archive_cpt_nofollow_option();
|
705 |
} elseif ((is_tax() || is_category() || is_tag()) && seopress_titles_tax_nofollow_option()) { //IS TAX
|
706 |
return seopress_titles_tax_nofollow_option();
|
707 |
}
|
723 |
};
|
724 |
|
725 |
function seopress_titles_single_cpt_date_hook() {
|
726 |
+
if (!is_front_page() && !is_home()) {
|
727 |
+
if (is_singular() && seopress_titles_single_cpt_date_option() =='1') {
|
728 |
+
$seopress_get_current_pub_post_date = get_the_date('c');
|
729 |
+
$seopress_get_current_up_post_date = get_the_modified_date('c');
|
730 |
+
echo '<meta property="article:published_time" content="'.$seopress_get_current_pub_post_date.'" />';
|
731 |
+
echo "\n";
|
732 |
+
echo '<meta property="article:modified_time" content="'.$seopress_get_current_up_post_date.'" />';
|
733 |
+
echo "\n";
|
734 |
+
echo '<meta property="og:updated_time" content="'.$seopress_get_current_up_post_date.'" />';
|
735 |
+
echo "\n";
|
736 |
+
}
|
737 |
}
|
738 |
}
|
739 |
add_action( 'wp_head', 'seopress_titles_single_cpt_date_hook', 1 );
|
820 |
elseif (is_singular() && seopress_titles_nosnippet_post_option()) {
|
821 |
return seopress_titles_nosnippet_post_option();
|
822 |
}
|
823 |
+
}
|
824 |
|
825 |
if (seopress_titles_noindex_bypass() || seopress_titles_nofollow_bypass() || seopress_titles_noodp_bypass() || seopress_titles_noarchive_bypass() || seopress_titles_nosnippet_bypass() ) {
|
826 |
function seopress_titles_advanced_robots_hook() {
|
920 |
global $wp;
|
921 |
$current_url = home_url(add_query_arg(array(), $wp->request));
|
922 |
if (is_search()) {
|
923 |
+
$seopress_titles_canonical = '<link rel="canonical" href="'.get_home_url().'/search/'.get_search_query().'" />';
|
924 |
} else {
|
925 |
$seopress_titles_canonical = '<link rel="canonical" href="'.$current_url.'" />';
|
926 |
}
|
inc/functions/options.php
CHANGED
@@ -10,40 +10,57 @@ add_action('init', 'seopress_enable', 999);
|
|
10 |
function seopress_enable() {
|
11 |
if (is_admin()){
|
12 |
require_once ( dirname( __FILE__ ) . '/options-import-export.php'); //Import Export
|
13 |
-
}
|
14 |
}
|
15 |
|
16 |
-
//Front END
|
17 |
-
|
18 |
-
|
19 |
-
|
20 |
-
|
21 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
22 |
}
|
23 |
}
|
24 |
-
|
25 |
add_action('init', 'seopress_load_redirections_options', 0);
|
26 |
function seopress_load_redirections_options() {
|
27 |
if (!is_admin()){
|
28 |
require_once ( dirname( __FILE__ ) . '/options-redirections.php'); //Redirections
|
29 |
}
|
30 |
}
|
31 |
-
|
32 |
-
add_action('init', 'seopress_load_sitemap', 999);
|
33 |
-
function seopress_load_sitemap() {
|
34 |
-
|
35 |
-
}
|
36 |
-
|
37 |
-
add_action('wp_head', 'seopress_load_advanced_options', 0);
|
38 |
-
function seopress_load_advanced_options() {
|
39 |
-
if (!is_admin()){
|
40 |
-
require_once ( dirname( __FILE__ ) . '/options-advanced.php'); //Advanced
|
41 |
}
|
42 |
-
|
43 |
}
|
44 |
-
|
45 |
-
|
46 |
-
|
47 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
48 |
}
|
49 |
}
|
10 |
function seopress_enable() {
|
11 |
if (is_admin()){
|
12 |
require_once ( dirname( __FILE__ ) . '/options-import-export.php'); //Import Export
|
13 |
+
}
|
14 |
}
|
15 |
|
16 |
+
//Front END
|
17 |
+
if (seopress_get_toggle_titles_option() =='1') {
|
18 |
+
add_action('wp_head', 'seopress_load_titles_options', 0);
|
19 |
+
function seopress_load_titles_options() {
|
20 |
+
if (!is_admin()){
|
21 |
+
require_once ( dirname( __FILE__ ) . '/options-titles-metas.php'); //Titles & metas
|
22 |
+
}
|
23 |
+
}
|
24 |
+
}
|
25 |
+
if (seopress_get_toggle_social_option() =='1') {
|
26 |
+
add_action('wp_head', 'seopress_load_social_options', 0);
|
27 |
+
function seopress_load_social_options() {
|
28 |
+
if (!is_admin()){
|
29 |
+
require_once ( dirname( __FILE__ ) . '/options-social.php'); //Social
|
30 |
+
}
|
31 |
+
}
|
32 |
+
}
|
33 |
+
if (seopress_get_toggle_google_analytics_option() =='1') {
|
34 |
+
add_action('wp_head', 'seopress_load_google_analytics_options', 0);
|
35 |
+
function seopress_load_google_analytics_options() {
|
36 |
+
if (!is_admin()){
|
37 |
+
require_once ( dirname( __FILE__ ) . '/options-google-analytics.php'); //Google Analytics
|
38 |
+
}
|
39 |
}
|
40 |
}
|
|
|
41 |
add_action('init', 'seopress_load_redirections_options', 0);
|
42 |
function seopress_load_redirections_options() {
|
43 |
if (!is_admin()){
|
44 |
require_once ( dirname( __FILE__ ) . '/options-redirections.php'); //Redirections
|
45 |
}
|
46 |
}
|
47 |
+
if (seopress_get_toggle_xml_sitemap_option() =='1') {
|
48 |
+
add_action('init', 'seopress_load_sitemap', 999);
|
49 |
+
function seopress_load_sitemap() {
|
50 |
+
require_once ( dirname( __FILE__ ) . '/options-sitemap.php'); //XML Sitemap
|
|
|
|
|
|
|
|
|
|
|
|
|
51 |
}
|
|
|
52 |
}
|
53 |
+
if (seopress_get_toggle_advanced_option() =='1') {
|
54 |
+
add_action('wp_head', 'seopress_load_advanced_options', 0);
|
55 |
+
function seopress_load_advanced_options() {
|
56 |
+
if (!is_admin()){
|
57 |
+
require_once ( dirname( __FILE__ ) . '/options-advanced.php'); //Advanced
|
58 |
+
}
|
59 |
+
}
|
60 |
+
add_action('init', 'seopress_load_advanced_admin_options', 0);
|
61 |
+
function seopress_load_advanced_admin_options() {
|
62 |
+
if (is_admin()){
|
63 |
+
require_once ( dirname( __FILE__ ) . '/options-advanced-admin.php'); //Advanced (admin)
|
64 |
+
}
|
65 |
}
|
66 |
}
|
inc/functions/sitemap/index.php
ADDED
@@ -0,0 +1,3 @@
|
|
|
|
|
|
|
1 |
+
<?php
|
2 |
+
// Silence is golden.
|
3 |
+
?>
|
inc/functions/sitemap/template-xml-sitemaps-single-term.php
CHANGED
@@ -8,29 +8,23 @@ Header('Content-type: text/xml');
|
|
8 |
Header("X-Robots-Tag: noindex", true);
|
9 |
|
10 |
function seopress_xml_sitemap_single_term() {
|
11 |
-
$path = basename(parse_url($_SERVER['REQUEST_URI'], PHP_URL_PATH));
|
12 |
$seopress_sitemaps = '<?xml version="1.0" encoding="UTF-8"?>';
|
13 |
-
$seopress_sitemaps .='<?xml-stylesheet type="text/xsl" href="'.get_home_url().'/sitemaps_xsl"?>';
|
14 |
$seopress_sitemaps .= "\n";
|
15 |
-
$seopress_sitemaps .= '<urlset xmlns:xsi="http://www.sitemaps.org/schemas/sitemap/0.9">';
|
16 |
-
|
17 |
-
|
18 |
-
|
19 |
-
|
20 |
-
|
21 |
-
|
22 |
-
|
23 |
-
|
24 |
-
|
25 |
-
|
26 |
-
|
27 |
-
|
28 |
-
$seopress_sitemaps .= "\n";
|
29 |
-
$seopress_sitemaps .= '</url>';
|
30 |
-
}
|
31 |
-
// }
|
32 |
-
// }
|
33 |
-
//}
|
34 |
$seopress_sitemaps .= '</urlset>';
|
35 |
$seopress_sitemaps .= "\n";
|
36 |
return $seopress_sitemaps;
|
8 |
Header("X-Robots-Tag: noindex", true);
|
9 |
|
10 |
function seopress_xml_sitemap_single_term() {
|
11 |
+
$path = basename(parse_url($_SERVER['REQUEST_URI'], PHP_URL_PATH), ".xml");
|
12 |
$seopress_sitemaps = '<?xml version="1.0" encoding="UTF-8"?>';
|
13 |
+
$seopress_sitemaps .='<?xml-stylesheet type="text/xsl" href="'.get_home_url().'/sitemaps_xsl.xsl"?>';
|
14 |
$seopress_sitemaps .= "\n";
|
15 |
+
$seopress_sitemaps .= '<urlset xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.sitemaps.org/schemas/sitemap/0.9 http://www.sitemaps.org/schemas/sitemap/0.9/sitemap.xsd" xmlns="http://www.sitemaps.org/schemas/sitemap/0.9">';
|
16 |
+
$args = array('taxonomy' => $path,'hide_empty' => false, 'number' => 1000);
|
17 |
+
$termslist = get_terms( $args );
|
18 |
+
foreach ( $termslist as $term ) {
|
19 |
+
$seopress_sitemaps .= "\n";
|
20 |
+
$seopress_sitemaps .= '<url>';
|
21 |
+
$seopress_sitemaps .= "\n";
|
22 |
+
$seopress_sitemaps .= '<loc>';
|
23 |
+
$seopress_sitemaps .= esc_url(get_term_link($term));
|
24 |
+
$seopress_sitemaps .= '</loc>';
|
25 |
+
$seopress_sitemaps .= "\n";
|
26 |
+
$seopress_sitemaps .= '</url>';
|
27 |
+
}
|
|
|
|
|
|
|
|
|
|
|
|
|
28 |
$seopress_sitemaps .= '</urlset>';
|
29 |
$seopress_sitemaps .= "\n";
|
30 |
return $seopress_sitemaps;
|
inc/functions/sitemap/template-xml-sitemaps-single.php
CHANGED
@@ -8,14 +8,14 @@ Header('Content-type: text/xml');
|
|
8 |
Header("X-Robots-Tag: noindex", true);
|
9 |
|
10 |
function seopress_xml_sitemap_single() {
|
11 |
-
$path = basename(parse_url($_SERVER['REQUEST_URI'], PHP_URL_PATH));
|
12 |
$seopress_sitemaps = '<?xml version="1.0" encoding="UTF-8"?>';
|
13 |
-
$seopress_sitemaps .='<?xml-stylesheet type="text/xsl" href="'.get_home_url().'/sitemaps_xsl"?>';
|
14 |
$seopress_sitemaps .= "\n";
|
15 |
-
$seopress_sitemaps .= '<urlset xmlns:xsi="http://www.sitemaps.org/schemas/sitemap/0.9">';
|
16 |
$seopress_sitemaps .= "\n";
|
17 |
|
18 |
-
$args = array( 'posts_per_page' => 1000, 'order'=> 'DESC', 'orderby' => '
|
19 |
$postslist = get_posts( $args );
|
20 |
foreach ( $postslist as $post ) {
|
21 |
setup_postdata( $post );
|
@@ -26,7 +26,7 @@ function seopress_xml_sitemap_single() {
|
|
26 |
$seopress_sitemaps .= '</loc>';
|
27 |
$seopress_sitemaps .= "\n";
|
28 |
$seopress_sitemaps .= '<lastmod>';
|
29 |
-
$seopress_sitemaps .= $post
|
30 |
$seopress_sitemaps .= '';
|
31 |
$seopress_sitemaps .= '</lastmod>';
|
32 |
$seopress_sitemaps .= "\n";
|
8 |
Header("X-Robots-Tag: noindex", true);
|
9 |
|
10 |
function seopress_xml_sitemap_single() {
|
11 |
+
$path = basename(parse_url($_SERVER['REQUEST_URI'], PHP_URL_PATH), ".xml");
|
12 |
$seopress_sitemaps = '<?xml version="1.0" encoding="UTF-8"?>';
|
13 |
+
$seopress_sitemaps .='<?xml-stylesheet type="text/xsl" href="'.get_home_url().'/sitemaps_xsl.xsl"?>';
|
14 |
$seopress_sitemaps .= "\n";
|
15 |
+
$seopress_sitemaps .= '<urlset xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.sitemaps.org/schemas/sitemap/0.9 http://www.sitemaps.org/schemas/sitemap/0.9/sitemap.xsd" xmlns="http://www.sitemaps.org/schemas/sitemap/0.9">';
|
16 |
$seopress_sitemaps .= "\n";
|
17 |
|
18 |
+
$args = array( 'posts_per_page' => 1000, 'order'=> 'DESC', 'orderby' => 'date', 'post_type' => $path, 'post_status' => 'publish', 'meta_key' => '_seopress_robots_index', 'meta_value' => 'yes', 'meta_compare' => 'NOT EXISTS' );
|
19 |
$postslist = get_posts( $args );
|
20 |
foreach ( $postslist as $post ) {
|
21 |
setup_postdata( $post );
|
26 |
$seopress_sitemaps .= '</loc>';
|
27 |
$seopress_sitemaps .= "\n";
|
28 |
$seopress_sitemaps .= '<lastmod>';
|
29 |
+
$seopress_sitemaps .= get_the_date('c', $post);
|
30 |
$seopress_sitemaps .= '';
|
31 |
$seopress_sitemaps .= '</lastmod>';
|
32 |
$seopress_sitemaps .= "\n";
|
inc/functions/sitemap/template-xml-sitemaps-xsl.php
CHANGED
@@ -8,16 +8,21 @@ Header('Content-type: text/xml');
|
|
8 |
Header("X-Robots-Tag: noindex", true);
|
9 |
|
10 |
function seopress_xml_sitemap_index_xsl() {
|
11 |
-
$seopress_sitemaps_xsl ='<?xml version="1.0" encoding="UTF-8"
|
12 |
-
|
13 |
-
|
14 |
-
xmlns:
|
15 |
-
|
16 |
-
|
17 |
-
|
|
|
|
|
18 |
$seopress_sitemaps_xsl .='<head>';
|
|
|
19 |
$seopress_sitemaps_xsl .='<title>XML Sitemaps</title>';
|
20 |
-
$seopress_sitemaps_xsl .='<
|
|
|
|
|
21 |
* {
|
22 |
margin: 0;
|
23 |
padding: 0;
|
@@ -105,7 +110,7 @@ xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
|
|
105 |
$seopress_sitemaps_xsl .='<body>';
|
106 |
$seopress_sitemaps_xsl .='<div id="main">';
|
107 |
$seopress_sitemaps_xsl .='<h1>SEOPress XML Sitemaps</h1>';
|
108 |
-
$seopress_sitemaps_xsl .='<p><a href="'.get_home_url().'/sitemaps">Index sitemaps</a></p>';
|
109 |
$seopress_sitemaps_xsl .='<div id="sitemaps">';
|
110 |
$seopress_sitemaps_xsl .='<div class="loc">';
|
111 |
$seopress_sitemaps_xsl .='URL';
|
@@ -114,21 +119,21 @@ xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
|
|
114 |
$seopress_sitemaps_xsl .='Last update';
|
115 |
$seopress_sitemaps_xsl .='</div>';
|
116 |
$seopress_sitemaps_xsl .='<ul>';
|
117 |
-
$seopress_sitemaps_xsl .='<xsl:for-each select="sitemapindex/sitemap">';
|
118 |
$seopress_sitemaps_xsl .='<li>';
|
119 |
-
$seopress_sitemaps_xsl .='<xsl:variable name="sitemap_loc"><xsl:value-of select="loc"/></xsl:variable>';
|
120 |
-
$seopress_sitemaps_xsl .='<span class="item-loc"><a href="{$sitemap_loc}"><xsl:value-of select="loc" /></a></span>';
|
121 |
-
$seopress_sitemaps_xsl .='<span class="item-lastmod"><xsl:value-of select="lastmod" /></span>';
|
122 |
$seopress_sitemaps_xsl .='</li>';
|
123 |
$seopress_sitemaps_xsl .='</xsl:for-each>';
|
124 |
$seopress_sitemaps_xsl .='</ul>';
|
125 |
|
126 |
$seopress_sitemaps_xsl .='<ul>';
|
127 |
-
$seopress_sitemaps_xsl .='<xsl:for-each select="urlset/url">';
|
128 |
$seopress_sitemaps_xsl .='<li>';
|
129 |
-
$seopress_sitemaps_xsl .='<xsl:variable name="url_loc"><xsl:value-of select="loc"/></xsl:variable>';
|
130 |
-
$seopress_sitemaps_xsl .='<span class="item-loc"><a href="{$url_loc}"><xsl:value-of select="loc" /></a></span>';
|
131 |
-
$seopress_sitemaps_xsl .='<span class="item-lastmod"><xsl:value-of select="lastmod" /></span>';
|
132 |
$seopress_sitemaps_xsl .='</li>';
|
133 |
$seopress_sitemaps_xsl .='</xsl:for-each>';
|
134 |
$seopress_sitemaps_xsl .='</ul>';
|
8 |
Header("X-Robots-Tag: noindex", true);
|
9 |
|
10 |
function seopress_xml_sitemap_index_xsl() {
|
11 |
+
$seopress_sitemaps_xsl ='<?xml version="1.0" encoding="UTF-8"?><xsl:stylesheet version="2.0"
|
12 |
+
xmlns:html="http://www.w3.org/TR/REC-html40"
|
13 |
+
xmlns:image="http://www.google.com/schemas/sitemap-image/1.1"
|
14 |
+
xmlns:sitemap="http://www.sitemaps.org/schemas/sitemap/0.9"
|
15 |
+
xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
|
16 |
+
<xsl:output method="html" version="1.0" encoding="UTF-8" indent="yes"/>
|
17 |
+
<xsl:template match="/">
|
18 |
+
<html xmlns="http://www.w3.org/1999/xhtml">';
|
19 |
+
$seopress_sitemaps_xsl .="\n";
|
20 |
$seopress_sitemaps_xsl .='<head>';
|
21 |
+
$seopress_sitemaps_xsl .="\n";
|
22 |
$seopress_sitemaps_xsl .='<title>XML Sitemaps</title>';
|
23 |
+
$seopress_sitemaps_xsl .= '<meta http-equiv="Content-Type" content="text/html; charset=utf-8"/>';
|
24 |
+
$seopress_sitemaps_xsl .="\n";
|
25 |
+
$seopress_sitemaps_xsl .='<style type="text/css">
|
26 |
* {
|
27 |
margin: 0;
|
28 |
padding: 0;
|
110 |
$seopress_sitemaps_xsl .='<body>';
|
111 |
$seopress_sitemaps_xsl .='<div id="main">';
|
112 |
$seopress_sitemaps_xsl .='<h1>SEOPress XML Sitemaps</h1>';
|
113 |
+
$seopress_sitemaps_xsl .='<p><a href="'.get_home_url().'/sitemaps.xml">Index sitemaps</a></p>';
|
114 |
$seopress_sitemaps_xsl .='<div id="sitemaps">';
|
115 |
$seopress_sitemaps_xsl .='<div class="loc">';
|
116 |
$seopress_sitemaps_xsl .='URL';
|
119 |
$seopress_sitemaps_xsl .='Last update';
|
120 |
$seopress_sitemaps_xsl .='</div>';
|
121 |
$seopress_sitemaps_xsl .='<ul>';
|
122 |
+
$seopress_sitemaps_xsl .='<xsl:for-each select="sitemap:sitemapindex/sitemap:sitemap">';
|
123 |
$seopress_sitemaps_xsl .='<li>';
|
124 |
+
$seopress_sitemaps_xsl .='<xsl:variable name="sitemap_loc"><xsl:value-of select="sitemap:loc"/></xsl:variable>';
|
125 |
+
$seopress_sitemaps_xsl .='<span class="item-loc"><a href="{$sitemap_loc}"><xsl:value-of select="sitemap:loc" /></a></span>';
|
126 |
+
$seopress_sitemaps_xsl .='<span class="item-lastmod"><xsl:value-of select="sitemap:lastmod" /></span>';
|
127 |
$seopress_sitemaps_xsl .='</li>';
|
128 |
$seopress_sitemaps_xsl .='</xsl:for-each>';
|
129 |
$seopress_sitemaps_xsl .='</ul>';
|
130 |
|
131 |
$seopress_sitemaps_xsl .='<ul>';
|
132 |
+
$seopress_sitemaps_xsl .='<xsl:for-each select="sitemap:urlset/sitemap:url">';
|
133 |
$seopress_sitemaps_xsl .='<li>';
|
134 |
+
$seopress_sitemaps_xsl .='<xsl:variable name="url_loc"><xsl:value-of select="sitemap:loc"/></xsl:variable>';
|
135 |
+
$seopress_sitemaps_xsl .='<span class="item-loc"><a href="{$url_loc}"><xsl:value-of select="sitemap:loc" /></a></span>';
|
136 |
+
$seopress_sitemaps_xsl .='<span class="item-lastmod"><xsl:value-of select="sitemap:lastmod" /></span>';
|
137 |
$seopress_sitemaps_xsl .='</li>';
|
138 |
$seopress_sitemaps_xsl .='</xsl:for-each>';
|
139 |
$seopress_sitemaps_xsl .='</ul>';
|
inc/functions/sitemap/template-xml-sitemaps.php
CHANGED
@@ -9,9 +9,9 @@ Header("X-Robots-Tag: noindex", true);
|
|
9 |
|
10 |
function seopress_xml_sitemap_index() {
|
11 |
$seopress_sitemaps ='<?xml version="1.0" encoding="UTF-8"?>';
|
12 |
-
$seopress_sitemaps .='<?xml-stylesheet type="text/xsl" href="'.get_home_url().'/sitemaps_xsl"?>';
|
13 |
$seopress_sitemaps .= "\n";
|
14 |
-
$seopress_sitemaps .='<sitemapindex xmlns:xsi="http://www.sitemaps.org/schemas/sitemap/0.9">';
|
15 |
|
16 |
//CPT
|
17 |
if (seopress_xml_sitemap_post_types_list_option() !='') {
|
@@ -22,18 +22,16 @@ function seopress_xml_sitemap_index() {
|
|
22 |
$seopress_sitemaps .= '<sitemap>';
|
23 |
$seopress_sitemaps .= "\n";
|
24 |
$seopress_sitemaps .= '<loc>';
|
25 |
-
$seopress_sitemaps .= home_url().'/sitemaps/'.$cpt_key;
|
26 |
$seopress_sitemaps .= '</loc>';
|
27 |
-
$
|
28 |
-
$seopress_sitemaps .= '<lastmod>';
|
29 |
-
|
30 |
-
$get_latest_post = new WP_Query(array('post_type' => $cpt_key, 'post_status' => 'publish', 'posts_per_page' => 1, 'orderby' => 'modified', 'order' => 'ASC'));
|
31 |
if($get_latest_post->have_posts()){
|
32 |
-
|
|
|
|
|
|
|
|
|
33 |
}
|
34 |
-
|
35 |
-
$seopress_sitemaps .= '</lastmod>';
|
36 |
-
$seopress_sitemaps .= "\n";
|
37 |
$seopress_sitemaps .= '</sitemap>';
|
38 |
}
|
39 |
}
|
@@ -49,7 +47,7 @@ function seopress_xml_sitemap_index() {
|
|
49 |
$seopress_sitemaps .= '<sitemap>';
|
50 |
$seopress_sitemaps .= "\n";
|
51 |
$seopress_sitemaps .= '<loc>';
|
52 |
-
$seopress_sitemaps .= home_url().'/sitemaps/'.$tax_key;
|
53 |
$seopress_sitemaps .= '</loc>';
|
54 |
$seopress_sitemaps .= "\n";
|
55 |
$seopress_sitemaps .= '</sitemap>';
|
@@ -57,8 +55,31 @@ function seopress_xml_sitemap_index() {
|
|
57 |
}
|
58 |
}
|
59 |
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
60 |
$seopress_sitemaps .= "\n";
|
61 |
$seopress_sitemaps .='</sitemapindex>';
|
|
|
62 |
return $seopress_sitemaps;
|
63 |
}
|
64 |
echo seopress_xml_sitemap_index();
|
9 |
|
10 |
function seopress_xml_sitemap_index() {
|
11 |
$seopress_sitemaps ='<?xml version="1.0" encoding="UTF-8"?>';
|
12 |
+
$seopress_sitemaps .='<?xml-stylesheet type="text/xsl" href="'.get_home_url().'/sitemaps_xsl.xsl"?>';
|
13 |
$seopress_sitemaps .= "\n";
|
14 |
+
$seopress_sitemaps .='<sitemapindex xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.sitemaps.org/schemas/sitemap/0.9 http://www.sitemaps.org/schemas/sitemap/0.9/siteindex.xsd" xmlns="http://www.sitemaps.org/schemas/sitemap/0.9">';
|
15 |
|
16 |
//CPT
|
17 |
if (seopress_xml_sitemap_post_types_list_option() !='') {
|
22 |
$seopress_sitemaps .= '<sitemap>';
|
23 |
$seopress_sitemaps .= "\n";
|
24 |
$seopress_sitemaps .= '<loc>';
|
25 |
+
$seopress_sitemaps .= home_url().'/sitemaps/'.$cpt_key.'.xml';
|
26 |
$seopress_sitemaps .= '</loc>';
|
27 |
+
$get_latest_post = new WP_Query(array('post_type' => $cpt_key, 'post_status' => 'publish', 'ignore_sticky_posts' => true, 'posts_per_page' => 1, 'order' => 'DESC', 'orderby' => 'date',));
|
|
|
|
|
|
|
28 |
if($get_latest_post->have_posts()){
|
29 |
+
$seopress_sitemaps .= "\n";
|
30 |
+
$seopress_sitemaps .= '<lastmod>';
|
31 |
+
$seopress_sitemaps .= date("c", strtotime($get_latest_post->posts[0]->post_date));
|
32 |
+
$seopress_sitemaps .= '</lastmod>';
|
33 |
+
$seopress_sitemaps .= "\n";
|
34 |
}
|
|
|
|
|
|
|
35 |
$seopress_sitemaps .= '</sitemap>';
|
36 |
}
|
37 |
}
|
47 |
$seopress_sitemaps .= '<sitemap>';
|
48 |
$seopress_sitemaps .= "\n";
|
49 |
$seopress_sitemaps .= '<loc>';
|
50 |
+
$seopress_sitemaps .= home_url().'/sitemaps/'.$tax_key.'.xml';
|
51 |
$seopress_sitemaps .= '</loc>';
|
52 |
$seopress_sitemaps .= "\n";
|
53 |
$seopress_sitemaps .= '</sitemap>';
|
55 |
}
|
56 |
}
|
57 |
}
|
58 |
+
|
59 |
+
//Google News
|
60 |
+
if (seopress_xml_sitemap_news_enable_option() !='') {
|
61 |
+
$seopress_sitemaps .= "\n";
|
62 |
+
$seopress_sitemaps .= '<sitemap>';
|
63 |
+
$seopress_sitemaps .= "\n";
|
64 |
+
$seopress_sitemaps .= '<loc>';
|
65 |
+
$seopress_sitemaps .= home_url().'/sitemaps/news.xml';
|
66 |
+
$seopress_sitemaps .= '</loc>';
|
67 |
+
$seopress_sitemaps .= "\n";
|
68 |
+
$seopress_sitemaps .= '<lastmod>';
|
69 |
+
|
70 |
+
$get_latest_post = new WP_Query(array('post_type' => 'post', 'post_status' => 'publish', 'ignore_sticky_posts' => true, 'posts_per_page' => 1, 'orderby' => 'date', 'order' => 'DESC'));
|
71 |
+
if($get_latest_post->have_posts()){
|
72 |
+
$seopress_sitemaps .= date("c", strtotime($get_latest_post->posts[0]->post_date));
|
73 |
+
}
|
74 |
+
|
75 |
+
$seopress_sitemaps .= '</lastmod>';
|
76 |
+
$seopress_sitemaps .= "\n";
|
77 |
+
$seopress_sitemaps .= '</sitemap>';
|
78 |
+
}
|
79 |
+
|
80 |
$seopress_sitemaps .= "\n";
|
81 |
$seopress_sitemaps .='</sitemapindex>';
|
82 |
+
|
83 |
return $seopress_sitemaps;
|
84 |
}
|
85 |
echo seopress_xml_sitemap_index();
|
languages/wp-seopress-fr_FR.mo
CHANGED
Binary file
|
languages/wp-seopress-fr_FR.po
CHANGED
@@ -2,8 +2,8 @@ msgid ""
|
|
2 |
msgstr ""
|
3 |
"Project-Id-Version: SEOPress\n"
|
4 |
"Report-Msgid-Bugs-To: http://wordpress.org/tag/wp-cloudy\n"
|
5 |
-
"POT-Creation-Date: 2016-
|
6 |
-
"PO-Revision-Date: 2016-
|
7 |
"Last-Translator: \n"
|
8 |
"Language-Team: Benjamin DENIS <contact@seopress.org>\n"
|
9 |
"Language: fr_FR\n"
|
@@ -17,321 +17,462 @@ msgstr ""
|
|
17 |
"X-Poedit-SourceCharset: UTF-8\n"
|
18 |
"X-Poedit-SearchPath-0: .\n"
|
19 |
|
20 |
-
#: inc/admin/admin-
|
21 |
msgid "SEOPress"
|
22 |
msgstr "SEOPress"
|
23 |
|
24 |
-
#: inc/admin/admin-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
25 |
msgid "Titles settings"
|
26 |
msgstr "Paramètres de titres"
|
27 |
|
28 |
-
#: inc/admin/admin-metaboxes.php:
|
29 |
-
#: inc/admin/admin.php:
|
|
|
30 |
msgid "Advanced"
|
31 |
msgstr "Avancé"
|
32 |
|
33 |
-
#: inc/admin/admin-metaboxes.php:
|
34 |
-
#: inc/admin/admin.php:
|
35 |
msgid "Social"
|
36 |
msgstr "Social"
|
37 |
|
38 |
-
#: inc/admin/admin-metaboxes.php:
|
39 |
msgid "Redirections"
|
40 |
msgstr "Redirections"
|
41 |
|
42 |
-
#: inc/admin/admin-metaboxes.php:
|
|
|
|
|
|
|
|
|
43 |
msgid "Title"
|
44 |
msgstr "Titre"
|
45 |
|
46 |
-
#: inc/admin/admin-metaboxes.php:
|
47 |
msgid "Enter your title"
|
48 |
msgstr "Entrez votre titre"
|
49 |
|
50 |
-
#: inc/admin/admin-metaboxes.php:
|
51 |
msgid "(maximum recommended limit)"
|
52 |
msgstr "(limite maximale recommandée)"
|
53 |
|
54 |
-
#: inc/admin/admin-metaboxes.php:
|
|
|
55 |
msgid "Meta description"
|
56 |
msgstr "Meta description"
|
57 |
|
58 |
-
#: inc/admin/admin-metaboxes.php:
|
59 |
msgid "Enter your meta description"
|
60 |
msgstr "Entrez votre méta description"
|
61 |
|
62 |
-
#: inc/admin/admin-metaboxes.php:
|
63 |
msgid "Google Snippet Preview"
|
64 |
-
msgstr "Google Snippet
|
65 |
|
66 |
-
#: inc/admin/admin-metaboxes.php:
|
67 |
msgid "This is what your page will look like in Google search results"
|
68 |
msgstr ""
|
69 |
"Voilà à quoi ressemblera votre page dans les résultats de recherche Google"
|
70 |
|
71 |
-
#: inc/admin/admin-metaboxes.php:
|
72 |
-
#: inc/admin/admin.php:
|
73 |
-
#: inc/admin/admin.php:
|
74 |
msgid "noindex"
|
75 |
msgstr "noindex"
|
76 |
|
77 |
-
#: inc/admin/admin-metaboxes.php:
|
78 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
79 |
msgid "nofollow"
|
80 |
msgstr "nofollow"
|
81 |
|
82 |
-
#: inc/admin/admin-metaboxes.php:
|
83 |
-
|
|
|
|
|
|
|
|
|
84 |
msgid "noodp"
|
85 |
msgstr "noodp"
|
86 |
|
87 |
-
#: inc/admin/admin-metaboxes.php:
|
88 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
89 |
msgid "noimageindex"
|
90 |
msgstr "noimageindex"
|
91 |
|
92 |
-
#: inc/admin/admin-metaboxes.php:
|
93 |
-
|
|
|
|
|
|
|
|
|
94 |
msgid "noarchive"
|
95 |
msgstr "noarchive"
|
96 |
|
97 |
-
#: inc/admin/admin-metaboxes.php:
|
98 |
-
|
|
|
|
|
|
|
|
|
99 |
msgid "nosnippet"
|
100 |
msgstr "nosnippet"
|
101 |
|
102 |
-
#: inc/admin/admin-metaboxes.php:
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
103 |
msgid "Canonical URL"
|
104 |
msgstr "URL Canonique"
|
105 |
|
106 |
-
#: inc/admin/admin-metaboxes.php:
|
107 |
msgid "Default value: "
|
108 |
msgstr "Valeur par défaut: "
|
109 |
|
110 |
-
#: inc/admin/admin-metaboxes.php:
|
111 |
msgid "Facebook Title"
|
112 |
msgstr "Titre Facebook"
|
113 |
|
114 |
-
#: inc/admin/admin-metaboxes.php:
|
115 |
msgid "Enter your Facebook title"
|
116 |
msgstr "Entrez votre titre Facebook"
|
117 |
|
118 |
-
#: inc/admin/admin-metaboxes.php:
|
119 |
msgid "Facebook description"
|
120 |
msgstr "Description Facebook"
|
121 |
|
122 |
-
#: inc/admin/admin-metaboxes.php:
|
123 |
msgid "Enter your Facebook description"
|
124 |
msgstr "Entrez votre description Facebook"
|
125 |
|
126 |
-
#: inc/admin/admin-metaboxes.php:
|
127 |
msgid "Facebook Thumbnail"
|
128 |
msgstr "Miniature Facebook"
|
129 |
|
130 |
-
#: inc/admin/admin-metaboxes.php:
|
131 |
-
|
|
|
|
|
|
|
|
|
132 |
msgid "Select your default thumbnail"
|
133 |
msgstr "Sélectionnez votre miniature par défaut"
|
134 |
|
135 |
-
#: inc/admin/admin-metaboxes.php:
|
136 |
-
#: inc/admin/admin.php:
|
137 |
msgid "Upload an Image"
|
138 |
-
msgstr "
|
139 |
|
140 |
-
#: inc/admin/admin-metaboxes.php:
|
141 |
msgid "Twitter Title"
|
142 |
msgstr "Titre Twitter"
|
143 |
|
144 |
-
#: inc/admin/admin-metaboxes.php:
|
145 |
msgid "Enter your Twitter title"
|
146 |
msgstr "Entrez votre titre Twitter"
|
147 |
|
148 |
-
#: inc/admin/admin-metaboxes.php:
|
149 |
msgid "Twitter description"
|
150 |
msgstr "Description Twitter"
|
151 |
|
152 |
-
#: inc/admin/admin-metaboxes.php:
|
153 |
msgid "Enter your Twitter description"
|
154 |
msgstr "Entrez votre description Twitter"
|
155 |
|
156 |
-
#: inc/admin/admin-metaboxes.php:
|
157 |
msgid "Twitter Thumbnail"
|
158 |
msgstr "Miniature Twitter"
|
159 |
|
160 |
-
#: inc/admin/admin-metaboxes.php:
|
|
|
|
|
|
|
|
|
161 |
msgid "Enable redirection?"
|
162 |
msgstr "Activer la redirection ?"
|
163 |
|
164 |
-
#: inc/admin/admin-metaboxes.php:
|
165 |
msgid "URL redirection"
|
166 |
msgstr "URL de redirection"
|
167 |
|
168 |
-
#: inc/admin/admin-metaboxes.php:
|
169 |
msgid "301"
|
170 |
msgstr "301"
|
171 |
|
172 |
-
#: inc/admin/admin-metaboxes.php:
|
173 |
msgid "302"
|
174 |
msgstr "302"
|
175 |
|
176 |
-
#: inc/admin/admin-metaboxes.php:
|
177 |
msgid "307"
|
178 |
msgstr "307"
|
179 |
|
180 |
-
#: inc/admin/admin-metaboxes.php:
|
181 |
msgid "Enter your URL"
|
182 |
msgstr "Saisissez votre URL"
|
183 |
|
184 |
-
#: inc/admin/admin-metaboxes.php:
|
185 |
msgid "Test your URL"
|
186 |
msgstr "Tester votre URL"
|
187 |
|
188 |
-
#: inc/admin/admin.php:
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
189 |
msgid "Titles & Metas"
|
190 |
msgstr "Titres et Métas"
|
191 |
|
192 |
-
#: inc/admin/admin.php:
|
193 |
msgid "XML Sitemap"
|
194 |
msgstr "Sitemap XML"
|
195 |
|
196 |
-
#: inc/admin/admin.php:
|
|
|
|
|
|
|
|
|
197 |
msgid "Import / Export / Reset settings"
|
198 |
msgstr "Import / Export / Réinitialisation des paramètres"
|
199 |
|
200 |
-
#: inc/admin/admin.php:
|
201 |
msgid "Import / Export / Reset"
|
202 |
msgstr "Importer / Exporter / Réinitialiser"
|
203 |
|
204 |
-
#: inc/admin/admin.php:
|
205 |
#, php-format
|
206 |
msgid "%%sitetitle%%"
|
207 |
msgstr "%%sitetitle%%"
|
208 |
|
209 |
-
#: inc/admin/admin.php:
|
|
|
|
|
210 |
msgid "Site Title"
|
211 |
msgstr "Titre du Site"
|
212 |
|
213 |
-
#: inc/admin/admin.php:
|
214 |
#, php-format
|
215 |
msgid "%%tagline%%"
|
216 |
msgstr "%%tagline%%"
|
217 |
|
218 |
-
#: inc/admin/admin.php:
|
219 |
msgid "Tagline"
|
220 |
msgstr "Slogan du site"
|
221 |
|
222 |
-
#: inc/admin/admin.php:
|
223 |
#, php-format
|
224 |
msgid "%%post_title%%"
|
225 |
msgstr "%%post_title%%"
|
226 |
|
227 |
-
#: inc/admin/admin.php:
|
228 |
msgid "Post Title (post, page, custom post type)"
|
229 |
msgstr "Titre du post (article, page, type d'article personnalisé)"
|
230 |
|
231 |
-
#: inc/admin/admin.php:
|
232 |
#, php-format
|
233 |
msgid "%%post_excerpt%%"
|
234 |
msgstr "%%post_excerpt%%"
|
235 |
|
236 |
-
#: inc/admin/admin.php:
|
237 |
msgid "Post excerpt"
|
238 |
msgstr "Extrait du post"
|
239 |
|
240 |
-
#: inc/admin/admin.php:
|
241 |
#, php-format
|
242 |
msgid "%%post_date%%"
|
243 |
msgstr "%%post_date%%"
|
244 |
|
245 |
-
#: inc/admin/admin.php:
|
246 |
msgid "Post date"
|
247 |
msgstr "Date du post"
|
248 |
|
249 |
-
#: inc/admin/admin.php:
|
250 |
#, php-format
|
251 |
msgid "%%post_author%%"
|
252 |
msgstr "%%post_author%%"
|
253 |
|
254 |
-
#: inc/admin/admin.php:
|
255 |
msgid "Post author"
|
256 |
msgstr "Auteur du post"
|
257 |
|
258 |
-
#: inc/admin/admin.php:
|
259 |
#, php-format
|
260 |
msgid "%%_category_title%%"
|
261 |
msgstr "%%_category_title%%"
|
262 |
|
263 |
-
#: inc/admin/admin.php:
|
264 |
msgid "Category title"
|
265 |
msgstr "Titre de catégorie"
|
266 |
|
267 |
-
#: inc/admin/admin.php:
|
268 |
#, php-format
|
269 |
msgid "%%_category_description%%"
|
270 |
msgstr "%%_category_description%%"
|
271 |
|
272 |
-
#: inc/admin/admin.php:
|
273 |
msgid "Category description"
|
274 |
msgstr "Description de la catégorie"
|
275 |
|
276 |
-
#: inc/admin/admin.php:
|
277 |
#, php-format
|
278 |
msgid "%%tag_title%%"
|
279 |
msgstr "%%tag_title%%"
|
280 |
|
281 |
-
#: inc/admin/admin.php:
|
282 |
msgid "Tag title"
|
283 |
-
msgstr "Titre
|
284 |
|
285 |
-
#: inc/admin/admin.php:
|
286 |
#, php-format
|
287 |
msgid "%%tag_description%%"
|
288 |
msgstr "%%tag_description%%"
|
289 |
|
290 |
-
#: inc/admin/admin.php:
|
291 |
msgid "Tag description"
|
292 |
-
msgstr "Description
|
293 |
|
294 |
-
#: inc/admin/admin.php:
|
295 |
#, php-format
|
296 |
msgid "%%term_title%%"
|
297 |
msgstr "%%term_title%%"
|
298 |
|
299 |
-
#: inc/admin/admin.php:
|
300 |
msgid "Term title"
|
301 |
msgstr "Titre du terme"
|
302 |
|
303 |
-
#: inc/admin/admin.php:
|
304 |
#, php-format
|
305 |
msgid "%%term_description%%"
|
306 |
msgstr "%%term_description%%"
|
307 |
|
308 |
-
#: inc/admin/admin.php:
|
309 |
msgid "Term description"
|
310 |
msgstr "Description du terme"
|
311 |
|
312 |
-
#: inc/admin/admin.php:
|
313 |
#, php-format
|
314 |
msgid "%%search_keywords%%"
|
315 |
msgstr "%%search_keywords%%"
|
316 |
|
317 |
-
#: inc/admin/admin.php:
|
318 |
msgid "Search keywords"
|
319 |
msgstr "Mots clés de recherche"
|
320 |
|
321 |
-
#: inc/admin/admin.php:
|
322 |
#, php-format
|
323 |
msgid "%%current_pagination%%"
|
324 |
msgstr "%%current_pagination%%"
|
325 |
|
326 |
-
#: inc/admin/admin.php:
|
327 |
msgid "Current number page"
|
328 |
msgstr "Numéro de page actuel"
|
329 |
|
330 |
-
#: inc/admin/admin.php:
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
331 |
msgid "Templates variables"
|
332 |
msgstr "Modèles de variables"
|
333 |
|
334 |
-
#: inc/admin/admin.php:
|
335 |
msgid ""
|
336 |
"Discourage search engines from indexing this site is <strong>ON!</strong> "
|
337 |
"None of the following settings will be applied."
|
@@ -339,63 +480,67 @@ msgstr ""
|
|
339 |
"Décourager les moteurs de recherche d’indexer ce site est <strong>actif !</"
|
340 |
"strong> Aucun des paramètres suivants ne s’appliqueront."
|
341 |
|
342 |
-
#: inc/admin/admin.php:
|
343 |
msgid "Change this settings"
|
344 |
msgstr "Changer ce paramètre"
|
345 |
|
346 |
-
#: inc/admin/admin.php:
|
347 |
msgid "Home"
|
348 |
msgstr "Accueil"
|
349 |
|
350 |
-
#: inc/admin/admin.php:
|
351 |
msgid "Single Post Types"
|
352 |
-
msgstr "
|
353 |
-
|
354 |
-
#: inc/admin/admin.php:96 inc/admin/admin.php:137
|
355 |
-
msgid "Taxonomies"
|
356 |
-
msgstr "Taxonomies"
|
357 |
|
358 |
-
#: inc/admin/admin.php:
|
359 |
msgid "Archives"
|
360 |
msgstr "Archives"
|
361 |
|
362 |
-
#: inc/admin/admin.php:
|
|
|
|
|
|
|
|
|
363 |
msgid "General"
|
364 |
msgstr "Général"
|
365 |
|
366 |
-
#: inc/admin/admin.php:
|
367 |
msgid "Post Types"
|
368 |
msgstr "Types d'article"
|
369 |
|
370 |
-
#: inc/admin/admin.php:
|
371 |
msgid "Knowledge Graph"
|
372 |
msgstr "Knowledge Graph"
|
373 |
|
374 |
-
#: inc/admin/admin.php:
|
375 |
msgid "Your social accounts"
|
376 |
msgstr "Vos comptes sociaux"
|
377 |
|
378 |
-
#: inc/admin/admin.php:
|
379 |
msgid "Facebook"
|
380 |
msgstr "Facebook"
|
381 |
|
382 |
-
#: inc/admin/admin.php:
|
383 |
msgid "Twitter"
|
384 |
msgstr "Twitter"
|
385 |
|
386 |
-
#: inc/admin/admin.php:
|
387 |
-
msgid "
|
388 |
-
msgstr "
|
389 |
|
390 |
-
#: inc/admin/admin.php:
|
391 |
-
msgid "
|
392 |
-
msgstr "
|
|
|
|
|
|
|
|
|
393 |
|
394 |
-
#: inc/admin/admin.php:
|
395 |
msgid "Export Settings"
|
396 |
msgstr "Exporter Paramètres"
|
397 |
|
398 |
-
#: inc/admin/admin.php:
|
399 |
msgid ""
|
400 |
"Export the plugin settings for this site as a .json file. This allows you to "
|
401 |
"easily import the configuration into another site."
|
@@ -404,15 +549,15 @@ msgstr ""
|
|
404 |
"vous permet d'importer facilement votre configuration dans un autre site "
|
405 |
"WordPress."
|
406 |
|
407 |
-
#: inc/admin/admin.php:
|
408 |
msgid "Export"
|
409 |
msgstr "Exporter"
|
410 |
|
411 |
-
#: inc/admin/admin.php:
|
412 |
msgid "Import Settings"
|
413 |
msgstr "Importer Paramètres"
|
414 |
|
415 |
-
#: inc/admin/admin.php:
|
416 |
msgid ""
|
417 |
"Import the plugin settings from a .json file. This file can be obtained by "
|
418 |
"exporting the settings on another site using the form above."
|
@@ -421,244 +566,457 @@ msgstr ""
|
|
421 |
"être obtenu en exportant les paramètres depuis un autre site en utilisant le "
|
422 |
"formulaire ci-dessus."
|
423 |
|
424 |
-
#: inc/admin/admin.php:
|
425 |
msgid "Import"
|
426 |
msgstr "Importer"
|
427 |
|
428 |
-
#: inc/admin/admin.php:
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
429 |
msgid "Reset All Settings"
|
430 |
msgstr "Tout réinitialiser"
|
431 |
|
432 |
-
#: inc/admin/admin.php:
|
433 |
msgid ""
|
434 |
"<strong>WARNING:</strong> Delete all options related to SEOPress in your "
|
435 |
-
"database."
|
436 |
msgstr ""
|
437 |
"<strong>AVERTISSEMENT:</strong> Supprime toutes les options liées à SEOPress "
|
438 |
-
"
|
439 |
|
440 |
-
#: inc/admin/admin.php:
|
441 |
msgid "Reset settings"
|
442 |
msgstr "Réinitialiser les paramètres"
|
443 |
|
444 |
-
#: inc/admin/admin.php:
|
445 |
-
msgid "
|
446 |
-
msgstr "
|
447 |
|
448 |
-
#: inc/admin/admin.php:
|
449 |
-
msgid "
|
450 |
-
|
|
|
|
|
|
|
|
|
|
|
451 |
|
452 |
-
#: inc/admin/admin.php:
|
453 |
-
msgid "
|
454 |
-
msgstr "
|
455 |
|
456 |
-
#: inc/admin/admin.php:
|
457 |
-
msgid "
|
458 |
-
msgstr "
|
459 |
|
460 |
-
#: inc/admin/admin.php:
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
461 |
msgid "Your site is not visible to Search Engines!"
|
462 |
-
msgstr "
|
|
|
|
|
|
|
|
|
463 |
|
464 |
-
#: inc/admin/admin.php:
|
465 |
-
#: inc/admin/admin.php:
|
466 |
msgid "Fix this!"
|
467 |
msgstr "Régler!"
|
468 |
|
469 |
-
#: inc/admin/admin.php:
|
470 |
msgid "Your site title is empty!"
|
471 |
msgstr "Le titre de votre site est vide !"
|
472 |
|
473 |
-
#: inc/admin/admin.php:
|
474 |
msgid ""
|
475 |
"Your permalinks are not SEO Friendly! Enable pretty permalinks to fix this."
|
476 |
msgstr ""
|
477 |
"Vos permaliens ne sont pas SEO Friendly ! Veuillez activer la réécriture "
|
478 |
"d'URL pour résoudre cela."
|
479 |
|
480 |
-
#: inc/admin/admin.php:
|
481 |
msgid "You don't have an XML Sitemap!"
|
482 |
msgstr "Vous n'avez pas de Sitemap XML !"
|
483 |
|
484 |
-
#: inc/admin/admin.php:
|
|
|
|
|
|
|
|
|
485 |
msgid "Titles & metas"
|
486 |
msgstr "Titres et Métas"
|
487 |
|
488 |
-
#: inc/admin/admin.php:
|
489 |
msgid "Manage all your titles & metas"
|
490 |
msgstr "Gérer tous vos titres et métas"
|
491 |
|
492 |
-
#: inc/admin/admin.php:
|
493 |
-
#: inc/admin/admin.php:
|
|
|
|
|
|
|
494 |
msgid "Manage"
|
495 |
msgstr "Gérer"
|
496 |
|
497 |
-
#: inc/admin/admin.php:
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
498 |
msgid "Manage your XML Sitemap"
|
499 |
msgstr "Gérer votre Sitemap XML"
|
500 |
|
501 |
-
#: inc/admin/admin.php:
|
502 |
msgid "Open Graph, Twitter Card, Google Knowledge Graph and more..."
|
503 |
msgstr "Open Graph, Twitter Card, Google Knowledge Graph et plus..."
|
504 |
|
505 |
-
#: inc/admin/admin.php:
|
|
|
|
|
|
|
|
|
506 |
msgid "Advanced SEO options for advanced users!"
|
507 |
msgstr "Options SEO avancées pour utilisateurs avancés !"
|
508 |
|
509 |
-
#: inc/admin/admin.php:
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
510 |
msgid "Import / export SEOPress settings from site to site."
|
511 |
msgstr "Importer / Exporter les paramètres d'un site à un autre"
|
512 |
|
513 |
-
#: inc/admin/admin.php:
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
514 |
msgid "Site title"
|
515 |
msgstr "Titre du site"
|
516 |
|
517 |
-
#: inc/admin/admin.php:
|
518 |
msgid "Enable XML Sitemap"
|
519 |
msgstr "Activez le Sitemap XML"
|
520 |
|
521 |
-
#: inc/admin/admin.php:
|
522 |
msgid "Check to INCLUDE Post Types"
|
523 |
msgstr "Cochez pour INCLURE les Types d'article"
|
524 |
|
525 |
-
#: inc/admin/admin.php:
|
526 |
msgid "Check to INCLUDE Taxonomies"
|
527 |
msgstr "Cochez pour INCLURE les Taxonomies"
|
528 |
|
529 |
-
#: inc/admin/admin.php:
|
530 |
msgid "Person or organization"
|
531 |
msgstr "Personne ou Organisation"
|
532 |
|
533 |
-
#: inc/admin/admin.php:
|
534 |
-
msgid "Your name/organization"
|
535 |
-
msgstr "Votre nom/organisation"
|
536 |
|
537 |
-
#: inc/admin/admin.php:
|
538 |
msgid "Your photo / organization logo"
|
539 |
msgstr "Votre photo / logo"
|
540 |
|
541 |
-
#: inc/admin/admin.php:
|
542 |
msgid "Facebook Page URL"
|
543 |
msgstr "URL de la page Facebook"
|
544 |
|
545 |
-
#: inc/admin/admin.php:
|
546 |
msgid "Twitter Username"
|
547 |
msgstr "Compte utilisateur Twitter"
|
548 |
|
549 |
-
#: inc/admin/admin.php:
|
550 |
msgid "Google + URL"
|
551 |
msgstr "URL Google +"
|
552 |
|
553 |
-
#: inc/admin/admin.php:
|
554 |
msgid "Pinterest URL"
|
555 |
msgstr "URL Pinterest"
|
556 |
|
557 |
-
#: inc/admin/admin.php:
|
558 |
msgid "Instagram URL"
|
559 |
-
msgstr "Instagram
|
560 |
|
561 |
-
#: inc/admin/admin.php:
|
562 |
msgid "YouTube URL"
|
563 |
msgstr "URL YouTube"
|
564 |
|
565 |
-
#: inc/admin/admin.php:
|
566 |
msgid "LinkedIn URL"
|
567 |
-
msgstr "LinkedIn
|
568 |
|
569 |
-
#: inc/admin/admin.php:
|
570 |
msgid "MySpace URL"
|
571 |
msgstr "URL MySpace"
|
572 |
|
573 |
-
#: inc/admin/admin.php:
|
574 |
msgid "Soundcloud URL"
|
575 |
msgstr "URL Soundcloud"
|
576 |
|
577 |
-
#: inc/admin/admin.php:
|
578 |
msgid "Tumblr URL"
|
579 |
msgstr "URL Tumblr"
|
580 |
|
581 |
-
#: inc/admin/admin.php:
|
582 |
msgid "Enable Open Graph Data"
|
583 |
msgstr "Activez les données Open Graph"
|
584 |
|
585 |
-
#: inc/admin/admin.php:
|
586 |
msgid "Select a default image"
|
587 |
msgstr "Sélectionnez une image par défaut"
|
588 |
|
589 |
-
#: inc/admin/admin.php:
|
590 |
msgid "Facebook Admin ID"
|
591 |
msgstr "Facebook Admin ID"
|
592 |
|
593 |
-
#: inc/admin/admin.php:
|
594 |
msgid "Facebook App ID"
|
595 |
msgstr "Facebook App ID"
|
596 |
|
597 |
-
#: inc/admin/admin.php:
|
598 |
msgid "Enable Twitter Card"
|
599 |
msgstr "Activez Twitter Card"
|
600 |
|
601 |
-
#: inc/admin/admin.php:
|
602 |
msgid "Default Twitter Image"
|
603 |
msgstr "Image Twitter par défaut"
|
604 |
|
605 |
-
#: inc/admin/admin.php:
|
606 |
msgid "Image size for Twitter Summary card"
|
607 |
msgstr "Taille d'image pour Twitter Summary Card"
|
608 |
|
609 |
-
#: inc/admin/admin.php:
|
610 |
-
msgid ""
|
611 |
-
"
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
612 |
msgstr ""
|
613 |
-
"
|
614 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
615 |
|
616 |
-
#: inc/admin/admin.php:
|
617 |
msgid "Remove stop words from URL"
|
618 |
msgstr "Supprimer les mots inutiles des URL"
|
619 |
|
620 |
-
#: inc/admin/admin.php:
|
621 |
msgid "Google site verification"
|
622 |
msgstr "Vérification de site Google"
|
623 |
|
624 |
-
#: inc/admin/admin.php:
|
625 |
msgid "Bing site verification"
|
626 |
msgstr "Vérification de site Bing"
|
627 |
|
628 |
-
#: inc/admin/admin.php:
|
629 |
msgid "Pinterest site verification"
|
630 |
msgstr "Vérification de site Pinterest :"
|
631 |
|
632 |
-
#: inc/admin/admin.php:
|
633 |
msgid "Yandex site verification"
|
634 |
msgstr "Vérification de site Yandex"
|
635 |
|
636 |
-
#: inc/admin/admin.php:
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
637 |
msgid "<p>Customize your titles & metas for homepage</p>"
|
638 |
msgstr "<p>Personnalisez vos titres et métas pour l'accueil</p>"
|
639 |
|
640 |
-
#: inc/admin/admin.php:
|
641 |
msgid "<p>Customize your titles & metas for Single Custom Post Types</p>"
|
642 |
msgstr ""
|
643 |
"<p>Personnalisez vos titres et métas pour les singles des Types d'article</p>"
|
644 |
|
645 |
-
#: inc/admin/admin.php:
|
646 |
msgid "<p>Customize your metas for all pages</p>"
|
647 |
msgstr "<p>Personnalisez vos métas pour toutes les pages</p>"
|
648 |
|
649 |
-
#: inc/admin/admin.php:
|
650 |
msgid "<p>Customize your metas for all taxonomies archives</p>"
|
651 |
msgstr "<p>Personnalisez vos métas pour toutes les archives de taxonomies</p>"
|
652 |
|
653 |
-
#: inc/admin/admin.php:
|
654 |
msgid "<p>Customize your metas for all archives</p>"
|
655 |
msgstr "<p>Personnalisez vos métas pour les archives</p>"
|
656 |
|
657 |
-
#: inc/admin/admin.php:
|
658 |
msgid "<p>Enable your Sitemap</p>"
|
659 |
msgstr "<p>Activez votre Sitemap</p>"
|
660 |
|
661 |
-
#: inc/admin/admin.php:
|
662 |
msgid ""
|
663 |
"To view your sitemap, enable permalinks (not default one), and save settings "
|
664 |
"to flush them."
|
@@ -666,226 +1024,456 @@ msgstr ""
|
|
666 |
"Pour voir votre sitemap, activez les permaliens (pas ceux par défaut), et "
|
667 |
"sauvegardez les paramètres pour les mettre à jour."
|
668 |
|
669 |
-
#: inc/admin/admin.php:
|
670 |
msgid ""
|
671 |
"Only the last 1000 items are listed in Sitemaps for performances issues."
|
672 |
msgstr ""
|
673 |
-
"
|
674 |
-
"
|
675 |
|
676 |
-
#: inc/admin/admin.php:
|
677 |
msgid "View your sitemap"
|
678 |
msgstr "Voir votre sitemap"
|
679 |
|
680 |
-
#: inc/admin/admin.php:
|
681 |
msgid "Ping Google manually"
|
682 |
msgstr "Pinger Google manuellement"
|
683 |
|
684 |
-
#: inc/admin/admin.php:
|
685 |
msgid "Flush permalinks"
|
686 |
msgstr "Mettre à jour les permaliens"
|
687 |
|
688 |
-
#: inc/admin/admin.php:
|
689 |
msgid "<p>Include / Exclude Post Types</p>"
|
690 |
msgstr "<p>Inclure / Exclure les Types d'article</p>"
|
691 |
|
692 |
-
#: inc/admin/admin.php:
|
693 |
msgid "<p>Include / Exclude Taxonomies</p>"
|
694 |
msgstr "<p>Inclure / Exclure les Taxonomies</p>"
|
695 |
|
696 |
-
#: inc/admin/admin.php:
|
697 |
msgid "<p>Configure Google Knowledge Graph</p>"
|
698 |
msgstr "<p>Configurer Google Knowledge Graph</p>"
|
699 |
|
700 |
-
#: inc/admin/admin.php:
|
701 |
msgid "<p>Link your site with your social accounts</p>"
|
702 |
msgstr "<p>Lier votre site à vos comptes sociaux</p>"
|
703 |
|
704 |
-
#: inc/admin/admin.php:
|
705 |
msgid "<p>Manage Open Graph datas</p>"
|
706 |
msgstr "<p>Gérer l'Open Graph datas</p>"
|
707 |
|
708 |
-
#: inc/admin/admin.php:
|
709 |
msgid "<p>Manage your Twitter card</p>"
|
710 |
msgstr "<p>Gérer votre Twitter card</p>"
|
711 |
|
712 |
-
#: inc/admin/admin.php:
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
713 |
msgid "<p>Advanced SEO options</p>"
|
714 |
msgstr "<p>Options avancées de SEO</p>"
|
715 |
|
716 |
-
#: inc/admin/admin.php:
|
|
|
|
|
|
|
|
|
717 |
msgid "My awesome website"
|
718 |
msgstr "Mon super site"
|
719 |
|
720 |
-
#: inc/admin/admin.php:
|
721 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
722 |
msgstr "Un site cool sur les Wookies"
|
723 |
|
724 |
-
#: inc/admin/admin.php:
|
725 |
-
#: inc/admin/admin.php:
|
726 |
-
#: inc/admin/admin.php:
|
727 |
msgid "Title template"
|
728 |
msgstr "Template de Titre"
|
729 |
|
730 |
-
#: inc/admin/admin.php:
|
731 |
-
|
732 |
-
|
|
|
|
|
|
|
|
|
733 |
msgid "Meta description template"
|
734 |
msgstr "Template de Méta Description"
|
735 |
|
736 |
-
#: inc/admin/admin.php:
|
737 |
msgid "Display date in Google search results?"
|
738 |
msgstr "Afficher la date dans les résultats de recherche Google ?"
|
739 |
|
740 |
-
#: inc/admin/admin.php:
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
741 |
msgid "Author archives"
|
742 |
msgstr "Archives de l'auteur"
|
743 |
|
744 |
-
#: inc/admin/admin.php:
|
745 |
msgid "Date archives"
|
746 |
msgstr "Archives par date"
|
747 |
|
748 |
-
#: inc/admin/admin.php:
|
|
|
|
|
|
|
|
|
749 |
msgid "Search archives"
|
750 |
msgstr "Archives de recherche"
|
751 |
|
752 |
-
#: inc/admin/admin.php:
|
|
|
|
|
|
|
|
|
753 |
msgid "404 archives"
|
754 |
msgstr "Page 404"
|
755 |
|
756 |
-
#: inc/admin/admin.php:
|
757 |
-
msgid "Paged archives"
|
758 |
-
msgstr "Archives paginées"
|
759 |
-
|
760 |
-
#: inc/admin/admin.php:1644 inc/admin/admin.php:1684
|
761 |
msgid "Include"
|
762 |
msgstr "Inclure"
|
763 |
|
764 |
-
#: inc/admin/admin.php:
|
765 |
msgid "Person"
|
766 |
msgstr "Personne"
|
767 |
|
768 |
-
#: inc/admin/admin.php:
|
769 |
msgid "Organization"
|
770 |
msgstr "Organisation"
|
771 |
|
772 |
-
#: inc/admin/admin.php:
|
773 |
msgid "eg: Apple"
|
774 |
msgstr "ex: Apple"
|
775 |
|
776 |
-
#: inc/admin/admin.php:
|
777 |
msgid "Select your logo"
|
778 |
msgstr "Sélectionnez votre logo"
|
779 |
|
780 |
-
#: inc/admin/admin.php:
|
781 |
msgid "eg: https://www.facebook.com/your-page"
|
782 |
msgstr "ex: https://www.facebook.com/your-page"
|
783 |
|
784 |
-
#: inc/admin/admin.php:
|
785 |
msgid "eg: @wpcloudy"
|
786 |
msgstr "ex: @wpcloudy"
|
787 |
|
788 |
-
#: inc/admin/admin.php:
|
789 |
msgid "eg: https://plus.google.com/+BenjaminDenis"
|
790 |
msgstr "ex: https://plus.google.com/+BenjaminDenis"
|
791 |
|
792 |
-
#: inc/admin/admin.php:
|
793 |
msgid "eg: https://pinterest.com/wpbuy/"
|
794 |
msgstr "ex: https://pinterest.com/wpbuy/"
|
795 |
|
796 |
-
#: inc/admin/admin.php:
|
797 |
msgid "eg: https://www.instagram.com/your-name/"
|
798 |
msgstr "ex: https://www.instagram.com/your-name/"
|
799 |
|
800 |
-
#: inc/admin/admin.php:
|
801 |
msgid "eg: https://www.youtube.com/channel/UCpQzarWu55UzCIH7-OW6pwA"
|
802 |
msgstr "ex: https://www.youtube.com/channel/UCpQzarWu55UzCIH7-OW6pwA"
|
803 |
|
804 |
-
#: inc/admin/admin.php:
|
805 |
msgid "eg: https://www.linkedin.com/in/benjamin-denis-70672b3b"
|
806 |
msgstr "ex: https://www.linkedin.com/in/benjamin-denis-70672b3b"
|
807 |
|
808 |
-
#: inc/admin/admin.php:
|
809 |
msgid "eg: https://myspace.com/your-page"
|
810 |
msgstr "ex: https://myspace.com/your-page"
|
811 |
|
812 |
-
#: inc/admin/admin.php:
|
813 |
msgid "eg: https://soundcloud.com/michaelmccannmusic"
|
814 |
msgstr "ex: https://soundcloud.com/michaelmccannmusic"
|
815 |
|
816 |
-
#: inc/admin/admin.php:
|
817 |
msgid "eg: https://your-site.tumblr.com"
|
818 |
msgstr "ex: https://your-site.tumblr.com"
|
819 |
|
820 |
-
#: inc/admin/admin.php:
|
821 |
msgid "Enable OG data"
|
822 |
msgstr "Activer les données OG"
|
823 |
|
824 |
-
#: inc/admin/admin.php:
|
825 |
msgid "Enable Twitter card"
|
826 |
msgstr "Activer Twitter Card"
|
827 |
|
828 |
-
#: inc/admin/admin.php:
|
829 |
msgid "Default"
|
830 |
msgstr "Défaut"
|
831 |
|
832 |
-
#: inc/admin/admin.php:
|
833 |
msgid "Large"
|
834 |
msgstr "Grande"
|
835 |
|
836 |
-
#: inc/admin/admin.php:
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
837 |
msgid "Redirect attachment pages to post parent (or homepage if none)"
|
838 |
msgstr ""
|
839 |
"Rediriger les pages de pièces jointes vers le post parent (si aucun, "
|
840 |
"rediriger vers page d'accueil)"
|
841 |
|
842 |
-
#: inc/admin/admin.php:
|
843 |
msgid "Remove stop words in permalinks"
|
844 |
msgstr "Supprimer les mots clés inutiles des permaliens"
|
845 |
|
846 |
-
#: inc/admin/admin.php:
|
847 |
msgid ""
|
848 |
"Setting based on site language. Supported language EN, FR, ES, DE, IT, PT."
|
849 |
msgstr ""
|
850 |
"Réglage basé sur la langue du site. Langue prise en charge EN, FR, ES, DE, "
|
851 |
"IT, PT."
|
852 |
|
853 |
-
#: inc/admin/admin.php:
|
854 |
msgid "Enter Google meta value site verification"
|
855 |
msgstr "Entrer la meta de vérification de site Google"
|
856 |
|
857 |
-
#: inc/admin/admin.php:
|
858 |
msgid "Enter Bing meta value site verification"
|
859 |
msgstr "Entrer la meta de vérification de site Bing"
|
860 |
|
861 |
-
#: inc/admin/admin.php:
|
862 |
msgid "Enter Pinterest meta value site verification"
|
863 |
msgstr "Entrer la meta de vérification de site Pinterest"
|
864 |
|
865 |
-
#: inc/admin/admin.php:
|
866 |
msgid "Enter Yandex meta value site verification"
|
867 |
msgstr "Entrer la meta de vérification de site Yandex"
|
868 |
|
869 |
-
#: inc/
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
870 |
msgid "Please upload a valid .json file"
|
871 |
msgstr "Veuillez uploader un fichier JSON valide"
|
872 |
|
873 |
-
#: inc/functions/options-import-export.php:
|
874 |
msgid "Please upload a file to import"
|
875 |
msgstr "Uploader un fichier à importer SVP"
|
876 |
|
877 |
-
#: seopress.php:
|
878 |
msgid "Settings"
|
879 |
msgstr "Paramètres"
|
880 |
|
881 |
-
#: seopress.php:
|
882 |
msgid "SEOPress.org"
|
883 |
msgstr "SEOPress.org"
|
884 |
|
885 |
-
#: seopress.php:
|
886 |
msgid "GO PRO!"
|
887 |
msgstr "PASSEZ PRO !"
|
888 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
889 |
#~ msgid "The ultimate plugin to optimize your SEO!"
|
890 |
#~ msgstr "Le plugin ultime pour optimiser votre SEO !"
|
891 |
|
@@ -1667,9 +2255,6 @@ msgstr "PASSEZ PRO !"
|
|
1667 |
#~ msgid "Right"
|
1668 |
#~ msgstr "Droite"
|
1669 |
|
1670 |
-
#~ msgid "None"
|
1671 |
-
#~ msgstr "Aucun"
|
1672 |
-
|
1673 |
#~ msgid "File"
|
1674 |
#~ msgstr "Fichier"
|
1675 |
|
@@ -1913,9 +2498,6 @@ msgstr "PASSEZ PRO !"
|
|
1913 |
#~ msgid "Toggle All"
|
1914 |
#~ msgstr "Tout sélectionner"
|
1915 |
|
1916 |
-
#~ msgid "License"
|
1917 |
-
#~ msgstr "Licence"
|
1918 |
-
|
1919 |
#~ msgid ""
|
1920 |
#~ "Before starting: define which roles to apply settings using Role Manager "
|
1921 |
#~ "page."
|
2 |
msgstr ""
|
3 |
"Project-Id-Version: SEOPress\n"
|
4 |
"Report-Msgid-Bugs-To: http://wordpress.org/tag/wp-cloudy\n"
|
5 |
+
"POT-Creation-Date: 2016-12-07 18:39+0100\n"
|
6 |
+
"PO-Revision-Date: 2016-12-07 18:39+0100\n"
|
7 |
"Last-Translator: \n"
|
8 |
"Language-Team: Benjamin DENIS <contact@seopress.org>\n"
|
9 |
"Language: fr_FR\n"
|
17 |
"X-Poedit-SourceCharset: UTF-8\n"
|
18 |
"X-Poedit-SearchPath-0: .\n"
|
19 |
|
20 |
+
#: inc/admin/admin-header.php:10
|
21 |
msgid "SEOPress"
|
22 |
msgstr "SEOPress"
|
23 |
|
24 |
+
#: inc/admin/admin-header.php:14 inc/admin/adminbar.php:59
|
25 |
+
msgid "PRO"
|
26 |
+
msgstr "PRO"
|
27 |
+
|
28 |
+
#: inc/admin/admin-header.php:25
|
29 |
+
msgid "You like SEOPress? Don't forget to rate it 5 stars!"
|
30 |
+
msgstr "Vous aimez SEOPress ? N'oubliez pas de nous noter 5 étoiles !"
|
31 |
+
|
32 |
+
#: inc/admin/admin-header.php:57
|
33 |
+
msgid "Support"
|
34 |
+
msgstr "Support"
|
35 |
+
|
36 |
+
#: inc/admin/admin-metaboxes.php:11 inc/admin/admin-metaboxes.php:13
|
37 |
+
#: inc/admin/adminbar.php:16
|
38 |
+
msgid "SEO"
|
39 |
+
msgstr "SEO"
|
40 |
+
|
41 |
+
#: inc/admin/admin-metaboxes.php:86
|
42 |
msgid "Titles settings"
|
43 |
msgstr "Paramètres de titres"
|
44 |
|
45 |
+
#: inc/admin/admin-metaboxes.php:87 inc/admin/admin.php:174
|
46 |
+
#: inc/admin/admin.php:240 inc/admin/admin.php:402 inc/admin/admin.php:698
|
47 |
+
#: inc/admin/adminbar.php:46
|
48 |
msgid "Advanced"
|
49 |
msgstr "Avancé"
|
50 |
|
51 |
+
#: inc/admin/admin-metaboxes.php:88 inc/admin/admin.php:172
|
52 |
+
#: inc/admin/admin.php:640 inc/admin/adminbar.php:34
|
53 |
msgid "Social"
|
54 |
msgstr "Social"
|
55 |
|
56 |
+
#: inc/admin/admin-metaboxes.php:90 inc/admin/admin.php:852
|
57 |
msgid "Redirections"
|
58 |
msgstr "Redirections"
|
59 |
|
60 |
+
#: inc/admin/admin-metaboxes.php:93
|
61 |
+
msgid "Google News"
|
62 |
+
msgstr "Google News"
|
63 |
+
|
64 |
+
#: inc/admin/admin-metaboxes.php:102
|
65 |
msgid "Title"
|
66 |
msgstr "Titre"
|
67 |
|
68 |
+
#: inc/admin/admin-metaboxes.php:103
|
69 |
msgid "Enter your title"
|
70 |
msgstr "Entrez votre titre"
|
71 |
|
72 |
+
#: inc/admin/admin-metaboxes.php:107 inc/admin/admin-metaboxes.php:115
|
73 |
msgid "(maximum recommended limit)"
|
74 |
msgstr "(limite maximale recommandée)"
|
75 |
|
76 |
+
#: inc/admin/admin-metaboxes.php:110 inc/admin/admin.php:470
|
77 |
+
#: inc/admin/admin.php:983
|
78 |
msgid "Meta description"
|
79 |
msgstr "Meta description"
|
80 |
|
81 |
+
#: inc/admin/admin-metaboxes.php:111
|
82 |
msgid "Enter your meta description"
|
83 |
msgstr "Entrez votre méta description"
|
84 |
|
85 |
+
#: inc/admin/admin-metaboxes.php:120
|
86 |
msgid "Google Snippet Preview"
|
87 |
+
msgstr "Aperçu Google Snippet"
|
88 |
|
89 |
+
#: inc/admin/admin-metaboxes.php:121
|
90 |
msgid "This is what your page will look like in Google search results"
|
91 |
msgstr ""
|
92 |
"Voilà à quoi ressemblera votre page dans les résultats de recherche Google"
|
93 |
|
94 |
+
#: inc/admin/admin-metaboxes.php:137 inc/admin/admin.php:1141
|
95 |
+
#: inc/admin/admin.php:1875 inc/admin/admin.php:2008 inc/admin/admin.php:2098
|
96 |
+
#: inc/admin/admin.php:2171 inc/admin/admin.php:2220 inc/admin/admin.php:2300
|
97 |
msgid "noindex"
|
98 |
msgstr "noindex"
|
99 |
|
100 |
+
#: inc/admin/admin-metaboxes.php:138 inc/admin/admin.php:2302
|
101 |
+
msgid ""
|
102 |
+
"Do not display all pages of the site in Google search results and do not "
|
103 |
+
"display \"Cached\" links in search results."
|
104 |
+
msgstr ""
|
105 |
+
"Ne pas afficher toutes les pages du site dans les résultats de recherche "
|
106 |
+
"<br>et ne pas afficher de lien \"En cache\" dans les résultats de recherche."
|
107 |
+
|
108 |
+
#: inc/admin/admin-metaboxes.php:143 inc/admin/admin.php:1149
|
109 |
+
#: inc/admin/admin.php:1894 inc/admin/admin.php:2027 inc/admin/admin.php:2117
|
110 |
+
#: inc/admin/admin.php:2319
|
111 |
msgid "nofollow"
|
112 |
msgstr "nofollow"
|
113 |
|
114 |
+
#: inc/admin/admin-metaboxes.php:144 inc/admin/admin.php:2321
|
115 |
+
msgid "Do not follow links for all pages."
|
116 |
+
msgstr "Ne pas suivre les liens de tout le site."
|
117 |
+
|
118 |
+
#: inc/admin/admin-metaboxes.php:149 inc/admin/admin.php:1157
|
119 |
+
#: inc/admin/admin.php:2338
|
120 |
msgid "noodp"
|
121 |
msgstr "noodp"
|
122 |
|
123 |
+
#: inc/admin/admin-metaboxes.php:150 inc/admin/admin.php:2340
|
124 |
+
msgid ""
|
125 |
+
"Do not use Open Directory project metadata for titles or excerpts for all "
|
126 |
+
"pages."
|
127 |
+
msgstr ""
|
128 |
+
"Ne pas utiliser les métadonnées de l'Open Directory project pour les titres "
|
129 |
+
"ou les extraits de tout le site."
|
130 |
+
|
131 |
+
#: inc/admin/admin-metaboxes.php:155 inc/admin/admin.php:1165
|
132 |
+
#: inc/admin/admin.php:2357
|
133 |
msgid "noimageindex"
|
134 |
msgstr "noimageindex"
|
135 |
|
136 |
+
#: inc/admin/admin-metaboxes.php:156 inc/admin/admin.php:2359
|
137 |
+
msgid "Do not index images from the entire site."
|
138 |
+
msgstr "Ne pas indexer les images de tout le site."
|
139 |
+
|
140 |
+
#: inc/admin/admin-metaboxes.php:161 inc/admin/admin.php:1173
|
141 |
+
#: inc/admin/admin.php:2376
|
142 |
msgid "noarchive"
|
143 |
msgstr "noarchive"
|
144 |
|
145 |
+
#: inc/admin/admin-metaboxes.php:162 inc/admin/admin.php:2378
|
146 |
+
msgid "Do not display a \"Cached\" link in the Google search results."
|
147 |
+
msgstr "Ne pas afficher de lien \"En cache\" dans les résultats de recherche."
|
148 |
+
|
149 |
+
#: inc/admin/admin-metaboxes.php:167 inc/admin/admin.php:1181
|
150 |
+
#: inc/admin/admin.php:2395
|
151 |
msgid "nosnippet"
|
152 |
msgstr "nosnippet"
|
153 |
|
154 |
+
#: inc/admin/admin-metaboxes.php:168 inc/admin/admin.php:2397
|
155 |
+
msgid ""
|
156 |
+
"Do not display a description in the Google search results for all pages."
|
157 |
+
msgstr ""
|
158 |
+
"Ne pas afficher de description dans les résultats de recherche pour toutes "
|
159 |
+
"les pages du site."
|
160 |
+
|
161 |
+
#: inc/admin/admin-metaboxes.php:171 inc/admin/admin.php:474
|
162 |
msgid "Canonical URL"
|
163 |
msgstr "URL Canonique"
|
164 |
|
165 |
+
#: inc/admin/admin-metaboxes.php:172
|
166 |
msgid "Default value: "
|
167 |
msgstr "Valeur par défaut: "
|
168 |
|
169 |
+
#: inc/admin/admin-metaboxes.php:178
|
170 |
msgid "Facebook Title"
|
171 |
msgstr "Titre Facebook"
|
172 |
|
173 |
+
#: inc/admin/admin-metaboxes.php:179
|
174 |
msgid "Enter your Facebook title"
|
175 |
msgstr "Entrez votre titre Facebook"
|
176 |
|
177 |
+
#: inc/admin/admin-metaboxes.php:182
|
178 |
msgid "Facebook description"
|
179 |
msgstr "Description Facebook"
|
180 |
|
181 |
+
#: inc/admin/admin-metaboxes.php:183
|
182 |
msgid "Enter your Facebook description"
|
183 |
msgstr "Entrez votre description Facebook"
|
184 |
|
185 |
+
#: inc/admin/admin-metaboxes.php:186
|
186 |
msgid "Facebook Thumbnail"
|
187 |
msgstr "Miniature Facebook"
|
188 |
|
189 |
+
#: inc/admin/admin-metaboxes.php:187
|
190 |
+
msgid "Minimum size: 200x200px"
|
191 |
+
msgstr "Taille minimum : 200x200px"
|
192 |
+
|
193 |
+
#: inc/admin/admin-metaboxes.php:188 inc/admin/admin-metaboxes.php:204
|
194 |
+
#: inc/admin/admin.php:2683 inc/admin/admin.php:2735
|
195 |
msgid "Select your default thumbnail"
|
196 |
msgstr "Sélectionnez votre miniature par défaut"
|
197 |
|
198 |
+
#: inc/admin/admin-metaboxes.php:189 inc/admin/admin-metaboxes.php:205
|
199 |
+
#: inc/admin/admin.php:2539 inc/admin/admin.php:2685 inc/admin/admin.php:2737
|
200 |
msgid "Upload an Image"
|
201 |
+
msgstr "Envoyer une image"
|
202 |
|
203 |
+
#: inc/admin/admin-metaboxes.php:194
|
204 |
msgid "Twitter Title"
|
205 |
msgstr "Titre Twitter"
|
206 |
|
207 |
+
#: inc/admin/admin-metaboxes.php:195
|
208 |
msgid "Enter your Twitter title"
|
209 |
msgstr "Entrez votre titre Twitter"
|
210 |
|
211 |
+
#: inc/admin/admin-metaboxes.php:198
|
212 |
msgid "Twitter description"
|
213 |
msgstr "Description Twitter"
|
214 |
|
215 |
+
#: inc/admin/admin-metaboxes.php:199
|
216 |
msgid "Enter your Twitter description"
|
217 |
msgstr "Entrez votre description Twitter"
|
218 |
|
219 |
+
#: inc/admin/admin-metaboxes.php:202
|
220 |
msgid "Twitter Thumbnail"
|
221 |
msgstr "Miniature Twitter"
|
222 |
|
223 |
+
#: inc/admin/admin-metaboxes.php:203
|
224 |
+
msgid "Minimum size: 160x160px"
|
225 |
+
msgstr "Taille minimum : 160x160px"
|
226 |
+
|
227 |
+
#: inc/admin/admin-metaboxes.php:214
|
228 |
msgid "Enable redirection?"
|
229 |
msgstr "Activer la redirection ?"
|
230 |
|
231 |
+
#: inc/admin/admin-metaboxes.php:218
|
232 |
msgid "URL redirection"
|
233 |
msgstr "URL de redirection"
|
234 |
|
235 |
+
#: inc/admin/admin-metaboxes.php:220
|
236 |
msgid "301"
|
237 |
msgstr "301"
|
238 |
|
239 |
+
#: inc/admin/admin-metaboxes.php:221
|
240 |
msgid "302"
|
241 |
msgstr "302"
|
242 |
|
243 |
+
#: inc/admin/admin-metaboxes.php:222
|
244 |
msgid "307"
|
245 |
msgstr "307"
|
246 |
|
247 |
+
#: inc/admin/admin-metaboxes.php:224
|
248 |
msgid "Enter your URL"
|
249 |
msgstr "Saisissez votre URL"
|
250 |
|
251 |
+
#: inc/admin/admin-metaboxes.php:227 inc/admin/admin-metaboxes.php:229
|
252 |
msgid "Test your URL"
|
253 |
msgstr "Tester votre URL"
|
254 |
|
255 |
+
#: inc/admin/admin-metaboxes.php:238
|
256 |
+
msgid "Exclude this post from Google News Sitemap?"
|
257 |
+
msgstr "Exclure cet article du sitemap Google News ?"
|
258 |
+
|
259 |
+
#: inc/admin/admin-metaboxes.php:242
|
260 |
+
msgid "Google News Genres"
|
261 |
+
msgstr "Genres Google News"
|
262 |
+
|
263 |
+
#: inc/admin/admin-metaboxes.php:244 inc/admin/admin.php:2903
|
264 |
+
#: inc/admin/admin.php:2980 inc/admin/admin.php:3057 inc/admin/admin.php:3134
|
265 |
+
#: inc/admin/admin.php:3211
|
266 |
+
msgid "None"
|
267 |
+
msgstr "Aucun"
|
268 |
+
|
269 |
+
#: inc/admin/admin-metaboxes.php:245
|
270 |
+
msgid "Press Release"
|
271 |
+
msgstr "Press Release"
|
272 |
+
|
273 |
+
#: inc/admin/admin-metaboxes.php:246
|
274 |
+
msgid "Satire"
|
275 |
+
msgstr "Satire"
|
276 |
+
|
277 |
+
#: inc/admin/admin-metaboxes.php:247
|
278 |
+
msgid "Blog"
|
279 |
+
msgstr "Blog"
|
280 |
+
|
281 |
+
#: inc/admin/admin-metaboxes.php:248
|
282 |
+
msgid "OpEd"
|
283 |
+
msgstr "OpEd"
|
284 |
+
|
285 |
+
#: inc/admin/admin-metaboxes.php:249
|
286 |
+
msgid "Opinion"
|
287 |
+
msgstr "Opinion"
|
288 |
+
|
289 |
+
#: inc/admin/admin-metaboxes.php:250
|
290 |
+
msgid "UserGenerated"
|
291 |
+
msgstr "UserGenerated"
|
292 |
+
|
293 |
+
#: inc/admin/admin-metaboxes.php:255
|
294 |
+
msgid "Google News Keywords <em>(max recommended limit: 12)</em>"
|
295 |
+
msgstr "Mots clés Google News <em>(limite max recommandée: 12)</em>"
|
296 |
+
|
297 |
+
#: inc/admin/admin-metaboxes.php:256
|
298 |
+
msgid "Enter your Google News Keywords"
|
299 |
+
msgstr "Entrez vos mots clés Google News"
|
300 |
+
|
301 |
+
#: inc/admin/admin.php:102
|
302 |
+
msgid "404 - Page not found"
|
303 |
+
msgstr "404 - Page non trouvée"
|
304 |
+
|
305 |
+
#: inc/admin/admin.php:170 inc/admin/adminbar.php:22
|
306 |
msgid "Titles & Metas"
|
307 |
msgstr "Titres et Métas"
|
308 |
|
309 |
+
#: inc/admin/admin.php:171 inc/admin/admin.php:611 inc/admin/adminbar.php:28
|
310 |
msgid "XML Sitemap"
|
311 |
msgstr "Sitemap XML"
|
312 |
|
313 |
+
#: inc/admin/admin.php:173 inc/admin/admin.php:669 inc/admin/adminbar.php:40
|
314 |
+
msgid "Google Analytics"
|
315 |
+
msgstr "Google Analytics"
|
316 |
+
|
317 |
+
#: inc/admin/admin.php:175
|
318 |
msgid "Import / Export / Reset settings"
|
319 |
msgstr "Import / Export / Réinitialisation des paramètres"
|
320 |
|
321 |
+
#: inc/admin/admin.php:175 inc/admin/admin.php:893 inc/admin/adminbar.php:52
|
322 |
msgid "Import / Export / Reset"
|
323 |
msgstr "Importer / Exporter / Réinitialiser"
|
324 |
|
325 |
+
#: inc/admin/admin.php:182
|
326 |
#, php-format
|
327 |
msgid "%%sitetitle%%"
|
328 |
msgstr "%%sitetitle%%"
|
329 |
|
330 |
+
#: inc/admin/admin.php:182 inc/admin/admin.php:1798 inc/admin/admin.php:1845
|
331 |
+
#: inc/admin/admin.php:1960 inc/admin/admin.php:2068 inc/admin/admin.php:2142
|
332 |
+
#: inc/admin/admin.php:2192 inc/admin/admin.php:2241 inc/admin/admin.php:2271
|
333 |
msgid "Site Title"
|
334 |
msgstr "Titre du Site"
|
335 |
|
336 |
+
#: inc/admin/admin.php:183
|
337 |
#, php-format
|
338 |
msgid "%%tagline%%"
|
339 |
msgstr "%%tagline%%"
|
340 |
|
341 |
+
#: inc/admin/admin.php:183 inc/admin/admin.php:1799 inc/admin/admin.php:1810
|
342 |
msgid "Tagline"
|
343 |
msgstr "Slogan du site"
|
344 |
|
345 |
+
#: inc/admin/admin.php:184
|
346 |
#, php-format
|
347 |
msgid "%%post_title%%"
|
348 |
msgstr "%%post_title%%"
|
349 |
|
350 |
+
#: inc/admin/admin.php:184
|
351 |
msgid "Post Title (post, page, custom post type)"
|
352 |
msgstr "Titre du post (article, page, type d'article personnalisé)"
|
353 |
|
354 |
+
#: inc/admin/admin.php:185
|
355 |
#, php-format
|
356 |
msgid "%%post_excerpt%%"
|
357 |
msgstr "%%post_excerpt%%"
|
358 |
|
359 |
+
#: inc/admin/admin.php:185
|
360 |
msgid "Post excerpt"
|
361 |
msgstr "Extrait du post"
|
362 |
|
363 |
+
#: inc/admin/admin.php:186
|
364 |
#, php-format
|
365 |
msgid "%%post_date%%"
|
366 |
msgstr "%%post_date%%"
|
367 |
|
368 |
+
#: inc/admin/admin.php:186
|
369 |
msgid "Post date"
|
370 |
msgstr "Date du post"
|
371 |
|
372 |
+
#: inc/admin/admin.php:187
|
373 |
#, php-format
|
374 |
msgid "%%post_author%%"
|
375 |
msgstr "%%post_author%%"
|
376 |
|
377 |
+
#: inc/admin/admin.php:187 inc/admin/admin.php:2141
|
378 |
msgid "Post author"
|
379 |
msgstr "Auteur du post"
|
380 |
|
381 |
+
#: inc/admin/admin.php:188
|
382 |
#, php-format
|
383 |
msgid "%%_category_title%%"
|
384 |
msgstr "%%_category_title%%"
|
385 |
|
386 |
+
#: inc/admin/admin.php:188
|
387 |
msgid "Category title"
|
388 |
msgstr "Titre de catégorie"
|
389 |
|
390 |
+
#: inc/admin/admin.php:189
|
391 |
#, php-format
|
392 |
msgid "%%_category_description%%"
|
393 |
msgstr "%%_category_description%%"
|
394 |
|
395 |
+
#: inc/admin/admin.php:189
|
396 |
msgid "Category description"
|
397 |
msgstr "Description de la catégorie"
|
398 |
|
399 |
+
#: inc/admin/admin.php:190
|
400 |
#, php-format
|
401 |
msgid "%%tag_title%%"
|
402 |
msgstr "%%tag_title%%"
|
403 |
|
404 |
+
#: inc/admin/admin.php:190
|
405 |
msgid "Tag title"
|
406 |
+
msgstr "Titre de l'étiquette"
|
407 |
|
408 |
+
#: inc/admin/admin.php:191
|
409 |
#, php-format
|
410 |
msgid "%%tag_description%%"
|
411 |
msgstr "%%tag_description%%"
|
412 |
|
413 |
+
#: inc/admin/admin.php:191
|
414 |
msgid "Tag description"
|
415 |
+
msgstr "Description de l'étiquette"
|
416 |
|
417 |
+
#: inc/admin/admin.php:192
|
418 |
#, php-format
|
419 |
msgid "%%term_title%%"
|
420 |
msgstr "%%term_title%%"
|
421 |
|
422 |
+
#: inc/admin/admin.php:192
|
423 |
msgid "Term title"
|
424 |
msgstr "Titre du terme"
|
425 |
|
426 |
+
#: inc/admin/admin.php:193
|
427 |
#, php-format
|
428 |
msgid "%%term_description%%"
|
429 |
msgstr "%%term_description%%"
|
430 |
|
431 |
+
#: inc/admin/admin.php:193
|
432 |
msgid "Term description"
|
433 |
msgstr "Description du terme"
|
434 |
|
435 |
+
#: inc/admin/admin.php:194
|
436 |
#, php-format
|
437 |
msgid "%%search_keywords%%"
|
438 |
msgstr "%%search_keywords%%"
|
439 |
|
440 |
+
#: inc/admin/admin.php:194
|
441 |
msgid "Search keywords"
|
442 |
msgstr "Mots clés de recherche"
|
443 |
|
444 |
+
#: inc/admin/admin.php:195
|
445 |
#, php-format
|
446 |
msgid "%%current_pagination%%"
|
447 |
msgstr "%%current_pagination%%"
|
448 |
|
449 |
+
#: inc/admin/admin.php:195
|
450 |
msgid "Current number page"
|
451 |
msgstr "Numéro de page actuel"
|
452 |
|
453 |
+
#: inc/admin/admin.php:196
|
454 |
+
#, php-format
|
455 |
+
msgid "%%cpt_plural%%"
|
456 |
+
msgstr "%%cpt_plural%%"
|
457 |
+
|
458 |
+
#: inc/admin/admin.php:196
|
459 |
+
msgid "Plural Post Type Archive name"
|
460 |
+
msgstr "Nom pluriel archives type d'article personnalisé"
|
461 |
+
|
462 |
+
#: inc/admin/admin.php:197
|
463 |
+
#, php-format
|
464 |
+
msgid "%%date_archive%%"
|
465 |
+
msgstr "%%date_archive%%"
|
466 |
+
|
467 |
+
#: inc/admin/admin.php:197
|
468 |
+
msgid "Date Archive"
|
469 |
+
msgstr "Date d'archive"
|
470 |
+
|
471 |
+
#: inc/admin/admin.php:203
|
472 |
msgid "Templates variables"
|
473 |
msgstr "Modèles de variables"
|
474 |
|
475 |
+
#: inc/admin/admin.php:221
|
476 |
msgid ""
|
477 |
"Discourage search engines from indexing this site is <strong>ON!</strong> "
|
478 |
"None of the following settings will be applied."
|
480 |
"Décourager les moteurs de recherche d’indexer ce site est <strong>actif !</"
|
481 |
"strong> Aucun des paramètres suivants ne s’appliqueront."
|
482 |
|
483 |
+
#: inc/admin/admin.php:222
|
484 |
msgid "Change this settings"
|
485 |
msgstr "Changer ce paramètre"
|
486 |
|
487 |
+
#: inc/admin/admin.php:236
|
488 |
msgid "Home"
|
489 |
msgstr "Accueil"
|
490 |
|
491 |
+
#: inc/admin/admin.php:237
|
492 |
msgid "Single Post Types"
|
493 |
+
msgstr "Détail Types d'Articles"
|
|
|
|
|
|
|
|
|
494 |
|
495 |
+
#: inc/admin/admin.php:238
|
496 |
msgid "Archives"
|
497 |
msgstr "Archives"
|
498 |
|
499 |
+
#: inc/admin/admin.php:239 inc/admin/admin.php:282
|
500 |
+
msgid "Taxonomies"
|
501 |
+
msgstr "Taxonomies"
|
502 |
+
|
503 |
+
#: inc/admin/admin.php:280 inc/admin/admin.php:361
|
504 |
msgid "General"
|
505 |
msgstr "Général"
|
506 |
|
507 |
+
#: inc/admin/admin.php:281
|
508 |
msgid "Post Types"
|
509 |
msgstr "Types d'article"
|
510 |
|
511 |
+
#: inc/admin/admin.php:319
|
512 |
msgid "Knowledge Graph"
|
513 |
msgstr "Knowledge Graph"
|
514 |
|
515 |
+
#: inc/admin/admin.php:320
|
516 |
msgid "Your social accounts"
|
517 |
msgstr "Vos comptes sociaux"
|
518 |
|
519 |
+
#: inc/admin/admin.php:321
|
520 |
msgid "Facebook"
|
521 |
msgstr "Facebook"
|
522 |
|
523 |
+
#: inc/admin/admin.php:322
|
524 |
msgid "Twitter"
|
525 |
msgstr "Twitter"
|
526 |
|
527 |
+
#: inc/admin/admin.php:362
|
528 |
+
msgid "Tracking"
|
529 |
+
msgstr "Suivi"
|
530 |
|
531 |
+
#: inc/admin/admin.php:363
|
532 |
+
msgid "Custom Dimensions"
|
533 |
+
msgstr "Dimensions personnalisées"
|
534 |
+
|
535 |
+
#: inc/admin/admin.php:403
|
536 |
+
msgid "Appearance"
|
537 |
+
msgstr "Apparence"
|
538 |
|
539 |
+
#: inc/admin/admin.php:434
|
540 |
msgid "Export Settings"
|
541 |
msgstr "Exporter Paramètres"
|
542 |
|
543 |
+
#: inc/admin/admin.php:436
|
544 |
msgid ""
|
545 |
"Export the plugin settings for this site as a .json file. This allows you to "
|
546 |
"easily import the configuration into another site."
|
549 |
"vous permet d'importer facilement votre configuration dans un autre site "
|
550 |
"WordPress."
|
551 |
|
552 |
+
#: inc/admin/admin.php:441
|
553 |
msgid "Export"
|
554 |
msgstr "Exporter"
|
555 |
|
556 |
+
#: inc/admin/admin.php:448
|
557 |
msgid "Import Settings"
|
558 |
msgstr "Importer Paramètres"
|
559 |
|
560 |
+
#: inc/admin/admin.php:450
|
561 |
msgid ""
|
562 |
"Import the plugin settings from a .json file. This file can be obtained by "
|
563 |
"exporting the settings on another site using the form above."
|
566 |
"être obtenu en exportant les paramètres depuis un autre site en utilisant le "
|
567 |
"formulaire ci-dessus."
|
568 |
|
569 |
+
#: inc/admin/admin.php:458
|
570 |
msgid "Import"
|
571 |
msgstr "Importer"
|
572 |
|
573 |
+
#: inc/admin/admin.php:465
|
574 |
+
msgid "Import posts metadata from Yoast"
|
575 |
+
msgstr ""
|
576 |
+
"Importer les méta données des articles, pages, types d'articles "
|
577 |
+
"personnalisés depuis Yoast"
|
578 |
+
|
579 |
+
#: inc/admin/admin.php:467
|
580 |
+
msgid "By clicking Migrate, we'll import:"
|
581 |
+
msgstr "En cliquant sur Migrer, vous importerez :"
|
582 |
+
|
583 |
+
#: inc/admin/admin.php:469
|
584 |
+
msgid "Title tags"
|
585 |
+
msgstr "Balises titres"
|
586 |
+
|
587 |
+
#: inc/admin/admin.php:471
|
588 |
+
msgid "Facebook Open Graph tags (title, description and image thumbnail)"
|
589 |
+
msgstr "Balises Facebook Open Graph (titre, description et miniature)"
|
590 |
+
|
591 |
+
#: inc/admin/admin.php:472
|
592 |
+
msgid "Twitter tags (title, description and image thumbnail)"
|
593 |
+
msgstr "Balises Twitter (titre, description et miniature)"
|
594 |
+
|
595 |
+
#: inc/admin/admin.php:473
|
596 |
+
msgid "Meta Robots (noindex, nofollow...)"
|
597 |
+
msgstr "Meta Robots (noindex, nofollow...)"
|
598 |
+
|
599 |
+
#: inc/admin/admin.php:476
|
600 |
+
msgid ""
|
601 |
+
"<strong>WARNING:</strong> Migration will delete all SEOPress posts metadata"
|
602 |
+
msgstr ""
|
603 |
+
"<strong>ATTENTION :</strong> La migration supprimera toutes les méta-données "
|
604 |
+
"de SEOPress"
|
605 |
+
|
606 |
+
#: inc/admin/admin.php:477
|
607 |
+
msgid "Migrate now"
|
608 |
+
msgstr "Migrer maintenant"
|
609 |
+
|
610 |
+
#: inc/admin/admin.php:484
|
611 |
msgid "Reset All Settings"
|
612 |
msgstr "Tout réinitialiser"
|
613 |
|
614 |
+
#: inc/admin/admin.php:486
|
615 |
msgid ""
|
616 |
"<strong>WARNING:</strong> Delete all options related to SEOPress in your "
|
617 |
+
"database AND set settings to their default values."
|
618 |
msgstr ""
|
619 |
"<strong>AVERTISSEMENT:</strong> Supprime toutes les options liées à SEOPress "
|
620 |
+
"dans la base de données et redéfini ces derniers à leurs valeurs par défaut."
|
621 |
|
622 |
+
#: inc/admin/admin.php:491
|
623 |
msgid "Reset settings"
|
624 |
msgstr "Réinitialiser les paramètres"
|
625 |
|
626 |
+
#: inc/admin/admin.php:514
|
627 |
+
msgid "Notifications center"
|
628 |
+
msgstr "Centre de notifications"
|
629 |
|
630 |
+
#: inc/admin/admin.php:519
|
631 |
+
msgid ""
|
632 |
+
"We notice that you use Yoast SEO plugin. <br>Do you want to migrate all your "
|
633 |
+
"posts metadata to SEOPress?"
|
634 |
+
msgstr ""
|
635 |
+
"Nous avons noté que vous utilisez Yoast SEO. <br>Souhaitez vous migrer les "
|
636 |
+
"méta données de vos articles, pages et types d'articles personnalisés vers "
|
637 |
+
"SEOPress ?"
|
638 |
|
639 |
+
#: inc/admin/admin.php:521
|
640 |
+
msgid "Migrate!"
|
641 |
+
msgstr "Migrer !"
|
642 |
|
643 |
+
#: inc/admin/admin.php:528
|
644 |
+
msgid "Your site doesn't use an SSL certificate!"
|
645 |
+
msgstr "Votre site n'utilise pas de certificat SSL !"
|
646 |
|
647 |
+
#: inc/admin/admin.php:529
|
648 |
+
msgid "Low impact"
|
649 |
+
msgstr "Impact faible"
|
650 |
+
|
651 |
+
#: inc/admin/admin.php:531
|
652 |
+
msgid "Buy an SSL!"
|
653 |
+
msgstr "Acheter un SSL !"
|
654 |
+
|
655 |
+
#: inc/admin/admin.php:538
|
656 |
msgid "Your site is not visible to Search Engines!"
|
657 |
+
msgstr "Votre site n'est pas visible aux moteurs de recherche !"
|
658 |
+
|
659 |
+
#: inc/admin/admin.php:539 inc/admin/admin.php:549 inc/admin/admin.php:559
|
660 |
+
msgid "High impact"
|
661 |
+
msgstr "Impact élevé"
|
662 |
|
663 |
+
#: inc/admin/admin.php:541 inc/admin/admin.php:551 inc/admin/admin.php:561
|
664 |
+
#: inc/admin/admin.php:571
|
665 |
msgid "Fix this!"
|
666 |
msgstr "Régler!"
|
667 |
|
668 |
+
#: inc/admin/admin.php:548
|
669 |
msgid "Your site title is empty!"
|
670 |
msgstr "Le titre de votre site est vide !"
|
671 |
|
672 |
+
#: inc/admin/admin.php:558
|
673 |
msgid ""
|
674 |
"Your permalinks are not SEO Friendly! Enable pretty permalinks to fix this."
|
675 |
msgstr ""
|
676 |
"Vos permaliens ne sont pas SEO Friendly ! Veuillez activer la réécriture "
|
677 |
"d'URL pour résoudre cela."
|
678 |
|
679 |
+
#: inc/admin/admin.php:568
|
680 |
msgid "You don't have an XML Sitemap!"
|
681 |
msgstr "Vous n'avez pas de Sitemap XML !"
|
682 |
|
683 |
+
#: inc/admin/admin.php:569
|
684 |
+
msgid "Medium impact"
|
685 |
+
msgstr "Impact modéré"
|
686 |
+
|
687 |
+
#: inc/admin/admin.php:582
|
688 |
msgid "Titles & metas"
|
689 |
msgstr "Titres et Métas"
|
690 |
|
691 |
+
#: inc/admin/admin.php:583
|
692 |
msgid "Manage all your titles & metas"
|
693 |
msgstr "Gérer tous vos titres et métas"
|
694 |
|
695 |
+
#: inc/admin/admin.php:584 inc/admin/admin.php:613 inc/admin/admin.php:642
|
696 |
+
#: inc/admin/admin.php:671 inc/admin/admin.php:700 inc/admin/admin.php:729
|
697 |
+
#: inc/admin/admin.php:757 inc/admin/admin.php:786 inc/admin/admin.php:797
|
698 |
+
#: inc/admin/admin.php:826 inc/admin/admin.php:854 inc/admin/admin.php:883
|
699 |
+
#: inc/admin/admin.php:895 inc/admin/admin.php:907
|
700 |
msgid "Manage"
|
701 |
msgstr "Gérer"
|
702 |
|
703 |
+
#: inc/admin/admin.php:596 inc/admin/admin.php:600 inc/admin/admin.php:625
|
704 |
+
#: inc/admin/admin.php:629 inc/admin/admin.php:654 inc/admin/admin.php:658
|
705 |
+
#: inc/admin/admin.php:683 inc/admin/admin.php:687 inc/admin/admin.php:712
|
706 |
+
#: inc/admin/admin.php:716 inc/admin/admin.php:741 inc/admin/admin.php:745
|
707 |
+
#: inc/admin/admin.php:769 inc/admin/admin.php:773 inc/admin/admin.php:809
|
708 |
+
#: inc/admin/admin.php:813 inc/admin/admin.php:838 inc/admin/admin.php:842
|
709 |
+
#: inc/admin/admin.php:866 inc/admin/admin.php:870
|
710 |
+
msgid "Click to disable this feature"
|
711 |
+
msgstr "Cliquez pour désactiver cette fonctionnalité"
|
712 |
+
|
713 |
+
#: inc/admin/admin.php:597 inc/admin/admin.php:599 inc/admin/admin.php:626
|
714 |
+
#: inc/admin/admin.php:628 inc/admin/admin.php:655 inc/admin/admin.php:657
|
715 |
+
#: inc/admin/admin.php:684 inc/admin/admin.php:686 inc/admin/admin.php:713
|
716 |
+
#: inc/admin/admin.php:715 inc/admin/admin.php:742 inc/admin/admin.php:744
|
717 |
+
#: inc/admin/admin.php:770 inc/admin/admin.php:772 inc/admin/admin.php:810
|
718 |
+
#: inc/admin/admin.php:812 inc/admin/admin.php:839 inc/admin/admin.php:841
|
719 |
+
#: inc/admin/admin.php:867 inc/admin/admin.php:869
|
720 |
+
msgid "Click to enable this feature"
|
721 |
+
msgstr "Cliquez pour activer cette fonctionnalité"
|
722 |
+
|
723 |
+
#: inc/admin/admin.php:612
|
724 |
msgid "Manage your XML Sitemap"
|
725 |
msgstr "Gérer votre Sitemap XML"
|
726 |
|
727 |
+
#: inc/admin/admin.php:641
|
728 |
msgid "Open Graph, Twitter Card, Google Knowledge Graph and more..."
|
729 |
msgstr "Open Graph, Twitter Card, Google Knowledge Graph et plus..."
|
730 |
|
731 |
+
#: inc/admin/admin.php:670
|
732 |
+
msgid "Track everything about your visitors with Google Analytics"
|
733 |
+
msgstr "Suivez tout ce qui concerne vos visiteurs avec Google Analytics"
|
734 |
+
|
735 |
+
#: inc/admin/admin.php:699
|
736 |
msgid "Advanced SEO options for advanced users!"
|
737 |
msgstr "Options SEO avancées pour utilisateurs avancés !"
|
738 |
|
739 |
+
#: inc/admin/admin.php:727
|
740 |
+
msgid "WooCommerce"
|
741 |
+
msgstr "WooCommerce"
|
742 |
+
|
743 |
+
#: inc/admin/admin.php:728
|
744 |
+
msgid "Improve WooCommerce SEO"
|
745 |
+
msgstr "Améliorer le SEO de WooCommerce"
|
746 |
+
|
747 |
+
#: inc/admin/admin.php:755
|
748 |
+
msgid "Breadcrumbs"
|
749 |
+
msgstr "Fil d'ariane"
|
750 |
+
|
751 |
+
#: inc/admin/admin.php:756
|
752 |
+
msgid "Enable Breadcrumbs for your theme and improve your SEO in SERPs"
|
753 |
+
msgstr ""
|
754 |
+
"Activer le fil d'ariane pour votre thème et améliorer votre SEO dans les "
|
755 |
+
"résultats de recherche "
|
756 |
+
|
757 |
+
#: inc/admin/admin.php:784
|
758 |
+
msgid "Google Page Speed"
|
759 |
+
msgstr "Google Page Speed"
|
760 |
+
|
761 |
+
#: inc/admin/admin.php:785
|
762 |
+
msgid "Track your website performance to improve SEO with Google Page Speed"
|
763 |
+
msgstr ""
|
764 |
+
"Suivez les performances de votre site Web afin d’améliorer le SEO avec "
|
765 |
+
"Google Page Speed"
|
766 |
+
|
767 |
+
#: inc/admin/admin.php:795
|
768 |
+
msgid "Robots"
|
769 |
+
msgstr "Robots"
|
770 |
+
|
771 |
+
#: inc/admin/admin.php:796
|
772 |
+
msgid "Edit your robots.txt file"
|
773 |
+
msgstr "Editer votre fichier robots.txt"
|
774 |
+
|
775 |
+
#: inc/admin/admin.php:824
|
776 |
+
msgid "Google News Sitemap"
|
777 |
+
msgstr "Google News Sitemap"
|
778 |
+
|
779 |
+
#: inc/admin/admin.php:825
|
780 |
+
msgid "Optimize your site for Google News"
|
781 |
+
msgstr "Optimisez votre site pour Google Actualités"
|
782 |
+
|
783 |
+
#: inc/admin/admin.php:853
|
784 |
+
msgid "Monitor 404, create 301, 302 and 307 redirections"
|
785 |
+
msgstr "Surveiller les 404, créer des redirections 301, 302 et 307"
|
786 |
+
|
787 |
+
#: inc/admin/admin.php:881
|
788 |
+
msgid "htaccess"
|
789 |
+
msgstr "htaccess"
|
790 |
+
|
791 |
+
#: inc/admin/admin.php:882
|
792 |
+
msgid "Edit your htaccess file."
|
793 |
+
msgstr "Modifier votre fichier htaccess."
|
794 |
+
|
795 |
+
#: inc/admin/admin.php:894
|
796 |
msgid "Import / export SEOPress settings from site to site."
|
797 |
msgstr "Importer / Exporter les paramètres d'un site à un autre"
|
798 |
|
799 |
+
#: inc/admin/admin.php:905
|
800 |
+
msgid "License"
|
801 |
+
msgstr "Licence"
|
802 |
+
|
803 |
+
#: inc/admin/admin.php:906
|
804 |
+
msgid "Edit your SEOPress license key."
|
805 |
+
msgstr "Modifier votre clé de licence SEOPress."
|
806 |
+
|
807 |
+
#: inc/admin/admin.php:975
|
808 |
msgid "Site title"
|
809 |
msgstr "Titre du site"
|
810 |
|
811 |
+
#: inc/admin/admin.php:1198 inc/admin/admin.php:2414
|
812 |
msgid "Enable XML Sitemap"
|
813 |
msgstr "Activez le Sitemap XML"
|
814 |
|
815 |
+
#: inc/admin/admin.php:1214
|
816 |
msgid "Check to INCLUDE Post Types"
|
817 |
msgstr "Cochez pour INCLURE les Types d'article"
|
818 |
|
819 |
+
#: inc/admin/admin.php:1230
|
820 |
msgid "Check to INCLUDE Taxonomies"
|
821 |
msgstr "Cochez pour INCLURE les Taxonomies"
|
822 |
|
823 |
+
#: inc/admin/admin.php:1247
|
824 |
msgid "Person or organization"
|
825 |
msgstr "Personne ou Organisation"
|
826 |
|
827 |
+
#: inc/admin/admin.php:1255
|
828 |
+
msgid "Your name / organization"
|
829 |
+
msgstr "Votre nom / organisation"
|
830 |
|
831 |
+
#: inc/admin/admin.php:1263
|
832 |
msgid "Your photo / organization logo"
|
833 |
msgstr "Votre photo / logo"
|
834 |
|
835 |
+
#: inc/admin/admin.php:1280
|
836 |
msgid "Facebook Page URL"
|
837 |
msgstr "URL de la page Facebook"
|
838 |
|
839 |
+
#: inc/admin/admin.php:1288
|
840 |
msgid "Twitter Username"
|
841 |
msgstr "Compte utilisateur Twitter"
|
842 |
|
843 |
+
#: inc/admin/admin.php:1296
|
844 |
msgid "Google + URL"
|
845 |
msgstr "URL Google +"
|
846 |
|
847 |
+
#: inc/admin/admin.php:1304
|
848 |
msgid "Pinterest URL"
|
849 |
msgstr "URL Pinterest"
|
850 |
|
851 |
+
#: inc/admin/admin.php:1312
|
852 |
msgid "Instagram URL"
|
853 |
+
msgstr "URL Instagram"
|
854 |
|
855 |
+
#: inc/admin/admin.php:1320
|
856 |
msgid "YouTube URL"
|
857 |
msgstr "URL YouTube"
|
858 |
|
859 |
+
#: inc/admin/admin.php:1328
|
860 |
msgid "LinkedIn URL"
|
861 |
+
msgstr "URL LinkedIn"
|
862 |
|
863 |
+
#: inc/admin/admin.php:1336
|
864 |
msgid "MySpace URL"
|
865 |
msgstr "URL MySpace"
|
866 |
|
867 |
+
#: inc/admin/admin.php:1344
|
868 |
msgid "Soundcloud URL"
|
869 |
msgstr "URL Soundcloud"
|
870 |
|
871 |
+
#: inc/admin/admin.php:1352
|
872 |
msgid "Tumblr URL"
|
873 |
msgstr "URL Tumblr"
|
874 |
|
875 |
+
#: inc/admin/admin.php:1369
|
876 |
msgid "Enable Open Graph Data"
|
877 |
msgstr "Activez les données Open Graph"
|
878 |
|
879 |
+
#: inc/admin/admin.php:1377
|
880 |
msgid "Select a default image"
|
881 |
msgstr "Sélectionnez une image par défaut"
|
882 |
|
883 |
+
#: inc/admin/admin.php:1385
|
884 |
msgid "Facebook Admin ID"
|
885 |
msgstr "Facebook Admin ID"
|
886 |
|
887 |
+
#: inc/admin/admin.php:1393
|
888 |
msgid "Facebook App ID"
|
889 |
msgstr "Facebook App ID"
|
890 |
|
891 |
+
#: inc/admin/admin.php:1410
|
892 |
msgid "Enable Twitter Card"
|
893 |
msgstr "Activez Twitter Card"
|
894 |
|
895 |
+
#: inc/admin/admin.php:1418
|
896 |
msgid "Default Twitter Image"
|
897 |
msgstr "Image Twitter par défaut"
|
898 |
|
899 |
+
#: inc/admin/admin.php:1426
|
900 |
msgid "Image size for Twitter Summary card"
|
901 |
msgstr "Taille d'image pour Twitter Summary Card"
|
902 |
|
903 |
+
#: inc/admin/admin.php:1443 inc/admin/admin.php:2774
|
904 |
+
msgid "Enable Google Analytics tracking"
|
905 |
+
msgstr "Activer le suivi Google Analytics"
|
906 |
+
|
907 |
+
#: inc/admin/admin.php:1451
|
908 |
+
msgid "Enter your tracking ID"
|
909 |
+
msgstr "Saisissez votre ID de suivi"
|
910 |
+
|
911 |
+
#: inc/admin/admin.php:1459
|
912 |
+
msgid "Exclude user roles from tracking"
|
913 |
+
msgstr "Exclure des rôles utilisateurs du suivi"
|
914 |
+
|
915 |
+
#: inc/admin/admin.php:1477 inc/admin/admin.php:2826
|
916 |
+
msgid "Enable remarketing, demographics and interest reporting"
|
917 |
msgstr ""
|
918 |
+
"Activer le remarketing, les rapports démographiques et centres d'intérêts"
|
919 |
+
|
920 |
+
#: inc/admin/admin.php:1485 inc/admin/admin.php:2843
|
921 |
+
msgid "Enable IP Anonymization"
|
922 |
+
msgstr "Activer l'anonymisation des IP"
|
923 |
+
|
924 |
+
#: inc/admin/admin.php:1493 inc/admin/admin.php:2860
|
925 |
+
msgid "Enhanced Link Attribution"
|
926 |
+
msgstr "Améliorer l'attribution des liens"
|
927 |
+
|
928 |
+
#: inc/admin/admin.php:1501 inc/admin/admin.php:2877
|
929 |
+
msgid "Enable cross-domain tracking"
|
930 |
+
msgstr "Activer le suivi cross-domain"
|
931 |
+
|
932 |
+
#: inc/admin/admin.php:1509
|
933 |
+
msgid "Cross domains"
|
934 |
+
msgstr "Cross domains"
|
935 |
+
|
936 |
+
#: inc/admin/admin.php:1527
|
937 |
+
msgid "Track Authors"
|
938 |
+
msgstr "Suivre les Auteurs"
|
939 |
+
|
940 |
+
#: inc/admin/admin.php:1535
|
941 |
+
msgid "Track Categories"
|
942 |
+
msgstr "Suivre les Catégories"
|
943 |
+
|
944 |
+
#: inc/admin/admin.php:1543
|
945 |
+
msgid "Track Tags"
|
946 |
+
msgstr "Suivre les Etiquettes"
|
947 |
+
|
948 |
+
#: inc/admin/admin.php:1551
|
949 |
+
msgid "Track Post Types"
|
950 |
+
msgstr "Suivre les Types d'articles personnalisés"
|
951 |
+
|
952 |
+
#: inc/admin/admin.php:1559
|
953 |
+
msgid "Track Logged In Users"
|
954 |
+
msgstr "Suivre les utilisateurs connectés"
|
955 |
+
|
956 |
+
#: inc/admin/admin.php:1576
|
957 |
+
msgid "Redirect attachment pages to post parent"
|
958 |
+
msgstr ""
|
959 |
+
"Rediriger les pages de type pièces jointes vers la page parent (attachment)"
|
960 |
|
961 |
+
#: inc/admin/admin.php:1584
|
962 |
msgid "Remove stop words from URL"
|
963 |
msgstr "Supprimer les mots inutiles des URL"
|
964 |
|
965 |
+
#: inc/admin/admin.php:1592
|
966 |
msgid "Google site verification"
|
967 |
msgstr "Vérification de site Google"
|
968 |
|
969 |
+
#: inc/admin/admin.php:1600
|
970 |
msgid "Bing site verification"
|
971 |
msgstr "Vérification de site Bing"
|
972 |
|
973 |
+
#: inc/admin/admin.php:1608
|
974 |
msgid "Pinterest site verification"
|
975 |
msgstr "Vérification de site Pinterest :"
|
976 |
|
977 |
+
#: inc/admin/admin.php:1616
|
978 |
msgid "Yandex site verification"
|
979 |
msgstr "Vérification de site Yandex"
|
980 |
|
981 |
+
#: inc/admin/admin.php:1633
|
982 |
+
msgid "SEOPress in admin bar"
|
983 |
+
msgstr "SEOPress dans la barre d’admin"
|
984 |
+
|
985 |
+
#: inc/admin/admin.php:1641
|
986 |
+
msgid "Show Title tag column in post types"
|
987 |
+
msgstr "Afficher la balise Titre dans les colonnes des articles personnalisés"
|
988 |
+
|
989 |
+
#: inc/admin/admin.php:1649
|
990 |
+
msgid "Show Meta description column in post types"
|
991 |
+
msgstr ""
|
992 |
+
"Afficher la meta description dans les colonnes des articles personnalisés"
|
993 |
+
|
994 |
+
#: inc/admin/admin.php:1693
|
995 |
msgid "<p>Customize your titles & metas for homepage</p>"
|
996 |
msgstr "<p>Personnalisez vos titres et métas pour l'accueil</p>"
|
997 |
|
998 |
+
#: inc/admin/admin.php:1698
|
999 |
msgid "<p>Customize your titles & metas for Single Custom Post Types</p>"
|
1000 |
msgstr ""
|
1001 |
"<p>Personnalisez vos titres et métas pour les singles des Types d'article</p>"
|
1002 |
|
1003 |
+
#: inc/admin/admin.php:1703
|
1004 |
msgid "<p>Customize your metas for all pages</p>"
|
1005 |
msgstr "<p>Personnalisez vos métas pour toutes les pages</p>"
|
1006 |
|
1007 |
+
#: inc/admin/admin.php:1708
|
1008 |
msgid "<p>Customize your metas for all taxonomies archives</p>"
|
1009 |
msgstr "<p>Personnalisez vos métas pour toutes les archives de taxonomies</p>"
|
1010 |
|
1011 |
+
#: inc/admin/admin.php:1713
|
1012 |
msgid "<p>Customize your metas for all archives</p>"
|
1013 |
msgstr "<p>Personnalisez vos métas pour les archives</p>"
|
1014 |
|
1015 |
+
#: inc/admin/admin.php:1718
|
1016 |
msgid "<p>Enable your Sitemap</p>"
|
1017 |
msgstr "<p>Activez votre Sitemap</p>"
|
1018 |
|
1019 |
+
#: inc/admin/admin.php:1719
|
1020 |
msgid ""
|
1021 |
"To view your sitemap, enable permalinks (not default one), and save settings "
|
1022 |
"to flush them."
|
1024 |
"Pour voir votre sitemap, activez les permaliens (pas ceux par défaut), et "
|
1025 |
"sauvegardez les paramètres pour les mettre à jour."
|
1026 |
|
1027 |
+
#: inc/admin/admin.php:1721
|
1028 |
msgid ""
|
1029 |
"Only the last 1000 items are listed in Sitemaps for performances issues."
|
1030 |
msgstr ""
|
1031 |
+
"Seuls les 1000 derniers éléments sont répertoriés dans les Sitemaps pour des "
|
1032 |
+
"raisons de performances."
|
1033 |
|
1034 |
+
#: inc/admin/admin.php:1724
|
1035 |
msgid "View your sitemap"
|
1036 |
msgstr "Voir votre sitemap"
|
1037 |
|
1038 |
+
#: inc/admin/admin.php:1726
|
1039 |
msgid "Ping Google manually"
|
1040 |
msgstr "Pinger Google manuellement"
|
1041 |
|
1042 |
+
#: inc/admin/admin.php:1728
|
1043 |
msgid "Flush permalinks"
|
1044 |
msgstr "Mettre à jour les permaliens"
|
1045 |
|
1046 |
+
#: inc/admin/admin.php:1734
|
1047 |
msgid "<p>Include / Exclude Post Types</p>"
|
1048 |
msgstr "<p>Inclure / Exclure les Types d'article</p>"
|
1049 |
|
1050 |
+
#: inc/admin/admin.php:1739
|
1051 |
msgid "<p>Include / Exclude Taxonomies</p>"
|
1052 |
msgstr "<p>Inclure / Exclure les Taxonomies</p>"
|
1053 |
|
1054 |
+
#: inc/admin/admin.php:1744
|
1055 |
msgid "<p>Configure Google Knowledge Graph</p>"
|
1056 |
msgstr "<p>Configurer Google Knowledge Graph</p>"
|
1057 |
|
1058 |
+
#: inc/admin/admin.php:1749
|
1059 |
msgid "<p>Link your site with your social accounts</p>"
|
1060 |
msgstr "<p>Lier votre site à vos comptes sociaux</p>"
|
1061 |
|
1062 |
+
#: inc/admin/admin.php:1754
|
1063 |
msgid "<p>Manage Open Graph datas</p>"
|
1064 |
msgstr "<p>Gérer l'Open Graph datas</p>"
|
1065 |
|
1066 |
+
#: inc/admin/admin.php:1759
|
1067 |
msgid "<p>Manage your Twitter card</p>"
|
1068 |
msgstr "<p>Gérer votre Twitter card</p>"
|
1069 |
|
1070 |
+
#: inc/admin/admin.php:1764
|
1071 |
+
msgid "<p>Link your Google Analytics to your website</p>"
|
1072 |
+
msgstr "<p>Lier Google Analytics à votre site</p>"
|
1073 |
+
|
1074 |
+
#: inc/admin/admin.php:1769
|
1075 |
+
msgid "<p>Configure your Google Analytics tracking code</p>"
|
1076 |
+
msgstr "<p>Configurer votre code de suivi Google Analytics</p>"
|
1077 |
+
|
1078 |
+
#: inc/admin/admin.php:1774
|
1079 |
+
msgid "<p>Configure your Google Analytics custom dimensions</p>"
|
1080 |
+
msgstr "<p>Configurer vos dimensions personnalisées pour Google Analytics</p>"
|
1081 |
+
|
1082 |
+
#: inc/admin/admin.php:1779
|
1083 |
msgid "<p>Advanced SEO options</p>"
|
1084 |
msgstr "<p>Options avancées de SEO</p>"
|
1085 |
|
1086 |
+
#: inc/admin/admin.php:1784
|
1087 |
+
msgid "<p>Customize SEOPress to fit your needs</p>"
|
1088 |
+
msgstr "<p>Personnaliser SEOPress pour correspondre à vos besoins</p>"
|
1089 |
+
|
1090 |
+
#: inc/admin/admin.php:1795
|
1091 |
msgid "My awesome website"
|
1092 |
msgstr "Mon super site"
|
1093 |
|
1094 |
+
#: inc/admin/admin.php:1800 inc/admin/admin.php:1811 inc/admin/admin.php:1847
|
1095 |
+
#: inc/admin/admin.php:1962 inc/admin/admin.php:1993 inc/admin/admin.php:2070
|
1096 |
+
#: inc/admin/admin.php:2143 inc/admin/admin.php:2193 inc/admin/admin.php:2242
|
1097 |
+
#: inc/admin/admin.php:2272
|
1098 |
+
msgid "More tags"
|
1099 |
+
msgstr "Plus de balises"
|
1100 |
+
|
1101 |
+
#: inc/admin/admin.php:1806
|
1102 |
+
msgid "This is a cool website about Wookiees"
|
1103 |
msgstr "Un site cool sur les Wookies"
|
1104 |
|
1105 |
+
#: inc/admin/admin.php:1824 inc/admin/admin.php:1933 inc/admin/admin.php:2047
|
1106 |
+
#: inc/admin/admin.php:2132 inc/admin/admin.php:2182 inc/admin/admin.php:2231
|
1107 |
+
#: inc/admin/admin.php:2263
|
1108 |
msgid "Title template"
|
1109 |
msgstr "Template de Titre"
|
1110 |
|
1111 |
+
#: inc/admin/admin.php:1843
|
1112 |
+
msgid "Post Title"
|
1113 |
+
msgstr "Titre du post"
|
1114 |
+
|
1115 |
+
#: inc/admin/admin.php:1854 inc/admin/admin.php:1969 inc/admin/admin.php:2077
|
1116 |
+
#: inc/admin/admin.php:2149 inc/admin/admin.php:2199 inc/admin/admin.php:2248
|
1117 |
+
#: inc/admin/admin.php:2278
|
1118 |
msgid "Meta description template"
|
1119 |
msgstr "Template de Méta Description"
|
1120 |
|
1121 |
+
#: inc/admin/admin.php:1913
|
1122 |
msgid "Display date in Google search results?"
|
1123 |
msgstr "Afficher la date dans les résultats de recherche Google ?"
|
1124 |
|
1125 |
+
#: inc/admin/admin.php:1953
|
1126 |
+
msgid "Category Title"
|
1127 |
+
msgstr "Titre de catégorie"
|
1128 |
+
|
1129 |
+
#: inc/admin/admin.php:1955
|
1130 |
+
msgid "Tag Title"
|
1131 |
+
msgstr "Titre de l'étiquette"
|
1132 |
+
|
1133 |
+
#: inc/admin/admin.php:1957
|
1134 |
+
msgid "Term Title"
|
1135 |
+
msgstr "Titre du terme"
|
1136 |
+
|
1137 |
+
#: inc/admin/admin.php:1986
|
1138 |
+
msgid "Category Description"
|
1139 |
+
msgstr "Description de la catégorie"
|
1140 |
+
|
1141 |
+
#: inc/admin/admin.php:1988
|
1142 |
+
msgid "Tag Description"
|
1143 |
+
msgstr "Description du tag"
|
1144 |
+
|
1145 |
+
#: inc/admin/admin.php:1990
|
1146 |
+
msgid "Term Description"
|
1147 |
+
msgstr "Description du terme"
|
1148 |
+
|
1149 |
+
#: inc/admin/admin.php:2066
|
1150 |
+
msgid "Post Type Archive Name"
|
1151 |
+
msgstr "Nom d'archive du Type d'article"
|
1152 |
+
|
1153 |
+
#: inc/admin/admin.php:2130
|
1154 |
msgid "Author archives"
|
1155 |
msgstr "Archives de l'auteur"
|
1156 |
|
1157 |
+
#: inc/admin/admin.php:2180
|
1158 |
msgid "Date archives"
|
1159 |
msgstr "Archives par date"
|
1160 |
|
1161 |
+
#: inc/admin/admin.php:2191
|
1162 |
+
msgid "Archive date"
|
1163 |
+
msgstr "Date d'archive"
|
1164 |
+
|
1165 |
+
#: inc/admin/admin.php:2229
|
1166 |
msgid "Search archives"
|
1167 |
msgstr "Archives de recherche"
|
1168 |
|
1169 |
+
#: inc/admin/admin.php:2240
|
1170 |
+
msgid "Search Keywords"
|
1171 |
+
msgstr "Mots clés recherchés"
|
1172 |
+
|
1173 |
+
#: inc/admin/admin.php:2261
|
1174 |
msgid "404 archives"
|
1175 |
msgstr "Page 404"
|
1176 |
|
1177 |
+
#: inc/admin/admin.php:2453 inc/admin/admin.php:2493
|
|
|
|
|
|
|
|
|
1178 |
msgid "Include"
|
1179 |
msgstr "Inclure"
|
1180 |
|
1181 |
+
#: inc/admin/admin.php:2512
|
1182 |
msgid "Person"
|
1183 |
msgstr "Personne"
|
1184 |
|
1185 |
+
#: inc/admin/admin.php:2515
|
1186 |
msgid "Organization"
|
1187 |
msgstr "Organisation"
|
1188 |
|
1189 |
+
#: inc/admin/admin.php:2526
|
1190 |
msgid "eg: Apple"
|
1191 |
msgstr "ex: Apple"
|
1192 |
|
1193 |
+
#: inc/admin/admin.php:2537
|
1194 |
msgid "Select your logo"
|
1195 |
msgstr "Sélectionnez votre logo"
|
1196 |
|
1197 |
+
#: inc/admin/admin.php:2563
|
1198 |
msgid "eg: https://www.facebook.com/your-page"
|
1199 |
msgstr "ex: https://www.facebook.com/your-page"
|
1200 |
|
1201 |
+
#: inc/admin/admin.php:2573
|
1202 |
msgid "eg: @wpcloudy"
|
1203 |
msgstr "ex: @wpcloudy"
|
1204 |
|
1205 |
+
#: inc/admin/admin.php:2583
|
1206 |
msgid "eg: https://plus.google.com/+BenjaminDenis"
|
1207 |
msgstr "ex: https://plus.google.com/+BenjaminDenis"
|
1208 |
|
1209 |
+
#: inc/admin/admin.php:2593
|
1210 |
msgid "eg: https://pinterest.com/wpbuy/"
|
1211 |
msgstr "ex: https://pinterest.com/wpbuy/"
|
1212 |
|
1213 |
+
#: inc/admin/admin.php:2603
|
1214 |
msgid "eg: https://www.instagram.com/your-name/"
|
1215 |
msgstr "ex: https://www.instagram.com/your-name/"
|
1216 |
|
1217 |
+
#: inc/admin/admin.php:2613
|
1218 |
msgid "eg: https://www.youtube.com/channel/UCpQzarWu55UzCIH7-OW6pwA"
|
1219 |
msgstr "ex: https://www.youtube.com/channel/UCpQzarWu55UzCIH7-OW6pwA"
|
1220 |
|
1221 |
+
#: inc/admin/admin.php:2623
|
1222 |
msgid "eg: https://www.linkedin.com/in/benjamin-denis-70672b3b"
|
1223 |
msgstr "ex: https://www.linkedin.com/in/benjamin-denis-70672b3b"
|
1224 |
|
1225 |
+
#: inc/admin/admin.php:2633
|
1226 |
msgid "eg: https://myspace.com/your-page"
|
1227 |
msgstr "ex: https://myspace.com/your-page"
|
1228 |
|
1229 |
+
#: inc/admin/admin.php:2643
|
1230 |
msgid "eg: https://soundcloud.com/michaelmccannmusic"
|
1231 |
msgstr "ex: https://soundcloud.com/michaelmccannmusic"
|
1232 |
|
1233 |
+
#: inc/admin/admin.php:2653
|
1234 |
msgid "eg: https://your-site.tumblr.com"
|
1235 |
msgstr "ex: https://your-site.tumblr.com"
|
1236 |
|
1237 |
+
#: inc/admin/admin.php:2670
|
1238 |
msgid "Enable OG data"
|
1239 |
msgstr "Activer les données OG"
|
1240 |
|
1241 |
+
#: inc/admin/admin.php:2722
|
1242 |
msgid "Enable Twitter card"
|
1243 |
msgstr "Activer Twitter Card"
|
1244 |
|
1245 |
+
#: inc/admin/admin.php:2753
|
1246 |
msgid "Default"
|
1247 |
msgstr "Défaut"
|
1248 |
|
1249 |
+
#: inc/admin/admin.php:2756
|
1250 |
msgid "Large"
|
1251 |
msgstr "Grande"
|
1252 |
|
1253 |
+
#: inc/admin/admin.php:2784
|
1254 |
+
msgid "Enter your Tracking ID (UA-XXXX-XX)"
|
1255 |
+
msgstr "Entrer votre ID de tracking (UA-XXXX-XX)"
|
1256 |
+
|
1257 |
+
#: inc/admin/admin.php:2887
|
1258 |
+
msgid "Enter yours domains"
|
1259 |
+
msgstr "Saisissez vos domaines"
|
1260 |
+
|
1261 |
+
#: inc/admin/admin.php:2906 inc/admin/admin.php:2983 inc/admin/admin.php:3060
|
1262 |
+
#: inc/admin/admin.php:3137 inc/admin/admin.php:3214
|
1263 |
+
msgid "Custom Dimension #1"
|
1264 |
+
msgstr "Dimension personnalisée #1"
|
1265 |
+
|
1266 |
+
#: inc/admin/admin.php:2909 inc/admin/admin.php:2986 inc/admin/admin.php:3063
|
1267 |
+
#: inc/admin/admin.php:3140 inc/admin/admin.php:3217
|
1268 |
+
msgid "Custom Dimension #2"
|
1269 |
+
msgstr "Dimension personnalisée #2"
|
1270 |
+
|
1271 |
+
#: inc/admin/admin.php:2912 inc/admin/admin.php:2989 inc/admin/admin.php:3066
|
1272 |
+
#: inc/admin/admin.php:3143 inc/admin/admin.php:3220
|
1273 |
+
msgid "Custom Dimension #3"
|
1274 |
+
msgstr "Dimension personnalisée #3"
|
1275 |
+
|
1276 |
+
#: inc/admin/admin.php:2915 inc/admin/admin.php:2992 inc/admin/admin.php:3069
|
1277 |
+
#: inc/admin/admin.php:3146 inc/admin/admin.php:3223
|
1278 |
+
msgid "Custom Dimension #4"
|
1279 |
+
msgstr "Dimension personnalisée #4"
|
1280 |
+
|
1281 |
+
#: inc/admin/admin.php:2918 inc/admin/admin.php:2995 inc/admin/admin.php:3072
|
1282 |
+
#: inc/admin/admin.php:3149 inc/admin/admin.php:3226
|
1283 |
+
msgid "Custom Dimension #5"
|
1284 |
+
msgstr "Dimension personnalisée #5"
|
1285 |
+
|
1286 |
+
#: inc/admin/admin.php:2921 inc/admin/admin.php:2998 inc/admin/admin.php:3075
|
1287 |
+
#: inc/admin/admin.php:3152 inc/admin/admin.php:3229
|
1288 |
+
msgid "Custom Dimension #6"
|
1289 |
+
msgstr "Dimension personnalisée #6"
|
1290 |
+
|
1291 |
+
#: inc/admin/admin.php:2924 inc/admin/admin.php:3001 inc/admin/admin.php:3078
|
1292 |
+
#: inc/admin/admin.php:3155 inc/admin/admin.php:3232
|
1293 |
+
msgid "Custom Dimension #7"
|
1294 |
+
msgstr "Dimension personnalisée #7"
|
1295 |
+
|
1296 |
+
#: inc/admin/admin.php:2927 inc/admin/admin.php:3004 inc/admin/admin.php:3081
|
1297 |
+
#: inc/admin/admin.php:3158 inc/admin/admin.php:3235
|
1298 |
+
msgid "Custom Dimension #8"
|
1299 |
+
msgstr "Dimension personnalisée #8"
|
1300 |
+
|
1301 |
+
#: inc/admin/admin.php:2930 inc/admin/admin.php:3007 inc/admin/admin.php:3084
|
1302 |
+
#: inc/admin/admin.php:3161 inc/admin/admin.php:3238
|
1303 |
+
msgid "Custom Dimension #9"
|
1304 |
+
msgstr "Dimension personnalisée #9"
|
1305 |
+
|
1306 |
+
#: inc/admin/admin.php:2933 inc/admin/admin.php:3010 inc/admin/admin.php:3087
|
1307 |
+
#: inc/admin/admin.php:3164 inc/admin/admin.php:3241
|
1308 |
+
msgid "Custom Dimension #10"
|
1309 |
+
msgstr "Dimension personnalisée #10"
|
1310 |
+
|
1311 |
+
#: inc/admin/admin.php:2936 inc/admin/admin.php:3013 inc/admin/admin.php:3090
|
1312 |
+
#: inc/admin/admin.php:3167 inc/admin/admin.php:3244
|
1313 |
+
msgid "Custom Dimension #11"
|
1314 |
+
msgstr "Dimension personnalisée #11"
|
1315 |
+
|
1316 |
+
#: inc/admin/admin.php:2939 inc/admin/admin.php:3016 inc/admin/admin.php:3093
|
1317 |
+
#: inc/admin/admin.php:3170 inc/admin/admin.php:3247
|
1318 |
+
msgid "Custom Dimension #12"
|
1319 |
+
msgstr "Dimension personnalisée #12"
|
1320 |
+
|
1321 |
+
#: inc/admin/admin.php:2942 inc/admin/admin.php:3019 inc/admin/admin.php:3096
|
1322 |
+
#: inc/admin/admin.php:3173 inc/admin/admin.php:3250
|
1323 |
+
msgid "Custom Dimension #13"
|
1324 |
+
msgstr "Dimension personnalisée #13"
|
1325 |
+
|
1326 |
+
#: inc/admin/admin.php:2945 inc/admin/admin.php:3022 inc/admin/admin.php:3099
|
1327 |
+
#: inc/admin/admin.php:3176 inc/admin/admin.php:3253
|
1328 |
+
msgid "Custom Dimension #14"
|
1329 |
+
msgstr "Dimension personnalisée #14"
|
1330 |
+
|
1331 |
+
#: inc/admin/admin.php:2948 inc/admin/admin.php:3025 inc/admin/admin.php:3102
|
1332 |
+
#: inc/admin/admin.php:3179 inc/admin/admin.php:3256
|
1333 |
+
msgid "Custom Dimension #15"
|
1334 |
+
msgstr "Dimension personnalisée #15"
|
1335 |
+
|
1336 |
+
#: inc/admin/admin.php:2951 inc/admin/admin.php:3028 inc/admin/admin.php:3105
|
1337 |
+
#: inc/admin/admin.php:3182 inc/admin/admin.php:3259
|
1338 |
+
msgid "Custom Dimension #16"
|
1339 |
+
msgstr "Dimension personnalisée #16"
|
1340 |
+
|
1341 |
+
#: inc/admin/admin.php:2954 inc/admin/admin.php:3031 inc/admin/admin.php:3108
|
1342 |
+
#: inc/admin/admin.php:3185 inc/admin/admin.php:3262
|
1343 |
+
msgid "Custom Dimension #17"
|
1344 |
+
msgstr "Dimension personnalisée #17"
|
1345 |
+
|
1346 |
+
#: inc/admin/admin.php:2957 inc/admin/admin.php:3034 inc/admin/admin.php:3111
|
1347 |
+
#: inc/admin/admin.php:3188 inc/admin/admin.php:3265
|
1348 |
+
msgid "Custom Dimension #18"
|
1349 |
+
msgstr "Dimension personnalisée #18"
|
1350 |
+
|
1351 |
+
#: inc/admin/admin.php:2960 inc/admin/admin.php:3037 inc/admin/admin.php:3114
|
1352 |
+
#: inc/admin/admin.php:3191 inc/admin/admin.php:3268
|
1353 |
+
msgid "Custom Dimension #19"
|
1354 |
+
msgstr "Dimension personnalisée #19"
|
1355 |
+
|
1356 |
+
#: inc/admin/admin.php:2963 inc/admin/admin.php:3040 inc/admin/admin.php:3117
|
1357 |
+
#: inc/admin/admin.php:3194 inc/admin/admin.php:3271
|
1358 |
+
msgid "Custom Dimension #20"
|
1359 |
+
msgstr "Dimension personnalisée #20"
|
1360 |
+
|
1361 |
+
#: inc/admin/admin.php:3289
|
1362 |
msgid "Redirect attachment pages to post parent (or homepage if none)"
|
1363 |
msgstr ""
|
1364 |
"Rediriger les pages de pièces jointes vers le post parent (si aucun, "
|
1365 |
"rediriger vers page d'accueil)"
|
1366 |
|
1367 |
+
#: inc/admin/admin.php:3306
|
1368 |
msgid "Remove stop words in permalinks"
|
1369 |
msgstr "Supprimer les mots clés inutiles des permaliens"
|
1370 |
|
1371 |
+
#: inc/admin/admin.php:3306
|
1372 |
msgid ""
|
1373 |
"Setting based on site language. Supported language EN, FR, ES, DE, IT, PT."
|
1374 |
msgstr ""
|
1375 |
"Réglage basé sur la langue du site. Langue prise en charge EN, FR, ES, DE, "
|
1376 |
"IT, PT."
|
1377 |
|
1378 |
+
#: inc/admin/admin.php:3316
|
1379 |
msgid "Enter Google meta value site verification"
|
1380 |
msgstr "Entrer la meta de vérification de site Google"
|
1381 |
|
1382 |
+
#: inc/admin/admin.php:3326
|
1383 |
msgid "Enter Bing meta value site verification"
|
1384 |
msgstr "Entrer la meta de vérification de site Bing"
|
1385 |
|
1386 |
+
#: inc/admin/admin.php:3336
|
1387 |
msgid "Enter Pinterest meta value site verification"
|
1388 |
msgstr "Entrer la meta de vérification de site Pinterest"
|
1389 |
|
1390 |
+
#: inc/admin/admin.php:3346
|
1391 |
msgid "Enter Yandex meta value site verification"
|
1392 |
msgstr "Entrer la meta de vérification de site Yandex"
|
1393 |
|
1394 |
+
#: inc/admin/admin.php:3363
|
1395 |
+
msgid "Remove SEOPress from Admin Bar in backend"
|
1396 |
+
msgstr "Supprimer SEOPress de la barre d'outils dans l'administration"
|
1397 |
+
|
1398 |
+
#: inc/admin/admin.php:3380
|
1399 |
+
msgid "Add title column"
|
1400 |
+
msgstr "Ajouter la colonne Titre"
|
1401 |
+
|
1402 |
+
#: inc/admin/admin.php:3397
|
1403 |
+
msgid "Add meta description column"
|
1404 |
+
msgstr "Ajouter la colonne meta description"
|
1405 |
+
|
1406 |
+
#: inc/functions/options-advanced-admin.php:57
|
1407 |
+
msgid "Title tag"
|
1408 |
+
msgstr "Balise Titre"
|
1409 |
+
|
1410 |
+
#: inc/functions/options-advanced-admin.php:60
|
1411 |
+
msgid "Meta Desc."
|
1412 |
+
msgstr "Meta Desc."
|
1413 |
+
|
1414 |
+
#: inc/functions/options-import-export.php:48
|
1415 |
msgid "Please upload a valid .json file"
|
1416 |
msgstr "Veuillez uploader un fichier JSON valide"
|
1417 |
|
1418 |
+
#: inc/functions/options-import-export.php:52
|
1419 |
msgid "Please upload a file to import"
|
1420 |
msgstr "Uploader un fichier à importer SVP"
|
1421 |
|
1422 |
+
#: seopress.php:228
|
1423 |
msgid "Settings"
|
1424 |
msgstr "Paramètres"
|
1425 |
|
1426 |
+
#: seopress.php:229
|
1427 |
msgid "SEOPress.org"
|
1428 |
msgstr "SEOPress.org"
|
1429 |
|
1430 |
+
#: seopress.php:231
|
1431 |
msgid "GO PRO!"
|
1432 |
msgstr "PASSEZ PRO !"
|
1433 |
|
1434 |
+
#~ msgid "Import Yoast Settings"
|
1435 |
+
#~ msgstr "Importer les paramètres de Yoast"
|
1436 |
+
|
1437 |
+
#~ msgid "Import Yoast settings from an INI file."
|
1438 |
+
#~ msgstr "Importer les paramètres de Yoast depuis un fichier INI."
|
1439 |
+
|
1440 |
+
#~ msgid "Learn how to export Yoast settings"
|
1441 |
+
#~ msgstr "Apprenez à exporter vos paramètres Yoast"
|
1442 |
+
|
1443 |
+
#~ msgid "Import Yoast settings"
|
1444 |
+
#~ msgstr "Importer les paramètres Yoast"
|
1445 |
+
|
1446 |
+
#~ msgid "Please upload a valid .ini file"
|
1447 |
+
#~ msgstr "Veuillez uploader un fichier INI valide"
|
1448 |
+
|
1449 |
+
#~ msgid "Your name/organization"
|
1450 |
+
#~ msgstr "Votre nom/organisation"
|
1451 |
+
|
1452 |
+
#~ msgid "Import / Export Settings"
|
1453 |
+
#~ msgstr "Paramètres Import / Export"
|
1454 |
+
|
1455 |
+
#~ msgid "Import / Export SEOPress settings from site to site"
|
1456 |
+
#~ msgstr "Importer / Exporter les paramètres SEOPress d'un site à un autre"
|
1457 |
+
|
1458 |
+
#~ msgid ""
|
1459 |
+
#~ "<strong>WARNING:</strong> Delete all options related to SEOPress in your "
|
1460 |
+
#~ "database."
|
1461 |
+
#~ msgstr ""
|
1462 |
+
#~ "<strong>AVERTISSEMENT:</strong> Supprime toutes les options liées à "
|
1463 |
+
#~ "SEOPress de votre base de données."
|
1464 |
+
|
1465 |
+
#~ msgid "Paged archives"
|
1466 |
+
#~ msgstr "Archives paginées"
|
1467 |
+
|
1468 |
+
#~ msgid ""
|
1469 |
+
#~ "Redirect attachment pages to post parent (if none, redirect to homepage)"
|
1470 |
+
#~ msgstr ""
|
1471 |
+
#~ "Rediriger les pages de pièces jointes vers le post parent (si aucun, "
|
1472 |
+
#~ "rediriger vers page d'accueil)"
|
1473 |
+
|
1474 |
+
#~ msgid "This is cool website about Wookiees"
|
1475 |
+
#~ msgstr "Un site cool sur les Wookies"
|
1476 |
+
|
1477 |
#~ msgid "The ultimate plugin to optimize your SEO!"
|
1478 |
#~ msgstr "Le plugin ultime pour optimiser votre SEO !"
|
1479 |
|
2255 |
#~ msgid "Right"
|
2256 |
#~ msgstr "Droite"
|
2257 |
|
|
|
|
|
|
|
2258 |
#~ msgid "File"
|
2259 |
#~ msgstr "Fichier"
|
2260 |
|
2498 |
#~ msgid "Toggle All"
|
2499 |
#~ msgstr "Tout sélectionner"
|
2500 |
|
|
|
|
|
|
|
2501 |
#~ msgid ""
|
2502 |
#~ "Before starting: define which roles to apply settings using Role Manager "
|
2503 |
#~ "page."
|
languages/wp-seopress.mo
CHANGED
Binary file
|
languages/wp-seopress.po
CHANGED
@@ -2,8 +2,8 @@ msgid ""
|
|
2 |
msgstr ""
|
3 |
"Project-Id-Version: SEOPress\n"
|
4 |
"Report-Msgid-Bugs-To: http://wordpress.org/tag/wp-cloudy\n"
|
5 |
-
"POT-Creation-Date: 2016-
|
6 |
-
"PO-Revision-Date: 2016-
|
7 |
"Last-Translator: \n"
|
8 |
"Language-Team: Benjamin DENIS <contact@seopress.org>\n"
|
9 |
"Language: en\n"
|
@@ -15,847 +15,1374 @@ msgstr ""
|
|
15 |
"X-Poedit-Basepath: ..\n"
|
16 |
"X-Poedit-SearchPath-0: .\n"
|
17 |
|
18 |
-
#: inc/admin/admin-
|
19 |
msgid "SEOPress"
|
20 |
msgstr ""
|
21 |
|
22 |
-
#: inc/admin/admin-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
23 |
msgid "Titles settings"
|
24 |
msgstr ""
|
25 |
|
26 |
-
#: inc/admin/admin-metaboxes.php:
|
27 |
-
#: inc/admin/admin.php:
|
|
|
28 |
msgid "Advanced"
|
29 |
msgstr ""
|
30 |
|
31 |
-
#: inc/admin/admin-metaboxes.php:
|
32 |
-
#: inc/admin/admin.php:
|
33 |
msgid "Social"
|
34 |
msgstr ""
|
35 |
|
36 |
-
#: inc/admin/admin-metaboxes.php:
|
37 |
msgid "Redirections"
|
38 |
msgstr ""
|
39 |
|
40 |
-
#: inc/admin/admin-metaboxes.php:
|
|
|
|
|
|
|
|
|
41 |
msgid "Title"
|
42 |
msgstr ""
|
43 |
|
44 |
-
#: inc/admin/admin-metaboxes.php:
|
45 |
msgid "Enter your title"
|
46 |
msgstr ""
|
47 |
|
48 |
-
#: inc/admin/admin-metaboxes.php:
|
49 |
msgid "(maximum recommended limit)"
|
50 |
msgstr ""
|
51 |
|
52 |
-
#: inc/admin/admin-metaboxes.php:
|
|
|
53 |
msgid "Meta description"
|
54 |
msgstr ""
|
55 |
|
56 |
-
#: inc/admin/admin-metaboxes.php:
|
57 |
msgid "Enter your meta description"
|
58 |
msgstr ""
|
59 |
|
60 |
-
#: inc/admin/admin-metaboxes.php:
|
61 |
msgid "Google Snippet Preview"
|
62 |
msgstr ""
|
63 |
|
64 |
-
#: inc/admin/admin-metaboxes.php:
|
65 |
msgid "This is what your page will look like in Google search results"
|
66 |
msgstr ""
|
67 |
|
68 |
-
#: inc/admin/admin-metaboxes.php:
|
69 |
-
#: inc/admin/admin.php:
|
70 |
-
#: inc/admin/admin.php:
|
71 |
msgid "noindex"
|
72 |
msgstr ""
|
73 |
|
74 |
-
#: inc/admin/admin-metaboxes.php:
|
75 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
76 |
msgid "nofollow"
|
77 |
msgstr ""
|
78 |
|
79 |
-
#: inc/admin/admin-metaboxes.php:
|
80 |
-
|
|
|
|
|
|
|
|
|
81 |
msgid "noodp"
|
82 |
msgstr ""
|
83 |
|
84 |
-
#: inc/admin/admin-metaboxes.php:
|
85 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
86 |
msgid "noimageindex"
|
87 |
msgstr ""
|
88 |
|
89 |
-
#: inc/admin/admin-metaboxes.php:
|
90 |
-
|
|
|
|
|
|
|
|
|
91 |
msgid "noarchive"
|
92 |
msgstr ""
|
93 |
|
94 |
-
#: inc/admin/admin-metaboxes.php:
|
95 |
-
|
|
|
|
|
|
|
|
|
96 |
msgid "nosnippet"
|
97 |
msgstr ""
|
98 |
|
99 |
-
#: inc/admin/admin-metaboxes.php:
|
|
|
|
|
|
|
|
|
|
|
100 |
msgid "Canonical URL"
|
101 |
msgstr ""
|
102 |
|
103 |
-
#: inc/admin/admin-metaboxes.php:
|
104 |
msgid "Default value: "
|
105 |
msgstr ""
|
106 |
|
107 |
-
#: inc/admin/admin-metaboxes.php:
|
108 |
msgid "Facebook Title"
|
109 |
msgstr ""
|
110 |
|
111 |
-
#: inc/admin/admin-metaboxes.php:
|
112 |
msgid "Enter your Facebook title"
|
113 |
msgstr ""
|
114 |
|
115 |
-
#: inc/admin/admin-metaboxes.php:
|
116 |
msgid "Facebook description"
|
117 |
msgstr ""
|
118 |
|
119 |
-
#: inc/admin/admin-metaboxes.php:
|
120 |
msgid "Enter your Facebook description"
|
121 |
msgstr ""
|
122 |
|
123 |
-
#: inc/admin/admin-metaboxes.php:
|
124 |
msgid "Facebook Thumbnail"
|
125 |
msgstr ""
|
126 |
|
127 |
-
#: inc/admin/admin-metaboxes.php:
|
128 |
-
|
|
|
|
|
|
|
|
|
129 |
msgid "Select your default thumbnail"
|
130 |
msgstr ""
|
131 |
|
132 |
-
#: inc/admin/admin-metaboxes.php:
|
133 |
-
#: inc/admin/admin.php:
|
134 |
msgid "Upload an Image"
|
135 |
msgstr ""
|
136 |
|
137 |
-
#: inc/admin/admin-metaboxes.php:
|
138 |
msgid "Twitter Title"
|
139 |
msgstr ""
|
140 |
|
141 |
-
#: inc/admin/admin-metaboxes.php:
|
142 |
msgid "Enter your Twitter title"
|
143 |
msgstr ""
|
144 |
|
145 |
-
#: inc/admin/admin-metaboxes.php:
|
146 |
msgid "Twitter description"
|
147 |
msgstr ""
|
148 |
|
149 |
-
#: inc/admin/admin-metaboxes.php:
|
150 |
msgid "Enter your Twitter description"
|
151 |
msgstr ""
|
152 |
|
153 |
-
#: inc/admin/admin-metaboxes.php:
|
154 |
msgid "Twitter Thumbnail"
|
155 |
msgstr ""
|
156 |
|
157 |
-
#: inc/admin/admin-metaboxes.php:
|
|
|
|
|
|
|
|
|
158 |
msgid "Enable redirection?"
|
159 |
msgstr ""
|
160 |
|
161 |
-
#: inc/admin/admin-metaboxes.php:
|
162 |
msgid "URL redirection"
|
163 |
msgstr ""
|
164 |
|
165 |
-
#: inc/admin/admin-metaboxes.php:
|
166 |
msgid "301"
|
167 |
msgstr ""
|
168 |
|
169 |
-
#: inc/admin/admin-metaboxes.php:
|
170 |
msgid "302"
|
171 |
msgstr ""
|
172 |
|
173 |
-
#: inc/admin/admin-metaboxes.php:
|
174 |
msgid "307"
|
175 |
msgstr ""
|
176 |
|
177 |
-
#: inc/admin/admin-metaboxes.php:
|
178 |
msgid "Enter your URL"
|
179 |
msgstr ""
|
180 |
|
181 |
-
#: inc/admin/admin-metaboxes.php:
|
182 |
msgid "Test your URL"
|
183 |
msgstr ""
|
184 |
|
185 |
-
#: inc/admin/admin.php:
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
186 |
msgid "Titles & Metas"
|
187 |
msgstr ""
|
188 |
|
189 |
-
#: inc/admin/admin.php:
|
190 |
msgid "XML Sitemap"
|
191 |
msgstr ""
|
192 |
|
193 |
-
#: inc/admin/admin.php:
|
|
|
|
|
|
|
|
|
194 |
msgid "Import / Export / Reset settings"
|
195 |
msgstr ""
|
196 |
|
197 |
-
#: inc/admin/admin.php:
|
198 |
msgid "Import / Export / Reset"
|
199 |
msgstr ""
|
200 |
|
201 |
-
#: inc/admin/admin.php:
|
202 |
#, php-format
|
203 |
msgid "%%sitetitle%%"
|
204 |
msgstr ""
|
205 |
|
206 |
-
#: inc/admin/admin.php:
|
|
|
|
|
207 |
msgid "Site Title"
|
208 |
msgstr ""
|
209 |
|
210 |
-
#: inc/admin/admin.php:
|
211 |
#, php-format
|
212 |
msgid "%%tagline%%"
|
213 |
msgstr ""
|
214 |
|
215 |
-
#: inc/admin/admin.php:
|
216 |
msgid "Tagline"
|
217 |
msgstr ""
|
218 |
|
219 |
-
#: inc/admin/admin.php:
|
220 |
#, php-format
|
221 |
msgid "%%post_title%%"
|
222 |
msgstr ""
|
223 |
|
224 |
-
#: inc/admin/admin.php:
|
225 |
msgid "Post Title (post, page, custom post type)"
|
226 |
msgstr ""
|
227 |
|
228 |
-
#: inc/admin/admin.php:
|
229 |
#, php-format
|
230 |
msgid "%%post_excerpt%%"
|
231 |
msgstr ""
|
232 |
|
233 |
-
#: inc/admin/admin.php:
|
234 |
msgid "Post excerpt"
|
235 |
msgstr ""
|
236 |
|
237 |
-
#: inc/admin/admin.php:
|
238 |
#, php-format
|
239 |
msgid "%%post_date%%"
|
240 |
msgstr ""
|
241 |
|
242 |
-
#: inc/admin/admin.php:
|
243 |
msgid "Post date"
|
244 |
msgstr ""
|
245 |
|
246 |
-
#: inc/admin/admin.php:
|
247 |
#, php-format
|
248 |
msgid "%%post_author%%"
|
249 |
msgstr ""
|
250 |
|
251 |
-
#: inc/admin/admin.php:
|
252 |
msgid "Post author"
|
253 |
msgstr ""
|
254 |
|
255 |
-
#: inc/admin/admin.php:
|
256 |
#, php-format
|
257 |
msgid "%%_category_title%%"
|
258 |
msgstr ""
|
259 |
|
260 |
-
#: inc/admin/admin.php:
|
261 |
msgid "Category title"
|
262 |
msgstr ""
|
263 |
|
264 |
-
#: inc/admin/admin.php:
|
265 |
#, php-format
|
266 |
msgid "%%_category_description%%"
|
267 |
msgstr ""
|
268 |
|
269 |
-
#: inc/admin/admin.php:
|
270 |
msgid "Category description"
|
271 |
msgstr ""
|
272 |
|
273 |
-
#: inc/admin/admin.php:
|
274 |
#, php-format
|
275 |
msgid "%%tag_title%%"
|
276 |
msgstr ""
|
277 |
|
278 |
-
#: inc/admin/admin.php:
|
279 |
msgid "Tag title"
|
280 |
msgstr ""
|
281 |
|
282 |
-
#: inc/admin/admin.php:
|
283 |
#, php-format
|
284 |
msgid "%%tag_description%%"
|
285 |
msgstr ""
|
286 |
|
287 |
-
#: inc/admin/admin.php:
|
288 |
msgid "Tag description"
|
289 |
msgstr ""
|
290 |
|
291 |
-
#: inc/admin/admin.php:
|
292 |
#, php-format
|
293 |
msgid "%%term_title%%"
|
294 |
msgstr ""
|
295 |
|
296 |
-
#: inc/admin/admin.php:
|
297 |
msgid "Term title"
|
298 |
msgstr ""
|
299 |
|
300 |
-
#: inc/admin/admin.php:
|
301 |
#, php-format
|
302 |
msgid "%%term_description%%"
|
303 |
msgstr ""
|
304 |
|
305 |
-
#: inc/admin/admin.php:
|
306 |
msgid "Term description"
|
307 |
msgstr ""
|
308 |
|
309 |
-
#: inc/admin/admin.php:
|
310 |
#, php-format
|
311 |
msgid "%%search_keywords%%"
|
312 |
msgstr ""
|
313 |
|
314 |
-
#: inc/admin/admin.php:
|
315 |
msgid "Search keywords"
|
316 |
msgstr ""
|
317 |
|
318 |
-
#: inc/admin/admin.php:
|
319 |
#, php-format
|
320 |
msgid "%%current_pagination%%"
|
321 |
msgstr ""
|
322 |
|
323 |
-
#: inc/admin/admin.php:
|
324 |
msgid "Current number page"
|
325 |
msgstr ""
|
326 |
|
327 |
-
#: inc/admin/admin.php:
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
328 |
msgid "Templates variables"
|
329 |
msgstr ""
|
330 |
|
331 |
-
#: inc/admin/admin.php:
|
332 |
msgid ""
|
333 |
"Discourage search engines from indexing this site is <strong>ON!</strong> "
|
334 |
"None of the following settings will be applied."
|
335 |
msgstr ""
|
336 |
|
337 |
-
#: inc/admin/admin.php:
|
338 |
msgid "Change this settings"
|
339 |
msgstr ""
|
340 |
|
341 |
-
#: inc/admin/admin.php:
|
342 |
msgid "Home"
|
343 |
msgstr ""
|
344 |
|
345 |
-
#: inc/admin/admin.php:
|
346 |
msgid "Single Post Types"
|
347 |
msgstr ""
|
348 |
|
349 |
-
#: inc/admin/admin.php:
|
350 |
-
msgid "
|
351 |
msgstr ""
|
352 |
|
353 |
-
#: inc/admin/admin.php:
|
354 |
-
msgid "
|
355 |
msgstr ""
|
356 |
|
357 |
-
#: inc/admin/admin.php:
|
358 |
msgid "General"
|
359 |
msgstr ""
|
360 |
|
361 |
-
#: inc/admin/admin.php:
|
362 |
msgid "Post Types"
|
363 |
msgstr ""
|
364 |
|
365 |
-
#: inc/admin/admin.php:
|
366 |
msgid "Knowledge Graph"
|
367 |
msgstr ""
|
368 |
|
369 |
-
#: inc/admin/admin.php:
|
370 |
msgid "Your social accounts"
|
371 |
msgstr ""
|
372 |
|
373 |
-
#: inc/admin/admin.php:
|
374 |
msgid "Facebook"
|
375 |
msgstr ""
|
376 |
|
377 |
-
#: inc/admin/admin.php:
|
378 |
msgid "Twitter"
|
379 |
msgstr ""
|
380 |
|
381 |
-
#: inc/admin/admin.php:
|
382 |
-
msgid "
|
383 |
msgstr ""
|
384 |
|
385 |
-
#: inc/admin/admin.php:
|
386 |
-
msgid "
|
|
|
|
|
|
|
|
|
387 |
msgstr ""
|
388 |
|
389 |
-
#: inc/admin/admin.php:
|
390 |
msgid "Export Settings"
|
391 |
msgstr ""
|
392 |
|
393 |
-
#: inc/admin/admin.php:
|
394 |
msgid ""
|
395 |
"Export the plugin settings for this site as a .json file. This allows you to "
|
396 |
"easily import the configuration into another site."
|
397 |
msgstr ""
|
398 |
|
399 |
-
#: inc/admin/admin.php:
|
400 |
msgid "Export"
|
401 |
msgstr ""
|
402 |
|
403 |
-
#: inc/admin/admin.php:
|
404 |
msgid "Import Settings"
|
405 |
msgstr ""
|
406 |
|
407 |
-
#: inc/admin/admin.php:
|
408 |
msgid ""
|
409 |
"Import the plugin settings from a .json file. This file can be obtained by "
|
410 |
"exporting the settings on another site using the form above."
|
411 |
msgstr ""
|
412 |
|
413 |
-
#: inc/admin/admin.php:
|
414 |
msgid "Import"
|
415 |
msgstr ""
|
416 |
|
417 |
-
#: inc/admin/admin.php:
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
418 |
msgid "Reset All Settings"
|
419 |
msgstr ""
|
420 |
|
421 |
-
#: inc/admin/admin.php:
|
422 |
msgid ""
|
423 |
"<strong>WARNING:</strong> Delete all options related to SEOPress in your "
|
424 |
-
"database."
|
425 |
msgstr ""
|
426 |
|
427 |
-
#: inc/admin/admin.php:
|
428 |
msgid "Reset settings"
|
429 |
msgstr ""
|
430 |
|
431 |
-
#: inc/admin/admin.php:
|
432 |
-
msgid "
|
433 |
msgstr ""
|
434 |
|
435 |
-
#: inc/admin/admin.php:
|
436 |
-
msgid "
|
|
|
|
|
437 |
msgstr ""
|
438 |
|
439 |
-
#: inc/admin/admin.php:
|
440 |
-
msgid "
|
441 |
msgstr ""
|
442 |
|
443 |
-
#: inc/admin/admin.php:
|
444 |
-
msgid "
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
445 |
msgstr ""
|
446 |
|
447 |
-
#: inc/admin/admin.php:
|
448 |
msgid "Your site is not visible to Search Engines!"
|
449 |
msgstr ""
|
450 |
|
451 |
-
#: inc/admin/admin.php:
|
452 |
-
|
|
|
|
|
|
|
|
|
453 |
msgid "Fix this!"
|
454 |
msgstr ""
|
455 |
|
456 |
-
#: inc/admin/admin.php:
|
457 |
msgid "Your site title is empty!"
|
458 |
msgstr ""
|
459 |
|
460 |
-
#: inc/admin/admin.php:
|
461 |
msgid ""
|
462 |
"Your permalinks are not SEO Friendly! Enable pretty permalinks to fix this."
|
463 |
msgstr ""
|
464 |
|
465 |
-
#: inc/admin/admin.php:
|
466 |
msgid "You don't have an XML Sitemap!"
|
467 |
msgstr ""
|
468 |
|
469 |
-
#: inc/admin/admin.php:
|
|
|
|
|
|
|
|
|
470 |
msgid "Titles & metas"
|
471 |
msgstr ""
|
472 |
|
473 |
-
#: inc/admin/admin.php:
|
474 |
msgid "Manage all your titles & metas"
|
475 |
msgstr ""
|
476 |
|
477 |
-
#: inc/admin/admin.php:
|
478 |
-
#: inc/admin/admin.php:
|
|
|
|
|
|
|
479 |
msgid "Manage"
|
480 |
msgstr ""
|
481 |
|
482 |
-
#: inc/admin/admin.php:
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
483 |
msgid "Manage your XML Sitemap"
|
484 |
msgstr ""
|
485 |
|
486 |
-
#: inc/admin/admin.php:
|
487 |
msgid "Open Graph, Twitter Card, Google Knowledge Graph and more..."
|
488 |
msgstr ""
|
489 |
|
490 |
-
#: inc/admin/admin.php:
|
|
|
|
|
|
|
|
|
491 |
msgid "Advanced SEO options for advanced users!"
|
492 |
msgstr ""
|
493 |
|
494 |
-
#: inc/admin/admin.php:
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
495 |
msgid "Import / export SEOPress settings from site to site."
|
496 |
msgstr ""
|
497 |
|
498 |
-
#: inc/admin/admin.php:
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
499 |
msgid "Site title"
|
500 |
msgstr ""
|
501 |
|
502 |
-
#: inc/admin/admin.php:
|
503 |
msgid "Enable XML Sitemap"
|
504 |
msgstr ""
|
505 |
|
506 |
-
#: inc/admin/admin.php:
|
507 |
msgid "Check to INCLUDE Post Types"
|
508 |
msgstr ""
|
509 |
|
510 |
-
#: inc/admin/admin.php:
|
511 |
msgid "Check to INCLUDE Taxonomies"
|
512 |
msgstr ""
|
513 |
|
514 |
-
#: inc/admin/admin.php:
|
515 |
msgid "Person or organization"
|
516 |
msgstr ""
|
517 |
|
518 |
-
#: inc/admin/admin.php:
|
519 |
-
msgid "Your name/organization"
|
520 |
msgstr ""
|
521 |
|
522 |
-
#: inc/admin/admin.php:
|
523 |
msgid "Your photo / organization logo"
|
524 |
msgstr ""
|
525 |
|
526 |
-
#: inc/admin/admin.php:
|
527 |
msgid "Facebook Page URL"
|
528 |
msgstr ""
|
529 |
|
530 |
-
#: inc/admin/admin.php:
|
531 |
msgid "Twitter Username"
|
532 |
msgstr ""
|
533 |
|
534 |
-
#: inc/admin/admin.php:
|
535 |
msgid "Google + URL"
|
536 |
msgstr ""
|
537 |
|
538 |
-
#: inc/admin/admin.php:
|
539 |
msgid "Pinterest URL"
|
540 |
msgstr ""
|
541 |
|
542 |
-
#: inc/admin/admin.php:
|
543 |
msgid "Instagram URL"
|
544 |
msgstr ""
|
545 |
|
546 |
-
#: inc/admin/admin.php:
|
547 |
msgid "YouTube URL"
|
548 |
msgstr ""
|
549 |
|
550 |
-
#: inc/admin/admin.php:
|
551 |
msgid "LinkedIn URL"
|
552 |
msgstr ""
|
553 |
|
554 |
-
#: inc/admin/admin.php:
|
555 |
msgid "MySpace URL"
|
556 |
msgstr ""
|
557 |
|
558 |
-
#: inc/admin/admin.php:
|
559 |
msgid "Soundcloud URL"
|
560 |
msgstr ""
|
561 |
|
562 |
-
#: inc/admin/admin.php:
|
563 |
msgid "Tumblr URL"
|
564 |
msgstr ""
|
565 |
|
566 |
-
#: inc/admin/admin.php:
|
567 |
msgid "Enable Open Graph Data"
|
568 |
msgstr ""
|
569 |
|
570 |
-
#: inc/admin/admin.php:
|
571 |
msgid "Select a default image"
|
572 |
msgstr ""
|
573 |
|
574 |
-
#: inc/admin/admin.php:
|
575 |
msgid "Facebook Admin ID"
|
576 |
msgstr ""
|
577 |
|
578 |
-
#: inc/admin/admin.php:
|
579 |
msgid "Facebook App ID"
|
580 |
msgstr ""
|
581 |
|
582 |
-
#: inc/admin/admin.php:
|
583 |
msgid "Enable Twitter Card"
|
584 |
msgstr ""
|
585 |
|
586 |
-
#: inc/admin/admin.php:
|
587 |
msgid "Default Twitter Image"
|
588 |
msgstr ""
|
589 |
|
590 |
-
#: inc/admin/admin.php:
|
591 |
msgid "Image size for Twitter Summary card"
|
592 |
msgstr ""
|
593 |
|
594 |
-
#: inc/admin/admin.php:
|
595 |
-
msgid ""
|
596 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
597 |
msgstr ""
|
598 |
|
599 |
-
#: inc/admin/admin.php:
|
|
|
|
|
|
|
|
|
600 |
msgid "Remove stop words from URL"
|
601 |
msgstr ""
|
602 |
|
603 |
-
#: inc/admin/admin.php:
|
604 |
msgid "Google site verification"
|
605 |
msgstr ""
|
606 |
|
607 |
-
#: inc/admin/admin.php:
|
608 |
msgid "Bing site verification"
|
609 |
msgstr ""
|
610 |
|
611 |
-
#: inc/admin/admin.php:
|
612 |
msgid "Pinterest site verification"
|
613 |
msgstr ""
|
614 |
|
615 |
-
#: inc/admin/admin.php:
|
616 |
msgid "Yandex site verification"
|
617 |
msgstr ""
|
618 |
|
619 |
-
#: inc/admin/admin.php:
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
620 |
msgid "<p>Customize your titles & metas for homepage</p>"
|
621 |
msgstr ""
|
622 |
|
623 |
-
#: inc/admin/admin.php:
|
624 |
msgid "<p>Customize your titles & metas for Single Custom Post Types</p>"
|
625 |
msgstr ""
|
626 |
|
627 |
-
#: inc/admin/admin.php:
|
628 |
msgid "<p>Customize your metas for all pages</p>"
|
629 |
msgstr ""
|
630 |
|
631 |
-
#: inc/admin/admin.php:
|
632 |
msgid "<p>Customize your metas for all taxonomies archives</p>"
|
633 |
msgstr ""
|
634 |
|
635 |
-
#: inc/admin/admin.php:
|
636 |
msgid "<p>Customize your metas for all archives</p>"
|
637 |
msgstr ""
|
638 |
|
639 |
-
#: inc/admin/admin.php:
|
640 |
msgid "<p>Enable your Sitemap</p>"
|
641 |
msgstr ""
|
642 |
|
643 |
-
#: inc/admin/admin.php:
|
644 |
msgid ""
|
645 |
"To view your sitemap, enable permalinks (not default one), and save settings "
|
646 |
"to flush them."
|
647 |
msgstr ""
|
648 |
|
649 |
-
#: inc/admin/admin.php:
|
650 |
msgid ""
|
651 |
"Only the last 1000 items are listed in Sitemaps for performances issues."
|
652 |
msgstr ""
|
653 |
|
654 |
-
#: inc/admin/admin.php:
|
655 |
msgid "View your sitemap"
|
656 |
msgstr ""
|
657 |
|
658 |
-
#: inc/admin/admin.php:
|
659 |
msgid "Ping Google manually"
|
660 |
msgstr ""
|
661 |
|
662 |
-
#: inc/admin/admin.php:
|
663 |
msgid "Flush permalinks"
|
664 |
msgstr ""
|
665 |
|
666 |
-
#: inc/admin/admin.php:
|
667 |
msgid "<p>Include / Exclude Post Types</p>"
|
668 |
msgstr ""
|
669 |
|
670 |
-
#: inc/admin/admin.php:
|
671 |
msgid "<p>Include / Exclude Taxonomies</p>"
|
672 |
msgstr ""
|
673 |
|
674 |
-
#: inc/admin/admin.php:
|
675 |
msgid "<p>Configure Google Knowledge Graph</p>"
|
676 |
msgstr ""
|
677 |
|
678 |
-
#: inc/admin/admin.php:
|
679 |
msgid "<p>Link your site with your social accounts</p>"
|
680 |
msgstr ""
|
681 |
|
682 |
-
#: inc/admin/admin.php:
|
683 |
msgid "<p>Manage Open Graph datas</p>"
|
684 |
msgstr ""
|
685 |
|
686 |
-
#: inc/admin/admin.php:
|
687 |
msgid "<p>Manage your Twitter card</p>"
|
688 |
msgstr ""
|
689 |
|
690 |
-
#: inc/admin/admin.php:
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
691 |
msgid "<p>Advanced SEO options</p>"
|
692 |
msgstr ""
|
693 |
|
694 |
-
#: inc/admin/admin.php:
|
|
|
|
|
|
|
|
|
695 |
msgid "My awesome website"
|
696 |
msgstr ""
|
697 |
|
698 |
-
#: inc/admin/admin.php:
|
699 |
-
|
|
|
|
|
|
|
700 |
msgstr ""
|
701 |
|
702 |
-
#: inc/admin/admin.php:
|
703 |
-
|
704 |
-
|
|
|
|
|
|
|
|
|
705 |
msgid "Title template"
|
706 |
msgstr ""
|
707 |
|
708 |
-
#: inc/admin/admin.php:
|
709 |
-
|
710 |
-
|
|
|
|
|
|
|
|
|
711 |
msgid "Meta description template"
|
712 |
msgstr ""
|
713 |
|
714 |
-
#: inc/admin/admin.php:
|
715 |
msgid "Display date in Google search results?"
|
716 |
msgstr ""
|
717 |
|
718 |
-
#: inc/admin/admin.php:
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
719 |
msgid "Author archives"
|
720 |
msgstr ""
|
721 |
|
722 |
-
#: inc/admin/admin.php:
|
723 |
msgid "Date archives"
|
724 |
msgstr ""
|
725 |
|
726 |
-
#: inc/admin/admin.php:
|
|
|
|
|
|
|
|
|
727 |
msgid "Search archives"
|
728 |
msgstr ""
|
729 |
|
730 |
-
#: inc/admin/admin.php:
|
731 |
-
msgid "
|
732 |
msgstr ""
|
733 |
|
734 |
-
#: inc/admin/admin.php:
|
735 |
-
msgid "
|
736 |
msgstr ""
|
737 |
|
738 |
-
#: inc/admin/admin.php:
|
739 |
msgid "Include"
|
740 |
msgstr ""
|
741 |
|
742 |
-
#: inc/admin/admin.php:
|
743 |
msgid "Person"
|
744 |
msgstr ""
|
745 |
|
746 |
-
#: inc/admin/admin.php:
|
747 |
msgid "Organization"
|
748 |
msgstr ""
|
749 |
|
750 |
-
#: inc/admin/admin.php:
|
751 |
msgid "eg: Apple"
|
752 |
msgstr ""
|
753 |
|
754 |
-
#: inc/admin/admin.php:
|
755 |
msgid "Select your logo"
|
756 |
msgstr ""
|
757 |
|
758 |
-
#: inc/admin/admin.php:
|
759 |
msgid "eg: https://www.facebook.com/your-page"
|
760 |
msgstr ""
|
761 |
|
762 |
-
#: inc/admin/admin.php:
|
763 |
msgid "eg: @wpcloudy"
|
764 |
msgstr ""
|
765 |
|
766 |
-
#: inc/admin/admin.php:
|
767 |
msgid "eg: https://plus.google.com/+BenjaminDenis"
|
768 |
msgstr ""
|
769 |
|
770 |
-
#: inc/admin/admin.php:
|
771 |
msgid "eg: https://pinterest.com/wpbuy/"
|
772 |
msgstr ""
|
773 |
|
774 |
-
#: inc/admin/admin.php:
|
775 |
msgid "eg: https://www.instagram.com/your-name/"
|
776 |
msgstr ""
|
777 |
|
778 |
-
#: inc/admin/admin.php:
|
779 |
msgid "eg: https://www.youtube.com/channel/UCpQzarWu55UzCIH7-OW6pwA"
|
780 |
msgstr ""
|
781 |
|
782 |
-
#: inc/admin/admin.php:
|
783 |
msgid "eg: https://www.linkedin.com/in/benjamin-denis-70672b3b"
|
784 |
msgstr ""
|
785 |
|
786 |
-
#: inc/admin/admin.php:
|
787 |
msgid "eg: https://myspace.com/your-page"
|
788 |
msgstr ""
|
789 |
|
790 |
-
#: inc/admin/admin.php:
|
791 |
msgid "eg: https://soundcloud.com/michaelmccannmusic"
|
792 |
msgstr ""
|
793 |
|
794 |
-
#: inc/admin/admin.php:
|
795 |
msgid "eg: https://your-site.tumblr.com"
|
796 |
msgstr ""
|
797 |
|
798 |
-
#: inc/admin/admin.php:
|
799 |
msgid "Enable OG data"
|
800 |
msgstr ""
|
801 |
|
802 |
-
#: inc/admin/admin.php:
|
803 |
msgid "Enable Twitter card"
|
804 |
msgstr ""
|
805 |
|
806 |
-
#: inc/admin/admin.php:
|
807 |
msgid "Default"
|
808 |
msgstr ""
|
809 |
|
810 |
-
#: inc/admin/admin.php:
|
811 |
msgid "Large"
|
812 |
msgstr ""
|
813 |
|
814 |
-
#: inc/admin/admin.php:
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
815 |
msgid "Redirect attachment pages to post parent (or homepage if none)"
|
816 |
msgstr ""
|
817 |
|
818 |
-
#: inc/admin/admin.php:
|
819 |
msgid "Remove stop words in permalinks"
|
820 |
msgstr ""
|
821 |
|
822 |
-
#: inc/admin/admin.php:
|
823 |
msgid ""
|
824 |
"Setting based on site language. Supported language EN, FR, ES, DE, IT, PT."
|
825 |
msgstr ""
|
826 |
|
827 |
-
#: inc/admin/admin.php:
|
828 |
msgid "Enter Google meta value site verification"
|
829 |
msgstr ""
|
830 |
|
831 |
-
#: inc/admin/admin.php:
|
832 |
msgid "Enter Bing meta value site verification"
|
833 |
msgstr ""
|
834 |
|
835 |
-
#: inc/admin/admin.php:
|
836 |
msgid "Enter Pinterest meta value site verification"
|
837 |
msgstr ""
|
838 |
|
839 |
-
#: inc/admin/admin.php:
|
840 |
msgid "Enter Yandex meta value site verification"
|
841 |
msgstr ""
|
842 |
|
843 |
-
#: inc/
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
844 |
msgid "Please upload a valid .json file"
|
845 |
msgstr ""
|
846 |
|
847 |
-
#: inc/functions/options-import-export.php:
|
848 |
msgid "Please upload a file to import"
|
849 |
msgstr ""
|
850 |
|
851 |
-
#: seopress.php:
|
852 |
msgid "Settings"
|
853 |
msgstr ""
|
854 |
|
855 |
-
#: seopress.php:
|
856 |
msgid "SEOPress.org"
|
857 |
msgstr ""
|
858 |
|
859 |
-
#: seopress.php:
|
860 |
msgid "GO PRO!"
|
861 |
msgstr ""
|
2 |
msgstr ""
|
3 |
"Project-Id-Version: SEOPress\n"
|
4 |
"Report-Msgid-Bugs-To: http://wordpress.org/tag/wp-cloudy\n"
|
5 |
+
"POT-Creation-Date: 2016-12-07 18:39+0100\n"
|
6 |
+
"PO-Revision-Date: 2016-12-07 18:39+0100\n"
|
7 |
"Last-Translator: \n"
|
8 |
"Language-Team: Benjamin DENIS <contact@seopress.org>\n"
|
9 |
"Language: en\n"
|
15 |
"X-Poedit-Basepath: ..\n"
|
16 |
"X-Poedit-SearchPath-0: .\n"
|
17 |
|
18 |
+
#: inc/admin/admin-header.php:10
|
19 |
msgid "SEOPress"
|
20 |
msgstr ""
|
21 |
|
22 |
+
#: inc/admin/admin-header.php:14 inc/admin/adminbar.php:59
|
23 |
+
msgid "PRO"
|
24 |
+
msgstr ""
|
25 |
+
|
26 |
+
#: inc/admin/admin-header.php:25
|
27 |
+
msgid "You like SEOPress? Don't forget to rate it 5 stars!"
|
28 |
+
msgstr ""
|
29 |
+
|
30 |
+
#: inc/admin/admin-header.php:57
|
31 |
+
msgid "Support"
|
32 |
+
msgstr ""
|
33 |
+
|
34 |
+
#: inc/admin/admin-metaboxes.php:11 inc/admin/admin-metaboxes.php:13
|
35 |
+
#: inc/admin/adminbar.php:16
|
36 |
+
msgid "SEO"
|
37 |
+
msgstr ""
|
38 |
+
|
39 |
+
#: inc/admin/admin-metaboxes.php:86
|
40 |
msgid "Titles settings"
|
41 |
msgstr ""
|
42 |
|
43 |
+
#: inc/admin/admin-metaboxes.php:87 inc/admin/admin.php:174
|
44 |
+
#: inc/admin/admin.php:240 inc/admin/admin.php:402 inc/admin/admin.php:698
|
45 |
+
#: inc/admin/adminbar.php:46
|
46 |
msgid "Advanced"
|
47 |
msgstr ""
|
48 |
|
49 |
+
#: inc/admin/admin-metaboxes.php:88 inc/admin/admin.php:172
|
50 |
+
#: inc/admin/admin.php:640 inc/admin/adminbar.php:34
|
51 |
msgid "Social"
|
52 |
msgstr ""
|
53 |
|
54 |
+
#: inc/admin/admin-metaboxes.php:90 inc/admin/admin.php:852
|
55 |
msgid "Redirections"
|
56 |
msgstr ""
|
57 |
|
58 |
+
#: inc/admin/admin-metaboxes.php:93
|
59 |
+
msgid "Google News"
|
60 |
+
msgstr ""
|
61 |
+
|
62 |
+
#: inc/admin/admin-metaboxes.php:102
|
63 |
msgid "Title"
|
64 |
msgstr ""
|
65 |
|
66 |
+
#: inc/admin/admin-metaboxes.php:103
|
67 |
msgid "Enter your title"
|
68 |
msgstr ""
|
69 |
|
70 |
+
#: inc/admin/admin-metaboxes.php:107 inc/admin/admin-metaboxes.php:115
|
71 |
msgid "(maximum recommended limit)"
|
72 |
msgstr ""
|
73 |
|
74 |
+
#: inc/admin/admin-metaboxes.php:110 inc/admin/admin.php:470
|
75 |
+
#: inc/admin/admin.php:983
|
76 |
msgid "Meta description"
|
77 |
msgstr ""
|
78 |
|
79 |
+
#: inc/admin/admin-metaboxes.php:111
|
80 |
msgid "Enter your meta description"
|
81 |
msgstr ""
|
82 |
|
83 |
+
#: inc/admin/admin-metaboxes.php:120
|
84 |
msgid "Google Snippet Preview"
|
85 |
msgstr ""
|
86 |
|
87 |
+
#: inc/admin/admin-metaboxes.php:121
|
88 |
msgid "This is what your page will look like in Google search results"
|
89 |
msgstr ""
|
90 |
|
91 |
+
#: inc/admin/admin-metaboxes.php:137 inc/admin/admin.php:1141
|
92 |
+
#: inc/admin/admin.php:1875 inc/admin/admin.php:2008 inc/admin/admin.php:2098
|
93 |
+
#: inc/admin/admin.php:2171 inc/admin/admin.php:2220 inc/admin/admin.php:2300
|
94 |
msgid "noindex"
|
95 |
msgstr ""
|
96 |
|
97 |
+
#: inc/admin/admin-metaboxes.php:138 inc/admin/admin.php:2302
|
98 |
+
msgid ""
|
99 |
+
"Do not display all pages of the site in Google search results and do not "
|
100 |
+
"display \"Cached\" links in search results."
|
101 |
+
msgstr ""
|
102 |
+
|
103 |
+
#: inc/admin/admin-metaboxes.php:143 inc/admin/admin.php:1149
|
104 |
+
#: inc/admin/admin.php:1894 inc/admin/admin.php:2027 inc/admin/admin.php:2117
|
105 |
+
#: inc/admin/admin.php:2319
|
106 |
msgid "nofollow"
|
107 |
msgstr ""
|
108 |
|
109 |
+
#: inc/admin/admin-metaboxes.php:144 inc/admin/admin.php:2321
|
110 |
+
msgid "Do not follow links for all pages."
|
111 |
+
msgstr ""
|
112 |
+
|
113 |
+
#: inc/admin/admin-metaboxes.php:149 inc/admin/admin.php:1157
|
114 |
+
#: inc/admin/admin.php:2338
|
115 |
msgid "noodp"
|
116 |
msgstr ""
|
117 |
|
118 |
+
#: inc/admin/admin-metaboxes.php:150 inc/admin/admin.php:2340
|
119 |
+
msgid ""
|
120 |
+
"Do not use Open Directory project metadata for titles or excerpts for all "
|
121 |
+
"pages."
|
122 |
+
msgstr ""
|
123 |
+
|
124 |
+
#: inc/admin/admin-metaboxes.php:155 inc/admin/admin.php:1165
|
125 |
+
#: inc/admin/admin.php:2357
|
126 |
msgid "noimageindex"
|
127 |
msgstr ""
|
128 |
|
129 |
+
#: inc/admin/admin-metaboxes.php:156 inc/admin/admin.php:2359
|
130 |
+
msgid "Do not index images from the entire site."
|
131 |
+
msgstr ""
|
132 |
+
|
133 |
+
#: inc/admin/admin-metaboxes.php:161 inc/admin/admin.php:1173
|
134 |
+
#: inc/admin/admin.php:2376
|
135 |
msgid "noarchive"
|
136 |
msgstr ""
|
137 |
|
138 |
+
#: inc/admin/admin-metaboxes.php:162 inc/admin/admin.php:2378
|
139 |
+
msgid "Do not display a \"Cached\" link in the Google search results."
|
140 |
+
msgstr ""
|
141 |
+
|
142 |
+
#: inc/admin/admin-metaboxes.php:167 inc/admin/admin.php:1181
|
143 |
+
#: inc/admin/admin.php:2395
|
144 |
msgid "nosnippet"
|
145 |
msgstr ""
|
146 |
|
147 |
+
#: inc/admin/admin-metaboxes.php:168 inc/admin/admin.php:2397
|
148 |
+
msgid ""
|
149 |
+
"Do not display a description in the Google search results for all pages."
|
150 |
+
msgstr ""
|
151 |
+
|
152 |
+
#: inc/admin/admin-metaboxes.php:171 inc/admin/admin.php:474
|
153 |
msgid "Canonical URL"
|
154 |
msgstr ""
|
155 |
|
156 |
+
#: inc/admin/admin-metaboxes.php:172
|
157 |
msgid "Default value: "
|
158 |
msgstr ""
|
159 |
|
160 |
+
#: inc/admin/admin-metaboxes.php:178
|
161 |
msgid "Facebook Title"
|
162 |
msgstr ""
|
163 |
|
164 |
+
#: inc/admin/admin-metaboxes.php:179
|
165 |
msgid "Enter your Facebook title"
|
166 |
msgstr ""
|
167 |
|
168 |
+
#: inc/admin/admin-metaboxes.php:182
|
169 |
msgid "Facebook description"
|
170 |
msgstr ""
|
171 |
|
172 |
+
#: inc/admin/admin-metaboxes.php:183
|
173 |
msgid "Enter your Facebook description"
|
174 |
msgstr ""
|
175 |
|
176 |
+
#: inc/admin/admin-metaboxes.php:186
|
177 |
msgid "Facebook Thumbnail"
|
178 |
msgstr ""
|
179 |
|
180 |
+
#: inc/admin/admin-metaboxes.php:187
|
181 |
+
msgid "Minimum size: 200x200px"
|
182 |
+
msgstr ""
|
183 |
+
|
184 |
+
#: inc/admin/admin-metaboxes.php:188 inc/admin/admin-metaboxes.php:204
|
185 |
+
#: inc/admin/admin.php:2683 inc/admin/admin.php:2735
|
186 |
msgid "Select your default thumbnail"
|
187 |
msgstr ""
|
188 |
|
189 |
+
#: inc/admin/admin-metaboxes.php:189 inc/admin/admin-metaboxes.php:205
|
190 |
+
#: inc/admin/admin.php:2539 inc/admin/admin.php:2685 inc/admin/admin.php:2737
|
191 |
msgid "Upload an Image"
|
192 |
msgstr ""
|
193 |
|
194 |
+
#: inc/admin/admin-metaboxes.php:194
|
195 |
msgid "Twitter Title"
|
196 |
msgstr ""
|
197 |
|
198 |
+
#: inc/admin/admin-metaboxes.php:195
|
199 |
msgid "Enter your Twitter title"
|
200 |
msgstr ""
|
201 |
|
202 |
+
#: inc/admin/admin-metaboxes.php:198
|
203 |
msgid "Twitter description"
|
204 |
msgstr ""
|
205 |
|
206 |
+
#: inc/admin/admin-metaboxes.php:199
|
207 |
msgid "Enter your Twitter description"
|
208 |
msgstr ""
|
209 |
|
210 |
+
#: inc/admin/admin-metaboxes.php:202
|
211 |
msgid "Twitter Thumbnail"
|
212 |
msgstr ""
|
213 |
|
214 |
+
#: inc/admin/admin-metaboxes.php:203
|
215 |
+
msgid "Minimum size: 160x160px"
|
216 |
+
msgstr ""
|
217 |
+
|
218 |
+
#: inc/admin/admin-metaboxes.php:214
|
219 |
msgid "Enable redirection?"
|
220 |
msgstr ""
|
221 |
|
222 |
+
#: inc/admin/admin-metaboxes.php:218
|
223 |
msgid "URL redirection"
|
224 |
msgstr ""
|
225 |
|
226 |
+
#: inc/admin/admin-metaboxes.php:220
|
227 |
msgid "301"
|
228 |
msgstr ""
|
229 |
|
230 |
+
#: inc/admin/admin-metaboxes.php:221
|
231 |
msgid "302"
|
232 |
msgstr ""
|
233 |
|
234 |
+
#: inc/admin/admin-metaboxes.php:222
|
235 |
msgid "307"
|
236 |
msgstr ""
|
237 |
|
238 |
+
#: inc/admin/admin-metaboxes.php:224
|
239 |
msgid "Enter your URL"
|
240 |
msgstr ""
|
241 |
|
242 |
+
#: inc/admin/admin-metaboxes.php:227 inc/admin/admin-metaboxes.php:229
|
243 |
msgid "Test your URL"
|
244 |
msgstr ""
|
245 |
|
246 |
+
#: inc/admin/admin-metaboxes.php:238
|
247 |
+
msgid "Exclude this post from Google News Sitemap?"
|
248 |
+
msgstr ""
|
249 |
+
|
250 |
+
#: inc/admin/admin-metaboxes.php:242
|
251 |
+
msgid "Google News Genres"
|
252 |
+
msgstr ""
|
253 |
+
|
254 |
+
#: inc/admin/admin-metaboxes.php:244 inc/admin/admin.php:2903
|
255 |
+
#: inc/admin/admin.php:2980 inc/admin/admin.php:3057 inc/admin/admin.php:3134
|
256 |
+
#: inc/admin/admin.php:3211
|
257 |
+
msgid "None"
|
258 |
+
msgstr ""
|
259 |
+
|
260 |
+
#: inc/admin/admin-metaboxes.php:245
|
261 |
+
msgid "Press Release"
|
262 |
+
msgstr ""
|
263 |
+
|
264 |
+
#: inc/admin/admin-metaboxes.php:246
|
265 |
+
msgid "Satire"
|
266 |
+
msgstr ""
|
267 |
+
|
268 |
+
#: inc/admin/admin-metaboxes.php:247
|
269 |
+
msgid "Blog"
|
270 |
+
msgstr ""
|
271 |
+
|
272 |
+
#: inc/admin/admin-metaboxes.php:248
|
273 |
+
msgid "OpEd"
|
274 |
+
msgstr ""
|
275 |
+
|
276 |
+
#: inc/admin/admin-metaboxes.php:249
|
277 |
+
msgid "Opinion"
|
278 |
+
msgstr ""
|
279 |
+
|
280 |
+
#: inc/admin/admin-metaboxes.php:250
|
281 |
+
msgid "UserGenerated"
|
282 |
+
msgstr ""
|
283 |
+
|
284 |
+
#: inc/admin/admin-metaboxes.php:255
|
285 |
+
msgid "Google News Keywords <em>(max recommended limit: 12)</em>"
|
286 |
+
msgstr ""
|
287 |
+
|
288 |
+
#: inc/admin/admin-metaboxes.php:256
|
289 |
+
msgid "Enter your Google News Keywords"
|
290 |
+
msgstr ""
|
291 |
+
|
292 |
+
#: inc/admin/admin.php:102
|
293 |
+
msgid "404 - Page not found"
|
294 |
+
msgstr ""
|
295 |
+
|
296 |
+
#: inc/admin/admin.php:170 inc/admin/adminbar.php:22
|
297 |
msgid "Titles & Metas"
|
298 |
msgstr ""
|
299 |
|
300 |
+
#: inc/admin/admin.php:171 inc/admin/admin.php:611 inc/admin/adminbar.php:28
|
301 |
msgid "XML Sitemap"
|
302 |
msgstr ""
|
303 |
|
304 |
+
#: inc/admin/admin.php:173 inc/admin/admin.php:669 inc/admin/adminbar.php:40
|
305 |
+
msgid "Google Analytics"
|
306 |
+
msgstr ""
|
307 |
+
|
308 |
+
#: inc/admin/admin.php:175
|
309 |
msgid "Import / Export / Reset settings"
|
310 |
msgstr ""
|
311 |
|
312 |
+
#: inc/admin/admin.php:175 inc/admin/admin.php:893 inc/admin/adminbar.php:52
|
313 |
msgid "Import / Export / Reset"
|
314 |
msgstr ""
|
315 |
|
316 |
+
#: inc/admin/admin.php:182
|
317 |
#, php-format
|
318 |
msgid "%%sitetitle%%"
|
319 |
msgstr ""
|
320 |
|
321 |
+
#: inc/admin/admin.php:182 inc/admin/admin.php:1798 inc/admin/admin.php:1845
|
322 |
+
#: inc/admin/admin.php:1960 inc/admin/admin.php:2068 inc/admin/admin.php:2142
|
323 |
+
#: inc/admin/admin.php:2192 inc/admin/admin.php:2241 inc/admin/admin.php:2271
|
324 |
msgid "Site Title"
|
325 |
msgstr ""
|
326 |
|
327 |
+
#: inc/admin/admin.php:183
|
328 |
#, php-format
|
329 |
msgid "%%tagline%%"
|
330 |
msgstr ""
|
331 |
|
332 |
+
#: inc/admin/admin.php:183 inc/admin/admin.php:1799 inc/admin/admin.php:1810
|
333 |
msgid "Tagline"
|
334 |
msgstr ""
|
335 |
|
336 |
+
#: inc/admin/admin.php:184
|
337 |
#, php-format
|
338 |
msgid "%%post_title%%"
|
339 |
msgstr ""
|
340 |
|
341 |
+
#: inc/admin/admin.php:184
|
342 |
msgid "Post Title (post, page, custom post type)"
|
343 |
msgstr ""
|
344 |
|
345 |
+
#: inc/admin/admin.php:185
|
346 |
#, php-format
|
347 |
msgid "%%post_excerpt%%"
|
348 |
msgstr ""
|
349 |
|
350 |
+
#: inc/admin/admin.php:185
|
351 |
msgid "Post excerpt"
|
352 |
msgstr ""
|
353 |
|
354 |
+
#: inc/admin/admin.php:186
|
355 |
#, php-format
|
356 |
msgid "%%post_date%%"
|
357 |
msgstr ""
|
358 |
|
359 |
+
#: inc/admin/admin.php:186
|
360 |
msgid "Post date"
|
361 |
msgstr ""
|
362 |
|
363 |
+
#: inc/admin/admin.php:187
|
364 |
#, php-format
|
365 |
msgid "%%post_author%%"
|
366 |
msgstr ""
|
367 |
|
368 |
+
#: inc/admin/admin.php:187 inc/admin/admin.php:2141
|
369 |
msgid "Post author"
|
370 |
msgstr ""
|
371 |
|
372 |
+
#: inc/admin/admin.php:188
|
373 |
#, php-format
|
374 |
msgid "%%_category_title%%"
|
375 |
msgstr ""
|
376 |
|
377 |
+
#: inc/admin/admin.php:188
|
378 |
msgid "Category title"
|
379 |
msgstr ""
|
380 |
|
381 |
+
#: inc/admin/admin.php:189
|
382 |
#, php-format
|
383 |
msgid "%%_category_description%%"
|
384 |
msgstr ""
|
385 |
|
386 |
+
#: inc/admin/admin.php:189
|
387 |
msgid "Category description"
|
388 |
msgstr ""
|
389 |
|
390 |
+
#: inc/admin/admin.php:190
|
391 |
#, php-format
|
392 |
msgid "%%tag_title%%"
|
393 |
msgstr ""
|
394 |
|
395 |
+
#: inc/admin/admin.php:190
|
396 |
msgid "Tag title"
|
397 |
msgstr ""
|
398 |
|
399 |
+
#: inc/admin/admin.php:191
|
400 |
#, php-format
|
401 |
msgid "%%tag_description%%"
|
402 |
msgstr ""
|
403 |
|
404 |
+
#: inc/admin/admin.php:191
|
405 |
msgid "Tag description"
|
406 |
msgstr ""
|
407 |
|
408 |
+
#: inc/admin/admin.php:192
|
409 |
#, php-format
|
410 |
msgid "%%term_title%%"
|
411 |
msgstr ""
|
412 |
|
413 |
+
#: inc/admin/admin.php:192
|
414 |
msgid "Term title"
|
415 |
msgstr ""
|
416 |
|
417 |
+
#: inc/admin/admin.php:193
|
418 |
#, php-format
|
419 |
msgid "%%term_description%%"
|
420 |
msgstr ""
|
421 |
|
422 |
+
#: inc/admin/admin.php:193
|
423 |
msgid "Term description"
|
424 |
msgstr ""
|
425 |
|
426 |
+
#: inc/admin/admin.php:194
|
427 |
#, php-format
|
428 |
msgid "%%search_keywords%%"
|
429 |
msgstr ""
|
430 |
|
431 |
+
#: inc/admin/admin.php:194
|
432 |
msgid "Search keywords"
|
433 |
msgstr ""
|
434 |
|
435 |
+
#: inc/admin/admin.php:195
|
436 |
#, php-format
|
437 |
msgid "%%current_pagination%%"
|
438 |
msgstr ""
|
439 |
|
440 |
+
#: inc/admin/admin.php:195
|
441 |
msgid "Current number page"
|
442 |
msgstr ""
|
443 |
|
444 |
+
#: inc/admin/admin.php:196
|
445 |
+
#, php-format
|
446 |
+
msgid "%%cpt_plural%%"
|
447 |
+
msgstr ""
|
448 |
+
|
449 |
+
#: inc/admin/admin.php:196
|
450 |
+
msgid "Plural Post Type Archive name"
|
451 |
+
msgstr ""
|
452 |
+
|
453 |
+
#: inc/admin/admin.php:197
|
454 |
+
#, php-format
|
455 |
+
msgid "%%date_archive%%"
|
456 |
+
msgstr ""
|
457 |
+
|
458 |
+
#: inc/admin/admin.php:197
|
459 |
+
msgid "Date Archive"
|
460 |
+
msgstr ""
|
461 |
+
|
462 |
+
#: inc/admin/admin.php:203
|
463 |
msgid "Templates variables"
|
464 |
msgstr ""
|
465 |
|
466 |
+
#: inc/admin/admin.php:221
|
467 |
msgid ""
|
468 |
"Discourage search engines from indexing this site is <strong>ON!</strong> "
|
469 |
"None of the following settings will be applied."
|
470 |
msgstr ""
|
471 |
|
472 |
+
#: inc/admin/admin.php:222
|
473 |
msgid "Change this settings"
|
474 |
msgstr ""
|
475 |
|
476 |
+
#: inc/admin/admin.php:236
|
477 |
msgid "Home"
|
478 |
msgstr ""
|
479 |
|
480 |
+
#: inc/admin/admin.php:237
|
481 |
msgid "Single Post Types"
|
482 |
msgstr ""
|
483 |
|
484 |
+
#: inc/admin/admin.php:238
|
485 |
+
msgid "Archives"
|
486 |
msgstr ""
|
487 |
|
488 |
+
#: inc/admin/admin.php:239 inc/admin/admin.php:282
|
489 |
+
msgid "Taxonomies"
|
490 |
msgstr ""
|
491 |
|
492 |
+
#: inc/admin/admin.php:280 inc/admin/admin.php:361
|
493 |
msgid "General"
|
494 |
msgstr ""
|
495 |
|
496 |
+
#: inc/admin/admin.php:281
|
497 |
msgid "Post Types"
|
498 |
msgstr ""
|
499 |
|
500 |
+
#: inc/admin/admin.php:319
|
501 |
msgid "Knowledge Graph"
|
502 |
msgstr ""
|
503 |
|
504 |
+
#: inc/admin/admin.php:320
|
505 |
msgid "Your social accounts"
|
506 |
msgstr ""
|
507 |
|
508 |
+
#: inc/admin/admin.php:321
|
509 |
msgid "Facebook"
|
510 |
msgstr ""
|
511 |
|
512 |
+
#: inc/admin/admin.php:322
|
513 |
msgid "Twitter"
|
514 |
msgstr ""
|
515 |
|
516 |
+
#: inc/admin/admin.php:362
|
517 |
+
msgid "Tracking"
|
518 |
msgstr ""
|
519 |
|
520 |
+
#: inc/admin/admin.php:363
|
521 |
+
msgid "Custom Dimensions"
|
522 |
+
msgstr ""
|
523 |
+
|
524 |
+
#: inc/admin/admin.php:403
|
525 |
+
msgid "Appearance"
|
526 |
msgstr ""
|
527 |
|
528 |
+
#: inc/admin/admin.php:434
|
529 |
msgid "Export Settings"
|
530 |
msgstr ""
|
531 |
|
532 |
+
#: inc/admin/admin.php:436
|
533 |
msgid ""
|
534 |
"Export the plugin settings for this site as a .json file. This allows you to "
|
535 |
"easily import the configuration into another site."
|
536 |
msgstr ""
|
537 |
|
538 |
+
#: inc/admin/admin.php:441
|
539 |
msgid "Export"
|
540 |
msgstr ""
|
541 |
|
542 |
+
#: inc/admin/admin.php:448
|
543 |
msgid "Import Settings"
|
544 |
msgstr ""
|
545 |
|
546 |
+
#: inc/admin/admin.php:450
|
547 |
msgid ""
|
548 |
"Import the plugin settings from a .json file. This file can be obtained by "
|
549 |
"exporting the settings on another site using the form above."
|
550 |
msgstr ""
|
551 |
|
552 |
+
#: inc/admin/admin.php:458
|
553 |
msgid "Import"
|
554 |
msgstr ""
|
555 |
|
556 |
+
#: inc/admin/admin.php:465
|
557 |
+
msgid "Import posts metadata from Yoast"
|
558 |
+
msgstr ""
|
559 |
+
|
560 |
+
#: inc/admin/admin.php:467
|
561 |
+
msgid "By clicking Migrate, we'll import:"
|
562 |
+
msgstr ""
|
563 |
+
|
564 |
+
#: inc/admin/admin.php:469
|
565 |
+
msgid "Title tags"
|
566 |
+
msgstr ""
|
567 |
+
|
568 |
+
#: inc/admin/admin.php:471
|
569 |
+
msgid "Facebook Open Graph tags (title, description and image thumbnail)"
|
570 |
+
msgstr ""
|
571 |
+
|
572 |
+
#: inc/admin/admin.php:472
|
573 |
+
msgid "Twitter tags (title, description and image thumbnail)"
|
574 |
+
msgstr ""
|
575 |
+
|
576 |
+
#: inc/admin/admin.php:473
|
577 |
+
msgid "Meta Robots (noindex, nofollow...)"
|
578 |
+
msgstr ""
|
579 |
+
|
580 |
+
#: inc/admin/admin.php:476
|
581 |
+
msgid ""
|
582 |
+
"<strong>WARNING:</strong> Migration will delete all SEOPress posts metadata"
|
583 |
+
msgstr ""
|
584 |
+
|
585 |
+
#: inc/admin/admin.php:477
|
586 |
+
msgid "Migrate now"
|
587 |
+
msgstr ""
|
588 |
+
|
589 |
+
#: inc/admin/admin.php:484
|
590 |
msgid "Reset All Settings"
|
591 |
msgstr ""
|
592 |
|
593 |
+
#: inc/admin/admin.php:486
|
594 |
msgid ""
|
595 |
"<strong>WARNING:</strong> Delete all options related to SEOPress in your "
|
596 |
+
"database AND set settings to their default values."
|
597 |
msgstr ""
|
598 |
|
599 |
+
#: inc/admin/admin.php:491
|
600 |
msgid "Reset settings"
|
601 |
msgstr ""
|
602 |
|
603 |
+
#: inc/admin/admin.php:514
|
604 |
+
msgid "Notifications center"
|
605 |
msgstr ""
|
606 |
|
607 |
+
#: inc/admin/admin.php:519
|
608 |
+
msgid ""
|
609 |
+
"We notice that you use Yoast SEO plugin. <br>Do you want to migrate all your "
|
610 |
+
"posts metadata to SEOPress?"
|
611 |
msgstr ""
|
612 |
|
613 |
+
#: inc/admin/admin.php:521
|
614 |
+
msgid "Migrate!"
|
615 |
msgstr ""
|
616 |
|
617 |
+
#: inc/admin/admin.php:528
|
618 |
+
msgid "Your site doesn't use an SSL certificate!"
|
619 |
+
msgstr ""
|
620 |
+
|
621 |
+
#: inc/admin/admin.php:529
|
622 |
+
msgid "Low impact"
|
623 |
+
msgstr ""
|
624 |
+
|
625 |
+
#: inc/admin/admin.php:531
|
626 |
+
msgid "Buy an SSL!"
|
627 |
msgstr ""
|
628 |
|
629 |
+
#: inc/admin/admin.php:538
|
630 |
msgid "Your site is not visible to Search Engines!"
|
631 |
msgstr ""
|
632 |
|
633 |
+
#: inc/admin/admin.php:539 inc/admin/admin.php:549 inc/admin/admin.php:559
|
634 |
+
msgid "High impact"
|
635 |
+
msgstr ""
|
636 |
+
|
637 |
+
#: inc/admin/admin.php:541 inc/admin/admin.php:551 inc/admin/admin.php:561
|
638 |
+
#: inc/admin/admin.php:571
|
639 |
msgid "Fix this!"
|
640 |
msgstr ""
|
641 |
|
642 |
+
#: inc/admin/admin.php:548
|
643 |
msgid "Your site title is empty!"
|
644 |
msgstr ""
|
645 |
|
646 |
+
#: inc/admin/admin.php:558
|
647 |
msgid ""
|
648 |
"Your permalinks are not SEO Friendly! Enable pretty permalinks to fix this."
|
649 |
msgstr ""
|
650 |
|
651 |
+
#: inc/admin/admin.php:568
|
652 |
msgid "You don't have an XML Sitemap!"
|
653 |
msgstr ""
|
654 |
|
655 |
+
#: inc/admin/admin.php:569
|
656 |
+
msgid "Medium impact"
|
657 |
+
msgstr ""
|
658 |
+
|
659 |
+
#: inc/admin/admin.php:582
|
660 |
msgid "Titles & metas"
|
661 |
msgstr ""
|
662 |
|
663 |
+
#: inc/admin/admin.php:583
|
664 |
msgid "Manage all your titles & metas"
|
665 |
msgstr ""
|
666 |
|
667 |
+
#: inc/admin/admin.php:584 inc/admin/admin.php:613 inc/admin/admin.php:642
|
668 |
+
#: inc/admin/admin.php:671 inc/admin/admin.php:700 inc/admin/admin.php:729
|
669 |
+
#: inc/admin/admin.php:757 inc/admin/admin.php:786 inc/admin/admin.php:797
|
670 |
+
#: inc/admin/admin.php:826 inc/admin/admin.php:854 inc/admin/admin.php:883
|
671 |
+
#: inc/admin/admin.php:895 inc/admin/admin.php:907
|
672 |
msgid "Manage"
|
673 |
msgstr ""
|
674 |
|
675 |
+
#: inc/admin/admin.php:596 inc/admin/admin.php:600 inc/admin/admin.php:625
|
676 |
+
#: inc/admin/admin.php:629 inc/admin/admin.php:654 inc/admin/admin.php:658
|
677 |
+
#: inc/admin/admin.php:683 inc/admin/admin.php:687 inc/admin/admin.php:712
|
678 |
+
#: inc/admin/admin.php:716 inc/admin/admin.php:741 inc/admin/admin.php:745
|
679 |
+
#: inc/admin/admin.php:769 inc/admin/admin.php:773 inc/admin/admin.php:809
|
680 |
+
#: inc/admin/admin.php:813 inc/admin/admin.php:838 inc/admin/admin.php:842
|
681 |
+
#: inc/admin/admin.php:866 inc/admin/admin.php:870
|
682 |
+
msgid "Click to disable this feature"
|
683 |
+
msgstr ""
|
684 |
+
|
685 |
+
#: inc/admin/admin.php:597 inc/admin/admin.php:599 inc/admin/admin.php:626
|
686 |
+
#: inc/admin/admin.php:628 inc/admin/admin.php:655 inc/admin/admin.php:657
|
687 |
+
#: inc/admin/admin.php:684 inc/admin/admin.php:686 inc/admin/admin.php:713
|
688 |
+
#: inc/admin/admin.php:715 inc/admin/admin.php:742 inc/admin/admin.php:744
|
689 |
+
#: inc/admin/admin.php:770 inc/admin/admin.php:772 inc/admin/admin.php:810
|
690 |
+
#: inc/admin/admin.php:812 inc/admin/admin.php:839 inc/admin/admin.php:841
|
691 |
+
#: inc/admin/admin.php:867 inc/admin/admin.php:869
|
692 |
+
msgid "Click to enable this feature"
|
693 |
+
msgstr ""
|
694 |
+
|
695 |
+
#: inc/admin/admin.php:612
|
696 |
msgid "Manage your XML Sitemap"
|
697 |
msgstr ""
|
698 |
|
699 |
+
#: inc/admin/admin.php:641
|
700 |
msgid "Open Graph, Twitter Card, Google Knowledge Graph and more..."
|
701 |
msgstr ""
|
702 |
|
703 |
+
#: inc/admin/admin.php:670
|
704 |
+
msgid "Track everything about your visitors with Google Analytics"
|
705 |
+
msgstr ""
|
706 |
+
|
707 |
+
#: inc/admin/admin.php:699
|
708 |
msgid "Advanced SEO options for advanced users!"
|
709 |
msgstr ""
|
710 |
|
711 |
+
#: inc/admin/admin.php:727
|
712 |
+
msgid "WooCommerce"
|
713 |
+
msgstr ""
|
714 |
+
|
715 |
+
#: inc/admin/admin.php:728
|
716 |
+
msgid "Improve WooCommerce SEO"
|
717 |
+
msgstr ""
|
718 |
+
|
719 |
+
#: inc/admin/admin.php:755
|
720 |
+
msgid "Breadcrumbs"
|
721 |
+
msgstr ""
|
722 |
+
|
723 |
+
#: inc/admin/admin.php:756
|
724 |
+
msgid "Enable Breadcrumbs for your theme and improve your SEO in SERPs"
|
725 |
+
msgstr ""
|
726 |
+
|
727 |
+
#: inc/admin/admin.php:784
|
728 |
+
msgid "Google Page Speed"
|
729 |
+
msgstr ""
|
730 |
+
|
731 |
+
#: inc/admin/admin.php:785
|
732 |
+
msgid "Track your website performance to improve SEO with Google Page Speed"
|
733 |
+
msgstr ""
|
734 |
+
|
735 |
+
#: inc/admin/admin.php:795
|
736 |
+
msgid "Robots"
|
737 |
+
msgstr ""
|
738 |
+
|
739 |
+
#: inc/admin/admin.php:796
|
740 |
+
msgid "Edit your robots.txt file"
|
741 |
+
msgstr ""
|
742 |
+
|
743 |
+
#: inc/admin/admin.php:824
|
744 |
+
msgid "Google News Sitemap"
|
745 |
+
msgstr ""
|
746 |
+
|
747 |
+
#: inc/admin/admin.php:825
|
748 |
+
msgid "Optimize your site for Google News"
|
749 |
+
msgstr ""
|
750 |
+
|
751 |
+
#: inc/admin/admin.php:853
|
752 |
+
msgid "Monitor 404, create 301, 302 and 307 redirections"
|
753 |
+
msgstr ""
|
754 |
+
|
755 |
+
#: inc/admin/admin.php:881
|
756 |
+
msgid "htaccess"
|
757 |
+
msgstr ""
|
758 |
+
|
759 |
+
#: inc/admin/admin.php:882
|
760 |
+
msgid "Edit your htaccess file."
|
761 |
+
msgstr ""
|
762 |
+
|
763 |
+
#: inc/admin/admin.php:894
|
764 |
msgid "Import / export SEOPress settings from site to site."
|
765 |
msgstr ""
|
766 |
|
767 |
+
#: inc/admin/admin.php:905
|
768 |
+
msgid "License"
|
769 |
+
msgstr ""
|
770 |
+
|
771 |
+
#: inc/admin/admin.php:906
|
772 |
+
msgid "Edit your SEOPress license key."
|
773 |
+
msgstr ""
|
774 |
+
|
775 |
+
#: inc/admin/admin.php:975
|
776 |
msgid "Site title"
|
777 |
msgstr ""
|
778 |
|
779 |
+
#: inc/admin/admin.php:1198 inc/admin/admin.php:2414
|
780 |
msgid "Enable XML Sitemap"
|
781 |
msgstr ""
|
782 |
|
783 |
+
#: inc/admin/admin.php:1214
|
784 |
msgid "Check to INCLUDE Post Types"
|
785 |
msgstr ""
|
786 |
|
787 |
+
#: inc/admin/admin.php:1230
|
788 |
msgid "Check to INCLUDE Taxonomies"
|
789 |
msgstr ""
|
790 |
|
791 |
+
#: inc/admin/admin.php:1247
|
792 |
msgid "Person or organization"
|
793 |
msgstr ""
|
794 |
|
795 |
+
#: inc/admin/admin.php:1255
|
796 |
+
msgid "Your name / organization"
|
797 |
msgstr ""
|
798 |
|
799 |
+
#: inc/admin/admin.php:1263
|
800 |
msgid "Your photo / organization logo"
|
801 |
msgstr ""
|
802 |
|
803 |
+
#: inc/admin/admin.php:1280
|
804 |
msgid "Facebook Page URL"
|
805 |
msgstr ""
|
806 |
|
807 |
+
#: inc/admin/admin.php:1288
|
808 |
msgid "Twitter Username"
|
809 |
msgstr ""
|
810 |
|
811 |
+
#: inc/admin/admin.php:1296
|
812 |
msgid "Google + URL"
|
813 |
msgstr ""
|
814 |
|
815 |
+
#: inc/admin/admin.php:1304
|
816 |
msgid "Pinterest URL"
|
817 |
msgstr ""
|
818 |
|
819 |
+
#: inc/admin/admin.php:1312
|
820 |
msgid "Instagram URL"
|
821 |
msgstr ""
|
822 |
|
823 |
+
#: inc/admin/admin.php:1320
|
824 |
msgid "YouTube URL"
|
825 |
msgstr ""
|
826 |
|
827 |
+
#: inc/admin/admin.php:1328
|
828 |
msgid "LinkedIn URL"
|
829 |
msgstr ""
|
830 |
|
831 |
+
#: inc/admin/admin.php:1336
|
832 |
msgid "MySpace URL"
|
833 |
msgstr ""
|
834 |
|
835 |
+
#: inc/admin/admin.php:1344
|
836 |
msgid "Soundcloud URL"
|
837 |
msgstr ""
|
838 |
|
839 |
+
#: inc/admin/admin.php:1352
|
840 |
msgid "Tumblr URL"
|
841 |
msgstr ""
|
842 |
|
843 |
+
#: inc/admin/admin.php:1369
|
844 |
msgid "Enable Open Graph Data"
|
845 |
msgstr ""
|
846 |
|
847 |
+
#: inc/admin/admin.php:1377
|
848 |
msgid "Select a default image"
|
849 |
msgstr ""
|
850 |
|
851 |
+
#: inc/admin/admin.php:1385
|
852 |
msgid "Facebook Admin ID"
|
853 |
msgstr ""
|
854 |
|
855 |
+
#: inc/admin/admin.php:1393
|
856 |
msgid "Facebook App ID"
|
857 |
msgstr ""
|
858 |
|
859 |
+
#: inc/admin/admin.php:1410
|
860 |
msgid "Enable Twitter Card"
|
861 |
msgstr ""
|
862 |
|
863 |
+
#: inc/admin/admin.php:1418
|
864 |
msgid "Default Twitter Image"
|
865 |
msgstr ""
|
866 |
|
867 |
+
#: inc/admin/admin.php:1426
|
868 |
msgid "Image size for Twitter Summary card"
|
869 |
msgstr ""
|
870 |
|
871 |
+
#: inc/admin/admin.php:1443 inc/admin/admin.php:2774
|
872 |
+
msgid "Enable Google Analytics tracking"
|
873 |
+
msgstr ""
|
874 |
+
|
875 |
+
#: inc/admin/admin.php:1451
|
876 |
+
msgid "Enter your tracking ID"
|
877 |
+
msgstr ""
|
878 |
+
|
879 |
+
#: inc/admin/admin.php:1459
|
880 |
+
msgid "Exclude user roles from tracking"
|
881 |
+
msgstr ""
|
882 |
+
|
883 |
+
#: inc/admin/admin.php:1477 inc/admin/admin.php:2826
|
884 |
+
msgid "Enable remarketing, demographics and interest reporting"
|
885 |
+
msgstr ""
|
886 |
+
|
887 |
+
#: inc/admin/admin.php:1485 inc/admin/admin.php:2843
|
888 |
+
msgid "Enable IP Anonymization"
|
889 |
+
msgstr ""
|
890 |
+
|
891 |
+
#: inc/admin/admin.php:1493 inc/admin/admin.php:2860
|
892 |
+
msgid "Enhanced Link Attribution"
|
893 |
+
msgstr ""
|
894 |
+
|
895 |
+
#: inc/admin/admin.php:1501 inc/admin/admin.php:2877
|
896 |
+
msgid "Enable cross-domain tracking"
|
897 |
+
msgstr ""
|
898 |
+
|
899 |
+
#: inc/admin/admin.php:1509
|
900 |
+
msgid "Cross domains"
|
901 |
+
msgstr ""
|
902 |
+
|
903 |
+
#: inc/admin/admin.php:1527
|
904 |
+
msgid "Track Authors"
|
905 |
+
msgstr ""
|
906 |
+
|
907 |
+
#: inc/admin/admin.php:1535
|
908 |
+
msgid "Track Categories"
|
909 |
+
msgstr ""
|
910 |
+
|
911 |
+
#: inc/admin/admin.php:1543
|
912 |
+
msgid "Track Tags"
|
913 |
+
msgstr ""
|
914 |
+
|
915 |
+
#: inc/admin/admin.php:1551
|
916 |
+
msgid "Track Post Types"
|
917 |
+
msgstr ""
|
918 |
+
|
919 |
+
#: inc/admin/admin.php:1559
|
920 |
+
msgid "Track Logged In Users"
|
921 |
msgstr ""
|
922 |
|
923 |
+
#: inc/admin/admin.php:1576
|
924 |
+
msgid "Redirect attachment pages to post parent"
|
925 |
+
msgstr ""
|
926 |
+
|
927 |
+
#: inc/admin/admin.php:1584
|
928 |
msgid "Remove stop words from URL"
|
929 |
msgstr ""
|
930 |
|
931 |
+
#: inc/admin/admin.php:1592
|
932 |
msgid "Google site verification"
|
933 |
msgstr ""
|
934 |
|
935 |
+
#: inc/admin/admin.php:1600
|
936 |
msgid "Bing site verification"
|
937 |
msgstr ""
|
938 |
|
939 |
+
#: inc/admin/admin.php:1608
|
940 |
msgid "Pinterest site verification"
|
941 |
msgstr ""
|
942 |
|
943 |
+
#: inc/admin/admin.php:1616
|
944 |
msgid "Yandex site verification"
|
945 |
msgstr ""
|
946 |
|
947 |
+
#: inc/admin/admin.php:1633
|
948 |
+
msgid "SEOPress in admin bar"
|
949 |
+
msgstr ""
|
950 |
+
|
951 |
+
#: inc/admin/admin.php:1641
|
952 |
+
msgid "Show Title tag column in post types"
|
953 |
+
msgstr ""
|
954 |
+
|
955 |
+
#: inc/admin/admin.php:1649
|
956 |
+
msgid "Show Meta description column in post types"
|
957 |
+
msgstr ""
|
958 |
+
|
959 |
+
#: inc/admin/admin.php:1693
|
960 |
msgid "<p>Customize your titles & metas for homepage</p>"
|
961 |
msgstr ""
|
962 |
|
963 |
+
#: inc/admin/admin.php:1698
|
964 |
msgid "<p>Customize your titles & metas for Single Custom Post Types</p>"
|
965 |
msgstr ""
|
966 |
|
967 |
+
#: inc/admin/admin.php:1703
|
968 |
msgid "<p>Customize your metas for all pages</p>"
|
969 |
msgstr ""
|
970 |
|
971 |
+
#: inc/admin/admin.php:1708
|
972 |
msgid "<p>Customize your metas for all taxonomies archives</p>"
|
973 |
msgstr ""
|
974 |
|
975 |
+
#: inc/admin/admin.php:1713
|
976 |
msgid "<p>Customize your metas for all archives</p>"
|
977 |
msgstr ""
|
978 |
|
979 |
+
#: inc/admin/admin.php:1718
|
980 |
msgid "<p>Enable your Sitemap</p>"
|
981 |
msgstr ""
|
982 |
|
983 |
+
#: inc/admin/admin.php:1719
|
984 |
msgid ""
|
985 |
"To view your sitemap, enable permalinks (not default one), and save settings "
|
986 |
"to flush them."
|
987 |
msgstr ""
|
988 |
|
989 |
+
#: inc/admin/admin.php:1721
|
990 |
msgid ""
|
991 |
"Only the last 1000 items are listed in Sitemaps for performances issues."
|
992 |
msgstr ""
|
993 |
|
994 |
+
#: inc/admin/admin.php:1724
|
995 |
msgid "View your sitemap"
|
996 |
msgstr ""
|
997 |
|
998 |
+
#: inc/admin/admin.php:1726
|
999 |
msgid "Ping Google manually"
|
1000 |
msgstr ""
|
1001 |
|
1002 |
+
#: inc/admin/admin.php:1728
|
1003 |
msgid "Flush permalinks"
|
1004 |
msgstr ""
|
1005 |
|
1006 |
+
#: inc/admin/admin.php:1734
|
1007 |
msgid "<p>Include / Exclude Post Types</p>"
|
1008 |
msgstr ""
|
1009 |
|
1010 |
+
#: inc/admin/admin.php:1739
|
1011 |
msgid "<p>Include / Exclude Taxonomies</p>"
|
1012 |
msgstr ""
|
1013 |
|
1014 |
+
#: inc/admin/admin.php:1744
|
1015 |
msgid "<p>Configure Google Knowledge Graph</p>"
|
1016 |
msgstr ""
|
1017 |
|
1018 |
+
#: inc/admin/admin.php:1749
|
1019 |
msgid "<p>Link your site with your social accounts</p>"
|
1020 |
msgstr ""
|
1021 |
|
1022 |
+
#: inc/admin/admin.php:1754
|
1023 |
msgid "<p>Manage Open Graph datas</p>"
|
1024 |
msgstr ""
|
1025 |
|
1026 |
+
#: inc/admin/admin.php:1759
|
1027 |
msgid "<p>Manage your Twitter card</p>"
|
1028 |
msgstr ""
|
1029 |
|
1030 |
+
#: inc/admin/admin.php:1764
|
1031 |
+
msgid "<p>Link your Google Analytics to your website</p>"
|
1032 |
+
msgstr ""
|
1033 |
+
|
1034 |
+
#: inc/admin/admin.php:1769
|
1035 |
+
msgid "<p>Configure your Google Analytics tracking code</p>"
|
1036 |
+
msgstr ""
|
1037 |
+
|
1038 |
+
#: inc/admin/admin.php:1774
|
1039 |
+
msgid "<p>Configure your Google Analytics custom dimensions</p>"
|
1040 |
+
msgstr ""
|
1041 |
+
|
1042 |
+
#: inc/admin/admin.php:1779
|
1043 |
msgid "<p>Advanced SEO options</p>"
|
1044 |
msgstr ""
|
1045 |
|
1046 |
+
#: inc/admin/admin.php:1784
|
1047 |
+
msgid "<p>Customize SEOPress to fit your needs</p>"
|
1048 |
+
msgstr ""
|
1049 |
+
|
1050 |
+
#: inc/admin/admin.php:1795
|
1051 |
msgid "My awesome website"
|
1052 |
msgstr ""
|
1053 |
|
1054 |
+
#: inc/admin/admin.php:1800 inc/admin/admin.php:1811 inc/admin/admin.php:1847
|
1055 |
+
#: inc/admin/admin.php:1962 inc/admin/admin.php:1993 inc/admin/admin.php:2070
|
1056 |
+
#: inc/admin/admin.php:2143 inc/admin/admin.php:2193 inc/admin/admin.php:2242
|
1057 |
+
#: inc/admin/admin.php:2272
|
1058 |
+
msgid "More tags"
|
1059 |
msgstr ""
|
1060 |
|
1061 |
+
#: inc/admin/admin.php:1806
|
1062 |
+
msgid "This is a cool website about Wookiees"
|
1063 |
+
msgstr ""
|
1064 |
+
|
1065 |
+
#: inc/admin/admin.php:1824 inc/admin/admin.php:1933 inc/admin/admin.php:2047
|
1066 |
+
#: inc/admin/admin.php:2132 inc/admin/admin.php:2182 inc/admin/admin.php:2231
|
1067 |
+
#: inc/admin/admin.php:2263
|
1068 |
msgid "Title template"
|
1069 |
msgstr ""
|
1070 |
|
1071 |
+
#: inc/admin/admin.php:1843
|
1072 |
+
msgid "Post Title"
|
1073 |
+
msgstr ""
|
1074 |
+
|
1075 |
+
#: inc/admin/admin.php:1854 inc/admin/admin.php:1969 inc/admin/admin.php:2077
|
1076 |
+
#: inc/admin/admin.php:2149 inc/admin/admin.php:2199 inc/admin/admin.php:2248
|
1077 |
+
#: inc/admin/admin.php:2278
|
1078 |
msgid "Meta description template"
|
1079 |
msgstr ""
|
1080 |
|
1081 |
+
#: inc/admin/admin.php:1913
|
1082 |
msgid "Display date in Google search results?"
|
1083 |
msgstr ""
|
1084 |
|
1085 |
+
#: inc/admin/admin.php:1953
|
1086 |
+
msgid "Category Title"
|
1087 |
+
msgstr ""
|
1088 |
+
|
1089 |
+
#: inc/admin/admin.php:1955
|
1090 |
+
msgid "Tag Title"
|
1091 |
+
msgstr ""
|
1092 |
+
|
1093 |
+
#: inc/admin/admin.php:1957
|
1094 |
+
msgid "Term Title"
|
1095 |
+
msgstr ""
|
1096 |
+
|
1097 |
+
#: inc/admin/admin.php:1986
|
1098 |
+
msgid "Category Description"
|
1099 |
+
msgstr ""
|
1100 |
+
|
1101 |
+
#: inc/admin/admin.php:1988
|
1102 |
+
msgid "Tag Description"
|
1103 |
+
msgstr ""
|
1104 |
+
|
1105 |
+
#: inc/admin/admin.php:1990
|
1106 |
+
msgid "Term Description"
|
1107 |
+
msgstr ""
|
1108 |
+
|
1109 |
+
#: inc/admin/admin.php:2066
|
1110 |
+
msgid "Post Type Archive Name"
|
1111 |
+
msgstr ""
|
1112 |
+
|
1113 |
+
#: inc/admin/admin.php:2130
|
1114 |
msgid "Author archives"
|
1115 |
msgstr ""
|
1116 |
|
1117 |
+
#: inc/admin/admin.php:2180
|
1118 |
msgid "Date archives"
|
1119 |
msgstr ""
|
1120 |
|
1121 |
+
#: inc/admin/admin.php:2191
|
1122 |
+
msgid "Archive date"
|
1123 |
+
msgstr ""
|
1124 |
+
|
1125 |
+
#: inc/admin/admin.php:2229
|
1126 |
msgid "Search archives"
|
1127 |
msgstr ""
|
1128 |
|
1129 |
+
#: inc/admin/admin.php:2240
|
1130 |
+
msgid "Search Keywords"
|
1131 |
msgstr ""
|
1132 |
|
1133 |
+
#: inc/admin/admin.php:2261
|
1134 |
+
msgid "404 archives"
|
1135 |
msgstr ""
|
1136 |
|
1137 |
+
#: inc/admin/admin.php:2453 inc/admin/admin.php:2493
|
1138 |
msgid "Include"
|
1139 |
msgstr ""
|
1140 |
|
1141 |
+
#: inc/admin/admin.php:2512
|
1142 |
msgid "Person"
|
1143 |
msgstr ""
|
1144 |
|
1145 |
+
#: inc/admin/admin.php:2515
|
1146 |
msgid "Organization"
|
1147 |
msgstr ""
|
1148 |
|
1149 |
+
#: inc/admin/admin.php:2526
|
1150 |
msgid "eg: Apple"
|
1151 |
msgstr ""
|
1152 |
|
1153 |
+
#: inc/admin/admin.php:2537
|
1154 |
msgid "Select your logo"
|
1155 |
msgstr ""
|
1156 |
|
1157 |
+
#: inc/admin/admin.php:2563
|
1158 |
msgid "eg: https://www.facebook.com/your-page"
|
1159 |
msgstr ""
|
1160 |
|
1161 |
+
#: inc/admin/admin.php:2573
|
1162 |
msgid "eg: @wpcloudy"
|
1163 |
msgstr ""
|
1164 |
|
1165 |
+
#: inc/admin/admin.php:2583
|
1166 |
msgid "eg: https://plus.google.com/+BenjaminDenis"
|
1167 |
msgstr ""
|
1168 |
|
1169 |
+
#: inc/admin/admin.php:2593
|
1170 |
msgid "eg: https://pinterest.com/wpbuy/"
|
1171 |
msgstr ""
|
1172 |
|
1173 |
+
#: inc/admin/admin.php:2603
|
1174 |
msgid "eg: https://www.instagram.com/your-name/"
|
1175 |
msgstr ""
|
1176 |
|
1177 |
+
#: inc/admin/admin.php:2613
|
1178 |
msgid "eg: https://www.youtube.com/channel/UCpQzarWu55UzCIH7-OW6pwA"
|
1179 |
msgstr ""
|
1180 |
|
1181 |
+
#: inc/admin/admin.php:2623
|
1182 |
msgid "eg: https://www.linkedin.com/in/benjamin-denis-70672b3b"
|
1183 |
msgstr ""
|
1184 |
|
1185 |
+
#: inc/admin/admin.php:2633
|
1186 |
msgid "eg: https://myspace.com/your-page"
|
1187 |
msgstr ""
|
1188 |
|
1189 |
+
#: inc/admin/admin.php:2643
|
1190 |
msgid "eg: https://soundcloud.com/michaelmccannmusic"
|
1191 |
msgstr ""
|
1192 |
|
1193 |
+
#: inc/admin/admin.php:2653
|
1194 |
msgid "eg: https://your-site.tumblr.com"
|
1195 |
msgstr ""
|
1196 |
|
1197 |
+
#: inc/admin/admin.php:2670
|
1198 |
msgid "Enable OG data"
|
1199 |
msgstr ""
|
1200 |
|
1201 |
+
#: inc/admin/admin.php:2722
|
1202 |
msgid "Enable Twitter card"
|
1203 |
msgstr ""
|
1204 |
|
1205 |
+
#: inc/admin/admin.php:2753
|
1206 |
msgid "Default"
|
1207 |
msgstr ""
|
1208 |
|
1209 |
+
#: inc/admin/admin.php:2756
|
1210 |
msgid "Large"
|
1211 |
msgstr ""
|
1212 |
|
1213 |
+
#: inc/admin/admin.php:2784
|
1214 |
+
msgid "Enter your Tracking ID (UA-XXXX-XX)"
|
1215 |
+
msgstr ""
|
1216 |
+
|
1217 |
+
#: inc/admin/admin.php:2887
|
1218 |
+
msgid "Enter yours domains"
|
1219 |
+
msgstr ""
|
1220 |
+
|
1221 |
+
#: inc/admin/admin.php:2906 inc/admin/admin.php:2983 inc/admin/admin.php:3060
|
1222 |
+
#: inc/admin/admin.php:3137 inc/admin/admin.php:3214
|
1223 |
+
msgid "Custom Dimension #1"
|
1224 |
+
msgstr ""
|
1225 |
+
|
1226 |
+
#: inc/admin/admin.php:2909 inc/admin/admin.php:2986 inc/admin/admin.php:3063
|
1227 |
+
#: inc/admin/admin.php:3140 inc/admin/admin.php:3217
|
1228 |
+
msgid "Custom Dimension #2"
|
1229 |
+
msgstr ""
|
1230 |
+
|
1231 |
+
#: inc/admin/admin.php:2912 inc/admin/admin.php:2989 inc/admin/admin.php:3066
|
1232 |
+
#: inc/admin/admin.php:3143 inc/admin/admin.php:3220
|
1233 |
+
msgid "Custom Dimension #3"
|
1234 |
+
msgstr ""
|
1235 |
+
|
1236 |
+
#: inc/admin/admin.php:2915 inc/admin/admin.php:2992 inc/admin/admin.php:3069
|
1237 |
+
#: inc/admin/admin.php:3146 inc/admin/admin.php:3223
|
1238 |
+
msgid "Custom Dimension #4"
|
1239 |
+
msgstr ""
|
1240 |
+
|
1241 |
+
#: inc/admin/admin.php:2918 inc/admin/admin.php:2995 inc/admin/admin.php:3072
|
1242 |
+
#: inc/admin/admin.php:3149 inc/admin/admin.php:3226
|
1243 |
+
msgid "Custom Dimension #5"
|
1244 |
+
msgstr ""
|
1245 |
+
|
1246 |
+
#: inc/admin/admin.php:2921 inc/admin/admin.php:2998 inc/admin/admin.php:3075
|
1247 |
+
#: inc/admin/admin.php:3152 inc/admin/admin.php:3229
|
1248 |
+
msgid "Custom Dimension #6"
|
1249 |
+
msgstr ""
|
1250 |
+
|
1251 |
+
#: inc/admin/admin.php:2924 inc/admin/admin.php:3001 inc/admin/admin.php:3078
|
1252 |
+
#: inc/admin/admin.php:3155 inc/admin/admin.php:3232
|
1253 |
+
msgid "Custom Dimension #7"
|
1254 |
+
msgstr ""
|
1255 |
+
|
1256 |
+
#: inc/admin/admin.php:2927 inc/admin/admin.php:3004 inc/admin/admin.php:3081
|
1257 |
+
#: inc/admin/admin.php:3158 inc/admin/admin.php:3235
|
1258 |
+
msgid "Custom Dimension #8"
|
1259 |
+
msgstr ""
|
1260 |
+
|
1261 |
+
#: inc/admin/admin.php:2930 inc/admin/admin.php:3007 inc/admin/admin.php:3084
|
1262 |
+
#: inc/admin/admin.php:3161 inc/admin/admin.php:3238
|
1263 |
+
msgid "Custom Dimension #9"
|
1264 |
+
msgstr ""
|
1265 |
+
|
1266 |
+
#: inc/admin/admin.php:2933 inc/admin/admin.php:3010 inc/admin/admin.php:3087
|
1267 |
+
#: inc/admin/admin.php:3164 inc/admin/admin.php:3241
|
1268 |
+
msgid "Custom Dimension #10"
|
1269 |
+
msgstr ""
|
1270 |
+
|
1271 |
+
#: inc/admin/admin.php:2936 inc/admin/admin.php:3013 inc/admin/admin.php:3090
|
1272 |
+
#: inc/admin/admin.php:3167 inc/admin/admin.php:3244
|
1273 |
+
msgid "Custom Dimension #11"
|
1274 |
+
msgstr ""
|
1275 |
+
|
1276 |
+
#: inc/admin/admin.php:2939 inc/admin/admin.php:3016 inc/admin/admin.php:3093
|
1277 |
+
#: inc/admin/admin.php:3170 inc/admin/admin.php:3247
|
1278 |
+
msgid "Custom Dimension #12"
|
1279 |
+
msgstr ""
|
1280 |
+
|
1281 |
+
#: inc/admin/admin.php:2942 inc/admin/admin.php:3019 inc/admin/admin.php:3096
|
1282 |
+
#: inc/admin/admin.php:3173 inc/admin/admin.php:3250
|
1283 |
+
msgid "Custom Dimension #13"
|
1284 |
+
msgstr ""
|
1285 |
+
|
1286 |
+
#: inc/admin/admin.php:2945 inc/admin/admin.php:3022 inc/admin/admin.php:3099
|
1287 |
+
#: inc/admin/admin.php:3176 inc/admin/admin.php:3253
|
1288 |
+
msgid "Custom Dimension #14"
|
1289 |
+
msgstr ""
|
1290 |
+
|
1291 |
+
#: inc/admin/admin.php:2948 inc/admin/admin.php:3025 inc/admin/admin.php:3102
|
1292 |
+
#: inc/admin/admin.php:3179 inc/admin/admin.php:3256
|
1293 |
+
msgid "Custom Dimension #15"
|
1294 |
+
msgstr ""
|
1295 |
+
|
1296 |
+
#: inc/admin/admin.php:2951 inc/admin/admin.php:3028 inc/admin/admin.php:3105
|
1297 |
+
#: inc/admin/admin.php:3182 inc/admin/admin.php:3259
|
1298 |
+
msgid "Custom Dimension #16"
|
1299 |
+
msgstr ""
|
1300 |
+
|
1301 |
+
#: inc/admin/admin.php:2954 inc/admin/admin.php:3031 inc/admin/admin.php:3108
|
1302 |
+
#: inc/admin/admin.php:3185 inc/admin/admin.php:3262
|
1303 |
+
msgid "Custom Dimension #17"
|
1304 |
+
msgstr ""
|
1305 |
+
|
1306 |
+
#: inc/admin/admin.php:2957 inc/admin/admin.php:3034 inc/admin/admin.php:3111
|
1307 |
+
#: inc/admin/admin.php:3188 inc/admin/admin.php:3265
|
1308 |
+
msgid "Custom Dimension #18"
|
1309 |
+
msgstr ""
|
1310 |
+
|
1311 |
+
#: inc/admin/admin.php:2960 inc/admin/admin.php:3037 inc/admin/admin.php:3114
|
1312 |
+
#: inc/admin/admin.php:3191 inc/admin/admin.php:3268
|
1313 |
+
msgid "Custom Dimension #19"
|
1314 |
+
msgstr ""
|
1315 |
+
|
1316 |
+
#: inc/admin/admin.php:2963 inc/admin/admin.php:3040 inc/admin/admin.php:3117
|
1317 |
+
#: inc/admin/admin.php:3194 inc/admin/admin.php:3271
|
1318 |
+
msgid "Custom Dimension #20"
|
1319 |
+
msgstr ""
|
1320 |
+
|
1321 |
+
#: inc/admin/admin.php:3289
|
1322 |
msgid "Redirect attachment pages to post parent (or homepage if none)"
|
1323 |
msgstr ""
|
1324 |
|
1325 |
+
#: inc/admin/admin.php:3306
|
1326 |
msgid "Remove stop words in permalinks"
|
1327 |
msgstr ""
|
1328 |
|
1329 |
+
#: inc/admin/admin.php:3306
|
1330 |
msgid ""
|
1331 |
"Setting based on site language. Supported language EN, FR, ES, DE, IT, PT."
|
1332 |
msgstr ""
|
1333 |
|
1334 |
+
#: inc/admin/admin.php:3316
|
1335 |
msgid "Enter Google meta value site verification"
|
1336 |
msgstr ""
|
1337 |
|
1338 |
+
#: inc/admin/admin.php:3326
|
1339 |
msgid "Enter Bing meta value site verification"
|
1340 |
msgstr ""
|
1341 |
|
1342 |
+
#: inc/admin/admin.php:3336
|
1343 |
msgid "Enter Pinterest meta value site verification"
|
1344 |
msgstr ""
|
1345 |
|
1346 |
+
#: inc/admin/admin.php:3346
|
1347 |
msgid "Enter Yandex meta value site verification"
|
1348 |
msgstr ""
|
1349 |
|
1350 |
+
#: inc/admin/admin.php:3363
|
1351 |
+
msgid "Remove SEOPress from Admin Bar in backend"
|
1352 |
+
msgstr ""
|
1353 |
+
|
1354 |
+
#: inc/admin/admin.php:3380
|
1355 |
+
msgid "Add title column"
|
1356 |
+
msgstr ""
|
1357 |
+
|
1358 |
+
#: inc/admin/admin.php:3397
|
1359 |
+
msgid "Add meta description column"
|
1360 |
+
msgstr ""
|
1361 |
+
|
1362 |
+
#: inc/functions/options-advanced-admin.php:57
|
1363 |
+
msgid "Title tag"
|
1364 |
+
msgstr ""
|
1365 |
+
|
1366 |
+
#: inc/functions/options-advanced-admin.php:60
|
1367 |
+
msgid "Meta Desc."
|
1368 |
+
msgstr ""
|
1369 |
+
|
1370 |
+
#: inc/functions/options-import-export.php:48
|
1371 |
msgid "Please upload a valid .json file"
|
1372 |
msgstr ""
|
1373 |
|
1374 |
+
#: inc/functions/options-import-export.php:52
|
1375 |
msgid "Please upload a file to import"
|
1376 |
msgstr ""
|
1377 |
|
1378 |
+
#: seopress.php:228
|
1379 |
msgid "Settings"
|
1380 |
msgstr ""
|
1381 |
|
1382 |
+
#: seopress.php:229
|
1383 |
msgid "SEOPress.org"
|
1384 |
msgstr ""
|
1385 |
|
1386 |
+
#: seopress.php:231
|
1387 |
msgid "GO PRO!"
|
1388 |
msgstr ""
|
readme.txt
CHANGED
@@ -3,8 +3,8 @@ Contributors: rainbowgeek
|
|
3 |
Donate link: https://seopress.org/
|
4 |
Tags: seo, search engine optimization, meta, title, description, keywords, serp, knowledge grah, schema.org, url, redirection, 301, xml sitemap, breadcrumbs, ranking
|
5 |
Requires at least: 4.4+
|
6 |
-
Tested up to: 4.
|
7 |
-
Stable tag: 0
|
8 |
License: GPLv2 or later
|
9 |
License URI: http://www.gnu.org/licenses/gpl-2.0.html
|
10 |
|
@@ -21,36 +21,53 @@ SEOPress is a powerful plugin to optimize your SEO, boost your traffic and impro
|
|
21 |
<li>Meta descriptions</li>
|
22 |
<li>Open Graph Data</li>
|
23 |
<li>Google Knowledge Graph</li>
|
|
|
24 |
<li>Twitter Card</li>
|
25 |
<li>Canonical URL</li>
|
26 |
<li>Meta robots (noindex, nofollow, noodp, noimageindex, noarchive, nosnippet)</li>
|
27 |
<li>Build your custom XML Sitemap to improve search indexing.</li>
|
28 |
<li>Link your social media accounts to your site.</li>
|
29 |
-
<li>Redirections</li>
|
30 |
<li>Remove stop words (english, french, spanish, german, italian, portuguese)</li>
|
31 |
<li>Redirect attachment pages to post parent</li>
|
32 |
<li>Import / Export settings from site to site.</li>
|
|
|
33 |
<li>...</li>
|
34 |
</ul>
|
35 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
36 |
<h3>Translation</h3>
|
37 |
|
38 |
<ul>
|
39 |
<li>English</li>
|
40 |
<li>French</li>
|
|
|
41 |
</ul>
|
42 |
|
43 |
<h3>Subscribe to our newsletter and get a huge discount!</h3>
|
44 |
And get early access to our pro release!
|
45 |
<a href="http://seopress.org/" target="_blank">Subscribe now</a>
|
|
|
46 |
== Installation ==
|
47 |
|
48 |
-
1. Upload 'seopress' to the '/wp-content/plugins/' directory
|
49 |
2. Activate the plugin through the 'Plugins' menu in WordPress
|
50 |
3. Click on SEOPress and apply settings.
|
51 |
|
52 |
== Frequently Asked Questions ==
|
53 |
-
<a href="
|
54 |
|
55 |
== Screenshots ==
|
56 |
1. SEOPress Dashboard
|
@@ -64,6 +81,42 @@ And get early access to our pro release!
|
|
64 |
9. SEOPress Metaboxe: Redirection settings
|
65 |
|
66 |
== Changelog ==
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
67 |
= 0.9 =
|
68 |
* NEW Add OG:URL if Open Graph is enabled
|
69 |
* NEW Add OG:SITE_NAME if Open Graph is enabled
|
3 |
Donate link: https://seopress.org/
|
4 |
Tags: seo, search engine optimization, meta, title, description, keywords, serp, knowledge grah, schema.org, url, redirection, 301, xml sitemap, breadcrumbs, ranking
|
5 |
Requires at least: 4.4+
|
6 |
+
Tested up to: 4.7
|
7 |
+
Stable tag: 1.0
|
8 |
License: GPLv2 or later
|
9 |
License URI: http://www.gnu.org/licenses/gpl-2.0.html
|
10 |
|
21 |
<li>Meta descriptions</li>
|
22 |
<li>Open Graph Data</li>
|
23 |
<li>Google Knowledge Graph</li>
|
24 |
+
<li>Google Analytics</li>
|
25 |
<li>Twitter Card</li>
|
26 |
<li>Canonical URL</li>
|
27 |
<li>Meta robots (noindex, nofollow, noodp, noimageindex, noarchive, nosnippet)</li>
|
28 |
<li>Build your custom XML Sitemap to improve search indexing.</li>
|
29 |
<li>Link your social media accounts to your site.</li>
|
30 |
+
<li>Redirections in post, pages, custom post types</li>
|
31 |
<li>Remove stop words (english, french, spanish, german, italian, portuguese)</li>
|
32 |
<li>Redirect attachment pages to post parent</li>
|
33 |
<li>Import / Export settings from site to site.</li>
|
34 |
+
<li>Import posts metadata from Yoast SEO</li>
|
35 |
<li>...</li>
|
36 |
</ul>
|
37 |
|
38 |
+
<h3>SEOPress PRO</h3>
|
39 |
+
|
40 |
+
<ul>
|
41 |
+
<li>WooCommerce</li>
|
42 |
+
<li>Breadcrumbs</li>
|
43 |
+
<li>Google Page Speed</li>
|
44 |
+
<li>Robots</li>
|
45 |
+
<li>Google News Sitemap</li>
|
46 |
+
<li>404 Monitoring</li>
|
47 |
+
<li>301 Redirections</li>
|
48 |
+
<li>htaccess</li>
|
49 |
+
</ul>
|
50 |
+
|
51 |
<h3>Translation</h3>
|
52 |
|
53 |
<ul>
|
54 |
<li>English</li>
|
55 |
<li>French</li>
|
56 |
+
<li><a href="https://www.seopress.org/contact/">Add yours!</a></li>
|
57 |
</ul>
|
58 |
|
59 |
<h3>Subscribe to our newsletter and get a huge discount!</h3>
|
60 |
And get early access to our pro release!
|
61 |
<a href="http://seopress.org/" target="_blank">Subscribe now</a>
|
62 |
+
|
63 |
== Installation ==
|
64 |
|
65 |
+
1. Upload 'wp-seopress' to the '/wp-content/plugins/' directory
|
66 |
2. Activate the plugin through the 'Plugins' menu in WordPress
|
67 |
3. Click on SEOPress and apply settings.
|
68 |
|
69 |
== Frequently Asked Questions ==
|
70 |
+
<a href="https://www.seopress.org/support/faq/" target="_blank">Read our FAQ</a>
|
71 |
|
72 |
== Screenshots ==
|
73 |
1. SEOPress Dashboard
|
81 |
9. SEOPress Metaboxe: Redirection settings
|
82 |
|
83 |
== Changelog ==
|
84 |
+
= 1.0 =
|
85 |
+
* NEW Google Analytics
|
86 |
+
* NEW Import Yoast Posts metadata in SEOPress (Title tags, Meta description, Facebook Open Graph tags (title, description and image thumbnail), Twitter tags (title, description and image thumbnail), Meta Robots (noindex, nofollow...), Canonical URL)
|
87 |
+
* NEW Google News Sitemap (SEOPress PRO only)
|
88 |
+
* NEW Breadcrumbs (SEOPress PRO only)
|
89 |
+
* NEW Google Page Speed tool (SEOPress PRO only)
|
90 |
+
* NEW Robots.txt (SEOPress PRO only)
|
91 |
+
* NEW htaccess (SEOPress PRO only)
|
92 |
+
* NEW WooCommerce OG:PRICE meta for product (SEOPress PRO only)
|
93 |
+
* NEW WooCommerce OG:CURRENCY meta for product (SEOPress PRO only)
|
94 |
+
* NEW WooCommerce Noindex cart page (SEOPress PRO only)
|
95 |
+
* NEW WooCommerce Noindex checkout page (SEOPress PRO only)
|
96 |
+
* NEW WooCommerce Noindex customer account pages (SEOPress PRO only)
|
97 |
+
* NEW Add Title tag column in post types
|
98 |
+
* NEW Add Meta description column in post types
|
99 |
+
* NEW Set default values (settings need to be reset if you already own the plugin)
|
100 |
+
* NEW Add SEOPress in Admin Bar for quick access (you can remove it)
|
101 |
+
* NEW Manage Titles, Meta Descriptions and Meta Robots for Custom Post Type Archives
|
102 |
+
* NEW Add new checks in notifications center
|
103 |
+
* NEW Add Logo preview in Knowledge graph
|
104 |
+
* INFO If Jetpack enabled, disable Jetpack Open Graph Tags for compatibility
|
105 |
+
* INFO Check if SEOPress is installed, if not, display a notice for SEOPress Pro users
|
106 |
+
* INFO Improve some labels
|
107 |
+
* INFO Add minimum size required for Facebook and Twitter thumbnail
|
108 |
+
* INFO Add SEOPress icon in admin menu
|
109 |
+
* INFO Add descriptions / tooltips for labels, inputs...
|
110 |
+
* FIX Disable article:published_time, article:modified_time and og:updated_time on homepage
|
111 |
+
* FIX CSS bugs
|
112 |
+
* FIX XML Sitemaps namespaces
|
113 |
+
* FIX Escape HTML in OG:Title, Twitter:title
|
114 |
+
* FIX Wrong link for rating SEOPress on w.org
|
115 |
+
* FIX Replace get_site_url() by get_home_url() (thanks to Ludovic Riaudel)
|
116 |
+
* FIX Title tag and meta description for frontpage
|
117 |
+
* FIX Notification center checks
|
118 |
+
* FIX if function exists errors
|
119 |
+
* FIX WooCommerce checks
|
120 |
= 0.9 =
|
121 |
* NEW Add OG:URL if Open Graph is enabled
|
122 |
* NEW Add OG:SITE_NAME if Open Graph is enabled
|
seopress.php
CHANGED
@@ -4,7 +4,7 @@
|
|
4 |
Plugin Name: SEOPress
|
5 |
Plugin URI: http://seopress.org/
|
6 |
Description: The best SEO plugin.
|
7 |
-
Version: 0
|
8 |
Author: Benjamin DENIS
|
9 |
Author URI: http://seopress.org/
|
10 |
License: GPLv2
|
@@ -34,6 +34,33 @@ if ( !function_exists( 'add_action' ) ) {
|
|
34 |
exit;
|
35 |
}
|
36 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
37 |
function seopress_activation() {
|
38 |
add_option( 'seopress_activated', 'yes' );
|
39 |
flush_rewrite_rules();
|
@@ -52,7 +79,7 @@ register_deactivation_hook(__FILE__, 'seopress_deactivation');
|
|
52 |
//Define
|
53 |
///////////////////////////////////////////////////////////////////////////////////////////////////
|
54 |
|
55 |
-
define( 'SEOPRESS_VERSION', '0
|
56 |
define( 'SEOPRESS_AUTHOR', 'Benjamin Denis' );
|
57 |
|
58 |
///////////////////////////////////////////////////////////////////////////////////////////////////
|
@@ -67,6 +94,11 @@ function seopress_init() {
|
|
67 |
require_once dirname( __FILE__ ) . '/inc/admin/admin.php';
|
68 |
require_once dirname( __FILE__ ) . '/inc/admin/admin-metaboxes.php';
|
69 |
require_once dirname( __FILE__ ) . '/inc/admin/ajax.php';
|
|
|
|
|
|
|
|
|
|
|
70 |
}
|
71 |
|
72 |
require_once dirname( __FILE__ ) . '/inc/functions/options.php';
|
@@ -82,6 +114,28 @@ function seopress_add_admin_options_scripts($hook) {
|
|
82 |
wp_register_style( 'seopress-admin', plugins_url('assets/css/seopress.css', __FILE__));
|
83 |
wp_enqueue_style( 'seopress-admin' );
|
84 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
85 |
//Tabs
|
86 |
if (isset($_GET['page']) && ($_GET['page'] == 'seopress-titles') ) {
|
87 |
wp_enqueue_script( 'seopress-admin-tabs-js', plugins_url( 'assets/js/seopress-tabs.js', __FILE__ ), array( 'jquery-ui-tabs' ) );
|
@@ -89,7 +143,9 @@ function seopress_add_admin_options_scripts($hook) {
|
|
89 |
|
90 |
if (isset($_GET['page']) && ($_GET['page'] == 'seopress-xml-sitemap') ) {
|
91 |
wp_enqueue_script( 'seopress-admin-tabs-js', plugins_url( 'assets/js/seopress-tabs4.js', __FILE__ ), array( 'jquery-ui-tabs' ) );
|
|
|
92 |
|
|
|
93 |
wp_enqueue_script( 'seopress-xml-ajax', plugins_url( 'assets/js/seopress-sitemap-ajax.js', __FILE__ ), array( 'jquery' ), '', true );
|
94 |
|
95 |
$seopress_ajax_permalinks = array(
|
@@ -100,6 +156,10 @@ function seopress_add_admin_options_scripts($hook) {
|
|
100 |
|
101 |
}
|
102 |
|
|
|
|
|
|
|
|
|
103 |
if (isset($_GET['page']) && ($_GET['page'] == 'seopress-advanced') ) {
|
104 |
wp_enqueue_script( 'seopress-admin-tabs-js', plugins_url( 'assets/js/seopress-tabs5.js', __FILE__ ), array( 'jquery-ui-tabs' ) );
|
105 |
}
|
@@ -112,11 +172,17 @@ function seopress_add_admin_options_scripts($hook) {
|
|
112 |
}
|
113 |
|
114 |
global $post;
|
115 |
-
|
|
|
|
|
116 |
if ( $hook == 'post-new.php' || $hook == 'post.php') {
|
117 |
-
if ( 'attachment' !== $post->post_type) {
|
118 |
wp_enqueue_script( 'seopress-cpt-tabs-js', plugins_url( 'assets/js/seopress-tabs2.js', __FILE__ ), array( 'jquery-ui-tabs' ) );
|
119 |
-
|
|
|
|
|
|
|
|
|
120 |
wp_enqueue_script( 'seopress-media-uploader-js', plugins_url('assets/js/seopress-media-uploader.js', __FILE__), array('jquery'), '', false );
|
121 |
wp_enqueue_media();
|
122 |
|
@@ -132,7 +198,15 @@ add_action('admin_enqueue_scripts', 'seopress_add_admin_options_scripts', 10, 1)
|
|
132 |
|
133 |
add_filter( 'admin_body_class', 'seopress_admin_body_class' );
|
134 |
function seopress_admin_body_class( $classes ) {
|
135 |
-
if (isset($_GET['page']) && ($_GET['page'] == 'seopress-option'
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
136 |
return $classes."seopress-styles";
|
137 |
}
|
138 |
}
|
@@ -151,10 +225,13 @@ function seopress_plugin_action_links($links, $file) {
|
|
151 |
}
|
152 |
|
153 |
if ($file == $this_plugin) {
|
154 |
-
$settings_link = '<a href="' .
|
155 |
$website_link = '<a href="http://seopress.org/" target="_blank">'.__("SEOPress.org","wp-seopress").'</a>';
|
156 |
-
|
157 |
-
|
|
|
|
|
|
|
158 |
}
|
159 |
|
160 |
return $links;
|
@@ -169,13 +246,14 @@ function seopress_get_post_types() {
|
|
169 |
|
170 |
$args = array(
|
171 |
'show_ui' => true,
|
|
|
172 |
);
|
173 |
|
174 |
$output = 'objects'; // names or objects, note names is the default
|
175 |
$operator = 'and'; // 'and' or 'or'
|
176 |
|
177 |
$post_types = get_post_types( $args, $output, $operator );
|
178 |
-
unset($post_types['attachment']);
|
179 |
return $post_types;
|
180 |
}
|
181 |
|
@@ -208,7 +286,7 @@ function seopress_xml_sitemap_general_enable_option() {
|
|
208 |
return $seopress_xml_sitemap_general_enable_option['seopress_xml_sitemap_general_enable'];
|
209 |
}
|
210 |
}
|
211 |
-
}
|
212 |
|
213 |
function seopress_xml_sitemap_post_types_list_option() {
|
214 |
$seopress_xml_sitemap_post_types_list_option = get_option("seopress_xml_sitemap_option_name");
|
@@ -219,7 +297,7 @@ function seopress_xml_sitemap_post_types_list_option() {
|
|
219 |
return $seopress_xml_sitemap_post_types_list_option['seopress_xml_sitemap_post_types_list'];
|
220 |
}
|
221 |
}
|
222 |
-
}
|
223 |
|
224 |
function seopress_xml_sitemap_taxonomies_list_option() {
|
225 |
$seopress_xml_sitemap_taxonomies_list_option = get_option("seopress_xml_sitemap_option_name");
|
@@ -230,7 +308,7 @@ function seopress_xml_sitemap_taxonomies_list_option() {
|
|
230 |
return $seopress_xml_sitemap_taxonomies_list_option['seopress_xml_sitemap_taxonomies_list'];
|
231 |
}
|
232 |
}
|
233 |
-
}
|
234 |
|
235 |
//Rewrite Rules for XML Sitemap
|
236 |
if (seopress_xml_sitemap_general_enable_option() =='1') {
|
@@ -242,17 +320,17 @@ if (seopress_xml_sitemap_general_enable_option() =='1') {
|
|
242 |
function seopress_xml_sitemap_rewrite() {
|
243 |
|
244 |
//XML Index
|
245 |
-
add_rewrite_rule( '^sitemaps$', 'index.php?seopress_sitemap=1', 'top' );
|
246 |
|
247 |
//XSL Sitemap
|
248 |
-
add_rewrite_rule( '^sitemaps_xsl$', 'index.php?seopress_sitemap_xsl=1', 'top' );
|
249 |
|
250 |
//CPT
|
251 |
if (seopress_xml_sitemap_post_types_list_option() !='') {
|
252 |
foreach (seopress_xml_sitemap_post_types_list_option() as $cpt_key => $cpt_value) {
|
253 |
foreach ($cpt_value as $_cpt_key => $_cpt_value) {
|
254 |
if($_cpt_value =='1') {
|
255 |
-
add_rewrite_rule( 'sitemaps/'.$cpt_key.'
|
256 |
}
|
257 |
}
|
258 |
}
|
@@ -263,7 +341,7 @@ if (seopress_xml_sitemap_general_enable_option() =='1') {
|
|
263 |
foreach (seopress_xml_sitemap_taxonomies_list_option() as $tax_key => $tax_value) {
|
264 |
foreach ($tax_value as $_tax_key => $_tax_value) {
|
265 |
if($_tax_value =='1') {
|
266 |
-
add_rewrite_rule( 'sitemaps/'.$tax_key.'
|
267 |
}
|
268 |
}
|
269 |
}
|
@@ -308,7 +386,64 @@ if (seopress_xml_sitemap_general_enable_option() =='1') {
|
|
308 |
}
|
309 |
}
|
310 |
|
|
|
|
|
|
|
311 |
|
312 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
313 |
|
314 |
?>
|
4 |
Plugin Name: SEOPress
|
5 |
Plugin URI: http://seopress.org/
|
6 |
Description: The best SEO plugin.
|
7 |
+
Version: 1.0
|
8 |
Author: Benjamin DENIS
|
9 |
Author URI: http://seopress.org/
|
10 |
License: GPLv2
|
34 |
exit;
|
35 |
}
|
36 |
|
37 |
+
///////////////////////////////////////////////////////////////////////////////////////////////////
|
38 |
+
//Tracking
|
39 |
+
///////////////////////////////////////////////////////////////////////////////////////////////////
|
40 |
+
require_once __DIR__ . '/wpgod/vendor/autoload.php';
|
41 |
+
|
42 |
+
use WPGodWpseopress\WPGod;
|
43 |
+
|
44 |
+
$wpgod3545d44c7f14185 = new WPGod(
|
45 |
+
array(
|
46 |
+
"type_development" => "plugin",
|
47 |
+
"plugin_file" => plugin_basename(__FILE__),
|
48 |
+
"basename" => dirname(plugin_basename(__FILE__)),
|
49 |
+
"token" => "3545d44c7f14185a1bd17412521e5356b60065c0",
|
50 |
+
"prevent_user" => true,
|
51 |
+
"name_transient" => "wpgod_3545d44c7f14185a1bd17412",
|
52 |
+
"rules_ignore" => array(
|
53 |
+
|
54 |
+
),
|
55 |
+
"environment" => 60
|
56 |
+
)
|
57 |
+
);
|
58 |
+
$wpgod3545d44c7f14185->execute();
|
59 |
+
|
60 |
+
///////////////////////////////////////////////////////////////////////////////////////////////////
|
61 |
+
//Hooks activation
|
62 |
+
///////////////////////////////////////////////////////////////////////////////////////////////////
|
63 |
+
|
64 |
function seopress_activation() {
|
65 |
add_option( 'seopress_activated', 'yes' );
|
66 |
flush_rewrite_rules();
|
79 |
//Define
|
80 |
///////////////////////////////////////////////////////////////////////////////////////////////////
|
81 |
|
82 |
+
define( 'SEOPRESS_VERSION', '1.0' );
|
83 |
define( 'SEOPRESS_AUTHOR', 'Benjamin Denis' );
|
84 |
|
85 |
///////////////////////////////////////////////////////////////////////////////////////////////////
|
94 |
require_once dirname( __FILE__ ) . '/inc/admin/admin.php';
|
95 |
require_once dirname( __FILE__ ) . '/inc/admin/admin-metaboxes.php';
|
96 |
require_once dirname( __FILE__ ) . '/inc/admin/ajax.php';
|
97 |
+
require_once dirname( __FILE__ ) . '/inc/admin/admin-header.php';
|
98 |
+
|
99 |
+
if(current_user_can('edit_posts')) {
|
100 |
+
require_once dirname( __FILE__ ) . '/inc/admin/adminbar.php';
|
101 |
+
}
|
102 |
}
|
103 |
|
104 |
require_once dirname( __FILE__ ) . '/inc/functions/options.php';
|
114 |
wp_register_style( 'seopress-admin', plugins_url('assets/css/seopress.css', __FILE__));
|
115 |
wp_enqueue_style( 'seopress-admin' );
|
116 |
|
117 |
+
//Toggle JS
|
118 |
+
if (isset($_GET['page']) && ($_GET['page'] == 'seopress-option') ) {
|
119 |
+
wp_enqueue_script( 'seopress-toggle-ajax', plugins_url( 'assets/js/seopress-dashboard.js', __FILE__ ), array( 'jquery' ), '', true );
|
120 |
+
|
121 |
+
$seopress_toggle_features = array(
|
122 |
+
'seopress_nonce' => wp_create_nonce('seopress_toggle_features_nonce'),
|
123 |
+
'seopress_toggle_features' => admin_url( 'admin-ajax.php'),
|
124 |
+
);
|
125 |
+
wp_localize_script( 'seopress-toggle-ajax', 'seopressAjaxToggleFeatures', $seopress_toggle_features );
|
126 |
+
}
|
127 |
+
|
128 |
+
//Migration
|
129 |
+
if (isset($_GET['page']) && ($_GET['page'] == 'seopress-option' || $_GET['page'] == 'seopress-import-export') ) {
|
130 |
+
wp_enqueue_script( 'seopress-migrate-ajax', plugins_url( 'assets/js/seopress-yoast-migrate.js', __FILE__ ), array( 'jquery' ), '', true );
|
131 |
+
|
132 |
+
$seopress_yoast_migrate = array(
|
133 |
+
'seopress_nonce' => wp_create_nonce('seopress_yoast_migrate_nonce'),
|
134 |
+
'seopress_yoast_migration' => admin_url( 'admin-ajax.php'),
|
135 |
+
);
|
136 |
+
wp_localize_script( 'seopress-migrate-ajax', 'seopressAjaxYoastMigrate', $seopress_yoast_migrate );
|
137 |
+
}
|
138 |
+
|
139 |
//Tabs
|
140 |
if (isset($_GET['page']) && ($_GET['page'] == 'seopress-titles') ) {
|
141 |
wp_enqueue_script( 'seopress-admin-tabs-js', plugins_url( 'assets/js/seopress-tabs.js', __FILE__ ), array( 'jquery-ui-tabs' ) );
|
143 |
|
144 |
if (isset($_GET['page']) && ($_GET['page'] == 'seopress-xml-sitemap') ) {
|
145 |
wp_enqueue_script( 'seopress-admin-tabs-js', plugins_url( 'assets/js/seopress-tabs4.js', __FILE__ ), array( 'jquery-ui-tabs' ) );
|
146 |
+
}
|
147 |
|
148 |
+
if (isset($_GET['page']) && ($_GET['page'] == 'seopress-xml-sitemap' || $_GET['page'] == 'seopress-pro-page') ) {
|
149 |
wp_enqueue_script( 'seopress-xml-ajax', plugins_url( 'assets/js/seopress-sitemap-ajax.js', __FILE__ ), array( 'jquery' ), '', true );
|
150 |
|
151 |
$seopress_ajax_permalinks = array(
|
156 |
|
157 |
}
|
158 |
|
159 |
+
if (isset($_GET['page']) && ($_GET['page'] == 'seopress-google-analytics') ) {
|
160 |
+
wp_enqueue_script( 'seopress-admin-tabs-js', plugins_url( 'assets/js/seopress-tabs6.js', __FILE__ ), array( 'jquery-ui-tabs' ) );
|
161 |
+
}
|
162 |
+
|
163 |
if (isset($_GET['page']) && ($_GET['page'] == 'seopress-advanced') ) {
|
164 |
wp_enqueue_script( 'seopress-admin-tabs-js', plugins_url( 'assets/js/seopress-tabs5.js', __FILE__ ), array( 'jquery-ui-tabs' ) );
|
165 |
}
|
172 |
}
|
173 |
|
174 |
global $post;
|
175 |
+
|
176 |
+
$cpt_public_check = get_post_type_object( $post->post_type );
|
177 |
+
|
178 |
if ( $hook == 'post-new.php' || $hook == 'post.php') {
|
179 |
+
if ( 'attachment' !== $post->post_type ) {
|
180 |
wp_enqueue_script( 'seopress-cpt-tabs-js', plugins_url( 'assets/js/seopress-tabs2.js', __FILE__ ), array( 'jquery-ui-tabs' ) );
|
181 |
+
if ( 'seopress_404' !== $post->post_type ) {
|
182 |
+
if ($cpt_public_check->public =='1') {
|
183 |
+
wp_enqueue_script( 'seopress-cpt-counters-js', plugins_url( 'assets/js/seopress-counters.js', __FILE__ ), array( 'jquery' ) );
|
184 |
+
}
|
185 |
+
}
|
186 |
wp_enqueue_script( 'seopress-media-uploader-js', plugins_url('assets/js/seopress-media-uploader.js', __FILE__), array('jquery'), '', false );
|
187 |
wp_enqueue_media();
|
188 |
|
198 |
|
199 |
add_filter( 'admin_body_class', 'seopress_admin_body_class' );
|
200 |
function seopress_admin_body_class( $classes ) {
|
201 |
+
if ((isset($_GET['page']) && ($_GET['page'] == 'seopress-option'))
|
202 |
+
|| (isset($_GET['page']) && ($_GET['page'] == 'seopress-titles'))
|
203 |
+
|| (isset($_GET['page']) && ($_GET['page'] == 'seopress-xml-sitemap'))
|
204 |
+
|| (isset($_GET['page']) && ($_GET['page'] == 'seopress-social'))
|
205 |
+
|| (isset($_GET['page']) && ($_GET['page'] == 'seopress-google-analytics'))
|
206 |
+
|| (isset($_GET['page']) && ($_GET['page'] == 'seopress-advanced'))
|
207 |
+
|| (isset($_GET['page']) && ($_GET['page'] == 'seopress-import-export'))
|
208 |
+
|| (isset($_GET['page']) && ($_GET['page'] == 'seopress-pro-page'))
|
209 |
+
|| (isset($_GET['page']) && ($_GET['page'] == 'seopress-license'))) {
|
210 |
return $classes."seopress-styles";
|
211 |
}
|
212 |
}
|
225 |
}
|
226 |
|
227 |
if ($file == $this_plugin) {
|
228 |
+
$settings_link = '<a href="' . admin_url( 'admin.php?page=seopress-option') . '">'.__("Settings","wp-seopress").'</a>';
|
229 |
$website_link = '<a href="http://seopress.org/" target="_blank">'.__("SEOPress.org","wp-seopress").'</a>';
|
230 |
+
if ( !is_plugin_active( 'wp-seopress-pro/seopress-pro.php' )) {
|
231 |
+
$pro_link = '<a href="http://seopress.org/pro" style="color:#a00;font-weight:bold" target="_blank">'.__("GO PRO!","wp-seopress").'</a>';
|
232 |
+
array_unshift($links, $pro_link);
|
233 |
+
}
|
234 |
+
array_unshift($links, $settings_link, $website_link);
|
235 |
}
|
236 |
|
237 |
return $links;
|
246 |
|
247 |
$args = array(
|
248 |
'show_ui' => true,
|
249 |
+
'public' => true,
|
250 |
);
|
251 |
|
252 |
$output = 'objects'; // names or objects, note names is the default
|
253 |
$operator = 'and'; // 'and' or 'or'
|
254 |
|
255 |
$post_types = get_post_types( $args, $output, $operator );
|
256 |
+
unset($post_types['attachment'], $post_types['seopress_404']);
|
257 |
return $post_types;
|
258 |
}
|
259 |
|
286 |
return $seopress_xml_sitemap_general_enable_option['seopress_xml_sitemap_general_enable'];
|
287 |
}
|
288 |
}
|
289 |
+
}
|
290 |
|
291 |
function seopress_xml_sitemap_post_types_list_option() {
|
292 |
$seopress_xml_sitemap_post_types_list_option = get_option("seopress_xml_sitemap_option_name");
|
297 |
return $seopress_xml_sitemap_post_types_list_option['seopress_xml_sitemap_post_types_list'];
|
298 |
}
|
299 |
}
|
300 |
+
}
|
301 |
|
302 |
function seopress_xml_sitemap_taxonomies_list_option() {
|
303 |
$seopress_xml_sitemap_taxonomies_list_option = get_option("seopress_xml_sitemap_option_name");
|
308 |
return $seopress_xml_sitemap_taxonomies_list_option['seopress_xml_sitemap_taxonomies_list'];
|
309 |
}
|
310 |
}
|
311 |
+
}
|
312 |
|
313 |
//Rewrite Rules for XML Sitemap
|
314 |
if (seopress_xml_sitemap_general_enable_option() =='1') {
|
320 |
function seopress_xml_sitemap_rewrite() {
|
321 |
|
322 |
//XML Index
|
323 |
+
add_rewrite_rule( '^sitemaps.xml$', 'index.php?seopress_sitemap=1', 'top' );
|
324 |
|
325 |
//XSL Sitemap
|
326 |
+
add_rewrite_rule( '^sitemaps_xsl.xsl$', 'index.php?seopress_sitemap_xsl=1', 'top' );
|
327 |
|
328 |
//CPT
|
329 |
if (seopress_xml_sitemap_post_types_list_option() !='') {
|
330 |
foreach (seopress_xml_sitemap_post_types_list_option() as $cpt_key => $cpt_value) {
|
331 |
foreach ($cpt_value as $_cpt_key => $_cpt_value) {
|
332 |
if($_cpt_value =='1') {
|
333 |
+
add_rewrite_rule( 'sitemaps/'.$cpt_key.'.xml?$', 'index.php?seopress_cpt='.$cpt_key, 'top' );
|
334 |
}
|
335 |
}
|
336 |
}
|
341 |
foreach (seopress_xml_sitemap_taxonomies_list_option() as $tax_key => $tax_value) {
|
342 |
foreach ($tax_value as $_tax_key => $_tax_value) {
|
343 |
if($_tax_value =='1') {
|
344 |
+
add_rewrite_rule( 'sitemaps/'.$tax_key.'.xml?$', 'index.php?seopress_tax='.$tax_key, 'top' );
|
345 |
}
|
346 |
}
|
347 |
}
|
386 |
}
|
387 |
}
|
388 |
|
389 |
+
///////////////////////////////////////////////////////////////////////////////////////////////////
|
390 |
+
// Check if a feature is ON
|
391 |
+
///////////////////////////////////////////////////////////////////////////////////////////////////
|
392 |
|
393 |
+
// Is Titles enable?
|
394 |
+
function seopress_get_toggle_titles_option() {
|
395 |
+
$seopress_get_toggle_titles_option = get_option("seopress_toggle");
|
396 |
+
if ( ! empty ( $seopress_get_toggle_titles_option ) ) {
|
397 |
+
foreach ($seopress_get_toggle_titles_option as $key => $seopress_get_toggle_titles_value)
|
398 |
+
$options[$key] = $seopress_get_toggle_titles_value;
|
399 |
+
if (isset($seopress_get_toggle_titles_option['toggle-titles'])) {
|
400 |
+
return $seopress_get_toggle_titles_option['toggle-titles'];
|
401 |
+
}
|
402 |
+
}
|
403 |
+
}
|
404 |
+
// Is Social enable?
|
405 |
+
function seopress_get_toggle_social_option() {
|
406 |
+
$seopress_get_toggle_social_option = get_option("seopress_toggle");
|
407 |
+
if ( ! empty ( $seopress_get_toggle_social_option ) ) {
|
408 |
+
foreach ($seopress_get_toggle_social_option as $key => $seopress_get_toggle_social_value)
|
409 |
+
$options[$key] = $seopress_get_toggle_social_value;
|
410 |
+
if (isset($seopress_get_toggle_social_option['toggle-social'])) {
|
411 |
+
return $seopress_get_toggle_social_option['toggle-social'];
|
412 |
+
}
|
413 |
+
}
|
414 |
+
}
|
415 |
+
// Is XML Sitemap enable?
|
416 |
+
function seopress_get_toggle_xml_sitemap_option() {
|
417 |
+
$seopress_get_toggle_xml_sitemap_option = get_option("seopress_toggle");
|
418 |
+
if ( ! empty ( $seopress_get_toggle_xml_sitemap_option ) ) {
|
419 |
+
foreach ($seopress_get_toggle_xml_sitemap_option as $key => $seopress_get_toggle_xml_sitemap_value)
|
420 |
+
$options[$key] = $seopress_get_toggle_xml_sitemap_value;
|
421 |
+
if (isset($seopress_get_toggle_xml_sitemap_option['toggle-xml-sitemap'])) {
|
422 |
+
return $seopress_get_toggle_xml_sitemap_option['toggle-xml-sitemap'];
|
423 |
+
}
|
424 |
+
}
|
425 |
+
}
|
426 |
+
// Is Google Analytics enable?
|
427 |
+
function seopress_get_toggle_google_analytics_option() {
|
428 |
+
$seopress_get_toggle_google_analytics_option = get_option("seopress_toggle");
|
429 |
+
if ( ! empty ( $seopress_get_toggle_google_analytics_option ) ) {
|
430 |
+
foreach ($seopress_get_toggle_google_analytics_option as $key => $seopress_get_toggle_google_analytics_value)
|
431 |
+
$options[$key] = $seopress_get_toggle_google_analytics_value;
|
432 |
+
if (isset($seopress_get_toggle_google_analytics_option['toggle-google-analytics'])) {
|
433 |
+
return $seopress_get_toggle_google_analytics_option['toggle-google-analytics'];
|
434 |
+
}
|
435 |
+
}
|
436 |
+
}
|
437 |
+
// Is Advanced enable?
|
438 |
+
function seopress_get_toggle_advanced_option() {
|
439 |
+
$seopress_get_toggle_advanced_option = get_option("seopress_toggle");
|
440 |
+
if ( ! empty ( $seopress_get_toggle_advanced_option ) ) {
|
441 |
+
foreach ($seopress_get_toggle_advanced_option as $key => $seopress_get_toggle_advanced_value)
|
442 |
+
$options[$key] = $seopress_get_toggle_advanced_value;
|
443 |
+
if (isset($seopress_get_toggle_advanced_option['toggle-advanced'])) {
|
444 |
+
return $seopress_get_toggle_advanced_option['toggle-advanced'];
|
445 |
+
}
|
446 |
+
}
|
447 |
+
}
|
448 |
|
449 |
?>
|
wpgod/composer-temp.phar
ADDED
Binary file
|
wpgod/composer.json
ADDED
@@ -0,0 +1,16 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
{
|
2 |
+
"name": "Gmulti/WPGod",
|
3 |
+
"description": "Library Tracker errors WordPress",
|
4 |
+
"license": "GPL",
|
5 |
+
"authors": [
|
6 |
+
{
|
7 |
+
"name": "Thomas DENEULIN",
|
8 |
+
"email": "contact@wp-god.com"
|
9 |
+
}
|
10 |
+
],
|
11 |
+
"autoload": {
|
12 |
+
"psr-4": {
|
13 |
+
"WPGodWpseopress\\": "src/WPGod/"
|
14 |
+
}
|
15 |
+
}
|
16 |
+
}
|
wpgod/composer.phar
ADDED
Binary file
|
wpgod/public/js/send-error.js
ADDED
@@ -0,0 +1,8 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
jQuery(document).ready(function($){
|
2 |
+
$.post(
|
3 |
+
configGodError.url,
|
4 |
+
{
|
5 |
+
'action': configGodError.action
|
6 |
+
}
|
7 |
+
);
|
8 |
+
});
|
wpgod/public/js/send-tracking-general.js
ADDED
@@ -0,0 +1,8 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
jQuery(document).ready(function($){
|
2 |
+
$.post(
|
3 |
+
configGodTrackingGeneral.url,
|
4 |
+
{
|
5 |
+
'action': configGodTrackingGeneral.action
|
6 |
+
}
|
7 |
+
);
|
8 |
+
});
|
wpgod/src/WPGod/Handler/GodAdminNoticeHandler.php
ADDED
@@ -0,0 +1,118 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
<?php
|
2 |
+
|
3 |
+
namespace WPGodWpseopress\Handler;
|
4 |
+
|
5 |
+
use WPGodWpseopress\Services\GodAbstractService;
|
6 |
+
use WPGodWpseopress\Helpers\GodTypeDevelopment;
|
7 |
+
use WPGodWpseopress\Models\HooksInterface;
|
8 |
+
use WPGodWpseopress\WPGod;
|
9 |
+
|
10 |
+
/**
|
11 |
+
*
|
12 |
+
* GodAdminNoticeHandler
|
13 |
+
*
|
14 |
+
* @author Thomas DENEULIN <contact@wp-god.com>
|
15 |
+
* @version 1.0.0
|
16 |
+
* @since 1.0.0
|
17 |
+
*/
|
18 |
+
class GodAdminNoticeHandler extends GodAbstractService implements HooksInterface {
|
19 |
+
|
20 |
+
public function __construct($services = array(), $helpers = array(), $preventUser = false){
|
21 |
+
|
22 |
+
parent::__construct($services, $helpers);
|
23 |
+
|
24 |
+
$this->preventUser = $preventUser;
|
25 |
+
|
26 |
+
}
|
27 |
+
|
28 |
+
|
29 |
+
public function hooks(){
|
30 |
+
if($this->preventUser){
|
31 |
+
add_action( 'admin_notices', array( $this, 'preventMonitoring' ) );
|
32 |
+
add_action( 'admin_init', array( $this, 'checkForMonitoring' ) );
|
33 |
+
}
|
34 |
+
}
|
35 |
+
|
36 |
+
|
37 |
+
public function checkForMonitoring() {
|
38 |
+
|
39 |
+
|
40 |
+
|
41 |
+
if ( ! current_user_can( 'manage_options' ) && ( ! defined( 'DOING_AJAX' ) || ! DOING_AJAX ) ) {
|
42 |
+
return;
|
43 |
+
}
|
44 |
+
|
45 |
+
|
46 |
+
if(isset($_GET["wpgod_seopress_action"]) &&
|
47 |
+
in_array($_GET["wpgod_seopress_action"], array("opt_in", "opt_out"))){
|
48 |
+
|
49 |
+
$hide_notice = get_option( 'wpgod_seopress_tracking_notice' );
|
50 |
+
|
51 |
+
if( $hide_notice ) {
|
52 |
+
return;
|
53 |
+
}
|
54 |
+
|
55 |
+
update_option( 'wpgod_seopress_tracking_notice', 1);
|
56 |
+
|
57 |
+
switch ($_GET["wpgod_seopress_action"]) {
|
58 |
+
case 'opt_in':
|
59 |
+
update_option("wpgod_seopress_allow_tracking", 1);
|
60 |
+
break;
|
61 |
+
|
62 |
+
case "opt_out":
|
63 |
+
update_option("wpgod_seopress_allow_tracking", 0);
|
64 |
+
break;
|
65 |
+
}
|
66 |
+
}
|
67 |
+
}
|
68 |
+
|
69 |
+
|
70 |
+
public function preventMonitoring(){
|
71 |
+
$hide_notice = get_option( 'wpgod_seopress_tracking_notice' );
|
72 |
+
|
73 |
+
if( $hide_notice ) {
|
74 |
+
return;
|
75 |
+
}
|
76 |
+
|
77 |
+
if( get_option( 'wpgod_seopress_allow_tracking', false ) ) {
|
78 |
+
return;
|
79 |
+
}
|
80 |
+
|
81 |
+
if( ! current_user_can( 'manage_options' ) ) {
|
82 |
+
return;
|
83 |
+
}
|
84 |
+
|
85 |
+
if(
|
86 |
+
stristr( network_site_url( '/' ), 'dev' ) !== false ||
|
87 |
+
stristr( network_site_url( '/' ), 'localhost' ) !== false ||
|
88 |
+
stristr( network_site_url( '/' ), ':8888' ) !== false
|
89 |
+
) {
|
90 |
+
update_option( 'wpgod_seopress_tracking_notice', '1' );
|
91 |
+
} else {
|
92 |
+
$optinUrl = add_query_arg( 'wpgod_seopress_action', "opt_in" );
|
93 |
+
$optoutUrl = add_query_arg( 'wpgod_seopress_action', "opt_out" );
|
94 |
+
|
95 |
+
?>
|
96 |
+
<div class="updated">
|
97 |
+
<p>
|
98 |
+
Allow to track plugin SEOPress usage ? . No sensitive data is tracked.
|
99 |
+
<a href="<?php echo esc_url( $optinUrl ) ?>" class="button-secondary">Allow</a>
|
100 |
+
<a href="<?php echo esc_url( $optoutUrl ) ?>" class="button-secondary">Do not allow</a>
|
101 |
+
</p>
|
102 |
+
</div>
|
103 |
+
|
104 |
+
<?php
|
105 |
+
}
|
106 |
+
}
|
107 |
+
|
108 |
+
|
109 |
+
}
|
110 |
+
|
111 |
+
|
112 |
+
|
113 |
+
|
114 |
+
|
115 |
+
|
116 |
+
|
117 |
+
|
118 |
+
|
wpgod/src/WPGod/Handler/GodErrorHandler.php
ADDED
@@ -0,0 +1,136 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
<?php
|
2 |
+
|
3 |
+
namespace WPGodWpseopress\Handler;
|
4 |
+
|
5 |
+
use WPGodWpseopress\Models\GodHandlerInterface;
|
6 |
+
use WPGodWpseopress\Services\GodAbstractService;
|
7 |
+
use WPGodWpseopress\Helpers\GodTypeDevelopment;
|
8 |
+
|
9 |
+
/**
|
10 |
+
*
|
11 |
+
* GodErrorHandler
|
12 |
+
*
|
13 |
+
* @author Thomas DENEULIN <contact@wp-god.com>
|
14 |
+
* @version 1.0.0
|
15 |
+
* @since 1.0.0
|
16 |
+
*/
|
17 |
+
class GodErrorHandler extends GodAbstractService implements GodHandlerInterface{
|
18 |
+
|
19 |
+
public static $functionExclude = array(
|
20 |
+
"getBackTrace",
|
21 |
+
"register_error",
|
22 |
+
"godErrorHandler",
|
23 |
+
"godErrorShutdownHandler",
|
24 |
+
"verifyExistErrors"
|
25 |
+
);
|
26 |
+
|
27 |
+
public function __construct($services = array(), $helpers = array(), $pause = false){
|
28 |
+
|
29 |
+
parent::__construct($services, $helpers);
|
30 |
+
|
31 |
+
if(!$pause):
|
32 |
+
set_error_handler(array($this, 'godErrorHandler'));
|
33 |
+
register_shutdown_function(array($this, 'godErrorShutdownHandler'));
|
34 |
+
|
35 |
+
endif;
|
36 |
+
}
|
37 |
+
|
38 |
+
|
39 |
+
public function checkLibraryPlugin($file){
|
40 |
+
|
41 |
+
$pluginDir = dirname(str_replace(WP_PLUGIN_DIR, "", $file));
|
42 |
+
$namespaceName = "\WPGod" . ucfirst(str_replace("/", "", $pluginDir));
|
43 |
+
$class = $namespaceName . "\Services\GodApi";
|
44 |
+
if(file_exists(WP_PLUGIN_DIR . $pluginDir . '/wpgod/src/WPGod/Services/GodApi.php') &&
|
45 |
+
method_exists($class, "getNameTransientOtherStatic") &&
|
46 |
+
method_exists($class, "getNameTransientAlreadyCheck")){
|
47 |
+
return array(
|
48 |
+
"already_check" => $class::getNameTransientAlreadyCheck(),
|
49 |
+
"other" => $class::getNameTransientOtherStatic()
|
50 |
+
);
|
51 |
+
}
|
52 |
+
|
53 |
+
return false;
|
54 |
+
|
55 |
+
}
|
56 |
+
|
57 |
+
public function godErrorHandler($code, $message, $file, $line, $ctx = array()) {
|
58 |
+
$serializeParams = array(
|
59 |
+
"file" => $file,
|
60 |
+
"code" => $code,
|
61 |
+
"line" => $line,
|
62 |
+
"message" => $message
|
63 |
+
);
|
64 |
+
if($this->getService("GodAuthorizeError")->authorizeHandler($file, $code) &&
|
65 |
+
!$this->getService("GodAuthorizeError")->checkAlreadyTrack($serializeParams) ) {
|
66 |
+
|
67 |
+
$this->code = $code;
|
68 |
+
$this->message = $message;
|
69 |
+
$this->file = $file;
|
70 |
+
$this->line = $line;
|
71 |
+
$this->ctx = $ctx;
|
72 |
+
|
73 |
+
$this->registerError();
|
74 |
+
|
75 |
+
$transients = $this->checkLibraryPlugin($file);
|
76 |
+
|
77 |
+
if($transients && !$this->getService("GodAuthorizeError")->checkAlreadyTrack($serializeParams, $transients["already_check"])){
|
78 |
+
$this->registerError($transients["other"]);
|
79 |
+
}
|
80 |
+
|
81 |
+
}
|
82 |
+
}
|
83 |
+
|
84 |
+
protected function registerError($nameTransient = null){
|
85 |
+
|
86 |
+
$this->file = addslashes($this->file);
|
87 |
+
|
88 |
+
global $wp_version;
|
89 |
+
$locale = get_locale();
|
90 |
+
$locale = str_replace('_', '-', $locale);
|
91 |
+
|
92 |
+
|
93 |
+
$pluginData = $this->getHelper("GodEnvironmentInfo")->getPluginData($this->getService("GodApi")->getPluginFile());
|
94 |
+
|
95 |
+
$version = $this->getService("GodApi")->getVersion();
|
96 |
+
if($pluginData){
|
97 |
+
$version = $pluginData["plugin_version"];
|
98 |
+
}
|
99 |
+
|
100 |
+
$params = array(
|
101 |
+
"file" => $this->file,
|
102 |
+
"message" => $this->message,
|
103 |
+
"line" => $this->line,
|
104 |
+
"code" => $this->code,
|
105 |
+
"wp_infos" => array(
|
106 |
+
"wp_version" => $wp_version,
|
107 |
+
"blog_id" => get_current_blog_id(),
|
108 |
+
"wp_local_package" => $locale
|
109 |
+
),
|
110 |
+
"server_infos" => $this->getHelper("GodServerInfo")->getInfosServerForSavePost(),
|
111 |
+
"version" => $version,
|
112 |
+
"home_url" => get_home_url(),
|
113 |
+
"php_version" => PHP_VERSION
|
114 |
+
);
|
115 |
+
|
116 |
+
$this->getService("GodApi")->saveError($params, $nameTransient);
|
117 |
+
}
|
118 |
+
|
119 |
+
public function godErrorShutdownHandler(){
|
120 |
+
|
121 |
+
$last_error = error_get_last();
|
122 |
+
if ($last_error !== null) {
|
123 |
+
$this->godErrorHandler($last_error['type'], $last_error['message'], $last_error['file'], $last_error['line']);
|
124 |
+
}
|
125 |
+
}
|
126 |
+
|
127 |
+
}
|
128 |
+
|
129 |
+
|
130 |
+
|
131 |
+
|
132 |
+
|
133 |
+
|
134 |
+
|
135 |
+
|
136 |
+
|
wpgod/src/WPGod/Handler/GodTrackingHandler.php
ADDED
@@ -0,0 +1,101 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
<?php
|
2 |
+
|
3 |
+
namespace WPGodWpseopress\Handler;
|
4 |
+
|
5 |
+
use WPGodWpseopress\Services\GodAbstractService;
|
6 |
+
use WPGodWpseopress\Helpers\GodTypeDevelopment;
|
7 |
+
use WPGodWpseopress\Models\HooksInterface;
|
8 |
+
use WPGodWpseopress\WPGod;
|
9 |
+
|
10 |
+
/**
|
11 |
+
*
|
12 |
+
* GodTrackingHandler
|
13 |
+
*
|
14 |
+
* @author Thomas DENEULIN <contact@wp-god.com>
|
15 |
+
* @version 1.0.0
|
16 |
+
* @since 1.0.0
|
17 |
+
*/
|
18 |
+
class GodTrackingHandler extends GodAbstractService implements HooksInterface {
|
19 |
+
|
20 |
+
public function __construct($services = array(), $helpers = array(), $pause = false){
|
21 |
+
|
22 |
+
parent::__construct($services, $helpers);
|
23 |
+
|
24 |
+
$this->pause = $pause;
|
25 |
+
|
26 |
+
}
|
27 |
+
|
28 |
+
|
29 |
+
public function hooks(){
|
30 |
+
$apiService = $this->getService('GodApi');
|
31 |
+
|
32 |
+
if(!$this->pause):
|
33 |
+
$lastDateCheck = $apiService::getLastCheckTrackingGeneral();
|
34 |
+
$intervalTracking = apply_filters("god_interval_tracking", 60 * 60 * 24 * 5);
|
35 |
+
$authorizeMonitoring = true;
|
36 |
+
|
37 |
+
$preventUser = $this->getService("GodApi")->getPreventUser();
|
38 |
+
|
39 |
+
if($preventUser){
|
40 |
+
|
41 |
+
$allowTracking = get_option('wpgod_seopress_allow_tracking');
|
42 |
+
|
43 |
+
if(!$allowTracking){
|
44 |
+
$authorizeMonitoring = false;
|
45 |
+
}
|
46 |
+
}
|
47 |
+
|
48 |
+
if((!$lastDateCheck || abs(time() - $lastDateCheck) > $intervalTracking) && $authorizeMonitoring){
|
49 |
+
$apiService::initLastCheckTrackingGeneral();
|
50 |
+
add_action('init', array($this, 'trackingGeneral'), 0);
|
51 |
+
add_action( 'wp_ajax_tracking_general', array($this, 'prefix_ajax_tracking_general') );
|
52 |
+
add_action( 'wp_ajax_nopriv_tracking_general', array($this, 'prefix_ajax_tracking_general') );
|
53 |
+
}
|
54 |
+
endif;
|
55 |
+
}
|
56 |
+
|
57 |
+
public function prefix_ajax_tracking_general(){
|
58 |
+
$serverInfos = $this->getHelper("GodServerInfo")->getTrackingServerData();
|
59 |
+
$wpInfos = $this->getHelper("GodEnvironmentInfo")->getAllDataEnvironment();
|
60 |
+
$pluginData = $this->getHelper("GodEnvironmentInfo")->getPluginData($this->getService("GodApi")->getPluginFile());
|
61 |
+
|
62 |
+
$this->getService("GodApi")->sendTrackingGeneral(array_merge($serverInfos, $wpInfos, $pluginData));
|
63 |
+
}
|
64 |
+
|
65 |
+
public function trackingGeneral(){
|
66 |
+
$pluginData = $this->getHelper("GodEnvironmentInfo")->getPluginData($this->getService("GodApi")->getPluginFile());
|
67 |
+
if(is_admin()){
|
68 |
+
add_action("admin_enqueue_scripts", array($this, "enqueue_script_god"));
|
69 |
+
}
|
70 |
+
else{
|
71 |
+
add_action("wp_enqueue_scripts", array($this, "enqueue_script_god"));
|
72 |
+
}
|
73 |
+
}
|
74 |
+
|
75 |
+
public function enqueue_script_god(){
|
76 |
+
$url = admin_url("admin-ajax.php");
|
77 |
+
$urlRegisterScript = sprintf("%s/%s.js", WPGod::$GOD_PATH_PUBLIC_JS, "send-tracking-general");
|
78 |
+
$uniqId = uniqid();
|
79 |
+
wp_register_script( $uniqId . '-god-js', $urlRegisterScript, array( 'jquery' ) );
|
80 |
+
|
81 |
+
$arr = array(
|
82 |
+
"url" => $url,
|
83 |
+
"action" => "tracking_general"
|
84 |
+
);
|
85 |
+
wp_localize_script( $uniqId . '-god-js', 'configGodTrackingGeneral', $arr );
|
86 |
+
|
87 |
+
wp_enqueue_script( $uniqId . '-god-js' );
|
88 |
+
}
|
89 |
+
|
90 |
+
|
91 |
+
|
92 |
+
}
|
93 |
+
|
94 |
+
|
95 |
+
|
96 |
+
|
97 |
+
|
98 |
+
|
99 |
+
|
100 |
+
|
101 |
+
|
wpgod/src/WPGod/Helpers/GodEnvironmentInfo.php
ADDED
@@ -0,0 +1,107 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
<?php
|
2 |
+
|
3 |
+
namespace WPGodWpseopress\Helpers;
|
4 |
+
|
5 |
+
use WPGodWpseopress\Models\HelperInterface;
|
6 |
+
|
7 |
+
/**
|
8 |
+
* GodServerInfo
|
9 |
+
*
|
10 |
+
* @author Thomas DENEULIN <contact@wp-god.com>
|
11 |
+
* @version 2.0.0
|
12 |
+
* @since 1.0.0
|
13 |
+
*/
|
14 |
+
class GodEnvironmentInfo implements HelperInterface {
|
15 |
+
|
16 |
+
public function getThemeData(){
|
17 |
+
if ( get_bloginfo( 'version' ) < '3.4' ) {
|
18 |
+
$themeData = get_theme_data( get_stylesheet_directory() . '/style.css' );
|
19 |
+
$theme = $themeData['Name'] . ' ' . $themeData['Version'];
|
20 |
+
} else {
|
21 |
+
$themeData = wp_get_theme();
|
22 |
+
$theme = $themeData->Name . ' ' . $themeData->Version;
|
23 |
+
}
|
24 |
+
|
25 |
+
return array(
|
26 |
+
"theme" => $theme,
|
27 |
+
"theme_data" => $themeData
|
28 |
+
);
|
29 |
+
}
|
30 |
+
|
31 |
+
public function getAllDataEnvironment(){
|
32 |
+
|
33 |
+
$data = array();
|
34 |
+
try {
|
35 |
+
|
36 |
+
$themeData = $this->getThemeData();
|
37 |
+
$data['admin_email'] = get_bloginfo( 'admin_email' );
|
38 |
+
$data['locale'] = get_locale();
|
39 |
+
$data["multisite"] = is_multisite();
|
40 |
+
$data["site_url"] = site_url();
|
41 |
+
$data["home_url"] = home_url();
|
42 |
+
$data["wp_version"] = get_bloginfo( 'version' );
|
43 |
+
$data["permalink_structure"] = get_option( 'permalink_structure' );
|
44 |
+
$data["active_theme"] = $themeData["theme"];
|
45 |
+
|
46 |
+
$data["registered_post_stati"] = implode( ', ', get_post_stati());
|
47 |
+
$data["wp_debug"] = defined( 'WP_DEBUG' )? WP_DEBUG : false;
|
48 |
+
|
49 |
+
|
50 |
+
return $data;
|
51 |
+
|
52 |
+
} catch (\Exception $e) {
|
53 |
+
return $data;
|
54 |
+
}
|
55 |
+
|
56 |
+
}
|
57 |
+
|
58 |
+
public function getPluginData($pluginFile){
|
59 |
+
if ( ! function_exists( 'get_plugins' ) ) {
|
60 |
+
require_once ABSPATH . 'wp-admin/includes/plugin.php';
|
61 |
+
}
|
62 |
+
|
63 |
+
$plugins = get_plugins();
|
64 |
+
$active_plugins = get_option( 'active_plugins', array() );
|
65 |
+
|
66 |
+
$pluginData = null;
|
67 |
+
foreach ( $plugins as $plugin_path => $plugin ) {
|
68 |
+
if ( ! in_array( $plugin_path, $active_plugins ) || $plugin_path != $pluginFile)
|
69 |
+
continue;
|
70 |
+
|
71 |
+
$pluginData = $plugin;
|
72 |
+
break;
|
73 |
+
}
|
74 |
+
|
75 |
+
return array(
|
76 |
+
"plugin_version" => $pluginData['Version']
|
77 |
+
);
|
78 |
+
}
|
79 |
+
|
80 |
+
public function getPluginDataMultisite($pluginFile){
|
81 |
+
|
82 |
+
if ( !is_multisite() ){
|
83 |
+
return false;
|
84 |
+
}
|
85 |
+
|
86 |
+
$plugins = wp_get_active_network_plugins();
|
87 |
+
$active_plugins = get_site_option( 'active_sitewide_plugins', array() );
|
88 |
+
$pluginData = null;
|
89 |
+
|
90 |
+
foreach ( $plugins as $plugin_path ) {
|
91 |
+
$plugin_base = plugin_basename( $plugin_path );
|
92 |
+
|
93 |
+
if ( ! array_key_exists( $plugin_base, $active_plugins ) || $plugin_path != $pluginFile )
|
94 |
+
continue;
|
95 |
+
|
96 |
+
$pluginData = $plugin;
|
97 |
+
break;
|
98 |
+
}
|
99 |
+
|
100 |
+
return array(
|
101 |
+
"plugin_version" => $pluginData['Version']
|
102 |
+
);
|
103 |
+
}
|
104 |
+
|
105 |
+
}
|
106 |
+
|
107 |
+
|
wpgod/src/WPGod/Helpers/GodError.php
ADDED
@@ -0,0 +1,73 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
<?php
|
2 |
+
|
3 |
+
namespace WPGodWpseopress\Helpers;
|
4 |
+
|
5 |
+
use WPGodWpseopress\Models\HelperInterface;
|
6 |
+
|
7 |
+
/**
|
8 |
+
* GodError
|
9 |
+
*
|
10 |
+
* @author Thomas DENEULIN <contact@wp-god.com>
|
11 |
+
* @version 2.0.0
|
12 |
+
* @since 1.0.0
|
13 |
+
*/
|
14 |
+
class GodError implements HelperInterface {
|
15 |
+
|
16 |
+
protected $errors;
|
17 |
+
|
18 |
+
protected $froms;
|
19 |
+
|
20 |
+
public function __construct(){
|
21 |
+
$this->errors = apply_filters("_god_list_errors",
|
22 |
+
array(
|
23 |
+
0 => 'E_UNKNOWN',
|
24 |
+
1 => 'E_ERROR',
|
25 |
+
2 => 'E_WARNING',
|
26 |
+
4 => 'E_PARSE',
|
27 |
+
8 => 'E_NOTICE',
|
28 |
+
16 => 'E_CORE_ERROR',
|
29 |
+
32 => 'E_CORE_WARNING',
|
30 |
+
64 => 'E_COMPILE_ERROR',
|
31 |
+
128 => 'E_COMPILE_WARNING',
|
32 |
+
256 => 'E_USER_ERROR',
|
33 |
+
512 => 'E_USER_WARNING',
|
34 |
+
1024 => 'E_USER_NOTICE',
|
35 |
+
2048 => 'E_STRICT',
|
36 |
+
4096 => 'E_RECOVERABLE_ERROR',
|
37 |
+
8192 => 'E_DEPRECATED',
|
38 |
+
16384 => 'E_USER_DEPRECATED',
|
39 |
+
32767 => 'E_ALL'
|
40 |
+
)
|
41 |
+
);
|
42 |
+
|
43 |
+
}
|
44 |
+
|
45 |
+
public function getErrors(){
|
46 |
+
return $this->errors;
|
47 |
+
}
|
48 |
+
|
49 |
+
public function getFroms(){
|
50 |
+
return $this->froms;
|
51 |
+
}
|
52 |
+
|
53 |
+
|
54 |
+
public function getStringError($errno){
|
55 |
+
$errors = self::getErrors();
|
56 |
+
|
57 |
+
if(array_key_exists($errno, $errors)){
|
58 |
+
return $errors[$errno];
|
59 |
+
}
|
60 |
+
|
61 |
+
return 'E_UNKNOWN';
|
62 |
+
}
|
63 |
+
|
64 |
+
}
|
65 |
+
|
66 |
+
|
67 |
+
|
68 |
+
|
69 |
+
|
70 |
+
|
71 |
+
|
72 |
+
|
73 |
+
|
wpgod/src/WPGod/Helpers/GodServerInfo.php
ADDED
@@ -0,0 +1,101 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
<?php
|
2 |
+
|
3 |
+
namespace WPGodWpseopress\Helpers;
|
4 |
+
|
5 |
+
use WPGodWpseopress\Models\HelperInterface;
|
6 |
+
|
7 |
+
/**
|
8 |
+
* GodServerInfo
|
9 |
+
*
|
10 |
+
* @author Thomas DENEULIN <contact@wp-god.com>
|
11 |
+
* @version 2.0.0
|
12 |
+
* @since 1.0.0
|
13 |
+
*/
|
14 |
+
class GodServerInfo implements HelperInterface {
|
15 |
+
|
16 |
+
|
17 |
+
public function getInfosServerForSavePost(){
|
18 |
+
$data["is_ajax"] = (defined('DOING_AJAX') && DOING_AJAX) ? true : false;
|
19 |
+
$data['HTTP_HOST'] = esc_html( $_SERVER['HTTP_HOST'] );
|
20 |
+
$data['SERVER_ADDR'] = $_SERVER['SERVER_ADDR'];
|
21 |
+
$data['SERVER_PORT'] = $_SERVER['SERVER_PORT'];
|
22 |
+
$data['REQUEST_URI'] = str_replace( '&nbsp;', ' ', esc_html( $_SERVER['REQUEST_URI'] ) );
|
23 |
+
$data["php_safe_mode"] = ini_get( 'safe_mode' );
|
24 |
+
$data["php_memory_limit"] = ini_get( 'memory_limit' );
|
25 |
+
$data["php_upload_max_size"] = ini_get( 'upload_max_filesize' );
|
26 |
+
$data["php_post_max_size"] = ini_get( 'post_max_size' );
|
27 |
+
$data["php_upload_max_filesize"] = ini_get( 'upload_max_filesize' );
|
28 |
+
$data["php_time_limit"] = ini_get( 'max_execution_time' );
|
29 |
+
$data["php_max_input_vars"] = ini_get( 'max_input_vars' );
|
30 |
+
$data["php_arg_separator"] = ini_get( 'arg_separator.output' );
|
31 |
+
$data["php_allow_url_file_open"] = ini_get( 'allow_url_fopen' );
|
32 |
+
$data["wp_memory_limit"] = WP_MEMORY_LIMIT;
|
33 |
+
$data["session"] = isset( $_SESSION );
|
34 |
+
$data["cookies"] = ini_get( 'session.use_cookies' );
|
35 |
+
$data["only_cookies"] = ini_get( 'session.use_only_cookies' );
|
36 |
+
$data["display_errors"] = ini_get( 'display_errors' );
|
37 |
+
$data["fsockopen"] = function_exists( 'fsockopen' );
|
38 |
+
$data["curl"] = function_exists( 'curl_init' );
|
39 |
+
$data["soap"] = class_exists( 'SoapClient');
|
40 |
+
$data["suhosin"] = extension_loaded( 'suhosin' );
|
41 |
+
|
42 |
+
$data["active_plugins"] = array();
|
43 |
+
$data["network_active_plugins"] = array();
|
44 |
+
|
45 |
+
if ( ! function_exists( 'get_plugins' ) ) {
|
46 |
+
require_once ABSPATH . 'wp-admin/includes/plugin.php';
|
47 |
+
}
|
48 |
+
$plugins = get_plugins();
|
49 |
+
$active_plugins = get_option( 'active_plugins', array() );
|
50 |
+
|
51 |
+
$i = 0;
|
52 |
+
foreach ( $plugins as $plugin_path => $plugin ) {
|
53 |
+
if ( ! in_array( $plugin_path, $active_plugins ) )
|
54 |
+
continue;
|
55 |
+
$data["active_plugins"][$i]["name"] = $plugin['Name'];
|
56 |
+
$data["active_plugins"][$i]["version"] = $plugin['Version'];
|
57 |
+
$i++;
|
58 |
+
}
|
59 |
+
|
60 |
+
if ( is_multisite() ){
|
61 |
+
$i = 0;
|
62 |
+
$plugins = wp_get_active_network_plugins();
|
63 |
+
$active_plugins = get_site_option( 'active_sitewide_plugins', array() );
|
64 |
+
|
65 |
+
foreach ( $plugins as $plugin_path ) {
|
66 |
+
$plugin_base = plugin_basename( $plugin_path );
|
67 |
+
|
68 |
+
if ( ! array_key_exists( $plugin_base, $active_plugins ) )
|
69 |
+
continue;
|
70 |
+
|
71 |
+
$plugin = get_plugin_data( $plugin_path );
|
72 |
+
|
73 |
+
$data["network_active_plugins"][$i]["name"] = $plugin['Name'];
|
74 |
+
$data["network_active_plugins"][$i]["version"] = $plugin['Version'];
|
75 |
+
$i++;
|
76 |
+
}
|
77 |
+
}
|
78 |
+
|
79 |
+
|
80 |
+
|
81 |
+
return $data;
|
82 |
+
}
|
83 |
+
|
84 |
+
public function getTrackingServerData(){
|
85 |
+
|
86 |
+
$data = array();
|
87 |
+
if(function_exists("mysql_get_server_info")){
|
88 |
+
$data["mysql_version"] = mysql_get_server_info();
|
89 |
+
}
|
90 |
+
|
91 |
+
$data["web_server"] = $_SERVER['SERVER_SOFTWARE'];
|
92 |
+
$data['server_addr'] = $_SERVER['SERVER_ADDR'];
|
93 |
+
$data["php_version"] = PHP_VERSION;
|
94 |
+
|
95 |
+
return $data;
|
96 |
+
}
|
97 |
+
|
98 |
+
|
99 |
+
}
|
100 |
+
|
101 |
+
|
wpgod/src/WPGod/Helpers/GodTypeDevelopment.php
ADDED
@@ -0,0 +1,21 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
<?php
|
2 |
+
|
3 |
+
namespace WPGodWpseopress\Helpers;
|
4 |
+
|
5 |
+
|
6 |
+
/**
|
7 |
+
* GodTypeDevelopment
|
8 |
+
*
|
9 |
+
* @author Thomas DENEULIN <contact@wp-god.com>
|
10 |
+
* @version 2.0.0
|
11 |
+
* @since 1.0.0
|
12 |
+
*/
|
13 |
+
abstract class GodTypeDevelopment {
|
14 |
+
|
15 |
+
const PLUGIN = "plugin";
|
16 |
+
const THEME = "theme";
|
17 |
+
const SITE = "site";
|
18 |
+
const MU_PLUGIN = "mu-plugin";
|
19 |
+
}
|
20 |
+
|
21 |
+
|
wpgod/src/WPGod/Models/GodHandlerInterface.php
ADDED
@@ -0,0 +1,34 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
<?php
|
2 |
+
|
3 |
+
|
4 |
+
namespace WPGodWpseopress\Models;
|
5 |
+
|
6 |
+
/**
|
7 |
+
*
|
8 |
+
* @version 1.0.0
|
9 |
+
* @since 1.0.0
|
10 |
+
*
|
11 |
+
* @author Thomas DENEULIN <contact@wp-god.com>
|
12 |
+
*
|
13 |
+
*/
|
14 |
+
interface GodHandlerInterface{
|
15 |
+
/**
|
16 |
+
*
|
17 |
+
* @version 1.0.0
|
18 |
+
* @version 1.0.0
|
19 |
+
* @access public
|
20 |
+
*
|
21 |
+
* @return void
|
22 |
+
*/
|
23 |
+
public function godErrorHandler($code, $message, $file, $line, $ctx);
|
24 |
+
|
25 |
+
/**
|
26 |
+
*
|
27 |
+
* @version 1.0.0
|
28 |
+
* @version 1.0.0
|
29 |
+
* @access public
|
30 |
+
*
|
31 |
+
* @return void
|
32 |
+
*/
|
33 |
+
public function godErrorShutdownHandler();
|
34 |
+
}
|
wpgod/src/WPGod/Models/HelperInterface.php
ADDED
@@ -0,0 +1,14 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
<?php
|
2 |
+
|
3 |
+
|
4 |
+
namespace WPGodWpseopress\Models;
|
5 |
+
|
6 |
+
/**
|
7 |
+
*
|
8 |
+
* @version 2.0.0
|
9 |
+
* @since 2.0.0
|
10 |
+
*
|
11 |
+
* @author Thomas DENEULIN <contact@wp-god.com>
|
12 |
+
*
|
13 |
+
*/
|
14 |
+
interface HelperInterface{}
|
wpgod/src/WPGod/Models/HooksInterface.php
ADDED
@@ -0,0 +1,25 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
<?php
|
2 |
+
|
3 |
+
|
4 |
+
namespace WPGodWpseopress\Models;
|
5 |
+
|
6 |
+
/**
|
7 |
+
*
|
8 |
+
* @version 1.0.0
|
9 |
+
* @since 1.0.0
|
10 |
+
*
|
11 |
+
* @author Thomas DENEULIN <contact@wp-god.com>
|
12 |
+
*
|
13 |
+
*/
|
14 |
+
interface HooksInterface{
|
15 |
+
/**
|
16 |
+
* Execute hooks
|
17 |
+
*
|
18 |
+
* @version 1.0.0
|
19 |
+
* @version 1.0.0
|
20 |
+
* @access public
|
21 |
+
*
|
22 |
+
* @return void
|
23 |
+
*/
|
24 |
+
public function hooks();
|
25 |
+
}
|
wpgod/src/WPGod/Models/ServiceInterface.php
ADDED
@@ -0,0 +1,14 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
<?php
|
2 |
+
|
3 |
+
|
4 |
+
namespace WPGodWpseopress\Models;
|
5 |
+
|
6 |
+
/**
|
7 |
+
*
|
8 |
+
* @version 1.0.0
|
9 |
+
* @since 1.0.0
|
10 |
+
*
|
11 |
+
* @author Thomas DENEULIN <contact@wp-god.com>
|
12 |
+
*
|
13 |
+
*/
|
14 |
+
interface ServiceInterface{}
|
wpgod/src/WPGod/Models/Specification/AbstractSpecification.php
ADDED
@@ -0,0 +1,55 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
<?php
|
2 |
+
namespace WPGodWpseopress\Models\Specification;
|
3 |
+
|
4 |
+
use WPGodWpseopress\Models\Specification\SpecificationInterface;
|
5 |
+
use WPGodWpseopress\Models\Specification\AndX;
|
6 |
+
use WPGodWpseopress\Models\Specification\OrX;
|
7 |
+
use WPGodWpseopress\Models\Specification\NotX;
|
8 |
+
|
9 |
+
/**
|
10 |
+
* @version 1.0.0
|
11 |
+
* @since 1.0.0
|
12 |
+
*
|
13 |
+
* @author Thomas DENEULIN <contact@wp-god.com>
|
14 |
+
*/
|
15 |
+
abstract class AbstractSpecification implements SpecificationInterface
|
16 |
+
{
|
17 |
+
/**
|
18 |
+
*
|
19 |
+
* @param $item
|
20 |
+
*
|
21 |
+
* @return bool
|
22 |
+
*/
|
23 |
+
abstract public function isSatisfiedBy($item);
|
24 |
+
|
25 |
+
/**
|
26 |
+
*
|
27 |
+
* @param SpecificationInterface $spec
|
28 |
+
*
|
29 |
+
* @return SpecificationInterface
|
30 |
+
*/
|
31 |
+
public function andX(SpecificationInterface $spec)
|
32 |
+
{
|
33 |
+
return new AndX($this, $spec);
|
34 |
+
}
|
35 |
+
|
36 |
+
/**
|
37 |
+
*
|
38 |
+
* @param SpecificationInterface $spec
|
39 |
+
*
|
40 |
+
* @return SpecificationInterface
|
41 |
+
*/
|
42 |
+
public function orX(SpecificationInterface $spec)
|
43 |
+
{
|
44 |
+
return new OrX($this, $spec);
|
45 |
+
}
|
46 |
+
|
47 |
+
/**
|
48 |
+
*
|
49 |
+
* @return SpecificationInterface
|
50 |
+
*/
|
51 |
+
public function notX()
|
52 |
+
{
|
53 |
+
return new NotX($this);
|
54 |
+
}
|
55 |
+
}
|
wpgod/src/WPGod/Models/Specification/AndX.php
ADDED
@@ -0,0 +1,39 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
<?php
|
2 |
+
namespace WPGodWpseopress\Models\Specification;
|
3 |
+
|
4 |
+
use WPGodWpseopress\Models\Specification\AbstractSpecification;
|
5 |
+
|
6 |
+
/**
|
7 |
+
* @version 1.0.0
|
8 |
+
* @since 1.0.0
|
9 |
+
*
|
10 |
+
* @author Thomas DENEULIN <contact@wp-god.com>
|
11 |
+
*/
|
12 |
+
class AndX extends AbstractSpecification
|
13 |
+
{
|
14 |
+
|
15 |
+
protected $left;
|
16 |
+
protected $right;
|
17 |
+
|
18 |
+
/**
|
19 |
+
*
|
20 |
+
* @param SpecificationInterface $left
|
21 |
+
* @param SpecificationInterface $right
|
22 |
+
*/
|
23 |
+
public function __construct(SpecificationInterface $left, SpecificationInterface $right)
|
24 |
+
{
|
25 |
+
$this->left = $left;
|
26 |
+
$this->right = $right;
|
27 |
+
}
|
28 |
+
|
29 |
+
/**
|
30 |
+
*
|
31 |
+
* @param $item
|
32 |
+
*
|
33 |
+
* @return bool
|
34 |
+
*/
|
35 |
+
public function isSatisfiedBy($item)
|
36 |
+
{
|
37 |
+
return $this->left->isSatisfiedBy($item) && $this->right->isSatisfiedBy($item);
|
38 |
+
}
|
39 |
+
}
|
wpgod/src/WPGod/Models/Specification/ContainsSpecification.php
ADDED
@@ -0,0 +1,22 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
<?php
|
2 |
+
|
3 |
+
namespace WPGodWpseopress\Models\Specification;
|
4 |
+
|
5 |
+
use WPGodWpseopress\Models\Specification\AbstractSpecification;
|
6 |
+
|
7 |
+
class ContainsSpecification extends AbstractSpecification
|
8 |
+
{
|
9 |
+
public function __construct($string){
|
10 |
+
$this->string = $string;
|
11 |
+
}
|
12 |
+
|
13 |
+
public function isSatisfiedBy($item){
|
14 |
+
$pos = strpos($item, $this->string);
|
15 |
+
|
16 |
+
if ($pos === false) {
|
17 |
+
return false;
|
18 |
+
} else {
|
19 |
+
return true;
|
20 |
+
}
|
21 |
+
}
|
22 |
+
}
|
wpgod/src/WPGod/Models/Specification/EqualsSpecification.php
ADDED
@@ -0,0 +1,16 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
<?php
|
2 |
+
|
3 |
+
namespace WPGodWpseopress\Models\Specification;
|
4 |
+
|
5 |
+
use WPGodWpseopress\Models\Specification\AbstractSpecification;
|
6 |
+
|
7 |
+
class EqualsSpecification extends AbstractSpecification
|
8 |
+
{
|
9 |
+
public function __construct($string){
|
10 |
+
$this->string = $string;
|
11 |
+
}
|
12 |
+
|
13 |
+
public function isSatisfiedBy($item){
|
14 |
+
return $this->string == $item;
|
15 |
+
}
|
16 |
+
}
|
wpgod/src/WPGod/Models/Specification/NotX.php
ADDED
@@ -0,0 +1,36 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
<?php
|
2 |
+
namespace WPGodWpseopress\Models\Specification;
|
3 |
+
|
4 |
+
use WPGodWpseopress\Models\Specification\AbstractSpecification;
|
5 |
+
|
6 |
+
/**
|
7 |
+
* @version 1.0.0
|
8 |
+
* @since 1.0.0
|
9 |
+
*
|
10 |
+
* @author Thomas DENEULIN <contact@wp-god.com>
|
11 |
+
*/
|
12 |
+
class NotX extends AbstractSpecification
|
13 |
+
{
|
14 |
+
|
15 |
+
protected $specification;
|
16 |
+
|
17 |
+
/**
|
18 |
+
*
|
19 |
+
* @param SpecificationInterface $specification
|
20 |
+
*/
|
21 |
+
public function __construct(SpecificationInterface $specification)
|
22 |
+
{
|
23 |
+
$this->specification = $specification;
|
24 |
+
}
|
25 |
+
|
26 |
+
/**
|
27 |
+
*
|
28 |
+
* @param $item
|
29 |
+
*
|
30 |
+
* @return bool
|
31 |
+
*/
|
32 |
+
public function isSatisfiedBy($item)
|
33 |
+
{
|
34 |
+
return !$this->specification->isSatisfiedBy($item);
|
35 |
+
}
|
36 |
+
}
|
wpgod/src/WPGod/Models/Specification/OrX.php
ADDED
@@ -0,0 +1,40 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
<?php
|
2 |
+
namespace WPGodWpseopress\Models\Specification;
|
3 |
+
|
4 |
+
use WPGodWpseopress\Models\Specification\AbstractSpecification;
|
5 |
+
|
6 |
+
/**
|
7 |
+
* @version 1.0.0
|
8 |
+
* @since 1.0.0
|
9 |
+
*
|
10 |
+
* @author Thomas DENEULIN <contact@wp-god.com>
|
11 |
+
*/
|
12 |
+
class OrX extends AbstractSpecification
|
13 |
+
{
|
14 |
+
|
15 |
+
protected $left;
|
16 |
+
|
17 |
+
protected $right;
|
18 |
+
|
19 |
+
/**
|
20 |
+
*
|
21 |
+
* @param SpecificationInterface $left
|
22 |
+
* @param SpecificationInterface $right
|
23 |
+
*/
|
24 |
+
public function __construct(SpecificationInterface $left, SpecificationInterface $right)
|
25 |
+
{
|
26 |
+
$this->left = $left;
|
27 |
+
$this->right = $right;
|
28 |
+
}
|
29 |
+
|
30 |
+
/**
|
31 |
+
*
|
32 |
+
* @param $item
|
33 |
+
*
|
34 |
+
* @return bool
|
35 |
+
*/
|
36 |
+
public function isSatisfiedBy($item)
|
37 |
+
{
|
38 |
+
return $this->left->isSatisfiedBy($item) || $this->right->isSatisfiedBy($item);
|
39 |
+
}
|
40 |
+
}
|
wpgod/src/WPGod/Models/Specification/SpecificationInterface.php
ADDED
@@ -0,0 +1,43 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
<?php
|
2 |
+
namespace WPGodWpseopress\Models\Specification;
|
3 |
+
|
4 |
+
|
5 |
+
/**
|
6 |
+
* @version 1.0.0
|
7 |
+
* @since 1.0.0
|
8 |
+
*
|
9 |
+
* @author Thomas DENEULIN <contact@wp-god.com>
|
10 |
+
*/
|
11 |
+
interface SpecificationInterface
|
12 |
+
{
|
13 |
+
/**
|
14 |
+
* @version 1.0.0
|
15 |
+
* @since 1.0.0
|
16 |
+
*
|
17 |
+
*
|
18 |
+
* @return bool
|
19 |
+
*/
|
20 |
+
public function isSatisfiedBy($item);
|
21 |
+
|
22 |
+
/**
|
23 |
+
* @version 1.0.0
|
24 |
+
* @since 1.0.0
|
25 |
+
*
|
26 |
+
* @param SpecificationInterface $spec
|
27 |
+
*/
|
28 |
+
public function andX(SpecificationInterface $spec);
|
29 |
+
|
30 |
+
/**
|
31 |
+
* @version 1.0.0
|
32 |
+
* @since 1.0.0
|
33 |
+
*
|
34 |
+
* @param SpecificationInterface $spec
|
35 |
+
*/
|
36 |
+
public function orX(SpecificationInterface $spec);
|
37 |
+
|
38 |
+
/**
|
39 |
+
* @version 1.0.0
|
40 |
+
* @since 1.0.0
|
41 |
+
*/
|
42 |
+
public function notX();
|
43 |
+
}
|
wpgod/src/WPGod/Services/GodAbstractService.php
ADDED
@@ -0,0 +1,71 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
<?php
|
2 |
+
namespace WPGodWpseopress\Services;
|
3 |
+
|
4 |
+
use WPGodWpseopress\Models\ServiceInterface;
|
5 |
+
use WPGodWpseopress\Models\HelperInterface;
|
6 |
+
|
7 |
+
/**
|
8 |
+
* @version 2.0.0
|
9 |
+
* @since 2.0.0
|
10 |
+
*
|
11 |
+
* @author Thomas DENEULIN <contact@wp-god.com>
|
12 |
+
*/
|
13 |
+
abstract class GodAbstractService
|
14 |
+
{
|
15 |
+
|
16 |
+
protected $services;
|
17 |
+
|
18 |
+
protected $helpers;
|
19 |
+
|
20 |
+
public function __construct($services = array(), $helpers = array()){
|
21 |
+
$this->setObjects($services);
|
22 |
+
$this->setObjects($helpers);
|
23 |
+
}
|
24 |
+
|
25 |
+
public function setObjects($objects){
|
26 |
+
|
27 |
+
foreach ($objects as $key => $value) {
|
28 |
+
$nameClass = join('', array_slice(explode('\\', get_class($value)), -1));
|
29 |
+
|
30 |
+
if($value instanceOf ServiceInterface){
|
31 |
+
$this->services[$nameClass] = $value;
|
32 |
+
}
|
33 |
+
else if($value instanceOf HelperInterface){
|
34 |
+
$this->helpers[$nameClass] = $value;
|
35 |
+
}
|
36 |
+
}
|
37 |
+
|
38 |
+
return $this;
|
39 |
+
}
|
40 |
+
|
41 |
+
public function getServices(){
|
42 |
+
return $this->services;
|
43 |
+
}
|
44 |
+
|
45 |
+
|
46 |
+
public function getObject($key, $type = "service"){
|
47 |
+
if($type === "service"){
|
48 |
+
if(!empty($this->services) && array_key_exists($key, $this->services) && $this->services[$key] instanceOf ServiceInterface){
|
49 |
+
return $this->services[$key];
|
50 |
+
}
|
51 |
+
}
|
52 |
+
else if($type === "helper"){
|
53 |
+
if(!empty($this->helpers) && array_key_exists($key, $this->helpers) && $this->helpers[$key] instanceOf HelperInterface){
|
54 |
+
return $this->helpers[$key];
|
55 |
+
}
|
56 |
+
}
|
57 |
+
|
58 |
+
return null;
|
59 |
+
}
|
60 |
+
|
61 |
+
public function getService($key){
|
62 |
+
return $this->getObject($key);
|
63 |
+
}
|
64 |
+
|
65 |
+
public function getHelper($key){
|
66 |
+
return $this->getObject($key, "helper");
|
67 |
+
}
|
68 |
+
|
69 |
+
|
70 |
+
|
71 |
+
}
|
wpgod/src/WPGod/Services/GodApi.php
ADDED
@@ -0,0 +1,148 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
<?php
|
2 |
+
|
3 |
+
namespace WPGodWpseopress\Services;
|
4 |
+
|
5 |
+
use WPGodWpseopress\Models\ServiceInterface;
|
6 |
+
use WPGodWpseopress\WPGod;
|
7 |
+
|
8 |
+
class GodApi implements ServiceInterface
|
9 |
+
{
|
10 |
+
|
11 |
+
public static $NAME_TRANSIENT_OTHER = "wpgod_580f97c174717_site";
|
12 |
+
|
13 |
+
public static $NAME_TRANSIENT_ALREADY_CHECK = "wpgod_580f97c174754_already";
|
14 |
+
|
15 |
+
public static $LAST_CHECK_TRACKING_GENERAL = "wpgod_580f97c17478b_tracking_g";
|
16 |
+
|
17 |
+
public function __construct($params){
|
18 |
+
|
19 |
+
$this->basename = (isset($params["basename"])) ? $params["basename"] : null;
|
20 |
+
$this->pluginFile = (isset($params["plugin_file"])) ? $params["plugin_file"] : null;
|
21 |
+
$this->preventUser = (isset($params["prevent_user"])) ? $params["prevent_user"] : null;
|
22 |
+
$this->typeDevelopment = (isset($params["type_development"])) ? $params["type_development"] : null;
|
23 |
+
$this->token = (isset($params["token"])) ? $params["token"] : null;
|
24 |
+
$this->nameTransient = (isset($params["name_transient"])) ? $params["name_transient"] : "_god_save_errors";
|
25 |
+
$this->environment = (isset($params["environment"])) ? $params["environment"] : null;
|
26 |
+
$this->version = (isset($params["version"])) ? $params["version"] : null;
|
27 |
+
}
|
28 |
+
|
29 |
+
public static function getLastCheckTrackingGeneral(){
|
30 |
+
return get_option(self::$LAST_CHECK_TRACKING_GENERAL);
|
31 |
+
}
|
32 |
+
|
33 |
+
public static function initLastCheckTrackingGeneral(){
|
34 |
+
update_option(self::$LAST_CHECK_TRACKING_GENERAL, time());
|
35 |
+
}
|
36 |
+
|
37 |
+
public static function getNameTransientOtherStatic(){
|
38 |
+
return self::$NAME_TRANSIENT_OTHER;
|
39 |
+
}
|
40 |
+
|
41 |
+
public static function getNameTransientAlreadyCheck(){
|
42 |
+
return self::$NAME_TRANSIENT_ALREADY_CHECK;
|
43 |
+
}
|
44 |
+
|
45 |
+
public function getPreventUser(){
|
46 |
+
return $this->preventUser;
|
47 |
+
}
|
48 |
+
|
49 |
+
public function getPluginFile(){
|
50 |
+
return $this->pluginFile;
|
51 |
+
}
|
52 |
+
|
53 |
+
public function getVersion(){
|
54 |
+
return $this->version;
|
55 |
+
}
|
56 |
+
|
57 |
+
public function getEnvironment(){
|
58 |
+
return $this->environment;
|
59 |
+
}
|
60 |
+
|
61 |
+
public function getBasename(){
|
62 |
+
return $this->basename;
|
63 |
+
}
|
64 |
+
|
65 |
+
|
66 |
+
public function getClientSecret(){
|
67 |
+
return $this->clientSecret;
|
68 |
+
}
|
69 |
+
|
70 |
+
public function getTypeDevelopment(){
|
71 |
+
return $this->typeDevelopment;
|
72 |
+
}
|
73 |
+
|
74 |
+
public function getNameTransient(){
|
75 |
+
return $this->nameTransient;
|
76 |
+
}
|
77 |
+
|
78 |
+
public function serializeError($params){
|
79 |
+
return md5(vsprintf("%s-%s-%s-%s", array($params["file"], $params["line"], $params["code"], $params["message"])));
|
80 |
+
}
|
81 |
+
|
82 |
+
public function saveError($params, $nameTransient = null){
|
83 |
+
|
84 |
+
$nameTransient = ($nameTransient == null) ? $this->getNameTransient() : $nameTransient;
|
85 |
+
|
86 |
+
$serialize = $this->serializeError($params);
|
87 |
+
|
88 |
+
if ( false === ( $transientError = get_transient( $nameTransient ) ) ) {
|
89 |
+
$transientError = array();
|
90 |
+
$transientError[$serialize] = $params;
|
91 |
+
set_transient($nameTransient, $transientError);
|
92 |
+
}
|
93 |
+
else{
|
94 |
+
|
95 |
+
if(!array_key_exists($serialize, $transientError)){
|
96 |
+
$transientError[$serialize] = $params;
|
97 |
+
set_transient($nameTransient, $transientError);
|
98 |
+
}
|
99 |
+
}
|
100 |
+
|
101 |
+
}
|
102 |
+
|
103 |
+
public function sendTrackingGeneral($params){
|
104 |
+
$url = sprintf("%s/trackings.json", WPGod::GOD_URL_API);
|
105 |
+
$data = json_encode($params, true);
|
106 |
+
|
107 |
+
$this->callApi($url, $data);
|
108 |
+
|
109 |
+
}
|
110 |
+
|
111 |
+
public function sendError($params){
|
112 |
+
$url = sprintf("%s/errors.json", WPGod::GOD_URL_API);
|
113 |
+
$data = json_encode($params, true);
|
114 |
+
|
115 |
+
$this->callApi($url, $data);
|
116 |
+
|
117 |
+
}
|
118 |
+
|
119 |
+
public function callApi($url, $data){
|
120 |
+
|
121 |
+
$bearer = sprintf("Authorization: Bearer %s", $this->token);
|
122 |
+
$environment = sprintf("Environment: %s", $this->getEnvironment());
|
123 |
+
|
124 |
+
try {
|
125 |
+
|
126 |
+
$ch = curl_init($url);
|
127 |
+
curl_setopt($ch, CURLOPT_POST, 1);
|
128 |
+
curl_setopt($ch, CURLOPT_POSTFIELDS, $data);
|
129 |
+
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
|
130 |
+
curl_setopt($ch, CURLOPT_FRESH_CONNECT, true);
|
131 |
+
curl_setopt($ch, CURLOPT_CONNECTTIMEOUT, 15);
|
132 |
+
curl_setopt($ch, CURLOPT_TIMEOUT, 30);
|
133 |
+
curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, 0);
|
134 |
+
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, 0);
|
135 |
+
curl_setopt($ch, CURLOPT_HTTPHEADER,
|
136 |
+
array(
|
137 |
+
"Content-Type: application/json",
|
138 |
+
"Accept: application/json",
|
139 |
+
$bearer,
|
140 |
+
$environment
|
141 |
+
)
|
142 |
+
);
|
143 |
+
$result = curl_exec($ch);
|
144 |
+
} catch (Exception $e) {}
|
145 |
+
}
|
146 |
+
|
147 |
+
|
148 |
+
}
|
wpgod/src/WPGod/Services/GodAuthorizeError.php
ADDED
@@ -0,0 +1,69 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
<?php
|
2 |
+
|
3 |
+
namespace WPGodWpseopress\Services;
|
4 |
+
|
5 |
+
use WPGodWpseopress\Models\GodHandlerInterface;
|
6 |
+
use WPGodWpseopress\Services\GodAbstractService;
|
7 |
+
use WPGodWpseopress\Helpers\GodTypeDevelopment;
|
8 |
+
use WPGodWpseopress\Models\ServiceInterface;
|
9 |
+
|
10 |
+
|
11 |
+
class GodAuthorizeError extends GodAbstractService implements ServiceInterface
|
12 |
+
{
|
13 |
+
|
14 |
+
public function authorizeHandler($file, $code){
|
15 |
+
$basename = $this->getService("GodApi")->getBasename();
|
16 |
+
$typeDevelopment = $this->getService("GodApi")->getTypeDevelopment();
|
17 |
+
|
18 |
+
if (in_array($typeDevelopment, array(GodTypeDevelopment::PLUGIN, GodTypeDevelopment::MU_PLUGIN, GodTypeDevelopment::THEME))) {
|
19 |
+
switch ($typeDevelopment) {
|
20 |
+
case 'plugin':
|
21 |
+
$verify = sprintf("%s/%s", PLUGINDIR, $basename);
|
22 |
+
break;
|
23 |
+
case 'mu-plugin':
|
24 |
+
$verify = sprintf("%s/%s", WPMU_PLUGIN_DIR, $basename);
|
25 |
+
break;
|
26 |
+
case 'theme':
|
27 |
+
$verify = sprintf("themes/%s", $basename);
|
28 |
+
break;
|
29 |
+
}
|
30 |
+
|
31 |
+
if(strpos(str_replace("\\", "/", $file), $verify) === false){
|
32 |
+
return false;
|
33 |
+
}
|
34 |
+
|
35 |
+
}
|
36 |
+
|
37 |
+
if($this->getService("GodFilesRules")->isInformationIgnore("file_dir", $file) ||
|
38 |
+
$this->getService("GodFilesRules")->isInformationIgnore("code_error", $code)){
|
39 |
+
return false;
|
40 |
+
}
|
41 |
+
|
42 |
+
return true;
|
43 |
+
|
44 |
+
}
|
45 |
+
|
46 |
+
public function checkAlreadyTrack($params, $nameTransient = null){
|
47 |
+
$apiServices = $this->getService("GodApi");
|
48 |
+
$nameTransient = ($nameTransient == null) ? $apiServices::getNameTransientAlreadyCheck() : $nameTransient;
|
49 |
+
|
50 |
+
$serialize = $apiServices->serializeError($params);
|
51 |
+
if ( false === ( $transientAlreadyCheckError = get_transient( $nameTransient ) ) ) {
|
52 |
+
$transientAlreadyCheckError = array();
|
53 |
+
$transientAlreadyCheckError[$serialize] = 1;
|
54 |
+
set_transient($nameTransient, $transientAlreadyCheckError);
|
55 |
+
return false;
|
56 |
+
}
|
57 |
+
else{
|
58 |
+
|
59 |
+
if(!array_key_exists($serialize, $transientAlreadyCheckError)){
|
60 |
+
$transientAlreadyCheckError[$serialize] = 1;
|
61 |
+
set_transient($nameTransient, $transientAlreadyCheckError);
|
62 |
+
return false;
|
63 |
+
}
|
64 |
+
|
65 |
+
return true;
|
66 |
+
}
|
67 |
+
}
|
68 |
+
|
69 |
+
}
|
wpgod/src/WPGod/Services/GodCheckErrors.php
ADDED
@@ -0,0 +1,86 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
<?php
|
2 |
+
|
3 |
+
namespace WPGodWpseopress\Services;
|
4 |
+
|
5 |
+
use WPGodWpseopress\Models\ServiceInterface;
|
6 |
+
use WPGodWpseopress\Models\HooksInterface;
|
7 |
+
use WPGodWpseopress\WPGod;
|
8 |
+
|
9 |
+
class GodCheckErrors extends GodAbstractService implements HooksInterface{
|
10 |
+
|
11 |
+
|
12 |
+
public function hooks(){
|
13 |
+
add_action('init', array($this, 'checkOtherTransient'), 0);
|
14 |
+
add_action('init', array($this, 'searchErrors'), 1);
|
15 |
+
add_action( 'wp_ajax_send_error', array($this, 'prefix_ajax_send_error') );
|
16 |
+
add_action( 'wp_ajax_nopriv_send_error', array($this, 'prefix_ajax_send_error') );
|
17 |
+
}
|
18 |
+
|
19 |
+
public function prefix_ajax_send_error(){
|
20 |
+
$this->sendErrors();
|
21 |
+
}
|
22 |
+
|
23 |
+
public function searchErrors(){
|
24 |
+
$transient = get_transient( $this->getService('GodApi')->getNameTransient());
|
25 |
+
|
26 |
+
if(!$transient || empty($transient)){
|
27 |
+
return;
|
28 |
+
}
|
29 |
+
|
30 |
+
if(is_admin()){
|
31 |
+
add_action("admin_enqueue_scripts", array($this, "enqueue_script_god"));
|
32 |
+
}
|
33 |
+
else{
|
34 |
+
add_action("wp_enqueue_scripts", array($this, "enqueue_script_god"));
|
35 |
+
}
|
36 |
+
}
|
37 |
+
|
38 |
+
public function enqueue_script_god(){
|
39 |
+
$url = admin_url("admin-ajax.php");
|
40 |
+
$urlRegisterScript = sprintf("%s/%s.js", WPGod::$GOD_PATH_PUBLIC_JS, "send-error");
|
41 |
+
$uniqId = uniqid();
|
42 |
+
wp_register_script( $uniqId . '-god-js', $urlRegisterScript, array( 'jquery' ) );
|
43 |
+
|
44 |
+
$arr = array(
|
45 |
+
"url" => $url,
|
46 |
+
"action" => "send_error"
|
47 |
+
);
|
48 |
+
wp_localize_script( $uniqId . '-god-js', 'configGodError', $arr );
|
49 |
+
|
50 |
+
wp_enqueue_script( $uniqId . '-god-js' );
|
51 |
+
}
|
52 |
+
|
53 |
+
public function checkOtherTransient(){
|
54 |
+
$godApi = $this->getService('GodApi');
|
55 |
+
$name = $godApi::getNameTransientOtherStatic();
|
56 |
+
$transient = get_transient($name);
|
57 |
+
|
58 |
+
if(!$transient || empty($transient)){
|
59 |
+
return;
|
60 |
+
}
|
61 |
+
|
62 |
+
foreach ($transient as $key => $value) {
|
63 |
+
if($this->getService('GodAuthorizeError')->authorizeHandler($value["file"], $value["code"])){
|
64 |
+
$this->getService("GodApi")->sendError($value);
|
65 |
+
}
|
66 |
+
}
|
67 |
+
|
68 |
+
delete_transient($name);
|
69 |
+
|
70 |
+
}
|
71 |
+
|
72 |
+
public function sendErrors(){
|
73 |
+
$name = $this->getService("GodApi")->getNameTransient();
|
74 |
+
$transient = get_transient($name);
|
75 |
+
|
76 |
+
if(!$transient || empty($transient)){
|
77 |
+
return;
|
78 |
+
}
|
79 |
+
|
80 |
+
foreach ($transient as $key => $value) {
|
81 |
+
$this->getService("GodApi")->sendError($value);
|
82 |
+
}
|
83 |
+
|
84 |
+
delete_transient($name);
|
85 |
+
}
|
86 |
+
}
|
wpgod/src/WPGod/Services/GodFilesRules.php
ADDED
@@ -0,0 +1,154 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
<?php
|
2 |
+
|
3 |
+
namespace WPGodWpseopress\Services;
|
4 |
+
|
5 |
+
use WPGodWpseopress\Models\ServiceInterface;
|
6 |
+
use WPGodWpseopress\Models\Specification\OrX;
|
7 |
+
use WPGodWpseopress\Models\Specification\AndX;
|
8 |
+
use WPGodWpseopress\Models\Specification\NotX;
|
9 |
+
use WPGodWpseopress\Models\Specification\ContainsSpecification;
|
10 |
+
use WPGodWpseopress\Models\Specification\EqualsSpecification;
|
11 |
+
|
12 |
+
|
13 |
+
/**
|
14 |
+
* GodFilesRules
|
15 |
+
*
|
16 |
+
* @author Thomas DENEULIN <contact@wp-god.com>
|
17 |
+
* @version 1.0.0
|
18 |
+
* @since 1.0.0
|
19 |
+
*/
|
20 |
+
class GodFilesRules implements ServiceInterface {
|
21 |
+
public function __construct($params = array()){
|
22 |
+
$this->rulesIgnore = (isset($params["rules_ignore"])) ? $params["rules_ignore"] : array();
|
23 |
+
|
24 |
+
$this->typeErrorRules = array(
|
25 |
+
"code_error",
|
26 |
+
"file_dir"
|
27 |
+
);
|
28 |
+
|
29 |
+
$this->conditionTest = array(
|
30 |
+
"equals",
|
31 |
+
"contains",
|
32 |
+
"not-equals",
|
33 |
+
"not-contains"
|
34 |
+
);
|
35 |
+
}
|
36 |
+
|
37 |
+
public function getTypeErrorRules(){
|
38 |
+
return $this->typeErrorRules;
|
39 |
+
}
|
40 |
+
|
41 |
+
public function getConditionTest(){
|
42 |
+
return $this->conditionTest;
|
43 |
+
}
|
44 |
+
|
45 |
+
public function isInformationIgnore($type, $valueIgnore){
|
46 |
+
$arraySpec = array();
|
47 |
+
$result = false;
|
48 |
+
|
49 |
+
if (!in_array($type, $this->typeErrorRules)) {
|
50 |
+
return false;
|
51 |
+
}
|
52 |
+
|
53 |
+
if(!empty($this->rulesIgnore)){
|
54 |
+
foreach ($this->rulesIgnore as $keyOr => $valueOr) {
|
55 |
+
foreach ($valueOr as $keyAnd => $valueAnd) {
|
56 |
+
if($valueAnd['type_error'] == $type){
|
57 |
+
$conditionTest = "";
|
58 |
+
$value = "";
|
59 |
+
|
60 |
+
switch ($type) {
|
61 |
+
case 'file_dir':
|
62 |
+
$conditionTest = "contains";
|
63 |
+
$value = $valueAnd["file"];
|
64 |
+
break;
|
65 |
+
case 'code_error':
|
66 |
+
$conditionTest = "equals";
|
67 |
+
$value = $valueAnd["code_error"];
|
68 |
+
break;
|
69 |
+
}
|
70 |
+
|
71 |
+
$arraySpec[$keyOr][] = $this->getSpecificationFromConditionTest($conditionTest, $value);
|
72 |
+
}
|
73 |
+
}
|
74 |
+
}
|
75 |
+
}
|
76 |
+
|
77 |
+
|
78 |
+
if(!empty($arraySpec)){
|
79 |
+
$allSpecs = null;
|
80 |
+
if(count($arraySpec) > 1){
|
81 |
+
foreach ($arraySpec as $key => $value) {
|
82 |
+
if (array_key_exists($key+1, $arraySpec)) {
|
83 |
+
$allSpecs = ($allSpecs === null) ? new OrX($this->constructAndSpecification($value), $this->constructAndSpecification($arraySpec[$key+1])) : new OrX($allSpecs, $this->constructAndSpecification($arraySpec[$key+1]));
|
84 |
+
}
|
85 |
+
}
|
86 |
+
}
|
87 |
+
else{
|
88 |
+
$arraySpec = array_values($arraySpec);
|
89 |
+
$allSpecs = $this->constructAndSpecification($arraySpec[0]);
|
90 |
+
}
|
91 |
+
|
92 |
+
if ($allSpecs !== null) {
|
93 |
+
$result = $allSpecs->isSatisfiedBy($valueIgnore);
|
94 |
+
}
|
95 |
+
}
|
96 |
+
|
97 |
+
return $result;
|
98 |
+
|
99 |
+
|
100 |
+
}
|
101 |
+
|
102 |
+
private function constructAndSpecification($andSpecs){
|
103 |
+
$andSpecification = null;
|
104 |
+
if(!empty($andSpecs) && count($andSpecs) === 1){
|
105 |
+
return $andSpecs[0];
|
106 |
+
}
|
107 |
+
else{
|
108 |
+
foreach ($andSpecs as $key => $value) {
|
109 |
+
if (array_key_exists($key+1, $andSpecs)) {
|
110 |
+
$andSpecification = ($andSpecification === null) ? new AndX($value, $andSpecs[$key+1]) : new AndX($andSpecification, $andSpecs[$key+1]);
|
111 |
+
}
|
112 |
+
}
|
113 |
+
}
|
114 |
+
|
115 |
+
return $andSpecification;
|
116 |
+
}
|
117 |
+
|
118 |
+
|
119 |
+
public function getSpecificationFromConditionTest($conditionTest, $value){
|
120 |
+
$stringChoice = new ContainsSpecification($conditionTest);
|
121 |
+
$spec = "";
|
122 |
+
|
123 |
+
if($stringChoice->isSatisfiedBy("not")){
|
124 |
+
if($stringChoice->isSatisfiedBy("equals")){
|
125 |
+
$spec = new NotX(new EqualsSpecification($value));
|
126 |
+
}
|
127 |
+
else{
|
128 |
+
$spec = new NotX(new ContainsSpecification($value));
|
129 |
+
}
|
130 |
+
}
|
131 |
+
else{
|
132 |
+
if($stringChoice->isSatisfiedBy("equals")){
|
133 |
+
$spec = new EqualsSpecification($value);
|
134 |
+
}
|
135 |
+
else{
|
136 |
+
$spec = new ContainsSpecification($value);
|
137 |
+
}
|
138 |
+
}
|
139 |
+
|
140 |
+
return $spec;
|
141 |
+
}
|
142 |
+
|
143 |
+
|
144 |
+
|
145 |
+
}
|
146 |
+
|
147 |
+
|
148 |
+
|
149 |
+
|
150 |
+
|
151 |
+
|
152 |
+
|
153 |
+
|
154 |
+
|
wpgod/src/WPGod/WPGod.php
ADDED
@@ -0,0 +1,164 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
<?php
|
2 |
+
|
3 |
+
namespace WPGodWpseopress;
|
4 |
+
|
5 |
+
use WPGodWpseopress\Handler\GodErrorHandler;
|
6 |
+
use WPGodWpseopress\Handler\GodTrackingHandler;
|
7 |
+
use WPGodWpseopress\Handler\GodAdminNoticeHandler;
|
8 |
+
use WPGodWpseopress\Helpers\GodError;
|
9 |
+
use WPGodWpseopress\Helpers\GodServerInfo;
|
10 |
+
use WPGodWpseopress\Helpers\GodEnvironmentInfo;
|
11 |
+
use WPGodWpseopress\Helpers\GodTypeDevelopment;
|
12 |
+
use WPGodWpseopress\Services\GodApi;
|
13 |
+
use WPGodWpseopress\Services\GodFilesRules;
|
14 |
+
use WPGodWpseopress\Services\GodCheckErrors;
|
15 |
+
use WPGodWpseopress\Services\GodAuthorizeError;
|
16 |
+
|
17 |
+
if ( ! defined( 'ABSPATH' ) ) exit;
|
18 |
+
|
19 |
+
|
20 |
+
/**
|
21 |
+
* WPGod
|
22 |
+
*
|
23 |
+
* @author Thomas DENEULIN <contact@wp-god.com>
|
24 |
+
* @version 1.0.0
|
25 |
+
* @since 1.0.0
|
26 |
+
*/
|
27 |
+
class WPGod{
|
28 |
+
|
29 |
+
public static $GOD_PATH_PUBLIC_JS;
|
30 |
+
|
31 |
+
const PHP_VERSION_MINI = "5.4";
|
32 |
+
const GOD_VERSION = "2.2";
|
33 |
+
const GOD_URL_API = "https://api.wp-god.com/api/v1";
|
34 |
+
|
35 |
+
protected $paramsObligatory = array(
|
36 |
+
"basename",
|
37 |
+
"type_development",
|
38 |
+
"name_transient",
|
39 |
+
"token",
|
40 |
+
"environment"
|
41 |
+
);
|
42 |
+
|
43 |
+
protected $hooksServices = array();
|
44 |
+
|
45 |
+
public function __construct($params){
|
46 |
+
self::$GOD_PATH_PUBLIC_JS = plugin_dir_url(__FILE__) . "../../public/js";
|
47 |
+
|
48 |
+
$missingParameters = 0;
|
49 |
+
|
50 |
+
foreach ($this->paramsObligatory as $key => $value) {
|
51 |
+
if(!array_key_exists($value, $params)){
|
52 |
+
$missingParameters++;
|
53 |
+
}
|
54 |
+
}
|
55 |
+
|
56 |
+
if($missingParameters === 0){
|
57 |
+
|
58 |
+
$godApi = new GodApi($params);
|
59 |
+
$godFilesRules = new GodFilesRules($params);
|
60 |
+
$godAuthorizeError = new GodAuthorizeError(array(
|
61 |
+
$godApi,
|
62 |
+
$godFilesRules
|
63 |
+
)
|
64 |
+
);
|
65 |
+
|
66 |
+
$pause = ($this->canBeTrigger()) ? false : true;
|
67 |
+
$authorizeTracking = get_option("wpgod_seopress_allow_tracking");
|
68 |
+
$pauseTrackingEnvironment = (!($params["type_development"] == GodTypeDevelopment::PLUGIN) || !$authorizeTracking);
|
69 |
+
|
70 |
+
$this->hooksServices = array(
|
71 |
+
"god_handler" => new GodErrorHandler(
|
72 |
+
array(
|
73 |
+
$godApi,
|
74 |
+
$godFilesRules,
|
75 |
+
$godAuthorizeError
|
76 |
+
),
|
77 |
+
array(
|
78 |
+
new GodError(),
|
79 |
+
new GodServerInfo(),
|
80 |
+
new GodEnvironmentInfo()
|
81 |
+
),
|
82 |
+
$pause
|
83 |
+
),
|
84 |
+
"god_tracking_handler" => new GodTrackingHandler(
|
85 |
+
array(
|
86 |
+
$godApi
|
87 |
+
),
|
88 |
+
array(
|
89 |
+
new GodEnvironmentInfo(),
|
90 |
+
new GodServerInfo()
|
91 |
+
),
|
92 |
+
$pauseTrackingEnvironment
|
93 |
+
),
|
94 |
+
"god_check_errors" => new GodCheckErrors(
|
95 |
+
array(
|
96 |
+
$godApi,
|
97 |
+
$godAuthorizeError
|
98 |
+
)
|
99 |
+
)
|
100 |
+
);
|
101 |
+
|
102 |
+
if($params["type_development"] == GodTypeDevelopment::PLUGIN){
|
103 |
+
$this->hooksServices["god_admin_notice_handler"] = new GodAdminNoticeHandler(
|
104 |
+
array(
|
105 |
+
$godApi
|
106 |
+
),
|
107 |
+
array(),
|
108 |
+
(isset($params["prevent_user"])) ? $params["prevent_user"] : false
|
109 |
+
);
|
110 |
+
}
|
111 |
+
}
|
112 |
+
}
|
113 |
+
|
114 |
+
|
115 |
+
protected function canBeTrigger(){
|
116 |
+
if(strpos(__DIR__, "_wpgod") !== false){
|
117 |
+
return true;
|
118 |
+
}
|
119 |
+
|
120 |
+
if(file_exists(WPMU_PLUGIN_DIR . '/_wpgod')){
|
121 |
+
return false;
|
122 |
+
}
|
123 |
+
|
124 |
+
return true;
|
125 |
+
}
|
126 |
+
|
127 |
+
|
128 |
+
protected function canLoadedWPGod(){
|
129 |
+
|
130 |
+
if ( version_compare( PHP_VERSION, self::PHP_VERSION_MINI, '<' ) ) {
|
131 |
+
return false;
|
132 |
+
}
|
133 |
+
|
134 |
+
if(!function_exists('curl_version')){
|
135 |
+
return false;
|
136 |
+
}
|
137 |
+
|
138 |
+
return true;
|
139 |
+
}
|
140 |
+
|
141 |
+
public function execute(){
|
142 |
+
|
143 |
+
if ($this->canLoadedWPGod()){
|
144 |
+
add_action( 'plugins_loaded' , array($this,'hooks'), 0);
|
145 |
+
}
|
146 |
+
}
|
147 |
+
|
148 |
+
public function hooks(){
|
149 |
+
|
150 |
+
foreach ($this->hooksServices as $key => $hook) {
|
151 |
+
if($hook instanceOf HooksInterface){
|
152 |
+
$hook->hooks();
|
153 |
+
}
|
154 |
+
|
155 |
+
$interfaces = class_implements($hook);
|
156 |
+
foreach ($interfaces as $key => $value) {
|
157 |
+
$pos = strpos($key, "HooksInterface");
|
158 |
+
if($pos !== false){
|
159 |
+
$hook->hooks();
|
160 |
+
}
|
161 |
+
}
|
162 |
+
}
|
163 |
+
}
|
164 |
+
}
|
wpgod/vendor/autoload.php
ADDED
@@ -0,0 +1,7 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
<?php
|
2 |
+
|
3 |
+
// autoload.php @generated by Composer
|
4 |
+
|
5 |
+
require_once __DIR__ . '/composer' . '/autoload_real.php';
|
6 |
+
|
7 |
+
return ComposerAutoloaderInit6ea64e24194a64d6eef9458bf8eb5c18::getLoader();
|
wpgod/vendor/composer/ClassLoader.php
ADDED
@@ -0,0 +1,413 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
<?php
|
2 |
+
|
3 |
+
/*
|
4 |
+
* This file is part of Composer.
|
5 |
+
*
|
6 |
+
* (c) Nils Adermann <naderman@naderman.de>
|
7 |
+
* Jordi Boggiano <j.boggiano@seld.be>
|
8 |
+
*
|
9 |
+
* For the full copyright and license information, please view the LICENSE
|
10 |
+
* file that was distributed with this source code.
|
11 |
+
*/
|
12 |
+
|
13 |
+
namespace Composer\Autoload;
|
14 |
+
|
15 |
+
/**
|
16 |
+
* ClassLoader implements a PSR-0, PSR-4 and classmap class loader.
|
17 |
+
*
|
18 |
+
* $loader = new \Composer\Autoload\ClassLoader();
|
19 |
+
*
|
20 |
+
* // register classes with namespaces
|
21 |
+
* $loader->add('Symfony\Component', __DIR__.'/component');
|
22 |
+
* $loader->add('Symfony', __DIR__.'/framework');
|
23 |
+
*
|
24 |
+
* // activate the autoloader
|
25 |
+
* $loader->register();
|
26 |
+
*
|
27 |
+
* // to enable searching the include path (eg. for PEAR packages)
|
28 |
+
* $loader->setUseIncludePath(true);
|
29 |
+
*
|
30 |
+
* In this example, if you try to use a class in the Symfony\Component
|
31 |
+
* namespace or one of its children (Symfony\Component\Console for instance),
|
32 |
+
* the autoloader will first look for the class under the component/
|
33 |
+
* directory, and it will then fallback to the framework/ directory if not
|
34 |
+
* found before giving up.
|
35 |
+
*
|
36 |
+
* This class is loosely based on the Symfony UniversalClassLoader.
|
37 |
+
*
|
38 |
+
* @author Fabien Potencier <fabien@symfony.com>
|
39 |
+
* @author Jordi Boggiano <j.boggiano@seld.be>
|
40 |
+
* @see http://www.php-fig.org/psr/psr-0/
|
41 |
+
* @see http://www.php-fig.org/psr/psr-4/
|
42 |
+
*/
|
43 |
+
class ClassLoader
|
44 |
+
{
|
45 |
+
// PSR-4
|
46 |
+
private $prefixLengthsPsr4 = array();
|
47 |
+
private $prefixDirsPsr4 = array();
|
48 |
+
private $fallbackDirsPsr4 = array();
|
49 |
+
|
50 |
+
// PSR-0
|
51 |
+
private $prefixesPsr0 = array();
|
52 |
+
private $fallbackDirsPsr0 = array();
|
53 |
+
|
54 |
+
private $useIncludePath = false;
|
55 |
+
private $classMap = array();
|
56 |
+
|
57 |
+
private $classMapAuthoritative = false;
|
58 |
+
|
59 |
+
public function getPrefixes()
|
60 |
+
{
|
61 |
+
if (!empty($this->prefixesPsr0)) {
|
62 |
+
return call_user_func_array('array_merge', $this->prefixesPsr0);
|
63 |
+
}
|
64 |
+
|
65 |
+
return array();
|
66 |
+
}
|
67 |
+
|
68 |
+
public function getPrefixesPsr4()
|
69 |
+
{
|
70 |
+
return $this->prefixDirsPsr4;
|
71 |
+
}
|
72 |
+
|
73 |
+
public function getFallbackDirs()
|
74 |
+
{
|
75 |
+
return $this->fallbackDirsPsr0;
|
76 |
+
}
|
77 |
+
|
78 |
+
public function getFallbackDirsPsr4()
|
79 |
+
{
|
80 |
+
return $this->fallbackDirsPsr4;
|
81 |
+
}
|
82 |
+
|
83 |
+
public function getClassMap()
|
84 |
+
{
|
85 |
+
return $this->classMap;
|
86 |
+
}
|
87 |
+
|
88 |
+
/**
|
89 |
+
* @param array $classMap Class to filename map
|
90 |
+
*/
|
91 |
+
public function addClassMap(array $classMap)
|
92 |
+
{
|
93 |
+
if ($this->classMap) {
|
94 |
+
$this->classMap = array_merge($this->classMap, $classMap);
|
95 |
+
} else {
|
96 |
+
$this->classMap = $classMap;
|
97 |
+
}
|
98 |
+
}
|
99 |
+
|
100 |
+
/**
|
101 |
+
* Registers a set of PSR-0 directories for a given prefix, either
|
102 |
+
* appending or prepending to the ones previously set for this prefix.
|
103 |
+
*
|
104 |
+
* @param string $prefix The prefix
|
105 |
+
* @param array|string $paths The PSR-0 root directories
|
106 |
+
* @param bool $prepend Whether to prepend the directories
|
107 |
+
*/
|
108 |
+
public function add($prefix, $paths, $prepend = false)
|
109 |
+
{
|
110 |
+
if (!$prefix) {
|
111 |
+
if ($prepend) {
|
112 |
+
$this->fallbackDirsPsr0 = array_merge(
|
113 |
+
(array) $paths,
|
114 |
+
$this->fallbackDirsPsr0
|
115 |
+
);
|
116 |
+
} else {
|
117 |
+
$this->fallbackDirsPsr0 = array_merge(
|
118 |
+
$this->fallbackDirsPsr0,
|
119 |
+
(array) $paths
|
120 |
+
);
|
121 |
+
}
|
122 |
+
|
123 |
+
return;
|
124 |
+
}
|
125 |
+
|
126 |
+
$first = $prefix[0];
|
127 |
+
if (!isset($this->prefixesPsr0[$first][$prefix])) {
|
128 |
+
$this->prefixesPsr0[$first][$prefix] = (array) $paths;
|
129 |
+
|
130 |
+
return;
|
131 |
+
}
|
132 |
+
if ($prepend) {
|
133 |
+
$this->prefixesPsr0[$first][$prefix] = array_merge(
|
134 |
+
(array) $paths,
|
135 |
+
$this->prefixesPsr0[$first][$prefix]
|
136 |
+
);
|
137 |
+
} else {
|
138 |
+
$this->prefixesPsr0[$first][$prefix] = array_merge(
|
139 |
+
$this->prefixesPsr0[$first][$prefix],
|
140 |
+
(array) $paths
|
141 |
+
);
|
142 |
+
}
|
143 |
+
}
|
144 |
+
|
145 |
+
/**
|
146 |
+
* Registers a set of PSR-4 directories for a given namespace, either
|
147 |
+
* appending or prepending to the ones previously set for this namespace.
|
148 |
+
*
|
149 |
+
* @param string $prefix The prefix/namespace, with trailing '\\'
|
150 |
+
* @param array|string $paths The PSR-4 base directories
|
151 |
+
* @param bool $prepend Whether to prepend the directories
|
152 |
+
*
|
153 |
+
* @throws \InvalidArgumentException
|
154 |
+
*/
|
155 |
+
public function addPsr4($prefix, $paths, $prepend = false)
|
156 |
+
{
|
157 |
+
if (!$prefix) {
|
158 |
+
// Register directories for the root namespace.
|
159 |
+
if ($prepend) {
|
160 |
+
$this->fallbackDirsPsr4 = array_merge(
|
161 |
+
(array) $paths,
|
162 |
+
$this->fallbackDirsPsr4
|
163 |
+
);
|
164 |
+
} else {
|
165 |
+
$this->fallbackDirsPsr4 = array_merge(
|
166 |
+
$this->fallbackDirsPsr4,
|
167 |
+
(array) $paths
|
168 |
+
);
|
169 |
+
}
|
170 |
+
} elseif (!isset($this->prefixDirsPsr4[$prefix])) {
|
171 |
+
// Register directories for a new namespace.
|
172 |
+
$length = strlen($prefix);
|
173 |
+
if ('\\' !== $prefix[$length - 1]) {
|
174 |
+
throw new \InvalidArgumentException("A non-empty PSR-4 prefix must end with a namespace separator.");
|
175 |
+
}
|
176 |
+
$this->prefixLengthsPsr4[$prefix[0]][$prefix] = $length;
|
177 |
+
$this->prefixDirsPsr4[$prefix] = (array) $paths;
|
178 |
+
} elseif ($prepend) {
|
179 |
+
// Prepend directories for an already registered namespace.
|
180 |
+
$this->prefixDirsPsr4[$prefix] = array_merge(
|
181 |
+
(array) $paths,
|
182 |
+
$this->prefixDirsPsr4[$prefix]
|
183 |
+
);
|
184 |
+
} else {
|
185 |
+
// Append directories for an already registered namespace.
|
186 |
+
$this->prefixDirsPsr4[$prefix] = array_merge(
|
187 |
+
$this->prefixDirsPsr4[$prefix],
|
188 |
+
(array) $paths
|
189 |
+
);
|
190 |
+
}
|
191 |
+
}
|
192 |
+
|
193 |
+
/**
|
194 |
+
* Registers a set of PSR-0 directories for a given prefix,
|
195 |
+
* replacing any others previously set for this prefix.
|
196 |
+
*
|
197 |
+
* @param string $prefix The prefix
|
198 |
+
* @param array|string $paths The PSR-0 base directories
|
199 |
+
*/
|
200 |
+
public function set($prefix, $paths)
|
201 |
+
{
|
202 |
+
if (!$prefix) {
|
203 |
+
$this->fallbackDirsPsr0 = (array) $paths;
|
204 |
+
} else {
|
205 |
+
$this->prefixesPsr0[$prefix[0]][$prefix] = (array) $paths;
|
206 |
+
}
|
207 |
+
}
|
208 |
+
|
209 |
+
/**
|
210 |
+
* Registers a set of PSR-4 directories for a given namespace,
|
211 |
+
* replacing any others previously set for this namespace.
|
212 |
+
*
|
213 |
+
* @param string $prefix The prefix/namespace, with trailing '\\'
|
214 |
+
* @param array|string $paths The PSR-4 base directories
|
215 |
+
*
|
216 |
+
* @throws \InvalidArgumentException
|
217 |
+
*/
|
218 |
+
public function setPsr4($prefix, $paths)
|
219 |
+
{
|
220 |
+
if (!$prefix) {
|
221 |
+
$this->fallbackDirsPsr4 = (array) $paths;
|
222 |
+
} else {
|
223 |
+
$length = strlen($prefix);
|
224 |
+
if ('\\' !== $prefix[$length - 1]) {
|
225 |
+
throw new \InvalidArgumentException("A non-empty PSR-4 prefix must end with a namespace separator.");
|
226 |
+
}
|
227 |
+
$this->prefixLengthsPsr4[$prefix[0]][$prefix] = $length;
|
228 |
+
$this->prefixDirsPsr4[$prefix] = (array) $paths;
|
229 |
+
}
|
230 |
+
}
|
231 |
+
|
232 |
+
/**
|
233 |
+
* Turns on searching the include path for class files.
|
234 |
+
*
|
235 |
+
* @param bool $useIncludePath
|
236 |
+
*/
|
237 |
+
public function setUseIncludePath($useIncludePath)
|
238 |
+
{
|
239 |
+
$this->useIncludePath = $useIncludePath;
|
240 |
+
}
|
241 |
+
|
242 |
+
/**
|
243 |
+
* Can be used to check if the autoloader uses the include path to check
|
244 |
+
* for classes.
|
245 |
+
*
|
246 |
+
* @return bool
|
247 |
+
*/
|
248 |
+
public function getUseIncludePath()
|
249 |
+
{
|
250 |
+
return $this->useIncludePath;
|
251 |
+
}
|
252 |
+
|
253 |
+
/**
|
254 |
+
* Turns off searching the prefix and fallback directories for classes
|
255 |
+
* that have not been registered with the class map.
|
256 |
+
*
|
257 |
+
* @param bool $classMapAuthoritative
|
258 |
+
*/
|
259 |
+
public function setClassMapAuthoritative($classMapAuthoritative)
|
260 |
+
{
|
261 |
+
$this->classMapAuthoritative = $classMapAuthoritative;
|
262 |
+
}
|
263 |
+
|
264 |
+
/**
|
265 |
+
* Should class lookup fail if not found in the current class map?
|
266 |
+
*
|
267 |
+
* @return bool
|
268 |
+
*/
|
269 |
+
public function isClassMapAuthoritative()
|
270 |
+
{
|
271 |
+
return $this->classMapAuthoritative;
|
272 |
+
}
|
273 |
+
|
274 |
+
/**
|
275 |
+
* Registers this instance as an autoloader.
|
276 |
+
*
|
277 |
+
* @param bool $prepend Whether to prepend the autoloader or not
|
278 |
+
*/
|
279 |
+
public function register($prepend = false)
|
280 |
+
{
|
281 |
+
spl_autoload_register(array($this, 'loadClass'), true, $prepend);
|
282 |
+
}
|
283 |
+
|
284 |
+
/**
|
285 |
+
* Unregisters this instance as an autoloader.
|
286 |
+
*/
|
287 |
+
public function unregister()
|
288 |
+
{
|
289 |
+
spl_autoload_unregister(array($this, 'loadClass'));
|
290 |
+
}
|
291 |
+
|
292 |
+
/**
|
293 |
+
* Loads the given class or interface.
|
294 |
+
*
|
295 |
+
* @param string $class The name of the class
|
296 |
+
* @return bool|null True if loaded, null otherwise
|
297 |
+
*/
|
298 |
+
public function loadClass($class)
|
299 |
+
{
|
300 |
+
if ($file = $this->findFile($class)) {
|
301 |
+
includeFile($file);
|
302 |
+
|
303 |
+
return true;
|
304 |
+
}
|
305 |
+
}
|
306 |
+
|
307 |
+
/**
|
308 |
+
* Finds the path to the file where the class is defined.
|
309 |
+
*
|
310 |
+
* @param string $class The name of the class
|
311 |
+
*
|
312 |
+
* @return string|false The path if found, false otherwise
|
313 |
+
*/
|
314 |
+
public function findFile($class)
|
315 |
+
{
|
316 |
+
// work around for PHP 5.3.0 - 5.3.2 https://bugs.php.net/50731
|
317 |
+
if ('\\' == $class[0]) {
|
318 |
+
$class = substr($class, 1);
|
319 |
+
}
|
320 |
+
|
321 |
+
// class map lookup
|
322 |
+
if (isset($this->classMap[$class])) {
|
323 |
+
return $this->classMap[$class];
|
324 |
+
}
|
325 |
+
if ($this->classMapAuthoritative) {
|
326 |
+
return false;
|
327 |
+
}
|
328 |
+
|
329 |
+
$file = $this->findFileWithExtension($class, '.php');
|
330 |
+
|
331 |
+
// Search for Hack files if we are running on HHVM
|
332 |
+
if ($file === null && defined('HHVM_VERSION')) {
|
333 |
+
$file = $this->findFileWithExtension($class, '.hh');
|
334 |
+
}
|
335 |
+
|
336 |
+
if ($file === null) {
|
337 |
+
// Remember that this class does not exist.
|
338 |
+
return $this->classMap[$class] = false;
|
339 |
+
}
|
340 |
+
|
341 |
+
return $file;
|
342 |
+
}
|
343 |
+
|
344 |
+
private function findFileWithExtension($class, $ext)
|
345 |
+
{
|
346 |
+
// PSR-4 lookup
|
347 |
+
$logicalPathPsr4 = strtr($class, '\\', DIRECTORY_SEPARATOR) . $ext;
|
348 |
+
|
349 |
+
$first = $class[0];
|
350 |
+
if (isset($this->prefixLengthsPsr4[$first])) {
|
351 |
+
foreach ($this->prefixLengthsPsr4[$first] as $prefix => $length) {
|
352 |
+
if (0 === strpos($class, $prefix)) {
|
353 |
+
foreach ($this->prefixDirsPsr4[$prefix] as $dir) {
|
354 |
+
if (file_exists($file = $dir . DIRECTORY_SEPARATOR . substr($logicalPathPsr4, $length))) {
|
355 |
+
return $file;
|
356 |
+
}
|
357 |
+
}
|
358 |
+
}
|
359 |
+
}
|
360 |
+
}
|
361 |
+
|
362 |
+
// PSR-4 fallback dirs
|
363 |
+
foreach ($this->fallbackDirsPsr4 as $dir) {
|
364 |
+
if (file_exists($file = $dir . DIRECTORY_SEPARATOR . $logicalPathPsr4)) {
|
365 |
+
return $file;
|
366 |
+
}
|
367 |
+
}
|
368 |
+
|
369 |
+
// PSR-0 lookup
|
370 |
+
if (false !== $pos = strrpos($class, '\\')) {
|
371 |
+
// namespaced class name
|
372 |
+
$logicalPathPsr0 = substr($logicalPathPsr4, 0, $pos + 1)
|
373 |
+
. strtr(substr($logicalPathPsr4, $pos + 1), '_', DIRECTORY_SEPARATOR);
|
374 |
+
} else {
|
375 |
+
// PEAR-like class name
|
376 |
+
$logicalPathPsr0 = strtr($class, '_', DIRECTORY_SEPARATOR) . $ext;
|
377 |
+
}
|
378 |
+
|
379 |
+
if (isset($this->prefixesPsr0[$first])) {
|
380 |
+
foreach ($this->prefixesPsr0[$first] as $prefix => $dirs) {
|
381 |
+
if (0 === strpos($class, $prefix)) {
|
382 |
+
foreach ($dirs as $dir) {
|
383 |
+
if (file_exists($file = $dir . DIRECTORY_SEPARATOR . $logicalPathPsr0)) {
|
384 |
+
return $file;
|
385 |
+
}
|
386 |
+
}
|
387 |
+
}
|
388 |
+
}
|
389 |
+
}
|
390 |
+
|
391 |
+
// PSR-0 fallback dirs
|
392 |
+
foreach ($this->fallbackDirsPsr0 as $dir) {
|
393 |
+
if (file_exists($file = $dir . DIRECTORY_SEPARATOR . $logicalPathPsr0)) {
|
394 |
+
return $file;
|
395 |
+
}
|
396 |
+
}
|
397 |
+
|
398 |
+
// PSR-0 include paths.
|
399 |
+
if ($this->useIncludePath && $file = stream_resolve_include_path($logicalPathPsr0)) {
|
400 |
+
return $file;
|
401 |
+
}
|
402 |
+
}
|
403 |
+
}
|
404 |
+
|
405 |
+
/**
|
406 |
+
* Scope isolated include.
|
407 |
+
*
|
408 |
+
* Prevents access to $this/self from included files.
|
409 |
+
*/
|
410 |
+
function includeFile($file)
|
411 |
+
{
|
412 |
+
include $file;
|
413 |
+
}
|
wpgod/vendor/composer/LICENSE
ADDED
@@ -0,0 +1,21 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
|
2 |
+
Copyright (c) 2016 Nils Adermann, Jordi Boggiano
|
3 |
+
|
4 |
+
Permission is hereby granted, free of charge, to any person obtaining a copy
|
5 |
+
of this software and associated documentation files (the "Software"), to deal
|
6 |
+
in the Software without restriction, including without limitation the rights
|
7 |
+
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
8 |
+
copies of the Software, and to permit persons to whom the Software is furnished
|
9 |
+
to do so, subject to the following conditions:
|
10 |
+
|
11 |
+
The above copyright notice and this permission notice shall be included in all
|
12 |
+
copies or substantial portions of the Software.
|
13 |
+
|
14 |
+
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
15 |
+
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
16 |
+
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
17 |
+
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
18 |
+
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
19 |
+
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
|
20 |
+
THE SOFTWARE.
|
21 |
+
|
wpgod/vendor/composer/autoload_classmap.php
ADDED
@@ -0,0 +1,9 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
<?php
|
2 |
+
|
3 |
+
// autoload_classmap.php @generated by Composer
|
4 |
+
|
5 |
+
$vendorDir = dirname(dirname(__FILE__));
|
6 |
+
$baseDir = dirname($vendorDir);
|
7 |
+
|
8 |
+
return array(
|
9 |
+
);
|
wpgod/vendor/composer/autoload_namespaces.php
ADDED
@@ -0,0 +1,9 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
<?php
|
2 |
+
|
3 |
+
// autoload_namespaces.php @generated by Composer
|
4 |
+
|
5 |
+
$vendorDir = dirname(dirname(__FILE__));
|
6 |
+
$baseDir = dirname($vendorDir);
|
7 |
+
|
8 |
+
return array(
|
9 |
+
);
|
wpgod/vendor/composer/autoload_psr4.php
ADDED
@@ -0,0 +1,10 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
<?php
|
2 |
+
|
3 |
+
// autoload_psr4.php @generated by Composer
|
4 |
+
|
5 |
+
$vendorDir = dirname(dirname(__FILE__));
|
6 |
+
$baseDir = dirname($vendorDir);
|
7 |
+
|
8 |
+
return array(
|
9 |
+
'WPGodWpseopress\\' => array($baseDir . '/src/WPGod'),
|
10 |
+
);
|
wpgod/vendor/composer/autoload_real.php
ADDED
@@ -0,0 +1,45 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
<?php
|
2 |
+
|
3 |
+
// autoload_real.php @generated by Composer
|
4 |
+
|
5 |
+
class ComposerAutoloaderInit6ea64e24194a64d6eef9458bf8eb5c18
|
6 |
+
{
|
7 |
+
private static $loader;
|
8 |
+
|
9 |
+
public static function loadClassLoader($class)
|
10 |
+
{
|
11 |
+
if ('Composer\Autoload\ClassLoader' === $class) {
|
12 |
+
require __DIR__ . '/ClassLoader.php';
|
13 |
+
}
|
14 |
+
}
|
15 |
+
|
16 |
+
public static function getLoader()
|
17 |
+
{
|
18 |
+
if (null !== self::$loader) {
|
19 |
+
return self::$loader;
|
20 |
+
}
|
21 |
+
|
22 |
+
spl_autoload_register(array('ComposerAutoloaderInit6ea64e24194a64d6eef9458bf8eb5c18', 'loadClassLoader'), true, true);
|
23 |
+
self::$loader = $loader = new \Composer\Autoload\ClassLoader();
|
24 |
+
spl_autoload_unregister(array('ComposerAutoloaderInit6ea64e24194a64d6eef9458bf8eb5c18', 'loadClassLoader'));
|
25 |
+
|
26 |
+
$map = require __DIR__ . '/autoload_namespaces.php';
|
27 |
+
foreach ($map as $namespace => $path) {
|
28 |
+
$loader->set($namespace, $path);
|
29 |
+
}
|
30 |
+
|
31 |
+
$map = require __DIR__ . '/autoload_psr4.php';
|
32 |
+
foreach ($map as $namespace => $path) {
|
33 |
+
$loader->setPsr4($namespace, $path);
|
34 |
+
}
|
35 |
+
|
36 |
+
$classMap = require __DIR__ . '/autoload_classmap.php';
|
37 |
+
if ($classMap) {
|
38 |
+
$loader->addClassMap($classMap);
|
39 |
+
}
|
40 |
+
|
41 |
+
$loader->register(true);
|
42 |
+
|
43 |
+
return $loader;
|
44 |
+
}
|
45 |
+
}
|