Version Description
- Fixed Canonical link for facebook Open Graph
- Don't show the Canonical Link if Squirrly SEO is off
- Fixed keyword saving on post update
- Happy New Year!
Download this release
Release Info
Developer | cifi |
Plugin | SEO SQUIRRLY™ |
Version | 6.2.6 |
Comparing to | |
See all releases |
Code changes from version 6.1.0 to 6.2.6
- classes/SQ_HookController.php +2 -2
- classes/SQ_Ranking.php +100 -59
- classes/SQ_Tools.php +74 -86
- config/paths.php +2 -2
- controllers/SQ_Frontend.php +5 -2
- controllers/SQ_Menu.php +11 -7
- controllers/SQ_Post.php +41 -33
- controllers/SQ_PostsList.php +68 -35
- controllers/SQ_Sitemaps.php +1 -1
- core/SQ_BlockSettings/SQ_BlockSettings.php +5 -0
- core/SQ_BlockSettingsSeo/SQ_BlockSettingsSeo.php +82 -13
- core/SQ_Blocksearch/SQ_Blocksearch.php +0 -10
- core/SQ_Loading/SQ_Loading.php +2 -2
- core/config.xml +0 -1
- languages/squirrly-seo-de_DE.mo +0 -0
- languages/squirrly-seo-de_DE.po +2186 -428
- models/SQ_BlockPostsAnalytics.php +72 -32
- models/SQ_BlockSettingsSeo.php +18 -1
- models/SQ_Blocksearch.php +0 -64
- models/SQ_Frontend.php +219 -83
- models/SQ_Post.php +2 -1
- models/SQ_PostsList.php +3 -1
- readme.txt +81 -151
- squirrly.php +6 -6
- themes/default/SQ_BlockAffiliate.php +1 -1
- themes/default/SQ_BlockPostsAnalytics.php +27 -11
- themes/default/SQ_BlockSettings.php +71 -45
- themes/default/SQ_BlockSettingsSeo.php +62 -19
- themes/default/SQ_Blocksearch.php +0 -1
- themes/default/SQ_Blockseo.php +3 -1
- themes/default/css/sq_blockresearch.css +1 -0
- themes/default/css/sq_blocksearch.css +6 -4
- themes/default/css/sq_blockseo.css +2 -0
- themes/default/css/sq_blocksettingsseo.css +25 -0
- themes/default/css/sq_feed.css +0 -5
- themes/default/css/sq_menu.css +31 -8
- themes/default/img/sprite.png +0 -0
- themes/default/js/sq_blocksettingsseo.js +106 -42
- themes/default/js/sq_menu.js +1 -1
classes/SQ_HookController.php
CHANGED
@@ -25,7 +25,7 @@ class SQ_HookController {
|
|
25 |
|
26 |
/**
|
27 |
* Calls the specified action in WP
|
28 |
-
* @param
|
29 |
*
|
30 |
* @return void
|
31 |
*/
|
@@ -56,7 +56,7 @@ class SQ_HookController {
|
|
56 |
|
57 |
/**
|
58 |
* Calls the specified action in WP
|
59 |
-
* @param
|
60 |
*
|
61 |
* @return void
|
62 |
*/
|
25 |
|
26 |
/**
|
27 |
* Calls the specified action in WP
|
28 |
+
* @param object $instance The parent class instance
|
29 |
*
|
30 |
* @return void
|
31 |
*/
|
56 |
|
57 |
/**
|
58 |
* Calls the specified action in WP
|
59 |
+
* @param object $instance The parent class instance
|
60 |
*
|
61 |
* @return void
|
62 |
*/
|
classes/SQ_Ranking.php
CHANGED
@@ -3,21 +3,24 @@
|
|
3 |
/**
|
4 |
* Class for Google Ranking Record
|
5 |
*/
|
6 |
-
class SQ_Ranking extends SQ_FrontController
|
|
|
7 |
|
8 |
private $keyword;
|
9 |
private $post_id;
|
10 |
private $error;
|
11 |
|
12 |
//--
|
13 |
-
public function getCountry()
|
|
|
14 |
if (isset(SQ_Tools::$options['sq_google_country']) && SQ_Tools::$options['sq_google_country'] <> '') {
|
15 |
return SQ_Tools::$options['sq_google_country'];
|
16 |
}
|
17 |
return 'com';
|
18 |
}
|
19 |
|
20 |
-
public function getRefererCountry()
|
|
|
21 |
$convert_refc = array('com' => 'us', '.off.ai' => 'ai', 'com.ag' => 'ag', 'com.ar' => 'ar', 'com.au' => 'au', 'com.br' => 'br', 'com.co' => 'co', 'co.cr' => 'cr', 'com.cu' => 'cu', 'com.do' => 'do', 'com.ec' => 'ec', 'com.sv' => 'sv', 'com.fj' => 'fj', 'com.gi' => 'gi', 'com.gr' => 'gr', 'com.hk' => 'hk', 'co.hu' => 'hu', 'co.in' => 'in', 'co.im' => 'im', 'co.il' => 'il', 'com.jm' => 'jm', 'co.jp' => 'jp', 'co.je' => 'je', 'co.kr' => 'kr', 'co.ls' => 'ls', 'com.my' => 'my', 'com.mt' => 'mt', 'com.mx' => 'mx', 'com.na' => 'na', 'com.np' => 'np', 'com.ni' => 'ni', 'com.nf' => 'nf', 'com.pk' => 'pk', 'com.pa' => 'pa', 'com.py' => 'py', 'com.pe' => 'pe', 'com.ph' => 'ph', 'com.pr' => 'pr', 'com.sg' => 'sg', 'co.za' => 'za', 'com.tw' => 'tw', 'com.th' => 'th', 'com.tr' => 'tr', 'com.ua' => 'ua', 'com.uk' => 'uk', 'com.uy' => 'uy',);
|
22 |
$country = $this->getCountry();
|
23 |
if (array_key_exists($country, $convert_refc)) {
|
@@ -30,7 +33,8 @@ class SQ_Ranking extends SQ_FrontController {
|
|
30 |
* Get the google language from settings
|
31 |
* @return type
|
32 |
*/
|
33 |
-
public function getLanguage()
|
|
|
34 |
if (isset(SQ_Tools::$options['sq_google_language']) && SQ_Tools::$options['sq_google_language'] <> '') {
|
35 |
return SQ_Tools::$options['sq_google_language'];
|
36 |
}
|
@@ -41,7 +45,8 @@ class SQ_Ranking extends SQ_FrontController {
|
|
41 |
* Set the Post id
|
42 |
* @return type
|
43 |
*/
|
44 |
-
public function setPost($post_id)
|
|
|
45 |
$this->post_id = $post_id;
|
46 |
}
|
47 |
|
@@ -49,7 +54,8 @@ class SQ_Ranking extends SQ_FrontController {
|
|
49 |
* Get the current keyword
|
50 |
* @param type $keyword
|
51 |
*/
|
52 |
-
public function setKeyword($keyword)
|
|
|
53 |
$this->keyword = str_replace(" ", "+", urlencode(strtolower($keyword)));
|
54 |
}
|
55 |
|
@@ -57,7 +63,8 @@ class SQ_Ranking extends SQ_FrontController {
|
|
57 |
* Process Ranking on brief request
|
58 |
* @param type $return
|
59 |
*/
|
60 |
-
public function processRanking($post_id, $keyword)
|
|
|
61 |
$this->setPost($post_id);
|
62 |
$this->setKeyword(trim($keyword));
|
63 |
|
@@ -72,11 +79,12 @@ class SQ_Ranking extends SQ_FrontController {
|
|
72 |
*
|
73 |
* @param integer $post_id
|
74 |
* @param string $keyword
|
75 |
-
* @param string $country: com | country extension
|
76 |
-
* @param string $language: en | local language
|
77 |
* @return boolean|int
|
78 |
*/
|
79 |
-
public function getGoogleRank()
|
|
|
80 |
global $wpdb;
|
81 |
$this->error = '';
|
82 |
|
@@ -121,45 +129,83 @@ class SQ_Ranking extends SQ_FrontController {
|
|
121 |
}
|
122 |
|
123 |
$user_agents = array(
|
124 |
-
'Mozilla/5.0 (Windows NT 6.1
|
125 |
-
'Mozilla/5.0 (
|
126 |
-
'Mozilla/5.0 (
|
127 |
-
'Mozilla/5.0 (
|
128 |
-
'Mozilla/5.0 (Windows NT 6.3; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/
|
129 |
-
'Mozilla/5.0 (
|
130 |
-
'Mozilla/5.0 (Windows NT 6.
|
131 |
-
'Mozilla/5.0 (
|
132 |
-
'Mozilla/5.0 (
|
133 |
-
'Mozilla/5.0 (
|
134 |
-
'Mozilla/5.0 (
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
135 |
'Mozilla/5.0 (iPad; CPU OS 5_1 like Mac OS X) AppleWebKit/534.46 (KHTML, like Gecko ) Version/5.1 Mobile/9B176 Safari/7534.48.3',
|
136 |
'Mozilla/5.0 (Macintosh; U; Intel Mac OS X 10_6_8; de-at) AppleWebKit/533.21.1 (KHTML, like Gecko) Version/5.0.5 Safari/533.21.1',
|
137 |
'Mozilla/5.0 (Macintosh; U; Intel Mac OS X 10_6_7; da-dk) AppleWebKit/533.21.1 (KHTML, like Gecko) Version/5.0.5 Safari/533.21.1',
|
138 |
'Mozilla/5.0 (Windows; U; Windows NT 6.1; tr-TR) AppleWebKit/533.20.25 (KHTML, like Gecko) Version/5.0.4 Safari/533.20.27',
|
139 |
-
'Mozilla/5.0 (Windows; U; Windows NT 6.1;
|
140 |
-
'Mozilla/5.0 (Windows; U; Windows NT 6.1;
|
141 |
-
'Mozilla/5.0 (
|
142 |
-
'Mozilla/5.0 (Windows; U; Windows NT
|
143 |
-
'
|
144 |
-
'
|
145 |
-
'Mozilla/5.0 (
|
146 |
-
'Mozilla/5.0 (
|
147 |
-
'
|
148 |
-
'
|
149 |
-
'
|
150 |
-
'Mozilla/5.0 (Windows NT 6.
|
151 |
-
'Mozilla/5.0 (Windows
|
152 |
-
'Mozilla/5.0 (
|
153 |
-
'Mozilla/5.0 (
|
154 |
-
'Mozilla/5.0 (Macintosh; Intel Mac OS X
|
155 |
-
'Mozilla/5.0 (Windows NT 6.1
|
156 |
-
'Mozilla/5.0 (Windows NT 6.3;
|
157 |
-
'Mozilla/5.0 (
|
158 |
-
'Mozilla/5.0 (
|
159 |
-
'Mozilla/5.0 (
|
160 |
-
'Mozilla/5.0 (Windows NT 6.
|
161 |
-
'Mozilla/5.0 (
|
162 |
-
'Mozilla/5.0 (
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
163 |
);
|
164 |
|
165 |
$option = array();
|
@@ -170,7 +216,7 @@ class SQ_Ranking extends SQ_FrontController {
|
|
170 |
|
171 |
//Check the values for block IP
|
172 |
if (strpos($response, "</h3>") === false) {
|
173 |
-
set_transient('google_blocked',
|
174 |
return -2; //return error
|
175 |
}
|
176 |
|
@@ -202,7 +248,8 @@ class SQ_Ranking extends SQ_FrontController {
|
|
202 |
* Do google rank with cron
|
203 |
* @global type $wpdb
|
204 |
*/
|
205 |
-
public function processCron()
|
|
|
206 |
global $wpdb;
|
207 |
if (get_transient('google_blocked') !== false) {
|
208 |
return;
|
@@ -228,20 +275,13 @@ class SQ_Ranking extends SQ_FrontController {
|
|
228 |
$json = json_decode($row->meta_value);
|
229 |
//If keyword is set and no rank or last check is 2 days ago
|
230 |
if (isset($json->keyword) && $json->keyword <> '' &&
|
231 |
-
|
232 |
(isset($json->update) && (time() - $json->update > (60 * 60 * 24 * 2))) || //if indexed then check every 2 days
|
233 |
(isset($json->update) && isset($json->rank) && $json->rank == -1 && (time() - $json->update > (60 * 60 * 24))) //if not indexed than check often
|
234 |
-
|
|
|
235 |
|
236 |
$rank = $this->processRanking($row->post_id, $json->keyword);
|
237 |
-
if ($rank == -1) {
|
238 |
-
$count++;
|
239 |
-
sleep(mt_rand(20, 40));
|
240 |
-
//if not indexed with the keyword then find the url
|
241 |
-
if ($this->processRanking($row->post_id, get_permalink($row->post_id)) > 0) {
|
242 |
-
$rank = 0; //for permalink index set 0
|
243 |
-
}
|
244 |
-
}
|
245 |
|
246 |
//if there is a success response than save it
|
247 |
if (isset($rank) && $rank >= -1) {
|
@@ -255,7 +295,7 @@ class SQ_Ranking extends SQ_FrontController {
|
|
255 |
|
256 |
$args = array();
|
257 |
$args['post_id'] = $row->post_id;
|
258 |
-
$args['rank'] = (string)
|
259 |
$args['error'] = $this->error;
|
260 |
$args['country'] = $this->getCountry();
|
261 |
$args['language'] = $this->getLanguage();
|
@@ -274,7 +314,8 @@ class SQ_Ranking extends SQ_FrontController {
|
|
274 |
* Get keyword from earlier version
|
275 |
*
|
276 |
*/
|
277 |
-
public function getKeywordHistory()
|
|
|
278 |
global $wpdb;
|
279 |
//Check if ranks is saved in database
|
280 |
$sql = "SELECT a.`global_rank`, a.`keyword`, a.`post_id`
|
3 |
/**
|
4 |
* Class for Google Ranking Record
|
5 |
*/
|
6 |
+
class SQ_Ranking extends SQ_FrontController
|
7 |
+
{
|
8 |
|
9 |
private $keyword;
|
10 |
private $post_id;
|
11 |
private $error;
|
12 |
|
13 |
//--
|
14 |
+
public function getCountry()
|
15 |
+
{
|
16 |
if (isset(SQ_Tools::$options['sq_google_country']) && SQ_Tools::$options['sq_google_country'] <> '') {
|
17 |
return SQ_Tools::$options['sq_google_country'];
|
18 |
}
|
19 |
return 'com';
|
20 |
}
|
21 |
|
22 |
+
public function getRefererCountry()
|
23 |
+
{
|
24 |
$convert_refc = array('com' => 'us', '.off.ai' => 'ai', 'com.ag' => 'ag', 'com.ar' => 'ar', 'com.au' => 'au', 'com.br' => 'br', 'com.co' => 'co', 'co.cr' => 'cr', 'com.cu' => 'cu', 'com.do' => 'do', 'com.ec' => 'ec', 'com.sv' => 'sv', 'com.fj' => 'fj', 'com.gi' => 'gi', 'com.gr' => 'gr', 'com.hk' => 'hk', 'co.hu' => 'hu', 'co.in' => 'in', 'co.im' => 'im', 'co.il' => 'il', 'com.jm' => 'jm', 'co.jp' => 'jp', 'co.je' => 'je', 'co.kr' => 'kr', 'co.ls' => 'ls', 'com.my' => 'my', 'com.mt' => 'mt', 'com.mx' => 'mx', 'com.na' => 'na', 'com.np' => 'np', 'com.ni' => 'ni', 'com.nf' => 'nf', 'com.pk' => 'pk', 'com.pa' => 'pa', 'com.py' => 'py', 'com.pe' => 'pe', 'com.ph' => 'ph', 'com.pr' => 'pr', 'com.sg' => 'sg', 'co.za' => 'za', 'com.tw' => 'tw', 'com.th' => 'th', 'com.tr' => 'tr', 'com.ua' => 'ua', 'com.uk' => 'uk', 'com.uy' => 'uy',);
|
25 |
$country = $this->getCountry();
|
26 |
if (array_key_exists($country, $convert_refc)) {
|
33 |
* Get the google language from settings
|
34 |
* @return type
|
35 |
*/
|
36 |
+
public function getLanguage()
|
37 |
+
{
|
38 |
if (isset(SQ_Tools::$options['sq_google_language']) && SQ_Tools::$options['sq_google_language'] <> '') {
|
39 |
return SQ_Tools::$options['sq_google_language'];
|
40 |
}
|
45 |
* Set the Post id
|
46 |
* @return type
|
47 |
*/
|
48 |
+
public function setPost($post_id)
|
49 |
+
{
|
50 |
$this->post_id = $post_id;
|
51 |
}
|
52 |
|
54 |
* Get the current keyword
|
55 |
* @param type $keyword
|
56 |
*/
|
57 |
+
public function setKeyword($keyword)
|
58 |
+
{
|
59 |
$this->keyword = str_replace(" ", "+", urlencode(strtolower($keyword)));
|
60 |
}
|
61 |
|
63 |
* Process Ranking on brief request
|
64 |
* @param type $return
|
65 |
*/
|
66 |
+
public function processRanking($post_id, $keyword)
|
67 |
+
{
|
68 |
$this->setPost($post_id);
|
69 |
$this->setKeyword(trim($keyword));
|
70 |
|
79 |
*
|
80 |
* @param integer $post_id
|
81 |
* @param string $keyword
|
82 |
+
* @param string $country : com | country extension
|
83 |
+
* @param string $language : en | local language
|
84 |
* @return boolean|int
|
85 |
*/
|
86 |
+
public function getGoogleRank()
|
87 |
+
{
|
88 |
global $wpdb;
|
89 |
$this->error = '';
|
90 |
|
129 |
}
|
130 |
|
131 |
$user_agents = array(
|
132 |
+
'Mozilla/5.0 (Windows NT 6.1) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/41.0.2228.0 Safari/537.36',
|
133 |
+
'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_10_1) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/41.0.2227.1 Safari/537.36',
|
134 |
+
'Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/41.0.2227.0 Safari/537.36',
|
135 |
+
'Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/41.0.2227.0 Safari/537.36',
|
136 |
+
'Mozilla/5.0 (Windows NT 6.3; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/41.0.2226.0 Safari/537.36',
|
137 |
+
'Mozilla/5.0 (Windows NT 6.4; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/41.0.2225.0 Safari/537.36',
|
138 |
+
'Mozilla/5.0 (Windows NT 6.3; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/41.0.2225.0 Safari/537.36',
|
139 |
+
'Mozilla/5.0 (Windows NT 5.1) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/41.0.2224.3 Safari/537.36',
|
140 |
+
'Mozilla/5.0 (Windows NT 10.0) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/40.0.2214.93 Safari/537.36',
|
141 |
+
'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_10_1) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/37.0.2062.124 Safari/537.36',
|
142 |
+
'Mozilla/5.0 (Windows NT 6.3; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/37.0.2049.0 Safari/537.36',
|
143 |
+
'Mozilla/5.0 (Windows NT 4.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/37.0.2049.0 Safari/537.36',
|
144 |
+
'Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/36.0.1985.67 Safari/537.36',
|
145 |
+
'Mozilla/5.0 (Windows NT 5.1) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/36.0.1985.67 Safari/537.36',
|
146 |
+
'Mozilla/5.0 (X11; OpenBSD i386) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/36.0.1985.125 Safari/537.36',
|
147 |
+
'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_9_2) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/36.0.1944.0 Safari/537.36',
|
148 |
+
'Mozilla/5.0 (Windows NT 5.1) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/35.0.3319.102 Safari/537.36',
|
149 |
+
'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_9_3) AppleWebKit/537.75.14 (KHTML, like Gecko) Version/7.0.3 Safari/7046A194A',
|
150 |
+
'Mozilla/5.0 (iPad; CPU OS 6_0 like Mac OS X) AppleWebKit/536.26 (KHTML, like Gecko) Version/6.0 Mobile/10A5355d Safari/8536.25',
|
151 |
+
'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_6_8) AppleWebKit/537.13+ (KHTML, like Gecko) Version/5.1.7 Safari/534.57.2',
|
152 |
+
'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_7_3) AppleWebKit/534.55.3 (KHTML, like Gecko) Version/5.1.3 Safari/534.53.10',
|
153 |
'Mozilla/5.0 (iPad; CPU OS 5_1 like Mac OS X) AppleWebKit/534.46 (KHTML, like Gecko ) Version/5.1 Mobile/9B176 Safari/7534.48.3',
|
154 |
'Mozilla/5.0 (Macintosh; U; Intel Mac OS X 10_6_8; de-at) AppleWebKit/533.21.1 (KHTML, like Gecko) Version/5.0.5 Safari/533.21.1',
|
155 |
'Mozilla/5.0 (Macintosh; U; Intel Mac OS X 10_6_7; da-dk) AppleWebKit/533.21.1 (KHTML, like Gecko) Version/5.0.5 Safari/533.21.1',
|
156 |
'Mozilla/5.0 (Windows; U; Windows NT 6.1; tr-TR) AppleWebKit/533.20.25 (KHTML, like Gecko) Version/5.0.4 Safari/533.20.27',
|
157 |
+
'Mozilla/5.0 (Windows; U; Windows NT 6.1; rv:2.2) Gecko/20110201',
|
158 |
+
'Mozilla/5.0 (Windows; U; Windows NT 6.1; it; rv:2.0b4) Gecko/20100818',
|
159 |
+
'Mozilla/5.0 (X11; U; Linux i686; en-US; rv:1.9a3pre) Gecko/20070330',
|
160 |
+
'Mozilla/5.0 (Windows; U; Windows NT 5.0; en-US; rv:1.9.2a1pre) Gecko',
|
161 |
+
'Mozilla/5.0 (Windows; U; Windows NT 5.1; pl; rv:1.9.2.3) Gecko/20100401 Lightningquail/3.6.3',
|
162 |
+
'Mozilla/5.0 (X11; ; Linux i686; rv:1.9.2.20) Gecko/20110805',
|
163 |
+
'Mozilla/5.0 (Macintosh; U; Intel Mac OS X 10.6; en-US; rv:1.9.2.13; ) Gecko/20101203',
|
164 |
+
'Mozilla/5.0 (Windows; U; Windows NT 6.0; en-US; rv:1.9.1b3) Gecko/20090305',
|
165 |
+
'Mozilla/5.0 (Windows; U; Windows NT 5.1; zh-TW; rv:1.9.0.9) Gecko/2009040821',
|
166 |
+
'Mozilla/5.0 (X11; U; Linux i686; ru; rv:1.9.0.8) Gecko/2009032711',
|
167 |
+
'Mozilla/5.0 (X11; U; Linux i686; en-US; rv:1.9.0.7) Gecko/2009032803',
|
168 |
+
'Mozilla/5.0 (Windows; U; Windows NT 6.0; en-GB; rv:1.9.0.7) Gecko/2009021910 MEGAUPLOAD 1.0',
|
169 |
+
'Mozilla/5.0 (Windows; U; BeOS; en-US; rv:1.9.0.7) Gecko/2009021910',
|
170 |
+
'Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.8.1.3) Gecko/20070321',
|
171 |
+
'Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.8.1.3) Gecko/20070309 Mozilla/4.8 [en] (Windows NT 5.1; U)',
|
172 |
+
'Mozilla/5.0 (Macintosh; U; Intel Mac OS X; nl-NL; rv:1.8.1.3) Gecko/20080722',
|
173 |
+
'Mozilla/5.0 (Windows NT 6.1; WOW64; Trident/7.0; AS; rv:11.0) like Gecko',
|
174 |
+
'Mozilla/5.0 (compatible, MSIE 11, Windows NT 6.3; Trident/7.0; rv:11.0) like Gecko',
|
175 |
+
'Mozilla/5.0 (compatible; MSIE 10.0; Windows NT 7.0; InfoPath.3; .NET CLR 3.1.40767; Trident/6.0; en-IN)',
|
176 |
+
'Mozilla/5.0 (compatible; MSIE 10.0; Windows NT 6.1; WOW64; Trident/6.0)',
|
177 |
+
'Mozilla/5.0 (compatible; MSIE 10.0; Windows NT 6.1; Trident/6.0)',
|
178 |
+
'Mozilla/5.0 (compatible; MSIE 10.0; Windows NT 6.1; Trident/5.0)',
|
179 |
+
'Mozilla/5.0 (compatible; MSIE 10.0; Windows NT 6.1; Trident/4.0; InfoPath.2; SV1; .NET CLR 2.0.50727; WOW64)',
|
180 |
+
'Mozilla/5.0 (compatible; MSIE 10.0; Macintosh; Intel Mac OS X 10_7_3; Trident/6.0)',
|
181 |
+
'Mozilla/4.0 (Compatible; MSIE 8.0; Windows NT 5.2; Trident/6.0)',
|
182 |
+
'Mozilla/4.0 (compatible; MSIE 10.0; Windows NT 6.1; Trident/5.0)',
|
183 |
+
'Mozilla/1.22 (compatible; MSIE 10.0; Windows 3.1)',
|
184 |
+
'Mozilla/5.0 (Windows; U; MSIE 9.0; WIndows NT 9.0; en-US))',
|
185 |
+
'Mozilla/5.0 (Windows; U; MSIE 9.0; Windows NT 9.0; en-US)',
|
186 |
+
'Mozilla/5.0 (compatible; MSIE 9.0; Windows NT 7.1; Trident/5.0)',
|
187 |
+
'Mozilla/5.0 (compatible; MSIE 9.0; Windows NT 6.1; WOW64; Trident/5.0; SLCC2; Media Center PC 6.0; InfoPath.3; MS-RTC LM 8; Zune 4.7)',
|
188 |
+
'Mozilla/5.0 (compatible; MSIE 9.0; Windows NT 6.1; WOW64; Trident/5.0; SLCC2; Media Center PC 6.0; InfoPath.3; MS-RTC LM 8; Zune 4.7',
|
189 |
+
'Mozilla/5.0 (compatible; MSIE 9.0; Windows NT 6.1; WOW64; Trident/5.0; chromeframe/12.0.742.112)',
|
190 |
+
'Mozilla/5.0 (compatible; MSIE 9.0; Windows NT 6.1; Win64; x64; Trident/5.0',
|
191 |
+
'Mozilla/5.0 (compatible; MSIE 9.0; Windows NT 6.1; Trident/5.0; yie8)',
|
192 |
+
'Mozilla/5.0 (compatible; MSIE 9.0; Windows NT 6.1; Trident/5.0; chromeframe/13.0.782.215)',
|
193 |
+
'Mozilla/5.0 (compatible; MSIE 9.0; Windows NT 6.1; Trident/5.0; chromeframe/11.0.696.57)',
|
194 |
+
'Mozilla/5.0 (compatible; MSIE 9.0; Windows NT 6.1; Trident/5.0) chromeframe/10.0.648.205',
|
195 |
+
'Mozilla/5.0 (compatible; MSIE 9.0; Windows NT 6.0; Trident/5.0; chromeframe/11.0.696.57)',
|
196 |
+
'Mozilla/5.0 (compatible; MSIE 8.0; Windows NT 5.1; Trident/4.0; .NET CLR 1.1.4322; .NET CLR 2.0.50727)',
|
197 |
+
'Mozilla/5.0 (compatible; MSIE 8.0; Windows NT 5.1; SLCC1; .NET CLR 1.1.4322)',
|
198 |
+
'Mozilla/5.0 (compatible; MSIE 8.0; Windows NT 5.0; Trident/4.0; InfoPath.1; SV1; .NET CLR 3.0.4506.2152; .NET CLR 3.5.30729; .NET CLR 3.0.04506.30)',
|
199 |
+
'Mozilla/5.0 (compatible; MSIE 7.0; Windows NT 5.0; Trident/4.0; FBSMTWB; .NET CLR 2.0.34861; .NET CLR 3.0.3746.3218; .NET CLR 3.5.33652; msn OptimizedIE8;ENUS)',
|
200 |
+
'Mozilla/4.0 (compatible; MSIE 8.0; Windows NT 6.2; Trident/4.0; SLCC2; .NET CLR 2.0.50727; .NET CLR 3.5.30729; .NET CLR 3.0.30729; Media Center PC 6.0)',
|
201 |
+
'Mozilla/4.0 (compatible; MSIE 8.0; Windows NT 6.1; WOW64; Trident/4.0; SLCC2; Media Center PC 6.0; InfoPath.2; MS-RTC LM 8)',
|
202 |
+
'Mozilla/4.0 (compatible; MSIE 8.0; Windows NT 6.1; WOW64; Trident/4.0; SLCC2; Media Center PC 6.0; InfoPath.2; MS-RTC LM 8',
|
203 |
+
'Mozilla/4.0 (compatible; MSIE 8.0; Windows NT 6.1; WOW64; Trident/4.0; SLCC2; .NET CLR 2.0.50727; Media Center PC 6.0; .NET CLR 3.5.30729; .NET CLR 3.0.30729; .NET4.0C)',
|
204 |
+
'Mozilla/4.0 (compatible; MSIE 8.0; Windows NT 6.1; WOW64; Trident/4.0; SLCC2; .NET CLR 2.0.50727; InfoPath.3; .NET4.0C; .NET4.0E; .NET CLR 3.5.30729; .NET CLR 3.0.30729; MS-RTC LM 8)',
|
205 |
+
'Mozilla/4.0 (compatible; MSIE 8.0; Windows NT 6.1; WOW64; Trident/4.0; SLCC2; .NET CLR 2.0.50727; InfoPath.2)',
|
206 |
+
'Mozilla/4.0 (compatible; MSIE 8.0; Windows NT 6.1; WOW64; Trident/4.0; SLCC2; .NET CLR 2.0.50727; .NET CLR 3.5.30729; .NET CLR 3.0.30729; Media Center PC 6.0; Zune 3.0)',
|
207 |
+
'Mozilla/4.0 (compatible; MSIE 8.0; Windows NT 6.1; WOW64; Trident/4.0; SLCC2; .NET CLR 2.0.50727; .NET CLR 3.5.30729; .NET CLR 3.0.30729; Media Center PC 6.0; msn OptimizedIE8;ZHCN)',
|
208 |
+
|
209 |
);
|
210 |
|
211 |
$option = array();
|
216 |
|
217 |
//Check the values for block IP
|
218 |
if (strpos($response, "</h3>") === false) {
|
219 |
+
set_transient('google_blocked', time(), 3600);
|
220 |
return -2; //return error
|
221 |
}
|
222 |
|
248 |
* Do google rank with cron
|
249 |
* @global type $wpdb
|
250 |
*/
|
251 |
+
public function processCron()
|
252 |
+
{
|
253 |
global $wpdb;
|
254 |
if (get_transient('google_blocked') !== false) {
|
255 |
return;
|
275 |
$json = json_decode($row->meta_value);
|
276 |
//If keyword is set and no rank or last check is 2 days ago
|
277 |
if (isset($json->keyword) && $json->keyword <> '' &&
|
278 |
+
(!isset($json->rank) ||
|
279 |
(isset($json->update) && (time() - $json->update > (60 * 60 * 24 * 2))) || //if indexed then check every 2 days
|
280 |
(isset($json->update) && isset($json->rank) && $json->rank == -1 && (time() - $json->update > (60 * 60 * 24))) //if not indexed than check often
|
281 |
+
)
|
282 |
+
) {
|
283 |
|
284 |
$rank = $this->processRanking($row->post_id, $json->keyword);
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
285 |
|
286 |
//if there is a success response than save it
|
287 |
if (isset($rank) && $rank >= -1) {
|
295 |
|
296 |
$args = array();
|
297 |
$args['post_id'] = $row->post_id;
|
298 |
+
$args['rank'] = (string)$rank;
|
299 |
$args['error'] = $this->error;
|
300 |
$args['country'] = $this->getCountry();
|
301 |
$args['language'] = $this->getLanguage();
|
314 |
* Get keyword from earlier version
|
315 |
*
|
316 |
*/
|
317 |
+
public function getKeywordHistory()
|
318 |
+
{
|
319 |
global $wpdb;
|
320 |
//Check if ranks is saved in database
|
321 |
$sql = "SELECT a.`global_rank`, a.`keyword`, a.`post_id`
|
classes/SQ_Tools.php
CHANGED
@@ -5,8 +5,7 @@
|
|
5 |
*
|
6 |
* @author Squirrly
|
7 |
*/
|
8 |
-
class SQ_Tools extends SQ_FrontController
|
9 |
-
{
|
10 |
|
11 |
/** @var array Saved options in database */
|
12 |
public static $options = array();
|
@@ -18,8 +17,7 @@ class SQ_Tools extends SQ_FrontController
|
|
18 |
private static $debug;
|
19 |
private static $source_code;
|
20 |
|
21 |
-
public function __construct()
|
22 |
-
{
|
23 |
parent::__construct();
|
24 |
|
25 |
self::$options = $this->getOptions();
|
@@ -27,8 +25,7 @@ class SQ_Tools extends SQ_FrontController
|
|
27 |
$this->checkDebug(); //dev mode
|
28 |
}
|
29 |
|
30 |
-
public static function getUserID()
|
31 |
-
{
|
32 |
global $current_user;
|
33 |
return $current_user->ID;
|
34 |
}
|
@@ -38,8 +35,7 @@ class SQ_Tools extends SQ_FrontController
|
|
38 |
*
|
39 |
* @return void
|
40 |
*/
|
41 |
-
function hookInit()
|
42 |
-
{
|
43 |
//TinyMCE editor required
|
44 |
//set_user_setting('editor', 'tinymce');
|
45 |
|
@@ -56,8 +52,7 @@ class SQ_Tools extends SQ_FrontController
|
|
56 |
* @param type $file
|
57 |
* @return array
|
58 |
*/
|
59 |
-
public function hookActionlink($links, $file)
|
60 |
-
{
|
61 |
if ($file == _SQ_PLUGIN_NAME_ . '/squirrly.php') {
|
62 |
$link = '<a href="' . admin_url('admin.php?page=sq_dashboard') . '">' . __('Getting started', _SQ_PLUGIN_NAME_) . '</a>';
|
63 |
array_unshift($links, $link);
|
@@ -71,8 +66,7 @@ class SQ_Tools extends SQ_FrontController
|
|
71 |
*
|
72 |
* @return void
|
73 |
*/
|
74 |
-
public static function getOptions()
|
75 |
-
{
|
76 |
$default = array(
|
77 |
'sq_ver' => 0,
|
78 |
'sq_api' => '',
|
@@ -87,6 +81,7 @@ class SQ_Tools extends SQ_FrontController
|
|
87 |
'sq_auto_sitemap' => 0,
|
88 |
'sq_auto_feed' => 0,
|
89 |
'sq_auto_jsonld' => 0,
|
|
|
90 |
'sq_jsonld_type' => 'Organization',
|
91 |
'sq_jsonld' => array(
|
92 |
'Organization' => array(
|
@@ -143,6 +138,8 @@ class SQ_Tools extends SQ_FrontController
|
|
143 |
'sq_facebook_account' => '',
|
144 |
'sq_google_plus' => '',
|
145 |
'sq_linkedin_account' => '',
|
|
|
|
|
146 |
// --
|
147 |
'sq_auto_seo' => 1,
|
148 |
'sq_auto_title' => 1,
|
@@ -150,9 +147,11 @@ class SQ_Tools extends SQ_FrontController
|
|
150 |
'sq_fp_title' => '',
|
151 |
'sq_fp_description' => '',
|
152 |
'sq_fp_keywords' => '',
|
|
|
153 |
// --
|
154 |
'sq_google_wt' => '',
|
155 |
'sq_google_analytics' => '',
|
|
|
156 |
'sq_facebook_insights' => '',
|
157 |
'sq_bing_wt' => '',
|
158 |
'sq_pinterest' => '',
|
@@ -167,12 +166,13 @@ class SQ_Tools extends SQ_FrontController
|
|
167 |
'sq_google_country' => 'com',
|
168 |
'sq_google_language' => 'en',
|
169 |
'sq_google_country_strict' => 0,
|
170 |
-
'sq_google_ranksperhour' =>
|
171 |
// --
|
172 |
'sq_affiliate_link' => '',
|
173 |
'sq_sla' => 1,
|
174 |
'sq_keywordtag' => 1,
|
175 |
'sq_local_images' => 1,
|
|
|
176 |
//--
|
177 |
'sq_dashboard' => 0,
|
178 |
'sq_analytics' => 0,
|
@@ -187,8 +187,7 @@ class SQ_Tools extends SQ_FrontController
|
|
187 |
return $default;
|
188 |
}
|
189 |
|
190 |
-
public static function getBriefOptions()
|
191 |
-
{
|
192 |
if ($pageId = get_option('page_on_front')) {
|
193 |
$title = SQ_ObjController::getModel('SQ_Frontend')->getAdvancedMeta($pageId, 'title');
|
194 |
$description = SQ_ObjController::getModel('SQ_Frontend')->getAdvancedMeta($pageId, 'description');
|
@@ -233,8 +232,7 @@ class SQ_Tools extends SQ_FrontController
|
|
233 |
*
|
234 |
* @return void
|
235 |
*/
|
236 |
-
public static function saveOptions($key = null, $value = '')
|
237 |
-
{
|
238 |
if (isset($key)) {
|
239 |
self::$options[$key] = $value;
|
240 |
}
|
@@ -246,8 +244,7 @@ class SQ_Tools extends SQ_FrontController
|
|
246 |
* Set the header type
|
247 |
* @param type $type
|
248 |
*/
|
249 |
-
public static function setHeader($type)
|
250 |
-
{
|
251 |
if (SQ_Tools::getValue('sq_debug') == 'on')
|
252 |
return;
|
253 |
|
@@ -275,8 +272,7 @@ class SQ_Tools extends SQ_FrontController
|
|
275 |
* @param mixed $defaultValue (optional)
|
276 |
* @return mixed Value
|
277 |
*/
|
278 |
-
public static function getValue($key, $defaultValue = false, $withcode = false)
|
279 |
-
{
|
280 |
if (!isset($key) OR empty($key) OR !is_string($key))
|
281 |
return false;
|
282 |
$ret = (isset($_POST[$key]) ? (is_string($_POST[$key]) ? urldecode($_POST[$key]) : $_POST[$key]) : (isset($_GET[$key]) ? (is_string($_GET[$key]) ? urldecode($_GET[$key]) : $_GET[$key]) : $defaultValue));
|
@@ -294,8 +290,7 @@ class SQ_Tools extends SQ_FrontController
|
|
294 |
* @param string $key
|
295 |
* @return boolean
|
296 |
*/
|
297 |
-
public static function getIsset($key)
|
298 |
-
{
|
299 |
if (!isset($key) OR empty($key) OR !is_string($key))
|
300 |
return false;
|
301 |
return isset($_POST[$key]) ? true : (isset($_GET[$key]) ? true : false);
|
@@ -306,8 +301,7 @@ class SQ_Tools extends SQ_FrontController
|
|
306 |
*
|
307 |
* @return void
|
308 |
*/
|
309 |
-
public static function showNotices($message, $type = 'sq_notices')
|
310 |
-
{
|
311 |
if (file_exists(_SQ_THEME_DIR_ . 'SQ_notices.php')) {
|
312 |
ob_start();
|
313 |
include(_SQ_THEME_DIR_ . 'SQ_notices.php');
|
@@ -321,8 +315,7 @@ class SQ_Tools extends SQ_FrontController
|
|
321 |
/**
|
322 |
* Load the multilanguage support from .mo
|
323 |
*/
|
324 |
-
private function loadMultilanguage()
|
325 |
-
{
|
326 |
if (!defined('WP_PLUGIN_DIR')) {
|
327 |
load_plugin_textdomain(_SQ_PLUGIN_NAME_, _SQ_PLUGIN_NAME_ . '/languages/');
|
328 |
} else {
|
@@ -333,8 +326,7 @@ class SQ_Tools extends SQ_FrontController
|
|
333 |
/**
|
334 |
* Connect remote with CURL if exists
|
335 |
*/
|
336 |
-
public static function sq_remote_get($url, $param = array(), $options = array())
|
337 |
-
{
|
338 |
$parameters = '';
|
339 |
$cookies = array();
|
340 |
$cookie_string = '';
|
@@ -382,10 +374,11 @@ class SQ_Tools extends SQ_FrontController
|
|
382 |
}
|
383 |
$options['sslverify'] = false;
|
384 |
|
385 |
-
|
386 |
-
|
387 |
-
|
388 |
-
|
|
|
389 |
return false;
|
390 |
}
|
391 |
}
|
@@ -396,8 +389,7 @@ class SQ_Tools extends SQ_FrontController
|
|
396 |
/**
|
397 |
* Connect remote with CURL if exists
|
398 |
*/
|
399 |
-
public static function sq_remote_post($url, $param = array(), $options = array())
|
400 |
-
{
|
401 |
$parameters = '';
|
402 |
$cookies = array();
|
403 |
$cookie_string = '';
|
@@ -443,14 +435,15 @@ class SQ_Tools extends SQ_FrontController
|
|
443 |
}
|
444 |
$options['sslverify'] = false;
|
445 |
|
446 |
-
if (
|
447 |
-
|
448 |
-
|
449 |
-
|
450 |
return false;
|
451 |
}
|
452 |
}
|
453 |
|
|
|
454 |
return $response;
|
455 |
}
|
456 |
|
@@ -460,8 +453,7 @@ class SQ_Tools extends SQ_FrontController
|
|
460 |
* @param array $param
|
461 |
* @return string
|
462 |
*/
|
463 |
-
private static function sq_curl($url, $options, $method = 'get')
|
464 |
-
{
|
465 |
|
466 |
$ch = curl_init();
|
467 |
curl_setopt($ch, CURLOPT_URL, $url);
|
@@ -519,8 +511,7 @@ class SQ_Tools extends SQ_FrontController
|
|
519 |
* @param array $param
|
520 |
* @return string
|
521 |
*/
|
522 |
-
private static function sq_wpcall($url, $options, $method = 'get')
|
523 |
-
{
|
524 |
if ($method == 'post') {
|
525 |
$response = wp_remote_post($url, $options);
|
526 |
} else {
|
@@ -539,8 +530,7 @@ class SQ_Tools extends SQ_FrontController
|
|
539 |
/**
|
540 |
* Connect remote with CURL if exists
|
541 |
*/
|
542 |
-
public static function sq_remote_head($url)
|
543 |
-
{
|
544 |
$response = array();
|
545 |
|
546 |
if (function_exists('curl_exec')) {
|
@@ -566,8 +556,7 @@ class SQ_Tools extends SQ_FrontController
|
|
566 |
* @param string $response
|
567 |
* @return string
|
568 |
*/
|
569 |
-
private static function cleanResponce($response)
|
570 |
-
{
|
571 |
|
572 |
if (function_exists('substr_count'))
|
573 |
if (substr_count($response, '(') > 1)
|
@@ -582,8 +571,7 @@ class SQ_Tools extends SQ_FrontController
|
|
582 |
/**
|
583 |
* Check for SEO blog bad settings
|
584 |
*/
|
585 |
-
public static function checkErrorSettings($count_only = false)
|
586 |
-
{
|
587 |
if (current_user_can('manage_options')) {
|
588 |
|
589 |
$fixit = "<a href=\"javascript:void(0);\" onclick=\"%s jQuery(this).closest('div').fadeOut('slow'); if(parseInt(jQuery('.sq_count').html())>0) { var notif = (parseInt(jQuery('.sq_count').html()) - 1); if (notif > 0) {jQuery('.sq_count').html(notif); }else{ jQuery('.sq_count').html(notif); jQuery('.sq_count').hide(); } } jQuery.post(ajaxurl, { action: '%s', nonce: '" . wp_create_nonce(_SQ_NONCE_ID_) . "'});\" >" . __("Fix it for me!", _SQ_PLUGIN_NAME_) . "</a>";
|
@@ -660,8 +648,7 @@ class SQ_Tools extends SQ_FrontController
|
|
660 |
* Check if the automatically seo si active
|
661 |
* @return bool
|
662 |
*/
|
663 |
-
private static function getAutoSeoSquirrly()
|
664 |
-
{
|
665 |
if (isset(self::$options['sq_use']))
|
666 |
return ((int)self::$options['sq_use'] == 0);
|
667 |
|
@@ -672,8 +659,7 @@ class SQ_Tools extends SQ_FrontController
|
|
672 |
* Check for META duplicates
|
673 |
* @return boolean
|
674 |
*/
|
675 |
-
private static function getDuplicateOG()
|
676 |
-
{
|
677 |
if (!function_exists('preg_match_all')) {
|
678 |
return false;
|
679 |
}
|
@@ -695,8 +681,7 @@ class SQ_Tools extends SQ_FrontController
|
|
695 |
* Check for META duplicates
|
696 |
* @return boolean
|
697 |
*/
|
698 |
-
private static function getDuplicateTC()
|
699 |
-
{
|
700 |
if (!function_exists('preg_match_all')) {
|
701 |
return false;
|
702 |
}
|
@@ -718,8 +703,7 @@ class SQ_Tools extends SQ_FrontController
|
|
718 |
* Check for META duplicates
|
719 |
* @return boolean
|
720 |
*/
|
721 |
-
private static function getDuplicateDescription()
|
722 |
-
{
|
723 |
if (!function_exists('preg_match_all')) {
|
724 |
return false;
|
725 |
}
|
@@ -745,8 +729,7 @@ class SQ_Tools extends SQ_FrontController
|
|
745 |
* Check for META duplicates
|
746 |
* @return boolean
|
747 |
*/
|
748 |
-
private static function getDuplicateTitle()
|
749 |
-
{
|
750 |
if (!function_exists('preg_match_all')) {
|
751 |
return false;
|
752 |
}
|
@@ -755,6 +738,7 @@ class SQ_Tools extends SQ_FrontController
|
|
755 |
if (self::$options['sq_use'] == 1 && self::$options['sq_auto_title'] == 1) {
|
756 |
if (self::$source_code <> '') {
|
757 |
preg_match_all("/<title[^>]*>(.*)?<\/title>/i", self::$source_code, $out);
|
|
|
758 |
if (!empty($out) && isset($out[0]) && is_array($out[0])) {
|
759 |
$total += sizeof($out[0]);
|
760 |
}
|
@@ -772,8 +756,7 @@ class SQ_Tools extends SQ_FrontController
|
|
772 |
* Check if the blog is in private mode
|
773 |
* @return bool
|
774 |
*/
|
775 |
-
public static function getPrivateBlog()
|
776 |
-
{
|
777 |
return ((int)get_option('blog_public') == 0);
|
778 |
}
|
779 |
|
@@ -781,8 +764,7 @@ class SQ_Tools extends SQ_FrontController
|
|
781 |
* Check if the blog has a bad link structure
|
782 |
* @return bool
|
783 |
*/
|
784 |
-
private static function getBadLinkStructure()
|
785 |
-
{
|
786 |
global $wp_rewrite;
|
787 |
if (function_exists('apache_get_modules')) {
|
788 |
//Check if mod_rewrite is installed in apache
|
@@ -806,8 +788,7 @@ class SQ_Tools extends SQ_FrontController
|
|
806 |
* @param string $in
|
807 |
* @return string $in localized
|
808 |
*/
|
809 |
-
public static function i18n($in)
|
810 |
-
{
|
811 |
if (function_exists('langswitch_filter_langs_with_message')) {
|
812 |
$in = langswitch_filter_langs_with_message($in);
|
813 |
}
|
@@ -828,15 +809,13 @@ class SQ_Tools extends SQ_FrontController
|
|
828 |
* @param int $decimals Precision of the number of decimal places.
|
829 |
* @return string Converted number in string format.
|
830 |
*/
|
831 |
-
public static function i18n_number_format($number, $decimals = 0)
|
832 |
-
{
|
833 |
global $wp_locale;
|
834 |
$formatted = number_format($number, absint($decimals), $wp_locale->number_format['decimal_point'], $wp_locale->number_format['thousands_sep']);
|
835 |
return apply_filters('number_format_i18n', $formatted);
|
836 |
}
|
837 |
|
838 |
-
public static function getBrowserInfo()
|
839 |
-
{
|
840 |
$ub = '';
|
841 |
$u_agent = $_SERVER['HTTP_USER_AGENT'];
|
842 |
$bname = 'Unknown';
|
@@ -901,20 +880,36 @@ class SQ_Tools extends SQ_FrontController
|
|
901 |
* @param string $url
|
902 |
* @return array
|
903 |
*/
|
904 |
-
public static function getSnippet($url)
|
905 |
-
{
|
906 |
if ($url == '' || !function_exists('preg_match')) {
|
907 |
return;
|
908 |
}
|
909 |
|
|
|
910 |
$snippet = array();
|
911 |
$frontend = SQ_ObjController::getModel('SQ_Frontend');
|
912 |
|
913 |
-
$postid
|
|
|
|
|
|
|
914 |
if ($postid > 0) {
|
|
|
915 |
$frontend->setPost(get_post($postid));
|
916 |
$snippet['title'] = $frontend->getTitle();
|
917 |
$snippet['description'] = $frontend->getDescription();
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
918 |
$snippet['url'] = $url;
|
919 |
self::dump($snippet);
|
920 |
} else {
|
@@ -954,8 +949,7 @@ class SQ_Tools extends SQ_FrontController
|
|
954 |
/**
|
955 |
* Check if debug is called
|
956 |
*/
|
957 |
-
private function checkDebug()
|
958 |
-
{
|
959 |
//if debug is called
|
960 |
if (self::getIsset('sq_debug')) {
|
961 |
if (self::getValue('sq_debug') == self::$options['sq_api']) {
|
@@ -975,8 +969,7 @@ class SQ_Tools extends SQ_FrontController
|
|
975 |
/**
|
976 |
* Store the debug for a later view
|
977 |
*/
|
978 |
-
public static function dump()
|
979 |
-
{
|
980 |
if (self::getValue('sq_debug') !== 'on') {
|
981 |
return;
|
982 |
}
|
@@ -1022,8 +1015,7 @@ class SQ_Tools extends SQ_FrontController
|
|
1022 |
/**
|
1023 |
* Show the debug dump
|
1024 |
*/
|
1025 |
-
public static function showDebug()
|
1026 |
-
{
|
1027 |
global $wp_query;
|
1028 |
echo "Debug result: <br />" . '<div id="wpcontent">' . @implode('<br />', self::$debug) . '</div>';
|
1029 |
|
@@ -1038,14 +1030,12 @@ class SQ_Tools extends SQ_FrontController
|
|
1038 |
echo "<pre>" . print_r($wp_query, true) . "</pre>";
|
1039 |
}
|
1040 |
|
1041 |
-
public function sq_activate()
|
1042 |
-
{
|
1043 |
set_transient('sq_activate', true);
|
1044 |
set_transient('sq_rewrite', true);
|
1045 |
}
|
1046 |
|
1047 |
-
public function sq_deactivate()
|
1048 |
-
{
|
1049 |
//clear the cron job
|
1050 |
wp_clear_scheduled_hook('sq_processCron');
|
1051 |
|
@@ -1058,8 +1048,7 @@ class SQ_Tools extends SQ_FrontController
|
|
1058 |
$wp_rewrite->flush_rules();
|
1059 |
}
|
1060 |
|
1061 |
-
public static function emptyCache($post_id = null)
|
1062 |
-
{
|
1063 |
if (function_exists('w3tc_pgcache_flush')) {
|
1064 |
w3tc_pgcache_flush();
|
1065 |
}
|
@@ -1076,8 +1065,7 @@ class SQ_Tools extends SQ_FrontController
|
|
1076 |
}
|
1077 |
}
|
1078 |
|
1079 |
-
public static function checkUpgrade()
|
1080 |
-
{
|
1081 |
if (self::$options['sq_ver'] == 0 || self::$options['sq_ver'] < SQ_VERSION_ID) {
|
1082 |
//Delete the old versions table
|
1083 |
global $wpdb;
|
5 |
*
|
6 |
* @author Squirrly
|
7 |
*/
|
8 |
+
class SQ_Tools extends SQ_FrontController {
|
|
|
9 |
|
10 |
/** @var array Saved options in database */
|
11 |
public static $options = array();
|
17 |
private static $debug;
|
18 |
private static $source_code;
|
19 |
|
20 |
+
public function __construct() {
|
|
|
21 |
parent::__construct();
|
22 |
|
23 |
self::$options = $this->getOptions();
|
25 |
$this->checkDebug(); //dev mode
|
26 |
}
|
27 |
|
28 |
+
public static function getUserID() {
|
|
|
29 |
global $current_user;
|
30 |
return $current_user->ID;
|
31 |
}
|
35 |
*
|
36 |
* @return void
|
37 |
*/
|
38 |
+
function hookInit() {
|
|
|
39 |
//TinyMCE editor required
|
40 |
//set_user_setting('editor', 'tinymce');
|
41 |
|
52 |
* @param type $file
|
53 |
* @return array
|
54 |
*/
|
55 |
+
public function hookActionlink($links, $file) {
|
|
|
56 |
if ($file == _SQ_PLUGIN_NAME_ . '/squirrly.php') {
|
57 |
$link = '<a href="' . admin_url('admin.php?page=sq_dashboard') . '">' . __('Getting started', _SQ_PLUGIN_NAME_) . '</a>';
|
58 |
array_unshift($links, $link);
|
66 |
*
|
67 |
* @return void
|
68 |
*/
|
69 |
+
public static function getOptions() {
|
|
|
70 |
$default = array(
|
71 |
'sq_ver' => 0,
|
72 |
'sq_api' => '',
|
81 |
'sq_auto_sitemap' => 0,
|
82 |
'sq_auto_feed' => 0,
|
83 |
'sq_auto_jsonld' => 0,
|
84 |
+
'sq_auto_amp' => 0,
|
85 |
'sq_jsonld_type' => 'Organization',
|
86 |
'sq_jsonld' => array(
|
87 |
'Organization' => array(
|
138 |
'sq_facebook_account' => '',
|
139 |
'sq_google_plus' => '',
|
140 |
'sq_linkedin_account' => '',
|
141 |
+
'sq_pinterest_account' => '',
|
142 |
+
'sq_instagram_account' => '',
|
143 |
// --
|
144 |
'sq_auto_seo' => 1,
|
145 |
'sq_auto_title' => 1,
|
147 |
'sq_fp_title' => '',
|
148 |
'sq_fp_description' => '',
|
149 |
'sq_fp_keywords' => '',
|
150 |
+
'sq_fp_ogimage' => '',
|
151 |
// --
|
152 |
'sq_google_wt' => '',
|
153 |
'sq_google_analytics' => '',
|
154 |
+
'sq_facebook_analytics' => '',
|
155 |
'sq_facebook_insights' => '',
|
156 |
'sq_bing_wt' => '',
|
157 |
'sq_pinterest' => '',
|
166 |
'sq_google_country' => 'com',
|
167 |
'sq_google_language' => 'en',
|
168 |
'sq_google_country_strict' => 0,
|
169 |
+
'sq_google_ranksperhour' => 0,
|
170 |
// --
|
171 |
'sq_affiliate_link' => '',
|
172 |
'sq_sla' => 1,
|
173 |
'sq_keywordtag' => 1,
|
174 |
'sq_local_images' => 1,
|
175 |
+
'sq_force_savepost' => 0,
|
176 |
//--
|
177 |
'sq_dashboard' => 0,
|
178 |
'sq_analytics' => 0,
|
187 |
return $default;
|
188 |
}
|
189 |
|
190 |
+
public static function getBriefOptions() {
|
|
|
191 |
if ($pageId = get_option('page_on_front')) {
|
192 |
$title = SQ_ObjController::getModel('SQ_Frontend')->getAdvancedMeta($pageId, 'title');
|
193 |
$description = SQ_ObjController::getModel('SQ_Frontend')->getAdvancedMeta($pageId, 'description');
|
232 |
*
|
233 |
* @return void
|
234 |
*/
|
235 |
+
public static function saveOptions($key = null, $value = '') {
|
|
|
236 |
if (isset($key)) {
|
237 |
self::$options[$key] = $value;
|
238 |
}
|
244 |
* Set the header type
|
245 |
* @param type $type
|
246 |
*/
|
247 |
+
public static function setHeader($type) {
|
|
|
248 |
if (SQ_Tools::getValue('sq_debug') == 'on')
|
249 |
return;
|
250 |
|
272 |
* @param mixed $defaultValue (optional)
|
273 |
* @return mixed Value
|
274 |
*/
|
275 |
+
public static function getValue($key, $defaultValue = false, $withcode = false) {
|
|
|
276 |
if (!isset($key) OR empty($key) OR !is_string($key))
|
277 |
return false;
|
278 |
$ret = (isset($_POST[$key]) ? (is_string($_POST[$key]) ? urldecode($_POST[$key]) : $_POST[$key]) : (isset($_GET[$key]) ? (is_string($_GET[$key]) ? urldecode($_GET[$key]) : $_GET[$key]) : $defaultValue));
|
290 |
* @param string $key
|
291 |
* @return boolean
|
292 |
*/
|
293 |
+
public static function getIsset($key) {
|
|
|
294 |
if (!isset($key) OR empty($key) OR !is_string($key))
|
295 |
return false;
|
296 |
return isset($_POST[$key]) ? true : (isset($_GET[$key]) ? true : false);
|
301 |
*
|
302 |
* @return void
|
303 |
*/
|
304 |
+
public static function showNotices($message, $type = 'sq_notices') {
|
|
|
305 |
if (file_exists(_SQ_THEME_DIR_ . 'SQ_notices.php')) {
|
306 |
ob_start();
|
307 |
include(_SQ_THEME_DIR_ . 'SQ_notices.php');
|
315 |
/**
|
316 |
* Load the multilanguage support from .mo
|
317 |
*/
|
318 |
+
private function loadMultilanguage() {
|
|
|
319 |
if (!defined('WP_PLUGIN_DIR')) {
|
320 |
load_plugin_textdomain(_SQ_PLUGIN_NAME_, _SQ_PLUGIN_NAME_ . '/languages/');
|
321 |
} else {
|
326 |
/**
|
327 |
* Connect remote with CURL if exists
|
328 |
*/
|
329 |
+
public static function sq_remote_get($url, $param = array(), $options = array()) {
|
|
|
330 |
$parameters = '';
|
331 |
$cookies = array();
|
332 |
$cookie_string = '';
|
374 |
}
|
375 |
$options['sslverify'] = false;
|
376 |
|
377 |
+
|
378 |
+
if (function_exists('curl_init') && !ini_get('open_basedir')) {
|
379 |
+
$response = self::sq_curl($url, $options, 'get');
|
380 |
+
} else {
|
381 |
+
if (!$response = self::sq_wpcall($url, $options, 'get')) {
|
382 |
return false;
|
383 |
}
|
384 |
}
|
389 |
/**
|
390 |
* Connect remote with CURL if exists
|
391 |
*/
|
392 |
+
public static function sq_remote_post($url, $param = array(), $options = array()) {
|
|
|
393 |
$parameters = '';
|
394 |
$cookies = array();
|
395 |
$cookie_string = '';
|
435 |
}
|
436 |
$options['sslverify'] = false;
|
437 |
|
438 |
+
if (function_exists('curl_init') && !ini_get('open_basedir')) {
|
439 |
+
$response = self::sq_curl($url, $options, 'post');
|
440 |
+
} else {
|
441 |
+
if (!$response = self::sq_wpcall($url, $options, 'post')) {
|
442 |
return false;
|
443 |
}
|
444 |
}
|
445 |
|
446 |
+
|
447 |
return $response;
|
448 |
}
|
449 |
|
453 |
* @param array $param
|
454 |
* @return string
|
455 |
*/
|
456 |
+
private static function sq_curl($url, $options, $method = 'get') {
|
|
|
457 |
|
458 |
$ch = curl_init();
|
459 |
curl_setopt($ch, CURLOPT_URL, $url);
|
511 |
* @param array $param
|
512 |
* @return string
|
513 |
*/
|
514 |
+
private static function sq_wpcall($url, $options, $method = 'get') {
|
|
|
515 |
if ($method == 'post') {
|
516 |
$response = wp_remote_post($url, $options);
|
517 |
} else {
|
530 |
/**
|
531 |
* Connect remote with CURL if exists
|
532 |
*/
|
533 |
+
public static function sq_remote_head($url) {
|
|
|
534 |
$response = array();
|
535 |
|
536 |
if (function_exists('curl_exec')) {
|
556 |
* @param string $response
|
557 |
* @return string
|
558 |
*/
|
559 |
+
private static function cleanResponce($response) {
|
|
|
560 |
|
561 |
if (function_exists('substr_count'))
|
562 |
if (substr_count($response, '(') > 1)
|
571 |
/**
|
572 |
* Check for SEO blog bad settings
|
573 |
*/
|
574 |
+
public static function checkErrorSettings($count_only = false) {
|
|
|
575 |
if (current_user_can('manage_options')) {
|
576 |
|
577 |
$fixit = "<a href=\"javascript:void(0);\" onclick=\"%s jQuery(this).closest('div').fadeOut('slow'); if(parseInt(jQuery('.sq_count').html())>0) { var notif = (parseInt(jQuery('.sq_count').html()) - 1); if (notif > 0) {jQuery('.sq_count').html(notif); }else{ jQuery('.sq_count').html(notif); jQuery('.sq_count').hide(); } } jQuery.post(ajaxurl, { action: '%s', nonce: '" . wp_create_nonce(_SQ_NONCE_ID_) . "'});\" >" . __("Fix it for me!", _SQ_PLUGIN_NAME_) . "</a>";
|
648 |
* Check if the automatically seo si active
|
649 |
* @return bool
|
650 |
*/
|
651 |
+
private static function getAutoSeoSquirrly() {
|
|
|
652 |
if (isset(self::$options['sq_use']))
|
653 |
return ((int)self::$options['sq_use'] == 0);
|
654 |
|
659 |
* Check for META duplicates
|
660 |
* @return boolean
|
661 |
*/
|
662 |
+
private static function getDuplicateOG() {
|
|
|
663 |
if (!function_exists('preg_match_all')) {
|
664 |
return false;
|
665 |
}
|
681 |
* Check for META duplicates
|
682 |
* @return boolean
|
683 |
*/
|
684 |
+
private static function getDuplicateTC() {
|
|
|
685 |
if (!function_exists('preg_match_all')) {
|
686 |
return false;
|
687 |
}
|
703 |
* Check for META duplicates
|
704 |
* @return boolean
|
705 |
*/
|
706 |
+
private static function getDuplicateDescription() {
|
|
|
707 |
if (!function_exists('preg_match_all')) {
|
708 |
return false;
|
709 |
}
|
729 |
* Check for META duplicates
|
730 |
* @return boolean
|
731 |
*/
|
732 |
+
private static function getDuplicateTitle() {
|
|
|
733 |
if (!function_exists('preg_match_all')) {
|
734 |
return false;
|
735 |
}
|
738 |
if (self::$options['sq_use'] == 1 && self::$options['sq_auto_title'] == 1) {
|
739 |
if (self::$source_code <> '') {
|
740 |
preg_match_all("/<title[^>]*>(.*)?<\/title>/i", self::$source_code, $out);
|
741 |
+
|
742 |
if (!empty($out) && isset($out[0]) && is_array($out[0])) {
|
743 |
$total += sizeof($out[0]);
|
744 |
}
|
756 |
* Check if the blog is in private mode
|
757 |
* @return bool
|
758 |
*/
|
759 |
+
public static function getPrivateBlog() {
|
|
|
760 |
return ((int)get_option('blog_public') == 0);
|
761 |
}
|
762 |
|
764 |
* Check if the blog has a bad link structure
|
765 |
* @return bool
|
766 |
*/
|
767 |
+
private static function getBadLinkStructure() {
|
|
|
768 |
global $wp_rewrite;
|
769 |
if (function_exists('apache_get_modules')) {
|
770 |
//Check if mod_rewrite is installed in apache
|
788 |
* @param string $in
|
789 |
* @return string $in localized
|
790 |
*/
|
791 |
+
public static function i18n($in) {
|
|
|
792 |
if (function_exists('langswitch_filter_langs_with_message')) {
|
793 |
$in = langswitch_filter_langs_with_message($in);
|
794 |
}
|
809 |
* @param int $decimals Precision of the number of decimal places.
|
810 |
* @return string Converted number in string format.
|
811 |
*/
|
812 |
+
public static function i18n_number_format($number, $decimals = 0) {
|
|
|
813 |
global $wp_locale;
|
814 |
$formatted = number_format($number, absint($decimals), $wp_locale->number_format['decimal_point'], $wp_locale->number_format['thousands_sep']);
|
815 |
return apply_filters('number_format_i18n', $formatted);
|
816 |
}
|
817 |
|
818 |
+
public static function getBrowserInfo() {
|
|
|
819 |
$ub = '';
|
820 |
$u_agent = $_SERVER['HTTP_USER_AGENT'];
|
821 |
$bname = 'Unknown';
|
880 |
* @param string $url
|
881 |
* @return array
|
882 |
*/
|
883 |
+
public static function getSnippet($url) {
|
|
|
884 |
if ($url == '' || !function_exists('preg_match')) {
|
885 |
return;
|
886 |
}
|
887 |
|
888 |
+
$postid = 0;
|
889 |
$snippet = array();
|
890 |
$frontend = SQ_ObjController::getModel('SQ_Frontend');
|
891 |
|
892 |
+
if ($postid == 0) {
|
893 |
+
$postid = url_to_postid($url);
|
894 |
+
}
|
895 |
+
|
896 |
if ($postid > 0) {
|
897 |
+
self::dump("it's a post", $url, $postid);
|
898 |
$frontend->setPost(get_post($postid));
|
899 |
$snippet['title'] = $frontend->getTitle();
|
900 |
$snippet['description'] = $frontend->getDescription();
|
901 |
+
$snippet['url'] = $url;
|
902 |
+
self::dump($snippet);
|
903 |
+
} elseif ($url == get_bloginfo('url')) {
|
904 |
+
self::dump("it's main page", $url, get_bloginfo('url'));
|
905 |
+
|
906 |
+
if (self::$options ['sq_auto_title'] == 1) {
|
907 |
+
$snippet['title'] = self::$options['sq_fp_title'];
|
908 |
+
}
|
909 |
+
if (self::$options['sq_auto_description'] == 1) {
|
910 |
+
$snippet['description'] = self::$options['sq_fp_description'];
|
911 |
+
}
|
912 |
+
|
913 |
$snippet['url'] = $url;
|
914 |
self::dump($snippet);
|
915 |
} else {
|
949 |
/**
|
950 |
* Check if debug is called
|
951 |
*/
|
952 |
+
private function checkDebug() {
|
|
|
953 |
//if debug is called
|
954 |
if (self::getIsset('sq_debug')) {
|
955 |
if (self::getValue('sq_debug') == self::$options['sq_api']) {
|
969 |
/**
|
970 |
* Store the debug for a later view
|
971 |
*/
|
972 |
+
public static function dump() {
|
|
|
973 |
if (self::getValue('sq_debug') !== 'on') {
|
974 |
return;
|
975 |
}
|
1015 |
/**
|
1016 |
* Show the debug dump
|
1017 |
*/
|
1018 |
+
public static function showDebug() {
|
|
|
1019 |
global $wp_query;
|
1020 |
echo "Debug result: <br />" . '<div id="wpcontent">' . @implode('<br />', self::$debug) . '</div>';
|
1021 |
|
1030 |
echo "<pre>" . print_r($wp_query, true) . "</pre>";
|
1031 |
}
|
1032 |
|
1033 |
+
public function sq_activate() {
|
|
|
1034 |
set_transient('sq_activate', true);
|
1035 |
set_transient('sq_rewrite', true);
|
1036 |
}
|
1037 |
|
1038 |
+
public function sq_deactivate() {
|
|
|
1039 |
//clear the cron job
|
1040 |
wp_clear_scheduled_hook('sq_processCron');
|
1041 |
|
1048 |
$wp_rewrite->flush_rules();
|
1049 |
}
|
1050 |
|
1051 |
+
public static function emptyCache($post_id = null) {
|
|
|
1052 |
if (function_exists('w3tc_pgcache_flush')) {
|
1053 |
w3tc_pgcache_flush();
|
1054 |
}
|
1065 |
}
|
1066 |
}
|
1067 |
|
1068 |
+
public static function checkUpgrade() {
|
|
|
1069 |
if (self::$options['sq_ver'] == 0 || self::$options['sq_ver'] < SQ_VERSION_ID) {
|
1070 |
//Delete the old versions table
|
1071 |
global $wpdb;
|
config/paths.php
CHANGED
@@ -6,13 +6,13 @@ define('_SQ_NAME_', 'squirrly');
|
|
6 |
define('_SQ_PLUGIN_NAME_', 'squirrly-seo'); //THIS LINE WILL BE CHANGED WITH THE USER SETTINGS
|
7 |
define('_THEME_NAME_', 'default'); //THIS LINE WILL BE CHANGED WITH THE USER SETTINGS
|
8 |
|
9 |
-
define('_SQ_DASH_URL_', 'https://my.squirrly.co/');
|
10 |
$scheme = (((isset($_SERVER['HTTPS']) && $_SERVER['HTTPS'] == "on") || (defined('FORCE_SSL_ADMIN') && FORCE_SSL_ADMIN)) ? 'https:' : 'http:'); //CHECK IF SCURE
|
11 |
|
12 |
defined('SQ_URI') || define('SQ_URI', (WP_VERSION_ID >= 3000) ? 'wp350' : 'wp2');
|
13 |
defined('_SQ_API_URL_') || define('_SQ_API_URL_', $scheme . '//api.squirrly.co/');
|
14 |
|
15 |
-
defined('_SQ_STATIC_API_URL_') || define('_SQ_STATIC_API_URL_', $scheme . '//
|
16 |
defined('_SQ_SUPPORT_URL_') || define('_SQ_SUPPORT_URL_', 'https://plus.google.com/u/0/communities/104196720668136264985');
|
17 |
|
18 |
/* Directories */
|
6 |
define('_SQ_PLUGIN_NAME_', 'squirrly-seo'); //THIS LINE WILL BE CHANGED WITH THE USER SETTINGS
|
7 |
define('_THEME_NAME_', 'default'); //THIS LINE WILL BE CHANGED WITH THE USER SETTINGS
|
8 |
|
9 |
+
defined('_SQ_DASH_URL_') || define('_SQ_DASH_URL_', 'https://my.squirrly.co/');
|
10 |
$scheme = (((isset($_SERVER['HTTPS']) && $_SERVER['HTTPS'] == "on") || (defined('FORCE_SSL_ADMIN') && FORCE_SSL_ADMIN)) ? 'https:' : 'http:'); //CHECK IF SCURE
|
11 |
|
12 |
defined('SQ_URI') || define('SQ_URI', (WP_VERSION_ID >= 3000) ? 'wp350' : 'wp2');
|
13 |
defined('_SQ_API_URL_') || define('_SQ_API_URL_', $scheme . '//api.squirrly.co/');
|
14 |
|
15 |
+
defined('_SQ_STATIC_API_URL_') || define('_SQ_STATIC_API_URL_', $scheme . '//storage.googleapis.com/squirrly/');
|
16 |
defined('_SQ_SUPPORT_URL_') || define('_SQ_SUPPORT_URL_', 'https://plus.google.com/u/0/communities/104196720668136264985');
|
17 |
|
18 |
/* Directories */
|
controllers/SQ_Frontend.php
CHANGED
@@ -11,7 +11,6 @@ class SQ_Frontend extends SQ_FrontController {
|
|
11 |
}
|
12 |
|
13 |
parent::__construct();
|
14 |
-
SQ_ObjController::getController('SQ_Tools', false);
|
15 |
|
16 |
if (SQ_Tools::$options['sq_use'] == 1) {
|
17 |
/* Check if sitemap is on */
|
@@ -42,6 +41,7 @@ class SQ_Frontend extends SQ_FrontController {
|
|
42 |
if (SQ_Tools::$options['sq_url_fix'] == 1) {
|
43 |
add_action('the_content', array($this, 'fixFeedLinks'), 11);
|
44 |
}
|
|
|
45 |
}
|
46 |
}
|
47 |
|
@@ -175,7 +175,7 @@ class SQ_Frontend extends SQ_FrontController {
|
|
175 |
}
|
176 |
break;
|
177 |
case 'touchicon':
|
178 |
-
$size = get_query_var('sq_size');
|
179 |
if (SQ_Tools::$options['favicon'] <> '') {
|
180 |
//show the favico file
|
181 |
SQ_Tools::setHeader('png');
|
@@ -196,4 +196,7 @@ class SQ_Frontend extends SQ_FrontController {
|
|
196 |
}
|
197 |
}
|
198 |
|
|
|
|
|
|
|
199 |
}
|
11 |
}
|
12 |
|
13 |
parent::__construct();
|
|
|
14 |
|
15 |
if (SQ_Tools::$options['sq_use'] == 1) {
|
16 |
/* Check if sitemap is on */
|
41 |
if (SQ_Tools::$options['sq_url_fix'] == 1) {
|
42 |
add_action('the_content', array($this, 'fixFeedLinks'), 11);
|
43 |
}
|
44 |
+
|
45 |
}
|
46 |
}
|
47 |
|
175 |
}
|
176 |
break;
|
177 |
case 'touchicon':
|
178 |
+
$size = (int) get_query_var('sq_size');
|
179 |
if (SQ_Tools::$options['favicon'] <> '') {
|
180 |
//show the favico file
|
181 |
SQ_Tools::setHeader('png');
|
196 |
}
|
197 |
}
|
198 |
|
199 |
+
public function hookFrontfooter(){
|
200 |
+
echo $this->model->getGoogleAnalyticsAMPBody();
|
201 |
+
}
|
202 |
}
|
controllers/SQ_Menu.php
CHANGED
@@ -111,13 +111,17 @@ class SQ_Menu extends SQ_FrontController {
|
|
111 |
array(SQ_ObjController::getBlock('SQ_BlockDashboard'), 'init')
|
112 |
));
|
113 |
if (SQ_Tools::$options['sq_api'] <> '') {
|
114 |
-
|
115 |
-
|
116 |
-
|
117 |
-
'
|
118 |
-
|
119 |
-
|
120 |
-
|
|
|
|
|
|
|
|
|
121 |
|
122 |
|
123 |
|
111 |
array(SQ_ObjController::getBlock('SQ_BlockDashboard'), 'init')
|
112 |
));
|
113 |
if (SQ_Tools::$options['sq_api'] <> '') {
|
114 |
+
|
115 |
+
//IF SERP PLUGIN IS NOT INSTALLED
|
116 |
+
if (!class_exists('SRC_Classes_ObjController')){
|
117 |
+
$this->model->addSubmenu(array('sq_dashboard',
|
118 |
+
ucfirst(_SQ_NAME_) . __(' post list', _SQ_PLUGIN_NAME_),
|
119 |
+
__('Performance <br />Analytics', _SQ_PLUGIN_NAME_) . SQ_Tools::showNotices($analytics_alert, 'errors_count'),
|
120 |
+
'edit_posts',
|
121 |
+
'sq_posts',
|
122 |
+
array(SQ_ObjController::getBlock('SQ_BlockPostsAnalytics'), 'init')
|
123 |
+
));
|
124 |
+
}
|
125 |
|
126 |
|
127 |
|
controllers/SQ_Post.php
CHANGED
@@ -1,7 +1,6 @@
|
|
1 |
<?php
|
2 |
|
3 |
-
class SQ_Post extends SQ_FrontController
|
4 |
-
{
|
5 |
|
6 |
public $saved;
|
7 |
|
@@ -10,8 +9,7 @@ class SQ_Post extends SQ_FrontController
|
|
10 |
*
|
11 |
* @return void
|
12 |
*/
|
13 |
-
public function hookInit()
|
14 |
-
{
|
15 |
$this->saved = array();
|
16 |
|
17 |
add_filter('tiny_mce_before_init', array($this->model, 'setCallback'));
|
@@ -34,8 +32,7 @@ class SQ_Post extends SQ_FrontController
|
|
34 |
*
|
35 |
* @global integer $post_ID
|
36 |
*/
|
37 |
-
public function hookHead()
|
38 |
-
{
|
39 |
global $post_ID;
|
40 |
parent::hookHead();
|
41 |
|
@@ -59,8 +56,7 @@ class SQ_Post extends SQ_FrontController
|
|
59 |
/**
|
60 |
* Hook the Shopp plugin save product
|
61 |
*/
|
62 |
-
public function hookShopp($Product)
|
63 |
-
{
|
64 |
$this->checkSeo($Product->id);
|
65 |
}
|
66 |
|
@@ -68,8 +64,7 @@ class SQ_Post extends SQ_FrontController
|
|
68 |
* Hook the post save/update
|
69 |
* @param type $post_id
|
70 |
*/
|
71 |
-
public function hookSavePost($post_id)
|
72 |
-
{
|
73 |
|
74 |
|
75 |
if (!isset($this->saved[$post_id])) {
|
@@ -107,8 +102,7 @@ class SQ_Post extends SQ_FrontController
|
|
107 |
* @param integer $post_id
|
108 |
* @return false|void
|
109 |
*/
|
110 |
-
public function checkImage($post_id)
|
111 |
-
{
|
112 |
|
113 |
//if the option to save the images locally is set on
|
114 |
if (SQ_Tools::$options['sq_local_images'] == 1) {
|
@@ -193,8 +187,7 @@ class SQ_Post extends SQ_FrontController
|
|
193 |
* @param integer $post_id
|
194 |
* @param void
|
195 |
*/
|
196 |
-
public function checkSeo($post_id, $status = '')
|
197 |
-
{
|
198 |
$args = array();
|
199 |
|
200 |
$seo = SQ_Tools::getValue('sq_seo');
|
@@ -211,14 +204,32 @@ class SQ_Post extends SQ_FrontController
|
|
211 |
$args['author'] = (int)SQ_Tools::getUserID();
|
212 |
$args['post_id'] = $post_id;
|
213 |
|
214 |
-
|
215 |
-
if (
|
216 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
217 |
}
|
218 |
-
$process[] = $args;
|
219 |
-
//save for later send to api
|
220 |
-
set_transient('sq_seopost', json_encode($process));
|
221 |
-
wp_schedule_single_event(time(), 'sq_processApi');
|
222 |
|
223 |
//Save the keyword for this post
|
224 |
if ($json = $this->model->getKeyword($post_id)) {
|
@@ -231,9 +242,8 @@ class SQ_Post extends SQ_FrontController
|
|
231 |
}
|
232 |
}
|
233 |
|
234 |
-
public function getPaged($link)
|
235 |
-
|
236 |
-
$page = get_query_var('paged');
|
237 |
if ($page && $page > 1) {
|
238 |
$link = trailingslashit($link) . "page/" . "$page" . '/';
|
239 |
}
|
@@ -245,8 +255,7 @@ class SQ_Post extends SQ_FrontController
|
|
245 |
*
|
246 |
* @return void
|
247 |
*/
|
248 |
-
public function action()
|
249 |
-
{
|
250 |
parent::action();
|
251 |
|
252 |
switch (SQ_Tools::getValue('action')) {
|
@@ -298,8 +307,7 @@ class SQ_Post extends SQ_FrontController
|
|
298 |
* @return array | false
|
299 |
*
|
300 |
*/
|
301 |
-
private function _checkAdvMeta($post_id)
|
302 |
-
{
|
303 |
|
304 |
$meta = array();
|
305 |
if (SQ_Tools::getIsset('sq_canonical') || SQ_Tools::getIsset('sq_fp_title') || SQ_Tools::getIsset('sq_fp_description') || SQ_Tools::getIsset('sq_fp_keywords')) {
|
@@ -323,7 +331,7 @@ class SQ_Post extends SQ_FrontController
|
|
323 |
$meta[] = array('key' => '_sq_canonical',
|
324 |
'value' => SQ_Tools::getValue('sq_canonical'));
|
325 |
|
326 |
-
|
327 |
$this->model->saveAdvMeta($post_id, $meta);
|
328 |
|
329 |
return $meta;
|
@@ -331,8 +339,7 @@ class SQ_Post extends SQ_FrontController
|
|
331 |
return false;
|
332 |
}
|
333 |
|
334 |
-
public function hookFooter()
|
335 |
-
{
|
336 |
if (!defined('DISABLE_WP_CRON') || DISABLE_WP_CRON == true) {
|
337 |
global $pagenow;
|
338 |
if (in_array($pagenow, array('post.php', 'post-new.php'))) {
|
@@ -341,15 +348,16 @@ class SQ_Post extends SQ_FrontController
|
|
341 |
}
|
342 |
}
|
343 |
|
344 |
-
public function processCron()
|
345 |
-
{
|
346 |
SQ_ObjController::getController('SQ_Tools', false);
|
347 |
SQ_ObjController::getController('SQ_Action', false);
|
348 |
|
349 |
if (get_transient('sq_seopost') !== false) {
|
350 |
$process = json_decode(get_transient('sq_seopost'), true);
|
351 |
foreach ($process as $key => $call) {
|
|
|
352 |
$response = json_decode(SQ_Action::apiCall('sq/seo/post', $call, 60));
|
|
|
353 |
if (isset($response->saved) && $response->saved == true) {
|
354 |
unset($process[$key]);
|
355 |
}
|
1 |
<?php
|
2 |
|
3 |
+
class SQ_Post extends SQ_FrontController {
|
|
|
4 |
|
5 |
public $saved;
|
6 |
|
9 |
*
|
10 |
* @return void
|
11 |
*/
|
12 |
+
public function hookInit() {
|
|
|
13 |
$this->saved = array();
|
14 |
|
15 |
add_filter('tiny_mce_before_init', array($this->model, 'setCallback'));
|
32 |
*
|
33 |
* @global integer $post_ID
|
34 |
*/
|
35 |
+
public function hookHead() {
|
|
|
36 |
global $post_ID;
|
37 |
parent::hookHead();
|
38 |
|
56 |
/**
|
57 |
* Hook the Shopp plugin save product
|
58 |
*/
|
59 |
+
public function hookShopp($Product) {
|
|
|
60 |
$this->checkSeo($Product->id);
|
61 |
}
|
62 |
|
64 |
* Hook the post save/update
|
65 |
* @param type $post_id
|
66 |
*/
|
67 |
+
public function hookSavePost($post_id) {
|
|
|
68 |
|
69 |
|
70 |
if (!isset($this->saved[$post_id])) {
|
102 |
* @param integer $post_id
|
103 |
* @return false|void
|
104 |
*/
|
105 |
+
public function checkImage($post_id) {
|
|
|
106 |
|
107 |
//if the option to save the images locally is set on
|
108 |
if (SQ_Tools::$options['sq_local_images'] == 1) {
|
187 |
* @param integer $post_id
|
188 |
* @param void
|
189 |
*/
|
190 |
+
public function checkSeo($post_id, $status = '') {
|
|
|
191 |
$args = array();
|
192 |
|
193 |
$seo = SQ_Tools::getValue('sq_seo');
|
204 |
$args['author'] = (int)SQ_Tools::getUserID();
|
205 |
$args['post_id'] = $post_id;
|
206 |
|
207 |
+
|
208 |
+
if (SQ_Tools::$options['sq_force_savepost'] == 1) {
|
209 |
+
SQ_Action::apiCall('sq/seo/post', $args, 10);
|
210 |
+
} else {
|
211 |
+
$process = array();
|
212 |
+
if (get_transient('sq_seopost') !== false) {
|
213 |
+
$process = json_decode(get_transient('sq_seopost'), true);
|
214 |
+
}
|
215 |
+
//Add args at the beginning of the process
|
216 |
+
array_unshift($process, $args);
|
217 |
+
|
218 |
+
//save for later send to api
|
219 |
+
set_transient('sq_seopost', json_encode($process));
|
220 |
+
|
221 |
+
//prevent lost posts if there are not processed
|
222 |
+
if (count($process) > 5){
|
223 |
+
SQ_Tools::saveOptions('sq_force_savepost', 1);
|
224 |
+
SQ_Action::apiCall('sq/seo/post', $args, 10);
|
225 |
+
}
|
226 |
+
|
227 |
+
if (get_transient('sq_seopost') !== false) {
|
228 |
+
wp_schedule_single_event(time(), 'sq_processApi');
|
229 |
+
} else {
|
230 |
+
SQ_Action::apiCall('sq/seo/post', $args, 1);
|
231 |
+
}
|
232 |
}
|
|
|
|
|
|
|
|
|
233 |
|
234 |
//Save the keyword for this post
|
235 |
if ($json = $this->model->getKeyword($post_id)) {
|
242 |
}
|
243 |
}
|
244 |
|
245 |
+
public function getPaged($link) {
|
246 |
+
$page = (int)get_query_var('paged');
|
|
|
247 |
if ($page && $page > 1) {
|
248 |
$link = trailingslashit($link) . "page/" . "$page" . '/';
|
249 |
}
|
255 |
*
|
256 |
* @return void
|
257 |
*/
|
258 |
+
public function action() {
|
|
|
259 |
parent::action();
|
260 |
|
261 |
switch (SQ_Tools::getValue('action')) {
|
307 |
* @return array | false
|
308 |
*
|
309 |
*/
|
310 |
+
private function _checkAdvMeta($post_id) {
|
|
|
311 |
|
312 |
$meta = array();
|
313 |
if (SQ_Tools::getIsset('sq_canonical') || SQ_Tools::getIsset('sq_fp_title') || SQ_Tools::getIsset('sq_fp_description') || SQ_Tools::getIsset('sq_fp_keywords')) {
|
331 |
$meta[] = array('key' => '_sq_canonical',
|
332 |
'value' => SQ_Tools::getValue('sq_canonical'));
|
333 |
|
334 |
+
SQ_Tools::dump($meta);
|
335 |
$this->model->saveAdvMeta($post_id, $meta);
|
336 |
|
337 |
return $meta;
|
339 |
return false;
|
340 |
}
|
341 |
|
342 |
+
public function hookFooter() {
|
|
|
343 |
if (!defined('DISABLE_WP_CRON') || DISABLE_WP_CRON == true) {
|
344 |
global $pagenow;
|
345 |
if (in_array($pagenow, array('post.php', 'post-new.php'))) {
|
348 |
}
|
349 |
}
|
350 |
|
351 |
+
public function processCron() {
|
|
|
352 |
SQ_ObjController::getController('SQ_Tools', false);
|
353 |
SQ_ObjController::getController('SQ_Action', false);
|
354 |
|
355 |
if (get_transient('sq_seopost') !== false) {
|
356 |
$process = json_decode(get_transient('sq_seopost'), true);
|
357 |
foreach ($process as $key => $call) {
|
358 |
+
|
359 |
$response = json_decode(SQ_Action::apiCall('sq/seo/post', $call, 60));
|
360 |
+
|
361 |
if (isset($response->saved) && $response->saved == true) {
|
362 |
unset($process[$key]);
|
363 |
}
|
controllers/SQ_PostsList.php
CHANGED
@@ -1,6 +1,7 @@
|
|
1 |
<?php
|
2 |
|
3 |
-
class SQ_PostsList extends SQ_FrontController
|
|
|
4 |
|
5 |
/** @var array Posts types in */
|
6 |
private $types = array();
|
@@ -18,15 +19,18 @@ class SQ_PostsList extends SQ_FrontController {
|
|
18 |
/**
|
19 |
* Called in SQ_Menu > hookMenu
|
20 |
*/
|
21 |
-
public function init()
|
|
|
22 |
$this->types = array_map(array($this, '_addPostsType'), SQ_Tools::$options['sq_post_types']);
|
23 |
}
|
24 |
|
25 |
-
protected function _addPostsType($type)
|
|
|
26 |
return $type . '_posts';
|
27 |
}
|
28 |
|
29 |
-
public function setPosts($posts)
|
|
|
30 |
if (!empty($posts)) {
|
31 |
$this->posts = $posts;
|
32 |
$this->is_list = true;
|
@@ -38,10 +42,11 @@ class SQ_PostsList extends SQ_FrontController {
|
|
38 |
* Create the column and filter for the Posts List
|
39 |
*
|
40 |
*/
|
41 |
-
public function hookInit()
|
|
|
42 |
$browser = SQ_Tools::getBrowserInfo();
|
43 |
|
44 |
-
if ($browser['name'] == 'IE' && (int)
|
45 |
return;
|
46 |
|
47 |
if (isset(SQ_Tools::$options['sq_api']) && SQ_Tools::$options['sq_api'] <> '') {
|
@@ -62,12 +67,13 @@ class SQ_PostsList extends SQ_FrontController {
|
|
62 |
* @param string $where
|
63 |
* @return string
|
64 |
*/
|
65 |
-
public function filterPosts($where)
|
|
|
66 |
if (!is_admin())
|
67 |
return;
|
68 |
|
69 |
if (SQ_Tools::getIsset('sq_post_id')) {
|
70 |
-
$where .= " AND ID = " . (int)
|
71 |
}
|
72 |
|
73 |
return $where;
|
@@ -76,10 +82,11 @@ class SQ_PostsList extends SQ_FrontController {
|
|
76 |
/**
|
77 |
* Hook the Wordpress header
|
78 |
*/
|
79 |
-
public function loadHead()
|
|
|
80 |
parent::hookHead();
|
81 |
SQ_ObjController::getController('SQ_DisplayController', false)
|
82 |
-
|
83 |
}
|
84 |
|
85 |
/**
|
@@ -88,7 +95,8 @@ class SQ_PostsList extends SQ_FrontController {
|
|
88 |
* @param array $columns
|
89 |
* @return array
|
90 |
*/
|
91 |
-
public function add_column($columns)
|
|
|
92 |
$this->loadHead(); //load the js only for post list
|
93 |
$this->is_list = true;
|
94 |
|
@@ -101,7 +109,8 @@ class SQ_PostsList extends SQ_FrontController {
|
|
101 |
* @param object $column
|
102 |
* @param integer $post_id
|
103 |
*/
|
104 |
-
public function add_row($column, $post_id)
|
|
|
105 |
$title = '';
|
106 |
$description = '';
|
107 |
$frontend = null;
|
@@ -115,7 +124,7 @@ class SQ_PostsList extends SQ_FrontController {
|
|
115 |
array_push($this->posts, $post_id);
|
116 |
}
|
117 |
|
118 |
-
echo '<div class="' . $this->column_id . '_row
|
119 |
|
120 |
if ($frontend = SQ_ObjController::getModel('SQ_Frontend')) {
|
121 |
$title = $frontend->getAdvancedMeta($post_id, 'title');
|
@@ -137,7 +146,8 @@ class SQ_PostsList extends SQ_FrontController {
|
|
137 |
* Hook the Footer
|
138 |
*
|
139 |
*/
|
140 |
-
public function hookFooter()
|
|
|
141 |
if (!$this->is_list)
|
142 |
return;
|
143 |
|
@@ -161,7 +171,8 @@ class SQ_PostsList extends SQ_FrontController {
|
|
161 |
/**
|
162 |
* Set the javascript variables
|
163 |
*/
|
164 |
-
public function setVars()
|
|
|
165 |
echo '<script type="text/javascript">
|
166 |
var __sq_article_rank = "' . __('SEO Analytics, by Squirrly', _SQ_PLUGIN_NAME_) . '";
|
167 |
var __sq_refresh = "' . __('Update', _SQ_PLUGIN_NAME_) . '"
|
@@ -173,7 +184,8 @@ class SQ_PostsList extends SQ_FrontController {
|
|
173 |
</script>';
|
174 |
}
|
175 |
|
176 |
-
public function getScripts()
|
|
|
177 |
return '<script type="text/javascript">
|
178 |
//load the rank from squirrly
|
179 |
if (typeof sq_script === "undefined"){
|
@@ -224,7 +236,8 @@ class SQ_PostsList extends SQ_FrontController {
|
|
224 |
* @param integer $pos
|
225 |
* @return array
|
226 |
*/
|
227 |
-
public function insert($src, $in, $pos)
|
|
|
228 |
$array = array();
|
229 |
if (is_int($pos))
|
230 |
$array = array_merge(array_slice($src, 0, $pos), $in, array_slice($src, $pos));
|
@@ -242,7 +255,8 @@ class SQ_PostsList extends SQ_FrontController {
|
|
242 |
* Hook Get/Post action
|
243 |
* @return string
|
244 |
*/
|
245 |
-
public function action()
|
|
|
246 |
parent::action();
|
247 |
switch (SQ_Tools::getValue('action')) {
|
248 |
case 'sq_posts_rank':
|
@@ -265,7 +279,7 @@ class SQ_PostsList extends SQ_FrontController {
|
|
265 |
SQ_Tools::setHeader('json');
|
266 |
$args = array();
|
267 |
$rank = null;
|
268 |
-
$this->model->post_id = (int)
|
269 |
$args['post_id'] = $this->model->post_id;
|
270 |
|
271 |
if ($json = SQ_ObjController::getModel('SQ_Post')->getKeyword($this->model->post_id)) {
|
@@ -277,35 +291,37 @@ class SQ_PostsList extends SQ_FrontController {
|
|
277 |
|
278 |
if (isset($rank) && $rank !== false) {
|
279 |
$ranking = SQ_ObjController::getController('SQ_Ranking', false);
|
280 |
-
$args['rank'] = (string)
|
281 |
$args['country'] = $ranking->getCountry();
|
282 |
$args['language'] = $ranking->getLanguage();
|
283 |
}
|
284 |
}
|
285 |
|
286 |
$response = json_decode(SQ_Action::apiCall('sq/user-analytics/detail', $args, 30));
|
287 |
-
|
288 |
-
exit();
|
289 |
-
}
|
290 |
if (!is_object($response)) {
|
291 |
exit(json_encode(array('error' => $response)));
|
292 |
} else {
|
293 |
-
|
294 |
$analytics = SQ_ObjController::getBlock('SQ_BlockAnalytics');
|
295 |
$analytics->flush = false;
|
296 |
$analytics->post_id = $this->model->post_id;
|
297 |
$analytics->audit = $this->model->getAnalytics($response, $this->model->post_id);
|
298 |
-
$response = $analytics->init();
|
299 |
-
|
300 |
|
|
|
|
|
|
|
|
|
|
|
301 |
exit(json_encode($response));
|
302 |
}
|
303 |
break;
|
304 |
case 'sq_recheck':
|
305 |
SQ_Tools::setHeader('json');
|
306 |
-
if (get_transient('google_blocked') === false) {
|
307 |
-
$this->model->post_id = (int)
|
308 |
if ($json = SQ_ObjController::getModel('SQ_Post')->getKeyword($this->model->post_id)) {
|
|
|
309 |
if (get_transient('sq_rank' . $this->model->post_id) !== false) {
|
310 |
delete_transient('sq_rank' . $this->model->post_id);
|
311 |
}
|
@@ -316,11 +332,13 @@ class SQ_PostsList extends SQ_FrontController {
|
|
316 |
exit(json_encode(array('error' => true)));
|
317 |
} else {
|
318 |
if ($json->rank == -2) {
|
319 |
-
$
|
320 |
-
}
|
321 |
-
|
|
|
|
|
322 |
} elseif ($json->rank == 0) {
|
323 |
-
$value = __('URL Indexed');
|
324 |
} elseif ($json->rank > 0) {
|
325 |
$value = '<strong style="display:block; font-size: 120%; width: 100px; margin: 0 auto; text-align:right;">' . sprintf(__('%s'), $json->rank) . '</strong>' . ((isset($json->country)) ? ' (' . $json->country . ')' : '');
|
326 |
}
|
@@ -330,7 +348,21 @@ class SQ_PostsList extends SQ_FrontController {
|
|
330 |
|
331 |
exit(json_encode(array('error' => true)));
|
332 |
} else {
|
333 |
-
$
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
334 |
exit(json_encode(array('rank' => $rank)));
|
335 |
}
|
336 |
break;
|
@@ -343,7 +375,8 @@ class SQ_PostsList extends SQ_FrontController {
|
|
343 |
* @param type $keyword
|
344 |
* @return type
|
345 |
*/
|
346 |
-
private function checkKeyword($keyword, $force = false)
|
|
|
347 |
$rank = null;
|
348 |
|
349 |
if ($keyword == '')
|
@@ -387,7 +420,7 @@ class SQ_PostsList extends SQ_FrontController {
|
|
387 |
if ($rank !== false && $rank >= -1) {
|
388 |
$args = array();
|
389 |
$args['post_id'] = $this->model->post_id;
|
390 |
-
$args['rank'] = (string)
|
391 |
$args['country'] = $ranking->getCountry();
|
392 |
$args['language'] = $ranking->getLanguage();
|
393 |
SQ_Action::apiCall('sq/user-analytics/saveserp', $args);
|
1 |
<?php
|
2 |
|
3 |
+
class SQ_PostsList extends SQ_FrontController
|
4 |
+
{
|
5 |
|
6 |
/** @var array Posts types in */
|
7 |
private $types = array();
|
19 |
/**
|
20 |
* Called in SQ_Menu > hookMenu
|
21 |
*/
|
22 |
+
public function init()
|
23 |
+
{
|
24 |
$this->types = array_map(array($this, '_addPostsType'), SQ_Tools::$options['sq_post_types']);
|
25 |
}
|
26 |
|
27 |
+
protected function _addPostsType($type)
|
28 |
+
{
|
29 |
return $type . '_posts';
|
30 |
}
|
31 |
|
32 |
+
public function setPosts($posts)
|
33 |
+
{
|
34 |
if (!empty($posts)) {
|
35 |
$this->posts = $posts;
|
36 |
$this->is_list = true;
|
42 |
* Create the column and filter for the Posts List
|
43 |
*
|
44 |
*/
|
45 |
+
public function hookInit()
|
46 |
+
{
|
47 |
$browser = SQ_Tools::getBrowserInfo();
|
48 |
|
49 |
+
if ($browser['name'] == 'IE' && (int)$browser['version'] < 9 && (int)$browser['version'] > 0)
|
50 |
return;
|
51 |
|
52 |
if (isset(SQ_Tools::$options['sq_api']) && SQ_Tools::$options['sq_api'] <> '') {
|
67 |
* @param string $where
|
68 |
* @return string
|
69 |
*/
|
70 |
+
public function filterPosts($where)
|
71 |
+
{
|
72 |
if (!is_admin())
|
73 |
return;
|
74 |
|
75 |
if (SQ_Tools::getIsset('sq_post_id')) {
|
76 |
+
$where .= " AND ID = " . (int)SQ_Tools::getValue('sq_post_id');
|
77 |
}
|
78 |
|
79 |
return $where;
|
82 |
/**
|
83 |
* Hook the Wordpress header
|
84 |
*/
|
85 |
+
public function loadHead()
|
86 |
+
{
|
87 |
parent::hookHead();
|
88 |
SQ_ObjController::getController('SQ_DisplayController', false)
|
89 |
+
->loadMedia(_SQ_THEME_URL_ . '/css/sq_postslist.css');
|
90 |
}
|
91 |
|
92 |
/**
|
95 |
* @param array $columns
|
96 |
* @return array
|
97 |
*/
|
98 |
+
public function add_column($columns)
|
99 |
+
{
|
100 |
$this->loadHead(); //load the js only for post list
|
101 |
$this->is_list = true;
|
102 |
|
109 |
* @param object $column
|
110 |
* @param integer $post_id
|
111 |
*/
|
112 |
+
public function add_row($column, $post_id)
|
113 |
+
{
|
114 |
$title = '';
|
115 |
$description = '';
|
116 |
$frontend = null;
|
124 |
array_push($this->posts, $post_id);
|
125 |
}
|
126 |
|
127 |
+
echo '<div class="' . $this->column_id . '_row" ref="' . $post_id . '">' . (($cached) ? $_COOKIE[$this->column_id . $post_id] : 'loading ...') . '</div>';
|
128 |
|
129 |
if ($frontend = SQ_ObjController::getModel('SQ_Frontend')) {
|
130 |
$title = $frontend->getAdvancedMeta($post_id, 'title');
|
146 |
* Hook the Footer
|
147 |
*
|
148 |
*/
|
149 |
+
public function hookFooter()
|
150 |
+
{
|
151 |
if (!$this->is_list)
|
152 |
return;
|
153 |
|
171 |
/**
|
172 |
* Set the javascript variables
|
173 |
*/
|
174 |
+
public function setVars()
|
175 |
+
{
|
176 |
echo '<script type="text/javascript">
|
177 |
var __sq_article_rank = "' . __('SEO Analytics, by Squirrly', _SQ_PLUGIN_NAME_) . '";
|
178 |
var __sq_refresh = "' . __('Update', _SQ_PLUGIN_NAME_) . '"
|
184 |
</script>';
|
185 |
}
|
186 |
|
187 |
+
public function getScripts()
|
188 |
+
{
|
189 |
return '<script type="text/javascript">
|
190 |
//load the rank from squirrly
|
191 |
if (typeof sq_script === "undefined"){
|
236 |
* @param integer $pos
|
237 |
* @return array
|
238 |
*/
|
239 |
+
public function insert($src, $in, $pos)
|
240 |
+
{
|
241 |
$array = array();
|
242 |
if (is_int($pos))
|
243 |
$array = array_merge(array_slice($src, 0, $pos), $in, array_slice($src, $pos));
|
255 |
* Hook Get/Post action
|
256 |
* @return string
|
257 |
*/
|
258 |
+
public function action()
|
259 |
+
{
|
260 |
parent::action();
|
261 |
switch (SQ_Tools::getValue('action')) {
|
262 |
case 'sq_posts_rank':
|
279 |
SQ_Tools::setHeader('json');
|
280 |
$args = array();
|
281 |
$rank = null;
|
282 |
+
$this->model->post_id = (int)SQ_Tools::getValue('post');
|
283 |
$args['post_id'] = $this->model->post_id;
|
284 |
|
285 |
if ($json = SQ_ObjController::getModel('SQ_Post')->getKeyword($this->model->post_id)) {
|
291 |
|
292 |
if (isset($rank) && $rank !== false) {
|
293 |
$ranking = SQ_ObjController::getController('SQ_Ranking', false);
|
294 |
+
$args['rank'] = (string)$rank;
|
295 |
$args['country'] = $ranking->getCountry();
|
296 |
$args['language'] = $ranking->getLanguage();
|
297 |
}
|
298 |
}
|
299 |
|
300 |
$response = json_decode(SQ_Action::apiCall('sq/user-analytics/detail', $args, 30));
|
301 |
+
|
|
|
|
|
302 |
if (!is_object($response)) {
|
303 |
exit(json_encode(array('error' => $response)));
|
304 |
} else {
|
305 |
+
//SQ_Tools::dump($response);
|
306 |
$analytics = SQ_ObjController::getBlock('SQ_BlockAnalytics');
|
307 |
$analytics->flush = false;
|
308 |
$analytics->post_id = $this->model->post_id;
|
309 |
$analytics->audit = $this->model->getAnalytics($response, $this->model->post_id);
|
|
|
|
|
310 |
|
311 |
+
$response = $analytics->init();
|
312 |
+
SQ_Tools::dump($response);
|
313 |
+
if (SQ_Tools::getValue('sq_debug') === 'on') {
|
314 |
+
exit();
|
315 |
+
}
|
316 |
exit(json_encode($response));
|
317 |
}
|
318 |
break;
|
319 |
case 'sq_recheck':
|
320 |
SQ_Tools::setHeader('json');
|
321 |
+
if (SQ_Tools::getValue('sq_debug') === 'on' || get_transient('google_blocked') === false) {
|
322 |
+
$this->model->post_id = (int)SQ_Tools::getValue('post_id');
|
323 |
if ($json = SQ_ObjController::getModel('SQ_Post')->getKeyword($this->model->post_id)) {
|
324 |
+
$oldrank = (isset($json->rank) ? $json->rank : -1);
|
325 |
if (get_transient('sq_rank' . $this->model->post_id) !== false) {
|
326 |
delete_transient('sq_rank' . $this->model->post_id);
|
327 |
}
|
332 |
exit(json_encode(array('error' => true)));
|
333 |
} else {
|
334 |
if ($json->rank == -2) {
|
335 |
+
$json->rank = $oldrank;
|
336 |
+
}
|
337 |
+
|
338 |
+
if ($json->rank == -1) {
|
339 |
+
$value = sprintf(__('Not in top 100 for: %s'), '<br />' .$json->keyword);
|
340 |
} elseif ($json->rank == 0) {
|
341 |
+
$value = __('The URL is Indexed', _SQ_PLUGIN_NAME_);
|
342 |
} elseif ($json->rank > 0) {
|
343 |
$value = '<strong style="display:block; font-size: 120%; width: 100px; margin: 0 auto; text-align:right;">' . sprintf(__('%s'), $json->rank) . '</strong>' . ((isset($json->country)) ? ' (' . $json->country . ')' : '');
|
344 |
}
|
348 |
|
349 |
exit(json_encode(array('error' => true)));
|
350 |
} else {
|
351 |
+
$this->model->post_id = (int)SQ_Tools::getValue('post_id');
|
352 |
+
if ($json = SQ_ObjController::getModel('SQ_Post')->getKeyword($this->model->post_id)) {
|
353 |
+
if ($json->rank === false) {
|
354 |
+
exit(json_encode(array('error' => true)));
|
355 |
+
} else {
|
356 |
+
if ($json->rank == -1) {
|
357 |
+
$value = sprintf(__('Not in top 100 for: %s'), '<br />' .$json->keyword);
|
358 |
+
} elseif ($json->rank == 0) {
|
359 |
+
$value = __('The URL is Indexed', _SQ_PLUGIN_NAME_);
|
360 |
+
} elseif ($json->rank > 0) {
|
361 |
+
$value = '<strong style="display:block; font-size: 120%; width: 100px; margin: 0 auto; text-align:right;">' . sprintf(__('%s'), $json->rank) . '</strong>' . ((isset($json->country)) ? ' (' . $json->country . ')' : '');
|
362 |
+
}
|
363 |
+
exit(json_encode(array('rank' => $value)));
|
364 |
+
}
|
365 |
+
}
|
366 |
exit(json_encode(array('rank' => $rank)));
|
367 |
}
|
368 |
break;
|
375 |
* @param type $keyword
|
376 |
* @return type
|
377 |
*/
|
378 |
+
private function checkKeyword($keyword, $force = false)
|
379 |
+
{
|
380 |
$rank = null;
|
381 |
|
382 |
if ($keyword == '')
|
420 |
if ($rank !== false && $rank >= -1) {
|
421 |
$args = array();
|
422 |
$args['post_id'] = $this->model->post_id;
|
423 |
+
$args['rank'] = (string)$rank;
|
424 |
$args['country'] = $ranking->getCountry();
|
425 |
$args['language'] = $ranking->getLanguage();
|
426 |
SQ_Action::apiCall('sq/user-analytics/saveserp', $args);
|
controllers/SQ_Sitemaps.php
CHANGED
@@ -8,7 +8,7 @@ class SQ_Sitemaps extends SQ_FrontController {
|
|
8 |
|
9 |
var $root = 'sitemap';
|
10 |
/* @var string post limit */
|
11 |
-
var $posts_limit =
|
12 |
var $news_limit = 50;
|
13 |
|
14 |
public function __construct() {
|
8 |
|
9 |
var $root = 'sitemap';
|
10 |
/* @var string post limit */
|
11 |
+
var $posts_limit = 1000;
|
12 |
var $news_limit = 50;
|
13 |
|
14 |
public function __construct() {
|
core/SQ_BlockSettings/SQ_BlockSettings.php
CHANGED
@@ -24,9 +24,14 @@ class SQ_BlockSettings extends SQ_BlockController {
|
|
24 |
parent::action();
|
25 |
|
26 |
|
|
|
27 |
switch (SQ_Tools::getValue('action')) {
|
28 |
|
29 |
case 'sq_settings_update':
|
|
|
|
|
|
|
|
|
30 |
if (SQ_Tools::getIsset('sq_post_types')) {
|
31 |
SQ_Tools::$options['sq_post_types'] = array();
|
32 |
foreach (SQ_Tools::getValue('sq_post_types') as $key) {
|
24 |
parent::action();
|
25 |
|
26 |
|
27 |
+
|
28 |
switch (SQ_Tools::getValue('action')) {
|
29 |
|
30 |
case 'sq_settings_update':
|
31 |
+
if (!current_user_can('manage_options')){
|
32 |
+
return;
|
33 |
+
}
|
34 |
+
|
35 |
if (SQ_Tools::getIsset('sq_post_types')) {
|
36 |
SQ_Tools::$options['sq_post_types'] = array();
|
37 |
foreach (SQ_Tools::getValue('sq_post_types') as $key) {
|
core/SQ_BlockSettingsSeo/SQ_BlockSettingsSeo.php
CHANGED
@@ -33,25 +33,31 @@ class SQ_BlockSettingsSeo extends SQ_BlockController {
|
|
33 |
public function action() {
|
34 |
parent::action();
|
35 |
|
|
|
36 |
switch (SQ_Tools::getValue('action')) {
|
37 |
|
38 |
case 'sq_settingsseo_update':
|
|
|
|
|
|
|
|
|
39 |
if (!SQ_Tools::getIsset('sq_use')) {
|
40 |
return;
|
41 |
}
|
42 |
|
43 |
-
SQ_Tools::saveOptions('sq_use', (int)
|
44 |
-
SQ_Tools::saveOptions('sq_auto_title', (int)
|
45 |
-
SQ_Tools::saveOptions('sq_auto_description', (int)
|
46 |
-
SQ_Tools::saveOptions('sq_auto_canonical', (int)
|
|
|
47 |
|
48 |
-
SQ_Tools::saveOptions('sq_auto_meta', (int)
|
49 |
-
SQ_Tools::saveOptions('sq_auto_favicon', (int)
|
50 |
|
51 |
///////////////////////////////////////////
|
52 |
/////////////////////////////SOCIAL OPTION
|
53 |
-
SQ_Tools::saveOptions('sq_auto_facebook', (int)
|
54 |
-
SQ_Tools::saveOptions('sq_auto_twitter', (int)
|
55 |
SQ_Tools::saveOptions('sq_auto_twittersize', SQ_Tools::getValue('sq_auto_twittersize'));
|
56 |
SQ_Tools::saveOptions('sq_og_locale', SQ_Tools::getValue('sq_og_locale'));
|
57 |
|
@@ -59,6 +65,8 @@ class SQ_BlockSettingsSeo extends SQ_BlockController {
|
|
59 |
SQ_Tools::saveOptions('sq_facebook_account', $this->model->checkFacebookAccount(SQ_Tools::getValue('sq_facebook_account')));
|
60 |
SQ_Tools::saveOptions('sq_google_plus', $this->model->checkGoogleAccount(SQ_Tools::getValue('sq_google_plus')));
|
61 |
SQ_Tools::saveOptions('sq_linkedin_account', $this->model->checkLinkeinAccount(SQ_Tools::getValue('sq_linkedin_account')));
|
|
|
|
|
62 |
|
63 |
///////////////////////////////////////////
|
64 |
/////////////////////////////FIRST PAGE OPTIMIZATION
|
@@ -75,7 +83,7 @@ class SQ_BlockSettingsSeo extends SQ_BlockController {
|
|
75 |
$meta[] = array('key' => '_sq_fp_keywords', 'value' => SQ_Tools::getValue('sq_fp_keywords'));
|
76 |
|
77 |
if (SQ_Tools::getIsset('sq_fp_ogimage'))
|
78 |
-
$meta[] = array('key' => '_sq_fp_ogimage', 'value' =>
|
79 |
|
80 |
if (!empty($meta))
|
81 |
SQ_ObjController::getModel('SQ_Post')->saveAdvMeta($pageId, $meta);
|
@@ -84,14 +92,15 @@ class SQ_BlockSettingsSeo extends SQ_BlockController {
|
|
84 |
SQ_Tools::saveOptions('sq_fp_title', SQ_Tools::getValue('sq_fp_title'));
|
85 |
SQ_Tools::saveOptions('sq_fp_description', SQ_Tools::getValue('sq_fp_description'));
|
86 |
SQ_Tools::saveOptions('sq_fp_keywords', SQ_Tools::getValue('sq_fp_keywords'));
|
|
|
87 |
|
88 |
|
89 |
///////////////////////////////////////////
|
90 |
/////////////////////////////SITEMAP OPTION
|
91 |
-
SQ_Tools::saveOptions('sq_auto_sitemap', (int)
|
92 |
-
SQ_Tools::saveOptions('sq_auto_feed', (int)
|
93 |
SQ_Tools::saveOptions('sq_sitemap_frequency', SQ_Tools::getValue('sq_sitemap_frequency'));
|
94 |
-
SQ_Tools::saveOptions('sq_sitemap_ping', (int)
|
95 |
|
96 |
foreach (SQ_Tools::$options['sq_sitemap'] as $key => $value) {
|
97 |
if ($key == 'sitemap') {
|
@@ -125,11 +134,13 @@ class SQ_BlockSettingsSeo extends SQ_BlockController {
|
|
125 |
|
126 |
SQ_Tools::saveOptions('sq_google_analytics', $this->model->checkGoogleAnalyticsCode(SQ_Tools::getValue('sq_google_analytics', '', true)));
|
127 |
SQ_Tools::saveOptions('sq_facebook_insights', $this->model->checkFavebookInsightsCode(SQ_Tools::getValue('sq_facebook_insights', '', true)));
|
|
|
128 |
SQ_Tools::saveOptions('sq_pinterest', $this->model->checkPinterestCode(SQ_Tools::getValue('sq_pinterest', '', true)));
|
129 |
|
130 |
///////////////////////////////////////////JSONLD
|
131 |
|
132 |
-
|
|
|
133 |
if (SQ_Tools::getIsset('sq_jsonld_type') && isset(SQ_Tools::$options['sq_jsonld'][SQ_Tools::getValue('sq_jsonld_type')])) {
|
134 |
|
135 |
foreach (SQ_Tools::$options['sq_jsonld'][SQ_Tools::getValue('sq_jsonld_type')] as $key => $value) {
|
@@ -137,6 +148,11 @@ class SQ_BlockSettingsSeo extends SQ_BlockController {
|
|
137 |
SQ_Tools::$options['sq_jsonld'][SQ_Tools::getValue('sq_jsonld_type')][$key] = SQ_Tools::getValue('sq_jsonld_' . $key);
|
138 |
}
|
139 |
}
|
|
|
|
|
|
|
|
|
|
|
140 |
}
|
141 |
SQ_Tools::saveOptions('sq_jsonld_type', SQ_Tools::getValue('sq_jsonld_type'));
|
142 |
|
@@ -167,6 +183,10 @@ class SQ_BlockSettingsSeo extends SQ_BlockController {
|
|
167 |
SQ_Tools::emptyCache();
|
168 |
break;
|
169 |
case 'sq_checkissues':
|
|
|
|
|
|
|
|
|
170 |
SQ_Tools::saveOptions('sq_checkedissues', 1);
|
171 |
SQ_Action::apiCall('sq/user/settings', array('settings' => json_encode(SQ_Tools::getBriefOptions())), 10);
|
172 |
|
@@ -175,21 +195,37 @@ class SQ_BlockSettingsSeo extends SQ_BlockController {
|
|
175 |
|
176 |
break;
|
177 |
case 'sq_fixautoseo':
|
|
|
|
|
|
|
|
|
178 |
SQ_Tools::saveOptions('sq_use', 1);
|
179 |
SQ_Action::apiCall('sq/user/settings', array('settings' => json_encode(SQ_Tools::getBriefOptions())), 10);
|
180 |
|
181 |
break;
|
182 |
case 'sq_fixprivate':
|
|
|
|
|
|
|
|
|
183 |
update_option('blog_public', 1);
|
184 |
SQ_Action::apiCall('sq/user/settings', array('settings' => json_encode(SQ_Tools::getBriefOptions())), 10);
|
185 |
|
186 |
break;
|
187 |
case 'sq_fixcomments':
|
|
|
|
|
|
|
|
|
188 |
update_option('comments_notify', 1);
|
189 |
SQ_Action::apiCall('sq/user/settings', array('settings' => json_encode(SQ_Tools::getBriefOptions())), 10);
|
190 |
|
191 |
break;
|
192 |
case 'sq_fixpermalink':
|
|
|
|
|
|
|
|
|
193 |
$GLOBALS['wp_rewrite'] = new WP_Rewrite();
|
194 |
global $wp_rewrite;
|
195 |
$permalink_structure = ((get_option('permalink_structure') <> '') ? get_option('permalink_structure') : '/') . "%postname%/";
|
@@ -199,31 +235,55 @@ class SQ_BlockSettingsSeo extends SQ_BlockController {
|
|
199 |
flush_rewrite_rules();
|
200 |
break;
|
201 |
case 'sq_fix_ogduplicate':
|
|
|
|
|
|
|
|
|
202 |
SQ_Tools::saveOptions('sq_auto_facebook', 0);
|
203 |
SQ_Action::apiCall('sq/user/settings', array('settings' => json_encode(SQ_Tools::getBriefOptions())), 10);
|
204 |
|
205 |
break;
|
206 |
case 'sq_fix_tcduplicate':
|
|
|
|
|
|
|
|
|
207 |
SQ_Tools::saveOptions('sq_auto_twitter', 0);
|
208 |
SQ_Action::apiCall('sq/user/settings', array('settings' => json_encode(SQ_Tools::getBriefOptions())), 10);
|
209 |
|
210 |
break;
|
211 |
case 'sq_fix_titleduplicate':
|
|
|
|
|
|
|
|
|
212 |
SQ_Tools::saveOptions('sq_auto_title', 0);
|
213 |
SQ_Tools::saveOptions('sq_auto_seo', 1);
|
214 |
SQ_Action::apiCall('sq/user/settings', array('settings' => json_encode(SQ_Tools::getBriefOptions())), 10);
|
215 |
|
216 |
break;
|
217 |
case 'sq_fix_descduplicate':
|
|
|
|
|
|
|
|
|
218 |
SQ_Tools::saveOptions('sq_auto_description', 0);
|
219 |
SQ_Tools::saveOptions('sq_auto_seo', 1);
|
220 |
SQ_Action::apiCall('sq/user/settings', array('settings' => json_encode(SQ_Tools::getBriefOptions())), 10);
|
221 |
|
222 |
break;
|
223 |
case 'sq_active_help' :
|
|
|
|
|
|
|
|
|
224 |
SQ_Tools::saveOptions('active_help', SQ_Tools::getValue('active_help'));
|
225 |
break;
|
226 |
case 'sq_warnings_off':
|
|
|
|
|
|
|
|
|
227 |
SQ_Tools::saveOptions('ignore_warn', 1);
|
228 |
break;
|
229 |
case 'sq_get_snippet':
|
@@ -239,6 +299,10 @@ class SQ_BlockSettingsSeo extends SQ_BlockController {
|
|
239 |
echo json_encode($snippet);
|
240 |
exit();
|
241 |
case 'sq_backup':
|
|
|
|
|
|
|
|
|
242 |
SQ_Tools::setHeader('text');
|
243 |
header("Content-Disposition: attachment; filename=squirrly.txt");
|
244 |
|
@@ -250,6 +314,10 @@ class SQ_BlockSettingsSeo extends SQ_BlockController {
|
|
250 |
exit();
|
251 |
break;
|
252 |
case 'sq_restore':
|
|
|
|
|
|
|
|
|
253 |
if (!empty($_FILES['sq_options']) && $_FILES['sq_options']['tmp_name'] <> '') {
|
254 |
$options = file_get_contents($_FILES['sq_options']['tmp_name']);
|
255 |
try {
|
@@ -291,6 +359,7 @@ class SQ_BlockSettingsSeo extends SQ_BlockController {
|
|
291 |
$rules['favicon\.icon$'] = 'index.php?sq_get=favicon';
|
292 |
$rules['touch-icon\.png$'] = 'index.php?sq_get=touchicon';
|
293 |
foreach ($this->model->appleSizes as $size) {
|
|
|
294 |
$rules['touch-icon' . $size . '\.png$'] = 'index.php?sq_get=touchicon&sq_size=' . $size;
|
295 |
}
|
296 |
}
|
33 |
public function action() {
|
34 |
parent::action();
|
35 |
|
36 |
+
|
37 |
switch (SQ_Tools::getValue('action')) {
|
38 |
|
39 |
case 'sq_settingsseo_update':
|
40 |
+
if (!current_user_can('manage_options')) {
|
41 |
+
return;
|
42 |
+
}
|
43 |
+
|
44 |
if (!SQ_Tools::getIsset('sq_use')) {
|
45 |
return;
|
46 |
}
|
47 |
|
48 |
+
SQ_Tools::saveOptions('sq_use', (int)SQ_Tools::getValue('sq_use'));
|
49 |
+
SQ_Tools::saveOptions('sq_auto_title', (int)SQ_Tools::getValue('sq_auto_title'));
|
50 |
+
SQ_Tools::saveOptions('sq_auto_description', (int)SQ_Tools::getValue('sq_auto_description'));
|
51 |
+
SQ_Tools::saveOptions('sq_auto_canonical', (int)SQ_Tools::getValue('sq_auto_canonical'));
|
52 |
+
SQ_Tools::saveOptions('sq_auto_amp', (int)SQ_Tools::getValue('sq_auto_amp'));
|
53 |
|
54 |
+
SQ_Tools::saveOptions('sq_auto_meta', (int)SQ_Tools::getValue('sq_auto_meta'));
|
55 |
+
SQ_Tools::saveOptions('sq_auto_favicon', (int)SQ_Tools::getValue('sq_auto_favicon'));
|
56 |
|
57 |
///////////////////////////////////////////
|
58 |
/////////////////////////////SOCIAL OPTION
|
59 |
+
SQ_Tools::saveOptions('sq_auto_facebook', (int)SQ_Tools::getValue('sq_auto_facebook'));
|
60 |
+
SQ_Tools::saveOptions('sq_auto_twitter', (int)SQ_Tools::getValue('sq_auto_twitter'));
|
61 |
SQ_Tools::saveOptions('sq_auto_twittersize', SQ_Tools::getValue('sq_auto_twittersize'));
|
62 |
SQ_Tools::saveOptions('sq_og_locale', SQ_Tools::getValue('sq_og_locale'));
|
63 |
|
65 |
SQ_Tools::saveOptions('sq_facebook_account', $this->model->checkFacebookAccount(SQ_Tools::getValue('sq_facebook_account')));
|
66 |
SQ_Tools::saveOptions('sq_google_plus', $this->model->checkGoogleAccount(SQ_Tools::getValue('sq_google_plus')));
|
67 |
SQ_Tools::saveOptions('sq_linkedin_account', $this->model->checkLinkeinAccount(SQ_Tools::getValue('sq_linkedin_account')));
|
68 |
+
SQ_Tools::saveOptions('sq_pinterest_account', $this->model->checkPinterestAccount(SQ_Tools::getValue('sq_pinterest_account')));
|
69 |
+
SQ_Tools::saveOptions('sq_instagram_account', $this->model->checkInstagramAccount(SQ_Tools::getValue('sq_instagram_account')));
|
70 |
|
71 |
///////////////////////////////////////////
|
72 |
/////////////////////////////FIRST PAGE OPTIMIZATION
|
83 |
$meta[] = array('key' => '_sq_fp_keywords', 'value' => SQ_Tools::getValue('sq_fp_keywords'));
|
84 |
|
85 |
if (SQ_Tools::getIsset('sq_fp_ogimage'))
|
86 |
+
$meta[] = array('key' => '_sq_fp_ogimage', 'value' => SQ_Tools::getValue('sq_fp_ogimage'));
|
87 |
|
88 |
if (!empty($meta))
|
89 |
SQ_ObjController::getModel('SQ_Post')->saveAdvMeta($pageId, $meta);
|
92 |
SQ_Tools::saveOptions('sq_fp_title', SQ_Tools::getValue('sq_fp_title'));
|
93 |
SQ_Tools::saveOptions('sq_fp_description', SQ_Tools::getValue('sq_fp_description'));
|
94 |
SQ_Tools::saveOptions('sq_fp_keywords', SQ_Tools::getValue('sq_fp_keywords'));
|
95 |
+
SQ_Tools::saveOptions('sq_fp_ogimage', SQ_Tools::getValue('sq_fp_ogimage'));
|
96 |
|
97 |
|
98 |
///////////////////////////////////////////
|
99 |
/////////////////////////////SITEMAP OPTION
|
100 |
+
SQ_Tools::saveOptions('sq_auto_sitemap', (int)SQ_Tools::getValue('sq_auto_sitemap'));
|
101 |
+
SQ_Tools::saveOptions('sq_auto_feed', (int)SQ_Tools::getValue('sq_auto_feed'));
|
102 |
SQ_Tools::saveOptions('sq_sitemap_frequency', SQ_Tools::getValue('sq_sitemap_frequency'));
|
103 |
+
SQ_Tools::saveOptions('sq_sitemap_ping', (int)SQ_Tools::getValue('sq_sitemap_ping'));
|
104 |
|
105 |
foreach (SQ_Tools::$options['sq_sitemap'] as $key => $value) {
|
106 |
if ($key == 'sitemap') {
|
134 |
|
135 |
SQ_Tools::saveOptions('sq_google_analytics', $this->model->checkGoogleAnalyticsCode(SQ_Tools::getValue('sq_google_analytics', '', true)));
|
136 |
SQ_Tools::saveOptions('sq_facebook_insights', $this->model->checkFavebookInsightsCode(SQ_Tools::getValue('sq_facebook_insights', '', true)));
|
137 |
+
SQ_Tools::saveOptions('sq_facebook_analytics', SQ_Tools::getValue('sq_facebook_analytics', ''));
|
138 |
SQ_Tools::saveOptions('sq_pinterest', $this->model->checkPinterestCode(SQ_Tools::getValue('sq_pinterest', '', true)));
|
139 |
|
140 |
///////////////////////////////////////////JSONLD
|
141 |
|
142 |
+
|
143 |
+
SQ_Tools::saveOptions('sq_auto_jsonld', (int)SQ_Tools::getValue('sq_auto_jsonld'));
|
144 |
if (SQ_Tools::getIsset('sq_jsonld_type') && isset(SQ_Tools::$options['sq_jsonld'][SQ_Tools::getValue('sq_jsonld_type')])) {
|
145 |
|
146 |
foreach (SQ_Tools::$options['sq_jsonld'][SQ_Tools::getValue('sq_jsonld_type')] as $key => $value) {
|
148 |
SQ_Tools::$options['sq_jsonld'][SQ_Tools::getValue('sq_jsonld_type')][$key] = SQ_Tools::getValue('sq_jsonld_' . $key);
|
149 |
}
|
150 |
}
|
151 |
+
if (isset(SQ_Tools::$options['sq_jsonld'][SQ_Tools::getValue('sq_jsonld_type')]['telephone']) &&
|
152 |
+
SQ_Tools::$options['sq_jsonld'][SQ_Tools::getValue('sq_jsonld_type')]['telephone'] <> ''
|
153 |
+
) {
|
154 |
+
SQ_Tools::$options['sq_jsonld'][SQ_Tools::getValue('sq_jsonld_type')]['telephone'] = '+' . SQ_Tools::$options['sq_jsonld'][SQ_Tools::getValue('sq_jsonld_type')]['telephone'];
|
155 |
+
}
|
156 |
}
|
157 |
SQ_Tools::saveOptions('sq_jsonld_type', SQ_Tools::getValue('sq_jsonld_type'));
|
158 |
|
183 |
SQ_Tools::emptyCache();
|
184 |
break;
|
185 |
case 'sq_checkissues':
|
186 |
+
if (!current_user_can('manage_options')) {
|
187 |
+
return;
|
188 |
+
}
|
189 |
+
|
190 |
SQ_Tools::saveOptions('sq_checkedissues', 1);
|
191 |
SQ_Action::apiCall('sq/user/settings', array('settings' => json_encode(SQ_Tools::getBriefOptions())), 10);
|
192 |
|
195 |
|
196 |
break;
|
197 |
case 'sq_fixautoseo':
|
198 |
+
if (!current_user_can('manage_options')) {
|
199 |
+
return;
|
200 |
+
}
|
201 |
+
|
202 |
SQ_Tools::saveOptions('sq_use', 1);
|
203 |
SQ_Action::apiCall('sq/user/settings', array('settings' => json_encode(SQ_Tools::getBriefOptions())), 10);
|
204 |
|
205 |
break;
|
206 |
case 'sq_fixprivate':
|
207 |
+
if (!current_user_can('manage_options')) {
|
208 |
+
return;
|
209 |
+
}
|
210 |
+
|
211 |
update_option('blog_public', 1);
|
212 |
SQ_Action::apiCall('sq/user/settings', array('settings' => json_encode(SQ_Tools::getBriefOptions())), 10);
|
213 |
|
214 |
break;
|
215 |
case 'sq_fixcomments':
|
216 |
+
if (!current_user_can('manage_options')) {
|
217 |
+
return;
|
218 |
+
}
|
219 |
+
|
220 |
update_option('comments_notify', 1);
|
221 |
SQ_Action::apiCall('sq/user/settings', array('settings' => json_encode(SQ_Tools::getBriefOptions())), 10);
|
222 |
|
223 |
break;
|
224 |
case 'sq_fixpermalink':
|
225 |
+
if (!current_user_can('manage_options')) {
|
226 |
+
return;
|
227 |
+
}
|
228 |
+
|
229 |
$GLOBALS['wp_rewrite'] = new WP_Rewrite();
|
230 |
global $wp_rewrite;
|
231 |
$permalink_structure = ((get_option('permalink_structure') <> '') ? get_option('permalink_structure') : '/') . "%postname%/";
|
235 |
flush_rewrite_rules();
|
236 |
break;
|
237 |
case 'sq_fix_ogduplicate':
|
238 |
+
if (!current_user_can('manage_options')) {
|
239 |
+
return;
|
240 |
+
}
|
241 |
+
|
242 |
SQ_Tools::saveOptions('sq_auto_facebook', 0);
|
243 |
SQ_Action::apiCall('sq/user/settings', array('settings' => json_encode(SQ_Tools::getBriefOptions())), 10);
|
244 |
|
245 |
break;
|
246 |
case 'sq_fix_tcduplicate':
|
247 |
+
if (!current_user_can('manage_options')) {
|
248 |
+
return;
|
249 |
+
}
|
250 |
+
|
251 |
SQ_Tools::saveOptions('sq_auto_twitter', 0);
|
252 |
SQ_Action::apiCall('sq/user/settings', array('settings' => json_encode(SQ_Tools::getBriefOptions())), 10);
|
253 |
|
254 |
break;
|
255 |
case 'sq_fix_titleduplicate':
|
256 |
+
if (!current_user_can('manage_options')) {
|
257 |
+
return;
|
258 |
+
}
|
259 |
+
|
260 |
SQ_Tools::saveOptions('sq_auto_title', 0);
|
261 |
SQ_Tools::saveOptions('sq_auto_seo', 1);
|
262 |
SQ_Action::apiCall('sq/user/settings', array('settings' => json_encode(SQ_Tools::getBriefOptions())), 10);
|
263 |
|
264 |
break;
|
265 |
case 'sq_fix_descduplicate':
|
266 |
+
if (!current_user_can('manage_options')) {
|
267 |
+
return;
|
268 |
+
}
|
269 |
+
|
270 |
SQ_Tools::saveOptions('sq_auto_description', 0);
|
271 |
SQ_Tools::saveOptions('sq_auto_seo', 1);
|
272 |
SQ_Action::apiCall('sq/user/settings', array('settings' => json_encode(SQ_Tools::getBriefOptions())), 10);
|
273 |
|
274 |
break;
|
275 |
case 'sq_active_help' :
|
276 |
+
if (!current_user_can('manage_options')) {
|
277 |
+
return;
|
278 |
+
}
|
279 |
+
|
280 |
SQ_Tools::saveOptions('active_help', SQ_Tools::getValue('active_help'));
|
281 |
break;
|
282 |
case 'sq_warnings_off':
|
283 |
+
if (!current_user_can('manage_options')) {
|
284 |
+
return;
|
285 |
+
}
|
286 |
+
|
287 |
SQ_Tools::saveOptions('ignore_warn', 1);
|
288 |
break;
|
289 |
case 'sq_get_snippet':
|
299 |
echo json_encode($snippet);
|
300 |
exit();
|
301 |
case 'sq_backup':
|
302 |
+
if (!current_user_can('manage_options')) {
|
303 |
+
return;
|
304 |
+
}
|
305 |
+
|
306 |
SQ_Tools::setHeader('text');
|
307 |
header("Content-Disposition: attachment; filename=squirrly.txt");
|
308 |
|
314 |
exit();
|
315 |
break;
|
316 |
case 'sq_restore':
|
317 |
+
if (!current_user_can('manage_options')) {
|
318 |
+
return;
|
319 |
+
}
|
320 |
+
|
321 |
if (!empty($_FILES['sq_options']) && $_FILES['sq_options']['tmp_name'] <> '') {
|
322 |
$options = file_get_contents($_FILES['sq_options']['tmp_name']);
|
323 |
try {
|
359 |
$rules['favicon\.icon$'] = 'index.php?sq_get=favicon';
|
360 |
$rules['touch-icon\.png$'] = 'index.php?sq_get=touchicon';
|
361 |
foreach ($this->model->appleSizes as $size) {
|
362 |
+
$size = (int)$size;
|
363 |
$rules['touch-icon' . $size . '\.png$'] = 'index.php?sq_get=touchicon&sq_size=' . $size;
|
364 |
}
|
365 |
}
|
core/SQ_Blocksearch/SQ_Blocksearch.php
CHANGED
@@ -16,16 +16,6 @@ class SQ_Blocksearch extends SQ_BlockController {
|
|
16 |
SQ_Tools::saveOptions('sq_img_licence', SQ_Tools::getValue('licence'));
|
17 |
exit();
|
18 |
break;
|
19 |
-
case 'sq_search_img':
|
20 |
-
|
21 |
-
$get = array('q' => SQ_Tools::getValue('q'),
|
22 |
-
'lang' => SQ_Tools::getValue('lang'),
|
23 |
-
'start' => SQ_Tools::getValue('start'),
|
24 |
-
'page' => SQ_Tools::getValue('page'),
|
25 |
-
'nrb' => SQ_Tools::getValue('nrb')
|
26 |
-
);
|
27 |
-
echo $this->model->searchImage($get);
|
28 |
-
break;
|
29 |
case 'sq_search_blog':
|
30 |
if (SQ_Tools::getValue('exclude') && SQ_Tools::getValue('exclude') <> 'undefined')
|
31 |
$exclude = array((int) SQ_Tools::getValue('exclude'));
|
16 |
SQ_Tools::saveOptions('sq_img_licence', SQ_Tools::getValue('licence'));
|
17 |
exit();
|
18 |
break;
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
19 |
case 'sq_search_blog':
|
20 |
if (SQ_Tools::getValue('exclude') && SQ_Tools::getValue('exclude') <> 'undefined')
|
21 |
$exclude = array((int) SQ_Tools::getValue('exclude'));
|
core/SQ_Loading/SQ_Loading.php
CHANGED
@@ -39,12 +39,12 @@ class SQ_Loading extends SQ_BlockController {
|
|
39 |
' . (($keyword <> '') ? 'var sq_keyword_from_post = "' . $keyword . '";' : '') . '
|
40 |
if (typeof sq_script === "undefined"){
|
41 |
var sq_script = document.createElement(\'script\');
|
42 |
-
sq_script.src = "' . _SQ_STATIC_API_URL_ . SQ_URI . '/js/squirrly.js?ver=' . SQ_VERSION_ID . '";
|
43 |
var site_head = document.getElementsByTagName ("head")[0] || document.documentElement;
|
44 |
site_head.insertBefore(sq_script, site_head.firstChild);
|
45 |
}
|
46 |
jQuery(document).ready(function() {
|
47 |
-
jQuery("#sq_preloading").
|
48 |
});
|
49 |
</script>';
|
50 |
}
|
39 |
' . (($keyword <> '') ? 'var sq_keyword_from_post = "' . $keyword . '";' : '') . '
|
40 |
if (typeof sq_script === "undefined"){
|
41 |
var sq_script = document.createElement(\'script\');
|
42 |
+
sq_script.src = "' . _SQ_STATIC_API_URL_ . SQ_URI . '/js/squirrly.js?ver=' . SQ_VERSION_ID . '2";
|
43 |
var site_head = document.getElementsByTagName ("head")[0] || document.documentElement;
|
44 |
site_head.insertBefore(sq_script, site_head.firstChild);
|
45 |
}
|
46 |
jQuery(document).ready(function() {
|
47 |
+
jQuery("#sq_preloading").html("");
|
48 |
});
|
49 |
</script>';
|
50 |
}
|
core/config.xml
CHANGED
@@ -89,7 +89,6 @@
|
|
89 |
<controller>SQ_Post</controller>
|
90 |
</controllers>
|
91 |
<actions>
|
92 |
-
<action>sq_search_img</action>
|
93 |
<action>sq_search_blog</action>
|
94 |
<action>sq_type_click</action>
|
95 |
</actions>
|
89 |
<controller>SQ_Post</controller>
|
90 |
</controllers>
|
91 |
<actions>
|
|
|
92 |
<action>sq_search_blog</action>
|
93 |
<action>sq_type_click</action>
|
94 |
</actions>
|
languages/squirrly-seo-de_DE.mo
CHANGED
Binary file
|
languages/squirrly-seo-de_DE.po
CHANGED
@@ -2,8 +2,8 @@ msgid ""
|
|
2 |
msgstr ""
|
3 |
"Project-Id-Version: Squirrly SEO Plugin v1.0.8\n"
|
4 |
"Report-Msgid-Bugs-To: \n"
|
5 |
-
"POT-Creation-Date:
|
6 |
-
"PO-Revision-Date:
|
7 |
"Last-Translator: Squirrly <contact@squirrly.co>\n"
|
8 |
"Language-Team: \n"
|
9 |
"Language: de_DE\n"
|
@@ -14,21 +14,13 @@ msgstr ""
|
|
14 |
"X-Poedit-SourceCharset: utf-8\n"
|
15 |
"X-Poedit-KeywordsList: __;_e;__ngettext:1,2;_n:1,2;__ngettext_noop:1,2;"
|
16 |
"_n_noop:1,2;_c,_nc:4c,1,2;_x:1,2c;_ex:1,2c;_nx:4c,1,2;_nx_noop:4c,1,2\n"
|
17 |
-
"X-Poedit-Basepath:
|
18 |
"X-Textdomain-Support: yes\n"
|
19 |
-
"X-Generator: Poedit 1.
|
20 |
"X-Poedit-SearchPath-0: .\n"
|
21 |
|
22 |
# @ squirrly-seo
|
23 |
-
#:
|
24 |
-
msgid ""
|
25 |
-
"For Squirrly to work, the PHP version has to be equal or greater then 5.1"
|
26 |
-
msgstr ""
|
27 |
-
"Damit Squirrly funktioniert, muss die PHP-Version gleich oder größer als 5.1 "
|
28 |
-
"sein"
|
29 |
-
|
30 |
-
# @ squirrly-seo
|
31 |
-
#: classes/SQ_Error.php:17
|
32 |
msgid ""
|
33 |
"Function get_class does not exists! Is required for Squirrly to work "
|
34 |
"properly."
|
@@ -37,7 +29,7 @@ msgstr ""
|
|
37 |
"richtig zu arbeiten."
|
38 |
|
39 |
# @ squirrly-seo
|
40 |
-
#: classes/SQ_Error.php:
|
41 |
msgid ""
|
42 |
"Function file_exists does not exists! Is required for Squirrly to work "
|
43 |
"properly."
|
@@ -46,91 +38,250 @@ msgstr ""
|
|
46 |
"richtig zu arbeiten."
|
47 |
|
48 |
# @ squirrly-seo
|
49 |
-
#: classes/SQ_Error.php:
|
50 |
msgid "The home directory is not set!"
|
51 |
msgstr "Das Home-Verzeichnis wurde nicht gesetzt!"
|
52 |
|
53 |
# @ squirrly-seo
|
54 |
-
#: classes/SQ_Error.php:
|
55 |
msgid "The PHP version has to be greater then 4.0"
|
56 |
msgstr "Die PHP-Version muß größer als 4.0 sein"
|
57 |
|
58 |
# @ squirrly-seo
|
59 |
-
#: classes/SQ_Error.php:
|
60 |
msgid "Turn off warnings!"
|
61 |
msgstr "Warnungen ausschalten!"
|
62 |
|
63 |
-
|
64 |
-
|
65 |
-
|
66 |
-
msgstr "Hinweis: "
|
67 |
|
68 |
-
|
69 |
-
|
70 |
-
|
71 |
-
msgstr "Notiz: "
|
72 |
|
73 |
# @ squirrly-seo
|
74 |
-
#: classes/SQ_Tools.php:
|
75 |
msgid "Fix it for me!"
|
76 |
msgstr "Beheben Sie es für mich!"
|
77 |
|
78 |
-
|
79 |
-
|
80 |
-
|
81 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
82 |
|
83 |
# @ squirrly-seo
|
84 |
-
#: classes/SQ_Tools.php:
|
85 |
msgid "You're blocking google from indexing your site!"
|
86 |
msgstr "Sie blockieren Google zum Indizieren Ihrer Website!"
|
87 |
|
88 |
-
|
89 |
-
#: classes/SQ_Tools.php:217
|
90 |
msgid ""
|
91 |
"It is highly recommended that you include the %postname% variable in the "
|
92 |
-
"permalink structure."
|
|
|
93 |
msgstr ""
|
94 |
-
"Es wird stark empfohlen, dass Sie die %postname% Variable in der Permalink-"
|
95 |
-
"Struktur einschließen."
|
96 |
|
97 |
-
|
98 |
-
|
99 |
-
|
100 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
101 |
|
102 |
# @ squirrly-seo
|
103 |
-
#:
|
104 |
msgid "Plugin Feedback"
|
105 |
msgstr "Plugin Feedback"
|
106 |
|
107 |
# @ squirrly-seo
|
108 |
-
#:
|
109 |
msgid "Thank you for your feedback"
|
110 |
msgstr "Vielen Dank für Ihre Feedback"
|
111 |
|
112 |
# @ squirrly-seo
|
113 |
-
#:
|
|
|
114 |
msgid "Could not send the email..."
|
115 |
msgstr "Konnte E-Mail nicht senden ..."
|
116 |
|
117 |
# @ squirrly-seo
|
118 |
-
#:
|
|
|
119 |
msgid "No message."
|
120 |
msgstr "Keine Nachricht."
|
121 |
|
122 |
# @ squirrly-seo
|
123 |
-
#:
|
124 |
msgid "Plugin Support"
|
125 |
msgstr "Plugin Support"
|
126 |
|
127 |
-
|
128 |
-
|
129 |
-
|
130 |
-
msgstr "Nachricht gesendet ..."
|
131 |
|
132 |
# @ squirrly-seo
|
133 |
-
#: core/SQ_Blocklogin/SQ_Blocklogin.php:
|
134 |
#, php-format
|
135 |
msgid ""
|
136 |
"We found your email, so it means you already have a Squirrly.co account. "
|
@@ -141,14 +292,15 @@ msgstr ""
|
|
141 |
"Sie sich mit Ihrer Squirrly-ID ein. Falls Sie Ihr Passwort vergessen haben, "
|
142 |
"klicken Sie %shier%s"
|
143 |
|
144 |
-
|
145 |
-
|
146 |
-
|
147 |
-
|
148 |
-
|
|
|
149 |
|
150 |
# @ squirrly-seo
|
151 |
-
#: core/SQ_Blocklogin/SQ_Blocklogin.php:
|
152 |
#, php-format
|
153 |
msgid ""
|
154 |
"Could not send your informations to squirrly. Please register %smanually%s."
|
@@ -157,38 +309,43 @@ msgstr ""
|
|
157 |
"%smanually%s."
|
158 |
|
159 |
# @ squirrly-seo
|
160 |
-
#: core/SQ_Blocklogin/SQ_Blocklogin.php:
|
161 |
msgid "Wrong email or password!"
|
162 |
msgstr "Benutzername oder Passwort falsch!"
|
163 |
|
164 |
# @ squirrly-seo
|
165 |
-
#: core/SQ_Blocklogin/SQ_Blocklogin.php:
|
166 |
msgid "You can use this account only for the URL you registered first!"
|
167 |
msgstr ""
|
168 |
"Dieses Konto können Sie nur für die URL benutzen, die Sie zuerst registriert "
|
169 |
"haben!"
|
170 |
|
171 |
# @ squirrly-seo
|
172 |
-
#: core/SQ_Blocklogin/SQ_Blocklogin.php:
|
|
|
|
|
|
|
|
|
|
|
173 |
msgid "Both fields are required."
|
174 |
msgstr "Beide Felder sind Pflichtfelder."
|
175 |
|
176 |
-
#: core/SQ_Blockresearch/SQ_Blockresearch.php:
|
177 |
msgid "Recent discussions:"
|
178 |
msgstr "Bisherige Diskussionen:"
|
179 |
|
180 |
# @ squirrly-seo
|
181 |
-
#: core/SQ_Blockresearch/SQ_Blockresearch.php:
|
182 |
msgid "Exact search:"
|
183 |
msgstr "Exakte Suche:"
|
184 |
|
185 |
# @ squirrly-seo
|
186 |
-
#: core/SQ_Blockresearch/SQ_Blockresearch.php:
|
187 |
msgid "Competition:"
|
188 |
msgstr "Wettbewerb:"
|
189 |
|
190 |
# @ squirrly-seo
|
191 |
-
#: core/SQ_Blockresearch/SQ_Blockresearch.php:
|
192 |
msgid "Trend:"
|
193 |
msgstr "Trend:"
|
194 |
|
@@ -217,140 +374,1825 @@ msgstr "Referenz"
|
|
217 |
msgid "Insert as box"
|
218 |
msgstr "Als Box einfügen"
|
219 |
|
220 |
-
# @ squirrly-seo
|
221 |
-
#: core/SQ_Blocksearch/SQ_Blocksearch.php:50
|
222 |
-
msgid "Not relevant?"
|
223 |
-
msgstr "Nicht relevant?"
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
224 |
|
225 |
-
|
226 |
-
|
227 |
-
|
228 |
-
msgstr "In Artikel einfügen"
|
229 |
|
230 |
-
|
231 |
-
|
232 |
-
|
233 |
-
msgstr "Damit Squirrly arbeitet, muss tinymce installiert sein!"
|
234 |
|
235 |
-
|
236 |
-
|
237 |
-
|
238 |
-
msgstr ":( Ich verlor meine Eichhörnchen. Laden Sie die Seite erneut."
|
239 |
|
240 |
-
|
241 |
-
|
242 |
-
|
243 |
-
msgstr "Keine Ergebnisse gefunden!"
|
244 |
|
245 |
-
|
246 |
-
|
247 |
-
|
248 |
-
msgstr "Zum Visual Editor wechseln !"
|
249 |
|
250 |
-
|
251 |
-
|
252 |
-
|
253 |
-
msgstr "Verwenden Sie mehrere Wörter in einem Schlüsselwort"
|
254 |
|
255 |
-
|
256 |
-
|
257 |
-
|
258 |
-
msgstr "Dauert zu lange, um dieses Schlüsselwort zu überprüfen ..."
|
259 |
|
260 |
-
|
261 |
-
|
262 |
-
msgid "
|
263 |
-
msgstr "
|
264 |
|
265 |
-
|
266 |
-
|
267 |
-
msgid "
|
268 |
-
msgstr "
|
269 |
|
270 |
-
|
271 |
-
|
272 |
-
msgid ""
|
273 |
-
"For Squirrly to work properly you have to use a higher version of Internet "
|
274 |
-
"Explorer. <br /> We recommend you to use Chrome or Mozilla."
|
275 |
msgstr ""
|
276 |
-
"Damit Squirrly ordnungsgemäß funktioniert, müssen Sie eine höhere Version "
|
277 |
-
"von Internet Explorer verwenden. <br /> Wir empfehlen, Chrome oder Mozilla."
|
278 |
|
279 |
-
|
280 |
-
|
281 |
-
msgid "
|
282 |
-
msgstr "
|
283 |
|
284 |
-
#:
|
285 |
-
msgid ""
|
286 |
-
"You haven`t used Squirrly SEO to optimize your article. Do you want to "
|
287 |
-
"optimize for a keyword before publishing?"
|
288 |
msgstr ""
|
289 |
-
"You haven`t used Squirrly SEO to optimize your article. Do you want to "
|
290 |
-
"optimize for a keyword before publishing?"
|
291 |
|
292 |
-
|
293 |
-
|
294 |
-
|
295 |
-
msgstr "Der Code für Google Webmaster Tool ist falsch."
|
296 |
|
297 |
# @ squirrly-seo
|
298 |
-
#:
|
299 |
-
msgid "
|
300 |
-
msgstr "
|
301 |
|
302 |
# @ squirrly-seo
|
303 |
-
#:
|
304 |
-
msgid "
|
305 |
-
msgstr "
|
306 |
|
307 |
# @ squirrly-seo
|
308 |
-
#:
|
309 |
-
msgid "
|
310 |
-
msgstr "
|
311 |
|
312 |
# @ squirrly-seo
|
313 |
-
#:
|
314 |
-
msgid "
|
315 |
-
msgstr "
|
316 |
|
317 |
# @ squirrly-seo
|
318 |
-
#:
|
319 |
-
msgid "
|
320 |
-
msgstr "
|
321 |
|
322 |
# @ squirrly-seo
|
323 |
-
#:
|
324 |
-
msgid "
|
325 |
-
msgstr "
|
326 |
|
327 |
# @ squirrly-seo
|
328 |
-
#:
|
329 |
-
msgid "
|
330 |
-
msgstr "
|
331 |
|
332 |
# @ squirrly-seo
|
333 |
-
#:
|
334 |
-
msgid "
|
335 |
-
msgstr "
|
336 |
|
337 |
# @ squirrly-seo
|
338 |
-
#:
|
339 |
-
msgid ""
|
340 |
-
"
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
341 |
msgstr ""
|
342 |
-
"ICO Fehler: konnte ICO aus der Datei nicht erstellen. Versuchen Sie es mit "
|
343 |
-
"einem anderen Dateityp."
|
344 |
|
345 |
# @ squirrly-seo
|
346 |
-
#:
|
347 |
-
msgid "
|
348 |
-
msgstr "
|
349 |
|
350 |
-
# @
|
351 |
-
#:
|
352 |
-
msgid "
|
353 |
-
msgstr "
|
|
|
|
|
|
|
|
|
|
|
354 |
|
355 |
# @ squirrly-seo
|
356 |
#: themes/default/SQ_Blocklogin.php:2
|
@@ -363,73 +2205,84 @@ msgid "Email:"
|
|
363 |
msgstr "Ihre E-Mail Adresse:"
|
364 |
|
365 |
# @ squirrly-seo
|
366 |
-
#: themes/default/SQ_Blocklogin.php:
|
367 |
msgid "Password:"
|
368 |
msgstr "Passwort:"
|
369 |
|
370 |
# @ squirrly-seo
|
371 |
-
#: themes/default/SQ_Blocklogin.php:
|
372 |
msgid "Login"
|
373 |
msgstr "Login"
|
374 |
|
375 |
# @ squirrly-seo
|
376 |
-
#: themes/default/SQ_Blocklogin.php:
|
377 |
msgid "Register"
|
378 |
msgstr "Registrieren"
|
379 |
|
380 |
# @ squirrly-seo
|
381 |
-
#: themes/default/SQ_Blocklogin.php:
|
382 |
msgid "Register to Squirrly.co"
|
383 |
msgstr "Bei Squirrly.co registrieren"
|
384 |
|
385 |
# @ squirrly-seo
|
386 |
-
#: themes/default/SQ_Blocklogin.php:
|
387 |
msgid "Lost password?"
|
388 |
msgstr "Passwort vergessen?"
|
389 |
|
390 |
# @ squirrly-seo
|
391 |
-
#: themes/default/SQ_Blocklogin.php:
|
392 |
msgid "Lost password"
|
393 |
msgstr "Passwort vergessen"
|
394 |
|
395 |
# @ squirrly-seo
|
396 |
-
#: themes/default/SQ_Blocklogin.php:
|
397 |
msgid "Enter your email"
|
398 |
msgstr "In Artikel einfügen"
|
399 |
|
400 |
-
|
401 |
-
|
402 |
-
|
403 |
-
msgstr "Ihre E-Mail Adresse:"
|
404 |
|
405 |
-
#: themes/default/SQ_Blocklogin.php:
|
406 |
msgid "Sign Up"
|
407 |
msgstr "Anmelden"
|
408 |
|
409 |
-
#: themes/default/SQ_Blocklogin.php:
|
|
|
|
|
|
|
|
|
410 |
msgid "This email connects you to Squirrly.co"
|
411 |
msgstr "This email connects you to Squirrly.co"
|
412 |
|
413 |
# @ squirrly-seo
|
414 |
-
#: themes/default/SQ_Blocklogin.php:
|
415 |
msgid "The email address is invalid!"
|
416 |
msgstr "Die E-Mail-Adresse ist ungültig!"
|
417 |
|
418 |
# @ squirrly-seo
|
419 |
-
#: themes/default/SQ_Blocklogin.php:
|
420 |
msgid "Click on Sign Up button and try again ..."
|
421 |
msgstr "Klicken Sie auf das Bild und versuchen Sie es erneut ..."
|
422 |
|
423 |
# @ squirrly-seo
|
424 |
-
#: themes/default/SQ_Blocklogin.php:
|
425 |
msgid "An error occured while logging in!"
|
426 |
msgstr "Bei der Anmeldung ist ein Fehler aufgetreten!"
|
427 |
|
428 |
# @ squirrly-seo
|
429 |
-
#: themes/default/SQ_Blocklogin.php:
|
430 |
msgid "Connecting ..."
|
431 |
msgstr "Verbinden ..."
|
432 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
433 |
# @ squirrly-seo
|
434 |
#: themes/default/SQ_Blockresearch.php:2
|
435 |
msgid "Squirrly Keyword Research"
|
@@ -441,416 +2294,321 @@ msgid "Clear"
|
|
441 |
msgstr "Löschen"
|
442 |
|
443 |
# @ squirrly-seo
|
444 |
-
#: themes/default/SQ_Blockresearch.php:
|
445 |
msgid "Keyword:"
|
446 |
msgstr "Schlüsselwort:"
|
447 |
|
448 |
# @ squirrly-seo
|
449 |
-
#: themes/default/SQ_Blockresearch.php:
|
450 |
msgid "Use this keyword"
|
451 |
msgstr "Dieses Schlüsselwort verwenden"
|
452 |
|
453 |
# @ squirrly-seo
|
454 |
-
#: themes/default/SQ_Blockresearch.php:
|
455 |
msgid "+ Add keyword"
|
456 |
msgstr "Fügen Sie ein anderes Schlüsselwort ein"
|
457 |
|
458 |
# @ squirrly-seo
|
459 |
-
#: themes/default/SQ_Blockresearch.php:
|
460 |
msgid "Do the research"
|
461 |
msgstr "Recherchieren"
|
462 |
|
463 |
# @ squirrly-seo
|
464 |
-
#: themes/default/SQ_Blockresearch.php:
|
465 |
msgid "Enter even more keywords."
|
466 |
msgstr "Geben Sie noch mehrere Schlüsselwörter ein."
|
467 |
|
468 |
# @ squirrly-seo
|
469 |
-
#: themes/default/SQ_Blockresearch.php:
|
470 |
msgid "Let some keywords for the next time as well!"
|
471 |
msgstr "Lassen Sie ein paar Schlüsselwörter auch für das nächste Mal!"
|
472 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
473 |
#: themes/default/SQ_Blocksearch.php:3
|
474 |
msgid "Optimize for Keyword"
|
475 |
msgstr "Schlüsselwort optimieren"
|
476 |
|
477 |
# @ squirrly-seo
|
478 |
-
#: themes/default/SQ_Blocksearch.php:
|
479 |
msgid "Enter a keyword"
|
480 |
msgstr "Ein Schlüsselwort eingeben"
|
481 |
|
482 |
# @ squirrly-seo
|
483 |
-
#: themes/default/SQ_Blocksearch.php:
|
484 |
msgid "for Squirrly Live SEO optimization"
|
485 |
msgstr "Live-SEO-Optimierung für Squirrly"
|
486 |
|
487 |
# @ squirrly-seo
|
488 |
-
#: themes/default/SQ_Blocksearch.php:
|
489 |
msgid "Do a research"
|
490 |
msgstr "Recherchieren"
|
491 |
|
492 |
# @ squirrly-seo
|
493 |
-
#: themes/default/SQ_Blocksearch.php:
|
494 |
msgid "Enter a keyword above!"
|
495 |
msgstr "Geben Sie oben ein Schlüsselwort ein!"
|
496 |
|
497 |
# @ squirrly-seo
|
498 |
-
#: themes/default/SQ_Blocksearch.php:
|
499 |
msgid "I have more then one keyword!"
|
500 |
msgstr "Ich habe mehr als ein Schlüsselwort!"
|
501 |
|
502 |
# @ squirrly-seo
|
503 |
-
#: themes/default/SQ_Blocksearch.php:
|
504 |
msgid "Images"
|
505 |
msgstr "Bilder"
|
506 |
|
507 |
# @ squirrly-seo
|
508 |
-
#: themes/default/SQ_Blocksearch.php:
|
509 |
msgid "Twitter"
|
510 |
msgstr "Twitter"
|
511 |
|
512 |
# @ squirrly-seo
|
513 |
-
#: themes/default/SQ_Blocksearch.php:
|
514 |
msgid "Wiki"
|
515 |
msgstr "Wiki"
|
516 |
|
517 |
# @ squirrly-seo
|
518 |
-
#: themes/default/SQ_Blocksearch.php:
|
519 |
msgid "News"
|
520 |
msgstr "News"
|
521 |
|
522 |
# @ squirrly-seo
|
523 |
-
#: themes/default/SQ_Blocksearch.php:
|
524 |
msgid "Blogs"
|
525 |
msgstr "Blogs"
|
526 |
|
527 |
# @ squirrly-seo
|
528 |
-
#: themes/default/SQ_Blocksearch.php:
|
529 |
msgid "My articles"
|
530 |
msgstr "Meine Artikel"
|
531 |
|
532 |
# @ squirrly-seo
|
533 |
-
#: themes/default/SQ_Blocksearch.php:
|
534 |
msgid "Show only Copyright Free images"
|
535 |
msgstr "Nur urheberrechtfreie Bilder zeigen"
|
536 |
|
537 |
-
# @ squirrly-seo
|
538 |
#: themes/default/SQ_Blockseo.php:3
|
539 |
-
msgid "Squirrly
|
540 |
-
msgstr "Squirrly LIVE SEO-Assistent"
|
541 |
-
|
542 |
-
# @ squirrly-seo
|
543 |
-
#: themes/default/SQ_Menu.php:5
|
544 |
-
msgid ""
|
545 |
-
"With Squirrly SEO, your Wordpress will get Perfect SEO on each article you "
|
546 |
-
"write."
|
547 |
msgstr ""
|
548 |
-
"Mit Squirrly SEO wird jeder Ihrer Wordpress Artikel eine perfekte "
|
549 |
-
"Suchmaschinenoptimierung erhalten. "
|
550 |
-
|
551 |
-
# @ squirrly-seo
|
552 |
-
#: themes/default/SQ_Menu.php:7
|
553 |
-
msgid "SEO Software"
|
554 |
-
msgstr "SEO Software"
|
555 |
|
556 |
-
|
557 |
-
|
558 |
-
msgid ""
|
559 |
-
"delivered as a plugin for Wordpress. <br /><br />We connect your wordpress "
|
560 |
-
"with Squirrly, so that we can find the best SEO opportunities, give you "
|
561 |
-
"reports and analyse your competitors."
|
562 |
msgstr ""
|
563 |
-
"geliefert als Plugin für Wordpress. <br /> <br /> Wir verbinden Ihr "
|
564 |
-
"Wordpress mit Squirrly, so dass wir die besten SEO-Möglichkeiten finden, "
|
565 |
-
"erstatten Ihnen Bericht und analysieren Ihre Konkurrenz."
|
566 |
-
|
567 |
-
# @ squirrly-seo
|
568 |
-
#: themes/default/SQ_Menu.php:9
|
569 |
-
msgid "Write a new post with Squirrly"
|
570 |
-
msgstr "Schreiben Sie einen neuen Beitrag mit Squirrly"
|
571 |
-
|
572 |
-
# @ squirrly-seo
|
573 |
-
#: themes/default/SQ_Menu.php:23
|
574 |
-
msgid "Squirrly settings"
|
575 |
-
msgstr "Squirrly Einstellungen"
|
576 |
-
|
577 |
-
# @ squirrly-seo
|
578 |
-
#: themes/default/SQ_Menu.php:23 themes/default/SQ_Menu.php:170
|
579 |
-
msgid "Save settings"
|
580 |
-
msgstr "Einstellungen speichern"
|
581 |
-
|
582 |
-
#: themes/default/SQ_Menu.php:29
|
583 |
-
msgid " API"
|
584 |
-
msgstr " API"
|
585 |
-
|
586 |
-
# @ squirrly-seo
|
587 |
-
#: themes/default/SQ_Menu.php:32
|
588 |
-
msgid "API Key:"
|
589 |
-
msgstr "API Key:"
|
590 |
-
|
591 |
-
# @ squirrly-seo
|
592 |
-
#: themes/default/SQ_Menu.php:38
|
593 |
-
msgid "Let Squirrly automatically optimize my blog"
|
594 |
-
msgstr "Lassen Sie Squirrly automatisch Ihren Blog optimieren"
|
595 |
-
|
596 |
-
# @ squirrly-seo
|
597 |
-
#: themes/default/SQ_Menu.php:41 themes/default/SQ_Menu.php:63
|
598 |
-
#: themes/default/SQ_Menu.php:76 themes/default/SQ_Menu.php:85
|
599 |
-
msgid "Yes"
|
600 |
-
msgstr "Ja"
|
601 |
-
|
602 |
-
# @ squirrly-seo
|
603 |
-
#: themes/default/SQ_Menu.php:42 themes/default/SQ_Menu.php:64
|
604 |
-
#: themes/default/SQ_Menu.php:77 themes/default/SQ_Menu.php:86
|
605 |
-
msgid "No"
|
606 |
-
msgstr "Nein"
|
607 |
-
|
608 |
-
# @ squirrly-seo
|
609 |
-
#: themes/default/SQ_Menu.php:46
|
610 |
-
msgid "What does Squirrly automatically do for SEO?"
|
611 |
-
msgstr "Was tut Squirrly automatisch für SEO?"
|
612 |
-
|
613 |
-
# @ squirrly-seo
|
614 |
-
#: themes/default/SQ_Menu.php:47
|
615 |
-
msgid "adds the correct <strong>title</strong> in the home page"
|
616 |
-
msgstr "fügt den richtigen <strong>Titel</strong> in die Startseite ein"
|
617 |
|
618 |
-
|
619 |
-
|
620 |
-
msgid ""
|
621 |
-
"adds the correct <strong>description</strong> and <strong>keywords</strong> "
|
622 |
-
"in all pages"
|
623 |
msgstr ""
|
624 |
-
"fügt die richtige <strong>Beschreibung</strong> und <strong>Schlüsselwörter</"
|
625 |
-
"strong> auf allen Seiten ein"
|
626 |
|
627 |
# @ squirrly-seo
|
628 |
-
|
629 |
-
|
630 |
-
msgstr "fügt den richtigen <strong>canonical</strong> in die Startseite ein"
|
631 |
|
632 |
# @ squirrly-seo
|
633 |
-
|
634 |
-
|
635 |
-
msgstr "fügt die <strong>XML Sitemap</strong> für Suchmaschinen ein"
|
636 |
|
637 |
# @ squirrly-seo
|
638 |
-
|
639 |
-
|
640 |
-
"adds the required METAs for home page (<strong>icon, author, language, dc "
|
641 |
-
"publisher</strong>, etc.)"
|
642 |
-
msgstr ""
|
643 |
-
"fügt die erforderlichen METAs für die Startseite (<strong> icon, Autor, "
|
644 |
-
"Sprache, dc Verlag </strong>, etc.) ein"
|
645 |
|
646 |
# @ squirrly-seo
|
647 |
-
|
648 |
-
|
649 |
-
"
|
650 |
-
"
|
651 |
-
|
652 |
-
"
|
653 |
-
"strong> ein."
|
654 |
|
655 |
# @ squirrly-seo
|
656 |
-
|
657 |
-
|
658 |
-
msgstr ""
|
659 |
-
"Squirrly warnen lassen, wenn es Fehler im Zusammenhang mit den SEO-"
|
660 |
-
"Einstellungen gibt"
|
661 |
|
662 |
# @ squirrly-seo
|
663 |
-
|
664 |
-
|
665 |
-
msgstr "Squirrly Optionen"
|
666 |
|
667 |
# @ squirrly-seo
|
668 |
-
|
669 |
-
|
670 |
-
"Show <strong>\"Enter a keyword\"</strong> bubble when posting a new article."
|
671 |
-
msgstr ""
|
672 |
-
"Zeige <strong>\"Enter a keyword\"</ strong> Bubble, bei einem neuen Artikel."
|
673 |
-
|
674 |
-
#: themes/default/SQ_Menu.php:82
|
675 |
-
msgid ""
|
676 |
-
"Always show <strong>Keyword Informations</strong> about the selected keyword."
|
677 |
-
msgstr ""
|
678 |
-
"Always show <strong>Keyword Informations</strong> about the selected keyword."
|
679 |
|
680 |
# @ squirrly-seo
|
681 |
-
|
682 |
-
|
683 |
-
msgstr "
|
684 |
|
685 |
# @ squirrly-seo
|
686 |
-
|
687 |
-
|
688 |
-
msgstr "Status:"
|
689 |
|
690 |
# @ squirrly-seo
|
691 |
-
|
692 |
-
|
693 |
-
msgstr "automatisch"
|
694 |
|
695 |
# @ squirrly-seo
|
696 |
-
|
697 |
-
|
698 |
-
msgstr "Ändern >>"
|
699 |
|
700 |
# @ squirrly-seo
|
701 |
-
|
702 |
-
|
703 |
-
|
|
|
|
|
|
|
704 |
|
705 |
# @ squirrly-seo
|
706 |
-
|
707 |
-
|
708 |
-
msgstr "Tipp: Länge 10-70 Charaktere"
|
709 |
|
710 |
# @ squirrly-seo
|
711 |
-
|
712 |
-
|
713 |
-
|
|
|
|
|
|
|
|
|
|
|
714 |
|
715 |
# @ squirrly-seo
|
716 |
-
|
717 |
-
|
718 |
-
msgstr "Tipp: Länge 70-255 Charaktere"
|
719 |
|
720 |
# @ squirrly-seo
|
721 |
-
|
722 |
-
|
723 |
-
msgstr "Schlüsselwörter:"
|
724 |
|
725 |
-
|
726 |
-
|
727 |
-
msgid "Tips: 2-4 keywords"
|
728 |
-
msgstr "Tipp: Länge 2-4 Schlüsselwörter"
|
729 |
|
730 |
# @ squirrly-seo
|
731 |
-
|
732 |
-
|
733 |
-
msgstr "<< Lass es automatisch"
|
734 |
|
735 |
# @ squirrly-seo
|
736 |
-
|
737 |
-
|
738 |
-
msgstr "Ändern Sie das Website-Symbol"
|
739 |
|
740 |
# @ squirrly-seo
|
741 |
-
|
742 |
-
|
743 |
-
msgstr "Dateitypen: JPG, JPEG, GIF und PNG."
|
744 |
|
745 |
# @ squirrly-seo
|
746 |
-
|
747 |
-
|
748 |
-
|
|
|
|
|
|
|
749 |
|
750 |
# @ squirrly-seo
|
751 |
-
|
752 |
-
|
753 |
-
msgstr "Hochladen"
|
754 |
|
755 |
# @ squirrly-seo
|
756 |
-
|
757 |
-
|
758 |
-
"If you don't see the new icon in your browser, empty the browser cache and "
|
759 |
-
"refresh the page."
|
760 |
-
msgstr ""
|
761 |
-
"Wenn Sie das neue Icon nicht in Ihrem Browser sehen, leeren Sie den Browser-"
|
762 |
-
"Cache und aktualisieren Sie die Seite."
|
763 |
|
764 |
# @ squirrly-seo
|
765 |
-
|
766 |
-
|
767 |
-
|
|
|
|
|
|
|
768 |
|
769 |
# @ squirrly-seo
|
770 |
-
|
771 |
-
|
772 |
-
|
|
|
|
|
|
|
773 |
|
774 |
# @ squirrly-seo
|
775 |
-
|
776 |
-
|
777 |
-
|
778 |
-
|
779 |
|
780 |
# @ squirrly-seo
|
781 |
-
|
782 |
-
|
783 |
-
msgid "Google %sAnalytics ID%s`:"
|
784 |
-
msgstr "Google %sAnalytics ID%s`:"
|
785 |
|
786 |
# @ squirrly-seo
|
787 |
-
|
788 |
-
|
789 |
-
|
790 |
-
msgstr "
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
791 |
|
792 |
# @ squirrly-seo
|
793 |
-
|
794 |
-
|
795 |
-
|
796 |
-
msgstr "Bing META Code (für %sWebmaster Tool%s )`:"
|
797 |
|
798 |
# @ squirrly-seo
|
799 |
-
|
800 |
-
|
801 |
-
msgstr "Wie war Ihre Squirrly Erfahrung heute?"
|
802 |
|
803 |
# @ squirrly-seo
|
804 |
-
|
805 |
-
|
806 |
-
msgstr "Wie war Squirrly heute?"
|
807 |
|
808 |
# @ squirrly-seo
|
809 |
-
|
810 |
-
|
811 |
-
msgstr "Bitte sagen Sie uns, warum?"
|
812 |
|
813 |
# @ squirrly-seo
|
814 |
-
|
815 |
-
|
816 |
-
msgstr "Feedback senden"
|
817 |
|
818 |
# @ squirrly-seo
|
819 |
-
|
820 |
-
|
821 |
-
msgstr "Gehe zu:"
|
822 |
|
823 |
# @ squirrly-seo
|
824 |
-
|
825 |
-
|
826 |
-
msgstr "Support Page"
|
827 |
|
828 |
# @ squirrly-seo
|
829 |
-
|
830 |
-
|
831 |
-
msgstr "Danke! Sie können uns auch morgen ein fröhliches Gesicht senden."
|
832 |
|
833 |
# @ squirrly-seo
|
834 |
-
|
835 |
-
|
836 |
-
msgstr "Support"
|
837 |
|
838 |
# @ squirrly-seo
|
839 |
-
|
840 |
-
|
841 |
-
msgstr "Brauchen Sie Hilfe mit Squirrly SEO?"
|
842 |
|
843 |
# @ squirrly-seo
|
844 |
-
|
845 |
-
|
846 |
-
msgstr "Senden Sie Ihre Frage"
|
847 |
|
848 |
# @ squirrly-seo
|
849 |
-
|
850 |
-
|
851 |
-
msgstr "Zum Profil"
|
852 |
|
853 |
# @ squirrly-seo
|
854 |
-
|
855 |
-
|
856 |
-
msgstr "Profil"
|
2 |
msgstr ""
|
3 |
"Project-Id-Version: Squirrly SEO Plugin v1.0.8\n"
|
4 |
"Report-Msgid-Bugs-To: \n"
|
5 |
+
"POT-Creation-Date: 2016-06-09 12:01+0300\n"
|
6 |
+
"PO-Revision-Date: 2016-06-09 12:01+0300\n"
|
7 |
"Last-Translator: Squirrly <contact@squirrly.co>\n"
|
8 |
"Language-Team: \n"
|
9 |
"Language: de_DE\n"
|
14 |
"X-Poedit-SourceCharset: utf-8\n"
|
15 |
"X-Poedit-KeywordsList: __;_e;__ngettext:1,2;_n:1,2;__ngettext_noop:1,2;"
|
16 |
"_n_noop:1,2;_c,_nc:4c,1,2;_x:1,2c;_ex:1,2c;_nx:4c,1,2;_nx_noop:4c,1,2\n"
|
17 |
+
"X-Poedit-Basepath: ..\n"
|
18 |
"X-Textdomain-Support: yes\n"
|
19 |
+
"X-Generator: Poedit 1.8.8\n"
|
20 |
"X-Poedit-SearchPath-0: .\n"
|
21 |
|
22 |
# @ squirrly-seo
|
23 |
+
#: classes/SQ_Error.php:16
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
24 |
msgid ""
|
25 |
"Function get_class does not exists! Is required for Squirrly to work "
|
26 |
"properly."
|
29 |
"richtig zu arbeiten."
|
30 |
|
31 |
# @ squirrly-seo
|
32 |
+
#: classes/SQ_Error.php:19
|
33 |
msgid ""
|
34 |
"Function file_exists does not exists! Is required for Squirrly to work "
|
35 |
"properly."
|
38 |
"richtig zu arbeiten."
|
39 |
|
40 |
# @ squirrly-seo
|
41 |
+
#: classes/SQ_Error.php:23
|
42 |
msgid "The home directory is not set!"
|
43 |
msgstr "Das Home-Verzeichnis wurde nicht gesetzt!"
|
44 |
|
45 |
# @ squirrly-seo
|
46 |
+
#: classes/SQ_Error.php:27
|
47 |
msgid "The PHP version has to be greater then 4.0"
|
48 |
msgstr "Die PHP-Version muß größer als 4.0 sein"
|
49 |
|
50 |
# @ squirrly-seo
|
51 |
+
#: classes/SQ_Error.php:59
|
52 |
msgid "Turn off warnings!"
|
53 |
msgstr "Warnungen ausschalten!"
|
54 |
|
55 |
+
#: classes/SQ_Error.php:67
|
56 |
+
msgid "Don't bother me!"
|
57 |
+
msgstr ""
|
|
|
58 |
|
59 |
+
#: classes/SQ_Tools.php:62
|
60 |
+
msgid "Getting started"
|
61 |
+
msgstr ""
|
|
|
62 |
|
63 |
# @ squirrly-seo
|
64 |
+
#: classes/SQ_Tools.php:589
|
65 |
msgid "Fix it for me!"
|
66 |
msgstr "Beheben Sie es für mich!"
|
67 |
|
68 |
+
#: classes/SQ_Tools.php:595
|
69 |
+
msgid "Activate the Squirrly SEO for your blog (recommended)"
|
70 |
+
msgstr ""
|
71 |
+
|
72 |
+
#: classes/SQ_Tools.php:606
|
73 |
+
msgid ""
|
74 |
+
"You have META Title Duplicates. Disable the Squirrly Title Optimization or "
|
75 |
+
"disable the other SEO Plugins"
|
76 |
+
msgstr ""
|
77 |
+
|
78 |
+
#: classes/SQ_Tools.php:614
|
79 |
+
msgid ""
|
80 |
+
"You have META Description Duplicates. Disable the Squirrly Description "
|
81 |
+
"Optimization or disable the other SEO Plugins"
|
82 |
+
msgstr ""
|
83 |
+
|
84 |
+
#: classes/SQ_Tools.php:622
|
85 |
+
msgid ""
|
86 |
+
"You have Open Graph META Duplicates. Disable the Squirrly SEO Open Graph or "
|
87 |
+
"disable the other SEO Plugins"
|
88 |
+
msgstr ""
|
89 |
+
|
90 |
+
#: classes/SQ_Tools.php:630
|
91 |
+
msgid ""
|
92 |
+
"You have Twitter Card META Duplicates. Disable the Squirrly SEO Twitter Card "
|
93 |
+
"or disable the other SEO Plugins"
|
94 |
+
msgstr ""
|
95 |
|
96 |
# @ squirrly-seo
|
97 |
+
#: classes/SQ_Tools.php:639
|
98 |
msgid "You're blocking google from indexing your site!"
|
99 |
msgstr "Sie blockieren Google zum Indizieren Ihrer Website!"
|
100 |
|
101 |
+
#: classes/SQ_Tools.php:646
|
|
|
102 |
msgid ""
|
103 |
"It is highly recommended that you include the %postname% variable in the "
|
104 |
+
"permalink structure. <br />Go to Settings > Permalinks and add /%postname%/ "
|
105 |
+
"in Custom Structure"
|
106 |
msgstr ""
|
|
|
|
|
107 |
|
108 |
+
#: classes/SQ_Tools.php:652
|
109 |
+
msgid "Great! We didn't find any issue in your site."
|
110 |
+
msgstr ""
|
111 |
+
|
112 |
+
#: controllers/SQ_Menu.php:58
|
113 |
+
msgid "See Your Rank on Google"
|
114 |
+
msgstr ""
|
115 |
+
|
116 |
+
#: controllers/SQ_Menu.php:87
|
117 |
+
msgid ""
|
118 |
+
"Check out the Squirrly Analytics section. <a href=\"admin.php?page=sq_posts"
|
119 |
+
"\" title=\"Squirrly Analytics\">Click here</a>"
|
120 |
+
msgstr ""
|
121 |
+
|
122 |
+
#: controllers/SQ_Menu.php:107
|
123 |
+
msgid " dashboard"
|
124 |
+
msgstr ""
|
125 |
+
|
126 |
+
#: controllers/SQ_Menu.php:108
|
127 |
+
msgid "First Step"
|
128 |
+
msgstr ""
|
129 |
+
|
130 |
+
#: controllers/SQ_Menu.php:108
|
131 |
+
msgid "Dashboard"
|
132 |
+
msgstr ""
|
133 |
+
|
134 |
+
#: controllers/SQ_Menu.php:115
|
135 |
+
msgid " post list"
|
136 |
+
msgstr ""
|
137 |
+
|
138 |
+
#: controllers/SQ_Menu.php:116
|
139 |
+
msgid "Performance <br />Analytics"
|
140 |
+
msgstr ""
|
141 |
+
|
142 |
+
#: controllers/SQ_Menu.php:125
|
143 |
+
msgid " settings"
|
144 |
+
msgstr ""
|
145 |
+
|
146 |
+
#: controllers/SQ_Menu.php:126 themes/default/SQ_BlockSettingsSeo.php:5
|
147 |
+
msgid "SEO"
|
148 |
+
msgstr ""
|
149 |
+
|
150 |
+
#: controllers/SQ_Menu.php:133
|
151 |
+
msgid " Settings"
|
152 |
+
msgstr ""
|
153 |
+
|
154 |
+
#: controllers/SQ_Menu.php:134 themes/default/SQ_BlockSettings.php:5
|
155 |
+
msgid "Settings"
|
156 |
+
msgstr ""
|
157 |
+
|
158 |
+
#: controllers/SQ_Menu.php:141
|
159 |
+
msgid " account info"
|
160 |
+
msgstr ""
|
161 |
+
|
162 |
+
#: controllers/SQ_Menu.php:142
|
163 |
+
msgid "Account Info"
|
164 |
+
msgstr ""
|
165 |
+
|
166 |
+
#: controllers/SQ_Menu.php:150
|
167 |
+
msgid "Become an Affiliate with "
|
168 |
+
msgstr ""
|
169 |
+
|
170 |
+
#: controllers/SQ_Menu.php:151
|
171 |
+
msgid "Affiliate plan"
|
172 |
+
msgstr ""
|
173 |
+
|
174 |
+
#: controllers/SQ_PostsList.php:95
|
175 |
+
msgid "Squirrly"
|
176 |
+
msgstr ""
|
177 |
+
|
178 |
+
#: controllers/SQ_PostsList.php:130
|
179 |
+
msgid "Custom description: "
|
180 |
+
msgstr ""
|
181 |
+
|
182 |
+
#: controllers/SQ_PostsList.php:130
|
183 |
+
msgid "Custom title: "
|
184 |
+
msgstr ""
|
185 |
+
|
186 |
+
#: controllers/SQ_PostsList.php:166
|
187 |
+
msgid "SEO Analytics, by Squirrly"
|
188 |
+
msgstr ""
|
189 |
+
|
190 |
+
#: controllers/SQ_PostsList.php:167 core/SQ_Blockseo/SQ_Blockseo.php:25
|
191 |
+
msgid "Update"
|
192 |
+
msgstr ""
|
193 |
+
|
194 |
+
#: controllers/SQ_PostsList.php:171
|
195 |
+
msgid "Not Public"
|
196 |
+
msgstr ""
|
197 |
+
|
198 |
+
#: controllers/SQ_PostsList.php:172
|
199 |
+
msgid "Could not process"
|
200 |
+
msgstr ""
|
201 |
+
|
202 |
+
#: controllers/SQ_PostsList.php:319 controllers/SQ_PostsList.php:333
|
203 |
+
#: models/SQ_BlockPostsAnalytics.php:399
|
204 |
+
msgid "Could not receive data from google (Err: blocked IP)"
|
205 |
+
msgstr ""
|
206 |
+
|
207 |
+
#: controllers/SQ_PostsList.php:321 models/SQ_BlockPostsAnalytics.php:401
|
208 |
+
msgid "> 100"
|
209 |
+
msgstr ""
|
210 |
+
|
211 |
+
#: controllers/SQ_PostsList.php:323 models/SQ_BlockPostsAnalytics.php:403
|
212 |
+
msgid "URL Indexed"
|
213 |
+
msgstr ""
|
214 |
+
|
215 |
+
#: controllers/SQ_PostsList.php:325 models/SQ_BlockPostsAnalytics.php:405
|
216 |
+
#, php-format
|
217 |
+
msgid "%s"
|
218 |
+
msgstr ""
|
219 |
+
|
220 |
+
#: core/SQ_BlockAffiliate/SQ_BlockAffiliate.php:38
|
221 |
+
#, php-format
|
222 |
+
msgid "Error: %s"
|
223 |
+
msgstr ""
|
224 |
+
|
225 |
+
#: core/SQ_BlockAffiliate/SQ_BlockAffiliate.php:41
|
226 |
+
msgid "An error occured. Mabe a network error :("
|
227 |
+
msgstr ""
|
228 |
+
|
229 |
+
#: core/SQ_BlockSettingsSeo/SQ_BlockSettingsSeo.php:13
|
230 |
+
#: core/SQ_Blockseo/SQ_Blockseo.php:21
|
231 |
+
msgid "Too short"
|
232 |
+
msgstr ""
|
233 |
+
|
234 |
+
#: core/SQ_BlockSettingsSeo/SQ_BlockSettingsSeo.php:14
|
235 |
+
#: core/SQ_Blockseo/SQ_Blockseo.php:22
|
236 |
+
msgid "Too long"
|
237 |
+
msgstr ""
|
238 |
+
|
239 |
+
#: core/SQ_BlockSettingsSeo/SQ_BlockSettingsSeo.php:266
|
240 |
+
msgid "Great! The backup is restored."
|
241 |
+
msgstr ""
|
242 |
+
|
243 |
+
#: core/SQ_BlockSettingsSeo/SQ_BlockSettingsSeo.php:268
|
244 |
+
#: core/SQ_BlockSettingsSeo/SQ_BlockSettingsSeo.php:271
|
245 |
+
msgid "Error! The backup is not valid."
|
246 |
+
msgstr ""
|
247 |
+
|
248 |
+
#: core/SQ_BlockSettingsSeo/SQ_BlockSettingsSeo.php:274
|
249 |
+
msgid "Error! You have to enter a previous saved backup file."
|
250 |
+
msgstr ""
|
251 |
|
252 |
# @ squirrly-seo
|
253 |
+
#: core/SQ_BlockSupport/SQ_BlockSupport.php:22
|
254 |
msgid "Plugin Feedback"
|
255 |
msgstr "Plugin Feedback"
|
256 |
|
257 |
# @ squirrly-seo
|
258 |
+
#: core/SQ_BlockSupport/SQ_BlockSupport.php:58
|
259 |
msgid "Thank you for your feedback"
|
260 |
msgstr "Vielen Dank für Ihre Feedback"
|
261 |
|
262 |
# @ squirrly-seo
|
263 |
+
#: core/SQ_BlockSupport/SQ_BlockSupport.php:61
|
264 |
+
#: core/SQ_BlockSupport/SQ_BlockSupport.php:99
|
265 |
msgid "Could not send the email..."
|
266 |
msgstr "Konnte E-Mail nicht senden ..."
|
267 |
|
268 |
# @ squirrly-seo
|
269 |
+
#: core/SQ_BlockSupport/SQ_BlockSupport.php:65
|
270 |
+
#: core/SQ_BlockSupport/SQ_BlockSupport.php:103
|
271 |
msgid "No message."
|
272 |
msgstr "Keine Nachricht."
|
273 |
|
274 |
# @ squirrly-seo
|
275 |
+
#: core/SQ_BlockSupport/SQ_BlockSupport.php:85
|
276 |
msgid "Plugin Support"
|
277 |
msgstr "Plugin Support"
|
278 |
|
279 |
+
#: core/SQ_BlockSupport/SQ_BlockSupport.php:96
|
280 |
+
msgid "Message sent. Thank you!"
|
281 |
+
msgstr ""
|
|
|
282 |
|
283 |
# @ squirrly-seo
|
284 |
+
#: core/SQ_Blocklogin/SQ_Blocklogin.php:81
|
285 |
#, php-format
|
286 |
msgid ""
|
287 |
"We found your email, so it means you already have a Squirrly.co account. "
|
292 |
"Sie sich mit Ihrer Squirrly-ID ein. Falls Sie Ihr Passwort vergessen haben, "
|
293 |
"klicken Sie %shier%s"
|
294 |
|
295 |
+
#: core/SQ_Blocklogin/SQ_Blocklogin.php:86
|
296 |
+
msgid ""
|
297 |
+
"Error: Couldn't connect to host :( . Please contact your site's webhost (or "
|
298 |
+
"webmaster) and request them to add http://api.squirrly.co/ to their IP "
|
299 |
+
"whitelist."
|
300 |
+
msgstr ""
|
301 |
|
302 |
# @ squirrly-seo
|
303 |
+
#: core/SQ_Blocklogin/SQ_Blocklogin.php:89
|
304 |
#, php-format
|
305 |
msgid ""
|
306 |
"Could not send your informations to squirrly. Please register %smanually%s."
|
309 |
"%smanually%s."
|
310 |
|
311 |
# @ squirrly-seo
|
312 |
+
#: core/SQ_Blocklogin/SQ_Blocklogin.php:129
|
313 |
msgid "Wrong email or password!"
|
314 |
msgstr "Benutzername oder Passwort falsch!"
|
315 |
|
316 |
# @ squirrly-seo
|
317 |
+
#: core/SQ_Blocklogin/SQ_Blocklogin.php:132
|
318 |
msgid "You can use this account only for the URL you registered first!"
|
319 |
msgstr ""
|
320 |
"Dieses Konto können Sie nur für die URL benutzen, die Sie zuerst registriert "
|
321 |
"haben!"
|
322 |
|
323 |
# @ squirrly-seo
|
324 |
+
#: core/SQ_Blocklogin/SQ_Blocklogin.php:137
|
325 |
+
msgid "An error occured."
|
326 |
+
msgstr "Ein Fehler ist aufgetreten."
|
327 |
+
|
328 |
+
# @ squirrly-seo
|
329 |
+
#: core/SQ_Blocklogin/SQ_Blocklogin.php:139
|
330 |
msgid "Both fields are required."
|
331 |
msgstr "Beide Felder sind Pflichtfelder."
|
332 |
|
333 |
+
#: core/SQ_Blockresearch/SQ_Blockresearch.php:13
|
334 |
msgid "Recent discussions:"
|
335 |
msgstr "Bisherige Diskussionen:"
|
336 |
|
337 |
# @ squirrly-seo
|
338 |
+
#: core/SQ_Blockresearch/SQ_Blockresearch.php:13
|
339 |
msgid "Exact search:"
|
340 |
msgstr "Exakte Suche:"
|
341 |
|
342 |
# @ squirrly-seo
|
343 |
+
#: core/SQ_Blockresearch/SQ_Blockresearch.php:13
|
344 |
msgid "Competition:"
|
345 |
msgstr "Wettbewerb:"
|
346 |
|
347 |
# @ squirrly-seo
|
348 |
+
#: core/SQ_Blockresearch/SQ_Blockresearch.php:13
|
349 |
msgid "Trend:"
|
350 |
msgstr "Trend:"
|
351 |
|
374 |
msgid "Insert as box"
|
375 |
msgstr "Als Box einfügen"
|
376 |
|
377 |
+
# @ squirrly-seo
|
378 |
+
#: core/SQ_Blocksearch/SQ_Blocksearch.php:50
|
379 |
+
msgid "Not relevant?"
|
380 |
+
msgstr "Nicht relevant?"
|
381 |
+
|
382 |
+
# @ squirrly-seo
|
383 |
+
#: core/SQ_Blocksearch/SQ_Blocksearch.php:50
|
384 |
+
msgid "Insert in your article"
|
385 |
+
msgstr "In Artikel einfügen"
|
386 |
+
|
387 |
+
# @ squirrly-seo
|
388 |
+
#: core/SQ_Blocksearch/SQ_Blocksearch.php:50
|
389 |
+
msgid "For Squirrly to work, you have to have tinymce editor installed!"
|
390 |
+
msgstr "Damit Squirrly arbeitet, muss tinymce installiert sein!"
|
391 |
+
|
392 |
+
# @ squirrly-seo
|
393 |
+
#: core/SQ_Blocksearch/SQ_Blocksearch.php:50
|
394 |
+
msgid ":( I lost my squirrel. Please reload the page."
|
395 |
+
msgstr ":( Ich verlor meine Eichhörnchen. Laden Sie die Seite erneut."
|
396 |
+
|
397 |
+
# @ squirrly-seo
|
398 |
+
#: core/SQ_Blocksearch/SQ_Blocksearch.php:50
|
399 |
+
msgid "No results found!"
|
400 |
+
msgstr "Keine Ergebnisse gefunden!"
|
401 |
+
|
402 |
+
# @ squirrly-seo
|
403 |
+
#: core/SQ_Blocksearch/SQ_Blocksearch.php:50
|
404 |
+
msgid "Switch to Visual editor!"
|
405 |
+
msgstr "Zum Visual Editor wechseln !"
|
406 |
+
|
407 |
+
#: core/SQ_Blocksearch/SQ_Blocksearch.php:50
|
408 |
+
msgid "Enter one more word to find relevant results"
|
409 |
+
msgstr ""
|
410 |
+
|
411 |
+
# @ squirrly-seo
|
412 |
+
#: core/SQ_Blocksearch/SQ_Blocksearch.php:50
|
413 |
+
msgid "Takes too long to check this keyword ..."
|
414 |
+
msgstr "Dauert zu lange, um dieses Schlüsselwort zu überprüfen ..."
|
415 |
+
|
416 |
+
# @ squirrly-seo
|
417 |
+
#: core/SQ_Blocksearch/SQ_Blocksearch.php:50
|
418 |
+
msgid "Do a research!"
|
419 |
+
msgstr "Erweiterte Suche!"
|
420 |
+
|
421 |
+
# @ squirrly-seo
|
422 |
+
#: core/SQ_Blocksearch/SQ_Blocksearch.php:50
|
423 |
+
msgid "Do more research!"
|
424 |
+
msgstr "Erweiterte Suche!"
|
425 |
+
|
426 |
+
#: core/SQ_Blocksearch/SQ_Blocksearch.php:50
|
427 |
+
#, php-format
|
428 |
+
msgid "[ ATTRIBUTE: Please check: %s to find out how to attribute this image ]"
|
429 |
+
msgstr ""
|
430 |
+
|
431 |
+
#: core/SQ_Blocksearch/SQ_Blocksearch.php:50
|
432 |
+
msgid "Has creative commons attributes"
|
433 |
+
msgstr ""
|
434 |
+
|
435 |
+
#: core/SQ_Blocksearch/SQ_Blocksearch.php:50
|
436 |
+
msgid "No known copyright restrictions"
|
437 |
+
msgstr ""
|
438 |
+
|
439 |
+
#: core/SQ_Blockseo/SQ_Blockseo.php:15
|
440 |
+
msgid "Save changes"
|
441 |
+
msgstr ""
|
442 |
+
|
443 |
+
#: core/SQ_Blockseo/SQ_Blockseo.php:16
|
444 |
+
msgid "Cancel"
|
445 |
+
msgstr ""
|
446 |
+
|
447 |
+
#: core/SQ_Blockseo/SQ_Blockseo.php:17
|
448 |
+
msgid "Reset"
|
449 |
+
msgstr ""
|
450 |
+
|
451 |
+
#: core/SQ_Blockseo/SQ_Blockseo.php:19
|
452 |
+
msgid "Customize Meta"
|
453 |
+
msgstr ""
|
454 |
+
|
455 |
+
#: core/SQ_Blockseo/SQ_Blockseo.php:20
|
456 |
+
msgid "manage keywords"
|
457 |
+
msgstr ""
|
458 |
+
|
459 |
+
#: core/SQ_Blockseo/SQ_Blockseo.php:24
|
460 |
+
#: themes/default/SQ_BlockSettingsSeo.php:227
|
461 |
+
msgid "Squirrly Snippet"
|
462 |
+
msgstr ""
|
463 |
+
|
464 |
+
#: core/SQ_Blockseo/SQ_Blockseo.php:26
|
465 |
+
msgid "snippet"
|
466 |
+
msgstr ""
|
467 |
+
|
468 |
+
#: core/SQ_Blockseo/SQ_Blockseo.php:28
|
469 |
+
msgid ""
|
470 |
+
"Click the Update button (to the right) to see the snippet from your website."
|
471 |
+
msgstr ""
|
472 |
+
|
473 |
+
#: core/SQ_Blockseo/SQ_Blockseo.php:29
|
474 |
+
msgid "Enter a title above for the snippet to get data."
|
475 |
+
msgstr ""
|
476 |
+
|
477 |
+
# @ squirrly-seo
|
478 |
+
#: core/SQ_Loading/SQ_Loading.php:21
|
479 |
+
msgid ""
|
480 |
+
"For Squirrly to work properly you have to use a higher version of Internet "
|
481 |
+
"Explorer. <br /> We recommend you to use Chrome or Mozilla."
|
482 |
+
msgstr ""
|
483 |
+
"Damit Squirrly ordnungsgemäß funktioniert, müssen Sie eine höhere Version "
|
484 |
+
"von Internet Explorer verwenden. <br /> Wir empfehlen, Chrome oder Mozilla."
|
485 |
+
|
486 |
+
#: core/SQ_Loading/SQ_Loading.php:36
|
487 |
+
msgid ""
|
488 |
+
"You haven`t used Squirrly SEO to optimize your article. Do you want to "
|
489 |
+
"optimize for a keyword before publishing?"
|
490 |
+
msgstr ""
|
491 |
+
"You haven`t used Squirrly SEO to optimize your article. Do you want to "
|
492 |
+
"optimize for a keyword before publishing?"
|
493 |
+
|
494 |
+
#: models/SQ_BlockPostsAnalytics.php:275
|
495 |
+
msgctxt "column name"
|
496 |
+
msgid "Title"
|
497 |
+
msgstr ""
|
498 |
+
|
499 |
+
#: models/SQ_BlockPostsAnalytics.php:277
|
500 |
+
msgid "Type"
|
501 |
+
msgstr ""
|
502 |
+
|
503 |
+
#: models/SQ_BlockPostsAnalytics.php:280
|
504 |
+
msgid "Author"
|
505 |
+
msgstr ""
|
506 |
+
|
507 |
+
#: models/SQ_BlockPostsAnalytics.php:283
|
508 |
+
msgid "Keywords"
|
509 |
+
msgstr ""
|
510 |
+
|
511 |
+
#: models/SQ_BlockPostsAnalytics.php:285
|
512 |
+
#, php-format
|
513 |
+
msgid "Google.%s Position"
|
514 |
+
msgstr ""
|
515 |
+
|
516 |
+
#: models/SQ_BlockPostsAnalytics.php:287
|
517 |
+
msgid "Date"
|
518 |
+
msgstr ""
|
519 |
+
|
520 |
+
#: models/SQ_BlockPostsAnalytics.php:300
|
521 |
+
msgid "Reset Filters"
|
522 |
+
msgstr ""
|
523 |
+
|
524 |
+
#: models/SQ_BlockPostsAnalytics.php:359
|
525 |
+
#, php-format
|
526 |
+
msgid "Edit “%s”"
|
527 |
+
msgstr ""
|
528 |
+
|
529 |
+
#: models/SQ_BlockPostsAnalytics.php:362
|
530 |
+
msgid "Edit this item"
|
531 |
+
msgstr ""
|
532 |
+
|
533 |
+
#: models/SQ_BlockPostsAnalytics.php:362
|
534 |
+
msgid "Edit"
|
535 |
+
msgstr ""
|
536 |
+
|
537 |
+
#: models/SQ_BlockPostsAnalytics.php:367
|
538 |
+
#, php-format
|
539 |
+
msgid "Preview “%s”"
|
540 |
+
msgstr ""
|
541 |
+
|
542 |
+
#: models/SQ_BlockPostsAnalytics.php:367
|
543 |
+
msgid "Preview"
|
544 |
+
msgstr ""
|
545 |
+
|
546 |
+
#: models/SQ_BlockPostsAnalytics.php:369
|
547 |
+
#, php-format
|
548 |
+
msgid "View “%s”"
|
549 |
+
msgstr ""
|
550 |
+
|
551 |
+
#: models/SQ_BlockPostsAnalytics.php:369
|
552 |
+
msgid "View"
|
553 |
+
msgstr ""
|
554 |
+
|
555 |
+
#: models/SQ_BlockPostsAnalytics.php:391
|
556 |
+
msgid "No Tags"
|
557 |
+
msgstr ""
|
558 |
+
|
559 |
+
#: models/SQ_BlockPostsAnalytics.php:407
|
560 |
+
msgid "Force recheck"
|
561 |
+
msgstr ""
|
562 |
+
|
563 |
+
#: models/SQ_BlockPostsAnalytics.php:409
|
564 |
+
msgid "Not yet verified"
|
565 |
+
msgstr ""
|
566 |
+
|
567 |
+
#: models/SQ_BlockPostsAnalytics.php:409
|
568 |
+
msgid "Check now"
|
569 |
+
msgstr ""
|
570 |
+
|
571 |
+
#: models/SQ_BlockPostsAnalytics.php:422
|
572 |
+
msgid "Unpublished"
|
573 |
+
msgstr ""
|
574 |
+
|
575 |
+
#: models/SQ_BlockPostsAnalytics.php:431
|
576 |
+
#, php-format
|
577 |
+
msgid "%s ago"
|
578 |
+
msgstr ""
|
579 |
+
|
580 |
+
#: models/SQ_BlockPostsAnalytics.php:433
|
581 |
+
msgid "Y/m/d"
|
582 |
+
msgstr ""
|
583 |
+
|
584 |
+
#: models/SQ_BlockPostsAnalytics.php:438
|
585 |
+
msgid "Published"
|
586 |
+
msgstr ""
|
587 |
+
|
588 |
+
#: models/SQ_BlockPostsAnalytics.php:441
|
589 |
+
msgid "Missed schedule"
|
590 |
+
msgstr ""
|
591 |
+
|
592 |
+
#: models/SQ_BlockPostsAnalytics.php:443
|
593 |
+
msgid "Scheduled"
|
594 |
+
msgstr ""
|
595 |
+
|
596 |
+
#: models/SQ_BlockPostsAnalytics.php:445
|
597 |
+
msgid "Last Modified"
|
598 |
+
msgstr ""
|
599 |
+
|
600 |
+
# @ squirrly-seo
|
601 |
+
#: models/SQ_BlockSettingsSeo.php:57
|
602 |
+
msgid "The code for Google Webmaster Tool is incorrect."
|
603 |
+
msgstr "Der Code für Google Webmaster Tool ist falsch."
|
604 |
+
|
605 |
+
# @ squirrly-seo
|
606 |
+
#: models/SQ_BlockSettingsSeo.php:83
|
607 |
+
msgid "The code for Google Analytics is incorrect."
|
608 |
+
msgstr "Der Code für Google Analytics ist falsch."
|
609 |
+
|
610 |
+
# @ squirrly-seo
|
611 |
+
#: models/SQ_BlockSettingsSeo.php:134
|
612 |
+
msgid "The code for Facebook is incorrect."
|
613 |
+
msgstr "Der Code für Facebook ist falsch."
|
614 |
+
|
615 |
+
#: models/SQ_BlockSettingsSeo.php:158
|
616 |
+
msgid "The code for Pinterest is incorrect."
|
617 |
+
msgstr ""
|
618 |
+
|
619 |
+
# @ squirrly-seo
|
620 |
+
#: models/SQ_BlockSettingsSeo.php:181
|
621 |
+
msgid "The code for Bing is incorrect."
|
622 |
+
msgstr "Der Code für Bing ist falsch."
|
623 |
+
|
624 |
+
#: models/SQ_BlockSettingsSeo.php:194
|
625 |
+
msgid "The twitter account is incorrect"
|
626 |
+
msgstr ""
|
627 |
+
|
628 |
+
#: models/SQ_BlockSettingsSeo.php:271
|
629 |
+
msgid "File type error: Only ICO, JPEG, JPG, GIF or PNG files are allowed."
|
630 |
+
msgstr ""
|
631 |
+
|
632 |
+
# @ squirrly-seo
|
633 |
+
#: models/SQ_BlockSettingsSeo.php:277
|
634 |
+
msgid "GD error: The GD library must be installed on your server."
|
635 |
+
msgstr "GD Fehler: Die GD-Bibliothek muss auf dem Server installiert werden."
|
636 |
+
|
637 |
+
# @ squirrly-seo
|
638 |
+
#: models/SQ_BlockSettingsSeo.php:283
|
639 |
+
msgid "Delete error: Could not delete the old favicon."
|
640 |
+
msgstr "Lösch Fehler: Konnte das alte Favicon nicht löschen."
|
641 |
+
|
642 |
+
# @ squirrly-seo
|
643 |
+
#: models/SQ_BlockSettingsSeo.php:290
|
644 |
+
msgid "Upload error: Could not upload the favicon."
|
645 |
+
msgstr "Upload Fehler: Konnte das Favicon nicht hochladen."
|
646 |
+
|
647 |
+
# @ squirrly-seo
|
648 |
+
#: models/SQ_BlockSettingsSeo.php:296
|
649 |
+
msgid "Permission error: Could not change the favicon permissions."
|
650 |
+
msgstr "Permission Fehler: Konnte Favicon-Berechtigungen nicht ändern."
|
651 |
+
|
652 |
+
# @ squirrly-seo
|
653 |
+
#: models/SQ_BlockSettingsSeo.php:318
|
654 |
+
msgid ""
|
655 |
+
"ICO Error: Could not create the ICO from file. Try with another file type."
|
656 |
+
msgstr ""
|
657 |
+
"ICO Fehler: konnte ICO aus der Datei nicht erstellen. Versuchen Sie es mit "
|
658 |
+
"einem anderen Dateityp."
|
659 |
+
|
660 |
+
# @ squirrly-seo
|
661 |
+
#: models/SQ_BlockSettingsSeo.php:337
|
662 |
+
msgid "The favicon has been updated."
|
663 |
+
msgstr "Das Favicon wurde aktualisiert."
|
664 |
+
|
665 |
+
#: models/SQ_Frontend.php:496 models/SQ_Frontend.php:506
|
666 |
+
#: models/SQ_Frontend.php:511 models/SQ_Frontend.php:533
|
667 |
+
#: models/SQ_Frontend.php:730 models/SQ_Frontend.php:744
|
668 |
+
#: models/SQ_Frontend.php:753 models/SQ_Frontend.php:779
|
669 |
+
msgid "Page"
|
670 |
+
msgstr ""
|
671 |
+
|
672 |
+
#: models/SQ_Frontend.php:503
|
673 |
+
msgid "About"
|
674 |
+
msgstr ""
|
675 |
+
|
676 |
+
# @ default
|
677 |
+
#: models/SQ_Post.php:69
|
678 |
+
msgid "Squirrly could not find any results for: "
|
679 |
+
msgstr "Squirly hat keine Suchergebnisse gefunden für:"
|
680 |
+
|
681 |
+
#: models/SQ_Post.php:132
|
682 |
+
msgid "The uploaded file exceeds the upload_max_filesize directive in php.ini."
|
683 |
+
msgstr ""
|
684 |
+
|
685 |
+
#: models/SQ_Post.php:133
|
686 |
+
msgid ""
|
687 |
+
"The uploaded file exceeds the MAX_FILE_SIZE directive that was specified in "
|
688 |
+
"the HTML form."
|
689 |
+
msgstr ""
|
690 |
+
|
691 |
+
#: models/SQ_Post.php:134
|
692 |
+
msgid "The uploaded file was only partially uploaded."
|
693 |
+
msgstr ""
|
694 |
+
|
695 |
+
#: models/SQ_Post.php:135
|
696 |
+
msgid "No file was uploaded."
|
697 |
+
msgstr ""
|
698 |
+
|
699 |
+
#: models/SQ_Post.php:137
|
700 |
+
msgid "Missing a temporary folder."
|
701 |
+
msgstr ""
|
702 |
+
|
703 |
+
#: models/SQ_Post.php:138
|
704 |
+
msgid "Failed to write file to disk."
|
705 |
+
msgstr ""
|
706 |
+
|
707 |
+
#: models/SQ_Post.php:139
|
708 |
+
msgid "File upload stopped by extension."
|
709 |
+
msgstr ""
|
710 |
+
|
711 |
+
#: models/SQ_Post.php:156
|
712 |
+
msgid "Invalid form submission."
|
713 |
+
msgstr ""
|
714 |
+
|
715 |
+
#: models/SQ_Post.php:166
|
716 |
+
msgid "File is empty. Please upload something more substantial."
|
717 |
+
msgstr ""
|
718 |
+
|
719 |
+
#: models/SQ_Post.php:168
|
720 |
+
msgid ""
|
721 |
+
"File is empty. Please upload something more substantial. This error could "
|
722 |
+
"also be caused by uploads being disabled in your php.ini or by post_max_size "
|
723 |
+
"being defined as smaller than upload_max_filesize in php.ini."
|
724 |
+
msgstr ""
|
725 |
+
|
726 |
+
#: models/SQ_Post.php:174
|
727 |
+
msgid "Specified file failed upload test."
|
728 |
+
msgstr ""
|
729 |
+
|
730 |
+
#: models/SQ_Post.php:187
|
731 |
+
msgid "Sorry, this file type is not permitted for security reasons."
|
732 |
+
msgstr ""
|
733 |
+
|
734 |
+
#: models/SQ_Post.php:212
|
735 |
+
#, php-format
|
736 |
+
msgid "The uploaded file could not be moved to %s."
|
737 |
+
msgstr ""
|
738 |
+
|
739 |
+
#: models/SQ_PostsList.php:27
|
740 |
+
msgid "Optimized:"
|
741 |
+
msgstr ""
|
742 |
+
|
743 |
+
#: models/SQ_PostsList.php:28
|
744 |
+
msgid "See Analytics"
|
745 |
+
msgstr ""
|
746 |
+
|
747 |
+
#: models/SQ_PostsList.php:30
|
748 |
+
msgid "Optimize it with Squirrly to see the Analytics"
|
749 |
+
msgstr ""
|
750 |
+
|
751 |
+
#: models/SQ_PostsList.php:82
|
752 |
+
msgid "This post's current position in Google"
|
753 |
+
msgstr ""
|
754 |
+
|
755 |
+
#: models/SQ_PostsList.php:85
|
756 |
+
msgid "The total traffic for the last 30 days, for the current post"
|
757 |
+
msgstr ""
|
758 |
+
|
759 |
+
#: models/SQ_PostsList.php:88
|
760 |
+
msgid "The total number of shares on social media channels for this post"
|
761 |
+
msgstr ""
|
762 |
+
|
763 |
+
#: models/SQ_PostsList.php:91
|
764 |
+
msgid "The total authority for this post"
|
765 |
+
msgstr ""
|
766 |
+
|
767 |
+
#: models/SQ_PostsList.php:94
|
768 |
+
msgid "The total number of inbound links to this post"
|
769 |
+
msgstr ""
|
770 |
+
|
771 |
+
# @ squirrly-seo
|
772 |
+
#: squirrly.php:60
|
773 |
+
msgid ""
|
774 |
+
"For Squirrly to work, the PHP version has to be equal or greater then 5.1"
|
775 |
+
msgstr ""
|
776 |
+
"Damit Squirrly funktioniert, muss die PHP-Version gleich oder größer als 5.1 "
|
777 |
+
"sein"
|
778 |
+
|
779 |
+
#: themes/default/SQ_BlockAccount.php:7
|
780 |
+
msgid "Squirrly account information"
|
781 |
+
msgstr ""
|
782 |
+
|
783 |
+
#: themes/default/SQ_BlockAccount.php:9 themes/default/SQ_BlockAffiliate.php:7
|
784 |
+
msgid "Go to dashboard"
|
785 |
+
msgstr ""
|
786 |
+
|
787 |
+
#: themes/default/SQ_BlockAffiliate.php:5
|
788 |
+
#: themes/default/SQ_BlockAffiliate.php:17
|
789 |
+
msgid "Join Squirrly today!"
|
790 |
+
msgstr ""
|
791 |
+
|
792 |
+
#: themes/default/SQ_BlockAffiliate.php:18
|
793 |
+
#, php-format
|
794 |
+
msgid "%sHow I Started Making Money With the Squirrly Affiliate Program%s"
|
795 |
+
msgstr ""
|
796 |
+
|
797 |
+
#: themes/default/SQ_BlockAffiliate.php:21
|
798 |
+
msgid "Affiliate Benefits"
|
799 |
+
msgstr ""
|
800 |
+
|
801 |
+
#: themes/default/SQ_BlockAffiliate.php:26
|
802 |
+
#, php-format
|
803 |
+
msgid "- Recurring 45%s commission"
|
804 |
+
msgstr ""
|
805 |
+
|
806 |
+
#: themes/default/SQ_BlockAffiliate.php:31
|
807 |
+
msgid "- No cost"
|
808 |
+
msgstr ""
|
809 |
+
|
810 |
+
#: themes/default/SQ_BlockAffiliate.php:36
|
811 |
+
msgid "- Monthly payments in your Paypal account"
|
812 |
+
msgstr ""
|
813 |
+
|
814 |
+
#: themes/default/SQ_BlockAffiliate.php:47
|
815 |
+
msgid ""
|
816 |
+
"To redirect users to your site, just change \"squirrly.co\" with your domain."
|
817 |
+
msgstr ""
|
818 |
+
|
819 |
+
#: themes/default/SQ_BlockAffiliate.php:49
|
820 |
+
msgid "Generate affiliate link"
|
821 |
+
msgstr ""
|
822 |
+
|
823 |
+
#: themes/default/SQ_BlockAffiliate.php:58
|
824 |
+
msgid ""
|
825 |
+
"Your affiliate account is set and ready to go. Above you have the affiliate "
|
826 |
+
"link. "
|
827 |
+
msgstr ""
|
828 |
+
|
829 |
+
#: themes/default/SQ_BlockAffiliate.php:60
|
830 |
+
#, php-format
|
831 |
+
msgid "Check your affiliate page: %sAffiliate page%s"
|
832 |
+
msgstr ""
|
833 |
+
|
834 |
+
#: themes/default/SQ_BlockAffiliate.php:63
|
835 |
+
msgid ""
|
836 |
+
"After you connect to Squirrly you can begin to use your free Squirrly "
|
837 |
+
"affiliate link immediately!"
|
838 |
+
msgstr ""
|
839 |
+
|
840 |
+
#: themes/default/SQ_BlockAffiliate.php:72
|
841 |
+
msgid "Squirrly banners you can use"
|
842 |
+
msgstr ""
|
843 |
+
|
844 |
+
#: themes/default/SQ_BlockAffiliate.php:97
|
845 |
+
msgid "<< START HERE >>"
|
846 |
+
msgstr ""
|
847 |
+
|
848 |
+
#: themes/default/SQ_BlockAnalytics.php:55
|
849 |
+
msgid "Moz Inbound Links"
|
850 |
+
msgstr ""
|
851 |
+
|
852 |
+
#: themes/default/SQ_BlockAnalytics.php:62
|
853 |
+
msgid "Ahrefs Inbound Links"
|
854 |
+
msgstr ""
|
855 |
+
|
856 |
+
#: themes/default/SQ_BlockAnalytics.php:74
|
857 |
+
msgid "Moz Authority"
|
858 |
+
msgstr ""
|
859 |
+
|
860 |
+
#: themes/default/SQ_BlockAnalytics.php:79
|
861 |
+
msgid "Moz Rank"
|
862 |
+
msgstr ""
|
863 |
+
|
864 |
+
#: themes/default/SQ_BlockAnalytics.php:86
|
865 |
+
msgid "Google Page Rank"
|
866 |
+
msgstr ""
|
867 |
+
|
868 |
+
#: themes/default/SQ_BlockAnalytics.php:92
|
869 |
+
msgid "Ahrefs Rank"
|
870 |
+
msgstr ""
|
871 |
+
|
872 |
+
#: themes/default/SQ_BlockAnalytics.php:108
|
873 |
+
msgid "Facebook shares"
|
874 |
+
msgstr ""
|
875 |
+
|
876 |
+
#: themes/default/SQ_BlockAnalytics.php:113
|
877 |
+
msgid "Facebook likes"
|
878 |
+
msgstr ""
|
879 |
+
|
880 |
+
#: themes/default/SQ_BlockAnalytics.php:118
|
881 |
+
msgid "Twitter shares"
|
882 |
+
msgstr ""
|
883 |
+
|
884 |
+
#: themes/default/SQ_BlockAnalytics.php:123
|
885 |
+
msgid "Google+ shares"
|
886 |
+
msgstr ""
|
887 |
+
|
888 |
+
#: themes/default/SQ_BlockAnalytics.php:128
|
889 |
+
msgid "LinkedIn Shares"
|
890 |
+
msgstr ""
|
891 |
+
|
892 |
+
#: themes/default/SQ_BlockAnalytics.php:133
|
893 |
+
msgid "StumbleUpon shares"
|
894 |
+
msgstr ""
|
895 |
+
|
896 |
+
#: themes/default/SQ_BlockAnalytics.php:138
|
897 |
+
msgid "Reddit shares"
|
898 |
+
msgstr ""
|
899 |
+
|
900 |
+
#: themes/default/SQ_BlockAnalytics.php:170
|
901 |
+
msgid "Nicely done! Now you can focus on the other tasks"
|
902 |
+
msgstr ""
|
903 |
+
|
904 |
+
#: themes/default/SQ_BlockAnalytics.php:170
|
905 |
+
msgid ""
|
906 |
+
"I know you can improve this. Please follow the documentation for a quicker "
|
907 |
+
"progress"
|
908 |
+
msgstr ""
|
909 |
+
|
910 |
+
#: themes/default/SQ_BlockAnalytics.php:243
|
911 |
+
msgid "Visits"
|
912 |
+
msgstr ""
|
913 |
+
|
914 |
+
#: themes/default/SQ_BlockAnalytics.php:256
|
915 |
+
msgid "Current: "
|
916 |
+
msgstr ""
|
917 |
+
|
918 |
+
#: themes/default/SQ_BlockAnalytics.php:257
|
919 |
+
msgid "Lowest: "
|
920 |
+
msgstr ""
|
921 |
+
|
922 |
+
#: themes/default/SQ_BlockAnalytics.php:258
|
923 |
+
msgid "Highest: "
|
924 |
+
msgstr ""
|
925 |
+
|
926 |
+
#: themes/default/SQ_BlockAnalytics.php:262
|
927 |
+
msgid "last 30 days"
|
928 |
+
msgstr ""
|
929 |
+
|
930 |
+
#: themes/default/SQ_BlockDashboard.php:6
|
931 |
+
msgid "Connect to Squirrly.co"
|
932 |
+
msgstr ""
|
933 |
+
|
934 |
+
#: themes/default/SQ_BlockDashboard.php:12
|
935 |
+
msgid "Connect to Squirrly and start optimizing your site"
|
936 |
+
msgstr ""
|
937 |
+
|
938 |
+
#: themes/default/SQ_BlockDashboard.php:13
|
939 |
+
msgid "START HERE"
|
940 |
+
msgstr ""
|
941 |
+
|
942 |
+
#: themes/default/SQ_BlockDashboard.php:20
|
943 |
+
msgid "Squirrly dashboard"
|
944 |
+
msgstr ""
|
945 |
+
|
946 |
+
#: themes/default/SQ_BlockPostsAnalytics.php:3
|
947 |
+
msgid "Squirrly Analytics"
|
948 |
+
msgstr ""
|
949 |
+
|
950 |
+
#: themes/default/SQ_BlockPostsAnalytics.php:4
|
951 |
+
msgid ""
|
952 |
+
"Don't see all your pages here? Make sure you optimize them with Squirrly, so "
|
953 |
+
"that we can track them, and display you the analytics"
|
954 |
+
msgstr ""
|
955 |
+
|
956 |
+
#: themes/default/SQ_BlockPostsAnalytics.php:5
|
957 |
+
msgid ""
|
958 |
+
"If you recheck the google rank, let 10-20 seconds between requests to "
|
959 |
+
"prevent google to block your IP for an hour."
|
960 |
+
msgstr ""
|
961 |
+
|
962 |
+
# @ squirrly-seo
|
963 |
+
#: themes/default/SQ_BlockSettings.php:7
|
964 |
+
#: themes/default/SQ_BlockSettings.php:300
|
965 |
+
msgid "Save settings"
|
966 |
+
msgstr "Einstellungen speichern"
|
967 |
+
|
968 |
+
#: themes/default/SQ_BlockSettings.php:17
|
969 |
+
msgid "Post/Page Edit"
|
970 |
+
msgstr ""
|
971 |
+
|
972 |
+
#: themes/default/SQ_BlockSettings.php:18
|
973 |
+
#, php-format
|
974 |
+
msgid "%sThe right method in working with Squirrly, SEO plugin%s"
|
975 |
+
msgstr ""
|
976 |
+
|
977 |
+
#: themes/default/SQ_BlockSettings.php:19
|
978 |
+
#, php-format
|
979 |
+
msgid "%sGetting inspired with Squirrly WordPress SEO plugin%s"
|
980 |
+
msgstr ""
|
981 |
+
|
982 |
+
#: themes/default/SQ_BlockSettings.php:21
|
983 |
+
#, php-format
|
984 |
+
msgid "%sThere is a New SEO Live Assistant from Squirrly%s"
|
985 |
+
msgstr ""
|
986 |
+
|
987 |
+
#: themes/default/SQ_BlockSettings.php:22
|
988 |
+
#, php-format
|
989 |
+
msgid "%sHow to create Human friendly content with the WordPress SEO plugin?%s"
|
990 |
+
msgstr ""
|
991 |
+
|
992 |
+
#: themes/default/SQ_BlockSettings.php:28
|
993 |
+
msgid "Load Squirrly Live Assistant for"
|
994 |
+
msgstr ""
|
995 |
+
|
996 |
+
#: themes/default/SQ_BlockSettings.php:31
|
997 |
+
#: themes/default/SQ_BlockSettingsSeo.php:528
|
998 |
+
msgid "Posts"
|
999 |
+
msgstr ""
|
1000 |
+
|
1001 |
+
#: themes/default/SQ_BlockSettings.php:32
|
1002 |
+
#: themes/default/SQ_BlockSettingsSeo.php:530
|
1003 |
+
msgid "Pages"
|
1004 |
+
msgstr ""
|
1005 |
+
|
1006 |
+
#: themes/default/SQ_BlockSettings.php:34
|
1007 |
+
#: themes/default/SQ_BlockSettingsSeo.php:527
|
1008 |
+
msgid "Products"
|
1009 |
+
msgstr ""
|
1010 |
+
|
1011 |
+
# @ squirrly-seo
|
1012 |
+
#: themes/default/SQ_BlockSettings.php:61
|
1013 |
+
#: themes/default/SQ_BlockSettings.php:72
|
1014 |
+
#: themes/default/SQ_BlockSettings.php:84
|
1015 |
+
#: themes/default/SQ_BlockSettings.php:95
|
1016 |
+
#: themes/default/SQ_BlockSettings.php:106
|
1017 |
+
#: themes/default/SQ_BlockSettings.php:118
|
1018 |
+
#: themes/default/SQ_BlockSettings.php:261
|
1019 |
+
#: themes/default/SQ_BlockSettingsSeo.php:28
|
1020 |
+
#: themes/default/SQ_BlockSettingsSeo.php:47
|
1021 |
+
#: themes/default/SQ_BlockSettingsSeo.php:65
|
1022 |
+
#: themes/default/SQ_BlockSettingsSeo.php:82
|
1023 |
+
#: themes/default/SQ_BlockSettingsSeo.php:99
|
1024 |
+
#: themes/default/SQ_BlockSettingsSeo.php:116
|
1025 |
+
#: themes/default/SQ_BlockSettingsSeo.php:133
|
1026 |
+
#: themes/default/SQ_BlockSettingsSeo.php:161
|
1027 |
+
#: themes/default/SQ_BlockSettingsSeo.php:177
|
1028 |
+
#: themes/default/SQ_BlockSettingsSeo.php:411
|
1029 |
+
#: themes/default/SQ_BlockSettingsSeo.php:433
|
1030 |
+
#: themes/default/SQ_BlockSettingsSeo.php:442
|
1031 |
+
#: themes/default/SQ_BlockSettingsSeo.php:514
|
1032 |
+
msgid "Yes"
|
1033 |
+
msgstr "Ja"
|
1034 |
+
|
1035 |
+
# @ squirrly-seo
|
1036 |
+
#: themes/default/SQ_BlockSettings.php:63
|
1037 |
+
#: themes/default/SQ_BlockSettings.php:74
|
1038 |
+
#: themes/default/SQ_BlockSettings.php:86
|
1039 |
+
#: themes/default/SQ_BlockSettings.php:97
|
1040 |
+
#: themes/default/SQ_BlockSettings.php:108
|
1041 |
+
#: themes/default/SQ_BlockSettings.php:120
|
1042 |
+
#: themes/default/SQ_BlockSettings.php:263
|
1043 |
+
#: themes/default/SQ_BlockSettingsSeo.php:30
|
1044 |
+
#: themes/default/SQ_BlockSettingsSeo.php:49
|
1045 |
+
#: themes/default/SQ_BlockSettingsSeo.php:67
|
1046 |
+
#: themes/default/SQ_BlockSettingsSeo.php:84
|
1047 |
+
#: themes/default/SQ_BlockSettingsSeo.php:101
|
1048 |
+
#: themes/default/SQ_BlockSettingsSeo.php:118
|
1049 |
+
#: themes/default/SQ_BlockSettingsSeo.php:135
|
1050 |
+
#: themes/default/SQ_BlockSettingsSeo.php:163
|
1051 |
+
#: themes/default/SQ_BlockSettingsSeo.php:179
|
1052 |
+
#: themes/default/SQ_BlockSettingsSeo.php:413
|
1053 |
+
#: themes/default/SQ_BlockSettingsSeo.php:435
|
1054 |
+
#: themes/default/SQ_BlockSettingsSeo.php:444
|
1055 |
+
#: themes/default/SQ_BlockSettingsSeo.php:516
|
1056 |
+
msgid "No"
|
1057 |
+
msgstr "Nein"
|
1058 |
+
|
1059 |
+
#: themes/default/SQ_BlockSettings.php:66
|
1060 |
+
msgid ""
|
1061 |
+
"Show <strong>Squirrly Tooltips</strong> posting a new article (e.g. \"Enter "
|
1062 |
+
"a keyword\")."
|
1063 |
+
msgstr ""
|
1064 |
+
|
1065 |
+
#: themes/default/SQ_BlockSettings.php:77
|
1066 |
+
msgid ""
|
1067 |
+
"Always show <strong>Keyword Research</strong> about the selected keyword."
|
1068 |
+
msgstr ""
|
1069 |
+
|
1070 |
+
#: themes/default/SQ_BlockSettings.php:89
|
1071 |
+
msgid "Use <strong> the NEW version of the SEO Live Assistant</strong>."
|
1072 |
+
msgstr ""
|
1073 |
+
|
1074 |
+
#: themes/default/SQ_BlockSettings.php:100
|
1075 |
+
msgid "Add the Post tags in <strong>META keyword</strong>."
|
1076 |
+
msgstr ""
|
1077 |
+
|
1078 |
+
#: themes/default/SQ_BlockSettings.php:111
|
1079 |
+
msgid ""
|
1080 |
+
"Download <strong>remote images</strong> in your <strong>Media Library</"
|
1081 |
+
"strong> for the new posts."
|
1082 |
+
msgstr ""
|
1083 |
+
|
1084 |
+
#: themes/default/SQ_BlockSettings.php:123
|
1085 |
+
msgid ""
|
1086 |
+
"Correct my <strong>feed links</strong> and <strong>images</strong> (convert "
|
1087 |
+
"from relative to absolute)."
|
1088 |
+
msgstr ""
|
1089 |
+
|
1090 |
+
#: themes/default/SQ_BlockSettings.php:130
|
1091 |
+
msgid "Google Rank Options"
|
1092 |
+
msgstr ""
|
1093 |
+
|
1094 |
+
#: themes/default/SQ_BlockSettings.php:131
|
1095 |
+
#, php-format
|
1096 |
+
msgid "%sCountry targeting%s"
|
1097 |
+
msgstr ""
|
1098 |
+
|
1099 |
+
#: themes/default/SQ_BlockSettings.php:136
|
1100 |
+
msgid ""
|
1101 |
+
"Select the google extension for which Squirrly will check the google rank"
|
1102 |
+
msgstr ""
|
1103 |
+
|
1104 |
+
#: themes/default/SQ_BlockSettings.php:140
|
1105 |
+
msgid "Default"
|
1106 |
+
msgstr ""
|
1107 |
+
|
1108 |
+
#: themes/default/SQ_BlockSettings.php:141
|
1109 |
+
msgid "American Samoa"
|
1110 |
+
msgstr ""
|
1111 |
+
|
1112 |
+
#: themes/default/SQ_BlockSettings.php:142
|
1113 |
+
msgid "Anguilla"
|
1114 |
+
msgstr ""
|
1115 |
+
|
1116 |
+
#: themes/default/SQ_BlockSettings.php:143
|
1117 |
+
msgid "Antigua and Barbuda"
|
1118 |
+
msgstr ""
|
1119 |
+
|
1120 |
+
#: themes/default/SQ_BlockSettings.php:144
|
1121 |
+
msgid "Argentina"
|
1122 |
+
msgstr ""
|
1123 |
+
|
1124 |
+
#: themes/default/SQ_BlockSettings.php:145
|
1125 |
+
msgid "Australia"
|
1126 |
+
msgstr ""
|
1127 |
+
|
1128 |
+
#: themes/default/SQ_BlockSettings.php:146
|
1129 |
+
msgid "Austria"
|
1130 |
+
msgstr ""
|
1131 |
+
|
1132 |
+
#: themes/default/SQ_BlockSettings.php:147
|
1133 |
+
msgid "Azerbaijan"
|
1134 |
+
msgstr ""
|
1135 |
+
|
1136 |
+
#: themes/default/SQ_BlockSettings.php:148
|
1137 |
+
msgid "Belgium"
|
1138 |
+
msgstr ""
|
1139 |
+
|
1140 |
+
#: themes/default/SQ_BlockSettings.php:149
|
1141 |
+
msgid "Brazil"
|
1142 |
+
msgstr ""
|
1143 |
+
|
1144 |
+
#: themes/default/SQ_BlockSettings.php:150
|
1145 |
+
msgid "British Virgin Islands"
|
1146 |
+
msgstr ""
|
1147 |
+
|
1148 |
+
#: themes/default/SQ_BlockSettings.php:151
|
1149 |
+
msgid "Burundi"
|
1150 |
+
msgstr ""
|
1151 |
+
|
1152 |
+
#: themes/default/SQ_BlockSettings.php:152
|
1153 |
+
msgid "Bulgaria"
|
1154 |
+
msgstr ""
|
1155 |
+
|
1156 |
+
#: themes/default/SQ_BlockSettings.php:153
|
1157 |
+
msgid "Canada"
|
1158 |
+
msgstr ""
|
1159 |
+
|
1160 |
+
#: themes/default/SQ_BlockSettings.php:154
|
1161 |
+
msgid "Chad"
|
1162 |
+
msgstr ""
|
1163 |
+
|
1164 |
+
#: themes/default/SQ_BlockSettings.php:155
|
1165 |
+
msgid "Chile"
|
1166 |
+
msgstr ""
|
1167 |
+
|
1168 |
+
#: themes/default/SQ_BlockSettings.php:156
|
1169 |
+
msgid "Colombia"
|
1170 |
+
msgstr ""
|
1171 |
+
|
1172 |
+
#: themes/default/SQ_BlockSettings.php:157
|
1173 |
+
msgid "Costa Rica"
|
1174 |
+
msgstr ""
|
1175 |
+
|
1176 |
+
#: themes/default/SQ_BlockSettings.php:158
|
1177 |
+
msgid "Côte d'Ivoire"
|
1178 |
+
msgstr ""
|
1179 |
+
|
1180 |
+
#: themes/default/SQ_BlockSettings.php:159
|
1181 |
+
msgid "Cuba"
|
1182 |
+
msgstr ""
|
1183 |
+
|
1184 |
+
#: themes/default/SQ_BlockSettings.php:160
|
1185 |
+
msgid "Czech Republic"
|
1186 |
+
msgstr ""
|
1187 |
+
|
1188 |
+
#: themes/default/SQ_BlockSettings.php:161
|
1189 |
+
msgid "Dem. Rep. of the Congo"
|
1190 |
+
msgstr ""
|
1191 |
+
|
1192 |
+
#: themes/default/SQ_BlockSettings.php:162
|
1193 |
+
msgid "Denmark"
|
1194 |
+
msgstr ""
|
1195 |
+
|
1196 |
+
#: themes/default/SQ_BlockSettings.php:163
|
1197 |
+
msgid "Djibouti"
|
1198 |
+
msgstr ""
|
1199 |
+
|
1200 |
+
#: themes/default/SQ_BlockSettings.php:164
|
1201 |
+
msgid "Dominican Republic"
|
1202 |
+
msgstr ""
|
1203 |
+
|
1204 |
+
#: themes/default/SQ_BlockSettings.php:165
|
1205 |
+
msgid "Ecuador"
|
1206 |
+
msgstr ""
|
1207 |
+
|
1208 |
+
#: themes/default/SQ_BlockSettings.php:166
|
1209 |
+
msgid "El Salvador"
|
1210 |
+
msgstr ""
|
1211 |
+
|
1212 |
+
#: themes/default/SQ_BlockSettings.php:167
|
1213 |
+
msgid "Estonia"
|
1214 |
+
msgstr ""
|
1215 |
+
|
1216 |
+
#: themes/default/SQ_BlockSettings.php:168
|
1217 |
+
msgid "Federated States of Micronesia"
|
1218 |
+
msgstr ""
|
1219 |
+
|
1220 |
+
#: themes/default/SQ_BlockSettings.php:169
|
1221 |
+
msgid "Fiji"
|
1222 |
+
msgstr ""
|
1223 |
+
|
1224 |
+
#: themes/default/SQ_BlockSettings.php:170
|
1225 |
+
msgid "Finland"
|
1226 |
+
msgstr ""
|
1227 |
+
|
1228 |
+
#: themes/default/SQ_BlockSettings.php:171
|
1229 |
+
msgid "France"
|
1230 |
+
msgstr ""
|
1231 |
+
|
1232 |
+
#: themes/default/SQ_BlockSettings.php:172
|
1233 |
+
msgid "The Gambia"
|
1234 |
+
msgstr ""
|
1235 |
+
|
1236 |
+
#: themes/default/SQ_BlockSettings.php:173
|
1237 |
+
msgid "Georgia"
|
1238 |
+
msgstr ""
|
1239 |
+
|
1240 |
+
#: themes/default/SQ_BlockSettings.php:174
|
1241 |
+
msgid "Germany"
|
1242 |
+
msgstr ""
|
1243 |
+
|
1244 |
+
#: themes/default/SQ_BlockSettings.php:175
|
1245 |
+
msgid "Gibraltar"
|
1246 |
+
msgstr ""
|
1247 |
+
|
1248 |
+
#: themes/default/SQ_BlockSettings.php:176
|
1249 |
+
msgid "Greece"
|
1250 |
+
msgstr ""
|
1251 |
+
|
1252 |
+
#: themes/default/SQ_BlockSettings.php:177
|
1253 |
+
msgid "Greenland"
|
1254 |
+
msgstr ""
|
1255 |
+
|
1256 |
+
#: themes/default/SQ_BlockSettings.php:178
|
1257 |
+
msgid "Guernsey"
|
1258 |
+
msgstr ""
|
1259 |
+
|
1260 |
+
#: themes/default/SQ_BlockSettings.php:179
|
1261 |
+
msgid "Honduras"
|
1262 |
+
msgstr ""
|
1263 |
+
|
1264 |
+
#: themes/default/SQ_BlockSettings.php:180
|
1265 |
+
msgid "Hong Kong"
|
1266 |
+
msgstr ""
|
1267 |
+
|
1268 |
+
#: themes/default/SQ_BlockSettings.php:181
|
1269 |
+
msgid "Hungary"
|
1270 |
+
msgstr ""
|
1271 |
+
|
1272 |
+
#: themes/default/SQ_BlockSettings.php:182
|
1273 |
+
msgid "India"
|
1274 |
+
msgstr ""
|
1275 |
+
|
1276 |
+
#: themes/default/SQ_BlockSettings.php:183
|
1277 |
+
msgid "Ireland"
|
1278 |
+
msgstr ""
|
1279 |
+
|
1280 |
+
#: themes/default/SQ_BlockSettings.php:184
|
1281 |
+
msgid "Isle of Man"
|
1282 |
+
msgstr ""
|
1283 |
+
|
1284 |
+
#: themes/default/SQ_BlockSettings.php:185
|
1285 |
+
msgid "Israel"
|
1286 |
+
msgstr ""
|
1287 |
+
|
1288 |
+
#: themes/default/SQ_BlockSettings.php:186
|
1289 |
+
msgid "Italy"
|
1290 |
+
msgstr ""
|
1291 |
+
|
1292 |
+
#: themes/default/SQ_BlockSettings.php:187
|
1293 |
+
msgid "Jamaica"
|
1294 |
+
msgstr ""
|
1295 |
+
|
1296 |
+
#: themes/default/SQ_BlockSettings.php:188
|
1297 |
+
msgid "Japan"
|
1298 |
+
msgstr ""
|
1299 |
+
|
1300 |
+
#: themes/default/SQ_BlockSettings.php:189
|
1301 |
+
msgid "Jersey"
|
1302 |
+
msgstr ""
|
1303 |
+
|
1304 |
+
#: themes/default/SQ_BlockSettings.php:190
|
1305 |
+
msgid "Kazakhstan"
|
1306 |
+
msgstr ""
|
1307 |
+
|
1308 |
+
#: themes/default/SQ_BlockSettings.php:191
|
1309 |
+
msgid "Korea"
|
1310 |
+
msgstr ""
|
1311 |
+
|
1312 |
+
#: themes/default/SQ_BlockSettings.php:192
|
1313 |
+
msgid "Latvia"
|
1314 |
+
msgstr ""
|
1315 |
+
|
1316 |
+
#: themes/default/SQ_BlockSettings.php:193
|
1317 |
+
msgid "Lesotho"
|
1318 |
+
msgstr ""
|
1319 |
+
|
1320 |
+
#: themes/default/SQ_BlockSettings.php:194
|
1321 |
+
msgid "Liechtenstein"
|
1322 |
+
msgstr ""
|
1323 |
+
|
1324 |
+
#: themes/default/SQ_BlockSettings.php:195
|
1325 |
+
msgid "Lithuania"
|
1326 |
+
msgstr ""
|
1327 |
+
|
1328 |
+
#: themes/default/SQ_BlockSettings.php:196
|
1329 |
+
msgid "Luxembourg"
|
1330 |
+
msgstr ""
|
1331 |
+
|
1332 |
+
#: themes/default/SQ_BlockSettings.php:197
|
1333 |
+
msgid "Malawi"
|
1334 |
+
msgstr ""
|
1335 |
+
|
1336 |
+
#: themes/default/SQ_BlockSettings.php:198
|
1337 |
+
msgid "Malaysia"
|
1338 |
+
msgstr ""
|
1339 |
+
|
1340 |
+
#: themes/default/SQ_BlockSettings.php:199
|
1341 |
+
msgid "Malta"
|
1342 |
+
msgstr ""
|
1343 |
+
|
1344 |
+
#: themes/default/SQ_BlockSettings.php:200
|
1345 |
+
msgid "Mauritius"
|
1346 |
+
msgstr ""
|
1347 |
+
|
1348 |
+
#: themes/default/SQ_BlockSettings.php:201
|
1349 |
+
msgid "México"
|
1350 |
+
msgstr ""
|
1351 |
+
|
1352 |
+
#: themes/default/SQ_BlockSettings.php:202
|
1353 |
+
msgid "Montserrat"
|
1354 |
+
msgstr ""
|
1355 |
+
|
1356 |
+
#: themes/default/SQ_BlockSettings.php:203
|
1357 |
+
msgid "Namibia"
|
1358 |
+
msgstr ""
|
1359 |
+
|
1360 |
+
#: themes/default/SQ_BlockSettings.php:204
|
1361 |
+
msgid "Nepal"
|
1362 |
+
msgstr ""
|
1363 |
+
|
1364 |
+
#: themes/default/SQ_BlockSettings.php:205
|
1365 |
+
msgid "Netherlands"
|
1366 |
+
msgstr ""
|
1367 |
+
|
1368 |
+
#: themes/default/SQ_BlockSettings.php:206
|
1369 |
+
msgid "New Zealand"
|
1370 |
+
msgstr ""
|
1371 |
+
|
1372 |
+
#: themes/default/SQ_BlockSettings.php:207
|
1373 |
+
msgid "Nicaragua"
|
1374 |
+
msgstr ""
|
1375 |
+
|
1376 |
+
#: themes/default/SQ_BlockSettings.php:208
|
1377 |
+
msgid "Norfolk Island"
|
1378 |
+
msgstr ""
|
1379 |
+
|
1380 |
+
#: themes/default/SQ_BlockSettings.php:209
|
1381 |
+
msgid "Norway"
|
1382 |
+
msgstr ""
|
1383 |
+
|
1384 |
+
#: themes/default/SQ_BlockSettings.php:210
|
1385 |
+
msgid "Pakistan"
|
1386 |
+
msgstr ""
|
1387 |
+
|
1388 |
+
#: themes/default/SQ_BlockSettings.php:211
|
1389 |
+
msgid "Panamá"
|
1390 |
+
msgstr ""
|
1391 |
+
|
1392 |
+
#: themes/default/SQ_BlockSettings.php:212
|
1393 |
+
msgid "Paraguay"
|
1394 |
+
msgstr ""
|
1395 |
+
|
1396 |
+
#: themes/default/SQ_BlockSettings.php:213
|
1397 |
+
msgid "Perú"
|
1398 |
+
msgstr ""
|
1399 |
+
|
1400 |
+
#: themes/default/SQ_BlockSettings.php:214
|
1401 |
+
msgid "Philippines"
|
1402 |
+
msgstr ""
|
1403 |
+
|
1404 |
+
#: themes/default/SQ_BlockSettings.php:215
|
1405 |
+
msgid "Pitcairn Islands"
|
1406 |
+
msgstr ""
|
1407 |
+
|
1408 |
+
#: themes/default/SQ_BlockSettings.php:216
|
1409 |
+
msgid "Poland"
|
1410 |
+
msgstr ""
|
1411 |
+
|
1412 |
+
#: themes/default/SQ_BlockSettings.php:217
|
1413 |
+
msgid "Portugal"
|
1414 |
+
msgstr ""
|
1415 |
+
|
1416 |
+
#: themes/default/SQ_BlockSettings.php:218
|
1417 |
+
msgid "Puerto Rico"
|
1418 |
+
msgstr ""
|
1419 |
+
|
1420 |
+
#: themes/default/SQ_BlockSettings.php:219
|
1421 |
+
msgid "Rep. of the Congo"
|
1422 |
+
msgstr ""
|
1423 |
+
|
1424 |
+
#: themes/default/SQ_BlockSettings.php:220
|
1425 |
+
msgid "Romania"
|
1426 |
+
msgstr ""
|
1427 |
+
|
1428 |
+
#: themes/default/SQ_BlockSettings.php:221
|
1429 |
+
msgid "Russia"
|
1430 |
+
msgstr ""
|
1431 |
+
|
1432 |
+
#: themes/default/SQ_BlockSettings.php:222
|
1433 |
+
msgid "Rwanda"
|
1434 |
+
msgstr ""
|
1435 |
+
|
1436 |
+
#: themes/default/SQ_BlockSettings.php:223
|
1437 |
+
msgid "Saint Helena"
|
1438 |
+
msgstr ""
|
1439 |
+
|
1440 |
+
#: themes/default/SQ_BlockSettings.php:224
|
1441 |
+
msgid "San Marino"
|
1442 |
+
msgstr ""
|
1443 |
+
|
1444 |
+
#: themes/default/SQ_BlockSettings.php:225
|
1445 |
+
msgid "Saudi Arabia"
|
1446 |
+
msgstr ""
|
1447 |
+
|
1448 |
+
#: themes/default/SQ_BlockSettings.php:226
|
1449 |
+
msgid "Singapore"
|
1450 |
+
msgstr ""
|
1451 |
+
|
1452 |
+
#: themes/default/SQ_BlockSettings.php:227
|
1453 |
+
msgid "Slovakia"
|
1454 |
+
msgstr ""
|
1455 |
+
|
1456 |
+
#: themes/default/SQ_BlockSettings.php:228
|
1457 |
+
msgid "South Africa"
|
1458 |
+
msgstr ""
|
1459 |
+
|
1460 |
+
#: themes/default/SQ_BlockSettings.php:229
|
1461 |
+
msgid "Spain"
|
1462 |
+
msgstr ""
|
1463 |
+
|
1464 |
+
#: themes/default/SQ_BlockSettings.php:230
|
1465 |
+
msgid "Sri Lanka"
|
1466 |
+
msgstr ""
|
1467 |
+
|
1468 |
+
#: themes/default/SQ_BlockSettings.php:231
|
1469 |
+
msgid "Sweden"
|
1470 |
+
msgstr ""
|
1471 |
+
|
1472 |
+
#: themes/default/SQ_BlockSettings.php:232
|
1473 |
+
msgid "Switzerland"
|
1474 |
+
msgstr ""
|
1475 |
+
|
1476 |
+
#: themes/default/SQ_BlockSettings.php:233
|
1477 |
+
msgid "Taiwan"
|
1478 |
+
msgstr ""
|
1479 |
+
|
1480 |
+
#: themes/default/SQ_BlockSettings.php:234
|
1481 |
+
msgid "Thailand"
|
1482 |
+
msgstr ""
|
1483 |
+
|
1484 |
+
#: themes/default/SQ_BlockSettings.php:235
|
1485 |
+
msgid "Trinidad and Tobago"
|
1486 |
+
msgstr ""
|
1487 |
+
|
1488 |
+
#: themes/default/SQ_BlockSettings.php:236
|
1489 |
+
msgid "Turkey"
|
1490 |
+
msgstr ""
|
1491 |
+
|
1492 |
+
#: themes/default/SQ_BlockSettings.php:237
|
1493 |
+
msgid "Ukraine"
|
1494 |
+
msgstr ""
|
1495 |
+
|
1496 |
+
#: themes/default/SQ_BlockSettings.php:238
|
1497 |
+
msgid "United Arab Emirates"
|
1498 |
+
msgstr ""
|
1499 |
+
|
1500 |
+
#: themes/default/SQ_BlockSettings.php:239
|
1501 |
+
msgid "United Kingdom"
|
1502 |
+
msgstr ""
|
1503 |
+
|
1504 |
+
#: themes/default/SQ_BlockSettings.php:240
|
1505 |
+
msgid "Uruguay"
|
1506 |
+
msgstr ""
|
1507 |
+
|
1508 |
+
#: themes/default/SQ_BlockSettings.php:241
|
1509 |
+
msgid "Uzbekistan"
|
1510 |
+
msgstr ""
|
1511 |
+
|
1512 |
+
#: themes/default/SQ_BlockSettings.php:242
|
1513 |
+
msgid "Vanuatu"
|
1514 |
+
msgstr ""
|
1515 |
+
|
1516 |
+
#: themes/default/SQ_BlockSettings.php:243
|
1517 |
+
msgid "Venezuela"
|
1518 |
+
msgstr ""
|
1519 |
+
|
1520 |
+
#: themes/default/SQ_BlockSettings.php:247
|
1521 |
+
#, php-format
|
1522 |
+
msgid ""
|
1523 |
+
"Select how many pages to be checked by google rank every hour. %s5 pages "
|
1524 |
+
"(recommended)%s"
|
1525 |
+
msgstr ""
|
1526 |
+
|
1527 |
+
#: themes/default/SQ_BlockSettings.php:252
|
1528 |
+
msgid "pages"
|
1529 |
+
msgstr ""
|
1530 |
+
|
1531 |
+
#: themes/default/SQ_BlockSettings.php:266
|
1532 |
+
msgid ""
|
1533 |
+
"Restricts search results to results originating in the above particular "
|
1534 |
+
"country."
|
1535 |
+
msgstr ""
|
1536 |
+
|
1537 |
+
#: themes/default/SQ_BlockSettings.php:275
|
1538 |
+
msgid "Measure Your Success"
|
1539 |
+
msgstr ""
|
1540 |
+
|
1541 |
+
#: themes/default/SQ_BlockSettings.php:276
|
1542 |
+
#, php-format
|
1543 |
+
msgid "%sHow to set the Google Webmaster Tool%s"
|
1544 |
+
msgstr ""
|
1545 |
+
|
1546 |
+
#: themes/default/SQ_BlockSettings.php:277
|
1547 |
+
#, php-format
|
1548 |
+
msgid "%sBest practices to help Google find, crawl, and index your site%s"
|
1549 |
+
msgstr ""
|
1550 |
+
|
1551 |
+
#: themes/default/SQ_BlockSettings.php:278
|
1552 |
+
#, php-format
|
1553 |
+
msgid "%sBing Webmaster Tools Help & How-To Center%s"
|
1554 |
+
msgstr ""
|
1555 |
+
|
1556 |
+
#: themes/default/SQ_BlockSettings.php:284
|
1557 |
+
#, php-format
|
1558 |
+
msgid "Google META verification code for %sWebmaster Tool%s:"
|
1559 |
+
msgstr ""
|
1560 |
+
|
1561 |
+
#: themes/default/SQ_BlockSettings.php:288
|
1562 |
+
#, php-format
|
1563 |
+
msgid "Bing META code (for %sWebmaster Tool%s ):"
|
1564 |
+
msgstr ""
|
1565 |
+
|
1566 |
+
#: themes/default/SQ_BlockSettings.php:292
|
1567 |
+
#, php-format
|
1568 |
+
msgid "Alexa META code (for %sAlexa Tool%s ):"
|
1569 |
+
msgstr ""
|
1570 |
+
|
1571 |
+
#: themes/default/SQ_BlockSettings.php:309
|
1572 |
+
#: themes/default/SQ_BlockSettingsSeo.php:696
|
1573 |
+
msgid "Backup Settings"
|
1574 |
+
msgstr ""
|
1575 |
+
|
1576 |
+
#: themes/default/SQ_BlockSettings.php:310
|
1577 |
+
#: themes/default/SQ_BlockSettingsSeo.php:697
|
1578 |
+
msgid "Restore Settings"
|
1579 |
+
msgstr ""
|
1580 |
+
|
1581 |
+
#: themes/default/SQ_BlockSettings.php:316
|
1582 |
+
#: themes/default/SQ_BlockSettingsSeo.php:703
|
1583 |
+
#: themes/default/SQ_Blocklogin.php:55
|
1584 |
+
msgid "Upload the file with the saved Squirrly Settings"
|
1585 |
+
msgstr ""
|
1586 |
+
|
1587 |
+
#: themes/default/SQ_BlockSettings.php:321
|
1588 |
+
#: themes/default/SQ_BlockSettingsSeo.php:708
|
1589 |
+
#: themes/default/SQ_Blocklogin.php:60
|
1590 |
+
msgid "Restore Backup"
|
1591 |
+
msgstr ""
|
1592 |
+
|
1593 |
+
#: themes/default/SQ_BlockSettingsSeo.php:7
|
1594 |
+
#: themes/default/SQ_BlockSettingsSeo.php:685
|
1595 |
+
msgid "Save SEO"
|
1596 |
+
msgstr ""
|
1597 |
+
|
1598 |
+
#: themes/default/SQ_BlockSettingsSeo.php:9
|
1599 |
+
#: themes/default/SQ_BlockSettingsSeo.php:144
|
1600 |
+
msgid "Check for SEO issues in your site"
|
1601 |
+
msgstr ""
|
1602 |
+
|
1603 |
+
#: themes/default/SQ_BlockSettingsSeo.php:21
|
1604 |
+
msgid "Let Squirrly SEO optimize this blog"
|
1605 |
+
msgstr ""
|
1606 |
+
|
1607 |
+
#: themes/default/SQ_BlockSettingsSeo.php:22
|
1608 |
+
#, php-format
|
1609 |
+
msgid "%sIs Squirrly SEO better then WordPress SEO by Yoast?%s"
|
1610 |
+
msgstr ""
|
1611 |
+
|
1612 |
+
#: themes/default/SQ_BlockSettingsSeo.php:24
|
1613 |
+
msgid ""
|
1614 |
+
"Activate the built-in SEO settings from Squirrly by switching Yes below. "
|
1615 |
+
"<strong>Works well with Multisites and Ecommerce.</strong>"
|
1616 |
+
msgstr ""
|
1617 |
+
|
1618 |
+
# @ squirrly-seo
|
1619 |
+
#: themes/default/SQ_BlockSettingsSeo.php:37
|
1620 |
+
msgid "What does Squirrly automatically do for SEO?"
|
1621 |
+
msgstr "Was tut Squirrly automatisch für SEO?"
|
1622 |
+
|
1623 |
+
#: themes/default/SQ_BlockSettingsSeo.php:52
|
1624 |
+
#, php-format
|
1625 |
+
msgid ""
|
1626 |
+
"adds <strong>%scanonical link%s</strong>, <strong>%srel=\"prev\" and rel="
|
1627 |
+
"\"next\"%s</strong> metas in Header"
|
1628 |
+
msgstr ""
|
1629 |
+
|
1630 |
+
#: themes/default/SQ_BlockSettingsSeo.php:70
|
1631 |
+
msgid ""
|
1632 |
+
"adds the required METAs (<strong>dublincore, google hreflang</strong>, etc.)"
|
1633 |
+
msgstr ""
|
1634 |
+
|
1635 |
+
#: themes/default/SQ_BlockSettingsSeo.php:87
|
1636 |
+
#, php-format
|
1637 |
+
msgid "adds the <strong>%sXML Sitemap%s</strong> for search engines: %s"
|
1638 |
+
msgstr ""
|
1639 |
+
|
1640 |
+
#: themes/default/SQ_BlockSettingsSeo.php:104
|
1641 |
+
msgid "adds <strong>Feed style</strong> to your blog feed (eg. /feed)"
|
1642 |
+
msgstr ""
|
1643 |
+
|
1644 |
+
#: themes/default/SQ_BlockSettingsSeo.php:121
|
1645 |
+
#, php-format
|
1646 |
+
msgid ""
|
1647 |
+
"adds the <strong>%sfavicon.ico%s</strong> and the <strong>%sicons for pads "
|
1648 |
+
"and phones%s</strong>"
|
1649 |
+
msgstr ""
|
1650 |
+
|
1651 |
+
#: themes/default/SQ_BlockSettingsSeo.php:138
|
1652 |
+
#, php-format
|
1653 |
+
msgid "adds the <strong>%sJson-LD%s</strong> metas for Semantic SEO"
|
1654 |
+
msgstr ""
|
1655 |
+
|
1656 |
+
#: themes/default/SQ_BlockSettingsSeo.php:141
|
1657 |
+
msgid ""
|
1658 |
+
"Note! By switching the <strong>Json-LD</strong>, <strong>XML Sitemap</"
|
1659 |
+
"strong> and <strong>Favicon</strong> on, you open new options below"
|
1660 |
+
msgstr ""
|
1661 |
+
|
1662 |
+
#: themes/default/SQ_BlockSettingsSeo.php:150
|
1663 |
+
msgid "First page optimization"
|
1664 |
+
msgstr ""
|
1665 |
+
|
1666 |
+
#: themes/default/SQ_BlockSettingsSeo.php:151
|
1667 |
+
#, php-format
|
1668 |
+
msgid "%sThe best SEO approach to Meta information%s"
|
1669 |
+
msgstr ""
|
1670 |
+
|
1671 |
+
#: themes/default/SQ_BlockSettingsSeo.php:152
|
1672 |
+
msgid "Add meta <strong>title</strong> in Home Page"
|
1673 |
+
msgstr ""
|
1674 |
+
|
1675 |
+
#: themes/default/SQ_BlockSettingsSeo.php:168
|
1676 |
+
msgid ""
|
1677 |
+
"Add meta <strong>description</strong> and <strong>keywords</strong> in Home "
|
1678 |
+
"Page"
|
1679 |
+
msgstr ""
|
1680 |
+
|
1681 |
+
#: themes/default/SQ_BlockSettingsSeo.php:184
|
1682 |
+
msgid "SEO for all post/pages"
|
1683 |
+
msgstr ""
|
1684 |
+
|
1685 |
+
#: themes/default/SQ_BlockSettingsSeo.php:185
|
1686 |
+
#, php-format
|
1687 |
+
msgid ""
|
1688 |
+
"To customize the Title and Description for all the Posts and Pages in your "
|
1689 |
+
"site use the %s<strong>Squirrly Snippet Tool</strong>%s"
|
1690 |
+
msgstr ""
|
1691 |
+
|
1692 |
+
# @ squirrly-seo
|
1693 |
+
#: themes/default/SQ_BlockSettingsSeo.php:212
|
1694 |
+
msgid "Title:"
|
1695 |
+
msgstr "Titel:"
|
1696 |
+
|
1697 |
+
#: themes/default/SQ_BlockSettingsSeo.php:213
|
1698 |
+
msgid "Tips: Length 10-75 chars"
|
1699 |
+
msgstr ""
|
1700 |
+
|
1701 |
+
# @ squirrly-seo
|
1702 |
+
#: themes/default/SQ_BlockSettingsSeo.php:216
|
1703 |
+
msgid "Description:"
|
1704 |
+
msgstr "Beschreibung:"
|
1705 |
+
|
1706 |
+
#: themes/default/SQ_BlockSettingsSeo.php:217
|
1707 |
+
msgid "Tips: Length 70-165 chars"
|
1708 |
+
msgstr ""
|
1709 |
+
|
1710 |
+
# @ squirrly-seo
|
1711 |
+
#: themes/default/SQ_BlockSettingsSeo.php:220
|
1712 |
+
msgid "Keywords:"
|
1713 |
+
msgstr "Schlüsselwörter:"
|
1714 |
+
|
1715 |
+
# @ squirrly-seo
|
1716 |
+
#: themes/default/SQ_BlockSettingsSeo.php:221
|
1717 |
+
msgid "Tips: 2-4 keywords"
|
1718 |
+
msgstr "Tipp: Länge 2-4 Schlüsselwörter"
|
1719 |
+
|
1720 |
+
#: themes/default/SQ_BlockSettingsSeo.php:225
|
1721 |
+
msgid "First Page Preview (Title, Description, Keywords)"
|
1722 |
+
msgstr ""
|
1723 |
+
|
1724 |
+
#: themes/default/SQ_BlockSettingsSeo.php:235
|
1725 |
+
msgid ""
|
1726 |
+
"If you don't see any changes in custom optimization, check if another SEO "
|
1727 |
+
"plugin affects Squirrly SEO"
|
1728 |
+
msgstr ""
|
1729 |
+
|
1730 |
+
#: themes/default/SQ_BlockSettingsSeo.php:238
|
1731 |
+
#, php-format
|
1732 |
+
msgid ""
|
1733 |
+
"To customize the Title and Description for all the Posts and Pages in your "
|
1734 |
+
"site use the %s<strong>Squirrly Snippet Tool</strong>%s while edit a Post/"
|
1735 |
+
"Page"
|
1736 |
+
msgstr ""
|
1737 |
+
|
1738 |
+
#: themes/default/SQ_BlockSettingsSeo.php:244
|
1739 |
+
msgid "Social Media Options"
|
1740 |
+
msgstr ""
|
1741 |
+
|
1742 |
+
#: themes/default/SQ_BlockSettingsSeo.php:246
|
1743 |
+
msgid "Select the language you're using on Social Media"
|
1744 |
+
msgstr ""
|
1745 |
+
|
1746 |
+
#: themes/default/SQ_BlockSettingsSeo.php:392
|
1747 |
+
#, php-format
|
1748 |
+
msgid "%sHow to pop out in Social Media with your links%s"
|
1749 |
+
msgstr ""
|
1750 |
+
|
1751 |
+
#: themes/default/SQ_BlockSettingsSeo.php:393
|
1752 |
+
#, php-format
|
1753 |
+
msgid "%sGet busy with Facebook’s new Search Engine functions%s"
|
1754 |
+
msgstr ""
|
1755 |
+
|
1756 |
+
#: themes/default/SQ_BlockSettingsSeo.php:394
|
1757 |
+
#, php-format
|
1758 |
+
msgid ""
|
1759 |
+
"%sHow I Added Twitter Cards in My WordPress for Better Inbound Marketing%s"
|
1760 |
+
msgstr ""
|
1761 |
+
|
1762 |
+
#: themes/default/SQ_BlockSettingsSeo.php:399
|
1763 |
+
msgid "What does Squirrly automatically do for Social Media?"
|
1764 |
+
msgstr ""
|
1765 |
+
|
1766 |
+
#: themes/default/SQ_BlockSettingsSeo.php:416
|
1767 |
+
msgid ""
|
1768 |
+
"Add the <strong>Social Open Graph objects</strong> for a good looking share. "
|
1769 |
+
msgstr ""
|
1770 |
+
|
1771 |
+
#: themes/default/SQ_BlockSettingsSeo.php:438
|
1772 |
+
msgid "Add the <strong>Twitter card</strong> in your tweets. "
|
1773 |
+
msgstr ""
|
1774 |
+
|
1775 |
+
#: themes/default/SQ_BlockSettingsSeo.php:447
|
1776 |
+
#, php-format
|
1777 |
+
msgid ""
|
1778 |
+
"Use <strong>Twitter %ssummary_large_image%s</strong> for your tweeter card. "
|
1779 |
+
msgstr ""
|
1780 |
+
|
1781 |
+
#: themes/default/SQ_BlockSettingsSeo.php:449
|
1782 |
+
msgid "You need to add your <strong>Twitter account</strong> below"
|
1783 |
+
msgstr ""
|
1784 |
+
|
1785 |
+
#: themes/default/SQ_BlockSettingsSeo.php:459
|
1786 |
+
msgid "Social Media Accounts"
|
1787 |
+
msgstr ""
|
1788 |
+
|
1789 |
+
#: themes/default/SQ_BlockSettingsSeo.php:460
|
1790 |
+
#, php-format
|
1791 |
+
msgid "%sLink your Google+ profile to the content you create%s"
|
1792 |
+
msgstr ""
|
1793 |
+
|
1794 |
+
#: themes/default/SQ_BlockSettingsSeo.php:461
|
1795 |
+
#, php-format
|
1796 |
+
msgid ""
|
1797 |
+
"%sTwitter account is mandatory for <strong>Twitter Card Validation</strong>%s"
|
1798 |
+
msgstr ""
|
1799 |
+
|
1800 |
+
#: themes/default/SQ_BlockSettingsSeo.php:462
|
1801 |
+
#, php-format
|
1802 |
+
msgid ""
|
1803 |
+
"%sAdd all your social accounts for <strong>JSON-LD Semantic SEO</strong>%s"
|
1804 |
+
msgstr ""
|
1805 |
+
|
1806 |
+
#: themes/default/SQ_BlockSettingsSeo.php:463
|
1807 |
+
#: themes/default/SQ_BlockSettingsSeo.php:597
|
1808 |
+
#, php-format
|
1809 |
+
msgid "%sSpecify your social profiles to Google%s"
|
1810 |
+
msgstr ""
|
1811 |
+
|
1812 |
+
#: themes/default/SQ_BlockSettingsSeo.php:471
|
1813 |
+
msgid "Your Twitter Account:"
|
1814 |
+
msgstr ""
|
1815 |
+
|
1816 |
+
#: themes/default/SQ_BlockSettingsSeo.php:477
|
1817 |
+
msgid "Google Plus Profile:"
|
1818 |
+
msgstr ""
|
1819 |
+
|
1820 |
+
#: themes/default/SQ_BlockSettingsSeo.php:483
|
1821 |
+
msgid "Facebook Profile:"
|
1822 |
+
msgstr ""
|
1823 |
+
|
1824 |
+
#: themes/default/SQ_BlockSettingsSeo.php:489
|
1825 |
+
msgid "Linkedin Profile:"
|
1826 |
+
msgstr ""
|
1827 |
+
|
1828 |
+
#: themes/default/SQ_BlockSettingsSeo.php:497
|
1829 |
+
msgid "XML Sitemap for Google"
|
1830 |
+
msgstr ""
|
1831 |
+
|
1832 |
+
#: themes/default/SQ_BlockSettingsSeo.php:498
|
1833 |
+
msgid ""
|
1834 |
+
"Squirrly Sitemap is the fastest way to tell Google about your site links. "
|
1835 |
+
"<strong>Supports Multisites, Google News, Images, Videos, Custom Post Types, "
|
1836 |
+
"Custom Taxonomies and Ecommerce products</strong>"
|
1837 |
+
msgstr ""
|
1838 |
+
|
1839 |
+
#: themes/default/SQ_BlockSettingsSeo.php:499
|
1840 |
+
#, php-format
|
1841 |
+
msgid "%sHow to submit your sitemap.xml in Google Webmaster Tool%s"
|
1842 |
+
msgstr ""
|
1843 |
+
|
1844 |
+
#: themes/default/SQ_BlockSettingsSeo.php:500
|
1845 |
+
#, php-format
|
1846 |
+
msgid ""
|
1847 |
+
"%s10 Vital To Dos to Feed Your SEO Content Machine After You Post Articles%s"
|
1848 |
+
msgstr ""
|
1849 |
+
|
1850 |
+
#: themes/default/SQ_BlockSettingsSeo.php:510
|
1851 |
+
msgid "XML Sitemap Options"
|
1852 |
+
msgstr ""
|
1853 |
+
|
1854 |
+
#: themes/default/SQ_BlockSettingsSeo.php:519
|
1855 |
+
msgid "Ping your sitemap to Google and Bing when a new post is published"
|
1856 |
+
msgstr ""
|
1857 |
+
|
1858 |
+
#: themes/default/SQ_BlockSettingsSeo.php:522
|
1859 |
+
msgid "Build Sitemaps for"
|
1860 |
+
msgstr ""
|
1861 |
+
|
1862 |
+
#: themes/default/SQ_BlockSettingsSeo.php:525
|
1863 |
+
msgid "Google News"
|
1864 |
+
msgstr ""
|
1865 |
+
|
1866 |
+
#: themes/default/SQ_BlockSettingsSeo.php:526
|
1867 |
+
msgid "Categories"
|
1868 |
+
msgstr ""
|
1869 |
+
|
1870 |
+
#: themes/default/SQ_BlockSettingsSeo.php:529
|
1871 |
+
msgid "Tags"
|
1872 |
+
msgstr ""
|
1873 |
+
|
1874 |
+
#: themes/default/SQ_BlockSettingsSeo.php:531
|
1875 |
+
msgid "Archive"
|
1876 |
+
msgstr ""
|
1877 |
+
|
1878 |
+
#: themes/default/SQ_BlockSettingsSeo.php:532
|
1879 |
+
msgid "Custom Taxonomies"
|
1880 |
+
msgstr ""
|
1881 |
+
|
1882 |
+
#: themes/default/SQ_BlockSettingsSeo.php:533
|
1883 |
+
msgid "Custom Posts"
|
1884 |
+
msgstr ""
|
1885 |
+
|
1886 |
+
#: themes/default/SQ_BlockSettingsSeo.php:537
|
1887 |
+
msgid "Include in Sitemaps"
|
1888 |
+
msgstr ""
|
1889 |
+
|
1890 |
+
#: themes/default/SQ_BlockSettingsSeo.php:539
|
1891 |
+
msgid "<strong>Images</strong> from posts/pages"
|
1892 |
+
msgstr ""
|
1893 |
+
|
1894 |
+
#: themes/default/SQ_BlockSettingsSeo.php:540
|
1895 |
+
msgid "<strong>Videos</strong> (embeded and local media)"
|
1896 |
+
msgstr ""
|
1897 |
+
|
1898 |
+
#: themes/default/SQ_BlockSettingsSeo.php:544
|
1899 |
+
msgid "How often do you update your site?"
|
1900 |
+
msgstr ""
|
1901 |
+
|
1902 |
+
#: themes/default/SQ_BlockSettingsSeo.php:546
|
1903 |
+
msgid "every day"
|
1904 |
+
msgstr ""
|
1905 |
+
|
1906 |
+
#: themes/default/SQ_BlockSettingsSeo.php:547
|
1907 |
+
msgid "1-3 times per week"
|
1908 |
+
msgstr ""
|
1909 |
+
|
1910 |
+
#: themes/default/SQ_BlockSettingsSeo.php:548
|
1911 |
+
msgid "1-3 times per month"
|
1912 |
+
msgstr ""
|
1913 |
+
|
1914 |
+
#: themes/default/SQ_BlockSettingsSeo.php:549
|
1915 |
+
msgid "1-3 times per year"
|
1916 |
+
msgstr ""
|
1917 |
+
|
1918 |
+
# @ squirrly-seo
|
1919 |
+
#: themes/default/SQ_BlockSettingsSeo.php:558
|
1920 |
+
msgid "Change the Website Icon"
|
1921 |
+
msgstr "Ändern Sie das Website-Symbol"
|
1922 |
+
|
1923 |
+
#: themes/default/SQ_BlockSettingsSeo.php:559
|
1924 |
+
msgid ""
|
1925 |
+
"Now, even tablet & smartphone browsers make use of your icons. This makes "
|
1926 |
+
"having a good favicon even more important."
|
1927 |
+
msgstr ""
|
1928 |
+
|
1929 |
+
#: themes/default/SQ_BlockSettingsSeo.php:560
|
1930 |
+
#, php-format
|
1931 |
+
msgid ""
|
1932 |
+
"You can use %shttp://convertico.com/%s to convert your photo to icon and "
|
1933 |
+
"upload it here after that."
|
1934 |
+
msgstr ""
|
1935 |
+
|
1936 |
+
# @ squirrly-seo
|
1937 |
+
#: themes/default/SQ_BlockSettingsSeo.php:566
|
1938 |
+
msgid "Upload file:"
|
1939 |
+
msgstr "Datei hochladen:"
|
1940 |
+
|
1941 |
+
# @ squirrly-seo
|
1942 |
+
#: themes/default/SQ_BlockSettingsSeo.php:577
|
1943 |
+
msgid "Upload"
|
1944 |
+
msgstr "Hochladen"
|
1945 |
+
|
1946 |
+
# @ squirrly-seo
|
1947 |
+
#: themes/default/SQ_BlockSettingsSeo.php:581
|
1948 |
+
msgid ""
|
1949 |
+
"If you don't see the new icon in your browser, empty the browser cache and "
|
1950 |
+
"refresh the page."
|
1951 |
+
msgstr ""
|
1952 |
+
"Wenn Sie das neue Icon nicht in Ihrem Browser sehen, leeren Sie den Browser-"
|
1953 |
+
"Cache und aktualisieren Sie die Seite."
|
1954 |
+
|
1955 |
+
# @ squirrly-seo
|
1956 |
+
#: themes/default/SQ_BlockSettingsSeo.php:586
|
1957 |
+
msgid "File types: JPG, JPEG, GIF and PNG."
|
1958 |
+
msgstr "Dateitypen: JPG, JPEG, GIF und PNG."
|
1959 |
+
|
1960 |
+
#: themes/default/SQ_BlockSettingsSeo.php:588
|
1961 |
+
msgid ""
|
1962 |
+
"Does not physically create the favicon.ico file. The best option for "
|
1963 |
+
"Multisites."
|
1964 |
+
msgstr ""
|
1965 |
+
|
1966 |
+
#: themes/default/SQ_BlockSettingsSeo.php:593
|
1967 |
+
msgid "JSON-LD for Semantic SEO"
|
1968 |
+
msgstr ""
|
1969 |
+
|
1970 |
+
#: themes/default/SQ_BlockSettingsSeo.php:594
|
1971 |
+
msgid ""
|
1972 |
+
"Squirrly will automatically add the JSON-LD Structured Data in your site."
|
1973 |
+
msgstr ""
|
1974 |
+
|
1975 |
+
#: themes/default/SQ_BlockSettingsSeo.php:595
|
1976 |
+
#, php-format
|
1977 |
+
msgid "%sJSON-LD's Big Day at Google%s"
|
1978 |
+
msgstr ""
|
1979 |
+
|
1980 |
+
#: themes/default/SQ_BlockSettingsSeo.php:596
|
1981 |
+
#, php-format
|
1982 |
+
msgid "%sGoogle Testing Tool%s"
|
1983 |
+
msgstr ""
|
1984 |
+
|
1985 |
+
#: themes/default/SQ_BlockSettingsSeo.php:603
|
1986 |
+
msgid "Your site type:"
|
1987 |
+
msgstr ""
|
1988 |
+
|
1989 |
+
#: themes/default/SQ_BlockSettingsSeo.php:605
|
1990 |
+
msgid "Organization"
|
1991 |
+
msgstr ""
|
1992 |
+
|
1993 |
+
#: themes/default/SQ_BlockSettingsSeo.php:606
|
1994 |
+
msgid "Personal"
|
1995 |
+
msgstr ""
|
1996 |
+
|
1997 |
+
#: themes/default/SQ_BlockSettingsSeo.php:612
|
1998 |
+
msgid "Your Organization Name:"
|
1999 |
+
msgstr ""
|
2000 |
+
|
2001 |
+
#: themes/default/SQ_BlockSettingsSeo.php:613
|
2002 |
+
msgid "Your Name:"
|
2003 |
+
msgstr ""
|
2004 |
+
|
2005 |
+
#: themes/default/SQ_BlockSettingsSeo.php:617
|
2006 |
+
msgid "Job Title:"
|
2007 |
+
msgstr ""
|
2008 |
+
|
2009 |
+
#: themes/default/SQ_BlockSettingsSeo.php:621
|
2010 |
+
msgid "Logo Url:"
|
2011 |
+
msgstr ""
|
2012 |
+
|
2013 |
+
#: themes/default/SQ_BlockSettingsSeo.php:622
|
2014 |
+
msgid "Image Url:"
|
2015 |
+
msgstr ""
|
2016 |
+
|
2017 |
+
#: themes/default/SQ_BlockSettingsSeo.php:623
|
2018 |
+
msgid "Select Image"
|
2019 |
+
msgstr ""
|
2020 |
+
|
2021 |
+
#: themes/default/SQ_BlockSettingsSeo.php:626
|
2022 |
+
msgid "Contact Phone:"
|
2023 |
+
msgstr ""
|
2024 |
+
|
2025 |
+
#: themes/default/SQ_BlockSettingsSeo.php:630
|
2026 |
+
msgid "Contact Type:"
|
2027 |
+
msgstr ""
|
2028 |
+
|
2029 |
+
#: themes/default/SQ_BlockSettingsSeo.php:632
|
2030 |
+
msgid "Customer Service"
|
2031 |
+
msgstr ""
|
2032 |
+
|
2033 |
+
#: themes/default/SQ_BlockSettingsSeo.php:633
|
2034 |
+
msgid "Technical Support"
|
2035 |
+
msgstr ""
|
2036 |
+
|
2037 |
+
#: themes/default/SQ_BlockSettingsSeo.php:634
|
2038 |
+
msgid "Billing Support"
|
2039 |
+
msgstr ""
|
2040 |
+
|
2041 |
+
#: themes/default/SQ_BlockSettingsSeo.php:635
|
2042 |
+
msgid "Bill Payment"
|
2043 |
+
msgstr ""
|
2044 |
+
|
2045 |
+
#: themes/default/SQ_BlockSettingsSeo.php:636
|
2046 |
+
msgid "Sales"
|
2047 |
+
msgstr ""
|
2048 |
+
|
2049 |
+
#: themes/default/SQ_BlockSettingsSeo.php:637
|
2050 |
+
msgid "Reservations"
|
2051 |
+
msgstr ""
|
2052 |
+
|
2053 |
+
#: themes/default/SQ_BlockSettingsSeo.php:638
|
2054 |
+
msgid "Credit Card Support"
|
2055 |
+
msgstr ""
|
2056 |
+
|
2057 |
+
#: themes/default/SQ_BlockSettingsSeo.php:639
|
2058 |
+
msgid "Emergency"
|
2059 |
+
msgstr ""
|
2060 |
|
2061 |
+
#: themes/default/SQ_BlockSettingsSeo.php:640
|
2062 |
+
msgid "Baggage Tracking"
|
2063 |
+
msgstr ""
|
|
|
2064 |
|
2065 |
+
#: themes/default/SQ_BlockSettingsSeo.php:641
|
2066 |
+
msgid "Roadside Assistance"
|
2067 |
+
msgstr ""
|
|
|
2068 |
|
2069 |
+
#: themes/default/SQ_BlockSettingsSeo.php:642
|
2070 |
+
msgid "Package Tracking"
|
2071 |
+
msgstr ""
|
|
|
2072 |
|
2073 |
+
#: themes/default/SQ_BlockSettingsSeo.php:647
|
2074 |
+
msgid "Short Description:"
|
2075 |
+
msgstr ""
|
|
|
2076 |
|
2077 |
+
#: themes/default/SQ_BlockSettingsSeo.php:650
|
2078 |
+
msgid "Add your social accounts for Json-LD"
|
2079 |
+
msgstr ""
|
|
|
2080 |
|
2081 |
+
#: themes/default/SQ_BlockSettingsSeo.php:652
|
2082 |
+
msgid "How will the search results look once google grab your data."
|
2083 |
+
msgstr ""
|
|
|
2084 |
|
2085 |
+
#: themes/default/SQ_BlockSettingsSeo.php:659
|
2086 |
+
msgid "Tracking Tools"
|
2087 |
+
msgstr ""
|
|
|
2088 |
|
2089 |
+
#: themes/default/SQ_BlockSettingsSeo.php:660
|
2090 |
+
#, php-format
|
2091 |
+
msgid "%sHow to Get the Most Out of Google Analytics%s"
|
2092 |
+
msgstr ""
|
2093 |
|
2094 |
+
#: themes/default/SQ_BlockSettingsSeo.php:661
|
2095 |
+
#, php-format
|
2096 |
+
msgid "%sA Beginner’s Guide to Facebook Insights%s"
|
2097 |
+
msgstr ""
|
2098 |
|
2099 |
+
#: themes/default/SQ_BlockSettingsSeo.php:668
|
2100 |
+
#, php-format
|
2101 |
+
msgid "Google %sAnalytics ID%s:"
|
|
|
|
|
2102 |
msgstr ""
|
|
|
|
|
2103 |
|
2104 |
+
#: themes/default/SQ_BlockSettingsSeo.php:672
|
2105 |
+
#, php-format
|
2106 |
+
msgid "Facebook Admin ID (for %sInsights%s ):"
|
2107 |
+
msgstr ""
|
2108 |
|
2109 |
+
#: themes/default/SQ_BlockSettingsSeo.php:672
|
2110 |
+
msgid "Facebook ID or https://www.facebook.com/YourProfileName"
|
|
|
|
|
2111 |
msgstr ""
|
|
|
|
|
2112 |
|
2113 |
+
#: themes/default/SQ_BlockSettingsSeo.php:676
|
2114 |
+
msgid "Pinterest META code:"
|
2115 |
+
msgstr ""
|
|
|
2116 |
|
2117 |
# @ squirrly-seo
|
2118 |
+
#: themes/default/SQ_BlockSupport.php:7
|
2119 |
+
msgid "Go to Profile"
|
2120 |
+
msgstr "Zum Profil"
|
2121 |
|
2122 |
# @ squirrly-seo
|
2123 |
+
#: themes/default/SQ_BlockSupport.php:7
|
2124 |
+
msgid "Profile"
|
2125 |
+
msgstr "Profil"
|
2126 |
|
2127 |
# @ squirrly-seo
|
2128 |
+
#: themes/default/SQ_BlockSupport.php:17
|
2129 |
+
msgid "Support"
|
2130 |
+
msgstr "Support"
|
2131 |
|
2132 |
# @ squirrly-seo
|
2133 |
+
#: themes/default/SQ_BlockSupport.php:20
|
2134 |
+
msgid "Need Help with Squirrly SEO?"
|
2135 |
+
msgstr "Brauchen Sie Hilfe mit Squirrly SEO?"
|
2136 |
|
2137 |
# @ squirrly-seo
|
2138 |
+
#: themes/default/SQ_BlockSupport.php:24
|
2139 |
+
msgid "Send Question"
|
2140 |
+
msgstr "Senden Sie Ihre Frage"
|
2141 |
|
2142 |
# @ squirrly-seo
|
2143 |
+
#: themes/default/SQ_BlockSupport.php:27 themes/default/SQ_BlockSupport.php:68
|
2144 |
+
msgid "Go to:"
|
2145 |
+
msgstr "Gehe zu:"
|
2146 |
|
2147 |
# @ squirrly-seo
|
2148 |
+
#: themes/default/SQ_BlockSupport.php:27 themes/default/SQ_BlockSupport.php:68
|
2149 |
+
msgid "support page"
|
2150 |
+
msgstr "Support Page"
|
2151 |
|
2152 |
# @ squirrly-seo
|
2153 |
+
#: themes/default/SQ_BlockSupport.php:39
|
2154 |
+
msgid "How was your Squirrly experience today?"
|
2155 |
+
msgstr "Wie war Ihre Squirrly Erfahrung heute?"
|
2156 |
|
2157 |
# @ squirrly-seo
|
2158 |
+
#: themes/default/SQ_BlockSupport.php:48
|
2159 |
+
msgid "How was Squirrly today?"
|
2160 |
+
msgstr "Wie war Squirrly heute?"
|
2161 |
+
|
2162 |
+
#: themes/default/SQ_BlockSupport.php:52
|
2163 |
+
msgid "Angry"
|
2164 |
+
msgstr ""
|
2165 |
+
|
2166 |
+
#: themes/default/SQ_BlockSupport.php:53
|
2167 |
+
msgid "Sad"
|
2168 |
+
msgstr ""
|
2169 |
+
|
2170 |
+
#: themes/default/SQ_BlockSupport.php:54
|
2171 |
+
msgid "Happy"
|
2172 |
+
msgstr ""
|
2173 |
+
|
2174 |
+
#: themes/default/SQ_BlockSupport.php:55
|
2175 |
+
msgid "Excited"
|
2176 |
+
msgstr ""
|
2177 |
+
|
2178 |
+
#: themes/default/SQ_BlockSupport.php:56
|
2179 |
+
msgid "Love it"
|
2180 |
msgstr ""
|
|
|
|
|
2181 |
|
2182 |
# @ squirrly-seo
|
2183 |
+
#: themes/default/SQ_BlockSupport.php:61
|
2184 |
+
msgid "Please tell us why?"
|
2185 |
+
msgstr "Bitte sagen Sie uns, warum?"
|
2186 |
|
2187 |
+
# @ squirrly-seo
|
2188 |
+
#: themes/default/SQ_BlockSupport.php:64
|
2189 |
+
msgid "Send feedback"
|
2190 |
+
msgstr "Feedback senden"
|
2191 |
+
|
2192 |
+
# @ squirrly-seo
|
2193 |
+
#: themes/default/SQ_BlockSupport.php:73
|
2194 |
+
msgid "Thank you! You can send us a happy face tomorow too."
|
2195 |
+
msgstr "Danke! Sie können uns auch morgen ein fröhliches Gesicht senden."
|
2196 |
|
2197 |
# @ squirrly-seo
|
2198 |
#: themes/default/SQ_Blocklogin.php:2
|
2205 |
msgstr "Ihre E-Mail Adresse:"
|
2206 |
|
2207 |
# @ squirrly-seo
|
2208 |
+
#: themes/default/SQ_Blocklogin.php:11
|
2209 |
msgid "Password:"
|
2210 |
msgstr "Passwort:"
|
2211 |
|
2212 |
# @ squirrly-seo
|
2213 |
+
#: themes/default/SQ_Blocklogin.php:13
|
2214 |
msgid "Login"
|
2215 |
msgstr "Login"
|
2216 |
|
2217 |
# @ squirrly-seo
|
2218 |
+
#: themes/default/SQ_Blocklogin.php:14
|
2219 |
msgid "Register"
|
2220 |
msgstr "Registrieren"
|
2221 |
|
2222 |
# @ squirrly-seo
|
2223 |
+
#: themes/default/SQ_Blocklogin.php:14
|
2224 |
msgid "Register to Squirrly.co"
|
2225 |
msgstr "Bei Squirrly.co registrieren"
|
2226 |
|
2227 |
# @ squirrly-seo
|
2228 |
+
#: themes/default/SQ_Blocklogin.php:15
|
2229 |
msgid "Lost password?"
|
2230 |
msgstr "Passwort vergessen?"
|
2231 |
|
2232 |
# @ squirrly-seo
|
2233 |
+
#: themes/default/SQ_Blocklogin.php:15
|
2234 |
msgid "Lost password"
|
2235 |
msgstr "Passwort vergessen"
|
2236 |
|
2237 |
# @ squirrly-seo
|
2238 |
+
#: themes/default/SQ_Blocklogin.php:19
|
2239 |
msgid "Enter your email"
|
2240 |
msgstr "In Artikel einfügen"
|
2241 |
|
2242 |
+
#: themes/default/SQ_Blocklogin.php:20
|
2243 |
+
msgid "Your Email:"
|
2244 |
+
msgstr ""
|
|
|
2245 |
|
2246 |
+
#: themes/default/SQ_Blocklogin.php:26
|
2247 |
msgid "Sign Up"
|
2248 |
msgstr "Anmelden"
|
2249 |
|
2250 |
+
#: themes/default/SQ_Blocklogin.php:27
|
2251 |
+
msgid "I already have an account"
|
2252 |
+
msgstr ""
|
2253 |
+
|
2254 |
+
#: themes/default/SQ_Blocklogin.php:28
|
2255 |
msgid "This email connects you to Squirrly.co"
|
2256 |
msgstr "This email connects you to Squirrly.co"
|
2257 |
|
2258 |
# @ squirrly-seo
|
2259 |
+
#: themes/default/SQ_Blocklogin.php:38
|
2260 |
msgid "The email address is invalid!"
|
2261 |
msgstr "Die E-Mail-Adresse ist ungültig!"
|
2262 |
|
2263 |
# @ squirrly-seo
|
2264 |
+
#: themes/default/SQ_Blocklogin.php:39
|
2265 |
msgid "Click on Sign Up button and try again ..."
|
2266 |
msgstr "Klicken Sie auf das Bild und versuchen Sie es erneut ..."
|
2267 |
|
2268 |
# @ squirrly-seo
|
2269 |
+
#: themes/default/SQ_Blocklogin.php:40
|
2270 |
msgid "An error occured while logging in!"
|
2271 |
msgstr "Bei der Anmeldung ist ein Fehler aufgetreten!"
|
2272 |
|
2273 |
# @ squirrly-seo
|
2274 |
+
#: themes/default/SQ_Blocklogin.php:41
|
2275 |
msgid "Connecting ..."
|
2276 |
msgstr "Verbinden ..."
|
2277 |
|
2278 |
+
#: themes/default/SQ_Blocklogin.php:50
|
2279 |
+
msgid "Restore Squirrly Settings"
|
2280 |
+
msgstr ""
|
2281 |
+
|
2282 |
+
#: themes/default/SQ_Blocklogin.php:64
|
2283 |
+
msgid "Congratulations! You are ready to use all the features from Squirrly"
|
2284 |
+
msgstr ""
|
2285 |
+
|
2286 |
# @ squirrly-seo
|
2287 |
#: themes/default/SQ_Blockresearch.php:2
|
2288 |
msgid "Squirrly Keyword Research"
|
2294 |
msgstr "Löschen"
|
2295 |
|
2296 |
# @ squirrly-seo
|
2297 |
+
#: themes/default/SQ_Blockresearch.php:39
|
2298 |
msgid "Keyword:"
|
2299 |
msgstr "Schlüsselwort:"
|
2300 |
|
2301 |
# @ squirrly-seo
|
2302 |
+
#: themes/default/SQ_Blockresearch.php:41 themes/default/SQ_Blocksearch.php:26
|
2303 |
msgid "Use this keyword"
|
2304 |
msgstr "Dieses Schlüsselwort verwenden"
|
2305 |
|
2306 |
# @ squirrly-seo
|
2307 |
+
#: themes/default/SQ_Blockresearch.php:50
|
2308 |
msgid "+ Add keyword"
|
2309 |
msgstr "Fügen Sie ein anderes Schlüsselwort ein"
|
2310 |
|
2311 |
# @ squirrly-seo
|
2312 |
+
#: themes/default/SQ_Blockresearch.php:51
|
2313 |
msgid "Do the research"
|
2314 |
msgstr "Recherchieren"
|
2315 |
|
2316 |
# @ squirrly-seo
|
2317 |
+
#: themes/default/SQ_Blockresearch.php:54
|
2318 |
msgid "Enter even more keywords."
|
2319 |
msgstr "Geben Sie noch mehrere Schlüsselwörter ein."
|
2320 |
|
2321 |
# @ squirrly-seo
|
2322 |
+
#: themes/default/SQ_Blockresearch.php:55
|
2323 |
msgid "Let some keywords for the next time as well!"
|
2324 |
msgstr "Lassen Sie ein paar Schlüsselwörter auch für das nächste Mal!"
|
2325 |
|
2326 |
+
#: themes/default/SQ_Blocksearch.php:1
|
2327 |
+
msgid "Waiting for your editor to load .. "
|
2328 |
+
msgstr ""
|
2329 |
+
|
2330 |
+
#: themes/default/SQ_Blocksearch.php:1
|
2331 |
+
msgid ""
|
2332 |
+
"Javascript is disabled! You need to activate the javascript in order to use "
|
2333 |
+
"Squirrly SEO."
|
2334 |
+
msgstr ""
|
2335 |
+
|
2336 |
#: themes/default/SQ_Blocksearch.php:3
|
2337 |
msgid "Optimize for Keyword"
|
2338 |
msgstr "Schlüsselwort optimieren"
|
2339 |
|
2340 |
# @ squirrly-seo
|
2341 |
+
#: themes/default/SQ_Blocksearch.php:12
|
2342 |
msgid "Enter a keyword"
|
2343 |
msgstr "Ein Schlüsselwort eingeben"
|
2344 |
|
2345 |
# @ squirrly-seo
|
2346 |
+
#: themes/default/SQ_Blocksearch.php:12
|
2347 |
msgid "for Squirrly Live SEO optimization"
|
2348 |
msgstr "Live-SEO-Optimierung für Squirrly"
|
2349 |
|
2350 |
# @ squirrly-seo
|
2351 |
+
#: themes/default/SQ_Blocksearch.php:25
|
2352 |
msgid "Do a research"
|
2353 |
msgstr "Recherchieren"
|
2354 |
|
2355 |
# @ squirrly-seo
|
2356 |
+
#: themes/default/SQ_Blocksearch.php:30
|
2357 |
msgid "Enter a keyword above!"
|
2358 |
msgstr "Geben Sie oben ein Schlüsselwort ein!"
|
2359 |
|
2360 |
# @ squirrly-seo
|
2361 |
+
#: themes/default/SQ_Blocksearch.php:31
|
2362 |
msgid "I have more then one keyword!"
|
2363 |
msgstr "Ich habe mehr als ein Schlüsselwort!"
|
2364 |
|
2365 |
# @ squirrly-seo
|
2366 |
+
#: themes/default/SQ_Blocksearch.php:37
|
2367 |
msgid "Images"
|
2368 |
msgstr "Bilder"
|
2369 |
|
2370 |
# @ squirrly-seo
|
2371 |
+
#: themes/default/SQ_Blocksearch.php:38
|
2372 |
msgid "Twitter"
|
2373 |
msgstr "Twitter"
|
2374 |
|
2375 |
# @ squirrly-seo
|
2376 |
+
#: themes/default/SQ_Blocksearch.php:39
|
2377 |
msgid "Wiki"
|
2378 |
msgstr "Wiki"
|
2379 |
|
2380 |
# @ squirrly-seo
|
2381 |
+
#: themes/default/SQ_Blocksearch.php:40
|
2382 |
msgid "News"
|
2383 |
msgstr "News"
|
2384 |
|
2385 |
# @ squirrly-seo
|
2386 |
+
#: themes/default/SQ_Blocksearch.php:41
|
2387 |
msgid "Blogs"
|
2388 |
msgstr "Blogs"
|
2389 |
|
2390 |
# @ squirrly-seo
|
2391 |
+
#: themes/default/SQ_Blocksearch.php:42
|
2392 |
msgid "My articles"
|
2393 |
msgstr "Meine Artikel"
|
2394 |
|
2395 |
# @ squirrly-seo
|
2396 |
+
#: themes/default/SQ_Blocksearch.php:47
|
2397 |
msgid "Show only Copyright Free images"
|
2398 |
msgstr "Nur urheberrechtfreie Bilder zeigen"
|
2399 |
|
|
|
2400 |
#: themes/default/SQ_Blockseo.php:3
|
2401 |
+
msgid "Squirrly SEO Live Assistant"
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
2402 |
msgstr ""
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
2403 |
|
2404 |
+
#: themes/default/SQ_Blockseo.php:8
|
2405 |
+
msgid "Canonical link: "
|
|
|
|
|
|
|
|
|
2406 |
msgstr ""
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
2407 |
|
2408 |
+
#: themes/default/SQ_Blockseo.php:10
|
2409 |
+
msgid "(only for external sources)"
|
|
|
|
|
|
|
2410 |
msgstr ""
|
|
|
|
|
2411 |
|
2412 |
# @ squirrly-seo
|
2413 |
+
#~ msgid "Notice: "
|
2414 |
+
#~ msgstr "Hinweis: "
|
|
|
2415 |
|
2416 |
# @ squirrly-seo
|
2417 |
+
#~ msgid "Note: "
|
2418 |
+
#~ msgstr "Notiz: "
|
|
|
2419 |
|
2420 |
# @ squirrly-seo
|
2421 |
+
#~ msgid "Let Squirrly optimize your SEO automatically (recommended)"
|
2422 |
+
#~ msgstr "Lassen Sie Squirrly Ihr SEO automatisch optimieren (empfohlen)"
|
|
|
|
|
|
|
|
|
|
|
2423 |
|
2424 |
# @ squirrly-seo
|
2425 |
+
#~ msgid ""
|
2426 |
+
#~ "It is highly recommended that you include the %postname% variable in the "
|
2427 |
+
#~ "permalink structure."
|
2428 |
+
#~ msgstr ""
|
2429 |
+
#~ "Es wird stark empfohlen, dass Sie die %postname% Variable in der "
|
2430 |
+
#~ "Permalink-Struktur einschließen."
|
|
|
2431 |
|
2432 |
# @ squirrly-seo
|
2433 |
+
#~ msgid "For Squirrly to work, you have to have tinymce installed!"
|
2434 |
+
#~ msgstr "Damit Squirrly arbeiten kann, müssen Sie tinymce installiert haben!"
|
|
|
|
|
|
|
2435 |
|
2436 |
# @ squirrly-seo
|
2437 |
+
#~ msgid "Message sent..."
|
2438 |
+
#~ msgstr "Nachricht gesendet ..."
|
|
|
2439 |
|
2440 |
# @ squirrly-seo
|
2441 |
+
#~ msgid "Use more words in one keyword"
|
2442 |
+
#~ msgstr "Verwenden Sie mehrere Wörter in einem Schlüsselwort"
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
2443 |
|
2444 |
# @ squirrly-seo
|
2445 |
+
#~ msgid ""
|
2446 |
+
#~ "The system is acting Squirrly. I can not find the link to the server."
|
2447 |
+
#~ msgstr "Kann den Link auf den Server nicht finden."
|
2448 |
|
2449 |
# @ squirrly-seo
|
2450 |
+
#~ msgid "File type error: Only JPEG, JPG, GIF or PNG files are allowed."
|
2451 |
+
#~ msgstr "Dateityp Fehler: Nur JPEG, JPG, GIF oder PNG-Dateien sind erlaubt."
|
|
|
2452 |
|
2453 |
# @ squirrly-seo
|
2454 |
+
#~ msgid "Your E-mail:"
|
2455 |
+
#~ msgstr "Ihre E-Mail Adresse:"
|
|
|
2456 |
|
2457 |
# @ squirrly-seo
|
2458 |
+
#~ msgid "Squirrly LIVE SEO assistant"
|
2459 |
+
#~ msgstr "Squirrly LIVE SEO-Assistent"
|
|
|
2460 |
|
2461 |
# @ squirrly-seo
|
2462 |
+
#~ msgid ""
|
2463 |
+
#~ "With Squirrly SEO, your Wordpress will get Perfect SEO on each article "
|
2464 |
+
#~ "you write."
|
2465 |
+
#~ msgstr ""
|
2466 |
+
#~ "Mit Squirrly SEO wird jeder Ihrer Wordpress Artikel eine perfekte "
|
2467 |
+
#~ "Suchmaschinenoptimierung erhalten. "
|
2468 |
|
2469 |
# @ squirrly-seo
|
2470 |
+
#~ msgid "SEO Software"
|
2471 |
+
#~ msgstr "SEO Software"
|
|
|
2472 |
|
2473 |
# @ squirrly-seo
|
2474 |
+
#~ msgid ""
|
2475 |
+
#~ "delivered as a plugin for Wordpress. <br /><br />We connect your "
|
2476 |
+
#~ "wordpress with Squirrly, so that we can find the best SEO opportunities, "
|
2477 |
+
#~ "give you reports and analyse your competitors."
|
2478 |
+
#~ msgstr ""
|
2479 |
+
#~ "geliefert als Plugin für Wordpress. <br /> <br /> Wir verbinden Ihr "
|
2480 |
+
#~ "Wordpress mit Squirrly, so dass wir die besten SEO-Möglichkeiten finden, "
|
2481 |
+
#~ "erstatten Ihnen Bericht und analysieren Ihre Konkurrenz."
|
2482 |
|
2483 |
# @ squirrly-seo
|
2484 |
+
#~ msgid "Write a new post with Squirrly"
|
2485 |
+
#~ msgstr "Schreiben Sie einen neuen Beitrag mit Squirrly"
|
|
|
2486 |
|
2487 |
# @ squirrly-seo
|
2488 |
+
#~ msgid "Squirrly settings"
|
2489 |
+
#~ msgstr "Squirrly Einstellungen"
|
|
|
2490 |
|
2491 |
+
#~ msgid " API"
|
2492 |
+
#~ msgstr " API"
|
|
|
|
|
2493 |
|
2494 |
# @ squirrly-seo
|
2495 |
+
#~ msgid "API Key:"
|
2496 |
+
#~ msgstr "API Key:"
|
|
|
2497 |
|
2498 |
# @ squirrly-seo
|
2499 |
+
#~ msgid "Let Squirrly automatically optimize my blog"
|
2500 |
+
#~ msgstr "Lassen Sie Squirrly automatisch Ihren Blog optimieren"
|
|
|
2501 |
|
2502 |
# @ squirrly-seo
|
2503 |
+
#~ msgid "adds the correct <strong>title</strong> in the home page"
|
2504 |
+
#~ msgstr "fügt den richtigen <strong>Titel</strong> in die Startseite ein"
|
|
|
2505 |
|
2506 |
# @ squirrly-seo
|
2507 |
+
#~ msgid ""
|
2508 |
+
#~ "adds the correct <strong>description</strong> and <strong>keywords</"
|
2509 |
+
#~ "strong> in all pages"
|
2510 |
+
#~ msgstr ""
|
2511 |
+
#~ "fügt die richtige <strong>Beschreibung</strong> und "
|
2512 |
+
#~ "<strong>Schlüsselwörter</strong> auf allen Seiten ein"
|
2513 |
|
2514 |
# @ squirrly-seo
|
2515 |
+
#~ msgid "adds <strong>canonical</strong> link in home page"
|
2516 |
+
#~ msgstr "fügt den richtigen <strong>canonical</strong> in die Startseite ein"
|
|
|
2517 |
|
2518 |
# @ squirrly-seo
|
2519 |
+
#~ msgid "adds the <strong>XML Sitemap</strong> for search engines"
|
2520 |
+
#~ msgstr "fügt die <strong>XML Sitemap</strong> für Suchmaschinen ein"
|
|
|
|
|
|
|
|
|
|
|
2521 |
|
2522 |
# @ squirrly-seo
|
2523 |
+
#~ msgid ""
|
2524 |
+
#~ "adds the required METAs for home page (<strong>icon, author, language, dc "
|
2525 |
+
#~ "publisher</strong>, etc.)"
|
2526 |
+
#~ msgstr ""
|
2527 |
+
#~ "fügt die erforderlichen METAs für die Startseite (<strong> icon, Autor, "
|
2528 |
+
#~ "Sprache, dc Verlag </strong>, etc.) ein"
|
2529 |
|
2530 |
# @ squirrly-seo
|
2531 |
+
#~ msgid ""
|
2532 |
+
#~ "adds the <strong>favicon</strong> and the <strong>icon for Apple devices</"
|
2533 |
+
#~ "strong>."
|
2534 |
+
#~ msgstr ""
|
2535 |
+
#~ "fügt das <strong>favicon</strong> und die <strong>icon für Apple-Geräte</"
|
2536 |
+
#~ "strong> ein."
|
2537 |
|
2538 |
# @ squirrly-seo
|
2539 |
+
#~ msgid "Let Squirrly warn me if there are errors related to SEO settings"
|
2540 |
+
#~ msgstr ""
|
2541 |
+
#~ "Squirrly warnen lassen, wenn es Fehler im Zusammenhang mit den SEO-"
|
2542 |
+
#~ "Einstellungen gibt"
|
2543 |
|
2544 |
# @ squirrly-seo
|
2545 |
+
#~ msgid "Squirrly Options"
|
2546 |
+
#~ msgstr "Squirrly Optionen"
|
|
|
|
|
2547 |
|
2548 |
# @ squirrly-seo
|
2549 |
+
#~ msgid ""
|
2550 |
+
#~ "Show <strong>\"Enter a keyword\"</strong> bubble when posting a new "
|
2551 |
+
#~ "article."
|
2552 |
+
#~ msgstr ""
|
2553 |
+
#~ "Zeige <strong>\"Enter a keyword\"</ strong> Bubble, bei einem neuen "
|
2554 |
+
#~ "Artikel."
|
2555 |
+
|
2556 |
+
#~ msgid ""
|
2557 |
+
#~ "Always show <strong>Keyword Informations</strong> about the selected "
|
2558 |
+
#~ "keyword."
|
2559 |
+
#~ msgstr ""
|
2560 |
+
#~ "Always show <strong>Keyword Informations</strong> about the selected "
|
2561 |
+
#~ "keyword."
|
2562 |
|
2563 |
# @ squirrly-seo
|
2564 |
+
#~ msgid "First page optimization (Title, Description, Keywords)"
|
2565 |
+
#~ msgstr ""
|
2566 |
+
#~ " Optimierung der ersten Seite (Titel, Beschreibung, Schlüsselwörter)"
|
|
|
2567 |
|
2568 |
# @ squirrly-seo
|
2569 |
+
#~ msgid "Status:"
|
2570 |
+
#~ msgstr "Status:"
|
|
|
2571 |
|
2572 |
# @ squirrly-seo
|
2573 |
+
#~ msgid "automatically"
|
2574 |
+
#~ msgstr "automatisch"
|
|
|
2575 |
|
2576 |
# @ squirrly-seo
|
2577 |
+
#~ msgid "Change it >>"
|
2578 |
+
#~ msgstr "Ändern >>"
|
|
|
2579 |
|
2580 |
# @ squirrly-seo
|
2581 |
+
#~ msgid "Tips: Length 10-70 chars"
|
2582 |
+
#~ msgstr "Tipp: Länge 10-70 Charaktere"
|
|
|
2583 |
|
2584 |
# @ squirrly-seo
|
2585 |
+
#~ msgid "Tips: Length 70-255 chars"
|
2586 |
+
#~ msgstr "Tipp: Länge 70-255 Charaktere"
|
|
|
2587 |
|
2588 |
# @ squirrly-seo
|
2589 |
+
#~ msgid "<< Leave it automatically"
|
2590 |
+
#~ msgstr "<< Lass es automatisch"
|
|
|
2591 |
|
2592 |
# @ squirrly-seo
|
2593 |
+
#~ msgid "Tool for Search Engines"
|
2594 |
+
#~ msgstr "Tool für Suchmaschinen"
|
|
|
2595 |
|
2596 |
# @ squirrly-seo
|
2597 |
+
#~ msgid "Google Plus URL:"
|
2598 |
+
#~ msgstr "Google Plus URL:"
|
|
|
2599 |
|
2600 |
# @ squirrly-seo
|
2601 |
+
#~ msgid "Google META verification code for %sWebmaster Tool%s`:"
|
2602 |
+
#~ msgstr "Google META Bestätigungs-Code für %sWebmaster Tool%s`:"
|
|
|
2603 |
|
2604 |
# @ squirrly-seo
|
2605 |
+
#~ msgid "Google %sAnalytics ID%s`:"
|
2606 |
+
#~ msgstr "Google %sAnalytics ID%s`:"
|
|
|
2607 |
|
2608 |
# @ squirrly-seo
|
2609 |
+
#~ msgid "Facebook META code (for %sInsights%s )`:"
|
2610 |
+
#~ msgstr "Facebook META Code (für %sInsights%s )`:"
|
|
|
2611 |
|
2612 |
# @ squirrly-seo
|
2613 |
+
#~ msgid "Bing META code (for %sWebmaster Tool%s )`:"
|
2614 |
+
#~ msgstr "Bing META Code (für %sWebmaster Tool%s )`:"
|
|
models/SQ_BlockPostsAnalytics.php
CHANGED
@@ -1,25 +1,28 @@
|
|
1 |
<?php
|
2 |
|
3 |
-
class Model_SQ_BlockPostsAnalytics extends WP_List_Table
|
|
|
4 |
|
5 |
public $_column_headers;
|
6 |
public $posts; //save post list for Squirrly call
|
7 |
private $order_posts;
|
8 |
|
9 |
-
function __construct()
|
|
|
10 |
parent::__construct();
|
11 |
$this->posts = array();
|
12 |
$this->order_posts = array();
|
13 |
}
|
14 |
|
15 |
-
function wp_edit_posts_query($q = false)
|
|
|
16 |
global $current_user;
|
17 |
$post__in = array(0);
|
18 |
if (false === $q)
|
19 |
$q = $_GET;
|
20 |
|
21 |
-
$q['m'] = isset($q['m']) ? (int)
|
22 |
-
$q['cat'] = isset($q['cat']) ? (int)
|
23 |
$post_stati = get_post_stati();
|
24 |
|
25 |
if (isset($q['author'])) {
|
@@ -129,7 +132,7 @@ class Model_SQ_BlockPostsAnalytics extends WP_List_Table {
|
|
129 |
//////////////
|
130 |
|
131 |
$per_page = 'edit_post_per_page';
|
132 |
-
$posts_per_page = (int)
|
133 |
if (empty($posts_per_page) || $posts_per_page < 1)
|
134 |
$posts_per_page = 20;
|
135 |
|
@@ -137,27 +140,39 @@ class Model_SQ_BlockPostsAnalytics extends WP_List_Table {
|
|
137 |
$posts_per_page = apply_filters('edit_posts_per_page', $posts_per_page, 'post');
|
138 |
$query = compact('post_type', 'author', 'post_status', 'perm', 'order', 'orderby', 'meta_key', 'posts_per_page');
|
139 |
|
140 |
-
$query['post__in'] = (array)
|
141 |
|
142 |
wp($query);
|
143 |
return $avail_post_stati;
|
144 |
}
|
145 |
|
146 |
-
function order_by_type($query)
|
|
|
147 |
global $wpdb;
|
148 |
-
|
|
|
|
|
|
|
|
|
149 |
return $query;
|
150 |
}
|
151 |
|
152 |
-
function order_by_rank($query)
|
|
|
153 |
global $wpdb;
|
154 |
if (!empty($this->order_posts)) {
|
155 |
-
|
|
|
|
|
|
|
|
|
|
|
156 |
}
|
157 |
return $query;
|
158 |
}
|
159 |
|
160 |
-
function prepare_items()
|
|
|
161 |
global $avail_post_stati, $wp_query, $per_page, $mode;
|
162 |
|
163 |
$avail_post_stati = $this->wp_edit_posts_query();
|
@@ -178,7 +193,8 @@ class Model_SQ_BlockPostsAnalytics extends WP_List_Table {
|
|
178 |
));
|
179 |
}
|
180 |
|
181 |
-
function get_column_info()
|
|
|
182 |
if (isset($this->_column_headers))
|
183 |
return $this->_column_headers;
|
184 |
|
@@ -190,7 +206,7 @@ class Model_SQ_BlockPostsAnalytics extends WP_List_Table {
|
|
190 |
if (empty($data))
|
191 |
continue;
|
192 |
|
193 |
-
$data = (array)
|
194 |
if (!isset($data[1]))
|
195 |
$data[1] = false;
|
196 |
|
@@ -202,7 +218,8 @@ class Model_SQ_BlockPostsAnalytics extends WP_List_Table {
|
|
202 |
return $this->_column_headers;
|
203 |
}
|
204 |
|
205 |
-
function get_sortable_columns()
|
|
|
206 |
return array(
|
207 |
'title' => 'title',
|
208 |
'type' => 'type',
|
@@ -212,12 +229,13 @@ class Model_SQ_BlockPostsAnalytics extends WP_List_Table {
|
|
212 |
);
|
213 |
}
|
214 |
|
215 |
-
function print_column_headers($with_id = true)
|
|
|
216 |
$strcolumn = '';
|
217 |
|
218 |
-
list(
|
219 |
|
220 |
-
$current_url = (
|
221 |
$current_url = remove_query_arg('paged', $current_url);
|
222 |
|
223 |
if (isset($_GET['orderby']))
|
@@ -242,7 +260,7 @@ class Model_SQ_BlockPostsAnalytics extends WP_List_Table {
|
|
242 |
}
|
243 |
|
244 |
if (isset($sortable[$column_key])) {
|
245 |
-
list(
|
246 |
|
247 |
if ($current_orderby == $orderby) {
|
248 |
$order = 'asc' == $current_order ? 'desc' : 'asc';
|
@@ -267,7 +285,8 @@ class Model_SQ_BlockPostsAnalytics extends WP_List_Table {
|
|
267 |
return $strcolumn;
|
268 |
}
|
269 |
|
270 |
-
function get_columns()
|
|
|
271 |
$post_type = 'post';
|
272 |
|
273 |
$posts_columns = array();
|
@@ -289,7 +308,8 @@ class Model_SQ_BlockPostsAnalytics extends WP_List_Table {
|
|
289 |
return $posts_columns;
|
290 |
}
|
291 |
|
292 |
-
function display_tablenav($which)
|
|
|
293 |
if ('top' == $which)
|
294 |
wp_nonce_field('bulk-' . $this->_args['plural']);
|
295 |
|
@@ -298,13 +318,29 @@ class Model_SQ_BlockPostsAnalytics extends WP_List_Table {
|
|
298 |
/* includes the block from theme directory */
|
299 |
?>
|
300 |
<div class="tablenav <?php echo esc_attr($which); ?>">
|
301 |
-
<div class="alignleft actions"
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
302 |
<?php
|
303 |
$this->extra_tablenav($which);
|
304 |
$this->pagination($which);
|
305 |
?>
|
306 |
|
307 |
-
<br class="clear"
|
308 |
</div>
|
309 |
<?php
|
310 |
$strnav = ob_get_contents();
|
@@ -312,7 +348,8 @@ class Model_SQ_BlockPostsAnalytics extends WP_List_Table {
|
|
312 |
return $strnav;
|
313 |
}
|
314 |
|
315 |
-
function display_rows()
|
|
|
316 |
global $wp_query, $post;
|
317 |
static $alternate;
|
318 |
$strrow = '';
|
@@ -333,7 +370,8 @@ class Model_SQ_BlockPostsAnalytics extends WP_List_Table {
|
|
333 |
return $strrow;
|
334 |
}
|
335 |
|
336 |
-
public function single_row($a_post)
|
|
|
337 |
global $post;
|
338 |
|
339 |
$strcolumn = '';
|
@@ -351,7 +389,6 @@ class Model_SQ_BlockPostsAnalytics extends WP_List_Table {
|
|
351 |
$post_type_object = get_post_type_object($post->post_type);
|
352 |
$can_edit_post = current_user_can($post_type_object->cap->edit_post, $post->ID);
|
353 |
$json = SQ_ObjController::getModel('SQ_Post')->getKeyword($post->ID);
|
354 |
-
|
355 |
foreach ($columns as $key => $column) {
|
356 |
switch ($key) {
|
357 |
case 'title':
|
@@ -386,6 +423,7 @@ class Model_SQ_BlockPostsAnalytics extends WP_List_Table {
|
|
386 |
case 'keywords':
|
387 |
$value = '';
|
388 |
if (isset($json->keyword)) {
|
|
|
389 |
$value = sprintf('<a href="%s">%s</a>', esc_attr(add_query_arg(array('page' => 'sq_posts', 'keyword' => strtolower($json->keyword)), 'admin.php')), $json->keyword);
|
390 |
} else {
|
391 |
$value = __('No Tags');
|
@@ -398,9 +436,9 @@ class Model_SQ_BlockPostsAnalytics extends WP_List_Table {
|
|
398 |
if ($json->rank == -2) {
|
399 |
$value = __('Could not receive data from google (Err: blocked IP)');
|
400 |
} elseif ($json->rank == -1) {
|
401 |
-
$value = __('
|
402 |
} elseif ($json->rank == 0) {
|
403 |
-
$value = __('URL
|
404 |
} elseif ($json->rank > 0) {
|
405 |
$value = '<strong style="display:block; font-size: 120%; width: 100px; margin: 0 auto; text-align:right;">' . sprintf(__('%s'), $json->rank) . '</strong>' . ((isset($json->country)) ? ' (' . $json->country . ')' : '');
|
406 |
}
|
@@ -440,9 +478,9 @@ class Model_SQ_BlockPostsAnalytics extends WP_List_Table {
|
|
440 |
if ($time_diff > 0)
|
441 |
$value .= '<strong class="attention">' . __('Missed schedule') . '</strong>';
|
442 |
else
|
443 |
-
$value .=__('Scheduled');
|
444 |
} else {
|
445 |
-
$value .=__('Last Modified');
|
446 |
}
|
447 |
}
|
448 |
$class = '';
|
@@ -462,12 +500,14 @@ class Model_SQ_BlockPostsAnalytics extends WP_List_Table {
|
|
462 |
return $strcolumn;
|
463 |
}
|
464 |
|
465 |
-
public function hookFooter()
|
|
|
466 |
$this->postlist->setPosts($this->posts);
|
467 |
$this->postlist->hookFooter();
|
468 |
}
|
469 |
|
470 |
-
public function getScripts()
|
|
|
471 |
return $this->postlist->getScripts();
|
472 |
}
|
473 |
|
1 |
<?php
|
2 |
|
3 |
+
class Model_SQ_BlockPostsAnalytics extends WP_List_Table
|
4 |
+
{
|
5 |
|
6 |
public $_column_headers;
|
7 |
public $posts; //save post list for Squirrly call
|
8 |
private $order_posts;
|
9 |
|
10 |
+
function __construct()
|
11 |
+
{
|
12 |
parent::__construct();
|
13 |
$this->posts = array();
|
14 |
$this->order_posts = array();
|
15 |
}
|
16 |
|
17 |
+
function wp_edit_posts_query($q = false)
|
18 |
+
{
|
19 |
global $current_user;
|
20 |
$post__in = array(0);
|
21 |
if (false === $q)
|
22 |
$q = $_GET;
|
23 |
|
24 |
+
$q['m'] = isset($q['m']) ? (int)$q['m'] : 0;
|
25 |
+
$q['cat'] = isset($q['cat']) ? (int)$q['cat'] : 0;
|
26 |
$post_stati = get_post_stati();
|
27 |
|
28 |
if (isset($q['author'])) {
|
132 |
//////////////
|
133 |
|
134 |
$per_page = 'edit_post_per_page';
|
135 |
+
$posts_per_page = (int)get_user_option($per_page);
|
136 |
if (empty($posts_per_page) || $posts_per_page < 1)
|
137 |
$posts_per_page = 20;
|
138 |
|
140 |
$posts_per_page = apply_filters('edit_posts_per_page', $posts_per_page, 'post');
|
141 |
$query = compact('post_type', 'author', 'post_status', 'perm', 'order', 'orderby', 'meta_key', 'posts_per_page');
|
142 |
|
143 |
+
$query['post__in'] = (array)$post__in;
|
144 |
|
145 |
wp($query);
|
146 |
return $avail_post_stati;
|
147 |
}
|
148 |
|
149 |
+
function order_by_type($query)
|
150 |
+
{
|
151 |
global $wpdb;
|
152 |
+
if (strpos($query, 'ORDER BY') !== false) {
|
153 |
+
$query = str_replace("ORDER BY {$wpdb->posts}.post_date", "ORDER BY {$wpdb->posts}.post_type", $query);
|
154 |
+
} else {
|
155 |
+
$query = str_replace("LIMIT", "ORDER BY {$wpdb->posts}.post_type LIMIT", $query);
|
156 |
+
}
|
157 |
return $query;
|
158 |
}
|
159 |
|
160 |
+
function order_by_rank($query)
|
161 |
+
{
|
162 |
global $wpdb;
|
163 |
if (!empty($this->order_posts)) {
|
164 |
+
if (strpos($query, 'ORDER BY') !== false) {
|
165 |
+
$query = str_replace("ORDER BY {$wpdb->posts}.post_date", "ORDER BY FIELD({$wpdb->posts}.ID, " . join(',', $this->order_posts) . ")", $query);
|
166 |
+
} else {
|
167 |
+
$query = str_replace("LIMIT", "ORDER BY FIELD({$wpdb->posts}.ID, " . join(',', $this->order_posts) . ") LIMIT", $query);
|
168 |
+
|
169 |
+
}
|
170 |
}
|
171 |
return $query;
|
172 |
}
|
173 |
|
174 |
+
function prepare_items()
|
175 |
+
{
|
176 |
global $avail_post_stati, $wp_query, $per_page, $mode;
|
177 |
|
178 |
$avail_post_stati = $this->wp_edit_posts_query();
|
193 |
));
|
194 |
}
|
195 |
|
196 |
+
function get_column_info()
|
197 |
+
{
|
198 |
if (isset($this->_column_headers))
|
199 |
return $this->_column_headers;
|
200 |
|
206 |
if (empty($data))
|
207 |
continue;
|
208 |
|
209 |
+
$data = (array)$data;
|
210 |
if (!isset($data[1]))
|
211 |
$data[1] = false;
|
212 |
|
218 |
return $this->_column_headers;
|
219 |
}
|
220 |
|
221 |
+
function get_sortable_columns()
|
222 |
+
{
|
223 |
return array(
|
224 |
'title' => 'title',
|
225 |
'type' => 'type',
|
229 |
);
|
230 |
}
|
231 |
|
232 |
+
function print_column_headers($with_id = true)
|
233 |
+
{
|
234 |
$strcolumn = '';
|
235 |
|
236 |
+
list($columns, $sortable) = $this->get_column_info();
|
237 |
|
238 |
+
$current_url = (is_ssl() ? 'https://' : 'http://') . $_SERVER['HTTP_HOST'] . $_SERVER['REQUEST_URI'];
|
239 |
$current_url = remove_query_arg('paged', $current_url);
|
240 |
|
241 |
if (isset($_GET['orderby']))
|
260 |
}
|
261 |
|
262 |
if (isset($sortable[$column_key])) {
|
263 |
+
list($orderby, $desc_first) = $sortable[$column_key];
|
264 |
|
265 |
if ($current_orderby == $orderby) {
|
266 |
$order = 'asc' == $current_order ? 'desc' : 'asc';
|
285 |
return $strcolumn;
|
286 |
}
|
287 |
|
288 |
+
function get_columns()
|
289 |
+
{
|
290 |
$post_type = 'post';
|
291 |
|
292 |
$posts_columns = array();
|
308 |
return $posts_columns;
|
309 |
}
|
310 |
|
311 |
+
function display_tablenav($which)
|
312 |
+
{
|
313 |
if ('top' == $which)
|
314 |
wp_nonce_field('bulk-' . $this->_args['plural']);
|
315 |
|
318 |
/* includes the block from theme directory */
|
319 |
?>
|
320 |
<div class="tablenav <?php echo esc_attr($which); ?>">
|
321 |
+
<div class="alignleft actions">
|
322 |
+
<input type="submit" name="" id="post-query-submit" class="button" value="<?php echo __('Reset Filters') ?>" onclick="location.href = '?page=sq_posts';">
|
323 |
+
</div>
|
324 |
+
<?php if ('top' == $which) { ?>
|
325 |
+
<div class="alignleft actions">
|
326 |
+
<input type="search" id="post-search-input" autofocus name="s" value="<?php echo SQ_Tools::getValue('s') ?>" onkeypress="if(sq_check_enter(event)){jQuery('#search-submit').trigger('click')}">
|
327 |
+
<input type="submit" id="search-submit" class="button" onclick="location.href = '?page=sq_posts&s=' + encodeURIComponent(jQuery('#post-search-input').val());" value="<?php echo __('Search Posts') ?>">
|
328 |
+
<script>
|
329 |
+
function sq_check_enter(e) {
|
330 |
+
if (e.keyCode == 13) {
|
331 |
+
return true;
|
332 |
+
}
|
333 |
+
return false;
|
334 |
+
}
|
335 |
+
</script>
|
336 |
+
</div>
|
337 |
+
<?php } ?>
|
338 |
<?php
|
339 |
$this->extra_tablenav($which);
|
340 |
$this->pagination($which);
|
341 |
?>
|
342 |
|
343 |
+
<br class="clear"/>
|
344 |
</div>
|
345 |
<?php
|
346 |
$strnav = ob_get_contents();
|
348 |
return $strnav;
|
349 |
}
|
350 |
|
351 |
+
function display_rows()
|
352 |
+
{
|
353 |
global $wp_query, $post;
|
354 |
static $alternate;
|
355 |
$strrow = '';
|
370 |
return $strrow;
|
371 |
}
|
372 |
|
373 |
+
public function single_row($a_post)
|
374 |
+
{
|
375 |
global $post;
|
376 |
|
377 |
$strcolumn = '';
|
389 |
$post_type_object = get_post_type_object($post->post_type);
|
390 |
$can_edit_post = current_user_can($post_type_object->cap->edit_post, $post->ID);
|
391 |
$json = SQ_ObjController::getModel('SQ_Post')->getKeyword($post->ID);
|
|
|
392 |
foreach ($columns as $key => $column) {
|
393 |
switch ($key) {
|
394 |
case 'title':
|
423 |
case 'keywords':
|
424 |
$value = '';
|
425 |
if (isset($json->keyword)) {
|
426 |
+
$json->keyword = str_replace('\\', '', $json->keyword);
|
427 |
$value = sprintf('<a href="%s">%s</a>', esc_attr(add_query_arg(array('page' => 'sq_posts', 'keyword' => strtolower($json->keyword)), 'admin.php')), $json->keyword);
|
428 |
} else {
|
429 |
$value = __('No Tags');
|
436 |
if ($json->rank == -2) {
|
437 |
$value = __('Could not receive data from google (Err: blocked IP)');
|
438 |
} elseif ($json->rank == -1) {
|
439 |
+
$value = __('Not in top 100 for: <br /> "'.$json->keyword.'"');
|
440 |
} elseif ($json->rank == 0) {
|
441 |
+
$value = __('The URL is indexed');
|
442 |
} elseif ($json->rank > 0) {
|
443 |
$value = '<strong style="display:block; font-size: 120%; width: 100px; margin: 0 auto; text-align:right;">' . sprintf(__('%s'), $json->rank) . '</strong>' . ((isset($json->country)) ? ' (' . $json->country . ')' : '');
|
444 |
}
|
478 |
if ($time_diff > 0)
|
479 |
$value .= '<strong class="attention">' . __('Missed schedule') . '</strong>';
|
480 |
else
|
481 |
+
$value .= __('Scheduled');
|
482 |
} else {
|
483 |
+
$value .= __('Last Modified');
|
484 |
}
|
485 |
}
|
486 |
$class = '';
|
500 |
return $strcolumn;
|
501 |
}
|
502 |
|
503 |
+
public function hookFooter()
|
504 |
+
{
|
505 |
$this->postlist->setPosts($this->posts);
|
506 |
$this->postlist->hookFooter();
|
507 |
}
|
508 |
|
509 |
+
public function getScripts()
|
510 |
+
{
|
511 |
return $this->postlist->getScripts();
|
512 |
}
|
513 |
|
models/SQ_BlockSettingsSeo.php
CHANGED
@@ -209,7 +209,7 @@ class Model_SQ_BlockSettingsSeo
|
|
209 |
if ($account <> '' && strpos($account, 'google.') === false) {
|
210 |
$account = 'https://plus.google.com/' . $account;
|
211 |
}
|
212 |
-
return $account;
|
213 |
}
|
214 |
|
215 |
/**
|
@@ -238,6 +238,23 @@ class Model_SQ_BlockSettingsSeo
|
|
238 |
return $account;
|
239 |
}
|
240 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
241 |
/**
|
242 |
* Add the image to the root path
|
243 |
*
|
209 |
if ($account <> '' && strpos($account, 'google.') === false) {
|
210 |
$account = 'https://plus.google.com/' . $account;
|
211 |
}
|
212 |
+
return str_replace(" ", "+", $account);
|
213 |
}
|
214 |
|
215 |
/**
|
238 |
return $account;
|
239 |
}
|
240 |
|
241 |
+
public function checkPinterestAccount($account)
|
242 |
+
{
|
243 |
+
if ($account <> '' && strpos($account, 'pinterest.com') === false) {
|
244 |
+
$account = 'https://www.pinterest.com/' . $account;
|
245 |
+
}
|
246 |
+
return $account;
|
247 |
+
}
|
248 |
+
|
249 |
+
public function checkInstagramAccount($account)
|
250 |
+
{
|
251 |
+
if ($account <> '' && strpos($account, 'instagram.com') === false) {
|
252 |
+
$account = 'https://www.instagram.com/' . $account;
|
253 |
+
}
|
254 |
+
return $account;
|
255 |
+
}
|
256 |
+
|
257 |
+
|
258 |
/**
|
259 |
* Add the image to the root path
|
260 |
*
|
models/SQ_Blocksearch.php
CHANGED
@@ -6,69 +6,5 @@
|
|
6 |
*/
|
7 |
class Model_SQ_Blocksearch {
|
8 |
|
9 |
-
public $results;
|
10 |
-
|
11 |
-
public function searchImage($get) {
|
12 |
-
$pack = $results_free = $results = array();
|
13 |
-
$params = array('api_key' => '8c824e0994879c3580200f2eb7d4bdd7',
|
14 |
-
'method' => 'flickr.photos.search',
|
15 |
-
'format' => 'php_serial',
|
16 |
-
'tag_mode' => 'any',
|
17 |
-
'per_page' => $get['nrb'],
|
18 |
-
'page' => $get['page'],
|
19 |
-
'sort' => 'interestingness-desc',
|
20 |
-
// 'sort' => 'relevance',
|
21 |
-
'tags' => $get['q'],
|
22 |
-
// 'privacy_filter' => '1,2,3,4',
|
23 |
-
'license' => '7'
|
24 |
-
);
|
25 |
-
|
26 |
-
|
27 |
-
$this->doFlickrSearch($params, 1);
|
28 |
-
|
29 |
-
//Search for images with licence attributes
|
30 |
-
$params['license'] = '1,2,3,4,5,6';
|
31 |
-
$this->doFlickrSearch($params);
|
32 |
-
|
33 |
-
if (is_array($this->results) && count($this->results) > 0)
|
34 |
-
return json_encode($this->results);
|
35 |
-
|
36 |
-
return false;
|
37 |
-
}
|
38 |
-
|
39 |
-
/**
|
40 |
-
* Get the images from flicker
|
41 |
-
* @param array $params
|
42 |
-
* @param integer $free: 1|0
|
43 |
-
*/
|
44 |
-
private function doFlickrSearch($params, $free = 0) {
|
45 |
-
foreach ($params as $k => $v) {
|
46 |
-
$pack[] = urlencode($k) . '=' . urlencode($v);
|
47 |
-
}
|
48 |
-
|
49 |
-
//Call Flickr
|
50 |
-
$url = "https://api.flickr.com/services/rest/?" . implode('&', $pack);
|
51 |
-
|
52 |
-
$rsp = wp_remote_fopen($url);
|
53 |
-
$rsp_obj = unserialize($rsp);
|
54 |
-
|
55 |
-
// if we have photos
|
56 |
-
if ($rsp_obj && isset($rsp_obj['photos']) && $rsp_obj['photos']['total'] > 0) {
|
57 |
-
foreach ($rsp_obj['photos']['photo'] as $photo) {
|
58 |
-
|
59 |
-
$src = 'http://farm' . $photo['farm'] . '.static.flickr.com/' . $photo['server'] . '/' . $photo['id'] . '_' . $photo['secret'];
|
60 |
-
$source = 'http://www.flickr.com/photos/' . $photo['owner'] . '/' . $photo['id'];
|
61 |
-
|
62 |
-
$this->results['responseData']['results'][] = array('tbUrl' => $src . '_s.jpg',
|
63 |
-
'url' => $src . '.jpg',
|
64 |
-
'attribute' => ($free == 0) ? $source : '',
|
65 |
-
'width' => '',
|
66 |
-
'height' => '',
|
67 |
-
'contentNoFormatting' => $photo['title']);
|
68 |
-
}
|
69 |
-
}
|
70 |
-
|
71 |
-
return false;
|
72 |
-
}
|
73 |
|
74 |
}
|
6 |
*/
|
7 |
class Model_SQ_Blocksearch {
|
8 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
9 |
|
10 |
}
|
models/SQ_Frontend.php
CHANGED
@@ -23,6 +23,8 @@ class Model_SQ_Frontend {
|
|
23 |
|
24 |
/** @var array */
|
25 |
private $thumb_images;
|
|
|
|
|
26 |
|
27 |
/** @var integer */
|
28 |
private $min_title_length = 10;
|
@@ -171,7 +173,7 @@ class Model_SQ_Frontend {
|
|
171 |
//get the post from shop if woocommerce is installed
|
172 |
if (!isset($this->post)) {
|
173 |
if (function_exists('is_shop') && is_shop()) {
|
174 |
-
$this->post = get_post(
|
175 |
} elseif (isset($post->ID)) {
|
176 |
$this->post = get_post($post->ID);
|
177 |
}
|
@@ -179,6 +181,13 @@ class Model_SQ_Frontend {
|
|
179 |
|
180 |
if ($this->is_squirrly()) {
|
181 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
182 |
preg_match("/<head[^>]*>/i", $buffer, $out);
|
183 |
if (!empty($out)) {
|
184 |
$this->meta['blogname'] = get_bloginfo('name');
|
@@ -191,7 +200,7 @@ class Model_SQ_Frontend {
|
|
191 |
|
192 |
if ((SQ_Tools::$options['sq_auto_description'] == 1 && $this->isHomePage()) || !$this->isHomePage()) {
|
193 |
//clear the existing description and keywords
|
194 |
-
$buffer = @preg_replace('/<meta[^>]*(name|property)=["\'](description|keywords)["\'][^>]*content=["\'][^"\'>]*["\'][^>]*>[\n\r]*/si', '', $buffer, -1
|
195 |
}
|
196 |
if (SQ_Tools::$options['sq_auto_facebook'] == 1) {
|
197 |
$buffer = @preg_replace('/<meta[^>]*(name|property)=["\'](og:|article:)[^"\'>]+["\'][^>]*content=["\'][^"\'>]+["\'][^>]*>[\n\r]*/si', '', $buffer, -1);
|
@@ -215,11 +224,9 @@ class Model_SQ_Frontend {
|
|
215 |
if ((SQ_Tools::$options['sq_auto_title'] == 1 && $this->isHomePage()) || !$this->isHomePage()) {
|
216 |
if (isset($this->title) && $this->title <> '') {
|
217 |
//replace the existing title
|
218 |
-
$buffer = @preg_replace('/<title[^<>]*>([^<>]*)<\/title>/si', '', $buffer, 1);
|
219 |
-
$buffer = @preg_replace('/(<head[^>]*>)/si', sprintf("$1\n<title>%s</title>", $this->title) . "\n", $buffer, 1);
|
220 |
}
|
221 |
-
} else {
|
222 |
-
$buffer = @preg_replace('/(<head[^>]*>)/si', sprintf("$1%s", $this->getHeader()) . "\n", $buffer, 1);
|
223 |
}
|
224 |
|
225 |
if (strpos($buffer, '<squirrly />') !== false) {
|
@@ -290,6 +297,7 @@ class Model_SQ_Frontend {
|
|
290 |
/* SEO optimizer tool */
|
291 |
$ret .= $this->getGoogleWT();
|
292 |
$ret .= $this->getGoogleAnalytics();
|
|
|
293 |
$ret .= $this->getFacebookIns();
|
294 |
$ret .= $this->getBingWT();
|
295 |
$ret .= $this->getPinterest();
|
@@ -303,7 +311,7 @@ class Model_SQ_Frontend {
|
|
303 |
return $ret;
|
304 |
}
|
305 |
|
306 |
-
public function setPost($newpost){
|
307 |
global $post;
|
308 |
$this->post = $post = $newpost;
|
309 |
}
|
@@ -384,9 +392,9 @@ class Model_SQ_Frontend {
|
|
384 |
if (!empty($this->thumb_images)) {
|
385 |
foreach ($this->thumb_images as $image) {
|
386 |
$meta .= sprintf('<meta property="og:image" content="%s" />', $image['src']) . "\n";
|
387 |
-
$meta .= sprintf('<meta property="og:image:width" content="%s" />', ((isset($image['width']) && $image['width'] <> ''
|
388 |
if (isset($image['height']) && $image['height'] <> '')
|
389 |
-
$meta .= sprintf('<meta property="og:image:height" content="%s" />', (int)
|
390 |
}
|
391 |
}
|
392 |
|
@@ -410,6 +418,55 @@ class Model_SQ_Frontend {
|
|
410 |
$meta .= sprintf('<meta property="og:type" content="%s" />', 'profile') . "\n";
|
411 |
$meta .= sprintf('<meta property="profile:first_name" content="%s" />', get_the_author_meta('first_name', $author->ID)) . "\n";
|
412 |
$meta .= sprintf('<meta property="profile:last_name" content="%s" />', get_the_author_meta('last_name', $author->ID)) . "\n";
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
413 |
} elseif (!$this->isHomePage() && (is_single() || is_page())) {
|
414 |
|
415 |
|
@@ -441,11 +498,10 @@ class Model_SQ_Frontend {
|
|
441 |
* @return string
|
442 |
*/
|
443 |
private function setCanonical() {
|
444 |
-
|
445 |
-
if ($this->url) {
|
446 |
remove_action('wp_head', 'rel_canonical');
|
447 |
|
448 |
-
return sprintf("<link rel=\"canonical\" href=\"%s\" />", $
|
449 |
}
|
450 |
|
451 |
return '';
|
@@ -493,7 +549,7 @@ class Model_SQ_Frontend {
|
|
493 |
$this->title = $this->grabTitleFromPost();
|
494 |
}
|
495 |
if (is_paged()) {
|
496 |
-
$this->title .= $sep . __('Page', _SQ_PLUGIN_NAME_) . " " . get_query_var('paged');
|
497 |
}
|
498 |
} elseif (is_author()) { //for author
|
499 |
if ($this->title == '') {
|
@@ -503,12 +559,12 @@ class Model_SQ_Frontend {
|
|
503 |
$this->title = __('About') . " " . ucfirst($this->getAuthor('display_name'));
|
504 |
}
|
505 |
if (is_paged()) {
|
506 |
-
$this->title .= $sep . __('Page', _SQ_PLUGIN_NAME_) . " " . get_query_var('paged');
|
507 |
}
|
508 |
} elseif (is_tag()) { //for tags
|
509 |
if (is_paged()) {
|
510 |
$tag = get_query_var('tag');
|
511 |
-
$this->title = ucfirst(str_replace('-', ' ', $tag)) . $sep . __('Page', _SQ_PLUGIN_NAME_) . " " . get_query_var('paged');
|
512 |
}
|
513 |
} elseif (is_archive()) { //for archive and products
|
514 |
if (isset($this->post) && isset($this->post->ID)) {
|
@@ -530,7 +586,7 @@ class Model_SQ_Frontend {
|
|
530 |
}
|
531 |
|
532 |
if (is_paged()) {
|
533 |
-
$this->title .= $sep . __('Page', _SQ_PLUGIN_NAME_) . " " . get_query_var('paged');
|
534 |
}
|
535 |
} elseif (is_single() || is_page() || is_singular() || in_array(get_post_type(), $this->post_type)) {
|
536 |
if (isset($this->post) && isset($this->post->ID)) {
|
@@ -575,6 +631,7 @@ class Model_SQ_Frontend {
|
|
575 |
public function clearTitle($title) {
|
576 |
if ($title <> '') {
|
577 |
$title = SQ_Tools::i18n(trim(esc_html(ent2ncr(strip_tags($title)))));
|
|
|
578 |
}
|
579 |
return $title;
|
580 |
}
|
@@ -593,6 +650,20 @@ class Model_SQ_Frontend {
|
|
593 |
$post = $this->post;
|
594 |
}
|
595 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
596 |
if ($post && isset($post->ID)) {
|
597 |
if ($url = $this->getAdvancedMeta($post->ID, 'ogimage')) {
|
598 |
$images[] = array(
|
@@ -602,6 +673,8 @@ class Model_SQ_Frontend {
|
|
602 |
'width' => null,
|
603 |
'height' => null,
|
604 |
);
|
|
|
|
|
605 |
}
|
606 |
if ($all || empty($images)) {
|
607 |
if (has_post_thumbnail($post->ID)) {
|
@@ -657,15 +730,17 @@ class Model_SQ_Frontend {
|
|
657 |
}
|
658 |
|
659 |
if ($post && isset($post->ID)) {
|
660 |
-
if
|
661 |
-
|
|
|
|
|
662 |
|
663 |
-
|
664 |
-
|
665 |
-
|
|
|
|
|
666 |
}
|
667 |
-
$videos[] = esc_url($match[0]);
|
668 |
-
}
|
669 |
|
670 |
// preg_match('/(?:http(?:s)?:\/\/)?(?:fast\.wistia\.net\/(?:embed)\/(?:iframe)\/)([^\?&\"\'>\s]+)/si', $post->post_content, $match);
|
671 |
//
|
@@ -676,22 +751,23 @@ class Model_SQ_Frontend {
|
|
676 |
// $videos[] = esc_url($match[0]);
|
677 |
// }
|
678 |
|
679 |
-
|
680 |
|
681 |
-
|
682 |
-
|
683 |
-
|
684 |
|
685 |
-
|
686 |
|
687 |
-
|
688 |
-
|
689 |
-
|
690 |
|
691 |
-
|
692 |
|
693 |
-
|
694 |
-
|
|
|
695 |
}
|
696 |
}
|
697 |
}
|
@@ -703,6 +779,7 @@ class Model_SQ_Frontend {
|
|
703 |
$this->getCustomDescription();
|
704 |
return $this->description;
|
705 |
}
|
|
|
706 |
/**
|
707 |
* Get the description from last/current article
|
708 |
*
|
@@ -727,7 +804,7 @@ class Model_SQ_Frontend {
|
|
727 |
}
|
728 |
|
729 |
if (is_paged()) {
|
730 |
-
$description .= $sep . __('Page', _SQ_PLUGIN_NAME_) . " " . get_query_var('paged');
|
731 |
}
|
732 |
|
733 |
if ($this->isHomePage() && $description <> '') {
|
@@ -741,7 +818,7 @@ class Model_SQ_Frontend {
|
|
741 |
$description = $this->grabDescriptionFromPost() . $sep . $this->getAuthor('display_name');
|
742 |
}
|
743 |
if (is_paged()) {
|
744 |
-
$description .= $sep . __('Page', _SQ_PLUGIN_NAME_) . " " . get_query_var('paged');
|
745 |
}
|
746 |
} elseif (is_tag()) { //for tags
|
747 |
$description = tag_description();
|
@@ -750,7 +827,7 @@ class Model_SQ_Frontend {
|
|
750 |
$description = ucfirst($tag) . $sep . $this->grabDescriptionFromPost();
|
751 |
}
|
752 |
if (is_paged()) {
|
753 |
-
$description .= $sep . __('Page', _SQ_PLUGIN_NAME_) . " " . get_query_var('paged');
|
754 |
}
|
755 |
} elseif (is_archive()) { //for archive and products
|
756 |
if (isset($this->post) && isset($this->post->ID)) {
|
@@ -776,7 +853,7 @@ class Model_SQ_Frontend {
|
|
776 |
}
|
777 |
|
778 |
if (is_paged()) {
|
779 |
-
$description .= $sep . __('Page', _SQ_PLUGIN_NAME_) . " " . get_query_var('paged');
|
780 |
}
|
781 |
} elseif (is_single() || is_page() || is_singular() || $this->checkPostsPage() || in_array(get_post_type(), $this->post_type)) {
|
782 |
if (isset($this->post) && isset($this->post->ID)) {
|
@@ -792,20 +869,20 @@ class Model_SQ_Frontend {
|
|
792 |
}
|
793 |
}
|
794 |
}
|
795 |
-
}else
|
796 |
|
797 |
-
|
798 |
-
|
799 |
|
800 |
-
|
801 |
-
|
802 |
-
|
803 |
-
|
804 |
-
|
805 |
-
|
806 |
-
|
|
|
807 |
}
|
808 |
-
}
|
809 |
|
810 |
$description = (($description <> '') ? $description : $this->title);
|
811 |
if ($description <> '') {
|
@@ -830,6 +907,7 @@ class Model_SQ_Frontend {
|
|
830 |
}
|
831 |
|
832 |
$description = SQ_Tools::i18n(trim(esc_html(ent2ncr(strip_tags($description)))));
|
|
|
833 |
}
|
834 |
|
835 |
return $description;
|
@@ -854,7 +932,8 @@ class Model_SQ_Frontend {
|
|
854 |
/* Check if is a predefined Keyword */
|
855 |
if (SQ_Tools::$options['sq_auto_description'] == 1) { //
|
856 |
if (($this->isHomePage() &&
|
857 |
-
|
|
|
858 |
$keywords = strip_tags(SQ_Tools::$options ['sq_fp_keywords']);
|
859 |
}
|
860 |
}
|
@@ -876,7 +955,7 @@ class Model_SQ_Frontend {
|
|
876 |
private function getCopyright() {
|
877 |
$meta = '';
|
878 |
|
879 |
-
$name = $this->getAuthor();
|
880 |
if ($name == '') {
|
881 |
$name = $this->meta['blogname'];
|
882 |
}
|
@@ -982,7 +1061,7 @@ class Model_SQ_Frontend {
|
|
982 |
$date = null;
|
983 |
$meta = '';
|
984 |
|
985 |
-
$name = $this->getAuthor();
|
986 |
if (!$name) {
|
987 |
$name = $this->meta['blogname'];
|
988 |
}
|
@@ -1048,10 +1127,13 @@ class Model_SQ_Frontend {
|
|
1048 |
$sq_google_analytics = SQ_Tools::$options['sq_google_analytics'];
|
1049 |
|
1050 |
if ($sq_google_analytics <> '') {
|
1051 |
-
|
|
|
|
|
|
|
1052 |
->loadMedia('https://www.google-analytics.com/analytics.js');
|
1053 |
|
1054 |
-
|
1055 |
(function(i,s,o,g,r,a,m){i['GoogleAnalyticsObject']=r;i[r]=i[r]||function(){
|
1056 |
(i[r].q=i[r].q||[]).push(arguments)},i[r].l=1*new Date();a=s.createElement(o),
|
1057 |
m=s.getElementsByTagName(o)[0];a.async=1;a.src=g;m.parentNode.insertBefore(a,m)
|
@@ -1059,8 +1141,46 @@ class Model_SQ_Frontend {
|
|
1059 |
|
1060 |
ga('create', '%s', 'auto');
|
1061 |
ga('send', 'pageview');
|
1062 |
-
|
1063 |
</script>", $sq_google_analytics);
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1064 |
}
|
1065 |
|
1066 |
return false;
|
@@ -1161,18 +1281,24 @@ class Model_SQ_Frontend {
|
|
1161 |
|
1162 |
if ($meta <> '') {
|
1163 |
$social = '';
|
1164 |
-
if (
|
1165 |
$social .= ($social <> '' ? "," : '') . '"' . SQ_Tools::$options['sq_twitter_account'] . '"';
|
1166 |
}
|
1167 |
-
if (
|
1168 |
$social .= ($social <> '' ? "," : '') . '"' . SQ_Tools::$options['sq_facebook_account'] . '"';
|
1169 |
}
|
1170 |
-
if (
|
1171 |
$social .= ($social <> '' ? "," : '') . '"' . SQ_Tools::$options['sq_google_plus'] . '"';
|
1172 |
}
|
1173 |
-
if (
|
1174 |
$social .= ($social <> '' ? "," : '') . '"' . SQ_Tools::$options['sq_linkedin_account'] . '"';
|
1175 |
}
|
|
|
|
|
|
|
|
|
|
|
|
|
1176 |
|
1177 |
$search = $sep . '"potentialAction": { "@type": "SearchAction", "target": "' . get_bloginfo('url') . '?s={search_string}", "query-input": "required name=search_string" }';
|
1178 |
|
@@ -1208,8 +1334,8 @@ class Model_SQ_Frontend {
|
|
1208 |
$meta .= '"image": {
|
1209 |
"@type": "ImageObject",
|
1210 |
"url": "' . $image['src'] . '",
|
1211 |
-
"height": ' . ((isset($image['height']) && $image['height'] <> ''
|
1212 |
-
"width": ' . ((isset($image['width']) && $image['width'] <> ''
|
1213 |
}' . $sep;
|
1214 |
break;
|
1215 |
}
|
@@ -1396,7 +1522,7 @@ class Model_SQ_Frontend {
|
|
1396 |
|
1397 |
if (is_home()) {
|
1398 |
if (isset($wp_query->posts) && !empty($wp_query->posts)) {
|
1399 |
-
$posts = (array)
|
1400 |
|
1401 |
if (SQ_Tools::$options['sq_keywordtag'] == 1) {
|
1402 |
foreach ($posts as $post) {
|
@@ -1413,7 +1539,7 @@ class Model_SQ_Frontend {
|
|
1413 |
}
|
1414 |
if (count($keywords) <= $this->max_keywords) {
|
1415 |
if (isset($wp_query->posts) && !empty($wp_query->posts)) {
|
1416 |
-
$posts = (array)
|
1417 |
|
1418 |
foreach ($posts as $post) {
|
1419 |
$id = (is_attachment()) ? ($post->post_parent) : ($post->ID);
|
@@ -1456,25 +1582,23 @@ class Model_SQ_Frontend {
|
|
1456 |
*
|
1457 |
* @return string
|
1458 |
*/
|
1459 |
-
public function getCanonicalUrl() {
|
1460 |
global $wp_query;
|
1461 |
|
1462 |
-
if (isset($this->url)) {
|
1463 |
-
return $this->url;
|
1464 |
-
}
|
1465 |
-
|
1466 |
if (!isset($wp_query) || is_404() || is_search()) {
|
1467 |
return false;
|
1468 |
}
|
1469 |
|
1470 |
-
|
1471 |
-
|
1472 |
-
|
|
|
|
|
|
|
1473 |
}
|
1474 |
}
|
1475 |
|
1476 |
$haspost = (count($wp_query->posts) > 0);
|
1477 |
-
$has_ut = function_exists('user_trailingslashit');
|
1478 |
|
1479 |
if (get_query_var('m') <> '') {
|
1480 |
$m = preg_replace('/[^0-9]/', '', get_query_var('m'));
|
@@ -1530,7 +1654,7 @@ class Model_SQ_Frontend {
|
|
1530 |
$taxonomy = get_query_var('taxonomy');
|
1531 |
$term = get_query_var('term');
|
1532 |
$link = $this->getPaged(
|
1533 |
-
|
1534 |
} else {
|
1535 |
return false;
|
1536 |
}
|
@@ -1543,7 +1667,7 @@ class Model_SQ_Frontend {
|
|
1543 |
if (is_author()) {
|
1544 |
$this->author = get_userdata(get_query_var('author'));
|
1545 |
} elseif (is_single() && isset($this->post->post_author)) {
|
1546 |
-
$this->author = get_userdata((int)
|
1547 |
}
|
1548 |
}
|
1549 |
|
@@ -1551,7 +1675,8 @@ class Model_SQ_Frontend {
|
|
1551 |
|
1552 |
if ($what == 'user_url' && $this->author->$what == '') {
|
1553 |
return get_author_posts_url($this->author->ID, $this->author->user_nicename);
|
1554 |
-
}
|
|
|
1555 |
return $this->author->$what;
|
1556 |
}
|
1557 |
}
|
@@ -1560,7 +1685,7 @@ class Model_SQ_Frontend {
|
|
1560 |
}
|
1561 |
|
1562 |
public function getPaged($link) {
|
1563 |
-
$page = get_query_var('paged');
|
1564 |
if ($page && $page > 1) {
|
1565 |
$link = trailingslashit($link) . "page/" . "$page/";
|
1566 |
}
|
@@ -1575,6 +1700,16 @@ class Model_SQ_Frontend {
|
|
1575 |
private function isHomePage() {
|
1576 |
global $wp_query;
|
1577 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1578 |
return (is_home() || (isset($wp_query->query) && empty($wp_query->query) && !is_preview()));
|
1579 |
}
|
1580 |
|
@@ -1622,7 +1757,8 @@ class Model_SQ_Frontend {
|
|
1622 |
public function truncate($text, $min, $max) {
|
1623 |
if (function_exists('strip_tags')) {
|
1624 |
$text = strip_tags($text);
|
1625 |
-
}
|
|
|
1626 |
$text = @preg_replace('|\[(.+?)\](.+?\[/\\1\])?|s', '', $text);
|
1627 |
$text = strip_tags($text);
|
1628 |
|
@@ -1686,7 +1822,7 @@ class Model_SQ_Frontend {
|
|
1686 |
$field = '';
|
1687 |
$cond = '';
|
1688 |
|
1689 |
-
if (!isset($post_id) || (int)
|
1690 |
return '';
|
1691 |
}
|
1692 |
|
@@ -1720,7 +1856,7 @@ class Model_SQ_Frontend {
|
|
1720 |
|
1721 |
$sql = "SELECT `meta_key`, `meta_value`
|
1722 |
FROM `" . $wpdb->postmeta . "`
|
1723 |
-
WHERE `post_id`=" . (int)
|
1724 |
|
1725 |
if ($rows = $wpdb->get_results($sql)) {
|
1726 |
foreach ($rows as $row) {
|
@@ -1755,7 +1891,7 @@ class Model_SQ_Frontend {
|
|
1755 |
$field = '';
|
1756 |
$cond = '';
|
1757 |
|
1758 |
-
if (!isset($post_id) || (int)
|
1759 |
return '';
|
1760 |
}
|
1761 |
|
@@ -1784,7 +1920,7 @@ class Model_SQ_Frontend {
|
|
1784 |
|
1785 |
$sql = "SELECT `meta_key`, `meta_value`
|
1786 |
FROM `" . $wpdb->postmeta . "`
|
1787 |
-
WHERE `post_id`=" . (int)
|
1788 |
|
1789 |
$rows = $wpdb->get_results($sql);
|
1790 |
if ($rows) {
|
@@ -1825,7 +1961,7 @@ class Model_SQ_Frontend {
|
|
1825 |
echo "\n# Squirrly Sitemaps is disabled. Please see Site Visibility on Settings > Reading.";
|
1826 |
} else {
|
1827 |
if (SQ_Tools::$options['sq_auto_sitemap'] == 1) {
|
1828 |
-
foreach ((array)
|
1829 |
if ($name == 'sitemap-product' && !SQ_ObjController::getModel('SQ_BlockSettingsSeo')->isEcommerce()) {
|
1830 |
continue;
|
1831 |
}
|
@@ -1841,7 +1977,7 @@ class Model_SQ_Frontend {
|
|
1841 |
echo "\n\n";
|
1842 |
|
1843 |
if (!empty(SQ_Tools::$options['sq_robots_permission'])) {
|
1844 |
-
foreach ((array)
|
1845 |
echo $robot_txt . "\n";
|
1846 |
}
|
1847 |
echo "\n\n";
|
23 |
|
24 |
/** @var array */
|
25 |
private $thumb_images;
|
26 |
+
private $thumb_video;
|
27 |
+
private $custom_og_image = false;
|
28 |
|
29 |
/** @var integer */
|
30 |
private $min_title_length = 10;
|
173 |
//get the post from shop if woocommerce is installed
|
174 |
if (!isset($this->post)) {
|
175 |
if (function_exists('is_shop') && is_shop()) {
|
176 |
+
$this->post = get_post(wc_get_page_id('shop'));
|
177 |
} elseif (isset($post->ID)) {
|
178 |
$this->post = get_post($post->ID);
|
179 |
}
|
181 |
|
182 |
if ($this->is_squirrly()) {
|
183 |
|
184 |
+
//update ... please monitor
|
185 |
+
if(is_single() || is_page() ){
|
186 |
+
if(!isset($this->post->ID)){
|
187 |
+
return $buffer;
|
188 |
+
}
|
189 |
+
}
|
190 |
+
|
191 |
preg_match("/<head[^>]*>/i", $buffer, $out);
|
192 |
if (!empty($out)) {
|
193 |
$this->meta['blogname'] = get_bloginfo('name');
|
200 |
|
201 |
if ((SQ_Tools::$options['sq_auto_description'] == 1 && $this->isHomePage()) || !$this->isHomePage()) {
|
202 |
//clear the existing description and keywords
|
203 |
+
$buffer = @preg_replace('/<meta[^>]*(name|property)=["\'](description|keywords)["\'][^>]*content=["\'][^"\'>]*["\'][^>]*>[\n\r]*/si', '', $buffer, -1);
|
204 |
}
|
205 |
if (SQ_Tools::$options['sq_auto_facebook'] == 1) {
|
206 |
$buffer = @preg_replace('/<meta[^>]*(name|property)=["\'](og:|article:)[^"\'>]+["\'][^>]*content=["\'][^"\'>]+["\'][^>]*>[\n\r]*/si', '', $buffer, -1);
|
224 |
if ((SQ_Tools::$options['sq_auto_title'] == 1 && $this->isHomePage()) || !$this->isHomePage()) {
|
225 |
if (isset($this->title) && $this->title <> '') {
|
226 |
//replace the existing title
|
227 |
+
$buffer = @preg_replace('/<title[^<>]*>([^<>]*)<\/title>/si', '', $buffer, -1);
|
228 |
+
$buffer = @preg_replace('/(<head[^>]*>)/si', sprintf("$1\n<title>%s</title>", $this->title) . "\n", $buffer, -1 );
|
229 |
}
|
|
|
|
|
230 |
}
|
231 |
|
232 |
if (strpos($buffer, '<squirrly />') !== false) {
|
297 |
/* SEO optimizer tool */
|
298 |
$ret .= $this->getGoogleWT();
|
299 |
$ret .= $this->getGoogleAnalytics();
|
300 |
+
$ret .= $this->getFacebookPixel();
|
301 |
$ret .= $this->getFacebookIns();
|
302 |
$ret .= $this->getBingWT();
|
303 |
$ret .= $this->getPinterest();
|
311 |
return $ret;
|
312 |
}
|
313 |
|
314 |
+
public function setPost($newpost) {
|
315 |
global $post;
|
316 |
$this->post = $post = $newpost;
|
317 |
}
|
392 |
if (!empty($this->thumb_images)) {
|
393 |
foreach ($this->thumb_images as $image) {
|
394 |
$meta .= sprintf('<meta property="og:image" content="%s" />', $image['src']) . "\n";
|
395 |
+
$meta .= sprintf('<meta property="og:image:width" content="%s" />', ((isset($image['width']) && $image['width'] <> '') ? (int)$image['width'] : 500)) . "\n";
|
396 |
if (isset($image['height']) && $image['height'] <> '')
|
397 |
+
$meta .= sprintf('<meta property="og:image:height" content="%s" />', (int)$image['height']) . "\n";
|
398 |
}
|
399 |
}
|
400 |
|
418 |
$meta .= sprintf('<meta property="og:type" content="%s" />', 'profile') . "\n";
|
419 |
$meta .= sprintf('<meta property="profile:first_name" content="%s" />', get_the_author_meta('first_name', $author->ID)) . "\n";
|
420 |
$meta .= sprintf('<meta property="profile:last_name" content="%s" />', get_the_author_meta('last_name', $author->ID)) . "\n";
|
421 |
+
} elseif (function_exists('is_product') && is_product()) {
|
422 |
+
$meta .= sprintf('<meta property="og:type" content="%s" />', 'product') . "\n";
|
423 |
+
|
424 |
+
$cat = get_the_terms($this->post->ID, 'product_cat');
|
425 |
+
if (!empty($cat) && count($cat) > 0) {
|
426 |
+
$meta .= sprintf('<meta property="product:category" content="%s" />', $cat[0]->name) . "\n";
|
427 |
+
}
|
428 |
+
|
429 |
+
if (class_exists('WC_Product')) {
|
430 |
+
$product = new WC_Product($this->post->ID);
|
431 |
+
if (isset($product->regular_price)) {
|
432 |
+
if ((int)$product->regular_price > 0 && $product->regular_price <> $product->price && function_exists('get_woocommerce_currency')) {
|
433 |
+
$meta .= sprintf('<meta property="product:original_price:amount" content="%s" />', $product->regular_price) . "\n";
|
434 |
+
$meta .= sprintf('<meta property="product:original_price:currency" content="%s" />', get_woocommerce_currency()) . "\n";
|
435 |
+
}
|
436 |
+
}
|
437 |
+
|
438 |
+
if (isset($product->price)) {
|
439 |
+
if ((int)$product->price > 0 && function_exists('get_woocommerce_currency')) {
|
440 |
+
$meta .= sprintf('<meta property="product:price:amount" content="%s" />', $product->price) . "\n";
|
441 |
+
$meta .= sprintf('<meta property="product:price:currency" content="%s" />', get_woocommerce_currency()) . "\n";
|
442 |
+
}
|
443 |
+
}
|
444 |
+
|
445 |
+
if (isset($product->sale_price)) {
|
446 |
+
if ((int)$product->sale_price > 0 && function_exists('get_woocommerce_currency')) {
|
447 |
+
$sales_price_from = get_post_meta($this->post->ID, '_sale_price_dates_from', true);
|
448 |
+
$sales_price_to = get_post_meta($this->post->ID, '_sale_price_dates_to', true);
|
449 |
+
|
450 |
+
$meta .= sprintf('<meta property="product:sale_price:amount" content="%s" />', $product->sale_price) . "\n";
|
451 |
+
$meta .= sprintf('<meta property="product:sale_price:currency" content="%s" />', get_woocommerce_currency()) . "\n";
|
452 |
+
if ($sales_price_from > 0) {
|
453 |
+
$meta .= sprintf('<meta property="product:sale_price:start" content="%s" />', date("Y-m-d H:i:s", $sales_price_from)) . "\n";
|
454 |
+
}
|
455 |
+
if ($sales_price_to) {
|
456 |
+
$meta .= sprintf('<meta property="product:sale_price:end" content="%s" />', date("Y-m-d H:i:s", $sales_price_to)) . "\n";
|
457 |
+
}
|
458 |
+
|
459 |
+
}
|
460 |
+
}
|
461 |
+
if (isset($product->weight)) {
|
462 |
+
if ((int)$product->weight > 0 && get_option('woocommerce_weight_unit') <> '') {
|
463 |
+
$meta .= sprintf('<meta property="product:weight:value" content="%s" />', $product->weight) . "\n";
|
464 |
+
$meta .= sprintf('<meta property="product:weight:units" content="%s" />', get_option('woocommerce_weight_unit')) . "\n";
|
465 |
+
}
|
466 |
+
}
|
467 |
+
|
468 |
+
}
|
469 |
+
|
470 |
} elseif (!$this->isHomePage() && (is_single() || is_page())) {
|
471 |
|
472 |
|
498 |
* @return string
|
499 |
*/
|
500 |
private function setCanonical() {
|
501 |
+
if ($url = $this->getCanonicalUrl(true)) {
|
|
|
502 |
remove_action('wp_head', 'rel_canonical');
|
503 |
|
504 |
+
return sprintf("<link rel=\"canonical\" href=\"%s\" />", $url) . "\n";
|
505 |
}
|
506 |
|
507 |
return '';
|
549 |
$this->title = $this->grabTitleFromPost();
|
550 |
}
|
551 |
if (is_paged()) {
|
552 |
+
$this->title .= $sep . __('Page', _SQ_PLUGIN_NAME_) . " " . (int)get_query_var('paged');
|
553 |
}
|
554 |
} elseif (is_author()) { //for author
|
555 |
if ($this->title == '') {
|
559 |
$this->title = __('About') . " " . ucfirst($this->getAuthor('display_name'));
|
560 |
}
|
561 |
if (is_paged()) {
|
562 |
+
$this->title .= $sep . __('Page', _SQ_PLUGIN_NAME_) . " " . (int)get_query_var('paged');
|
563 |
}
|
564 |
} elseif (is_tag()) { //for tags
|
565 |
if (is_paged()) {
|
566 |
$tag = get_query_var('tag');
|
567 |
+
$this->title = ucfirst(str_replace('-', ' ', $tag)) . $sep . __('Page', _SQ_PLUGIN_NAME_) . " " . (int)get_query_var('paged');
|
568 |
}
|
569 |
} elseif (is_archive()) { //for archive and products
|
570 |
if (isset($this->post) && isset($this->post->ID)) {
|
586 |
}
|
587 |
|
588 |
if (is_paged()) {
|
589 |
+
$this->title .= $sep . __('Page', _SQ_PLUGIN_NAME_) . " " . (int)get_query_var('paged');
|
590 |
}
|
591 |
} elseif (is_single() || is_page() || is_singular() || in_array(get_post_type(), $this->post_type)) {
|
592 |
if (isset($this->post) && isset($this->post->ID)) {
|
631 |
public function clearTitle($title) {
|
632 |
if ($title <> '') {
|
633 |
$title = SQ_Tools::i18n(trim(esc_html(ent2ncr(strip_tags($title)))));
|
634 |
+
$title = addcslashes($title, '$');
|
635 |
}
|
636 |
return $title;
|
637 |
}
|
650 |
$post = $this->post;
|
651 |
}
|
652 |
|
653 |
+
if (SQ_Tools::$options['sq_auto_description'] == 1) { //
|
654 |
+
if (($this->isHomePage() && SQ_Tools::$options['sq_fp_ogimage'] <> '')) {
|
655 |
+
$images[] = array(
|
656 |
+
'src' => esc_url(SQ_Tools::$options['sq_fp_ogimage']),
|
657 |
+
'title' => $this->clearTitle($this->grabTitleFromPost($post->ID)),
|
658 |
+
'description' => $this->clearDescription($this->grabDescriptionFromPost($post->ID)),
|
659 |
+
'width' => null,
|
660 |
+
'height' => null,
|
661 |
+
);
|
662 |
+
|
663 |
+
return $images;
|
664 |
+
}
|
665 |
+
}
|
666 |
+
|
667 |
if ($post && isset($post->ID)) {
|
668 |
if ($url = $this->getAdvancedMeta($post->ID, 'ogimage')) {
|
669 |
$images[] = array(
|
673 |
'width' => null,
|
674 |
'height' => null,
|
675 |
);
|
676 |
+
//don't add other images in OG to overwrite the custom image
|
677 |
+
$this->custom_og_image = true;
|
678 |
}
|
679 |
if ($all || empty($images)) {
|
680 |
if (has_post_thumbnail($post->ID)) {
|
730 |
}
|
731 |
|
732 |
if ($post && isset($post->ID)) {
|
733 |
+
//if not
|
734 |
+
if (!$this->custom_og_image) {
|
735 |
+
if (isset($post->post_content)) {
|
736 |
+
preg_match('/(?:http(?:s)?:\/\/)?(?:www\.)?(?:youtu\.be\/|youtube\.com\/(?:embed)\/)([^\?&\"\'>\s]+)/si', $post->post_content, $match);
|
737 |
|
738 |
+
if (isset($match[0])) {
|
739 |
+
if (strpos($match[0], '//') !== false && strpos($match[0], 'http') === false) {
|
740 |
+
$match[0] = 'http:' . $match[0];
|
741 |
+
}
|
742 |
+
$videos[] = esc_url($match[0]);
|
743 |
}
|
|
|
|
|
744 |
|
745 |
// preg_match('/(?:http(?:s)?:\/\/)?(?:fast\.wistia\.net\/(?:embed)\/(?:iframe)\/)([^\?&\"\'>\s]+)/si', $post->post_content, $match);
|
746 |
//
|
751 |
// $videos[] = esc_url($match[0]);
|
752 |
// }
|
753 |
|
754 |
+
preg_match('/(?:http(?:s)?:\/\/)?(?:fwd4\.wistia\.com\/(?:medias)\/)([^\?&\"\'>\s]+)/si', $post->post_content, $match);
|
755 |
|
756 |
+
if (isset($match[0])) {
|
757 |
+
$videos[] = esc_url('http://fast.wistia.net/embed/iframe/' . $match[1]);
|
758 |
+
}
|
759 |
|
760 |
+
preg_match('/class=["|\']([^"\']*wistia_async_([^\?&\"\'>\s]+)[^"\']*["|\'])/si', $post->post_content, $match);
|
761 |
|
762 |
+
if (isset($match[0])) {
|
763 |
+
$videos[] = esc_url('http://fast.wistia.net/embed/iframe/' . $match[2]);
|
764 |
+
}
|
765 |
|
766 |
+
preg_match('/src=["|\']([^"\']*(.mpg|.mpeg|.mp4|.mov|.wmv|.asf|.avi|.ra|.ram|.rm|.flv)["|\'])/i', $post->post_content, $match);
|
767 |
|
768 |
+
if (isset($match[1])) {
|
769 |
+
$videos[] = esc_url($match[1]);
|
770 |
+
}
|
771 |
}
|
772 |
}
|
773 |
}
|
779 |
$this->getCustomDescription();
|
780 |
return $this->description;
|
781 |
}
|
782 |
+
|
783 |
/**
|
784 |
* Get the description from last/current article
|
785 |
*
|
804 |
}
|
805 |
|
806 |
if (is_paged()) {
|
807 |
+
$description .= $sep . __('Page', _SQ_PLUGIN_NAME_) . " " . (int)get_query_var('paged');
|
808 |
}
|
809 |
|
810 |
if ($this->isHomePage() && $description <> '') {
|
818 |
$description = $this->grabDescriptionFromPost() . $sep . $this->getAuthor('display_name');
|
819 |
}
|
820 |
if (is_paged()) {
|
821 |
+
$description .= $sep . __('Page', _SQ_PLUGIN_NAME_) . " " . (int)get_query_var('paged');
|
822 |
}
|
823 |
} elseif (is_tag()) { //for tags
|
824 |
$description = tag_description();
|
827 |
$description = ucfirst($tag) . $sep . $this->grabDescriptionFromPost();
|
828 |
}
|
829 |
if (is_paged()) {
|
830 |
+
$description .= $sep . __('Page', _SQ_PLUGIN_NAME_) . " " . (int)get_query_var('paged');
|
831 |
}
|
832 |
} elseif (is_archive()) { //for archive and products
|
833 |
if (isset($this->post) && isset($this->post->ID)) {
|
853 |
}
|
854 |
|
855 |
if (is_paged()) {
|
856 |
+
$description .= $sep . __('Page', _SQ_PLUGIN_NAME_) . " " . (int)get_query_var('paged');
|
857 |
}
|
858 |
} elseif (is_single() || is_page() || is_singular() || $this->checkPostsPage() || in_array(get_post_type(), $this->post_type)) {
|
859 |
if (isset($this->post) && isset($this->post->ID)) {
|
869 |
}
|
870 |
}
|
871 |
}
|
872 |
+
} else
|
873 |
|
874 |
+
/* Check if is a predefined TitleIn Snippet */
|
875 |
+
if (SQ_Tools::$options['sq_auto_description'] == 1) {
|
876 |
|
877 |
+
//If the home page is a static page that has custom snippet
|
878 |
+
if (is_page() && isset($this->post) && isset($this->post->ID) && $this->getAdvancedMeta($this->post->ID, 'description') <> '') {
|
879 |
+
$description = $this->getAdvancedMeta($this->post->ID, 'description');
|
880 |
+
} elseif (SQ_Tools::$options ['sq_fp_description'] <> '') {
|
881 |
+
$description = strip_tags(SQ_Tools::$options['sq_fp_description']);
|
882 |
+
} else {
|
883 |
+
$description = $this->grabDescriptionFromPost();
|
884 |
+
}
|
885 |
}
|
|
|
886 |
|
887 |
$description = (($description <> '') ? $description : $this->title);
|
888 |
if ($description <> '') {
|
907 |
}
|
908 |
|
909 |
$description = SQ_Tools::i18n(trim(esc_html(ent2ncr(strip_tags($description)))));
|
910 |
+
$description = addcslashes($description, '$');
|
911 |
}
|
912 |
|
913 |
return $description;
|
932 |
/* Check if is a predefined Keyword */
|
933 |
if (SQ_Tools::$options['sq_auto_description'] == 1) { //
|
934 |
if (($this->isHomePage() &&
|
935 |
+
SQ_Tools::$options['sq_fp_keywords'] <> '')
|
936 |
+
) {
|
937 |
$keywords = strip_tags(SQ_Tools::$options ['sq_fp_keywords']);
|
938 |
}
|
939 |
}
|
955 |
private function getCopyright() {
|
956 |
$meta = '';
|
957 |
|
958 |
+
$name = $this->getAuthor('display_name');
|
959 |
if ($name == '') {
|
960 |
$name = $this->meta['blogname'];
|
961 |
}
|
1061 |
$date = null;
|
1062 |
$meta = '';
|
1063 |
|
1064 |
+
$name = $this->getAuthor('display_name');
|
1065 |
if (!$name) {
|
1066 |
$name = $this->meta['blogname'];
|
1067 |
}
|
1127 |
$sq_google_analytics = SQ_Tools::$options['sq_google_analytics'];
|
1128 |
|
1129 |
if ($sq_google_analytics <> '') {
|
1130 |
+
if (SQ_Tools::$options['sq_auto_amp']){
|
1131 |
+
return '<script async custom-element="amp-analytics" src="https://cdn.ampproject.org/v0/amp-analytics-0.1.js"></script>' . "\n";
|
1132 |
+
}else {
|
1133 |
+
SQ_ObjController::getController('SQ_DisplayController', false)
|
1134 |
->loadMedia('https://www.google-analytics.com/analytics.js');
|
1135 |
|
1136 |
+
return sprintf("<script>
|
1137 |
(function(i,s,o,g,r,a,m){i['GoogleAnalyticsObject']=r;i[r]=i[r]||function(){
|
1138 |
(i[r].q=i[r].q||[]).push(arguments)},i[r].l=1*new Date();a=s.createElement(o),
|
1139 |
m=s.getElementsByTagName(o)[0];a.async=1;a.src=g;m.parentNode.insertBefore(a,m)
|
1141 |
|
1142 |
ga('create', '%s', 'auto');
|
1143 |
ga('send', 'pageview');
|
1144 |
+
ga('require', 'linked');
|
1145 |
</script>", $sq_google_analytics);
|
1146 |
+
}
|
1147 |
+
}
|
1148 |
+
|
1149 |
+
return false;
|
1150 |
+
}
|
1151 |
+
|
1152 |
+
public function getGoogleAnalyticsAMPBody() {
|
1153 |
+
$sq_google_analytics = SQ_Tools::$options['sq_google_analytics'];
|
1154 |
+
|
1155 |
+
if ($sq_google_analytics <> '') {
|
1156 |
+
if (SQ_Tools::$options['sq_auto_amp']){
|
1157 |
+
return sprintf('<amp-analytics type="googleanalytics" id="analytics1"><script type="application/json">{"vars": {"account": "%s"},"triggers": {"trackPageview": {"on": "visible","request": "pageview"}}}</script></amp-analytics>', $sq_google_analytics) . "\n";
|
1158 |
+
}
|
1159 |
+
}
|
1160 |
+
return '';
|
1161 |
+
}
|
1162 |
+
|
1163 |
+
private function getFacebookPixel() {
|
1164 |
+
|
1165 |
+
$sq_facebook_analytics = SQ_Tools::$options['sq_facebook_analytics'];
|
1166 |
+
|
1167 |
+
if ($sq_facebook_analytics <> '') {
|
1168 |
+
if (SQ_Tools::$options['sq_auto_amp']){
|
1169 |
+
//not yet supported
|
1170 |
+
}else {
|
1171 |
+
return sprintf("<script>
|
1172 |
+
!function(f,b,e,v,n,t,s){if(f.fbq)return;n=f.fbq=function(){n.callMethod?
|
1173 |
+
n.callMethod.apply(n,arguments):n.queue.push(arguments)};if(!f._fbq)f._fbq=n;
|
1174 |
+
n.push=n;n.loaded=!0;n.version='2.0';n.queue=[];t=b.createElement(e);t.async=!0;
|
1175 |
+
t.src=v;s=b.getElementsByTagName(e)[0];s.parentNode.insertBefore(t,s)}(window,
|
1176 |
+
document,'script','https://connect.facebook.net/en_US/fbevents.js');
|
1177 |
+
fbq('init', '%s');
|
1178 |
+
fbq('track', 'ViewContent');
|
1179 |
+
fbq('track', 'PageView');</script>
|
1180 |
+
<noscript><img height='1' width='1' style='display:none'
|
1181 |
+
src='https://www.facebook.com/tr?id=%s&ev=PageView&noscript=1'
|
1182 |
+
/></noscript>" . "\n", $sq_facebook_analytics, $sq_facebook_analytics);
|
1183 |
+
}
|
1184 |
}
|
1185 |
|
1186 |
return false;
|
1281 |
|
1282 |
if ($meta <> '') {
|
1283 |
$social = '';
|
1284 |
+
if (SQ_Tools::$options['sq_twitter_account'] <> '') {
|
1285 |
$social .= ($social <> '' ? "," : '') . '"' . SQ_Tools::$options['sq_twitter_account'] . '"';
|
1286 |
}
|
1287 |
+
if (SQ_Tools::$options['sq_facebook_account'] <> '') {
|
1288 |
$social .= ($social <> '' ? "," : '') . '"' . SQ_Tools::$options['sq_facebook_account'] . '"';
|
1289 |
}
|
1290 |
+
if (SQ_Tools::$options['sq_google_plus'] <> '') {
|
1291 |
$social .= ($social <> '' ? "," : '') . '"' . SQ_Tools::$options['sq_google_plus'] . '"';
|
1292 |
}
|
1293 |
+
if (SQ_Tools::$options['sq_linkedin_account'] <> '') {
|
1294 |
$social .= ($social <> '' ? "," : '') . '"' . SQ_Tools::$options['sq_linkedin_account'] . '"';
|
1295 |
}
|
1296 |
+
if (SQ_Tools::$options['sq_pinterest_account'] <> '') {
|
1297 |
+
$social .= ($social <> '' ? "," : '') . '"' . SQ_Tools::$options['sq_pinterest_account'] . '"';
|
1298 |
+
}
|
1299 |
+
if (SQ_Tools::$options['sq_instagram_account'] <> '') {
|
1300 |
+
$social .= ($social <> '' ? "," : '') . '"' . SQ_Tools::$options['sq_instagram_account'] . '"';
|
1301 |
+
}
|
1302 |
|
1303 |
$search = $sep . '"potentialAction": { "@type": "SearchAction", "target": "' . get_bloginfo('url') . '?s={search_string}", "query-input": "required name=search_string" }';
|
1304 |
|
1334 |
$meta .= '"image": {
|
1335 |
"@type": "ImageObject",
|
1336 |
"url": "' . $image['src'] . '",
|
1337 |
+
"height": ' . ((isset($image['height']) && $image['height'] <> '') ? (int)$image['height'] : 500) . ',
|
1338 |
+
"width": ' . ((isset($image['width']) && $image['width'] <> '') ? (int)$image['width'] : 700) . '
|
1339 |
}' . $sep;
|
1340 |
break;
|
1341 |
}
|
1522 |
|
1523 |
if (is_home()) {
|
1524 |
if (isset($wp_query->posts) && !empty($wp_query->posts)) {
|
1525 |
+
$posts = (array)$wp_query->posts;
|
1526 |
|
1527 |
if (SQ_Tools::$options['sq_keywordtag'] == 1) {
|
1528 |
foreach ($posts as $post) {
|
1539 |
}
|
1540 |
if (count($keywords) <= $this->max_keywords) {
|
1541 |
if (isset($wp_query->posts) && !empty($wp_query->posts)) {
|
1542 |
+
$posts = (array)$wp_query->posts;
|
1543 |
|
1544 |
foreach ($posts as $post) {
|
1545 |
$id = (is_attachment()) ? ($post->post_parent) : ($post->ID);
|
1582 |
*
|
1583 |
* @return string
|
1584 |
*/
|
1585 |
+
public function getCanonicalUrl($external = false) {
|
1586 |
global $wp_query;
|
1587 |
|
|
|
|
|
|
|
|
|
1588 |
if (!isset($wp_query) || is_404() || is_search()) {
|
1589 |
return false;
|
1590 |
}
|
1591 |
|
1592 |
+
//If external is TRUE, get the original canonical link set
|
1593 |
+
if ($external) {
|
1594 |
+
if (isset($this->post->ID) && $link = $this->getAdvancedMeta($this->post->ID, 'canonical')) {
|
1595 |
+
if ($link <> '') {
|
1596 |
+
return apply_filters('sq_canonical', $link);
|
1597 |
+
}
|
1598 |
}
|
1599 |
}
|
1600 |
|
1601 |
$haspost = (count($wp_query->posts) > 0);
|
|
|
1602 |
|
1603 |
if (get_query_var('m') <> '') {
|
1604 |
$m = preg_replace('/[^0-9]/', '', get_query_var('m'));
|
1654 |
$taxonomy = get_query_var('taxonomy');
|
1655 |
$term = get_query_var('term');
|
1656 |
$link = $this->getPaged(
|
1657 |
+
get_term_link($term, $taxonomy));
|
1658 |
} else {
|
1659 |
return false;
|
1660 |
}
|
1667 |
if (is_author()) {
|
1668 |
$this->author = get_userdata(get_query_var('author'));
|
1669 |
} elseif (is_single() && isset($this->post->post_author)) {
|
1670 |
+
$this->author = get_userdata((int)$this->post->post_author)->data;
|
1671 |
}
|
1672 |
}
|
1673 |
|
1675 |
|
1676 |
if ($what == 'user_url' && $this->author->$what == '') {
|
1677 |
return get_author_posts_url($this->author->ID, $this->author->user_nicename);
|
1678 |
+
}
|
1679 |
+
if (isset($this->author->$what)) {
|
1680 |
return $this->author->$what;
|
1681 |
}
|
1682 |
}
|
1685 |
}
|
1686 |
|
1687 |
public function getPaged($link) {
|
1688 |
+
$page = (int)get_query_var('paged');
|
1689 |
if ($page && $page > 1) {
|
1690 |
$link = trailingslashit($link) . "page/" . "$page/";
|
1691 |
}
|
1700 |
private function isHomePage() {
|
1701 |
global $wp_query;
|
1702 |
|
1703 |
+
if (isset($wp_query->queried_object_id)) {
|
1704 |
+
$this->post = get_post($wp_query->queried_object_id);
|
1705 |
+
|
1706 |
+
}
|
1707 |
+
|
1708 |
+
//Check if blog posts page
|
1709 |
+
if (is_home() && $wp_query->is_posts_page) {
|
1710 |
+
return false;
|
1711 |
+
}
|
1712 |
+
|
1713 |
return (is_home() || (isset($wp_query->query) && empty($wp_query->query) && !is_preview()));
|
1714 |
}
|
1715 |
|
1757 |
public function truncate($text, $min, $max) {
|
1758 |
if (function_exists('strip_tags')) {
|
1759 |
$text = strip_tags($text);
|
1760 |
+
}
|
1761 |
+
$text = str_replace(']]>', ']]>', $text);
|
1762 |
$text = @preg_replace('|\[(.+?)\](.+?\[/\\1\])?|s', '', $text);
|
1763 |
$text = strip_tags($text);
|
1764 |
|
1822 |
$field = '';
|
1823 |
$cond = '';
|
1824 |
|
1825 |
+
if (!isset($post_id) || (int)$post_id == 0) {
|
1826 |
return '';
|
1827 |
}
|
1828 |
|
1856 |
|
1857 |
$sql = "SELECT `meta_key`, `meta_value`
|
1858 |
FROM `" . $wpdb->postmeta . "`
|
1859 |
+
WHERE `post_id`=" . (int)$post_id;
|
1860 |
|
1861 |
if ($rows = $wpdb->get_results($sql)) {
|
1862 |
foreach ($rows as $row) {
|
1891 |
$field = '';
|
1892 |
$cond = '';
|
1893 |
|
1894 |
+
if (!isset($post_id) || (int)$post_id == 0) {
|
1895 |
return '';
|
1896 |
}
|
1897 |
|
1920 |
|
1921 |
$sql = "SELECT `meta_key`, `meta_value`
|
1922 |
FROM `" . $wpdb->postmeta . "`
|
1923 |
+
WHERE `post_id`=" . (int)$post_id;
|
1924 |
|
1925 |
$rows = $wpdb->get_results($sql);
|
1926 |
if ($rows) {
|
1961 |
echo "\n# Squirrly Sitemaps is disabled. Please see Site Visibility on Settings > Reading.";
|
1962 |
} else {
|
1963 |
if (SQ_Tools::$options['sq_auto_sitemap'] == 1) {
|
1964 |
+
foreach ((array)SQ_Tools::$options['sq_sitemap'] as $name => $sitemap) {
|
1965 |
if ($name == 'sitemap-product' && !SQ_ObjController::getModel('SQ_BlockSettingsSeo')->isEcommerce()) {
|
1966 |
continue;
|
1967 |
}
|
1977 |
echo "\n\n";
|
1978 |
|
1979 |
if (!empty(SQ_Tools::$options['sq_robots_permission'])) {
|
1980 |
+
foreach ((array)SQ_Tools::$options['sq_robots_permission'] as $robot_txt)
|
1981 |
echo $robot_txt . "\n";
|
1982 |
}
|
1983 |
echo "\n\n";
|
models/SQ_Post.php
CHANGED
@@ -293,8 +293,9 @@ class Model_SQ_Post {
|
|
293 |
} else {
|
294 |
$sql = "INSERT INTO `" . $wpdb->postmeta . "`
|
295 |
(`post_id`,`meta_key`,`meta_value`)
|
296 |
-
VALUES (" . (int) $post_id . ",'" . $meta['key'] . "','" . $meta['value'] . "')";
|
297 |
}
|
|
|
298 |
$wpdb->query($sql);
|
299 |
}
|
300 |
|
293 |
} else {
|
294 |
$sql = "INSERT INTO `" . $wpdb->postmeta . "`
|
295 |
(`post_id`,`meta_key`,`meta_value`)
|
296 |
+
VALUES (" . (int) $post_id . ",'" . $meta['key'] . "','" . addslashes($meta['value']) . "')";
|
297 |
}
|
298 |
+
SQ_Tools::dump($sql);
|
299 |
$wpdb->query($sql);
|
300 |
}
|
301 |
|
models/SQ_PostsList.php
CHANGED
@@ -40,10 +40,10 @@ class Model_SQ_PostsList {
|
|
40 |
foreach ($this->audit->content as $key => $audit) {
|
41 |
$group[$key]['name'] = $key;
|
42 |
if (!empty($audit)) {
|
|
|
43 |
$group[$key]['total'] = 0;
|
44 |
$group[$key]['complete'] = 0;
|
45 |
$group[$key]['processed'] = 0;
|
46 |
-
|
47 |
foreach ($audit as $task) {
|
48 |
@$group[$key]['total'] = number_format_i18n($task->total);
|
49 |
@$group[$key]['complete'] += ($task->complete) ? 1 : 0;
|
@@ -76,6 +76,7 @@ class Model_SQ_PostsList {
|
|
76 |
//if the post its just indexed with the url then is not so good
|
77 |
if ($key == 'rank' && (int) $group[$key]['total'] == 0) {
|
78 |
$color = 'sq_audit_task_completed_yellow';
|
|
|
79 |
}
|
80 |
|
81 |
if ($key == 'rank') {
|
@@ -95,6 +96,7 @@ class Model_SQ_PostsList {
|
|
95 |
}
|
96 |
@$group[$key]['tooltip'] = $total_tooltip;
|
97 |
@$group[$key]['color'] = $color;
|
|
|
98 |
}
|
99 |
}
|
100 |
$this->audit->groups = json_decode(json_encode($group));
|
40 |
foreach ($this->audit->content as $key => $audit) {
|
41 |
$group[$key]['name'] = $key;
|
42 |
if (!empty($audit)) {
|
43 |
+
|
44 |
$group[$key]['total'] = 0;
|
45 |
$group[$key]['complete'] = 0;
|
46 |
$group[$key]['processed'] = 0;
|
|
|
47 |
foreach ($audit as $task) {
|
48 |
@$group[$key]['total'] = number_format_i18n($task->total);
|
49 |
@$group[$key]['complete'] += ($task->complete) ? 1 : 0;
|
76 |
//if the post its just indexed with the url then is not so good
|
77 |
if ($key == 'rank' && (int) $group[$key]['total'] == 0) {
|
78 |
$color = 'sq_audit_task_completed_yellow';
|
79 |
+
$group[$key]['total'] = 'N/A';
|
80 |
}
|
81 |
|
82 |
if ($key == 'rank') {
|
96 |
}
|
97 |
@$group[$key]['tooltip'] = $total_tooltip;
|
98 |
@$group[$key]['color'] = $color;
|
99 |
+
|
100 |
}
|
101 |
}
|
102 |
$this->audit->groups = json_decode(json_encode($group));
|
readme.txt
CHANGED
@@ -1,16 +1,16 @@
|
|
1 |
=== SEO by SQUIRRLY™ ===
|
2 |
Contributors: calinvingan, florinmuresan, nagy.sorel
|
3 |
-
Tags: seo,seo plugin,wordpress seo,seo optimization,seo content,plugin,content seo,search engine optimization,xml,sitemap,keyword,keyword research,post,posts,page,multisite,squirrly,wordpress,tag,image,images,photos,flickr,statistics,stats,google,content,title,description,favicon,mobile,canonical,author,google plus,analytics,admin,seo correction,seo title,seo meta,meta,google,twitter,news,blog,e-commerce,ecommerce,woocommerce,feed,feeds,marketing,buddypress,social,social media,url,automatic,iphone
|
4 |
-
Requires at least: 3.5
|
5 |
-
Tested up to: 4.
|
6 |
-
Stable tag: trunk
|
7 |
-
Donate link: https://www.squirrly.co/wordpress-seo-by-squirrly
|
|
|
|
|
|
|
|
|
|
|
8 |
|
9 |
-
SEO Plugin By Squirrly is for the NON-SEO experts. Get Excellent Seo with Better Content, Ranking and Analytics. For Both Humans and Search Bots.
|
10 |
-
|
11 |
-
== Description ==
|
12 |
-
Squirrly SEO helps you write content that is SEO friendly and ALSO Human friendly. You'll get to improve your rankings, while providing your readers with great content. See Your SEO Stats, get a weekly SEO Audit and find the best keywords.
|
13 |
-
|
14 |
It works well with Wordpress sites that already have <strong>Yoast</strong> or <strong>All In One SEO</strong>. You can opt-in to keep those settings, so no need to start over again :-)
|
15 |
|
16 |
Recommended by <strong><a href="http://www.quicksprout.com/university/how-to-maximize-your-seo-traffic-with-these-must-have-wordpress-plugins/" >Neil Patel</a></strong>, the co-founder of Kissmetrics and Crazy Egg. Also by <strong>Brian Dean</strong> and over 100 content marketing experts
|
@@ -21,7 +21,7 @@ See all the Squirrly SEO 2016 features at: http://howto.squirrly.co/category/sid
|
|
21 |
|
22 |
Based on the topic you're writing about, the interface will light up green while you're editing your text, so that you know you've done something right. When all the lights are green, you can publish it, because your text has excellent SEO and it's 100% optimized.
|
23 |
|
24 |
-
Different customers, from areas such as e-commerce, law firms, digital agencies, online magazines, movie review sites, etc. have reported +285% increase in the number of readers, by optimizing their content with this seo plugin, and by measuring and improving as advized by our tool.
|
25 |
|
26 |
All-In-All: Squirrly SEO will help you get a tool that acts like an Expert Consultant, sitting right next to you, advising on SEO, and telling you where you need to improve.
|
27 |
|
@@ -83,7 +83,7 @@ Once you start having bigger content marketing and SEO needs (more than one arti
|
|
83 |
|
84 |
<strong>You can read reviews from Internet Marketing experts on http://howto.squirrly.co/testimonials/</strong>
|
85 |
|
86 |
-
Over 1,
|
87 |
|
88 |
Over 860 Content Marketing Experts have reviewed our Wordpress SEO plugin and loved it.
|
89 |
|
@@ -137,8 +137,69 @@ Type a keyword to the right of the screen and start using Squirrly Seo. Enjoy!
|
|
137 |
Squirrly 5.2.8 it's a stable version of Squirrly SEO and has all the SEO requirements by Search Engines
|
138 |
|
139 |
== Changelog ==
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
140 |
= 6.1.0 =
|
141 |
-
* Compatible with WP 4.
|
142 |
* Fixed the Front Page SEO to work with more WP themes
|
143 |
* Fixed compatibility with PolyLang plugin
|
144 |
* Fixed compatibility with Customizr theme
|
@@ -189,10 +250,6 @@ Squirrly 5.2.8 it's a stable version of Squirrly SEO and has all the SEO require
|
|
189 |
* Fixed the compatibility issue in Performance Analytics
|
190 |
* Added twitter summary for large images
|
191 |
|
192 |
-
|
193 |
-
= 5.2.8 =
|
194 |
-
* Compatible with WP 4.4
|
195 |
-
|
196 |
= 5.2.7 =
|
197 |
* Added Squirrly SEO Canonical Link in Post Edit page
|
198 |
* Added Norway country in Google Rank Option
|
@@ -244,14 +301,6 @@ Squirrly 5.2.8 it's a stable version of Squirrly SEO and has all the SEO require
|
|
244 |
* Add the optimization progress bar in the post/page list
|
245 |
* Fixed the restore the settings from backup validator
|
246 |
|
247 |
-
= 5.1.4 =
|
248 |
-
* Fixed the Google Rank check cron
|
249 |
-
|
250 |
-
= 5.1.3 =
|
251 |
-
* Fixed the Open Graph META for Locale en_CA
|
252 |
-
* Fixed the sitemap_pages.xml for loading slow when looking over videos
|
253 |
-
* Fixed the favicon.ico rewrite for non multisite wordpress
|
254 |
-
|
255 |
= 5.1.2 =
|
256 |
* Added new features in Open Graph for the Posts/Pages
|
257 |
* Added the SEO Settings Backup and Restore
|
@@ -261,31 +310,13 @@ Squirrly 5.2.8 it's a stable version of Squirrly SEO and has all the SEO require
|
|
261 |
* Fixed the wp_is_writable for older wp versions
|
262 |
* Fixed the Open Graph not to include non embed videos in meta
|
263 |
* Fixed the Sitemap Ping option to remain switched on when is selected
|
264 |
-
|
265 |
-
= 5.1.1 =
|
266 |
-
* Corrected the css for the top yellow bar
|
267 |
-
* Get the keyword from database for the saved article
|
268 |
-
* Fixed the feed style issue
|
269 |
* Added the custom size image for Open Graph in Squirrly SEO Snippet
|
270 |
-
* Increased the plugin loading speed in front-end
|
271 |
-
* Fixed the post optimization history issue
|
272 |
-
* Fixed the encryption for the password and fixed the bad login issue
|
273 |
-
* Compatible with WP 4.2.2
|
274 |
|
275 |
= 5.0.3 =
|
276 |
* Prevent canonical, prev, next meta duplicate inserted by other SEO plugins
|
277 |
* Fixed snippet custom title and description to change when other SEO plugins are installed
|
278 |
* Fixed javascript issue in login page
|
279 |
|
280 |
-
= 5.0.2 =
|
281 |
-
* Made it download the remote images while in text editor
|
282 |
-
* Detects remote images when the URL doesn't contain http
|
283 |
-
* Fixed favicon disappear on plugin updates
|
284 |
-
|
285 |
-
= 5.0.1 =
|
286 |
-
* Fixed some issues for the PHP 5.1-5.2
|
287 |
-
* Compatible with WP 4.2.1
|
288 |
-
|
289 |
= 5.0.0 =
|
290 |
* Changed Squirrly SEO look
|
291 |
* Compatible with WP eCommerce plugin
|
@@ -307,116 +338,10 @@ Squirrly 5.2.8 it's a stable version of Squirrly SEO and has all the SEO require
|
|
307 |
* Fixed the custom fields variable in post editor
|
308 |
* Fixed the site icon and added the site icon for multisites
|
309 |
* Fixed Sitemap for default permalink option
|
310 |
-
|
311 |
-
= 3.4.4 =
|
312 |
-
* Updated the Twitter Card information
|
313 |
-
* Compatible with WP 4.1.1
|
314 |
* Fixed the SEO Analytics and the Rank updates
|
315 |
* Fixed the SEO for First Page if the Home Page is not a static page
|
316 |
* Fixed the SEO for the First Page when it starts with woocommerce shop
|
317 |
|
318 |
-
= 3.4.3 =
|
319 |
-
* Add the option to prevent downloading the remote images in the blog media library for the new posts
|
320 |
-
* Add support for custom admin user roles
|
321 |
-
|
322 |
-
= 3.4.2 =
|
323 |
-
* Fixed some queries for a better speed in backend
|
324 |
-
* Fixed Open Graph for Home Page
|
325 |
-
* Fixed empty description for the Woocommerce shop page
|
326 |
-
|
327 |
-
= 3.3.9 =
|
328 |
-
* Fixed SEO snippet preview compatibility with the WP 4.0
|
329 |
-
|
330 |
-
= 3.3.8 =
|
331 |
-
* Fixed SEO issues for some themes in frontend
|
332 |
-
* Fixed the audit to load faster
|
333 |
-
* Added the google hreflang meta for language identification
|
334 |
-
* Added strict search for google in SEO Settings
|
335 |
-
|
336 |
-
= 3.3.7 =
|
337 |
-
* Fixed the keywords SEO settings for the first page optimization
|
338 |
-
* Fixed the image resize on drag-drop from inspiration box
|
339 |
-
* Fixed the highlight in Seo Live Assistant not to disappear when you click on keyword
|
340 |
-
* Fixed the SEO check lag for meta duplicates in backend
|
341 |
-
|
342 |
-
= 3.3.5 =
|
343 |
-
* Added Tag to Meta Keyword option in Settings
|
344 |
-
* Fixed some bugs related to SEO Audit
|
345 |
-
* Fixed the og:image issue for featured post images in WP4
|
346 |
-
|
347 |
-
= 3.3.4 =
|
348 |
-
* Compatible with WP 4.0
|
349 |
-
* Fixed various issues
|
350 |
-
* Update the Google Analytics tracking code to work with cache plugins
|
351 |
-
* Fixed the sitemap update date issue
|
352 |
-
* Fixed the Home Page Seo settings to work with the front-page snippet
|
353 |
-
* Compatible with Wp Fastest Cache plugin, WP Super Cache
|
354 |
-
|
355 |
-
= 3.3.3 =
|
356 |
-
* Added the new Google Analytics tracking code
|
357 |
-
* Update the Seo Live Assistant
|
358 |
-
|
359 |
-
= 3.3.2 =
|
360 |
-
* Compatible with WP 3.9.2
|
361 |
-
* Added google.cz for google ranking in Performance Analytics
|
362 |
-
|
363 |
-
= 3.3.1 =
|
364 |
-
* Fixed post snippet issues when the home-page description is switch off
|
365 |
-
|
366 |
-
* Updated the Squirrly Seo plugin icon
|
367 |
-
|
368 |
-
= 3.3.0 =
|
369 |
-
* Added the google localization country in search ranking
|
370 |
-
* Fixed on-boarding video link
|
371 |
-
* Fixed seo title issue for home-page
|
372 |
-
|
373 |
-
= 3.2.7 =
|
374 |
-
* Fixed small issue for background ranking grabber
|
375 |
-
* Fixed google country select in Seo Settings
|
376 |
-
* Fixed css and js load for some WordPress themes
|
377 |
-
|
378 |
-
= 3.2.5 =
|
379 |
-
* Fixed default country and langage in rank check
|
380 |
-
* Fixed the Copyright Free search images
|
381 |
-
|
382 |
-
= 3.2.3 =
|
383 |
-
* Fixed onboarding process
|
384 |
-
* Fixed Audit broken link
|
385 |
-
* Fixed Rank check issues for some situations
|
386 |
-
|
387 |
-
= 3.2.1 =
|
388 |
-
* Improved SEO Stats for Google Rankings by Country
|
389 |
-
* SEO Settings out-of-the-box, but also works awesome if you have the settings already done with All In One SEO or Yoast (Wordpress seo)
|
390 |
-
|
391 |
-
= 3.1.9 =
|
392 |
-
* Fixed css issues for some cases
|
393 |
-
* Fixed the "See Analytics" loading issue
|
394 |
-
|
395 |
-
= 3.1.8 =
|
396 |
-
* Fixed serp cron with the google last changes
|
397 |
-
* Changed the cron rate for serp search
|
398 |
-
* Added force recheck for google rank in SEO Analytics
|
399 |
-
|
400 |
-
= 3.1.4 =
|
401 |
-
* Removed the traffic monitor (to increase the site speed and analytics)
|
402 |
-
|
403 |
-
= 3.1.2 =
|
404 |
-
* Compatible with WP 3.9
|
405 |
-
* Fixed Squirrly SEO Live Assistant issue in WP 3.9
|
406 |
-
* Fixed SEO Analytics in WP 3.9
|
407 |
-
|
408 |
-
= 3.1.1 =
|
409 |
-
* Added rel="prev" and rel="next" in header
|
410 |
-
* Added SEO META Duplicates notification
|
411 |
-
* Fixed the snippet for home page when the home is a specific page
|
412 |
-
* Added more details in SEO Analytics
|
413 |
-
*
|
414 |
-
|
415 |
-
= 3.1.0 =
|
416 |
-
* Added the Performance Analytics in Squirrly SEO Tab
|
417 |
-
* Added Analytics filter for custom post types
|
418 |
-
* Added Google SEO Rank Column in Squirrly SEO > Performance Analytics
|
419 |
-
* Added Google Country Select in Squirrly SEO > Settings
|
420 |
|
421 |
== Credits ==
|
422 |
* Florin Muresan - CEO at Squirrly
|
@@ -460,6 +385,10 @@ Based on your article, Squirrly will find the most relevant text and add it in t
|
|
460 |
|
461 |
You can opt-in to use the Squirrly Snippet in the Post/Page editor, which will allow you to customize how the META Title and Description will be. All while writing or editing your article.
|
462 |
|
|
|
|
|
|
|
|
|
463 |
= Is Squirrly SEO Plugin free? =
|
464 |
Yes, you just have to install the plugin from the WP directory into your site. Then connect with your email to Squirrly. The Free Version will automatically start. Read below for more. Once you have bigger content marketing needs, you can opt-in to upgrade to the PRO Plan.
|
465 |
|
@@ -488,7 +417,7 @@ All of the features that we offer have been built having the customer's best int
|
|
488 |
and we've proven time and again that we are a great team that knows all there is to know about good *SEO automation*. We had a community of 20,000 blogs that all
|
489 |
used our SEO techniques, and they have gotten lots of hits from search engines due to our optimization. Now we offer the same quality for you:
|
490 |
|
491 |
-
[UPDATE] Squirrly now has over 1,
|
492 |
|
493 |
- SEO Advice as you're typing your articles
|
494 |
- Advice in real time from the SEO Live Assistant on how to write better content for your Human readers
|
@@ -549,4 +478,5 @@ And the best ones that we have (and the others don't):
|
|
549 |
If you click the Squirrly tab in your dashboard, go to the "First Page Optimization" section and switch the Title and Description option on. You can enter custom Title, Description and Keywords.
|
550 |
|
551 |
= Is this Wordpress SEO plugin the only SEO plugin I will need to install? =
|
552 |
-
It all depends on how you have setup your Wordpress until now. Some people use Squirrly seo plugin only for the Content Optimization with the Live Assistant part, some use use it to check their SEO stats and see where they need to improve their Wordpress seo, but most of our users and customer use Squirrly for everything related to SEO: from keyword analysis, to seo settings on Wordpress, to analytics and to weekly monitoring and audit reports.
|
|
1 |
=== SEO by SQUIRRLY™ ===
|
2 |
Contributors: calinvingan, florinmuresan, nagy.sorel
|
3 |
+
Tags: seo,seo plugin,apps,wordpress seo,seo optimization,seo content,plugin,content seo,search engine optimization,xml,sitemap,keyword,keyword research,post,posts,page,multisite,squirrly,wordpress,tag,image,images,photos,flickr,statistics,stats,google,content,title,description,favicon,mobile,canonical,author,google plus,analytics,admin,seo correction,seo title,seo meta,meta,google,twitter,news,blog,e-commerce,ecommerce,woocommerce,feed,feeds,marketing,buddypress,social,social media,url,automatic,iphone,administration,analytics,blogging,categories,comment,dashboard,free,google-analytics,linkedin,list,media,optimization,performance,pinterest,plugins,products,share,sharing,tags,tracking,traffic,tweet
|
4 |
+
Requires at least: 3.5
|
5 |
+
Tested up to: 4.7
|
6 |
+
Stable tag: trunk
|
7 |
+
Donate link: https://www.squirrly.co/wordpress-seo-by-squirrly
|
8 |
+
|
9 |
+
SEO Plugin By Squirrly is for the NON-SEO experts. Get Excellent SEO with Better Content, Ranking and Analytics. For Both Humans and Search Bots.
|
10 |
+
|
11 |
+
== Description ==
|
12 |
+
SEO By Squirrly helps you write content that is SEO friendly and ALSO Human friendly. You'll get to improve your rankings, while providing your readers with great content. See Your SEO Stats, get a weekly SEO Audit and find the best keywords.
|
13 |
|
|
|
|
|
|
|
|
|
|
|
14 |
It works well with Wordpress sites that already have <strong>Yoast</strong> or <strong>All In One SEO</strong>. You can opt-in to keep those settings, so no need to start over again :-)
|
15 |
|
16 |
Recommended by <strong><a href="http://www.quicksprout.com/university/how-to-maximize-your-seo-traffic-with-these-must-have-wordpress-plugins/" >Neil Patel</a></strong>, the co-founder of Kissmetrics and Crazy Egg. Also by <strong>Brian Dean</strong> and over 100 content marketing experts
|
21 |
|
22 |
Based on the topic you're writing about, the interface will light up green while you're editing your text, so that you know you've done something right. When all the lights are green, you can publish it, because your text has excellent SEO and it's 100% optimized.
|
23 |
|
24 |
+
Different customers, from areas such as e-commerce, law firms, digital agencies, online magazines, movie review sites, etc. have reported +285% increase in the number of readers, by optimizing their content with this seo plugin, and by measuring and improving as advized by our tool.
|
25 |
|
26 |
All-In-All: Squirrly SEO will help you get a tool that acts like an Expert Consultant, sitting right next to you, advising on SEO, and telling you where you need to improve.
|
27 |
|
83 |
|
84 |
<strong>You can read reviews from Internet Marketing experts on http://howto.squirrly.co/testimonials/</strong>
|
85 |
|
86 |
+
Over 1,600,000 Downloads. Our startup consists of 10 content marketing professionals dedicated to making Squirrly an amazing piece of software and writing great training materials to help you be successful and stay successful.
|
87 |
|
88 |
Over 860 Content Marketing Experts have reviewed our Wordpress SEO plugin and loved it.
|
89 |
|
137 |
Squirrly 5.2.8 it's a stable version of Squirrly SEO and has all the SEO requirements by Search Engines
|
138 |
|
139 |
== Changelog ==
|
140 |
+
= 6.2.6 =
|
141 |
+
* Fixed Canonical link for facebook Open Graph
|
142 |
+
* Don't show the Canonical Link if Squirrly SEO is off
|
143 |
+
* Fixed keyword saving on post update
|
144 |
+
* Happy New Year!
|
145 |
+
|
146 |
+
= 6.2.5 =
|
147 |
+
* Added Instagram and Pinterest in Social Json-LD
|
148 |
+
* Fixed the connection issue in some cases when a keyword is modified
|
149 |
+
* Fixed memory load when not usign Squirrly SEO
|
150 |
+
|
151 |
+
= 6.2.4 =
|
152 |
+
* Fixed bug for Google Analytics AMP version
|
153 |
+
* Fixed both title and description when include price value
|
154 |
+
* Compatible with WP 4.7
|
155 |
+
|
156 |
+
= 6.2.3 =
|
157 |
+
* Added Open Graph Image for First Page when the first page is a blog feed
|
158 |
+
* Fixed small css issues in post editor
|
159 |
+
* Fixed duplicate title removal
|
160 |
+
* Added AMP Analytics from Google
|
161 |
+
|
162 |
+
= 6.2.2 =
|
163 |
+
* Compatible with WP 4.6.1
|
164 |
+
* Fixed SEO Page Optimization for Post Feed Page and Home Page
|
165 |
+
* Update SEO features
|
166 |
+
|
167 |
+
= 6.2.0 =
|
168 |
+
* Added Facebook Pixel Tracking Code in Squirrly > SEO > Tracking
|
169 |
+
* Added more Copyright Free images in Squirrly SEO Live Assistant from:
|
170 |
+
* Pixabay.com
|
171 |
+
* Unsplash.com
|
172 |
+
* Pexels.com
|
173 |
+
*
|
174 |
+
* Fixed loading the Seo Live Assistant when a page is not optimized for a keyword
|
175 |
+
* Fixed the connection issues between the plugin and API when a post is saved
|
176 |
+
* Fixed the Squirrly Snippet when connected as Editor or Author4
|
177 |
+
|
178 |
+
|
179 |
+
= 6.1.6 =
|
180 |
+
* Added custom title and description for the Posts Page in Settings > Reading > Posts page
|
181 |
+
* Fixed the JsonLD phone + prefix
|
182 |
+
* Fixed typos
|
183 |
+
|
184 |
+
= 6.1.5 =
|
185 |
+
* July 2016 Security updates.
|
186 |
+
* Fixed vulnerabilities between users who have rights in you site
|
187 |
+
* Fixed some Squirrly SEO Snippet issues on first save
|
188 |
+
* Added google.co.id in Rank Option
|
189 |
+
|
190 |
+
= 6.1.3 =
|
191 |
+
* Rich Pins Validator Option
|
192 |
+
* Added rich pins for Woocommerce Products
|
193 |
+
|
194 |
+
= 6.1.2 =
|
195 |
+
* Compatible with WP 4.5.3
|
196 |
+
* Fixed the google profile link
|
197 |
+
* Corrected some old links
|
198 |
+
* We moved js files on cloud for faster loading
|
199 |
+
* Update Rank Check to the latest Google Requirements
|
200 |
+
|
201 |
= 6.1.0 =
|
202 |
+
* Compatible with WP 4.5.2
|
203 |
* Fixed the Front Page SEO to work with more WP themes
|
204 |
* Fixed compatibility with PolyLang plugin
|
205 |
* Fixed compatibility with Customizr theme
|
250 |
* Fixed the compatibility issue in Performance Analytics
|
251 |
* Added twitter summary for large images
|
252 |
|
|
|
|
|
|
|
|
|
253 |
= 5.2.7 =
|
254 |
* Added Squirrly SEO Canonical Link in Post Edit page
|
255 |
* Added Norway country in Google Rank Option
|
301 |
* Add the optimization progress bar in the post/page list
|
302 |
* Fixed the restore the settings from backup validator
|
303 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
304 |
= 5.1.2 =
|
305 |
* Added new features in Open Graph for the Posts/Pages
|
306 |
* Added the SEO Settings Backup and Restore
|
310 |
* Fixed the wp_is_writable for older wp versions
|
311 |
* Fixed the Open Graph not to include non embed videos in meta
|
312 |
* Fixed the Sitemap Ping option to remain switched on when is selected
|
|
|
|
|
|
|
|
|
|
|
313 |
* Added the custom size image for Open Graph in Squirrly SEO Snippet
|
|
|
|
|
|
|
|
|
314 |
|
315 |
= 5.0.3 =
|
316 |
* Prevent canonical, prev, next meta duplicate inserted by other SEO plugins
|
317 |
* Fixed snippet custom title and description to change when other SEO plugins are installed
|
318 |
* Fixed javascript issue in login page
|
319 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
320 |
= 5.0.0 =
|
321 |
* Changed Squirrly SEO look
|
322 |
* Compatible with WP eCommerce plugin
|
338 |
* Fixed the custom fields variable in post editor
|
339 |
* Fixed the site icon and added the site icon for multisites
|
340 |
* Fixed Sitemap for default permalink option
|
|
|
|
|
|
|
|
|
341 |
* Fixed the SEO Analytics and the Rank updates
|
342 |
* Fixed the SEO for First Page if the Home Page is not a static page
|
343 |
* Fixed the SEO for the First Page when it starts with woocommerce shop
|
344 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
345 |
|
346 |
== Credits ==
|
347 |
* Florin Muresan - CEO at Squirrly
|
385 |
|
386 |
You can opt-in to use the Squirrly Snippet in the Post/Page editor, which will allow you to customize how the META Title and Description will be. All while writing or editing your article.
|
387 |
|
388 |
+
= 100% green in Squirrly Live Assistant but I’m not getting traffic yet =
|
389 |
+
Sometimes we receive emails with this question and I want to help everybody have the correct image of Squirrly Live Assistance.
|
390 |
+
http://howto.squirrly.co/wordpress-seo/100-green-in-squirrly-live-assistant-but-im-not-getting-traffic/
|
391 |
+
|
392 |
= Is Squirrly SEO Plugin free? =
|
393 |
Yes, you just have to install the plugin from the WP directory into your site. Then connect with your email to Squirrly. The Free Version will automatically start. Read below for more. Once you have bigger content marketing needs, you can opt-in to upgrade to the PRO Plan.
|
394 |
|
417 |
and we've proven time and again that we are a great team that knows all there is to know about good *SEO automation*. We had a community of 20,000 blogs that all
|
418 |
used our SEO techniques, and they have gotten lots of hits from search engines due to our optimization. Now we offer the same quality for you:
|
419 |
|
420 |
+
[UPDATE] Squirrly now has over 1,500,000 downloads, so we've been offering great software for over two years now.
|
421 |
|
422 |
- SEO Advice as you're typing your articles
|
423 |
- Advice in real time from the SEO Live Assistant on how to write better content for your Human readers
|
478 |
If you click the Squirrly tab in your dashboard, go to the "First Page Optimization" section and switch the Title and Description option on. You can enter custom Title, Description and Keywords.
|
479 |
|
480 |
= Is this Wordpress SEO plugin the only SEO plugin I will need to install? =
|
481 |
+
It all depends on how you have setup your Wordpress until now. Some people use Squirrly seo plugin only for the Content Optimization with the Live Assistant part, some use use it to check their SEO stats and see where they need to improve their Wordpress seo, but most of our users and customer use Squirrly for everything related to SEO: from keyword analysis, to seo settings on Wordpress, to analytics and to weekly monitoring and audit reports.
|
482 |
+
|
squirrly.php
CHANGED
@@ -7,13 +7,13 @@
|
|
7 |
Plugin Name: SEO by SQUIRRLY
|
8 |
Plugin URI: http://www.squirrly.co
|
9 |
Description: SEO Plugin By Squirrly is for the NON-SEO experts. Get Excellent Seo with Better Content, Ranking and Analytics. For Both Humans and Search Bots.<BR> <a href="http://my.squirrly.co/user" target="_blank"><strong>Check your profile</strong></a>
|
10 |
-
Author:
|
11 |
-
Version: 6.
|
12 |
Author URI: http://www.squirrly.co
|
13 |
*/
|
14 |
|
15 |
/* SET THE CURRENT VERSION ABOVE AND BELOW */
|
16 |
-
define('SQ_VERSION', '6.
|
17 |
/* Call config files */
|
18 |
if (file_exists(dirname(__FILE__) . '/config/config.php')) {
|
19 |
require(dirname(__FILE__) . '/config/config.php');
|
@@ -22,6 +22,8 @@ if (file_exists(dirname(__FILE__) . '/config/config.php')) {
|
|
22 |
if (PHP_VERSION_ID >= 5100) {
|
23 |
/* inport main classes */
|
24 |
require_once(_SQ_CLASSES_DIR_ . 'SQ_ObjController.php');
|
|
|
|
|
25 |
|
26 |
if (is_admin()) {
|
27 |
require_once(_SQ_CLASSES_DIR_ . 'SQ_BlockController.php');
|
@@ -32,10 +34,8 @@ if (file_exists(dirname(__FILE__) . '/config/config.php')) {
|
|
32 |
*/
|
33 |
register_activation_hook(__FILE__, array(SQ_ObjController::getController('SQ_Tools', false), 'sq_activate'));
|
34 |
register_deactivation_hook(__FILE__, array(SQ_ObjController::getController('SQ_Tools', false), 'sq_deactivate'));
|
35 |
-
}
|
36 |
-
SQ_ObjController::getController('SQ_FrontController', false);
|
37 |
SQ_ObjController::getController('SQ_Frontend');
|
38 |
-
|
39 |
}
|
40 |
|
41 |
add_action('sq_processCron', array(SQ_ObjController::getController('SQ_Ranking', false), 'processCron'));
|
7 |
Plugin Name: SEO by SQUIRRLY
|
8 |
Plugin URI: http://www.squirrly.co
|
9 |
Description: SEO Plugin By Squirrly is for the NON-SEO experts. Get Excellent Seo with Better Content, Ranking and Analytics. For Both Humans and Search Bots.<BR> <a href="http://my.squirrly.co/user" target="_blank"><strong>Check your profile</strong></a>
|
10 |
+
Author: calinvingan, florinmuresan, nagy.sorel
|
11 |
+
Version: 6.2.6
|
12 |
Author URI: http://www.squirrly.co
|
13 |
*/
|
14 |
|
15 |
/* SET THE CURRENT VERSION ABOVE AND BELOW */
|
16 |
+
define('SQ_VERSION', '6.2.6');
|
17 |
/* Call config files */
|
18 |
if (file_exists(dirname(__FILE__) . '/config/config.php')) {
|
19 |
require(dirname(__FILE__) . '/config/config.php');
|
22 |
if (PHP_VERSION_ID >= 5100) {
|
23 |
/* inport main classes */
|
24 |
require_once(_SQ_CLASSES_DIR_ . 'SQ_ObjController.php');
|
25 |
+
SQ_ObjController::getController('SQ_FrontController', false);
|
26 |
+
SQ_ObjController::getController('SQ_Tools', false);
|
27 |
|
28 |
if (is_admin()) {
|
29 |
require_once(_SQ_CLASSES_DIR_ . 'SQ_BlockController.php');
|
34 |
*/
|
35 |
register_activation_hook(__FILE__, array(SQ_ObjController::getController('SQ_Tools', false), 'sq_activate'));
|
36 |
register_deactivation_hook(__FILE__, array(SQ_ObjController::getController('SQ_Tools', false), 'sq_deactivate'));
|
37 |
+
} elseif (SQ_Tools::$options['sq_use'] == 1) {
|
|
|
38 |
SQ_ObjController::getController('SQ_Frontend');
|
|
|
39 |
}
|
40 |
|
41 |
add_action('sq_processCron', array(SQ_ObjController::getController('SQ_Ranking', false), 'processCron'));
|
themes/default/SQ_BlockAffiliate.php
CHANGED
@@ -68,7 +68,7 @@
|
|
68 |
</fieldset>
|
69 |
<?php if (SQ_Tools::$options['sq_affiliate_link'] <> '') { ?>
|
70 |
<fieldset>
|
71 |
-
<legend
|
72 |
<span class="sq_legend_title"><?php _e('Squirrly banners you can use', _SQ_PLUGIN_NAME_); ?></span>
|
73 |
</legend>
|
74 |
<div>
|
68 |
</fieldset>
|
69 |
<?php if (SQ_Tools::$options['sq_affiliate_link'] <> '') { ?>
|
70 |
<fieldset>
|
71 |
+
<legend>
|
72 |
<span class="sq_legend_title"><?php _e('Squirrly banners you can use', _SQ_PLUGIN_NAME_); ?></span>
|
73 |
</legend>
|
74 |
<div>
|
themes/default/SQ_BlockPostsAnalytics.php
CHANGED
@@ -1,25 +1,41 @@
|
|
1 |
-
<div id="sq_posts"
|
2 |
<span class="sq_icon"></span>
|
3 |
-
|
4 |
-
<div id="
|
5 |
-
<div id="sq_posts_subtitle"
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
6 |
|
7 |
<?php echo $view->getNavigationTop() ?>
|
8 |
<table class="wp-list-table widefat fixed posts" cellspacing="0">
|
9 |
<thead>
|
10 |
-
|
11 |
-
|
12 |
-
|
13 |
</thead>
|
14 |
|
15 |
<tfoot>
|
16 |
-
|
17 |
-
|
18 |
-
|
19 |
</tfoot>
|
20 |
|
21 |
<tbody id="the-list">
|
22 |
-
|
23 |
</tbody>
|
24 |
</table>
|
25 |
<?php echo $view->getNavigationBottom() ?>
|
1 |
+
<div id="sq_posts">
|
2 |
<span class="sq_icon"></span>
|
3 |
+
|
4 |
+
<div id="sq_posts_title"><?php _e('Squirrly Analytics', _SQ_PLUGIN_NAME_); ?> </div>
|
5 |
+
<div id="sq_posts_subtitle"><?php _e('Don\'t see all your pages here? Make sure you optimize them with Squirrly, so that we can track them, and display you the analytics', _SQ_PLUGIN_NAME_); ?> </div>
|
6 |
+
<?php
|
7 |
+
if (get_transient('google_blocked') !== false) {
|
8 |
+
echo '<div id="sq_posts_subtitle" style="font-size: 14px;color: red;padding: 0px;margin: 0 0 15px 0;text-align: center;line-height: 15px;">';
|
9 |
+
if (function_exists('curl_init') && !ini_get('open_basedir')) {
|
10 |
+
echo sprintf(__('The IP %s is calling the rank too often and google stopped the calls for %s mins. Lower the Rank check rate in Squirrly > Settings > Rank Option. %sMore details%s', _SQ_PLUGIN_NAME_), @gethostbyname(gethostname()), (((get_transient('google_blocked')- time() + 3600) > 0) ? date('i',(get_transient('google_blocked')- time() + 3600)) : 'an hour'),'<a href="http://howto.squirrly.co/wordpress-seo/could-not-receive-data-from-google-err-blocked-ip/" target="_blank" >','</a>');
|
11 |
+
} else {
|
12 |
+
if (!function_exists('curl_init')) {
|
13 |
+
echo sprintf(__('To be able to check the RANK please activate cURL for PHP on your server %sDetails%s', _SQ_PLUGIN_NAME_), '<a href="http://stackoverflow.com/questions/1347146/how-to-enable-curl-in-php-xampp" target="_blank">', '</a>');
|
14 |
+
} else {
|
15 |
+
echo sprintf(__('To be able to check the RANK please remove the "safe_mode" and "open_basedir" for PHP cURL on your server %sDetails%s', _SQ_PLUGIN_NAME_), '<a href="http://stackoverflow.com/a/6918685" target="_blank">', '</a>');
|
16 |
+
|
17 |
+
}
|
18 |
+
}
|
19 |
+
echo '</div>';
|
20 |
+
}
|
21 |
+
?>
|
22 |
|
23 |
<?php echo $view->getNavigationTop() ?>
|
24 |
<table class="wp-list-table widefat fixed posts" cellspacing="0">
|
25 |
<thead>
|
26 |
+
<tr>
|
27 |
+
<?php echo $view->getHeaderColumns() ?>
|
28 |
+
</tr>
|
29 |
</thead>
|
30 |
|
31 |
<tfoot>
|
32 |
+
<tr>
|
33 |
+
<?php echo $view->getHeaderColumns() ?>
|
34 |
+
</tr>
|
35 |
</tfoot>
|
36 |
|
37 |
<tbody id="the-list">
|
38 |
+
<?php echo $view->getRows() ?>
|
39 |
</tbody>
|
40 |
</table>
|
41 |
<?php echo $view->getNavigationBottom() ?>
|
themes/default/SQ_BlockSettings.php
CHANGED
@@ -2,9 +2,10 @@
|
|
2 |
<?php SQ_ObjController::getBlock('SQ_BlockSupport')->init(); ?>
|
3 |
<div>
|
4 |
<span class="sq_icon"></span>
|
5 |
-
|
6 |
-
<div id="sq_settings_title" >
|
7 |
-
|
|
|
8 |
</div>
|
9 |
</div>
|
10 |
<div id="sq_helpsettingscontent" class="sq_helpcontent"></div>
|
@@ -13,7 +14,7 @@
|
|
13 |
<form id="sq_settings_form" name="settings" action="" method="post" enctype="multipart/form-data">
|
14 |
<div id="sq_settings_body">
|
15 |
<fieldset>
|
16 |
-
<legend
|
17 |
<span class="sq_legend_title"><?php _e('Post/Page Edit', _SQ_PLUGIN_NAME_); ?></span>
|
18 |
<span><?php echo sprintf(__('%sThe right method in working with Squirrly, SEO plugin%s', _SQ_PLUGIN_NAME_), '<a href="http://www.squirrly.co/the-right-premises-in-working-with-squirrly-wordpress-seo-plugin" target="_blank">', '</a>'); ?></span>
|
19 |
<span><?php echo sprintf(__('%sGetting inspired with Squirrly WordPress SEO plugin%s', _SQ_PLUGIN_NAME_), '<a href="http://www.squirrly.co/getting-inspired-with-squirrly-wordpress-seo-plugin" target="_blank">', '</a>'); ?></span>
|
@@ -28,10 +29,16 @@
|
|
28 |
<p style="font-weight: bold;"><?php _e('Load Squirrly Live Assistant for', _SQ_PLUGIN_NAME_); ?>:</p>
|
29 |
<ul id="sq_post_types">
|
30 |
<li class="sq_selectall"><input type="checkbox" id="sq_selectall"/>Select All</li>
|
31 |
-
<li
|
32 |
-
|
|
|
|
|
|
|
|
|
33 |
<?php if (in_array('product', get_post_types())) { //check for ecommerce product ?>
|
34 |
-
<li
|
|
|
|
|
35 |
<?php } ?>
|
36 |
<?php
|
37 |
$types = get_post_types();
|
@@ -47,19 +54,22 @@
|
|
47 |
} else {
|
48 |
//echo '<pre>' . print_r($type_data, true) . '</pre>';
|
49 |
?>
|
50 |
-
<li
|
|
|
|
|
51 |
<?php
|
52 |
}
|
53 |
}
|
54 |
?>
|
55 |
</ul>
|
56 |
</div>
|
57 |
-
<br
|
|
|
58 |
<div class="sq_option_content">
|
59 |
<div class="sq_switch">
|
60 |
-
<input id="sq_keyword_help1" type="radio" class="sq_switch-input" name="sq_keyword_help" value="1" <?php echo
|
61 |
<label for="sq_keyword_help1" class="sq_switch-label sq_switch-label-off"><?php _e('Yes', _SQ_PLUGIN_NAME_); ?></label>
|
62 |
-
<input id="sq_keyword_help0" type="radio" class="sq_switch-input" name="sq_keyword_help"
|
63 |
<label for="sq_keyword_help0" class="sq_switch-label sq_switch-label-on"><?php _e('No', _SQ_PLUGIN_NAME_); ?></label>
|
64 |
<span class="sq_switch-selection"></span>
|
65 |
</div>
|
@@ -68,9 +78,9 @@
|
|
68 |
|
69 |
<div class="sq_option_content">
|
70 |
<div class="sq_switch">
|
71 |
-
<input id="sq_keyword_information1" type="radio" class="sq_switch-input" name="sq_keyword_information" value="1" <?php echo
|
72 |
<label for="sq_keyword_information1" class="sq_switch-label sq_switch-label-off"><?php _e('Yes', _SQ_PLUGIN_NAME_); ?></label>
|
73 |
-
<input id="sq_keyword_information0" type="radio" class="sq_switch-input" name="sq_keyword_information"
|
74 |
<label for="sq_keyword_information0" class="sq_switch-label sq_switch-label-on"><?php _e('No', _SQ_PLUGIN_NAME_); ?></label>
|
75 |
<span class="sq_switch-selection"></span>
|
76 |
</div>
|
@@ -80,20 +90,21 @@
|
|
80 |
|
81 |
<div class="sq_option_content">
|
82 |
<div class="sq_switch">
|
83 |
-
<input id="sq_sla1" type="radio" class="sq_switch-input" name="sq_sla" value="1" <?php echo
|
84 |
<label for="sq_sla1" class="sq_switch-label sq_switch-label-off"><?php _e('Yes', _SQ_PLUGIN_NAME_); ?></label>
|
85 |
-
<input id="sq_sla0" type="radio" class="sq_switch-input" name="sq_sla"
|
86 |
<label for="sq_sla0" class="sq_switch-label sq_switch-label-on"><?php _e('No', _SQ_PLUGIN_NAME_); ?></label>
|
87 |
<span class="sq_switch-selection"></span>
|
88 |
</div>
|
89 |
<span><?php _e('Use <strong> the NEW version of the SEO Live Assistant</strong>.', _SQ_PLUGIN_NAME_); ?></span>
|
90 |
</div>
|
91 |
<p></p>
|
|
|
92 |
<div class="sq_option_content withbordertop">
|
93 |
<div class="sq_switch">
|
94 |
-
<input id="sq_keywordtag1" type="radio" class="sq_switch-input" name="sq_keywordtag" value="1" <?php echo
|
95 |
<label for="sq_keywordtag1" class="sq_switch-label sq_switch-label-off"><?php _e('Yes', _SQ_PLUGIN_NAME_); ?></label>
|
96 |
-
<input id="sq_keywordtag0" type="radio" class="sq_switch-input" name="sq_keywordtag"
|
97 |
<label for="sq_keywordtag0" class="sq_switch-label sq_switch-label-on"><?php _e('No', _SQ_PLUGIN_NAME_); ?></label>
|
98 |
<span class="sq_switch-selection"></span>
|
99 |
</div>
|
@@ -102,9 +113,9 @@
|
|
102 |
|
103 |
<div class="sq_option_content">
|
104 |
<div class="sq_switch">
|
105 |
-
<input id="sq_local_images1" type="radio" class="sq_switch-input" name="sq_local_images" value="1" <?php echo
|
106 |
<label for="sq_local_images1" class="sq_switch-label sq_switch-label-off"><?php _e('Yes', _SQ_PLUGIN_NAME_); ?></label>
|
107 |
-
<input id="sq_local_images0" type="radio" class="sq_switch-input" name="sq_local_images"
|
108 |
<label for="sq_local_images0" class="sq_switch-label sq_switch-label-on"><?php _e('No', _SQ_PLUGIN_NAME_); ?></label>
|
109 |
<span class="sq_switch-selection"></span>
|
110 |
</div>
|
@@ -114,9 +125,9 @@
|
|
114 |
|
115 |
<div class="sq_option_content">
|
116 |
<div class="sq_switch">
|
117 |
-
<input id="sq_url_fix1" type="radio" class="sq_switch-input" name="sq_url_fix" value="1" <?php echo
|
118 |
<label for="sq_url_fix1" class="sq_switch-label sq_switch-label-off"><?php _e('Yes', _SQ_PLUGIN_NAME_); ?></label>
|
119 |
-
<input id="sq_url_fix0" type="radio" class="sq_switch-input" name="sq_url_fix"
|
120 |
<label for="sq_url_fix0" class="sq_switch-label sq_switch-label-on"><?php _e('No', _SQ_PLUGIN_NAME_); ?></label>
|
121 |
<span class="sq_switch-selection"></span>
|
122 |
</div>
|
@@ -133,8 +144,9 @@
|
|
133 |
<div>
|
134 |
<div class="sq_option_content">
|
135 |
<p>
|
136 |
-
<span
|
137 |
</p>
|
|
|
138 |
<div class="abh_select withborder">
|
139 |
<select id="sq_google_country" name="sq_google_country">
|
140 |
<option value="com"><?php _e('Default', _SQ_PLUGIN_NAME_); ?> - Google.com (http://www.google.com/)</option>
|
@@ -180,6 +192,7 @@
|
|
180 |
<option value="com.hk"><?php _e('Hong Kong', _SQ_PLUGIN_NAME_); ?> (http://www.google.com.hk/)</option>
|
181 |
<option value="co.hu"><?php _e('Hungary', _SQ_PLUGIN_NAME_); ?> (http://www.google.co.hu/)</option>
|
182 |
<option value="co.in"><?php _e('India', _SQ_PLUGIN_NAME_); ?> (http://www.google.co.in/)</option>
|
|
|
183 |
<option value="ie"><?php _e('Ireland', _SQ_PLUGIN_NAME_); ?> (http://www.google.ie/)</option>
|
184 |
<option value="co.im"><?php _e('Isle of Man', _SQ_PLUGIN_NAME_); ?> (http://www.google.co.im/)</option>
|
185 |
<option value="co.il"><?php _e('Israel', _SQ_PLUGIN_NAME_); ?> (http://www.google.co.il/)</option>
|
@@ -227,6 +240,7 @@
|
|
227 |
<option value="sk"><?php _e('Slovakia', _SQ_PLUGIN_NAME_); ?> (http://www.google.sk/)</option>
|
228 |
<option value="co.za"><?php _e('South Africa', _SQ_PLUGIN_NAME_); ?> (http://www.google.co.za/)</option>
|
229 |
<option value="es"><?php _e('Spain', _SQ_PLUGIN_NAME_); ?> (http://www.google.es/)</option>
|
|
|
230 |
<option value="se"><?php _e('Sweden', _SQ_PLUGIN_NAME_); ?> (http://www.google.se/)</option>
|
231 |
<option value="ch"><?php _e('Switzerland', _SQ_PLUGIN_NAME_); ?> (http://www.google.ch/)</option>
|
232 |
<option value="com.tw"><?php _e('Taiwan', _SQ_PLUGIN_NAME_); ?> (http://www.google.com.tw/)</option>
|
@@ -245,10 +259,15 @@
|
|
245 |
<p>
|
246 |
<span><?php echo sprintf(__('Select how many pages to be checked by google rank every hour. %s5 pages (recommended)%s', _SQ_PLUGIN_NAME_), '<br /><span style="color:#aaa;font-size:12px;">', '</span>'); ?></span>
|
247 |
</p>
|
|
|
248 |
<div class="withborder">
|
249 |
<select id="sq_google_ranksperhour" name="sq_google_ranksperhour">
|
250 |
-
<?php for ($i = 0; $i <
|
251 |
-
|
|
|
|
|
|
|
|
|
252 |
<?php } ?>
|
253 |
</select>
|
254 |
|
@@ -256,9 +275,9 @@
|
|
256 |
|
257 |
<div class="sq_option_content">
|
258 |
<div class="sq_switch">
|
259 |
-
<input id="sq_google_country_strict1" type="radio" class="sq_switch-input" name="sq_google_country_strict" value="1" <?php echo
|
260 |
<label for="sq_google_country_strict1" class="sq_switch-label sq_switch-label-off"><?php _e('Yes', _SQ_PLUGIN_NAME_); ?></label>
|
261 |
-
<input id="sq_google_country_strict0" type="radio" class="sq_switch-input" name="sq_google_country_strict"
|
262 |
<label for="sq_google_country_strict0" class="sq_switch-label sq_switch-label-on"><?php _e('No', _SQ_PLUGIN_NAME_); ?></label>
|
263 |
<span class="sq_switch-selection"></span>
|
264 |
</div>
|
@@ -270,7 +289,7 @@
|
|
270 |
</fieldset>
|
271 |
|
272 |
<fieldset id="sq_measure_success">
|
273 |
-
<legend
|
274 |
<span class="sq_legend_title"><?php _e('Measure Your Success', _SQ_PLUGIN_NAME_); ?></span>
|
275 |
<span><?php echo sprintf(__('%sHow to set the Google Webmaster Tool%s', _SQ_PLUGIN_NAME_), '<a href="http://howto.squirrly.co/wordpress-seo/how-to-set-the-google-webmaster-tool/" target="_blank">', '</a>'); ?></span>
|
276 |
<span><?php echo sprintf(__('%sBest practices to help Google find, crawl, and index your site%s', _SQ_PLUGIN_NAME_), '<a href="https://support.google.com/webmasters/answer/35769?hl=en" target="_blank">', '</a>'); ?></span>
|
@@ -280,44 +299,51 @@
|
|
280 |
<div>
|
281 |
<p class="withborder withcode">
|
282 |
<span class="sq_icon sq_icon_googlewt"></span>
|
283 |
-
<?php echo sprintf(__('Google META verification code for %sWebmaster Tool%s:', _SQ_PLUGIN_NAME_), '<a href="
|
|
|
284 |
</p>
|
285 |
-
|
286 |
-
|
287 |
-
|
|
|
|
|
|
|
288 |
</p>
|
289 |
-
|
290 |
-
|
291 |
-
|
|
|
|
|
292 |
</p>
|
293 |
</div>
|
294 |
</fieldset>
|
295 |
|
296 |
<div id="sq_settings_submit">
|
297 |
-
<input type="hidden" name="action" value="sq_settings_update"
|
298 |
-
<input type="hidden" name="nonce" value="<?php echo wp_create_nonce(_SQ_NONCE_ID_); ?>"
|
299 |
-
<input type="submit" name="sq_update" value="<?php _e('Save settings', _SQ_PLUGIN_NAME_) ?> »"
|
300 |
</div>
|
301 |
</div>
|
302 |
</form>
|
303 |
|
304 |
<div class="sq_settings_backup">
|
305 |
<form action="" method="POST">
|
306 |
-
<input type="hidden" name="action" value="sq_backup"
|
307 |
-
<input type="hidden" name="nonce" value="<?php echo wp_create_nonce(_SQ_NONCE_ID_); ?>"
|
308 |
-
<input type="submit" class="sq_button" name="sq_backup" value="<?php _e('Backup Settings', _SQ_PLUGIN_NAME_) ?>"
|
309 |
-
<input type="button" class="sq_button sq_restore" name="sq_restore" value="<?php _e('Restore Settings', _SQ_PLUGIN_NAME_) ?>"
|
310 |
</form>
|
311 |
</div>
|
312 |
|
313 |
<div class="sq_settings_restore sq_popup" style="display: none">
|
314 |
<span class="sq_close">x</span>
|
315 |
<span><?php _e('Upload the file with the saved Squirrly Settings', _SQ_PLUGIN_NAME_) ?></span>
|
|
|
316 |
<form action="" method="POST" enctype="multipart/form-data">
|
317 |
-
<input type="hidden" name="action" value="sq_restore"
|
318 |
-
<input type="file" name="sq_options" id="favicon" style="float: left;"
|
319 |
-
<input type="hidden" name="nonce" value="<?php echo wp_create_nonce(_SQ_NONCE_ID_); ?>"
|
320 |
-
<input type="submit"
|
321 |
</form>
|
322 |
</div>
|
323 |
</div>
|
2 |
<?php SQ_ObjController::getBlock('SQ_BlockSupport')->init(); ?>
|
3 |
<div>
|
4 |
<span class="sq_icon"></span>
|
5 |
+
|
6 |
+
<div id="sq_settings_title"><?php _e('Settings', _SQ_PLUGIN_NAME_); ?> </div>
|
7 |
+
<div id="sq_settings_title">
|
8 |
+
<input type="submit" name="sq_update" value="<?php _e('Save settings', _SQ_PLUGIN_NAME_) ?> »"/>
|
9 |
</div>
|
10 |
</div>
|
11 |
<div id="sq_helpsettingscontent" class="sq_helpcontent"></div>
|
14 |
<form id="sq_settings_form" name="settings" action="" method="post" enctype="multipart/form-data">
|
15 |
<div id="sq_settings_body">
|
16 |
<fieldset>
|
17 |
+
<legend>
|
18 |
<span class="sq_legend_title"><?php _e('Post/Page Edit', _SQ_PLUGIN_NAME_); ?></span>
|
19 |
<span><?php echo sprintf(__('%sThe right method in working with Squirrly, SEO plugin%s', _SQ_PLUGIN_NAME_), '<a href="http://www.squirrly.co/the-right-premises-in-working-with-squirrly-wordpress-seo-plugin" target="_blank">', '</a>'); ?></span>
|
20 |
<span><?php echo sprintf(__('%sGetting inspired with Squirrly WordPress SEO plugin%s', _SQ_PLUGIN_NAME_), '<a href="http://www.squirrly.co/getting-inspired-with-squirrly-wordpress-seo-plugin" target="_blank">', '</a>'); ?></span>
|
29 |
<p style="font-weight: bold;"><?php _e('Load Squirrly Live Assistant for', _SQ_PLUGIN_NAME_); ?>:</p>
|
30 |
<ul id="sq_post_types">
|
31 |
<li class="sq_selectall"><input type="checkbox" id="sq_selectall"/>Select All</li>
|
32 |
+
<li>
|
33 |
+
<input type="checkbox" class="sq_post_types" name="sq_post_types[]" value="post" <?php echo(in_array('post', SQ_Tools::$options['sq_post_types']) ? 'checked="checked"' : ''); ?>><?php _e('Posts', _SQ_PLUGIN_NAME_); ?>
|
34 |
+
</li>
|
35 |
+
<li>
|
36 |
+
<input type="checkbox" class="sq_post_types" name="sq_post_types[]" value="page" <?php echo(in_array('page', SQ_Tools::$options['sq_post_types']) ? 'checked="checked"' : ''); ?>><?php _e('Pages', _SQ_PLUGIN_NAME_); ?>
|
37 |
+
</li>
|
38 |
<?php if (in_array('product', get_post_types())) { //check for ecommerce product ?>
|
39 |
+
<li>
|
40 |
+
<input type="checkbox" class="sq_post_types" name="sq_post_types[]" value="product" <?php echo(in_array('product', SQ_Tools::$options['sq_post_types']) ? 'checked="checked"' : ''); ?>><?php _e('Products', _SQ_PLUGIN_NAME_); ?>
|
41 |
+
</li>
|
42 |
<?php } ?>
|
43 |
<?php
|
44 |
$types = get_post_types();
|
54 |
} else {
|
55 |
//echo '<pre>' . print_r($type_data, true) . '</pre>';
|
56 |
?>
|
57 |
+
<li>
|
58 |
+
<input type="checkbox" class="sq_post_types" name="sq_post_types[]" value="<?php echo $type ?>" <?php echo(in_array($type, SQ_Tools::$options['sq_post_types']) ? 'checked="checked"' : ''); ?>><?php echo $type_data->labels->name; ?>
|
59 |
+
</li>
|
60 |
<?php
|
61 |
}
|
62 |
}
|
63 |
?>
|
64 |
</ul>
|
65 |
</div>
|
66 |
+
<br/>
|
67 |
+
|
68 |
<div class="sq_option_content">
|
69 |
<div class="sq_switch">
|
70 |
+
<input id="sq_keyword_help1" type="radio" class="sq_switch-input" name="sq_keyword_help" value="1" <?php echo((SQ_Tools::$options['sq_keyword_help'] == 1) ? "checked" : '') ?> />
|
71 |
<label for="sq_keyword_help1" class="sq_switch-label sq_switch-label-off"><?php _e('Yes', _SQ_PLUGIN_NAME_); ?></label>
|
72 |
+
<input id="sq_keyword_help0" type="radio" class="sq_switch-input" name="sq_keyword_help" value="0" <?php echo((SQ_Tools::$options['sq_keyword_help'] == 0) ? "checked" : '') ?> />
|
73 |
<label for="sq_keyword_help0" class="sq_switch-label sq_switch-label-on"><?php _e('No', _SQ_PLUGIN_NAME_); ?></label>
|
74 |
<span class="sq_switch-selection"></span>
|
75 |
</div>
|
78 |
|
79 |
<div class="sq_option_content">
|
80 |
<div class="sq_switch">
|
81 |
+
<input id="sq_keyword_information1" type="radio" class="sq_switch-input" name="sq_keyword_information" value="1" <?php echo((SQ_Tools::$options['sq_keyword_information'] == 1) ? "checked" : '') ?> />
|
82 |
<label for="sq_keyword_information1" class="sq_switch-label sq_switch-label-off"><?php _e('Yes', _SQ_PLUGIN_NAME_); ?></label>
|
83 |
+
<input id="sq_keyword_information0" type="radio" class="sq_switch-input" name="sq_keyword_information" value="0" <?php echo((SQ_Tools::$options['sq_keyword_information'] == 0) ? "checked" : '') ?> />
|
84 |
<label for="sq_keyword_information0" class="sq_switch-label sq_switch-label-on"><?php _e('No', _SQ_PLUGIN_NAME_); ?></label>
|
85 |
<span class="sq_switch-selection"></span>
|
86 |
</div>
|
90 |
|
91 |
<div class="sq_option_content">
|
92 |
<div class="sq_switch">
|
93 |
+
<input id="sq_sla1" type="radio" class="sq_switch-input" name="sq_sla" value="1" <?php echo((SQ_Tools::$options['sq_sla'] == 1) ? "checked" : '') ?> />
|
94 |
<label for="sq_sla1" class="sq_switch-label sq_switch-label-off"><?php _e('Yes', _SQ_PLUGIN_NAME_); ?></label>
|
95 |
+
<input id="sq_sla0" type="radio" class="sq_switch-input" name="sq_sla" value="0" <?php echo((SQ_Tools::$options['sq_sla'] == 0) ? "checked" : '') ?> />
|
96 |
<label for="sq_sla0" class="sq_switch-label sq_switch-label-on"><?php _e('No', _SQ_PLUGIN_NAME_); ?></label>
|
97 |
<span class="sq_switch-selection"></span>
|
98 |
</div>
|
99 |
<span><?php _e('Use <strong> the NEW version of the SEO Live Assistant</strong>.', _SQ_PLUGIN_NAME_); ?></span>
|
100 |
</div>
|
101 |
<p></p>
|
102 |
+
|
103 |
<div class="sq_option_content withbordertop">
|
104 |
<div class="sq_switch">
|
105 |
+
<input id="sq_keywordtag1" type="radio" class="sq_switch-input" name="sq_keywordtag" value="1" <?php echo((SQ_Tools::$options['sq_keywordtag'] == 1) ? "checked" : '') ?> />
|
106 |
<label for="sq_keywordtag1" class="sq_switch-label sq_switch-label-off"><?php _e('Yes', _SQ_PLUGIN_NAME_); ?></label>
|
107 |
+
<input id="sq_keywordtag0" type="radio" class="sq_switch-input" name="sq_keywordtag" value="0" <?php echo((SQ_Tools::$options['sq_keywordtag'] == 0) ? "checked" : '') ?> />
|
108 |
<label for="sq_keywordtag0" class="sq_switch-label sq_switch-label-on"><?php _e('No', _SQ_PLUGIN_NAME_); ?></label>
|
109 |
<span class="sq_switch-selection"></span>
|
110 |
</div>
|
113 |
|
114 |
<div class="sq_option_content">
|
115 |
<div class="sq_switch">
|
116 |
+
<input id="sq_local_images1" type="radio" class="sq_switch-input" name="sq_local_images" value="1" <?php echo((SQ_Tools::$options['sq_local_images'] == 1) ? "checked" : '') ?> />
|
117 |
<label for="sq_local_images1" class="sq_switch-label sq_switch-label-off"><?php _e('Yes', _SQ_PLUGIN_NAME_); ?></label>
|
118 |
+
<input id="sq_local_images0" type="radio" class="sq_switch-input" name="sq_local_images" value="0" <?php echo((SQ_Tools::$options['sq_local_images'] == 0) ? "checked" : '') ?> />
|
119 |
<label for="sq_local_images0" class="sq_switch-label sq_switch-label-on"><?php _e('No', _SQ_PLUGIN_NAME_); ?></label>
|
120 |
<span class="sq_switch-selection"></span>
|
121 |
</div>
|
125 |
|
126 |
<div class="sq_option_content">
|
127 |
<div class="sq_switch">
|
128 |
+
<input id="sq_url_fix1" type="radio" class="sq_switch-input" name="sq_url_fix" value="1" <?php echo((SQ_Tools::$options['sq_url_fix'] == 1) ? "checked" : '') ?> />
|
129 |
<label for="sq_url_fix1" class="sq_switch-label sq_switch-label-off"><?php _e('Yes', _SQ_PLUGIN_NAME_); ?></label>
|
130 |
+
<input id="sq_url_fix0" type="radio" class="sq_switch-input" name="sq_url_fix" value="0" <?php echo((SQ_Tools::$options['sq_url_fix'] == 0) ? "checked" : '') ?> />
|
131 |
<label for="sq_url_fix0" class="sq_switch-label sq_switch-label-on"><?php _e('No', _SQ_PLUGIN_NAME_); ?></label>
|
132 |
<span class="sq_switch-selection"></span>
|
133 |
</div>
|
144 |
<div>
|
145 |
<div class="sq_option_content">
|
146 |
<p>
|
147 |
+
<span><?php _e('Select the google extension for which Squirrly will check the google rank', _SQ_PLUGIN_NAME_); ?></span>
|
148 |
</p>
|
149 |
+
|
150 |
<div class="abh_select withborder">
|
151 |
<select id="sq_google_country" name="sq_google_country">
|
152 |
<option value="com"><?php _e('Default', _SQ_PLUGIN_NAME_); ?> - Google.com (http://www.google.com/)</option>
|
192 |
<option value="com.hk"><?php _e('Hong Kong', _SQ_PLUGIN_NAME_); ?> (http://www.google.com.hk/)</option>
|
193 |
<option value="co.hu"><?php _e('Hungary', _SQ_PLUGIN_NAME_); ?> (http://www.google.co.hu/)</option>
|
194 |
<option value="co.in"><?php _e('India', _SQ_PLUGIN_NAME_); ?> (http://www.google.co.in/)</option>
|
195 |
+
<option value="co.id"><?php _e('Indonesia', _SQ_PLUGIN_NAME_); ?> (http://www.google.co.id/)</option>
|
196 |
<option value="ie"><?php _e('Ireland', _SQ_PLUGIN_NAME_); ?> (http://www.google.ie/)</option>
|
197 |
<option value="co.im"><?php _e('Isle of Man', _SQ_PLUGIN_NAME_); ?> (http://www.google.co.im/)</option>
|
198 |
<option value="co.il"><?php _e('Israel', _SQ_PLUGIN_NAME_); ?> (http://www.google.co.il/)</option>
|
240 |
<option value="sk"><?php _e('Slovakia', _SQ_PLUGIN_NAME_); ?> (http://www.google.sk/)</option>
|
241 |
<option value="co.za"><?php _e('South Africa', _SQ_PLUGIN_NAME_); ?> (http://www.google.co.za/)</option>
|
242 |
<option value="es"><?php _e('Spain', _SQ_PLUGIN_NAME_); ?> (http://www.google.es/)</option>
|
243 |
+
<option value="lk"><?php _e('Sri Lanka', _SQ_PLUGIN_NAME_); ?> (http://www.google.lk/)</option>
|
244 |
<option value="se"><?php _e('Sweden', _SQ_PLUGIN_NAME_); ?> (http://www.google.se/)</option>
|
245 |
<option value="ch"><?php _e('Switzerland', _SQ_PLUGIN_NAME_); ?> (http://www.google.ch/)</option>
|
246 |
<option value="com.tw"><?php _e('Taiwan', _SQ_PLUGIN_NAME_); ?> (http://www.google.com.tw/)</option>
|
259 |
<p>
|
260 |
<span><?php echo sprintf(__('Select how many pages to be checked by google rank every hour. %s5 pages (recommended)%s', _SQ_PLUGIN_NAME_), '<br /><span style="color:#aaa;font-size:12px;">', '</span>'); ?></span>
|
261 |
</p>
|
262 |
+
|
263 |
<div class="withborder">
|
264 |
<select id="sq_google_ranksperhour" name="sq_google_ranksperhour">
|
265 |
+
<?php for ($i = 0; $i < 10; $i++) {
|
266 |
+
if ((int)SQ_Tools::$options['sq_google_ranksperhour'] > 10) {
|
267 |
+
SQ_Tools::$options['sq_google_ranksperhour'] = 9;
|
268 |
+
}
|
269 |
+
?>
|
270 |
+
<option value="<?php echo $i ?>" <?php echo((SQ_Tools::$options['sq_google_ranksperhour'] == $i) ? "selected='selected'" : '') ?>><?php echo $i ?><?php _e('pages', _SQ_PLUGIN_NAME_); ?></option>
|
271 |
<?php } ?>
|
272 |
</select>
|
273 |
|
275 |
|
276 |
<div class="sq_option_content">
|
277 |
<div class="sq_switch">
|
278 |
+
<input id="sq_google_country_strict1" type="radio" class="sq_switch-input" name="sq_google_country_strict" value="1" <?php echo((SQ_Tools::$options['sq_google_country_strict'] == 1) ? "checked" : '') ?> />
|
279 |
<label for="sq_google_country_strict1" class="sq_switch-label sq_switch-label-off"><?php _e('Yes', _SQ_PLUGIN_NAME_); ?></label>
|
280 |
+
<input id="sq_google_country_strict0" type="radio" class="sq_switch-input" name="sq_google_country_strict" value="0" <?php echo((SQ_Tools::$options['sq_google_country_strict'] == 0) ? "checked" : '') ?> />
|
281 |
<label for="sq_google_country_strict0" class="sq_switch-label sq_switch-label-on"><?php _e('No', _SQ_PLUGIN_NAME_); ?></label>
|
282 |
<span class="sq_switch-selection"></span>
|
283 |
</div>
|
289 |
</fieldset>
|
290 |
|
291 |
<fieldset id="sq_measure_success">
|
292 |
+
<legend>
|
293 |
<span class="sq_legend_title"><?php _e('Measure Your Success', _SQ_PLUGIN_NAME_); ?></span>
|
294 |
<span><?php echo sprintf(__('%sHow to set the Google Webmaster Tool%s', _SQ_PLUGIN_NAME_), '<a href="http://howto.squirrly.co/wordpress-seo/how-to-set-the-google-webmaster-tool/" target="_blank">', '</a>'); ?></span>
|
295 |
<span><?php echo sprintf(__('%sBest practices to help Google find, crawl, and index your site%s', _SQ_PLUGIN_NAME_), '<a href="https://support.google.com/webmasters/answer/35769?hl=en" target="_blank">', '</a>'); ?></span>
|
299 |
<div>
|
300 |
<p class="withborder withcode">
|
301 |
<span class="sq_icon sq_icon_googlewt"></span>
|
302 |
+
<?php echo sprintf(__('Google META verification code for %sWebmaster Tool%s:', _SQ_PLUGIN_NAME_), '<a href="https://www.google.com/webmasters" target="_blank">', '</a>'); ?>
|
303 |
+
<br><strong><input type="text" name="sq_google_wt" value="<?php echo((SQ_Tools::$options['sq_google_wt'] <> '') ? SQ_Tools::$options['sq_google_wt'] : '') ?>" size="15"/> (e.g. <meta name="google-site-verification" content="XXXXXXXXXXXXXXXXXX" />)</strong>
|
304 |
</p>
|
305 |
+
|
306 |
+
<p class="withborder withcode">
|
307 |
+
<span class="sq_icon sq_icon_bingwt"></span>
|
308 |
+
<?php echo sprintf(__('Bing META code (for %sWebmaster Tool%s ):', _SQ_PLUGIN_NAME_), '<a href="http://www.bing.com/toolbox/webmaster/" target="_blank">', '</a>'); ?>
|
309 |
+
<br><strong>
|
310 |
+
<input type="text" name="sq_bing_wt" value="<?php echo((SQ_Tools::$options['sq_bing_wt'] <> '') ? SQ_Tools::$options['sq_bing_wt'] : '') ?>" size="15"/> (e.g. <meta name="msvalidate.01" content="XXXXXXXXXXXXXXXXXX" />)</strong>
|
311 |
</p>
|
312 |
+
|
313 |
+
<p class="withborder withcode">
|
314 |
+
<span class="sq_icon sq_icon_alexat"></span>
|
315 |
+
<?php echo sprintf(__('Alexa META code (for %sAlexa Tool%s ):', _SQ_PLUGIN_NAME_), '<a href="http://www.alexa.com/pro/subscription/signup?tsver=0&puid=200" target="_blank">', '</a>'); ?>
|
316 |
+
<br><strong><input type="text" name="sq_alexa" value="<?php echo((SQ_Tools::$options['sq_alexa'] <> '') ? SQ_Tools::$options['sq_alexa'] : '') ?>" size="15"/> (e.g. <meta name="alexaVerifyID" content="XXXXXXXXXXXXXXXXXX" />)</strong>
|
317 |
</p>
|
318 |
</div>
|
319 |
</fieldset>
|
320 |
|
321 |
<div id="sq_settings_submit">
|
322 |
+
<input type="hidden" name="action" value="sq_settings_update"/>
|
323 |
+
<input type="hidden" name="nonce" value="<?php echo wp_create_nonce(_SQ_NONCE_ID_); ?>"/>
|
324 |
+
<input type="submit" name="sq_update" value="<?php _e('Save settings', _SQ_PLUGIN_NAME_) ?> »"/>
|
325 |
</div>
|
326 |
</div>
|
327 |
</form>
|
328 |
|
329 |
<div class="sq_settings_backup">
|
330 |
<form action="" method="POST">
|
331 |
+
<input type="hidden" name="action" value="sq_backup"/>
|
332 |
+
<input type="hidden" name="nonce" value="<?php echo wp_create_nonce(_SQ_NONCE_ID_); ?>"/>
|
333 |
+
<input type="submit" class="sq_button" name="sq_backup" value="<?php _e('Backup Settings', _SQ_PLUGIN_NAME_) ?>"/>
|
334 |
+
<input type="button" class="sq_button sq_restore" name="sq_restore" value="<?php _e('Restore Settings', _SQ_PLUGIN_NAME_) ?>"/>
|
335 |
</form>
|
336 |
</div>
|
337 |
|
338 |
<div class="sq_settings_restore sq_popup" style="display: none">
|
339 |
<span class="sq_close">x</span>
|
340 |
<span><?php _e('Upload the file with the saved Squirrly Settings', _SQ_PLUGIN_NAME_) ?></span>
|
341 |
+
|
342 |
<form action="" method="POST" enctype="multipart/form-data">
|
343 |
+
<input type="hidden" name="action" value="sq_restore"/>
|
344 |
+
<input type="file" name="sq_options" id="favicon" style="float: left;"/>
|
345 |
+
<input type="hidden" name="nonce" value="<?php echo wp_create_nonce(_SQ_NONCE_ID_); ?>"/>
|
346 |
+
<input type="submit" style="margin-top: 10px;" class="sq_button" name="sq_restore" value="<?php _e('Restore Backup', _SQ_PLUGIN_NAME_) ?>"/>
|
347 |
</form>
|
348 |
</div>
|
349 |
</div>
|
themes/default/SQ_BlockSettingsSeo.php
CHANGED
@@ -17,7 +17,7 @@
|
|
17 |
<form id="sq_settings_form" name="settings" action="" method="post" enctype="multipart/form-data">
|
18 |
<div id="sq_settings_body">
|
19 |
<fieldset>
|
20 |
-
<legend
|
21 |
<span class="sq_legend_title"><?php _e('Let Squirrly SEO optimize this blog', _SQ_PLUGIN_NAME_); ?></span>
|
22 |
<span><?php echo sprintf(__('%sIs Squirrly SEO better then WordPress SEO by Yoast?%s', _SQ_PLUGIN_NAME_), '<a href="http://www.squirrly.co/why_is_squirrly_seo_better_then_wordpress_seo_by_yoast-pagblog-article_id61980-html" target="_blank"><strong>', '</strong></a>'); ?></span>
|
23 |
|
@@ -138,6 +138,23 @@
|
|
138 |
<span><?php echo sprintf(__('adds the <strong>%sJson-LD%s</strong> metas for Semantic SEO', _SQ_PLUGIN_NAME_), '<a href="https://en.wikipedia.org/wiki/JSON-LD" target="_blank">', '</a>'); ?></span>
|
139 |
</div>
|
140 |
</li>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
141 |
<p class="sq_option_info" style="padding-left:10px; color: darkgrey;"> <?php _e('Note! By switching the <strong>Json-LD</strong>, <strong>XML Sitemap</strong> and <strong>Favicon</strong> on, you open new options below', _SQ_PLUGIN_NAME_); ?></p>
|
142 |
</ul>
|
143 |
<div style="text-align: center;">
|
@@ -146,7 +163,7 @@
|
|
146 |
</div>
|
147 |
</fieldset>
|
148 |
<fieldset id="sq_title_description_keywords" <?php echo ((SQ_Tools::$options['sq_use'] == 0) ? 'style="display:none;"' : ''); ?> <?php echo ((SQ_Tools::$options['sq_fp_title'] == '' || SQ_Tools::$options['sq_auto_seo'] == 1) ? '' : 'class="sq_custom_title"'); ?>>
|
149 |
-
<legend
|
150 |
<span class="sq_legend_title"><?php _e('First page optimization', _SQ_PLUGIN_NAME_); ?></span>
|
151 |
<span><?php echo sprintf(__('%sThe best SEO approach to Meta information%s', _SQ_PLUGIN_NAME_), '<a href="http://www.squirrly.co/the-best-seo-approach-to-meta-information" target="_blank">', '</a>'); ?></span>
|
152 |
<span><?php _e('Add meta <strong>title</strong> in Home Page', _SQ_PLUGIN_NAME_); ?></span>
|
@@ -166,6 +183,7 @@
|
|
166 |
</div>
|
167 |
|
168 |
<span><?php _e('Add meta <strong>description</strong> and <strong>keywords</strong> in Home Page', _SQ_PLUGIN_NAME_); ?></span>
|
|
|
169 |
<?php
|
170 |
$auto_option = false;
|
171 |
if (SQ_Tools::$options['sq_auto_description'] == 1)
|
@@ -196,6 +214,8 @@
|
|
196 |
if (SQ_ObjController::getModel('SQ_Frontend')->getAdvancedMeta($pageId, 'title') <> '') {
|
197 |
SQ_Tools::$options['sq_fp_title'] = SQ_ObjController::getModel('SQ_Frontend')->getAdvancedMeta($pageId, 'title');
|
198 |
SQ_Tools::$options['sq_fp_description'] = SQ_ObjController::getModel('SQ_Frontend')->getAdvancedMeta($pageId, 'description');
|
|
|
|
|
199 |
if (!SQ_Tools::$options['sq_fp_keywords'] = SQ_ObjController::getModel('SQ_Frontend')->getAdvancedMeta($pageId, 'keyword')) {
|
200 |
$json = SQ_ObjController::getModel('SQ_Post')->getKeyword($pageId);
|
201 |
if (isset($json) && isset($json->keyword) && $json->keyword <> '') {
|
@@ -220,6 +240,10 @@
|
|
220 |
<span style="width: 65px;display: inline-block; vertical-align: top;"><?php _e('Keywords:', _SQ_PLUGIN_NAME_); ?></span><input type="text" name="sq_fp_keywords" value="<?php echo ((SQ_Tools::$options['sq_fp_keywords'] <> '') ? SQ_Tools::$options['sq_fp_keywords'] : '') ?>" size="70" />
|
221 |
<span id="sq_fp_keywords_length"></span><span class="sq_settings_info"><?php _e('Tips: 2-4 keywords', _SQ_PLUGIN_NAME_); ?></span>
|
222 |
</p>
|
|
|
|
|
|
|
|
|
223 |
</div>
|
224 |
|
225 |
<span class="sq_option_info"><?php _e('First Page Preview (Title, Description, Keywords)', _SQ_PLUGIN_NAME_); ?></span>
|
@@ -227,6 +251,10 @@
|
|
227 |
<div id="sq_snippet_name"><?php _e('Squirrly Snippet', _SQ_PLUGIN_NAME_) ?></div>
|
228 |
|
229 |
<ul id="sq_snippet_ul">
|
|
|
|
|
|
|
|
|
230 |
<li id="sq_snippet_title"></li>
|
231 |
<li id="sq_snippet_url"></li>
|
232 |
<li id="sq_snippet_description"></li>
|
@@ -240,7 +268,7 @@
|
|
240 |
</div>
|
241 |
</fieldset>
|
242 |
<fieldset id="sq_social_media" style="<?php echo ((SQ_Tools::$options['sq_use'] == 0) ? 'display:none;' : ''); ?>">
|
243 |
-
<legend
|
244 |
<span class="sq_legend_title"><?php _e('Social Media Options', _SQ_PLUGIN_NAME_); ?></span>
|
245 |
<p>
|
246 |
<span><?php _e('Select the language you\'re using on Social Media', _SQ_PLUGIN_NAME_); ?></span>
|
@@ -435,8 +463,7 @@
|
|
435 |
<label for="sq_auto_twitter0" class="sq_switch-label sq_switch-label-on"><?php _e('No', _SQ_PLUGIN_NAME_); ?></label>
|
436 |
<span class="sq_switch-selection"></span>
|
437 |
</div>
|
438 |
-
<span><?php echo __('Add the <strong>Twitter card</strong> in your tweets. ', _SQ_PLUGIN_NAME_) . ' <a href="https://dev.twitter.com/
|
439 |
-
<br />
|
440 |
<div class="sq_switch sq_seo_switch_condition" style="<?php echo ((SQ_Tools::$options['sq_use'] == 0) ? 'display:none;' : ''); ?>">
|
441 |
<input id="sq_auto_twittersize1" type="radio" class="sq_switch-input" name="sq_auto_twittersize" value="summary_large_image" <?php echo ((SQ_Tools::$options['sq_auto_twittersize'] <> 'summary') ? "checked" : '') ?> />
|
442 |
<label for="sq_auto_twittersize1" class="sq_switch-label sq_switch-label-off"><?php _e('Yes', _SQ_PLUGIN_NAME_); ?></label>
|
@@ -445,7 +472,6 @@
|
|
445 |
<span class="sq_switch-selection"></span>
|
446 |
</div>
|
447 |
<span><?php echo sprintf(__('Use <strong>Twitter %ssummary_large_image%s</strong> for your tweeter card. ', _SQ_PLUGIN_NAME_) ,'<a href="https://dev.twitter.com/cards/types/summary-large-image" target="_blank" title="Twitter Large Summary">','</a> ') . ''; ?></span>
|
448 |
-
<br />
|
449 |
<span style="color: #f7681a; margin-top: 9px; text-align: center; <?php echo ((SQ_Tools::$options['sq_twitter_account'] <> '') ? 'display:none' : '') ?>"><?php echo __('You need to add your <strong>Twitter account</strong> below', _SQ_PLUGIN_NAME_); ?></span>
|
450 |
|
451 |
</div>
|
@@ -455,7 +481,7 @@
|
|
455 |
</div>
|
456 |
</fieldset>
|
457 |
<fieldset id="sq_social_media_accounts" style="<?php echo ((SQ_Tools::$options['sq_use'] == 0) ? 'display:none;' : ''); ?>">
|
458 |
-
<legend
|
459 |
<span class="sq_legend_title"><?php _e('Social Media Accounts', _SQ_PLUGIN_NAME_); ?></span>
|
460 |
<span><?php echo sprintf(__('%sLink your Google+ profile to the content you create%s', _SQ_PLUGIN_NAME_), '<a href="https://developers.google.com/structured-data/" target="_blank">', '</a>'); ?></span>
|
461 |
<span><?php echo sprintf(__('%sTwitter account is mandatory for <strong>Twitter Card Validation</strong>%s', _SQ_PLUGIN_NAME_), '<a href="https://dev.twitter.com/docs/cards/validation/validator" target="_blank">', '</a>'); ?></span>
|
@@ -489,11 +515,23 @@
|
|
489 |
<?php _e('Linkedin Profile:', _SQ_PLUGIN_NAME_); ?><br /><strong><input type="text" name="sq_linkedin_account" value="<?php echo ((SQ_Tools::$options['sq_linkedin_account'] <> '') ? SQ_Tools::$options['sq_linkedin_account'] : '') ?>" size="60" placeholder="https://www.linkedin.com/" /> (e.g. https://www.linkedin.com/XXXX/XXXXXXXXXXXXXXXXXX)</strong>
|
490 |
</p>
|
491 |
</li>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
492 |
</ul>
|
493 |
</div>
|
494 |
</fieldset>
|
495 |
<fieldset id="sq_sitemap" style="<?php echo ((SQ_Tools::$options['sq_use'] == 0 || SQ_Tools::$options['sq_auto_sitemap'] == 0) ? 'display:none;' : ''); ?>">
|
496 |
-
<legend
|
497 |
<span class="sq_legend_title"><?php _e('XML Sitemap for Google', _SQ_PLUGIN_NAME_); ?></span>
|
498 |
<span><?php echo __('Squirrly Sitemap is the fastest way to tell Google about your site links. <strong>Supports Multisites, Google News, Images, Videos, Custom Post Types, Custom Taxonomies and Ecommerce products</strong>', _SQ_PLUGIN_NAME_) ?></span>
|
499 |
<span><?php echo sprintf(__('%sHow to submit your sitemap.xml in Google Webmaster Tool%s', _SQ_PLUGIN_NAME_), '<a href="http://howto.squirrly.co/wordpress-seo/how-to-submit-your-sitemap-xml-in-google-sitemap/" target="_blank">', '</a>'); ?></span>
|
@@ -554,7 +592,7 @@
|
|
554 |
</fieldset>
|
555 |
<a name="sq_favicon_anchor"></a>
|
556 |
<fieldset id="sq_favicon" style="<?php echo ((SQ_Tools::$options['sq_use'] == 0 || SQ_Tools::$options['sq_auto_favicon'] == 0) ? 'display:none;' : ''); ?>">
|
557 |
-
<legend
|
558 |
<span class="sq_legend_title"><?php _e('Change the Website Icon', _SQ_PLUGIN_NAME_); ?></span>
|
559 |
<span><?php _e('Now, even tablet & smartphone browsers make use of your icons. This makes having a good favicon even more important.', _SQ_PLUGIN_NAME_); ?> </span>
|
560 |
<span><?php echo sprintf(__('You can use %shttp://convertico.com/%s to convert your photo to icon and upload it here after that.', _SQ_PLUGIN_NAME_), '<a href="http://convertico.com/" target="_blank">', '</a>'); ?></span>
|
@@ -579,17 +617,16 @@
|
|
579 |
</p>
|
580 |
|
581 |
<span class="sq_settings_info"><?php _e('If you don\'t see the new icon in your browser, empty the browser cache and refresh the page.', _SQ_PLUGIN_NAME_); ?></span>
|
582 |
-
|
583 |
-
|
584 |
-
|
585 |
-
|
586 |
-
|
587 |
-
<br /><br />
|
588 |
-
<span><strong style="color:#f7681a"><?php echo __('Does not physically create the favicon.ico file. The best option for Multisites.', _SQ_PLUGIN_NAME_) ?></strong></span>
|
589 |
</div>
|
|
|
590 |
</fieldset>
|
591 |
<fieldset id="sq_jsonld" style="<?php echo ((SQ_Tools::$options['sq_use'] == 0 || SQ_Tools::$options['sq_auto_jsonld'] == 0) ? 'display:none;' : ''); ?>">
|
592 |
-
<legend
|
593 |
<span class="sq_legend_title"><?php _e('JSON-LD for Semantic SEO', _SQ_PLUGIN_NAME_); ?></span>
|
594 |
<span><?php echo __('Squirrly will automatically add the JSON-LD Structured Data in your site.', _SQ_PLUGIN_NAME_) ?></span>
|
595 |
<span><?php echo sprintf(__('%sJSON-LD\'s Big Day at Google%s', _SQ_PLUGIN_NAME_), '<a href="http://www.seoskeptic.com/json-ld-big-day-at-google/" target="_blank">', '</a>'); ?></span>
|
@@ -655,10 +692,12 @@
|
|
655 |
</div>
|
656 |
</fieldset>
|
657 |
<fieldset id="sq_tracking" >
|
658 |
-
<legend
|
659 |
<span class="sq_legend_title"><?php _e('Tracking Tools', _SQ_PLUGIN_NAME_); ?></span>
|
660 |
<span><?php echo sprintf(__('%sHow to Get the Most Out of Google Analytics%s', _SQ_PLUGIN_NAME_), '<a href="http://mashable.com/2012/01/04/google-analytics-guide/" target="_blank">', '</a>'); ?></span>
|
|
|
661 |
<span><?php echo sprintf(__('%sA Beginner’s Guide to Facebook Insights%s', _SQ_PLUGIN_NAME_), '<a href="http://mashable.com/2010/09/03/facebook-insights-guide/" target="_blank">', '</a>'); ?></span>
|
|
|
662 |
|
663 |
</legend>
|
664 |
<div>
|
@@ -671,9 +710,13 @@
|
|
671 |
<span class="sq_icon sq_icon_facebookinsights"></span>
|
672 |
<?php echo sprintf(__('Facebook Admin ID (for %sInsights%s ):', _SQ_PLUGIN_NAME_), '<a href="http://www.facebook.com/insights/" target="_blank">', '</a>'); ?><br><strong> <input type="text" name="sq_facebook_insights" value="<?php echo ((SQ_Tools::$options['sq_facebook_insights'] <> '') ? SQ_Tools::$options['sq_facebook_insights'] : '') ?>" size="15" placeholder="<?php echo __('Facebook ID or https://www.facebook.com/YourProfileName', _SQ_PLUGIN_NAME_) ?>" /> (e.g. <meta property="fb:admins" content="XXXXXXXXXXXXXXXXXX" />)</strong>
|
673 |
</p>
|
|
|
|
|
|
|
|
|
674 |
<p class="withborder withcode" >
|
675 |
<span class="sq_icon sq_icon_pinterest"></span>
|
676 |
-
<?php echo sprintf(__('Pinterest
|
677 |
</p>
|
678 |
</div>
|
679 |
</fieldset>
|
17 |
<form id="sq_settings_form" name="settings" action="" method="post" enctype="multipart/form-data">
|
18 |
<div id="sq_settings_body">
|
19 |
<fieldset>
|
20 |
+
<legend>
|
21 |
<span class="sq_legend_title"><?php _e('Let Squirrly SEO optimize this blog', _SQ_PLUGIN_NAME_); ?></span>
|
22 |
<span><?php echo sprintf(__('%sIs Squirrly SEO better then WordPress SEO by Yoast?%s', _SQ_PLUGIN_NAME_), '<a href="http://www.squirrly.co/why_is_squirrly_seo_better_then_wordpress_seo_by_yoast-pagblog-article_id61980-html" target="_blank"><strong>', '</strong></a>'); ?></span>
|
23 |
|
138 |
<span><?php echo sprintf(__('adds the <strong>%sJson-LD%s</strong> metas for Semantic SEO', _SQ_PLUGIN_NAME_), '<a href="https://en.wikipedia.org/wiki/JSON-LD" target="_blank">', '</a>'); ?></span>
|
139 |
</div>
|
140 |
</li>
|
141 |
+
<li>
|
142 |
+
<?php
|
143 |
+
$auto_option = false;
|
144 |
+
if (SQ_Tools::$options['sq_auto_amp'] == 1)
|
145 |
+
$auto_option = true;
|
146 |
+
?>
|
147 |
+
<div class="sq_option_content sq_option_content_small">
|
148 |
+
<div class="sq_switch sq_seo_switch_condition" style="<?php echo ((SQ_Tools::$options['sq_use'] == 0) ? 'display:none;' : ''); ?>">
|
149 |
+
<input id="sq_auto_amp1" type="radio" class="sq_switch-input" name="sq_auto_amp" value="1" <?php echo ($auto_option ? "checked" : '') ?> />
|
150 |
+
<label for="sq_auto_amp1" class="sq_switch-label sq_switch-label-off"><?php _e('Yes', _SQ_PLUGIN_NAME_); ?></label>
|
151 |
+
<input id="sq_auto_amp0" type="radio" class="sq_switch-input" name="sq_auto_amp" value="0" <?php echo (!$auto_option ? "checked" : '') ?> />
|
152 |
+
<label for="sq_auto_amp0" class="sq_switch-label sq_switch-label-on"><?php _e('No', _SQ_PLUGIN_NAME_); ?></label>
|
153 |
+
<span class="sq_switch-selection"></span>
|
154 |
+
</div>
|
155 |
+
<span><?php echo sprintf(__('turn on <strong>%sGoogle AMP%s</strong> for this website (Note: only if you have an AMP Theme)', _SQ_PLUGIN_NAME_), '<a href="https://developers.google.com/analytics/devguides/collection/amp-analytics/" target="_blank">', '</a>'); ?></span>
|
156 |
+
</div>
|
157 |
+
</li>
|
158 |
<p class="sq_option_info" style="padding-left:10px; color: darkgrey;"> <?php _e('Note! By switching the <strong>Json-LD</strong>, <strong>XML Sitemap</strong> and <strong>Favicon</strong> on, you open new options below', _SQ_PLUGIN_NAME_); ?></p>
|
159 |
</ul>
|
160 |
<div style="text-align: center;">
|
163 |
</div>
|
164 |
</fieldset>
|
165 |
<fieldset id="sq_title_description_keywords" <?php echo ((SQ_Tools::$options['sq_use'] == 0) ? 'style="display:none;"' : ''); ?> <?php echo ((SQ_Tools::$options['sq_fp_title'] == '' || SQ_Tools::$options['sq_auto_seo'] == 1) ? '' : 'class="sq_custom_title"'); ?>>
|
166 |
+
<legend>
|
167 |
<span class="sq_legend_title"><?php _e('First page optimization', _SQ_PLUGIN_NAME_); ?></span>
|
168 |
<span><?php echo sprintf(__('%sThe best SEO approach to Meta information%s', _SQ_PLUGIN_NAME_), '<a href="http://www.squirrly.co/the-best-seo-approach-to-meta-information" target="_blank">', '</a>'); ?></span>
|
169 |
<span><?php _e('Add meta <strong>title</strong> in Home Page', _SQ_PLUGIN_NAME_); ?></span>
|
183 |
</div>
|
184 |
|
185 |
<span><?php _e('Add meta <strong>description</strong> and <strong>keywords</strong> in Home Page', _SQ_PLUGIN_NAME_); ?></span>
|
186 |
+
|
187 |
<?php
|
188 |
$auto_option = false;
|
189 |
if (SQ_Tools::$options['sq_auto_description'] == 1)
|
214 |
if (SQ_ObjController::getModel('SQ_Frontend')->getAdvancedMeta($pageId, 'title') <> '') {
|
215 |
SQ_Tools::$options['sq_fp_title'] = SQ_ObjController::getModel('SQ_Frontend')->getAdvancedMeta($pageId, 'title');
|
216 |
SQ_Tools::$options['sq_fp_description'] = SQ_ObjController::getModel('SQ_Frontend')->getAdvancedMeta($pageId, 'description');
|
217 |
+
SQ_Tools::$options['sq_fp_ogimage'] = SQ_ObjController::getModel('SQ_Frontend')->getAdvancedMeta($pageId, 'ogimage');
|
218 |
+
|
219 |
if (!SQ_Tools::$options['sq_fp_keywords'] = SQ_ObjController::getModel('SQ_Frontend')->getAdvancedMeta($pageId, 'keyword')) {
|
220 |
$json = SQ_ObjController::getModel('SQ_Post')->getKeyword($pageId);
|
221 |
if (isset($json) && isset($json->keyword) && $json->keyword <> '') {
|
240 |
<span style="width: 65px;display: inline-block; vertical-align: top;"><?php _e('Keywords:', _SQ_PLUGIN_NAME_); ?></span><input type="text" name="sq_fp_keywords" value="<?php echo ((SQ_Tools::$options['sq_fp_keywords'] <> '') ? SQ_Tools::$options['sq_fp_keywords'] : '') ?>" size="70" />
|
241 |
<span id="sq_fp_keywords_length"></span><span class="sq_settings_info"><?php _e('Tips: 2-4 keywords', _SQ_PLUGIN_NAME_); ?></span>
|
242 |
</p>
|
243 |
+
<p class="withborder sq_select_ogimage" <?php echo ((SQ_Tools::$options['sq_auto_facebook'] == 1) ? '' : 'style="display:none"') ?>>
|
244 |
+
<span style="width: 65px;display: inline-block; vertical-align: top;"><?php _e('OG Image:', _SQ_PLUGIN_NAME_); ?></span>
|
245 |
+
<strong><input type="text" name="sq_fp_ogimage" value="<?php echo ((SQ_Tools::$options['sq_fp_ogimage'] <> '') ? SQ_Tools::$options['sq_fp_ogimage'] : '') ?>" size="60" style="display:none;" /><input id="sq_fp_imageselect" type="button" class="sq_button" value="<?php echo __('Select Open Graph Image', _SQ_PLUGIN_NAME_) ?>"/></strong>
|
246 |
+
</p>
|
247 |
</div>
|
248 |
|
249 |
<span class="sq_option_info"><?php _e('First Page Preview (Title, Description, Keywords)', _SQ_PLUGIN_NAME_); ?></span>
|
251 |
<div id="sq_snippet_name"><?php _e('Squirrly Snippet', _SQ_PLUGIN_NAME_) ?></div>
|
252 |
|
253 |
<ul id="sq_snippet_ul">
|
254 |
+
<div class="sq_select_ogimage_preview" <?php echo ((SQ_Tools::$options['sq_auto_facebook'] == 1) ? '' : 'style="display:none"') ?>>
|
255 |
+
<div class="sq_fp_ogimage_close" <?php echo ((SQ_Tools::$options['sq_fp_ogimage'] <> '') ? '' : 'style="display:none;"') ?>>x</div>
|
256 |
+
<div class="sq_fp_ogimage"><?php echo ((SQ_Tools::$options['sq_fp_ogimage'] <> '') ? '<img src="'.SQ_Tools::$options['sq_fp_ogimage'] .'" />' : '') ?></div>
|
257 |
+
</div>
|
258 |
<li id="sq_snippet_title"></li>
|
259 |
<li id="sq_snippet_url"></li>
|
260 |
<li id="sq_snippet_description"></li>
|
268 |
</div>
|
269 |
</fieldset>
|
270 |
<fieldset id="sq_social_media" style="<?php echo ((SQ_Tools::$options['sq_use'] == 0) ? 'display:none;' : ''); ?>">
|
271 |
+
<legend>
|
272 |
<span class="sq_legend_title"><?php _e('Social Media Options', _SQ_PLUGIN_NAME_); ?></span>
|
273 |
<p>
|
274 |
<span><?php _e('Select the language you\'re using on Social Media', _SQ_PLUGIN_NAME_); ?></span>
|
463 |
<label for="sq_auto_twitter0" class="sq_switch-label sq_switch-label-on"><?php _e('No', _SQ_PLUGIN_NAME_); ?></label>
|
464 |
<span class="sq_switch-selection"></span>
|
465 |
</div>
|
466 |
+
<span><?php echo __('Add the <strong>Twitter card</strong> in your tweets. ', _SQ_PLUGIN_NAME_) . ' <a href="https://cards-dev.twitter.com/validator" target="_blank" title="Twitter Card Validator">Check here</a> to validate your site'; ?></span>
|
|
|
467 |
<div class="sq_switch sq_seo_switch_condition" style="<?php echo ((SQ_Tools::$options['sq_use'] == 0) ? 'display:none;' : ''); ?>">
|
468 |
<input id="sq_auto_twittersize1" type="radio" class="sq_switch-input" name="sq_auto_twittersize" value="summary_large_image" <?php echo ((SQ_Tools::$options['sq_auto_twittersize'] <> 'summary') ? "checked" : '') ?> />
|
469 |
<label for="sq_auto_twittersize1" class="sq_switch-label sq_switch-label-off"><?php _e('Yes', _SQ_PLUGIN_NAME_); ?></label>
|
472 |
<span class="sq_switch-selection"></span>
|
473 |
</div>
|
474 |
<span><?php echo sprintf(__('Use <strong>Twitter %ssummary_large_image%s</strong> for your tweeter card. ', _SQ_PLUGIN_NAME_) ,'<a href="https://dev.twitter.com/cards/types/summary-large-image" target="_blank" title="Twitter Large Summary">','</a> ') . ''; ?></span>
|
|
|
475 |
<span style="color: #f7681a; margin-top: 9px; text-align: center; <?php echo ((SQ_Tools::$options['sq_twitter_account'] <> '') ? 'display:none' : '') ?>"><?php echo __('You need to add your <strong>Twitter account</strong> below', _SQ_PLUGIN_NAME_); ?></span>
|
476 |
|
477 |
</div>
|
481 |
</div>
|
482 |
</fieldset>
|
483 |
<fieldset id="sq_social_media_accounts" style="<?php echo ((SQ_Tools::$options['sq_use'] == 0) ? 'display:none;' : ''); ?>">
|
484 |
+
<legend>
|
485 |
<span class="sq_legend_title"><?php _e('Social Media Accounts', _SQ_PLUGIN_NAME_); ?></span>
|
486 |
<span><?php echo sprintf(__('%sLink your Google+ profile to the content you create%s', _SQ_PLUGIN_NAME_), '<a href="https://developers.google.com/structured-data/" target="_blank">', '</a>'); ?></span>
|
487 |
<span><?php echo sprintf(__('%sTwitter account is mandatory for <strong>Twitter Card Validation</strong>%s', _SQ_PLUGIN_NAME_), '<a href="https://dev.twitter.com/docs/cards/validation/validator" target="_blank">', '</a>'); ?></span>
|
515 |
<?php _e('Linkedin Profile:', _SQ_PLUGIN_NAME_); ?><br /><strong><input type="text" name="sq_linkedin_account" value="<?php echo ((SQ_Tools::$options['sq_linkedin_account'] <> '') ? SQ_Tools::$options['sq_linkedin_account'] : '') ?>" size="60" placeholder="https://www.linkedin.com/" /> (e.g. https://www.linkedin.com/XXXX/XXXXXXXXXXXXXXXXXX)</strong>
|
516 |
</p>
|
517 |
</li>
|
518 |
+
<li>
|
519 |
+
<p class="withborder withcode">
|
520 |
+
<span class="sq_icon sq_icon_social_pinterest"></span>
|
521 |
+
<?php _e('Pinterest Profile:', _SQ_PLUGIN_NAME_); ?><br /><strong><input type="text" name="sq_pinterest_account" value="<?php echo ((SQ_Tools::$options['sq_pinterest_account'] <> '') ? SQ_Tools::$options['sq_pinterest_account'] : '') ?>" size="60" placeholder="https://www.pinterest.com/" /> (e.g. https://www.pinterest.com/XXXXXXXXXXXXXXXXXX)</strong>
|
522 |
+
</p>
|
523 |
+
</li>
|
524 |
+
<li>
|
525 |
+
<p class="withborder withcode">
|
526 |
+
<span class="sq_icon sq_icon_social_instagram"></span>
|
527 |
+
<?php _e('Instagram Profile:', _SQ_PLUGIN_NAME_); ?><br /><strong><input type="text" name="sq_instagram_account" value="<?php echo ((SQ_Tools::$options['sq_instagram_account'] <> '') ? SQ_Tools::$options['sq_instagram_account'] : '') ?>" size="60" placeholder="https://www.instagram.com/" /> (e.g. https://www.linkedin.com/XXXXXXXXXXXXXXXXXX)</strong>
|
528 |
+
</p>
|
529 |
+
</li>
|
530 |
</ul>
|
531 |
</div>
|
532 |
</fieldset>
|
533 |
<fieldset id="sq_sitemap" style="<?php echo ((SQ_Tools::$options['sq_use'] == 0 || SQ_Tools::$options['sq_auto_sitemap'] == 0) ? 'display:none;' : ''); ?>">
|
534 |
+
<legend>
|
535 |
<span class="sq_legend_title"><?php _e('XML Sitemap for Google', _SQ_PLUGIN_NAME_); ?></span>
|
536 |
<span><?php echo __('Squirrly Sitemap is the fastest way to tell Google about your site links. <strong>Supports Multisites, Google News, Images, Videos, Custom Post Types, Custom Taxonomies and Ecommerce products</strong>', _SQ_PLUGIN_NAME_) ?></span>
|
537 |
<span><?php echo sprintf(__('%sHow to submit your sitemap.xml in Google Webmaster Tool%s', _SQ_PLUGIN_NAME_), '<a href="http://howto.squirrly.co/wordpress-seo/how-to-submit-your-sitemap-xml-in-google-sitemap/" target="_blank">', '</a>'); ?></span>
|
592 |
</fieldset>
|
593 |
<a name="sq_favicon_anchor"></a>
|
594 |
<fieldset id="sq_favicon" style="<?php echo ((SQ_Tools::$options['sq_use'] == 0 || SQ_Tools::$options['sq_auto_favicon'] == 0) ? 'display:none;' : ''); ?>">
|
595 |
+
<legend>
|
596 |
<span class="sq_legend_title"><?php _e('Change the Website Icon', _SQ_PLUGIN_NAME_); ?></span>
|
597 |
<span><?php _e('Now, even tablet & smartphone browsers make use of your icons. This makes having a good favicon even more important.', _SQ_PLUGIN_NAME_); ?> </span>
|
598 |
<span><?php echo sprintf(__('You can use %shttp://convertico.com/%s to convert your photo to icon and upload it here after that.', _SQ_PLUGIN_NAME_), '<a href="http://convertico.com/" target="_blank">', '</a>'); ?></span>
|
617 |
</p>
|
618 |
|
619 |
<span class="sq_settings_info"><?php _e('If you don\'t see the new icon in your browser, empty the browser cache and refresh the page.', _SQ_PLUGIN_NAME_); ?></span>
|
620 |
+
<div>
|
621 |
+
<div style="margin-top: 10px"><?php echo __('File types: JPG, JPEG, GIF and PNG.', _SQ_PLUGIN_NAME_); ?></div>
|
622 |
+
<br /><br />
|
623 |
+
<span><strong style="color:#f7681a"><?php echo __('Does not physically create the favicon.ico file. The best option for Multisites.', _SQ_PLUGIN_NAME_) ?></strong></span>
|
624 |
+
</div>
|
|
|
|
|
625 |
</div>
|
626 |
+
|
627 |
</fieldset>
|
628 |
<fieldset id="sq_jsonld" style="<?php echo ((SQ_Tools::$options['sq_use'] == 0 || SQ_Tools::$options['sq_auto_jsonld'] == 0) ? 'display:none;' : ''); ?>">
|
629 |
+
<legend>
|
630 |
<span class="sq_legend_title"><?php _e('JSON-LD for Semantic SEO', _SQ_PLUGIN_NAME_); ?></span>
|
631 |
<span><?php echo __('Squirrly will automatically add the JSON-LD Structured Data in your site.', _SQ_PLUGIN_NAME_) ?></span>
|
632 |
<span><?php echo sprintf(__('%sJSON-LD\'s Big Day at Google%s', _SQ_PLUGIN_NAME_), '<a href="http://www.seoskeptic.com/json-ld-big-day-at-google/" target="_blank">', '</a>'); ?></span>
|
692 |
</div>
|
693 |
</fieldset>
|
694 |
<fieldset id="sq_tracking" >
|
695 |
+
<legend>
|
696 |
<span class="sq_legend_title"><?php _e('Tracking Tools', _SQ_PLUGIN_NAME_); ?></span>
|
697 |
<span><?php echo sprintf(__('%sHow to Get the Most Out of Google Analytics%s', _SQ_PLUGIN_NAME_), '<a href="http://mashable.com/2012/01/04/google-analytics-guide/" target="_blank">', '</a>'); ?></span>
|
698 |
+
<span><?php echo sprintf(__('%sWhat is Facebook Pixel?%s', _SQ_PLUGIN_NAME_), '<a href="https://www.facebook.com/business/help/952192354843755" target="_blank">', '</a>'); ?></span>
|
699 |
<span><?php echo sprintf(__('%sA Beginner’s Guide to Facebook Insights%s', _SQ_PLUGIN_NAME_), '<a href="http://mashable.com/2010/09/03/facebook-insights-guide/" target="_blank">', '</a>'); ?></span>
|
700 |
+
<span><?php echo sprintf(__('%sRich Pins Validator%s', _SQ_PLUGIN_NAME_), '<a href="https://developers.pinterest.com/tools/url-debugger/" target="_blank">', '</a>'); ?></span>
|
701 |
|
702 |
</legend>
|
703 |
<div>
|
710 |
<span class="sq_icon sq_icon_facebookinsights"></span>
|
711 |
<?php echo sprintf(__('Facebook Admin ID (for %sInsights%s ):', _SQ_PLUGIN_NAME_), '<a href="http://www.facebook.com/insights/" target="_blank">', '</a>'); ?><br><strong> <input type="text" name="sq_facebook_insights" value="<?php echo ((SQ_Tools::$options['sq_facebook_insights'] <> '') ? SQ_Tools::$options['sq_facebook_insights'] : '') ?>" size="15" placeholder="<?php echo __('Facebook ID or https://www.facebook.com/YourProfileName', _SQ_PLUGIN_NAME_) ?>" /> (e.g. <meta property="fb:admins" content="XXXXXXXXXXXXXXXXXX" />)</strong>
|
712 |
</p>
|
713 |
+
<p class="withborder withcode">
|
714 |
+
<span class="sq_icon sq_icon_facebookpixel"></span>
|
715 |
+
<?php echo sprintf(__('Facebook %sPixel ID%s:', _SQ_PLUGIN_NAME_), '<a href="https://www.facebook.com/ads/manager/pixel/facebook_pixel/" target="_blank">', '</a>'); ?><br><strong><input type="text" name="sq_facebook_analytics" value="<?php echo ((SQ_Tools::$options['sq_facebook_analytics'] <> '') ? SQ_Tools::$options['sq_facebook_analytics'] : '') ?>" size="15" /> (e.g. 1234567890)</strong>
|
716 |
+
</p>
|
717 |
<p class="withborder withcode" >
|
718 |
<span class="sq_icon sq_icon_pinterest"></span>
|
719 |
+
<?php echo sprintf(__('Pinterest Website Validator Code: (validate %sRich Pins%s )', _SQ_PLUGIN_NAME_), '<a href="https://developers.pinterest.com/tools/url-debugger/" target="_blank">', '</a>'); ?><br><strong> <input type="text" name="sq_pinterest" value="<?php echo ((SQ_Tools::$options['sq_pinterest'] <> '') ? SQ_Tools::$options['sq_pinterest'] : '') ?>" size="15" /> (e.g. <meta name="p:domain_verify" content="XXXXXXXXXXXXXXXXXX" />)</strong>
|
720 |
</p>
|
721 |
</div>
|
722 |
</fieldset>
|
themes/default/SQ_Blocksearch.php
CHANGED
@@ -37,7 +37,6 @@
|
|
37 |
<li id="sq_type_img" title="<?php _e('Images', _SQ_PLUGIN_NAME_) ?>"></li>
|
38 |
<li id="sq_type_twitter" title="<?php _e('Twitter', _SQ_PLUGIN_NAME_) ?>"></li>
|
39 |
<li id="sq_type_wiki" title="<?php _e('Wiki', _SQ_PLUGIN_NAME_) ?>"></li>
|
40 |
-
<li id="sq_type_news" title="<?php _e('News', _SQ_PLUGIN_NAME_) ?>"></li>
|
41 |
<li id="sq_type_blog" title="<?php _e('Blogs', _SQ_PLUGIN_NAME_) ?>"></li>
|
42 |
<li id="sq_type_local" title="<?php _e('My articles', _SQ_PLUGIN_NAME_) ?>"></li>
|
43 |
</ul>
|
37 |
<li id="sq_type_img" title="<?php _e('Images', _SQ_PLUGIN_NAME_) ?>"></li>
|
38 |
<li id="sq_type_twitter" title="<?php _e('Twitter', _SQ_PLUGIN_NAME_) ?>"></li>
|
39 |
<li id="sq_type_wiki" title="<?php _e('Wiki', _SQ_PLUGIN_NAME_) ?>"></li>
|
|
|
40 |
<li id="sq_type_blog" title="<?php _e('Blogs', _SQ_PLUGIN_NAME_) ?>"></li>
|
41 |
<li id="sq_type_local" title="<?php _e('My articles', _SQ_PLUGIN_NAME_) ?>"></li>
|
42 |
</ul>
|
themes/default/SQ_Blockseo.php
CHANGED
@@ -4,8 +4,10 @@
|
|
4 |
<div class="sq_tasks"></div>
|
5 |
</div>
|
6 |
</div>
|
|
|
7 |
<div id="sq_canonical" style="display: none">
|
8 |
<div class="sq_header"><?php _e('Canonical link: ', _SQ_PLUGIN_NAME_); ?></div>
|
9 |
<div class="sq_canonical_input"><input type="text" name="sq_canonical" size="30" value="<?php global $sq_postID; echo SQ_ObjController::getModel('SQ_Frontend')->getAdvancedMeta($sq_postID, 'canonical') ?>" /></div>
|
10 |
<div class="sq_information"><em><?php _e('(only for external sources)', _SQ_PLUGIN_NAME_); ?></em></div>
|
11 |
-
</div>
|
|
4 |
<div class="sq_tasks"></div>
|
5 |
</div>
|
6 |
</div>
|
7 |
+
<?php if (SQ_Tools::$options['sq_use'] == 1 && SQ_Tools::$options['sq_auto_canonical'] == 1) { ?>
|
8 |
<div id="sq_canonical" style="display: none">
|
9 |
<div class="sq_header"><?php _e('Canonical link: ', _SQ_PLUGIN_NAME_); ?></div>
|
10 |
<div class="sq_canonical_input"><input type="text" name="sq_canonical" size="30" value="<?php global $sq_postID; echo SQ_ObjController::getModel('SQ_Frontend')->getAdvancedMeta($sq_postID, 'canonical') ?>" /></div>
|
11 |
<div class="sq_information"><em><?php _e('(only for external sources)', _SQ_PLUGIN_NAME_); ?></em></div>
|
12 |
+
</div>
|
13 |
+
<?php }
|
themes/default/css/sq_blockresearch.css
CHANGED
@@ -173,6 +173,7 @@
|
|
173 |
float: right;
|
174 |
margin-right: 10px;
|
175 |
margin-top: 2px;
|
|
|
176 |
}
|
177 |
#sq_research .sq_keyword_research{
|
178 |
float: left;
|
173 |
float: right;
|
174 |
margin-right: 10px;
|
175 |
margin-top: 2px;
|
176 |
+
line-height: 16px;
|
177 |
}
|
178 |
#sq_research .sq_keyword_research{
|
179 |
float: left;
|
themes/default/css/sq_blocksearch.css
CHANGED
@@ -199,6 +199,9 @@
|
|
199 |
overflow-y: auto;
|
200 |
max-height: 310px;
|
201 |
overflow-x: hidden;
|
|
|
|
|
|
|
202 |
clear: both;
|
203 |
}
|
204 |
#sq_blocksearch .sq_search ul{
|
@@ -334,11 +337,10 @@
|
|
334 |
border-color: #333;
|
335 |
}
|
336 |
#sq_blocksearch .sq_search ul li.sq_search_img_li > img{
|
337 |
-
clip: rect(
|
338 |
position: absolute;
|
339 |
-
|
340 |
-
margin-
|
341 |
-
margin-left: -10px;
|
342 |
max-height: 75px;
|
343 |
}
|
344 |
|
199 |
overflow-y: auto;
|
200 |
max-height: 310px;
|
201 |
overflow-x: hidden;
|
202 |
+
padding: 0 !important;
|
203 |
+
margin: 0 !important;
|
204 |
+
width: 100% !important;
|
205 |
clear: both;
|
206 |
}
|
207 |
#sq_blocksearch .sq_search ul{
|
337 |
border-color: #333;
|
338 |
}
|
339 |
#sq_blocksearch .sq_search ul li.sq_search_img_li > img{
|
340 |
+
clip: rect(7px, 75px, 63px, 19px);
|
341 |
position: absolute;
|
342 |
+
margin-top: -8px;
|
343 |
+
margin-left: -20px;
|
|
|
344 |
max-height: 75px;
|
345 |
}
|
346 |
|
themes/default/css/sq_blockseo.css
CHANGED
@@ -523,4 +523,6 @@ body ul.sq_complete li span{
|
|
523 |
font-style: italic;
|
524 |
padding: 5px;
|
525 |
width: 100%;
|
|
|
|
|
526 |
}
|
523 |
font-style: italic;
|
524 |
padding: 5px;
|
525 |
width: 100%;
|
526 |
+
height: 30px;
|
527 |
+
line-height: 20px;
|
528 |
}
|
themes/default/css/sq_blocksettingsseo.css
CHANGED
@@ -51,6 +51,7 @@
|
|
51 |
#sq_settings #sq_option_facebook,
|
52 |
#sq_settings #sq_option_twitter{
|
53 |
position: relative;
|
|
|
54 |
clear: both;
|
55 |
}
|
56 |
|
@@ -172,4 +173,28 @@
|
|
172 |
background: transparent url('../img/settings/googlejsonld.png') no-repeat;
|
173 |
z-index: 100;
|
174 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
175 |
}
|
51 |
#sq_settings #sq_option_facebook,
|
52 |
#sq_settings #sq_option_twitter{
|
53 |
position: relative;
|
54 |
+
display: table;
|
55 |
clear: both;
|
56 |
}
|
57 |
|
173 |
background: transparent url('../img/settings/googlejsonld.png') no-repeat;
|
174 |
z-index: 100;
|
175 |
|
176 |
+
}
|
177 |
+
#sq_settings div.sq_select_ogimage_preview{
|
178 |
+
position: relative;
|
179 |
+
display: table
|
180 |
+
}
|
181 |
+
#sq_settings div.sq_fp_ogimage img{
|
182 |
+
max-width: 470px;
|
183 |
+
max-height: 246px;
|
184 |
+
overflow: hidden;
|
185 |
+
text-align: center;
|
186 |
+
}
|
187 |
+
|
188 |
+
#sq_settings div.sq_fp_ogimage_close {
|
189 |
+
position: absolute;
|
190 |
+
|
191 |
+
right: -8px;
|
192 |
+
top: -8px;
|
193 |
+
border: 1px #ccc;
|
194 |
+
background: #ddd;
|
195 |
+
border-radius: 50%;
|
196 |
+
width: 20px;
|
197 |
+
line-height: 20px;
|
198 |
+
text-align: center;
|
199 |
+
cursor: pointer;
|
200 |
}
|
themes/default/css/sq_feed.css
CHANGED
@@ -1,8 +1,3 @@
|
|
1 |
-
/* http://meyerweb.com/eric/tools/css/reset/
|
2 |
-
v2.0 | 20110126
|
3 |
-
License: none (public domain)
|
4 |
-
*/
|
5 |
-
/* HTML5 display-role reset for older browsers */
|
6 |
article,
|
7 |
aside,
|
8 |
details,
|
|
|
|
|
|
|
|
|
|
|
1 |
article,
|
2 |
aside,
|
3 |
details,
|
themes/default/css/sq_menu.css
CHANGED
@@ -326,8 +326,7 @@
|
|
326 |
float: left;
|
327 |
clear: both;
|
328 |
width: 900px;
|
329 |
-
|
330 |
-
background: #fcfcfc;
|
331 |
border: 1px solid #ddd;
|
332 |
font-size: 1.1em;
|
333 |
margin: 10px auto;
|
@@ -340,18 +339,22 @@
|
|
340 |
}
|
341 |
#sq_settings_body fieldset > div{
|
342 |
float: left;
|
343 |
-
|
344 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
345 |
}
|
346 |
#sq_settings_body fieldset legend{
|
347 |
float: left;
|
348 |
width: 280px;
|
349 |
-
height: 365px;
|
350 |
-
background: #161a16 repeat-x top left;
|
351 |
border: none;
|
352 |
font-weight: normal;
|
353 |
font-size: 14px;
|
354 |
-
margin: 0
|
355 |
padding: 25px;
|
356 |
line-height: 20px;
|
357 |
text-align: left;
|
@@ -435,6 +438,12 @@
|
|
435 |
color: #777;
|
436 |
}
|
437 |
|
|
|
|
|
|
|
|
|
|
|
|
|
438 |
#sq_settings_body fieldset p{
|
439 |
vertical-align: top;
|
440 |
margin: 5px 0 5px 0;
|
@@ -493,7 +502,7 @@
|
|
493 |
background: transparent url('../img/sprite.png') no-repeat;
|
494 |
margin: 0 10px 0 0;
|
495 |
color: brown;
|
496 |
-
width:
|
497 |
height: 50px;
|
498 |
}
|
499 |
#sq_settings_body fieldset .sq_icon_googleplus {
|
@@ -516,6 +525,16 @@
|
|
516 |
width: 74px;
|
517 |
height: 70px;
|
518 |
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
519 |
|
520 |
#sq_settings_body fieldset .sq_icon_googlewt {
|
521 |
background-position: -112px -100px;
|
@@ -526,6 +545,10 @@
|
|
526 |
#sq_settings_body fieldset .sq_icon_facebookinsights {
|
527 |
background-position: -59px -100px;
|
528 |
}
|
|
|
|
|
|
|
|
|
529 |
#sq_settings_body fieldset .sq_icon_bingwt {
|
530 |
background-position: -165px -100px;
|
531 |
}
|
326 |
float: left;
|
327 |
clear: both;
|
328 |
width: 900px;
|
329 |
+
background: #161a16;
|
|
|
330 |
border: 1px solid #ddd;
|
331 |
font-size: 1.1em;
|
332 |
margin: 10px auto;
|
339 |
}
|
340 |
#sq_settings_body fieldset > div{
|
341 |
float: left;
|
342 |
+
background-color: #fcfcfc;
|
343 |
+
padding: 20px 0 0 10px;
|
344 |
+
width: 560px;
|
345 |
+
min-height: 280px;
|
346 |
+
}
|
347 |
+
|
348 |
+
#sq_settings_affiliate_form fieldset > div{
|
349 |
+
min-height: 324px;
|
350 |
}
|
351 |
#sq_settings_body fieldset legend{
|
352 |
float: left;
|
353 |
width: 280px;
|
|
|
|
|
354 |
border: none;
|
355 |
font-weight: normal;
|
356 |
font-size: 14px;
|
357 |
+
margin: 0;
|
358 |
padding: 25px;
|
359 |
line-height: 20px;
|
360 |
text-align: left;
|
438 |
color: #777;
|
439 |
}
|
440 |
|
441 |
+
#sq_settings_body .sq_option_info{
|
442 |
+
font-style: italic;
|
443 |
+
color: #aaa;
|
444 |
+
font-size: 90%;
|
445 |
+
}
|
446 |
+
|
447 |
#sq_settings_body fieldset p{
|
448 |
vertical-align: top;
|
449 |
margin: 5px 0 5px 0;
|
502 |
background: transparent url('../img/sprite.png') no-repeat;
|
503 |
margin: 0 10px 0 0;
|
504 |
color: brown;
|
505 |
+
width: 54px;
|
506 |
height: 50px;
|
507 |
}
|
508 |
#sq_settings_body fieldset .sq_icon_googleplus {
|
525 |
width: 74px;
|
526 |
height: 70px;
|
527 |
}
|
528 |
+
#sq_settings_body fieldset .sq_icon_social_instagram {
|
529 |
+
background-position: -445px -279px;
|
530 |
+
width: 74px;
|
531 |
+
height: 70px;
|
532 |
+
}
|
533 |
+
#sq_settings_body fieldset .sq_icon_social_pinterest {
|
534 |
+
background-position: -518px -279px;
|
535 |
+
width: 74px;
|
536 |
+
height: 70px;
|
537 |
+
}
|
538 |
|
539 |
#sq_settings_body fieldset .sq_icon_googlewt {
|
540 |
background-position: -112px -100px;
|
545 |
#sq_settings_body fieldset .sq_icon_facebookinsights {
|
546 |
background-position: -59px -100px;
|
547 |
}
|
548 |
+
#sq_settings_body fieldset .sq_icon_facebookpixel {
|
549 |
+
background-position: -370px -100px;
|
550 |
+
}
|
551 |
+
|
552 |
#sq_settings_body fieldset .sq_icon_bingwt {
|
553 |
background-position: -165px -100px;
|
554 |
}
|
themes/default/img/sprite.png
CHANGED
Binary file
|
themes/default/js/sq_blocksettingsseo.js
CHANGED
@@ -231,6 +231,64 @@ function sq_blocksettingsseo() {
|
|
231 |
// Finally, open the modal on click
|
232 |
frame.open();
|
233 |
});
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
234 |
}
|
235 |
|
236 |
//Submit the settings
|
@@ -248,56 +306,62 @@ function sq_submitSettings() {
|
|
248 |
});
|
249 |
|
250 |
jQuery.post(
|
251 |
-
|
252 |
-
|
253 |
-
|
254 |
// --
|
255 |
-
|
256 |
-
|
257 |
-
|
258 |
-
|
259 |
-
|
260 |
-
|
261 |
-
|
262 |
-
|
263 |
-
|
264 |
-
|
265 |
//--
|
266 |
-
|
267 |
-
|
268 |
-
|
269 |
-
|
|
|
|
|
270 |
//--
|
271 |
-
|
272 |
-
|
273 |
-
|
274 |
-
|
275 |
-
|
276 |
-
|
277 |
// --
|
278 |
-
|
279 |
-
|
280 |
-
|
281 |
-
|
282 |
-
|
283 |
-
|
284 |
-
|
285 |
-
|
286 |
//--
|
287 |
-
|
288 |
-
|
289 |
-
|
290 |
-
|
|
|
291 |
// --
|
292 |
-
|
293 |
// --
|
294 |
-
|
295 |
-
|
296 |
-
|
297 |
-
// --
|
298 |
|
299 |
-
|
300 |
-
|
|
|
|
|
|
|
|
|
301 |
).done(function () {
|
302 |
showSaved(2000);
|
303 |
}, 'json');
|
231 |
// Finally, open the modal on click
|
232 |
frame.open();
|
233 |
});
|
234 |
+
|
235 |
+
jQuery('#sq_auto_facebook1').bind('click', function () {
|
236 |
+
jQuery('p.sq_select_ogimage').slideDown();
|
237 |
+
jQuery('div.sq_select_ogimage_preview').slideDown();
|
238 |
+
|
239 |
+
});
|
240 |
+
jQuery('#sq_auto_facebook0').bind('click', function () {
|
241 |
+
jQuery('p.sq_select_ogimage').slideUp();
|
242 |
+
jQuery('div.sq_select_ogimage_preview').slideUp();
|
243 |
+
});
|
244 |
+
|
245 |
+
jQuery('div.sq_fp_ogimage_close').bind('click', function (event) {
|
246 |
+
jQuery('input[name=sq_fp_ogimage]').val('');
|
247 |
+
jQuery('div.sq_fp_ogimage').html('');
|
248 |
+
jQuery('div.sq_fp_ogimage_close').hide();
|
249 |
+
});
|
250 |
+
//Upload image from library
|
251 |
+
jQuery('#sq_fp_imageselect').bind('click', function (event) {
|
252 |
+
var frame;
|
253 |
+
|
254 |
+
event.preventDefault();
|
255 |
+
|
256 |
+
// If the media frame already exists, reopen it.
|
257 |
+
if (frame) {
|
258 |
+
frame.open();
|
259 |
+
return;
|
260 |
+
}
|
261 |
+
|
262 |
+
// Create a new media frame
|
263 |
+
frame = wp.media({
|
264 |
+
title: 'Select or Upload Media Of Your Chosen Persuasion',
|
265 |
+
button: {
|
266 |
+
text: 'Use this media'
|
267 |
+
},
|
268 |
+
multiple: false // Set to true to allow multiple files to be selected
|
269 |
+
});
|
270 |
+
|
271 |
+
|
272 |
+
// When an image is selected in the media frame...
|
273 |
+
frame.on('select', function () {
|
274 |
+
|
275 |
+
// Get media attachment details from the frame state
|
276 |
+
var attachment = frame.state().get('selection').first().toJSON();
|
277 |
+
|
278 |
+
// Send the attachment URL to our custom image input field.
|
279 |
+
jQuery('input[name=sq_fp_ogimage]').val(attachment.url);
|
280 |
+
if (attachment.url != '') {
|
281 |
+
jQuery('div.sq_fp_ogimage').html('<img src="' + attachment.url + '">');
|
282 |
+
jQuery('div.sq_fp_ogimage_close').show();
|
283 |
+
}else{
|
284 |
+
jQuery('div.sq_fp_ogimage').html('');
|
285 |
+
jQuery('div.sq_fp_ogimage_close').hide();
|
286 |
+
}
|
287 |
+
});
|
288 |
+
|
289 |
+
// Finally, open the modal on click
|
290 |
+
frame.open();
|
291 |
+
});
|
292 |
}
|
293 |
|
294 |
//Submit the settings
|
306 |
});
|
307 |
|
308 |
jQuery.post(
|
309 |
+
sqQuery.ajaxurl,
|
310 |
+
{
|
311 |
+
action: 'sq_settingsseo_update',
|
312 |
// --
|
313 |
+
sq_use: jQuery('#sq_settings').find('input[name=sq_use]:checked').val(),
|
314 |
+
sq_auto_title: jQuery('#sq_settings').find('input[name=sq_auto_title]:checked').val(),
|
315 |
+
sq_auto_description: jQuery('#sq_settings').find('input[name=sq_auto_description]:checked').val(),
|
316 |
+
sq_auto_canonical: jQuery('#sq_settings').find('input[name=sq_auto_canonical]:checked').val(),
|
317 |
+
sq_auto_meta: jQuery('#sq_settings').find('input[name=sq_auto_meta]:checked').val(),
|
318 |
+
sq_auto_favicon: jQuery('#sq_settings').find('input[name=sq_auto_favicon]:checked').val(),
|
319 |
+
sq_auto_facebook: jQuery('#sq_settings').find('input[name=sq_auto_facebook]:checked').val(),
|
320 |
+
sq_auto_twitter: jQuery('#sq_settings').find('input[name=sq_auto_twitter]:checked').val(),
|
321 |
+
sq_auto_twittersize: jQuery('#sq_settings').find('input[name=sq_auto_twittersize]:checked').val(),
|
322 |
+
sq_og_locale: jQuery('#sq_settings').find('select[name=sq_og_locale] option:selected').val(),
|
323 |
//--
|
324 |
+
sq_twitter_account: jQuery('#sq_settings').find('input[name=sq_twitter_account]').val(),
|
325 |
+
sq_facebook_account: jQuery('#sq_settings').find('input[name=sq_facebook_account]').val(),
|
326 |
+
sq_google_plus: jQuery('#sq_settings').find('input[name=sq_google_plus]').val(),
|
327 |
+
sq_linkedin_account: jQuery('#sq_settings').find('input[name=sq_linkedin_account]').val(),
|
328 |
+
sq_pinterest_account: jQuery('#sq_settings').find('input[name=sq_pinterest_account]').val(),
|
329 |
+
sq_instagram_account: jQuery('#sq_settings').find('input[name=sq_instagram_account]').val(),
|
330 |
//--
|
331 |
+
sq_auto_sitemap: jQuery('#sq_settings').find('input[name=sq_auto_sitemap]:checked').val(),
|
332 |
+
sq_auto_feed: jQuery('#sq_settings').find('input[name=sq_auto_feed]:checked').val(),
|
333 |
+
sq_sitemap: sq_sitemap,
|
334 |
+
sq_sitemap_show: sq_sitemap_show,
|
335 |
+
sq_sitemap_frequency: jQuery('#sq_settings').find('select[name=sq_sitemap_frequency] option:selected').val(),
|
336 |
+
sq_sitemap_ping: jQuery('#sq_settings').find('input[name=sq_sitemap_ping]:checked').val(),
|
337 |
// --
|
338 |
+
sq_auto_jsonld: jQuery('#sq_settings').find('input[name=sq_auto_jsonld]:checked').val(),
|
339 |
+
sq_jsonld_type: jQuery('#sq_settings').find('select[name=sq_jsonld_type] option:selected').val(),
|
340 |
+
sq_jsonld_name: jQuery('#sq_settings').find('input[name=sq_jsonld_name]').val(),
|
341 |
+
sq_jsonld_jobTitle: jQuery('#sq_settings').find('input[name=sq_jsonld_jobTitle]').val(),
|
342 |
+
sq_jsonld_logo: jQuery('#sq_settings').find('input[name=sq_jsonld_logo]').val(),
|
343 |
+
sq_jsonld_telephone: jQuery('#sq_settings').find('input[name=sq_jsonld_telephone]').val(),
|
344 |
+
sq_jsonld_contactType: jQuery('#sq_settings').find('select[name=sq_jsonld_contactType] option:selected').val(),
|
345 |
+
sq_jsonld_description: jQuery('#sq_settings').find('textarea[name=sq_jsonld_description]').val(),
|
346 |
//--
|
347 |
+
sq_auto_seo: jQuery('#sq_settings').find('input[name=sq_auto_seo]:checked').val(),
|
348 |
+
sq_fp_title: jQuery('#sq_settings').find('input[name=sq_fp_title]').val(),
|
349 |
+
sq_fp_description: jQuery('#sq_settings').find('textarea[name=sq_fp_description]').val(),
|
350 |
+
sq_fp_keywords: jQuery('#sq_settings').find('input[name=sq_fp_keywords]').val(),
|
351 |
+
sq_fp_ogimage: jQuery('#sq_settings').find('input[name=sq_fp_ogimage]').val(),
|
352 |
// --
|
353 |
+
ignore_warn: jQuery('#sq_settings').find('input[name=ignore_warn]:checked').val(),
|
354 |
// --
|
355 |
+
sq_google_analytics: jQuery('#sq_settings').find('input[name=sq_google_analytics]').val(),
|
356 |
+
sq_facebook_insights: jQuery('#sq_settings').find('input[name=sq_facebook_insights]').val(),
|
357 |
+
sq_facebook_analytics: jQuery('#sq_settings').find('input[name=sq_facebook_analytics]').val(),
|
|
|
358 |
|
359 |
+
sq_pinterest: jQuery('#sq_settings').find('input[name=sq_pinterest]').val(),
|
360 |
+
sq_auto_amp: jQuery('#sq_settings').find('input[name=sq_auto_amp]:checked').val(),
|
361 |
+
// --
|
362 |
+
|
363 |
+
nonce: sqQuery.nonce
|
364 |
+
}
|
365 |
).done(function () {
|
366 |
showSaved(2000);
|
367 |
}, 'json');
|
themes/default/js/sq_menu.js
CHANGED
@@ -8,7 +8,7 @@ if (jQuery('#sq_settings').length > 0) {
|
|
8 |
|
9 |
|
10 |
function ctl_setThemeColors(background, button, text) {
|
11 |
-
jQuery('#sq_settings
|
12 |
jQuery('#sq_settings input[type="submit"]').css('background-color', button);
|
13 |
jQuery('#sq_settings input[type="submit"]').css('color', text);
|
14 |
jQuery('#sq_settings legend > span').css('color', text);
|
8 |
|
9 |
|
10 |
function ctl_setThemeColors(background, button, text) {
|
11 |
+
jQuery('#sq_settings fieldset').css('background-color', background);
|
12 |
jQuery('#sq_settings input[type="submit"]').css('background-color', button);
|
13 |
jQuery('#sq_settings input[type="submit"]').css('color', text);
|
14 |
jQuery('#sq_settings legend > span').css('color', text);
|