Version Description
Download this release
Release Info
Developer | cifi |
Plugin | SEO SQUIRRLY™ |
Version | 11.1.03 |
Comparing to | |
See all releases |
Code changes from version 11.1.02 to 11.1.03
- classes/helpers/Tools.php +2 -1
- controllers/Audits.php +14 -11
- controllers/CheckSeo.php +16 -5
- controllers/FocusPages.php +11 -4
- controllers/Onboarding.php +0 -1
- controllers/Overview.php +0 -1
- controllers/Patterns.php +0 -4
- controllers/Post.php +8 -8
- controllers/Snippet.php +6 -3
- models/Compatibility.php +21 -1
- models/Frontend.php +11 -0
- models/ImportExport.php +14 -4
- models/abstract/Seo.php +5 -5
- models/domain/Post.php +5 -0
- models/services/JsonLD.php +11 -10
- readme.txt +9 -0
- squirrly.php +2 -2
- view/Audits/Audits.php +6 -2
- view/Blocks/Snippet.php +5 -1
- view/FocusPages/Pagelist.php +7 -2
- view/Goals/CheckSeo.php +7 -2
- view/SeoSettings/Advanced.php +15 -0
- view/assets/css/post.min.css +1 -1
classes/helpers/Tools.php
CHANGED
@@ -137,6 +137,7 @@ class SQ_Classes_Helpers_Tools {
|
|
137 |
//minify Squirrly Metas
|
138 |
'sq_load_css' => 1,
|
139 |
'sq_minify' => 0,
|
|
|
140 |
|
141 |
//Settings Assistant
|
142 |
'sq_assistant' => 1,
|
@@ -682,7 +683,7 @@ class SQ_Classes_Helpers_Tools {
|
|
682 |
'archive' => array(
|
683 |
'protected' => 1,
|
684 |
'sep' => '|',
|
685 |
-
'title' => '{{date}} {{page}} {{sep}} {{sitename}}',
|
686 |
'description' => '{{excerpt}}',
|
687 |
'noindex' => 0,
|
688 |
'nofollow' => 0,
|
137 |
//minify Squirrly Metas
|
138 |
'sq_load_css' => 1,
|
139 |
'sq_minify' => 0,
|
140 |
+
'sq_non_utf8_support' => 1,
|
141 |
|
142 |
//Settings Assistant
|
143 |
'sq_assistant' => 1,
|
683 |
'archive' => array(
|
684 |
'protected' => 1,
|
685 |
'sep' => '|',
|
686 |
+
'title' => '{{plural}} {{date}} {{page}} {{sep}} {{sitename}}',
|
687 |
'description' => '{{excerpt}}',
|
688 |
'noindex' => 0,
|
689 |
'nofollow' => 0,
|
controllers/Audits.php
CHANGED
@@ -27,10 +27,10 @@ class SQ_Controllers_Audits extends SQ_Classes_FrontController {
|
|
27 |
$this->checkin = SQ_Classes_RemoteController::checkin();
|
28 |
|
29 |
if (is_wp_error($this->checkin)) {
|
30 |
-
if($this->checkin->get_error_message() == 'no_data') {
|
31 |
echo $this->getView('Errors/Error');
|
32 |
return;
|
33 |
-
}elseif($this->checkin->get_error_message() == 'maintenance') {
|
34 |
echo $this->getView('Errors/Maintenance');
|
35 |
return;
|
36 |
}
|
@@ -43,11 +43,11 @@ class SQ_Controllers_Audits extends SQ_Classes_FrontController {
|
|
43 |
}
|
44 |
|
45 |
SQ_Classes_ObjController::getClass('SQ_Classes_DisplayController')->loadMedia('bootstrap-reboot');
|
46 |
-
if(is_rtl()){
|
47 |
SQ_Classes_ObjController::getClass('SQ_Classes_DisplayController')->loadMedia('popper');
|
48 |
SQ_Classes_ObjController::getClass('SQ_Classes_DisplayController')->loadMedia('bootstrap.rtl');
|
49 |
SQ_Classes_ObjController::getClass('SQ_Classes_DisplayController')->loadMedia('rtl');
|
50 |
-
}else{
|
51 |
SQ_Classes_ObjController::getClass('SQ_Classes_DisplayController')->loadMedia('bootstrap');
|
52 |
}
|
53 |
SQ_Classes_ObjController::getClass('SQ_Classes_DisplayController')->loadMedia('switchery');
|
@@ -151,7 +151,7 @@ class SQ_Controllers_Audits extends SQ_Classes_FrontController {
|
|
151 |
}
|
152 |
|
153 |
public function audits() {
|
154 |
-
add_action('sq_form_notices', array($this,'getNotificationBar'));
|
155 |
|
156 |
SQ_Classes_ObjController::getClass('SQ_Classes_DisplayController')->loadMedia('audits');
|
157 |
SQ_Classes_ObjController::getClass('SQ_Classes_DisplayController')->loadMedia('knob');
|
@@ -163,7 +163,7 @@ class SQ_Controllers_Audits extends SQ_Classes_FrontController {
|
|
163 |
* Set the audit pages and populate them
|
164 |
* @return mixed
|
165 |
*/
|
166 |
-
public function setAuditPages(){
|
167 |
$days_back = (int)SQ_Classes_Helpers_Tools::getValue('days_back', 30);
|
168 |
$this->audit = SQ_Classes_RemoteController::getAudit(array('days_back' => $days_back));
|
169 |
|
@@ -243,8 +243,11 @@ class SQ_Controllers_Audits extends SQ_Classes_FrontController {
|
|
243 |
$json['stats'] = $this->getView('Audits/AuditStats');
|
244 |
$json['html'] = $this->getView('Audits/AuditPages');
|
245 |
|
246 |
-
|
247 |
-
|
|
|
|
|
|
|
248 |
}
|
249 |
|
250 |
if (SQ_Classes_Helpers_Tools::isAjax()) {
|
@@ -302,16 +305,16 @@ class SQ_Controllers_Audits extends SQ_Classes_FrontController {
|
|
302 |
|
303 |
$post_id = (int)SQ_Classes_Helpers_Tools::getValue('post_id', 0);
|
304 |
|
305 |
-
if($post_id) {
|
306 |
$args = array();
|
307 |
$args['post_id'] = $post_id;
|
308 |
|
309 |
if ($auditpage = SQ_Classes_RemoteController::updateAudit($args)) {
|
310 |
if (!is_wp_error($auditpage)) {
|
311 |
SQ_Classes_Error::setMessage(esc_html__("Audit page sent for recheck. It may take a while so please be patient.", _SQ_PLUGIN_NAME_) . " <br /> ");
|
312 |
-
} elseif($auditpage->get_error_message() == 'too_many_attempts'){
|
313 |
SQ_Classes_Error::setError(esc_html__("You've made too many requests, you can request one page audit per hour.", _SQ_PLUGIN_NAME_) . " <br /> ");
|
314 |
-
}else{
|
315 |
SQ_Classes_Error::setError(esc_html__("The page could not be sent for reaudit.", _SQ_PLUGIN_NAME_) . " <br /> ");
|
316 |
}
|
317 |
} else {
|
27 |
$this->checkin = SQ_Classes_RemoteController::checkin();
|
28 |
|
29 |
if (is_wp_error($this->checkin)) {
|
30 |
+
if ($this->checkin->get_error_message() == 'no_data') {
|
31 |
echo $this->getView('Errors/Error');
|
32 |
return;
|
33 |
+
} elseif ($this->checkin->get_error_message() == 'maintenance') {
|
34 |
echo $this->getView('Errors/Maintenance');
|
35 |
return;
|
36 |
}
|
43 |
}
|
44 |
|
45 |
SQ_Classes_ObjController::getClass('SQ_Classes_DisplayController')->loadMedia('bootstrap-reboot');
|
46 |
+
if (is_rtl()) {
|
47 |
SQ_Classes_ObjController::getClass('SQ_Classes_DisplayController')->loadMedia('popper');
|
48 |
SQ_Classes_ObjController::getClass('SQ_Classes_DisplayController')->loadMedia('bootstrap.rtl');
|
49 |
SQ_Classes_ObjController::getClass('SQ_Classes_DisplayController')->loadMedia('rtl');
|
50 |
+
} else {
|
51 |
SQ_Classes_ObjController::getClass('SQ_Classes_DisplayController')->loadMedia('bootstrap');
|
52 |
}
|
53 |
SQ_Classes_ObjController::getClass('SQ_Classes_DisplayController')->loadMedia('switchery');
|
151 |
}
|
152 |
|
153 |
public function audits() {
|
154 |
+
add_action('sq_form_notices', array($this, 'getNotificationBar'));
|
155 |
|
156 |
SQ_Classes_ObjController::getClass('SQ_Classes_DisplayController')->loadMedia('audits');
|
157 |
SQ_Classes_ObjController::getClass('SQ_Classes_DisplayController')->loadMedia('knob');
|
163 |
* Set the audit pages and populate them
|
164 |
* @return mixed
|
165 |
*/
|
166 |
+
public function setAuditPages() {
|
167 |
$days_back = (int)SQ_Classes_Helpers_Tools::getValue('days_back', 30);
|
168 |
$this->audit = SQ_Classes_RemoteController::getAudit(array('days_back' => $days_back));
|
169 |
|
243 |
$json['stats'] = $this->getView('Audits/AuditStats');
|
244 |
$json['html'] = $this->getView('Audits/AuditPages');
|
245 |
|
246 |
+
//Support for international languages
|
247 |
+
if (function_exists('iconv') && SQ_Classes_Helpers_Tools::getOption('sq_non_utf8_support')) {
|
248 |
+
if (strpos(get_bloginfo("language"), 'en') === false) {
|
249 |
+
$json['html'] = iconv('UTF-8', 'UTF-8//IGNORE', $json['html']);
|
250 |
+
}
|
251 |
}
|
252 |
|
253 |
if (SQ_Classes_Helpers_Tools::isAjax()) {
|
305 |
|
306 |
$post_id = (int)SQ_Classes_Helpers_Tools::getValue('post_id', 0);
|
307 |
|
308 |
+
if ($post_id) {
|
309 |
$args = array();
|
310 |
$args['post_id'] = $post_id;
|
311 |
|
312 |
if ($auditpage = SQ_Classes_RemoteController::updateAudit($args)) {
|
313 |
if (!is_wp_error($auditpage)) {
|
314 |
SQ_Classes_Error::setMessage(esc_html__("Audit page sent for recheck. It may take a while so please be patient.", _SQ_PLUGIN_NAME_) . " <br /> ");
|
315 |
+
} elseif ($auditpage->get_error_message() == 'too_many_attempts') {
|
316 |
SQ_Classes_Error::setError(esc_html__("You've made too many requests, you can request one page audit per hour.", _SQ_PLUGIN_NAME_) . " <br /> ");
|
317 |
+
} else {
|
318 |
SQ_Classes_Error::setError(esc_html__("The page could not be sent for reaudit.", _SQ_PLUGIN_NAME_) . " <br /> ");
|
319 |
}
|
320 |
} else {
|
controllers/CheckSeo.php
CHANGED
@@ -257,15 +257,22 @@ class SQ_Controllers_CheckSeo extends SQ_Classes_FrontController {
|
|
257 |
* @return bool|int
|
258 |
*/
|
259 |
public function getErrorsCount() {
|
|
|
|
|
|
|
260 |
if (!isset($this->report)) {
|
261 |
$this->report = $this->getNotifications();
|
262 |
}
|
263 |
|
264 |
-
if
|
265 |
-
|
|
|
|
|
|
|
|
|
266 |
}
|
267 |
|
268 |
-
return
|
269 |
}
|
270 |
|
271 |
/**
|
@@ -352,8 +359,12 @@ class SQ_Controllers_CheckSeo extends SQ_Classes_FrontController {
|
|
352 |
}
|
353 |
|
354 |
$json['html'] = $this->getView('Goals/Goals');
|
355 |
-
|
356 |
-
|
|
|
|
|
|
|
|
|
357 |
}
|
358 |
|
359 |
if (SQ_Classes_Error::isError()) {
|
257 |
* @return bool|int
|
258 |
*/
|
259 |
public function getErrorsCount() {
|
260 |
+
|
261 |
+
$errors = 0;
|
262 |
+
|
263 |
if (!isset($this->report)) {
|
264 |
$this->report = $this->getNotifications();
|
265 |
}
|
266 |
|
267 |
+
if(!empty($this->report)){
|
268 |
+
foreach ($this->report as $row){
|
269 |
+
if($row['active'] && !$row['positive'] && !$row['completed'] && !$row['done'] ){
|
270 |
+
$errors ++;
|
271 |
+
}
|
272 |
+
}
|
273 |
}
|
274 |
|
275 |
+
return $errors;
|
276 |
}
|
277 |
|
278 |
/**
|
359 |
}
|
360 |
|
361 |
$json['html'] = $this->getView('Goals/Goals');
|
362 |
+
|
363 |
+
//Support for international languages
|
364 |
+
if (function_exists('iconv') && SQ_Classes_Helpers_Tools::getOption('sq_non_utf8_support')) {
|
365 |
+
if (strpos(get_bloginfo("language"), 'en') === false) {
|
366 |
+
$json['html'] = iconv('UTF-8', 'UTF-8//IGNORE', $json['html']);
|
367 |
+
}
|
368 |
}
|
369 |
|
370 |
if (SQ_Classes_Error::isError()) {
|
controllers/FocusPages.php
CHANGED
@@ -291,8 +291,12 @@ class SQ_Controllers_FocusPages extends SQ_Classes_FrontController {
|
|
291 |
$args = array();
|
292 |
$args['post_id'] = $post_id;
|
293 |
if ($json['html'] = SQ_Classes_RemoteController::getInspectURL($args)) {
|
294 |
-
|
295 |
-
|
|
|
|
|
|
|
|
|
296 |
}
|
297 |
}
|
298 |
|
@@ -312,8 +316,11 @@ class SQ_Controllers_FocusPages extends SQ_Classes_FrontController {
|
|
312 |
|
313 |
$json['html'] = $this->getView('FocusPages/FocusPages');
|
314 |
|
315 |
-
|
316 |
-
|
|
|
|
|
|
|
317 |
}
|
318 |
|
319 |
if (SQ_Classes_Error::isError()) {
|
291 |
$args = array();
|
292 |
$args['post_id'] = $post_id;
|
293 |
if ($json['html'] = SQ_Classes_RemoteController::getInspectURL($args)) {
|
294 |
+
|
295 |
+
//Support for international languages
|
296 |
+
if (function_exists('iconv') && SQ_Classes_Helpers_Tools::getOption('sq_non_utf8_support')) {
|
297 |
+
if (strpos(get_bloginfo("language"), 'en') === false) {
|
298 |
+
$json['html'] = iconv('UTF-8', 'UTF-8//IGNORE', $json['html']);
|
299 |
+
}
|
300 |
}
|
301 |
}
|
302 |
|
316 |
|
317 |
$json['html'] = $this->getView('FocusPages/FocusPages');
|
318 |
|
319 |
+
//Support for international languages
|
320 |
+
if (function_exists('iconv') && SQ_Classes_Helpers_Tools::getOption('sq_non_utf8_support')) {
|
321 |
+
if (strpos(get_bloginfo("language"), 'en') === false) {
|
322 |
+
$json['html'] = iconv('UTF-8', 'UTF-8//IGNORE', $json['html']);
|
323 |
+
}
|
324 |
}
|
325 |
|
326 |
if (SQ_Classes_Error::isError()) {
|
controllers/Onboarding.php
CHANGED
@@ -79,7 +79,6 @@ class SQ_Controllers_Onboarding extends SQ_Classes_FrontController {
|
|
79 |
SQ_Classes_Helpers_Tools::saveOptions('sq_attachment_redirect', 0);
|
80 |
}else{
|
81 |
SQ_Classes_Helpers_Tools::saveOptions('sq_attachment_redirect', 1);
|
82 |
-
SQ_Classes_Helpers_Tools::saveOptions('sq_auto_links', 1);
|
83 |
}
|
84 |
SQ_Classes_Helpers_Tools::saveOptions('sq_jsonld_type', ($sq_onboarding_data['website_type'] == 'personal' ? 'Person' : 'Organization'));
|
85 |
}
|
79 |
SQ_Classes_Helpers_Tools::saveOptions('sq_attachment_redirect', 0);
|
80 |
}else{
|
81 |
SQ_Classes_Helpers_Tools::saveOptions('sq_attachment_redirect', 1);
|
|
|
82 |
}
|
83 |
SQ_Classes_Helpers_Tools::saveOptions('sq_jsonld_type', ($sq_onboarding_data['website_type'] == 'personal' ? 'Person' : 'Organization'));
|
84 |
}
|
controllers/Overview.php
CHANGED
@@ -39,7 +39,6 @@ class SQ_Controllers_Overview extends SQ_Classes_FrontController {
|
|
39 |
add_action('sq_form_notices', array($this, 'getNotificationBar'));
|
40 |
add_action('sq_form_notices', array($this, 'getNotificationCompatibility'));
|
41 |
|
42 |
-
//@ob_flush();
|
43 |
parent::init();
|
44 |
|
45 |
}
|
39 |
add_action('sq_form_notices', array($this, 'getNotificationBar'));
|
40 |
add_action('sq_form_notices', array($this, 'getNotificationCompatibility'));
|
41 |
|
|
|
42 |
parent::init();
|
43 |
|
44 |
}
|
controllers/Patterns.php
CHANGED
@@ -67,10 +67,6 @@ class SQ_Controllers_Patterns extends SQ_Classes_FrontController {
|
|
67 |
if (!empty($values)) {
|
68 |
foreach ($values as $name => $value) {
|
69 |
if ($name <> '' && !is_array($value) && $value <> '') {
|
70 |
-
// if (strpos($value, '#') !== false) { //in case there are still patterns from AIOS
|
71 |
-
// $value = preg_replace('/#([a-z_]+)/s', '{{$1}}', $value);
|
72 |
-
// $object->$name = preg_replace('/#([a-z_]+)/s', '{{$1}}', $object->$name);
|
73 |
-
// }
|
74 |
|
75 |
if (strpos($value, '%%') !== false) { //in case there are still patterns from Yoast
|
76 |
$value = preg_replace('/%%([^\%]+)%%/s', '{{$1}}', $value);
|
67 |
if (!empty($values)) {
|
68 |
foreach ($values as $name => $value) {
|
69 |
if ($name <> '' && !is_array($value) && $value <> '') {
|
|
|
|
|
|
|
|
|
70 |
|
71 |
if (strpos($value, '%%') !== false) { //in case there are still patterns from Yoast
|
72 |
$value = preg_replace('/%%([^\%]+)%%/s', '{{$1}}', $value);
|
controllers/Post.php
CHANGED
@@ -269,14 +269,6 @@ class SQ_Controllers_Post extends SQ_Classes_FrontController {
|
|
269 |
get_post_status($post->ID) <> 'inherit'
|
270 |
) {
|
271 |
|
272 |
-
//Exclude types for SLA
|
273 |
-
if (isset($post->post_type) && $post->post_type <> '') {
|
274 |
-
$excludes = SQ_Classes_Helpers_Tools::getOption('sq_sla_exclude_post_types');
|
275 |
-
if (in_array($post->post_type, $excludes)) {
|
276 |
-
return;
|
277 |
-
}
|
278 |
-
}
|
279 |
-
|
280 |
//Update the SEO Keywords from Live Assistant and Permalink
|
281 |
add_filter('sq_seo_before_save', array($this, 'addSeoKeywords'), 11, 1);
|
282 |
//Update the redirect to old slugs
|
@@ -285,6 +277,14 @@ class SQ_Controllers_Post extends SQ_Classes_FrontController {
|
|
285 |
//Save the SEO
|
286 |
SQ_Classes_ObjController::getClass('SQ_Models_Snippet')->saveSEO($post->ID);
|
287 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
288 |
//Send the optimization when attachment page
|
289 |
$this->sendSeo($post);
|
290 |
}
|
269 |
get_post_status($post->ID) <> 'inherit'
|
270 |
) {
|
271 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
272 |
//Update the SEO Keywords from Live Assistant and Permalink
|
273 |
add_filter('sq_seo_before_save', array($this, 'addSeoKeywords'), 11, 1);
|
274 |
//Update the redirect to old slugs
|
277 |
//Save the SEO
|
278 |
SQ_Classes_ObjController::getClass('SQ_Models_Snippet')->saveSEO($post->ID);
|
279 |
|
280 |
+
//Exclude types for SLA
|
281 |
+
if (isset($post->post_type) && $post->post_type <> '') {
|
282 |
+
$excludes = SQ_Classes_Helpers_Tools::getOption('sq_sla_exclude_post_types');
|
283 |
+
if (in_array($post->post_type, $excludes)) {
|
284 |
+
return;
|
285 |
+
}
|
286 |
+
}
|
287 |
+
|
288 |
//Send the optimization when attachment page
|
289 |
$this->sendSeo($post);
|
290 |
}
|
controllers/Snippet.php
CHANGED
@@ -17,7 +17,7 @@ class SQ_Controllers_Snippet extends SQ_Classes_FrontController {
|
|
17 |
$taxonomies = get_taxonomies(array('public' => true));
|
18 |
if (!empty($taxonomies)) {
|
19 |
foreach ($taxonomies as $taxonomy) {
|
20 |
-
if(is_string($taxonomy) && $taxonomy <> '') {
|
21 |
add_filter($taxonomy . '_edit_form', array($this, 'hookTermsPage'), 10);
|
22 |
}
|
23 |
}
|
@@ -216,8 +216,11 @@ class SQ_Controllers_Snippet extends SQ_Classes_FrontController {
|
|
216 |
if ($this->post = $this->model->getCurrentSnippet($post_id, $term_id, $taxonomy, $post_type)) {
|
217 |
$json['html'] = $this->getView('Blocks/Snippet');
|
218 |
|
219 |
-
|
220 |
-
|
|
|
|
|
|
|
221 |
}
|
222 |
|
223 |
if (SQ_Classes_Error::isError()) {
|
17 |
$taxonomies = get_taxonomies(array('public' => true));
|
18 |
if (!empty($taxonomies)) {
|
19 |
foreach ($taxonomies as $taxonomy) {
|
20 |
+
if (is_string($taxonomy) && $taxonomy <> '') {
|
21 |
add_filter($taxonomy . '_edit_form', array($this, 'hookTermsPage'), 10);
|
22 |
}
|
23 |
}
|
216 |
if ($this->post = $this->model->getCurrentSnippet($post_id, $term_id, $taxonomy, $post_type)) {
|
217 |
$json['html'] = $this->getView('Blocks/Snippet');
|
218 |
|
219 |
+
//Support for international languages
|
220 |
+
if (function_exists('iconv') && SQ_Classes_Helpers_Tools::getOption('sq_non_utf8_support')) {
|
221 |
+
if (strpos(get_bloginfo("language"), 'en') === false) {
|
222 |
+
$json['html'] = iconv('UTF-8', 'UTF-8//IGNORE', $json['html']);
|
223 |
+
}
|
224 |
}
|
225 |
|
226 |
if (SQ_Classes_Error::isError()) {
|
models/Compatibility.php
CHANGED
@@ -50,7 +50,10 @@ class SQ_Models_Compatibility {
|
|
50 |
add_action('template_redirect', array(SQ_Classes_ObjController::getClass('SQ_Models_Frontend'), 'setPost'), 10);
|
51 |
}
|
52 |
|
53 |
-
|
|
|
|
|
|
|
54 |
}
|
55 |
|
56 |
/**
|
@@ -61,6 +64,7 @@ class SQ_Models_Compatibility {
|
|
61 |
public function isBuilderEditor() {
|
62 |
|
63 |
if (function_exists('is_user_logged_in') && is_user_logged_in()) {
|
|
|
64 |
if (SQ_Classes_Helpers_Tools::isPluginInstalled('oxygen/functions.php')) {
|
65 |
if (SQ_Classes_Helpers_Tools::getValue('ct_builder', false) || SQ_Classes_Helpers_Tools::getValue('ct_template', false)) {
|
66 |
return true;
|
@@ -71,6 +75,22 @@ class SQ_Models_Compatibility {
|
|
71 |
return true;
|
72 |
}
|
73 |
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
74 |
}
|
75 |
|
76 |
return false;
|
50 |
add_action('template_redirect', array(SQ_Classes_ObjController::getClass('SQ_Models_Frontend'), 'setPost'), 10);
|
51 |
}
|
52 |
|
53 |
+
//Compatibility with Weglot Plugin
|
54 |
+
if (SQ_Classes_Helpers_Tools::isPluginInstalled('weglot/weglot.php')) {
|
55 |
+
add_filter('sq_lateloading', '__return_true');
|
56 |
+
}
|
57 |
}
|
58 |
|
59 |
/**
|
64 |
public function isBuilderEditor() {
|
65 |
|
66 |
if (function_exists('is_user_logged_in') && is_user_logged_in()) {
|
67 |
+
|
68 |
if (SQ_Classes_Helpers_Tools::isPluginInstalled('oxygen/functions.php')) {
|
69 |
if (SQ_Classes_Helpers_Tools::getValue('ct_builder', false) || SQ_Classes_Helpers_Tools::getValue('ct_template', false)) {
|
70 |
return true;
|
75 |
return true;
|
76 |
}
|
77 |
}
|
78 |
+
|
79 |
+
$builder_paramas = array(
|
80 |
+
'vcv-action',
|
81 |
+
'et_fb',
|
82 |
+
'ct_builder',
|
83 |
+
'ct_template',
|
84 |
+
'tve',
|
85 |
+
'uxb_iframe',
|
86 |
+
);
|
87 |
+
|
88 |
+
foreach ($builder_paramas as $param) {
|
89 |
+
if (SQ_Classes_Helpers_Tools::getValue($param, false)) {
|
90 |
+
return true;
|
91 |
+
}
|
92 |
+
}
|
93 |
+
|
94 |
}
|
95 |
|
96 |
return false;
|
models/Frontend.php
CHANGED
@@ -348,10 +348,20 @@ class SQ_Models_Frontend {
|
|
348 |
|
349 |
if (get_option('page_for_posts') > 0) {
|
350 |
$posts_url = get_permalink(get_option('page_for_posts'));
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
351 |
if (rtrim($posts_url, '/') == rtrim($current_url, '/')) {
|
352 |
$current_post = get_post(get_option('page_for_posts'));
|
353 |
}
|
|
|
354 |
} elseif (get_option('page_on_front') > 0) {
|
|
|
355 |
$posts_url = get_permalink(get_option('page_on_front'));
|
356 |
if (rtrim($posts_url, '/') == rtrim($current_url, '/')) {
|
357 |
$current_post = get_post(get_option('page_on_front'));
|
@@ -370,6 +380,7 @@ class SQ_Models_Frontend {
|
|
370 |
public function getPostDetails($post) {
|
371 |
|
372 |
if ($post instanceof WP_Post) {
|
|
|
373 |
/** @var SQ_Models_Domain_Post $post */
|
374 |
$post = SQ_Classes_ObjController::getDomain('SQ_Models_Domain_Post', $post);
|
375 |
|
348 |
|
349 |
if (get_option('page_for_posts') > 0) {
|
350 |
$posts_url = get_permalink(get_option('page_for_posts'));
|
351 |
+
|
352 |
+
if (is_paged() && $posts_url <> '') {
|
353 |
+
$page = (int)get_query_var('paged');
|
354 |
+
if ($page && $page > 1) {
|
355 |
+
$posts_url = trailingslashit($posts_url) . "page/" . "$page/";
|
356 |
+
}
|
357 |
+
}
|
358 |
+
|
359 |
if (rtrim($posts_url, '/') == rtrim($current_url, '/')) {
|
360 |
$current_post = get_post(get_option('page_for_posts'));
|
361 |
}
|
362 |
+
|
363 |
} elseif (get_option('page_on_front') > 0) {
|
364 |
+
|
365 |
$posts_url = get_permalink(get_option('page_on_front'));
|
366 |
if (rtrim($posts_url, '/') == rtrim($current_url, '/')) {
|
367 |
$current_post = get_post(get_option('page_on_front'));
|
380 |
public function getPostDetails($post) {
|
381 |
|
382 |
if ($post instanceof WP_Post) {
|
383 |
+
|
384 |
/** @var SQ_Models_Domain_Post $post */
|
385 |
$post = SQ_Classes_ObjController::getDomain('SQ_Models_Domain_Post', $post);
|
386 |
|
models/ImportExport.php
CHANGED
@@ -606,9 +606,14 @@ class SQ_Models_ImportExport {
|
|
606 |
if (function_exists('mb_detect_encoding') && function_exists('iconv')) {
|
607 |
if ($encoding = mb_detect_encoding($value)) {
|
608 |
if ($encoding <> 'UTF-8') {
|
609 |
-
|
610 |
-
|
|
|
|
|
|
|
|
|
611 |
}
|
|
|
612 |
if (strpos($value, '%%') !== false) {
|
613 |
$value = preg_replace('/%%([^\%]+)%%/', '{{$1}}', $value);
|
614 |
}
|
@@ -659,9 +664,14 @@ class SQ_Models_ImportExport {
|
|
659 |
if (function_exists('mb_detect_encoding') && function_exists('iconv')) {
|
660 |
if ($encoding = mb_detect_encoding($value)) {
|
661 |
if ($encoding <> 'UTF-8') {
|
662 |
-
|
663 |
-
|
|
|
|
|
|
|
|
|
664 |
}
|
|
|
665 |
if (strpos($value, '%%') !== false) {
|
666 |
$value = preg_replace('/%%([^\%]+)%%/', '{{$1}}', $value);
|
667 |
}
|
606 |
if (function_exists('mb_detect_encoding') && function_exists('iconv')) {
|
607 |
if ($encoding = mb_detect_encoding($value)) {
|
608 |
if ($encoding <> 'UTF-8') {
|
609 |
+
|
610 |
+
//support for international languages
|
611 |
+
if (function_exists('iconv') && SQ_Classes_Helpers_Tools::getOption('sq_non_utf8_support')) {
|
612 |
+
if (strpos(get_bloginfo("language"), 'en') === false) {
|
613 |
+
$value = iconv($encoding, 'UTF-8', $value);
|
614 |
+
}
|
615 |
}
|
616 |
+
|
617 |
if (strpos($value, '%%') !== false) {
|
618 |
$value = preg_replace('/%%([^\%]+)%%/', '{{$1}}', $value);
|
619 |
}
|
664 |
if (function_exists('mb_detect_encoding') && function_exists('iconv')) {
|
665 |
if ($encoding = mb_detect_encoding($value)) {
|
666 |
if ($encoding <> 'UTF-8') {
|
667 |
+
|
668 |
+
//support for international languages
|
669 |
+
if (function_exists('iconv') && SQ_Classes_Helpers_Tools::getOption('sq_non_utf8_support')) {
|
670 |
+
if (strpos(get_bloginfo("language"), 'en') === false) {
|
671 |
+
$value = iconv($encoding, 'UTF-8', $value);
|
672 |
+
}
|
673 |
}
|
674 |
+
|
675 |
if (strpos($value, '%%') !== false) {
|
676 |
$value = preg_replace('/%%([^\%]+)%%/', '{{$1}}', $value);
|
677 |
}
|
models/abstract/Seo.php
CHANGED
@@ -196,7 +196,7 @@ abstract class SQ_Models_Abstract_Seo {
|
|
196 |
if ($_sq_video = get_post_meta($this->_post->ID, '_sq_video', true)) {
|
197 |
|
198 |
//get the image from the youtube video
|
199 |
-
preg_match('/(?:http(?:s)?:\/\/)?(?:www\.)?(?:youtu\.be\/|youtube\.com\/(?:watch\?v=))([^&\"\'
|
200 |
if (isset($match[1]) && $match[1] <> '') {
|
201 |
$thumbnail = 'https://img.youtube.com/vi/' . $match[1] . '/hqdefault.jpg';
|
202 |
}
|
@@ -214,7 +214,7 @@ abstract class SQ_Models_Abstract_Seo {
|
|
214 |
|
215 |
if (isset($this->_post->post_content)) {
|
216 |
|
217 |
-
preg_match('/(?:http(?:s)?:\/\/)?(?:www\.)?(?:youtu\.be\/|youtube\.com\/(?:embed)\/)([^\?&\"\'
|
218 |
|
219 |
if (isset($match[0])) {
|
220 |
if (strpos($match[0], '//') !== false && strpos($match[0], 'http') === false) {
|
@@ -229,7 +229,7 @@ abstract class SQ_Models_Abstract_Seo {
|
|
229 |
//return first video found
|
230 |
if (!$all && !empty($videos)) return $videos;
|
231 |
|
232 |
-
preg_match_all('/(?:http(?:s)?:\/\/)?(?:www\.)?(?:youtu\.be\/|youtube\.com\/(?:watch\?v=))([^&\"\'
|
233 |
|
234 |
if(!empty($matches)){
|
235 |
foreach ($matches as $match){
|
@@ -255,7 +255,7 @@ abstract class SQ_Models_Abstract_Seo {
|
|
255 |
//return first video found
|
256 |
if (!$all && !empty($videos)) return $videos;
|
257 |
|
258 |
-
preg_match('/(?:http(?:s)?:\/\/)?(?:fwd4\.wistia\.com\/(?:medias)\/)([^\?&\"\'
|
259 |
|
260 |
if (isset($match[0])) {
|
261 |
$videos[] = array(
|
@@ -267,7 +267,7 @@ abstract class SQ_Models_Abstract_Seo {
|
|
267 |
//return first video found
|
268 |
if (!$all && !empty($videos)) return $videos;
|
269 |
|
270 |
-
preg_match('/class=["|\']([^"\']*wistia_async_([^\?&\"\'
|
271 |
|
272 |
if (isset($match[0])) {
|
273 |
$videos[] = array(
|
196 |
if ($_sq_video = get_post_meta($this->_post->ID, '_sq_video', true)) {
|
197 |
|
198 |
//get the image from the youtube video
|
199 |
+
preg_match('/(?:http(?:s)?:\/\/)?(?:www\.)?(?:youtu\.be\/|youtube\.com\/(?:watch\?v=))([^&\"\'<>\s]+)/si', $_sq_video, $match);
|
200 |
if (isset($match[1]) && $match[1] <> '') {
|
201 |
$thumbnail = 'https://img.youtube.com/vi/' . $match[1] . '/hqdefault.jpg';
|
202 |
}
|
214 |
|
215 |
if (isset($this->_post->post_content)) {
|
216 |
|
217 |
+
preg_match('/(?:http(?:s)?:\/\/)?(?:www\.)?(?:youtu\.be\/|youtube\.com\/(?:embed)\/)([^\?&\"\'<>\s]+)/si', $this->_post->post_content, $match);
|
218 |
|
219 |
if (isset($match[0])) {
|
220 |
if (strpos($match[0], '//') !== false && strpos($match[0], 'http') === false) {
|
229 |
//return first video found
|
230 |
if (!$all && !empty($videos)) return $videos;
|
231 |
|
232 |
+
preg_match_all('/(?:http(?:s)?:\/\/)?(?:www\.)?(?:youtu\.be\/|youtube\.com\/(?:watch\?v=))([^&\"\'\<>\s]+)/si', $this->_post->post_content, $matches, PREG_SET_ORDER );
|
233 |
|
234 |
if(!empty($matches)){
|
235 |
foreach ($matches as $match){
|
255 |
//return first video found
|
256 |
if (!$all && !empty($videos)) return $videos;
|
257 |
|
258 |
+
preg_match('/(?:http(?:s)?:\/\/)?(?:fwd4\.wistia\.com\/(?:medias)\/)([^\?&\"\'<>\s]+)/si', $this->_post->post_content, $match);
|
259 |
|
260 |
if (isset($match[0])) {
|
261 |
$videos[] = array(
|
267 |
//return first video found
|
268 |
if (!$all && !empty($videos)) return $videos;
|
269 |
|
270 |
+
preg_match('/class=["|\']([^"\']*wistia_async_([^\?&\"\'<>\s]+)[^"\']*["|\'])/si', $this->_post->post_content, $match);
|
271 |
|
272 |
if (isset($match[0])) {
|
273 |
$videos[] = array(
|
models/domain/Post.php
CHANGED
@@ -79,6 +79,11 @@ class SQ_Models_Domain_Post extends SQ_Models_Abstract_Domain {
|
|
79 |
if (isset($patterns[$this->_post_type][$key])) {
|
80 |
$this->_sq->$key = $patterns[$this->_post_type][$key];
|
81 |
}
|
|
|
|
|
|
|
|
|
|
|
82 |
} else {
|
83 |
//get the default automation
|
84 |
if (isset($patterns['custom'][$key])) {
|
79 |
if (isset($patterns[$this->_post_type][$key])) {
|
80 |
$this->_sq->$key = $patterns[$this->_post_type][$key];
|
81 |
}
|
82 |
+
} elseif (strpos($this->_post_type, 'archive-') !== false) {
|
83 |
+
//get the archive automation for custom archive types
|
84 |
+
if (isset($patterns['archive'][$key])) {
|
85 |
+
$this->_sq->$key = $patterns['archive'][$key];
|
86 |
+
}
|
87 |
} else {
|
88 |
//get the default automation
|
89 |
if (isset($patterns['custom'][$key])) {
|
models/services/JsonLD.php
CHANGED
@@ -306,7 +306,6 @@ class SQ_Models_Services_JsonLD extends SQ_Models_Abstract_Seo {
|
|
306 |
// Generate structured data for Woocommerce 3+.
|
307 |
if ($this->_post->post_type == 'product' || in_array('product', $this->_post->sq->jsonld_types)) {
|
308 |
$this->_markups[] = $this->getWoocommerceProductMarkup();
|
309 |
-
|
310 |
}
|
311 |
}
|
312 |
}
|
@@ -1192,8 +1191,8 @@ class SQ_Models_Services_JsonLD extends SQ_Models_Abstract_Seo {
|
|
1192 |
//By default, set the price available for 1 year
|
1193 |
$price_valid_until = date('Y-m-d', strtotime('+12 Month'));
|
1194 |
if (method_exists($product, 'get_date_on_sale_to') && method_exists($product, 'get_date_on_sale_from')) {
|
1195 |
-
if (method_exists($product->get_date_on_sale_from(), 'getTimestamp')) {
|
1196 |
-
if (date('Y-m-d', $product->get_date_on_sale_from()->getTimestamp()) <= gmdate('Y-m-d')) {
|
1197 |
if (method_exists($product->get_date_on_sale_to(), 'getTimestamp')) {
|
1198 |
//Set the price available until the offer ends
|
1199 |
$price_valid_until = date('Y-m-d', $product->get_date_on_sale_to()->getTimestamp());
|
@@ -1224,12 +1223,14 @@ class SQ_Models_Services_JsonLD extends SQ_Models_Abstract_Seo {
|
|
1224 |
if ($product->is_type('variable') && method_exists($product, 'get_variation_prices')) {
|
1225 |
$prices = $product->get_variation_prices();
|
1226 |
|
1227 |
-
$
|
1228 |
-
'
|
1229 |
-
|
1230 |
-
|
1231 |
-
|
1232 |
-
|
|
|
|
|
1233 |
}
|
1234 |
|
1235 |
$markup['sku'] = (method_exists($product, 'get_sku')) ? ($product->get_sku() <> '' ? $product->get_sku() : '') : '';
|
@@ -1323,7 +1324,7 @@ class SQ_Models_Services_JsonLD extends SQ_Models_Abstract_Seo {
|
|
1323 |
'name' => '',
|
1324 |
),
|
1325 |
'reviewBody' => '',
|
1326 |
-
'datePublished' => (method_exists($product, 'get_date_created') && method_exists($product->get_date_created(), 'getTimestamp')) ? date('Y-m-d', $product->get_date_created()->getTimestamp()) : '',
|
1327 |
);
|
1328 |
}
|
1329 |
}
|
306 |
// Generate structured data for Woocommerce 3+.
|
307 |
if ($this->_post->post_type == 'product' || in_array('product', $this->_post->sq->jsonld_types)) {
|
308 |
$this->_markups[] = $this->getWoocommerceProductMarkup();
|
|
|
309 |
}
|
310 |
}
|
311 |
}
|
1191 |
//By default, set the price available for 1 year
|
1192 |
$price_valid_until = date('Y-m-d', strtotime('+12 Month'));
|
1193 |
if (method_exists($product, 'get_date_on_sale_to') && method_exists($product, 'get_date_on_sale_from')) {
|
1194 |
+
if ($product->get_date_on_sale_from() && method_exists($product->get_date_on_sale_from(), 'getTimestamp')) {
|
1195 |
+
if ($product->get_date_on_sale_from() && date('Y-m-d', $product->get_date_on_sale_from()->getTimestamp()) <= gmdate('Y-m-d')) {
|
1196 |
if (method_exists($product->get_date_on_sale_to(), 'getTimestamp')) {
|
1197 |
//Set the price available until the offer ends
|
1198 |
$price_valid_until = date('Y-m-d', $product->get_date_on_sale_to()->getTimestamp());
|
1223 |
if ($product->is_type('variable') && method_exists($product, 'get_variation_prices')) {
|
1224 |
$prices = $product->get_variation_prices();
|
1225 |
|
1226 |
+
if (isset($prices['price'])) {
|
1227 |
+
$markup_offer['priceSpecification'] = array(
|
1228 |
+
'price' => wc_format_decimal($product->get_price(), wc_get_price_decimals()),
|
1229 |
+
'minPrice' => wc_format_decimal(current($prices['price']), wc_get_price_decimals()),
|
1230 |
+
'maxPrice' => wc_format_decimal(end($prices['price']), wc_get_price_decimals()),
|
1231 |
+
'priceCurrency' => $currency,
|
1232 |
+
);
|
1233 |
+
}
|
1234 |
}
|
1235 |
|
1236 |
$markup['sku'] = (method_exists($product, 'get_sku')) ? ($product->get_sku() <> '' ? $product->get_sku() : '') : '';
|
1324 |
'name' => '',
|
1325 |
),
|
1326 |
'reviewBody' => '',
|
1327 |
+
'datePublished' => (method_exists($product, 'get_date_created') && $product->get_date_created() && method_exists($product->get_date_created(), 'getTimestamp')) ? date('Y-m-d', $product->get_date_created()->getTimestamp()) : '',
|
1328 |
);
|
1329 |
}
|
1330 |
}
|
readme.txt
CHANGED
@@ -400,6 +400,15 @@ Type a keyword to the right of the screen and start using Squirrly Seo. Enjoy!
|
|
400 |
9. Squirrly SEO - Progress & Achievements
|
401 |
|
402 |
== Changelog ==
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
403 |
= 11.1.02- 04/30/2021 =
|
404 |
Update - Add the option to import the SEO Snippets from SEO Press (Patterns, SEO METAs, Open Graph, Twitter Card, 301 Redirects, Noindex)
|
405 |
Update - Add the option to import the Settings from SEO Press (Social Media, JSON-LD, Webmasters)
|
400 |
9. Squirrly SEO - Progress & Achievements
|
401 |
|
402 |
== Changelog ==
|
403 |
+
= 11.1.03- 05/06/2021 =
|
404 |
+
Update - Do not track the traffic for Squirrly crawlers
|
405 |
+
Update - Add in Dev Kit the options to hide the Research, All Snippets, Live Assistant menu items
|
406 |
+
Update - Integrate Focus Pages with the SEO Links domain exception in the Outbound nofollow links report
|
407 |
+
Update - Compatibility between Live Assistant & Thrive Architect
|
408 |
+
Fix - Add a patch for the Oxygen builder to not show 500 error when editing the templates
|
409 |
+
Fix - Web Dev Kit to work with the Wp Mutisite for the custom plugin name
|
410 |
+
Fix - Fixed JSON-LD compatibility with the lastest version of WooCommerce
|
411 |
+
|
412 |
= 11.1.02- 04/30/2021 =
|
413 |
Update - Add the option to import the SEO Snippets from SEO Press (Patterns, SEO METAs, Open Graph, Twitter Card, 301 Redirects, Noindex)
|
414 |
Update - Add the option to import the Settings from SEO Press (Social Media, JSON-LD, Webmasters)
|
squirrly.php
CHANGED
@@ -8,7 +8,7 @@
|
|
8 |
* Description: A.I.-based Private SEO Consultant. In a Plugin. Powered by Machine Learning and Cloud Services. Over 300 functionalities for SEO available when you need them.
|
9 |
* Author: Squirrly SEO
|
10 |
* Author URI: https://plugin.squirrly.co
|
11 |
-
* Version: 11.1.
|
12 |
* License: GPLv2 or later
|
13 |
* License URI: http://www.gnu.org/licenses/old-licenses/gpl-2.0.html
|
14 |
* Text Domain: squirrly-seo
|
@@ -17,7 +17,7 @@
|
|
17 |
|
18 |
if (!defined('SQ_VERSION')) {
|
19 |
/* SET THE CURRENT VERSION ABOVE AND BELOW */
|
20 |
-
define('SQ_VERSION', '11.1.
|
21 |
//The last stable version
|
22 |
define('SQ_STABLE_VERSION', '11.1.00');
|
23 |
// Call config files
|
8 |
* Description: A.I.-based Private SEO Consultant. In a Plugin. Powered by Machine Learning and Cloud Services. Over 300 functionalities for SEO available when you need them.
|
9 |
* Author: Squirrly SEO
|
10 |
* Author URI: https://plugin.squirrly.co
|
11 |
+
* Version: 11.1.03
|
12 |
* License: GPLv2 or later
|
13 |
* License URI: http://www.gnu.org/licenses/old-licenses/gpl-2.0.html
|
14 |
* Text Domain: squirrly-seo
|
17 |
|
18 |
if (!defined('SQ_VERSION')) {
|
19 |
/* SET THE CURRENT VERSION ABOVE AND BELOW */
|
20 |
+
define('SQ_VERSION', '11.1.03');
|
21 |
//The last stable version
|
22 |
define('SQ_STABLE_VERSION', '11.1.00');
|
23 |
// Call config files
|
view/Audits/Audits.php
CHANGED
@@ -58,8 +58,12 @@
|
|
58 |
<div class="sq_auditpages_content">
|
59 |
<?php
|
60 |
$content = $view->getView('Audits/AuditPages');
|
61 |
-
|
62 |
-
|
|
|
|
|
|
|
|
|
63 |
}
|
64 |
echo (string)$content;
|
65 |
?>
|
58 |
<div class="sq_auditpages_content">
|
59 |
<?php
|
60 |
$content = $view->getView('Audits/AuditPages');
|
61 |
+
|
62 |
+
//support for international languages
|
63 |
+
if (function_exists('iconv') && SQ_Classes_Helpers_Tools::getOption('sq_non_utf8_support')) {
|
64 |
+
if (strpos(get_bloginfo("language"), 'en') === false) {
|
65 |
+
$content = iconv('UTF-8', 'UTF-8//IGNORE', $content);
|
66 |
+
}
|
67 |
}
|
68 |
echo (string)$content;
|
69 |
?>
|
view/Blocks/Snippet.php
CHANGED
@@ -356,7 +356,11 @@ if (SQ_Classes_Helpers_Tools::getOption('sq_use')) {
|
|
356 |
<?php echo esc_html__("OG", _SQ_PLUGIN_NAME_) ?>:
|
357 |
<?php echo (string)$view->post->sq->og_type ?> |
|
358 |
<?php echo esc_html__("JSON-LD", _SQ_PLUGIN_NAME_) ?>:
|
359 |
-
<?php
|
|
|
|
|
|
|
|
|
360 |
</div>
|
361 |
</div>
|
362 |
</div>
|
356 |
<?php echo esc_html__("OG", _SQ_PLUGIN_NAME_) ?>:
|
357 |
<?php echo (string)$view->post->sq->og_type ?> |
|
358 |
<?php echo esc_html__("JSON-LD", _SQ_PLUGIN_NAME_) ?>:
|
359 |
+
<?php
|
360 |
+
if(isset($view->post->sq->jsonld_types) && !empty($view->post->sq->jsonld_types)) {
|
361 |
+
echo (string)join(',', $view->post->sq->jsonld_types);
|
362 |
+
}
|
363 |
+
?>
|
364 |
</div>
|
365 |
</div>
|
366 |
</div>
|
view/FocusPages/Pagelist.php
CHANGED
@@ -52,9 +52,14 @@
|
|
52 |
<div class="sq_focuspages_content" style="min-height: 150px">
|
53 |
<?php
|
54 |
$content = $view->getView('FocusPages/FocusPages');
|
55 |
-
|
56 |
-
|
|
|
|
|
|
|
|
|
57 |
}
|
|
|
58 |
echo (string)$content;
|
59 |
?>
|
60 |
</div>
|
52 |
<div class="sq_focuspages_content" style="min-height: 150px">
|
53 |
<?php
|
54 |
$content = $view->getView('FocusPages/FocusPages');
|
55 |
+
|
56 |
+
//support for international languages
|
57 |
+
if (function_exists('iconv') && SQ_Classes_Helpers_Tools::getOption('sq_non_utf8_support')) {
|
58 |
+
if (strpos(get_bloginfo("language"), 'en') === false) {
|
59 |
+
$content = iconv('UTF-8', 'UTF-8//IGNORE', $content);
|
60 |
+
}
|
61 |
}
|
62 |
+
|
63 |
echo (string)$content;
|
64 |
?>
|
65 |
</div>
|
view/Goals/CheckSeo.php
CHANGED
@@ -104,9 +104,14 @@ $category_name = apply_filters('sq_page', SQ_Classes_Helpers_Tools::getValue('pa
|
|
104 |
<?php
|
105 |
$view->report = $view->getNotifications();
|
106 |
$content = $view->getView('Goals/Goals');
|
107 |
-
|
108 |
-
|
|
|
|
|
|
|
|
|
109 |
}
|
|
|
110 |
echo (string)$content;
|
111 |
?>
|
112 |
</div>
|
104 |
<?php
|
105 |
$view->report = $view->getNotifications();
|
106 |
$content = $view->getView('Goals/Goals');
|
107 |
+
|
108 |
+
//support for international languages
|
109 |
+
if (function_exists('iconv') && SQ_Classes_Helpers_Tools::getOption('sq_non_utf8_support')) {
|
110 |
+
if (strpos(get_bloginfo("language"), 'en') === false) {
|
111 |
+
$content = iconv('UTF-8', 'UTF-8//IGNORE', $content);
|
112 |
+
}
|
113 |
}
|
114 |
+
|
115 |
echo (string)$content;
|
116 |
?>
|
117 |
</div>
|
view/SeoSettings/Advanced.php
CHANGED
@@ -78,6 +78,21 @@
|
|
78 |
</div>
|
79 |
</div>
|
80 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
81 |
<div class="sq_separator my-3"></div>
|
82 |
|
83 |
<div class="col-12 row mb-1 ml-1">
|
78 |
</div>
|
79 |
</div>
|
80 |
|
81 |
+
<?php if (strpos(get_bloginfo("language"), 'en') === false) { ?>
|
82 |
+
<div class="col-12 row mb-1 ml-1">
|
83 |
+
<div class="checker col-12 row my-2 py-1">
|
84 |
+
<div class="col-12 p-0 sq-switch sq-switch-sm">
|
85 |
+
<input type="hidden" name="sq_non_utf8_support" value="0"/>
|
86 |
+
<input type="checkbox" id="sq_non_utf8_support" name="sq_non_utf8_support" class="sq-switch" <?php echo(SQ_Classes_Helpers_Tools::getOption('sq_non_utf8_support') ? 'checked="checked"' : '') ?> value="1"/>
|
87 |
+
<label for="sq_non_utf8_support" class="ml-2"><?php echo esc_html__("Multilingual Support", _SQ_PLUGIN_NAME_); ?>
|
88 |
+
<a href="https://howto.squirrly.co/kb/advanced-seo-settings/#late_loading_buffer" target="_blank"><i class="fa fa-question-circle m-0 px-2" style="display: inline;"></i></a>
|
89 |
+
</label>
|
90 |
+
<div class="offset-1 small text-black-50"><?php echo esc_html__("Convert the other encodings to UTF8 and avoid ajax errors.", _SQ_PLUGIN_NAME_); ?></div>
|
91 |
+
</div>
|
92 |
+
</div>
|
93 |
+
</div>
|
94 |
+
<?php } ?>
|
95 |
+
|
96 |
<div class="sq_separator my-3"></div>
|
97 |
|
98 |
<div class="col-12 row mb-1 ml-1">
|
view/assets/css/post.min.css
CHANGED
@@ -1 +1 @@
|
|
1 |
-
@import url(https://fonts.googleapis.com/css?family=Open+Sans);@-webkit-keyframes play{0%{background-position:0}to{background-position:-400px}}@-moz-keyframes play{0%{background-position:0}to{background-position:-400px}}@-ms-keyframes play{0%{background-position:0}to{background-position:-400px}}@-o-keyframes play{0%{background-position:0}to{background-position:-400px}}@keyframes play{0%{background-position:0}to{background-position:-400px}}.sq_loading{height:60px;background:url(../img/loading.gif) no-repeat center!important}.sq_minloading:after,.sq_minloading:before{position:absolute!important;right:calc(50% - 10px)!important;top:calc(50% - 8px)!important;display:block!important;float:right!important;line-height:30px!important;content:""!important;padding:0!important;margin:0 0 0 5px!important;height:16px!important;width:20px!important;background:url(../img/minloading.png) no-repeat!important;-webkit-animation:play 1s steps(10) infinite;-moz-animation:play 1s steps(10) infinite;-o-animation:play 1s steps(10) infinite;animation:play 1s steps(10) infinite}#sq_preloading{text-align:center;font-size:15px;line-height:24px;color:gray}.sq_sla_connect_notice{font-size:16px;line-height:24px;font-weight:600;margin:0 auto 10px;text-align:center}.sq_push,.sq_sla_connect_notice_content{text-align:center;margin:6px auto}.sq_sla_connect_notice a{text-decoration:none}.sq_sla_connect_notice_content a img{width:277px}#postsquirrly{background:0 0;border:0;margin:0;padding:2px;box-shadow:none;-moz-box-shadow:none;-webkit-box-shadow:none}#postsquirrly .postbox-header{display:none}#postsquirrly *,#sq_blocksnippet *{box-sizing:border-box}#postsquirrly.closed .inside{display:block}.sq_push{position:absolute;top:-7px;left:30px;font-size:10px;margin:0;border:1px solid #333;background-color:#8b0000;border-radius:50px;-webkit-border-radius:50px;-moz-border-radius:50px;padding:0 1px;width:14px;text-shadow:1px 1px #333;color:#fff;font-family:'Megalopolis',Arial,Helvetica,sans-serif}#sq_options_dasboard .sq_push{left:36px}#postsquirrly div.inside,#postsquirrly p,#postsquirrly td,#sq_blocksearch ul,#sq_blockseo ul,#sq_options>ul{margin:0;padding:0}.edit-post-sidebar #sq_options{display:none}#postsquirrly .handlediv,#postsquirrly .hndle{background:gray;opacity:0;height:1px;line-height:0}#postsquirrly .sq_header{color:#a0a0a0;font-size:14px;font-weight:400;padding:5px 7px;margin:0;line-height:20px;border-bottom:1px dashed #d1d1d1}#postsquirrly .sq_box{background-color:#fff;margin-bottom:15px;border:1px solid #ccd0d4}#normal-sortables #postsquirrly .sq_box{max-width:490px;margin:auto}#postsquirrly.sq_sticky{position:fixed!important;z-index:90000!important;right:3px;bottom:0;top:auto;height:136px;width:285px!important;padding:1px!important;background:#fff!important;overflow-x:auto!important;box-shadow:0 0 10px 0 #555!important}#postsquirrly.sq_sticky::-webkit-scrollbar-track{-webkit-box-shadow:inset 0 0 6px rgba(0,0,0,.3);background-color:#f5f5f5}#postsquirrly.sq_sticky::-webkit-scrollbar{width:7px;background-color:#f5f5f5}#postsquirrly.sq_sticky::-webkit-scrollbar-thumb{background-color:#bdafba;border:0}#postsquirrly.sq_sticky .hndle,#postsquirrly.sq_sticky.minimized #sq_briefcase_list,#postsquirrly.sq_sticky.minimized #sq_briefcase_topcontent{display:none!important}#postsquirrly.sq_sticky .sq_header{cursor:move}#postsquirrly .sq_box_close,#postsquirrly .sq_box_maximize,#postsquirrly .sq_box_minimize{display:block;float:right;margin:0;cursor:pointer;font-family:Arial,sans-serif;font-weight:400;font-size:17px;color:gray;padding:0 0 0 10px;height:22px}#postsquirrly.sq_sticky.minimized{height:95px!important;overflow:hidden!important}#postsquirrly .inside{position:relative;height:100%}#postsquirrly .sq_box.sq_sticky{position:fixed;top:32px;z-index:99999;height:100%;max-width:291px;overflow-x:auto}#postsquirrly.sq_sticky .sq_box.sq_sticky{position:absolute;top:0;bottom:0;height:100%;margin:0}#postsquirrly .sq_box.sq_sticky>div{margin-bottom:25px}#postsquirrly .sq_box:hover:before{opacity:.8}#postsquirrly .sq_box:hover .sq_header{color:#444}#sq_blocklogin{background-color:#ffffe0}#sq_blocklogin input,#sq_blocklogin textarea{font-family:Arial,Helvetica,sans-serif;font-size:14px;height:30px;padding:6px}#postsquirrly .sq_button,#sq_blocklogin #sq_login{cursor:pointer;background-color:#589ee4;color:#fff;border:0}#postsquirrly .sq_button{display:block;text-decoration:none;line-height:30px;font-weight:700;margin:0;padding:0 15px;border-radius:0;vertical-align:top}#sq_blocklogin #sq_login{min-width:100px;min-height:35px;border-radius:10px;-moz-border-radius:10px;-webkit-border-radius:10px}#sq_blocklogin label{margin-top:0;margin-right:2px;width:72px;display:inline-block}#sq_blocklogin ul li{position:relative;font-family:"Lucida Grande",Arial,Helvetica,sans-serif;font-size:12px;padding:4px 0 4px 5px;margin:5px 0;line-height:16px;text-shadow:1px 1px #fff;text-align:center}#postsquirrly .sq_button,#sq_blocklogin .sq_info{font-size:13px;text-align:center}#sq_blocklogin .sq_error{font-size:12px;text-align:center;color:red;margin:5px auto}#sq_blocklogin #sq_register{margin:5px 0;font-size:16px;font-weight:700}#sq_blocklogin #sq_register_wait{display:inline-block;margin-left:2px}#sq_blocklogin #sq_autologin{padding:20px 10px 5px}#sq_blocklogin #sq_autologin #sq_loginimage{display:block;background-color:#589ee4;height:auto;width:100px;font-size:15px;color:#fff;font-weight:700;margin:13px;padding:10px 0;text-decoration:none;border-radius:10px;-moz-border-radius:10px;-webkit-border-radius:10px;cursor:pointer}#sq_blocklogin #sq_register_email{text-align:center;width:250px;height:45px;margin:14px auto 11px}#sq_blocklogin #sq_register_email #sq_email{width:160px!important;border:2px solid #589ee4}#sq_blocklogin #sq_signin{color:#11a5c1;margin:5px;cursor:pointer}#sq_options,#sq_options>ul>li{position:relative;float:right;padding:0}#sq_options{height:40px;margin:0;z-index:13}#side-sortables #sq_options{z-index:1003}#postsquirrly #sq_options{float:none;background:0 0;border:0;box-shadow:none}#normal-sortables #postsquirrly #sq_options{display:flex;width:280px;margin:10px auto}#sq_options>ul>li{font-family:"Open Sans",Arial,sans-serif!important;width:102px;color:#444;font-size:14px;margin:0 auto;cursor:pointer}#sq_options li#sq_options_support{margin-left:11px;width:105px}#sq_options_dasboard .sq_text a,#sq_options_support .sq_text{display:block;float:left;font-family:"Open Sans",Arial,sans-serif!important;font-size:12px;color:#333;text-decoration:none;padding:3px 5px;border:1px solid #ccc;border-radius:5px;background:#fff;background:-moz-linear-gradient(top,#fff,#f5f5f5);background:-webkit-gradient(linear,left top,left bottom,from(#fff),to(#f5f5f5))}#sq_options .sq_icon{display:block;float:left;background:url(../img/sprite.png) no-repeat;margin:-8px 5px 0 3px}#sq_options>ul>li#sq_options_feedback{width:38px;margin-left:2px}#sq_options_feedback .sq_label_feedback_smiley{display:block;height:37px;width:37px;margin:5px auto;background:url(../img/sprite.png) no-repeat;border:0;cursor:pointer}#sq_options_feedback .sq_feedback_smiley{display:none}#sq_options_feedback .sq_label_feedback_0{background-position:-102px -154px!important}#sq_options_feedback .sq_label_feedback_1{background-position:-148px -154px!important}#sq_options_feedback .sq_label_feedback_2{background-position:-194px -154px!important}#sq_options_feedback .sq_label_feedback_3{background-position:-240px -154px!important}#sq_options_feedback .sq_label_feedback_4{background-position:-284px -154px!important}#sq_options_feedback .sq_icon{height:37px;width:35px;background-position:-194px -154px}#sq_options_support .sq_icon{height:37px;width:30px;background-position:-5px -154px}#sq_options_dasboard .sq_icon{height:39px;width:40px;background-position:-40px -154px}#sq_options_feedback .sq_options_feedback_popup,#sq_options_support .sq_options_support_popup{display:table;min-width:345px;position:absolute;z-index:12;background-color:#fff;padding:5px;margin-top:0;top:33px;border:1px solid #ccc;border-radius:0 7px 7px 7px;-moz-border-radius:0 7px 7px 7px;-webkit-border-radius:0 7px 7px 7px;box-shadow:1px 4px 6px -1px #888;-moz-box-shadow:1px 4px 6px -1px #888;-webkit-box-shadow:1px 4px 6px -1px #888;cursor:default}#side-sortables #sq_options_feedback .sq_options_feedback_popup,#side-sortables #sq_options_support .sq_options_support_popup{z-index:1002}#sq_options_support .sq_options_support_popup{right:0}#sq_options_feedback .sq_options_feedback_popup{left:-101px}#sq_options_feedback table td{text-align:center;color:#999;min-width:50px;height:70px}#sq_options_feedback .sq_options_feedback_popup li,#sq_options_support .sq_options_support_popup li{color:#333;line-height:16px;font-size:13px;font-weight:400;margin:0;padding:3px 5px}#sq_options_feedback #sq_options_feedback_error,#sq_options_support #sq_options_support_error{margin:6px 0}#sq_options_feedback .sq_small_input{width:100%;height:70px}#sq_options_support .sq_small_input{width:100%}#sq_options_feedback .sq_options_feedback_popup #sq_feedback_submit,#sq_options_support .sq_options_support_popup #sq_support_submit{background-color:#589ee4;font-size:12px;font-weight:700;color:#fff;width:100px;margin:10px auto 5px;padding:5px;position:relative;text-shadow:1px 1px #555;border:0;cursor:pointer}#sq_options_feedback #sq_options_feedback_close,#sq_options_support #sq_options_close{position:absolute;right:8px;top:3px;font-size:13px;font-weight:700;color:#999;width:8px;line-height:16px;padding:0 5px 3px;border-radius:10px;cursor:pointer;z-index:2}#sq_options_feedback .sq_options_feedback_popup li{clear:both}#sq_facebook_b{padding:6px 50px;clear:both;display:table}#sq_facebook_b>span{display:block;float:left;font-weight:700;color:#006400}#sq_facebook_b .sq_facebook_title{width:100%;font-size:16px;text-align:center;margin:5px auto}#sq_facebook_b .sq_facebook_image{width:100px;margin:3px 7px 5px 24px}#sq_facebook_b .sq_facebook_image img{width:100px}#sq_facebook_b .sq_facebook_frame{margin-top:35px}#postsquirrly.sq_frontend .sq_frontend_noapi{font-size:16px;line-height:24px;font-weight:600;margin:0 auto 10px;text-align:center}#postsquirrly .sq_frontend_noapi_inner{text-align:center;margin:6px auto}#postsquirrly .sq_frontend_noapi_inner img{width:277px}#postsquirrly .sq_frontend_noapi a{text-decoration:none}@media (min-width:1024px){body.admin-bar #sq_modal_overlay{height:calc(100vh - 32px)}}#sq_liveassistant #sq_modal_overlay{position:fixed;height:100%;width:100%;bottom:0;left:0;background-color:rgba(0,0,0,.5);z-index:9999;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}#sq_liveassistant #sq_modal{width:550px;left:calc(50% - 250px);top:50px;background-color:#fff;position:fixed;-webkit-border-radius:3px;border-radius:3px;-webkit-box-shadow:2px 8px 23px 3px rgba(0,0,0,.2);box-shadow:2px 8px 23px 3px rgba(0,0,0,.2);overflow:hidden;z-index:10000}#sq_liveassistant #sq_modal #sq_modal_header{padding:18px 15px;-webkit-box-shadow:0 0 8px rgba(0,0,0,.1);box-shadow:0 0 8px rgba(0,0,0,.1);text-align:left}#sq_liveassistant #sq_modal #sq_modal_header_title{font-size:18px;font-weight:700}#sq_liveassistant #sq_modal #sq_modal_header .sq_logo{vertical-align:top!important;margin:2px}#sq_liveassistant #sq_modal #sq_modal_body{padding:30px 30px 0;text-align:left;min-height:150px}#sq_liveassistant #sq_modal #sq_modal_body h4{font-size:16px;padding:0 0 15px;margin:0}#sq_liveassistant #sq_modal .sq_modal_body_buttons_wrapper{border-top:none;text-align:left;padding:20px 30px 10px 0;overflow:hidden}#sq_liveassistant #sq_modal .sq_modal_body_submit{background-color:#1e933d;border:0;color:#fff;line-height:1;padding:12px 20px;font-size:14px;width:200px;height:38px;cursor:pointer}#sq_liveassistant #sq_modal .sq_modal_body_options_wrapper{padding:20px 0}.sq_minloading{position:relative;opacity:.5}#postsquirrly.sq_frontend #sq_options{display:none}#postsquirrly.sq_frontend ul,#postsquirrly.sq_frontend ul li{list-style:none!important}
|
1 |
+
@import url(https://fonts.googleapis.com/css?family=Open+Sans);@-webkit-keyframes play{0%{background-position:0}to{background-position:-400px}}@-moz-keyframes play{0%{background-position:0}to{background-position:-400px}}@-ms-keyframes play{0%{background-position:0}to{background-position:-400px}}@-o-keyframes play{0%{background-position:0}to{background-position:-400px}}@keyframes play{0%{background-position:0}to{background-position:-400px}}.sq_loading{height:60px;background:url(../img/loading.gif) no-repeat center!important}.sq_minloading:after,.sq_minloading:before{position:absolute!important;right:calc(50% - 10px)!important;top:calc(50% - 8px)!important;display:block!important;float:right!important;line-height:30px!important;content:""!important;padding:0!important;margin:0 0 0 5px!important;height:16px!important;width:20px!important;background:url(../img/minloading.png) no-repeat!important;-webkit-animation:play 1s steps(10) infinite;-moz-animation:play 1s steps(10) infinite;-o-animation:play 1s steps(10) infinite;animation:play 1s steps(10) infinite}#sq_preloading{text-align:center;font-size:15px;line-height:24px;color:gray}.sq_sla_connect_notice{font-size:16px;line-height:24px;font-weight:600;margin:0 auto 10px;text-align:center}.sq_sla_connect_notice_content{text-align:center;margin:6px auto}.sq_sla_connect_notice a{text-decoration:none}.sq_sla_connect_notice_content a img{width:277px}#postsquirrly{background:0 0;border:0;margin:0;padding:2px;box-shadow:none;-moz-box-shadow:none;-webkit-box-shadow:none}#postsquirrly .postbox-header{display:none}#postsquirrly *,#sq_blocksnippet *{box-sizing:border-box}#sq_blocksnippet:not(.closed) .inside{display:block!important}#sq_blocksnippet.closed .inside{display:none!important}#postsquirrly.closed .inside{display:block}.sq_push{position:absolute;top:-7px;left:30px;font-size:10px;margin:0;border:1px solid #333;background-color:#8b0000;border-radius:50px;-webkit-border-radius:50px;-moz-border-radius:50px;padding:0 1px;width:14px;text-shadow:1px 1px #333;color:#fff;font-family:'Megalopolis',Arial,Helvetica,sans-serif;text-align:center}#sq_options_dasboard .sq_push{left:36px}#postsquirrly div.inside,#postsquirrly p,#postsquirrly td,#sq_blocksearch ul,#sq_blockseo ul,#sq_options>ul{margin:0;padding:0}.edit-post-sidebar #sq_options{display:none}#postsquirrly .handlediv,#postsquirrly .hndle{background:gray;opacity:0;height:1px;line-height:0}#postsquirrly .sq_header{color:#a0a0a0;font-size:14px;font-weight:400;padding:5px 7px;margin:0;line-height:20px;border-bottom:1px dashed #d1d1d1}#postsquirrly .sq_box{background-color:#fff;margin-bottom:15px;border:1px solid #ccd0d4}#normal-sortables #postsquirrly .sq_box{max-width:490px;margin:auto}#postsquirrly.sq_sticky{position:fixed!important;z-index:90000!important;right:3px;bottom:0;top:auto;height:136px;width:285px!important;padding:1px!important;background:#fff!important;overflow-x:auto!important;box-shadow:0 0 10px 0 #555!important}#postsquirrly.sq_sticky::-webkit-scrollbar-track{-webkit-box-shadow:inset 0 0 6px rgba(0,0,0,.3);background-color:#f5f5f5}#postsquirrly.sq_sticky::-webkit-scrollbar{width:7px;background-color:#f5f5f5}#postsquirrly.sq_sticky::-webkit-scrollbar-thumb{background-color:#bdafba;border:0}#postsquirrly.sq_sticky .hndle,#postsquirrly.sq_sticky.minimized #sq_briefcase_list,#postsquirrly.sq_sticky.minimized #sq_briefcase_topcontent{display:none!important}#postsquirrly.sq_sticky .sq_header{cursor:move}#postsquirrly .sq_box_close,#postsquirrly .sq_box_maximize,#postsquirrly .sq_box_minimize{display:block;float:right;margin:0;cursor:pointer;font-family:Arial,sans-serif;font-weight:400;font-size:17px;color:gray;padding:0 0 0 10px;height:22px}#postsquirrly.sq_sticky.minimized{height:95px!important;overflow:hidden!important}#postsquirrly .inside{position:relative;height:100%}#postsquirrly .sq_box.sq_sticky{position:fixed;top:32px;z-index:99999;height:100%;max-width:291px;overflow-x:auto}#postsquirrly.sq_sticky .sq_box.sq_sticky{position:absolute;top:0;bottom:0;height:100%;margin:0}#postsquirrly .sq_box.sq_sticky>div{margin-bottom:25px}#postsquirrly .sq_box:hover:before{opacity:.8}#postsquirrly .sq_box:hover .sq_header{color:#444}#sq_blocklogin{background-color:#ffffe0}#sq_blocklogin input,#sq_blocklogin textarea{font-family:Arial,Helvetica,sans-serif;font-size:14px;height:30px;padding:6px}#postsquirrly .sq_button,#sq_blocklogin #sq_login{cursor:pointer;background-color:#589ee4;color:#fff;border:0}#postsquirrly .sq_button{display:block;text-decoration:none;line-height:30px;font-weight:700;margin:0;padding:0 15px;border-radius:0;vertical-align:top}#sq_blocklogin #sq_login{min-width:100px;min-height:35px;border-radius:10px;-moz-border-radius:10px;-webkit-border-radius:10px}#sq_blocklogin label{margin-top:0;margin-right:2px;width:72px;display:inline-block}#sq_blocklogin ul li{position:relative;font-family:"Lucida Grande",Arial,Helvetica,sans-serif;font-size:12px;padding:4px 0 4px 5px;margin:5px 0;line-height:16px;text-shadow:1px 1px #fff;text-align:center}#postsquirrly .sq_button,#sq_blocklogin .sq_info{font-size:13px;text-align:center}#sq_blocklogin .sq_error{font-size:12px;text-align:center;color:red;margin:5px auto}#sq_blocklogin #sq_register{margin:5px 0;font-size:16px;font-weight:700}#sq_blocklogin #sq_register_wait{display:inline-block;margin-left:2px}#sq_blocklogin #sq_autologin{padding:20px 10px 5px}#sq_blocklogin #sq_autologin #sq_loginimage{display:block;background-color:#589ee4;height:auto;width:100px;font-size:15px;color:#fff;font-weight:700;margin:13px;padding:10px 0;text-decoration:none;border-radius:10px;-moz-border-radius:10px;-webkit-border-radius:10px;cursor:pointer}#sq_blocklogin #sq_register_email{text-align:center;width:250px;height:45px;margin:14px auto 11px}#sq_blocklogin #sq_register_email #sq_email{width:160px!important;border:2px solid #589ee4}#sq_blocklogin #sq_signin{color:#11a5c1;margin:5px;cursor:pointer}#sq_options,#sq_options>ul>li{position:relative;float:right;padding:0}#sq_options{height:40px;margin:0;z-index:13}#side-sortables #sq_options{z-index:1003}#postsquirrly #sq_options{float:none;background:0 0;border:0;box-shadow:none}#normal-sortables #postsquirrly #sq_options{display:flex;width:280px;margin:10px auto}#sq_options>ul>li{font-family:"Open Sans",Arial,sans-serif!important;width:102px;color:#444;font-size:14px;margin:0 auto;cursor:pointer}#sq_options li#sq_options_support{margin-left:11px;width:105px}#sq_options_dasboard .sq_text a,#sq_options_support .sq_text{display:block;float:left;font-family:"Open Sans",Arial,sans-serif!important;font-size:12px;color:#333;text-decoration:none;padding:3px 5px;border:1px solid #ccc;border-radius:5px;background:#fff;background:-moz-linear-gradient(top,#fff,#f5f5f5);background:-webkit-gradient(linear,left top,left bottom,from(#fff),to(#f5f5f5))}#sq_options .sq_icon{display:block;float:left;background:url(../img/sprite.png) no-repeat;margin:-8px 5px 0 3px}#sq_options>ul>li#sq_options_feedback{width:38px;margin-left:2px}#sq_options_feedback .sq_label_feedback_smiley{display:block;height:37px;width:37px;margin:5px auto;background:url(../img/sprite.png) no-repeat;border:0;cursor:pointer}#sq_options_feedback .sq_feedback_smiley{display:none}#sq_options_feedback .sq_label_feedback_0{background-position:-102px -154px!important}#sq_options_feedback .sq_label_feedback_1{background-position:-148px -154px!important}#sq_options_feedback .sq_label_feedback_2{background-position:-194px -154px!important}#sq_options_feedback .sq_label_feedback_3{background-position:-240px -154px!important}#sq_options_feedback .sq_label_feedback_4{background-position:-284px -154px!important}#sq_options_feedback .sq_icon{height:37px;width:35px;background-position:-194px -154px}#sq_options_support .sq_icon{height:37px;width:30px;background-position:-5px -154px}#sq_options_dasboard .sq_icon{height:39px;width:40px;background-position:-40px -154px}#sq_options_feedback .sq_options_feedback_popup,#sq_options_support .sq_options_support_popup{display:table;min-width:345px;position:absolute;z-index:12;background-color:#fff;padding:5px;margin-top:0;top:33px;border:1px solid #ccc;border-radius:0 7px 7px 7px;-moz-border-radius:0 7px 7px 7px;-webkit-border-radius:0 7px 7px 7px;box-shadow:1px 4px 6px -1px #888;-moz-box-shadow:1px 4px 6px -1px #888;-webkit-box-shadow:1px 4px 6px -1px #888;cursor:default}#side-sortables #sq_options_feedback .sq_options_feedback_popup,#side-sortables #sq_options_support .sq_options_support_popup{z-index:1002}#sq_options_support .sq_options_support_popup{right:0}#sq_options_feedback .sq_options_feedback_popup{left:-101px}#sq_options_feedback table td{text-align:center;color:#999;min-width:50px;height:70px}#sq_options_feedback .sq_options_feedback_popup li,#sq_options_support .sq_options_support_popup li{color:#333;line-height:16px;font-size:13px;font-weight:400;margin:0;padding:3px 5px}#sq_options_feedback #sq_options_feedback_error,#sq_options_support #sq_options_support_error{margin:6px 0}#sq_options_feedback .sq_small_input{width:100%;height:70px}#sq_options_support .sq_small_input{width:100%}#sq_options_feedback .sq_options_feedback_popup #sq_feedback_submit,#sq_options_support .sq_options_support_popup #sq_support_submit{background-color:#589ee4;font-size:12px;font-weight:700;color:#fff;width:100px;margin:10px auto 5px;padding:5px;position:relative;text-shadow:1px 1px #555;border:0;cursor:pointer}#sq_options_feedback #sq_options_feedback_close,#sq_options_support #sq_options_close{position:absolute;right:8px;top:3px;font-size:13px;font-weight:700;color:#999;width:8px;line-height:16px;padding:0 5px 3px;border-radius:10px;cursor:pointer;z-index:2}#sq_options_feedback .sq_options_feedback_popup li{clear:both}#sq_facebook_b{padding:6px 50px;clear:both;display:table}#sq_facebook_b>span{display:block;float:left;font-weight:700;color:#006400}#sq_facebook_b .sq_facebook_title{width:100%;font-size:16px;text-align:center;margin:5px auto}#sq_facebook_b .sq_facebook_image{width:100px;margin:3px 7px 5px 24px}#sq_facebook_b .sq_facebook_image img{width:100px}#sq_facebook_b .sq_facebook_frame{margin-top:35px}#postsquirrly.sq_frontend .sq_frontend_noapi{font-size:16px;line-height:24px;font-weight:600;margin:0 auto 10px;text-align:center}#postsquirrly .sq_frontend_noapi_inner{text-align:center;margin:6px auto}#postsquirrly .sq_frontend_noapi_inner img{width:277px}#postsquirrly .sq_frontend_noapi a{text-decoration:none}@media (min-width:1024px){body.admin-bar #sq_modal_overlay{height:calc(100vh - 32px)}}#sq_liveassistant #sq_modal_overlay{position:fixed;height:100%;width:100%;bottom:0;left:0;background-color:rgba(0,0,0,.5);z-index:9999;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}#sq_liveassistant #sq_modal{width:550px;left:calc(50% - 250px);top:50px;background-color:#fff;position:fixed;-webkit-border-radius:3px;border-radius:3px;-webkit-box-shadow:2px 8px 23px 3px rgba(0,0,0,.2);box-shadow:2px 8px 23px 3px rgba(0,0,0,.2);overflow:hidden;z-index:10000}#sq_liveassistant #sq_modal #sq_modal_header{padding:18px 15px;-webkit-box-shadow:0 0 8px rgba(0,0,0,.1);box-shadow:0 0 8px rgba(0,0,0,.1);text-align:left}#sq_liveassistant #sq_modal #sq_modal_header_title{font-size:18px;font-weight:700}#sq_liveassistant #sq_modal #sq_modal_header .sq_logo{vertical-align:top!important;margin:2px}#sq_liveassistant #sq_modal #sq_modal_body{padding:30px 30px 0;text-align:left;min-height:150px}#sq_liveassistant #sq_modal #sq_modal_body h4{font-size:16px;padding:0 0 15px;margin:0}#sq_liveassistant #sq_modal .sq_modal_body_buttons_wrapper{border-top:none;text-align:left;padding:20px 30px 10px 0;overflow:hidden}#sq_liveassistant #sq_modal .sq_modal_body_submit{background-color:#1e933d;border:0;color:#fff;line-height:1;padding:12px 20px;font-size:14px;width:200px;height:38px;cursor:pointer}#sq_liveassistant #sq_modal .sq_modal_body_options_wrapper{padding:20px 0}.sq_minloading{position:relative;opacity:.5}#postsquirrly.sq_frontend #sq_options{display:none}#postsquirrly.sq_frontend ul,#postsquirrly.sq_frontend ul li{list-style:none!important}
|