Changeset 3418264
- Timestamp:
- 12/12/2025 12:52:54 PM (3 months ago)
- Location:
- site-suggest
- Files:
-
- 32 added
- 7 edited
-
tags/1.3.9 (added)
-
tags/1.3.9/app (added)
-
tags/1.3.9/app/ajax-controller.php (added)
-
tags/1.3.9/app/cron-controller.php (added)
-
tags/1.3.9/app/info-controller.php (added)
-
tags/1.3.9/app/main-controller.php (added)
-
tags/1.3.9/assets (added)
-
tags/1.3.9/assets/css (added)
-
tags/1.3.9/assets/css/style.css (added)
-
tags/1.3.9/assets/js (added)
-
tags/1.3.9/assets/js/script.js (added)
-
tags/1.3.9/index.php (added)
-
tags/1.3.9/license.txt (added)
-
tags/1.3.9/readme.txt (added)
-
tags/1.3.9/site-suggest.php (added)
-
tags/1.3.9/vendor (added)
-
tags/1.3.9/vendor/DetectLanguage (added)
-
tags/1.3.9/vendor/DetectLanguage/Client.php (added)
-
tags/1.3.9/vendor/DetectLanguage/DetectLanguage.php (added)
-
tags/1.3.9/vendor/DetectLanguage/Error.php (added)
-
tags/1.3.9/vendor/detectlanguage.php (added)
-
tags/1.3.9/views (added)
-
tags/1.3.9/views/admin (added)
-
tags/1.3.9/views/admin-parts (added)
-
tags/1.3.9/views/admin-parts/admin-settings-fields.php (added)
-
tags/1.3.9/views/admin-parts/admin-site-info.php (added)
-
tags/1.3.9/views/admin/admin-robots-txt.php (added)
-
tags/1.3.9/views/admin/admin-server.php (added)
-
tags/1.3.9/views/admin/admin-settings.php (added)
-
tags/1.3.9/views/admin/admin-tool-content.php (added)
-
tags/1.3.9/views/admin/stsgt-log-single.php (added)
-
tags/1.3.9/views/admin/stsgt-log.php (added)
-
trunk/app/ajax-controller.php (modified) (1 diff)
-
trunk/app/info-controller.php (modified) (8 diffs)
-
trunk/app/main-controller.php (modified) (2 diffs)
-
trunk/readme.txt (modified) (2 diffs)
-
trunk/site-suggest.php (modified) (2 diffs)
-
trunk/views/admin-parts/admin-site-info.php (modified) (3 diffs)
-
trunk/views/admin/admin-tool-content.php (modified) (3 diffs)
Legend:
- Unmodified
- Added
- Removed
-
site-suggest/trunk/app/ajax-controller.php
r3390233 r3418264 1338 1338 } 1339 1339 1340 $general_tab_keys = ['custom_login_path', 'wp_Memory_Limit_[Beta]', 'search_engine_indexing', 'SMTP_email_enabled', 'wp_version', 'PHP_version', 'plugin_risk_level_[Experimental]', 'active_theme', 'SSL_status', 'active_plugins', 'plugin_update_status', 'favicon_enabled', 'tagline', 'enabled_google_analytics', 'enabled_google_tags', 'has_cookie_banner', 'CDN_detected', 'reCaptcha_enabled', 'lorem_ipsum_check', 'privacy_policy_page', 'cookie_policy_page'];1340 $general_tab_keys = ['custom_login_path', 'wp_Memory_Limit_[Beta]', 'search_engine_indexing', 'SMTP_email_enabled', 'wp_version', 'PHP_version', 'plugin_risk_level_[Experimental]', 'active_theme', 'SSL_status', 'active_plugins', 'plugin_update_status', 'favicon_enabled', 'tagline', 'enabled_google_analytics', 'enabled_google_tags', 'has_cookie_banner', 'CDN_detected','External_scripts', 'reCaptcha_enabled', 'lorem_ipsum_check', 'privacy_policy_page', 'cookie_policy_page']; 1341 1341 $performance_tab_keys = ['desktop_speed_score', 'mobile_speed_score', 'server_response_time', 'accessibility_check', 'page_caching_enabled', 'revisions', 'drafts', 'trash', 'spam_comment', 'trash_comment', 'transients', 'Non_webP_images_[Beta]']; 1342 1342 $seo_tab_keys = ['seo_plugin_active', 'admin_username_detected', 'html_language_Tag', 'sitemap_available', 'www_redirect_check', 'sitemap_in_robots.txt', 'canonical_tags_check_[Beta]', 'schema_markup_check']; -
site-suggest/trunk/app/info-controller.php
r3390233 r3418264 167 167 case 'CDN_detected': 168 168 $audit_data['CDN_detected'] = $this->has_cdn(); 169 break; 170 case 'External_scripts': 171 $audit_data['External_scripts'] = $this->has_external_scripts(); 169 172 break; 170 173 case 'SMTP_email_enabled': … … 267 270 $audit_data['Form_Check[experimental]'] = $this->site_has_form_consent(); 268 271 $audit_data['CDN_detected'] = $this->has_cdn(); 272 $audit_data['External_scripts'] = $this->has_external_scripts(); 269 273 $audit_data['SMTP_email_enabled'] = $this->has_smtp($this->url); 270 274 $audit_data['reCaptcha_enabled'] = $this->has_recaptcha(); … … 547 551 $sgst_limit = ''; 548 552 $sgst_limit = 'WP_MEMORY_LIMIT (' . $current_mb . 'M)'; 549 if ($current_mb < $recommended){553 if ($current_mb < $recommended) { 550 554 $sgst_limit .= ' - Suggested memory limit ' . $recommended . 'M.'; 551 555 } 552 556 $sgst_limit .= '<br>WP_MAX_MEMORY_LIMIT (' . $max_current_limit . ')'; 553 554 if ($max_current_limit < $recommended){557 558 if ($max_current_limit < $recommended) { 555 559 $sgst_limit .= ' - Suggested memory limit ' . $recommended . 'M.'; 556 560 } … … 1500 1504 } 1501 1505 return "No"; 1506 } 1507 /** 1508 * ## Check if site has External Scripts 1509 * @return string|array 1510 */ 1511 public function has_external_scripts() 1512 { 1513 global $wp_scripts; 1514 $external_scripts = []; 1515 $all_links = $this->fetch_all_links(['link'], true); 1516 foreach ($all_links as $link_item) { 1517 if (strpos($link_item, home_url()) === false) { 1518 $accepted = ['js']; 1519 $file_ext = pathinfo($link_item, PATHINFO_EXTENSION); 1520 if (in_array($file_ext, $accepted)) { 1521 if (!in_array($link_item, $external_scripts)) { 1522 $external_scripts[esc_html($link_item)] = $this->get_cdn_loop($link_item); 1523 } 1524 } 1525 } 1526 } 1527 foreach ($wp_scripts->registered as $handle => $script) { 1528 if (empty($script->src)) { 1529 continue; 1530 } 1531 $src = $script->src; 1532 if (strpos($src, '//') === 0) { 1533 $src = 'https:' . $src; 1534 } 1535 1536 // External + HTTPS 1537 if (strpos($src, 'https://') === 0 && strpos($src, home_url()) === false) { 1538 $external_scripts[$src] = $handle; 1539 } 1540 } 1541 return !empty($external_scripts) ? $external_scripts : "No"; 1502 1542 } 1503 1543 … … 1671 1711 1672 1712 if (empty($resp_arr)) { 1673 $remote_data = wp_remote_get('https://c.sitesuggest.io/?url=' . get_site_url() .'?perfmatters=false&ao_noptimize=1&nowprocket');1713 $remote_data = wp_remote_get('https://c.sitesuggest.io/?url=' . get_site_url() . '?perfmatters=false&ao_noptimize=1&nowprocket'); 1674 1714 if (!is_wp_error($remote_data)) { 1675 1715 $response = $remote_data['body']; … … 1705 1745 1706 1746 if (empty($resp_arr)) { 1707 $remote_data = wp_remote_get('https://c.sitesuggest.io/?url=' . get_site_url() .'?perfmatters=false&ao_noptimize=1&nowprocket');1747 $remote_data = wp_remote_get('https://c.sitesuggest.io/?url=' . get_site_url() . '?perfmatters=false&ao_noptimize=1&nowprocket'); 1708 1748 if (!is_wp_error($remote_data)) { 1709 1749 $response = $remote_data['body']; … … 1737 1777 } 1738 1778 if (empty($resp_arr)) { 1739 $remote_data = wp_remote_get('https://c.sitesuggest.io/?url=' . get_site_url(), '?perfmatters=false&ao_noptimize=1&nowprocket', ['timeout' => 60]);1779 $remote_data = wp_remote_get('https://c.sitesuggest.io/?url=' . get_site_url(), '?perfmatters=false&ao_noptimize=1&nowprocket', ['timeout' => 60]); 1740 1780 if (!is_wp_error($remote_data)) { 1741 1781 $response = $remote_data['body']; … … 1771 1811 1772 1812 if (empty($resp_arr)) { 1773 $remote_data = wp_remote_get('https://c.sitesuggest.io/?url=' . get_site_url() .'?perfmatters=false&ao_noptimize=1&nowprocket', ['timeout' => 60]);1813 $remote_data = wp_remote_get('https://c.sitesuggest.io/?url=' . get_site_url() . '?perfmatters=false&ao_noptimize=1&nowprocket', ['timeout' => 60]); 1774 1814 if (!is_wp_error($remote_data)) { 1775 1815 $response = $remote_data['body']; -
site-suggest/trunk/app/main-controller.php
r3390233 r3418264 704 704 $all_post_ids = $this->get_all_post_ids(); 705 705 706 $general_check_list = ['custom_login_path', 'wp_Memory_Limit_[Beta]', 'search_engine_indexing', 'SMTP_email_enabled', 'wp_version', 'PHP_version', 'plugin_risk_level_[Experimental]', 'active_theme', 'SSL_status', 'active_plugins', 'plugin_update_status', 'favicon_enabled', 'tagline', 'multiple_google_tag_manager', 'enabled_google_analytics', 'enabled_google_tags', 'has_cookie_banner', 'CDN_detected', ' reCaptcha_enabled', 'lorem_ipsum_check', 'privacy_policy_page', 'cookie_policy_page'];706 $general_check_list = ['custom_login_path', 'wp_Memory_Limit_[Beta]', 'search_engine_indexing', 'SMTP_email_enabled', 'wp_version', 'PHP_version', 'plugin_risk_level_[Experimental]', 'active_theme', 'SSL_status', 'active_plugins', 'plugin_update_status', 'favicon_enabled', 'tagline', 'multiple_google_tag_manager', 'enabled_google_analytics', 'enabled_google_tags', 'has_cookie_banner', 'CDN_detected', 'External_scripts', 'reCaptcha_enabled', 'lorem_ipsum_check', 'privacy_policy_page', 'cookie_policy_page']; 707 707 $performance_check_list = ['desktop_speed_score', 'mobile_speed_score', 'server_response_time', 'accessibility_check', 'page_caching_enabled', 'revisions', 'drafts', 'trash', 'spam_comment', 'trash_comment', 'transients', 'Non_webP_images_[Beta]']; 708 708 $seo_check_list = ['seo_plugin_active', 'admin_username_detected', 'html_language_Tag', 'sitemap_available', 'www_redirect_check', 'sitemap_in_robots.txt', 'canonical_tags_check_[Beta]', 'schema_markup_check']; … … 965 965 $body = wp_remote_retrieve_body($response); 966 966 // error_log(print_r($body, true)); 967 } else{967 } else { 968 968 // error_log($response->get_error_message()); 969 969 } -
site-suggest/trunk/readme.txt
r3390233 r3418264 2 2 3 3 Requires at least: 6.5 4 Tested up to: 6. 84 Tested up to: 6.9 5 5 Requires PHP: 7.2 6 Stable tag: 1.3. 86 Stable tag: 1.3.9 7 7 License: GPLv2 or later 8 8 License URI: https://www.gnu.org/licenses/gpl-2.0.html … … 151 151 == Changelog == 152 152 153 = 1.3.9 - 2025-12-12 = 154 * Improved Compatibility. 155 153 156 = 1.3.8 - 2025-11-05 = 154 157 * Improved User Experience. -
site-suggest/trunk/site-suggest.php
r3390233 r3418264 6 6 * Author: Blurr Studio 7 7 * Author URI: https://blurr.it/ 8 * Version: 1.3. 88 * Version: 1.3.9 9 9 * License: GPL v2 or later 10 10 * License URI: https://www.gnu.org/licenses/gpl-2.0.html … … 36 36 define('stsgt_URL', plugin_dir_url(__FILE__)); 37 37 define('stsgt_SLUG', 'site-suggest'); 38 define('stsgt_VERSION', '1.3. 8');38 define('stsgt_VERSION', '1.3.9'); 39 39 } 40 40 -
site-suggest/trunk/views/admin-parts/admin-site-info.php
r3387629 r3418264 7 7 function get_tooltip_content($title) 8 8 { 9 ob_start(); 9 ob_start(); 10 10 if ($title == 'enabled_google_analytics') { ?> 11 11 <span class="stsgt_tooltip_wrap"> … … 137 137 <span class="stsgt_tooltip_data"> 138 138 Detects whether your site is using a Content Delivery Network (CDN). CDNs help improve performance by serving static assets like images, CSS, and JavaScript from servers closer to the visitor. Using a CDN can reduce load times and server strain. 139 </span> 140 </span> 141 <?php } 142 if ($title == 'External_scripts') { ?> 143 <span class="stsgt_tooltip_wrap"> 144 <span class="stsgt_tooltip_ico">?</span> 145 <span class="stsgt_tooltip_data"> 146 Will detect external scripts that could be self hosted 139 147 </span> 140 148 </span> … … 406 414 $real_cron_obsv_checklists = get_option('stsgt_real_cron_obsv_checklists', []); 407 415 $cron_progress = get_option('stsgt_real_cron_obsv_post_page', 0); 408 $allowd_items = ['custom_login_path', 'wp_Memory_Limit_[Beta]', 'search_engine_indexing', 'SMTP_email_enabled', 'wp_version', 'PHP_version', 'plugin_risk_level_[Experimental]', 'active_theme', 'SSL_status', 'active_plugins', 'plugin_update_status', 'favicon_enabled', 'tagline', 'enabled_google_analytics', 'enabled_google_tags', 'has_cookie_banner', 'CDN_detected', ' reCaptcha_enabled', 'lorem_ipsum_check', 'privacy_policy_page', 'cookie_policy_page', 'desktop_speed_score', 'mobile_speed_score', 'server_response_time', 'accessibility_check', 'page_caching_enabled', 'revisions', 'drafts', 'trash', 'spam_comment', 'trash_comment', 'transients', 'Non_webP_images_[Beta]', 'seo_plugin_active', 'admin_username_detected', 'html_language_Tag', 'sitemap_available', 'www_redirect_check', 'sitemap_in_robots.txt', 'canonical_tags_check_[Beta]', 'schema_markup_check', '_404_error_monitor', 'HTTP_links_found', 'broken_links_detected_[Beta]', 'Large_image_check', 'H1_tag_check', 'media_slug_conflict_[Experimental]', 'Form_Check[experimental]'];416 $allowd_items = ['custom_login_path', 'wp_Memory_Limit_[Beta]', 'search_engine_indexing', 'SMTP_email_enabled', 'wp_version', 'PHP_version', 'plugin_risk_level_[Experimental]', 'active_theme', 'SSL_status', 'active_plugins', 'plugin_update_status', 'favicon_enabled', 'tagline', 'enabled_google_analytics', 'enabled_google_tags', 'has_cookie_banner', 'CDN_detected', 'External_scripts', 'reCaptcha_enabled', 'lorem_ipsum_check', 'privacy_policy_page', 'cookie_policy_page', 'desktop_speed_score', 'mobile_speed_score', 'server_response_time', 'accessibility_check', 'page_caching_enabled', 'revisions', 'drafts', 'trash', 'spam_comment', 'trash_comment', 'transients', 'Non_webP_images_[Beta]', 'seo_plugin_active', 'admin_username_detected', 'html_language_Tag', 'sitemap_available', 'www_redirect_check', 'sitemap_in_robots.txt', 'canonical_tags_check_[Beta]', 'schema_markup_check', '_404_error_monitor', 'HTTP_links_found', 'broken_links_detected_[Beta]', 'Large_image_check', 'H1_tag_check', 'media_slug_conflict_[Experimental]', 'Form_Check[experimental]']; 409 417 410 418 -
site-suggest/trunk/views/admin/admin-tool-content.php
r3387629 r3418264 140 140 141 141 $is_404_page = false; 142 $general_tab_keys = ['custom_login_path', 'wp_Memory_Limit_[Beta]', 'search_engine_indexing', 'SMTP_email_enabled', 'wp_version', 'PHP_version', 'plugin_risk_level_[Experimental]', 'active_theme', 'SSL_status', 'active_plugins', 'plugin_update_status', 'favicon_enabled', 'tagline', 'enabled_google_analytics', 'enabled_google_tags', 'has_cookie_banner', 'CDN_detected', ' reCaptcha_enabled', 'lorem_ipsum_check', 'privacy_policy_page', 'cookie_policy_page'];142 $general_tab_keys = ['custom_login_path', 'wp_Memory_Limit_[Beta]', 'search_engine_indexing', 'SMTP_email_enabled', 'wp_version', 'PHP_version', 'plugin_risk_level_[Experimental]', 'active_theme', 'SSL_status', 'active_plugins', 'plugin_update_status', 'favicon_enabled', 'tagline', 'enabled_google_analytics', 'enabled_google_tags', 'has_cookie_banner', 'CDN_detected', 'External_scripts', 'reCaptcha_enabled', 'lorem_ipsum_check', 'privacy_policy_page', 'cookie_policy_page']; 143 143 144 144 $performance_tab_keys = ['desktop_speed_score', 'mobile_speed_score', 'server_response_time', 'accessibility_check', 'page_caching_enabled', 'revisions', 'drafts', 'trash', 'spam_comment', 'trash_comment', 'transients', 'Non_webP_images_[Beta]']; … … 236 236 </div> 237 237 </div> 238 </div> 239 <div class="stsgt-report-popup">238 </div> 239 <div class="stsgt-report-popup"> 240 240 <div class="stsgt-rp__overlay"></div> 241 241 <div class="stsgt-rp__content"> … … 247 247 </svg> 248 248 </div> 249 <form id="stsgt_report_form">249 <form id="stsgt_report_form"> 250 250 <input type="hidden" name="stsgt-report-for"> 251 251 <div class="stsgt-rp__group"> 252 252 <label for="stsgt-report" class="stsgt-rp__label">Describe bug</label> 253 253 <textarea name="stsgt-report" id="stsgt-report" required></textarea> 254 <!-- <div class="stsgt-rp__field-info">Describe bug</div> -->254 <!-- <div class="stsgt-rp__field-info">Describe bug</div> --> 255 255 </div> 256 256 <div class="stsgt-rp__links">
Note: See TracChangeset
for help on using the changeset viewer.