Задать вопрос
Ответы пользователя по тегу HTML
  • Отложить загрузку скриптов, пока не загрузится весь сайт, как?

    @VetalSoft
    Разработка и продвижение сайтов
    Решение для корректного отображения счетчика в метрике. Проверяем на ботов и выдаем скрипты без задержки. Лишних ботов из списка можно убрать.
    Этот метод улучшает показатели PageSpeed.

    <?php
    	function isBot(){
    	/* Эта функция будет проверять, является ли посетитель роботом поисковой системы */
    	  $bots = array(
    		'rambler','googlebot','aport','yahoo','msnbot','turtle','mail.ru','omsktele',
    		'yetibot','picsearch','sape.bot','sape_context','gigabot','snapbot','alexa.com',
    		'megadownload.net','askpeter.info','igde.ru','ask.com','qwartabot','yanga.co.uk',
    		'scoutjet','similarpages','oozbot','shrinktheweb.com','aboutusbot','followsite.com',
    		'dataparksearch','google-sitemaps','appEngine-google','feedfetcher-google',
    		'liveinternet.ru','xml-sitemaps.com','agama','metadatalabs.com','h1.hrn.ru',
    		'googlealert.com','seo-rus.com','yaDirectBot','yandeG','yandex',
    		'yandexSomething','Copyscape.com','AdsBot-Google','domaintools.com',
    		'Nigma.ru','bing.com','dotnetdotcom'
    	  );
    	  foreach($bots as $bot) 
    		if(stripos($_SERVER['HTTP_USER_AGENT'], $bot) !== false){
    		  return true;
    		}
    	  return false;
    	}
    if( isBot() ) { ?>
    
    // script для ботов
    
    <?php } else { ?>
    		window.onload = function() {
    			setTimeout(() => {
    
    // script с задержкой
    
    			},3000);
    		}
    <?php } ?>
    Ответ написан
    7 комментариев