Cайты "под ключ"

Акция - Сайт визитка от 199 евро

Предложение

Дизайн сайтов, логотипов, фирменный стиль

Продвижие (SEO). Реклама

Поисковое продвижение, раскрутка, реклама
Главная arrow Сообщество arrow Статьи arrow Улучшаем встроенную статистику Joomla
Улучшаем встроенную статистику Joomla Версия для печати
(0 голосов)
tag Все о СMS Joomla!
Flex
  

Как известно в Joomla имеется встроенная статистика посещений сайта. Однако статистика по браузерам оставляет желать лучшего: слишком часто встречаются неизвестные браузеры. Румамбер SergeR предложил хак для улучшения качества определения типов браузеров во встроенной статистике Joomla.

Установка данного хака никак не повлияет на уже имеющуюся статистику, потому что Joomla сохраняет в базу данных не само значение USER_AGENT, а текстовые строки с названиями браузеров. Однако вся последующая статистика по браузерам, будет содержать значительно меньше неизвестных браузеров.

  1. Загружаем архив с библиотекой phpSniff 2.1.4 (7.4kb)
  2. Извлекаем из архива файл phpSniff.class.php и копируем его в дирекорию includes/
  3. В файле includes/agent_browser.php находим код:
     
    $browsersAlias = array (
    и заменяем его на:
     
    $browsersAlias = array (
    'msie' => 'Microsoft Internet Explorer',
    'netscape' => 'netscape'
  4. В файле includes/joomla.php находим функцию mosGetBrowser:
     
    function mosGetBrowser( $agent ) {
      require( 'includes/agent_browser.php' );
     
      if (preg_match( "/msie[\/\sa-z]*([\d\.]*)/i", $agent, $m )
      && !preg_match( "/webtv/i", $agent )
      && !preg_match( "/omniweb/i", $agent )
      && !preg_match( "/opera/i", $agent )) {
        // IE
        return "MS Internet Explorer $m[1]";
      } else if (preg_match( "/netscape.?\/([\d\.]*)/i", $agent, $m )) {
        // Netscape 6.x, 7.x ...
        return "Netscape $m[1]";
      } else if (preg_match("/mozilla[\/\sa-z]*([\d\.]*)/i", $agent, $m)
      && !preg_match( "/gecko/i", $agent )
      && !preg_match( "/compatible/i", $agent )
      && !preg_match( "/opera/i", $agent )
      && !preg_match( "/galeon/i", $agent )
      && !preg_match( "/safari/i", $agent )) {
        // Netscape 3.x, 4.x ...
        return "Netscape $m[1]";
      } else {
        // Other
        $found = false;
        foreach ($browserSearchOrder as $key) {
          if (preg_match( "/$key.?\/([\d\.]*)/i", $agent, $m )) {
            $name = "$browsersAlias[$key] $m[1]";
            return $name;
            break;
          }
        }
      }
     
      return 'Unknown';
    }
    и замените ее следующим кодом:
     
    function mosGetBrowser( $agent ) {
      require( 'includes/agent_browser.php' );
      require_once('includes/phpSniff.class.php');
     
      $client = new phpSniff($agent);
      $client_long_name = $client->property('long_name');
     
      if (array_key_exists($client_long_name, $browsersAlias)){
        $name = $browsersAlias[$client_long_name];
      } else {
        $name = $client_long_name;
      }
      $name .= ' ' . $client->property('version');
      return($name);
    }

По материалам: joomlaportal.ru

 
  Нет комментариев.

Быстрое сообщение

Комментарии (0)
< Пред.   След. >

карнизы кованые лучшие цены в москве

Who's Online

Сейчас на сайте: 35

Заказать услугу

order

Форум

RSS


RSS 2.0



Интернет магазин

Интернет магазин. Разработка

Сопровождение

Поддержка и сопровождение сайтов

Администрирование

Администрирование серверов. Установка серверных приложений

Хостинг и домены

Профессиональный хостинг, регистрация доменов