Хаки DLE сообщение с IE перейдите на другой браузер

Категория: Хаки DLE » Сборник разных хаков
Хаки DLE сообщение с IE перейдите на другой браузер
Сегодня на www.dle9.com несколько вариантов хаки для ДЛЕ с сообщением - Вы пользуетесь IE, просьбой перейти на другой браузер с Internet Explorer на версию IE8 или браузеры Opera, Mozilla, Safari, Google Ghrome. Хак DLE предупреждающий, что на браузере IE, пользователи не смогут воспользоваться всеми функциями, тем самым им предлагается установить любой другой браузер, чтобы верстка сайта отображалась нормально и посетители смогли воспользоваться всеми необходимыми возможностями на веб-ресурсе.

Многим известна это проблема, есть некоторое количество пользователей всемирной паутины в количестве 10-20 процентов, кто до сих пор пользуются данным браузером и его старой версией, который не имеет необходимых стандартов кода. чтобы нормально отображать страницы сайта или функции. Поэтому был предложен вариант нескольких решений на выбор.
Хаки DLE сообщение с IE перейдите на другой браузер

Самая простая установка ДЛЕ хак выводит сообщение не использовать IE, для пользователей у которых до сих пор на компьютере установлен данный браузер старой версии.
Как вариант в main.tpl до
<head>
вставить:

<!--[if IE]><meta http-equiv="refresh" content="0; URL=/ie.html"><![endif]-->


Необходимо создать файл или использовать приготовленный нами ie.html, который следует расположить в корень сайта.

НО! На php срабатывает куда быстрей.

Открывает index.php

Находим (примерно 33 строка):
require_once ROOT_DIR . '/engine/init.php';


Добавить

if (strstr($_SERVER["HTTP_USER_AGENT"], "MSIE")) {
header ("Location: ie.html");
die();
}


Хаки DLE сообщение с IE перейдите на другой браузер

Второй вариант. тоже связана с внедрением кода index.php, Это сообщение

DLE установка перейти на другой браузер с Internet Explorer

, после чего посетитель пришедший на ваш веб-ресурс с браузера Internet Explorer увидит следующее сообщение «Вы пользуйтесь браузером Internet Explorer, Для удобства мы рекомендуем вам использовать Opera или Google Chrome».

Открывает index.php
Находим (примерно 33 строка):
require_once ROOT_DIR . '/engine/init.php';


Ниже вставляем:
?>
<?php
if (strstr($_SERVER["HTTP_USER_AGENT"], "MSIE")) {
?>
<script type="text/javascript">
document.location.href="/ie.html";</script>
<?php
} else {


Спускаемся вниз. В последней строке:
?>


Заменяем на:
}?>


Здесь также добавляется файл ie.html. который следует добавить в корень сайта:

?>
<?php
if (strstr($_SERVER["HTTP_USER_AGENT"], "MSIE")) {
?>
<script type="text/javascript">
alert('Вы пользуйтесь браузером Internet Explorer, Для удобства мы рекомендуем вам использовать Opera или Google Chrome');
</script>
<?php
} else {


Вставляем данный код за место того и получаем, что если к вам зашли с IE, выйдет подсказка, что для использования вашего портала лучше использовать другую программу интернет просмотра.
Хаки DLE сообщение с IE перейдите на другой браузер

Хак - Закрываем куски кода для определенного браузера

Следующий вариант, более продвинутый, также можно использовать для других целей.
Описание: данный метод внедрения нового тега, добавленный тег может закрывать куски кода для определенного браузера, спрятать не и показывая не нужные вещи. причем для любой программы, используемого для просмотра интернет страниц, можно применить хак. Инструкция коротка, как и сама простая и легкая установка.

1. Для начала находим и открываем файл templates.class.php, он находится в папки /engine/classes
2. В открытом файле находи

$this->template = file_get_contents( $this->dir . DIRECTORY_SEPARATOR . $tpl_name );


После него вставляем:

               if (strpos ( $this->template, "[brausers=" ) !== false) {
            $this->template = preg_replace ( "#\\[brausers=(.+?)\\](.*?)\\[/brausers\\]#ies", "\$this->check_brausers('\\1', '\\2')", $this->template );
        }
        if (strpos ( $this->template, "[not-brausers=" ) !== false) {
            $this->template = preg_replace ( "#\\[not-brausers=(.+?)\\](.*?)\\[/not-brausers\\]#ies", "\$this->check_brausers('\\1', '\\2', false)", $this->template );
        }


Далее находим в нем

function check_module($aviable, $block, $action = true) {


И перед ним вставляем следующий кусок кода

function check_brausers($brausers, $block, $action = true) {

        $brausers = explode( ',', $brausers );
        
for ($as=0; $as<count($brausers); $as++){
         if($action){  
              if (strpos($_SERVER['HTTP_USER_AGENT'],$brausers[$as]) !== false){
                    $scho='1';
              }
          } else {
              if (strpos($_SERVER['HTTP_USER_AGENT'],$brausers[$as]) !== false){
                   return '';
          }
     }
}
        if($scho!=1&&$action==true){
        return '';
        }
        
        $block = str_replace( '\"', '"', $block );
        
        return $block;
    
    }


Все теперь сохраняем файл и заменяем его

Пример применения

[not-brausers=MSIE,Chrome,Opera,Firefox]Вы не применяете IE, Chrome, Opera, Firefox[/not-brausers]
[brausers=MSIE,Chrome,Opera,Firefox]Вы используете один из этих браузеров IE, Chrome, Opera, Firefox[/brausers]


Спасибо вам за ХАК!!!
Но внесу некоторое дополнение.
Если Вы хотите определить браузер Chrome , то используйте

[brausers=Chrome]код[/brausers]


Что касается Google Chrome он приписывает как Chrome/Safari

Если хотите определить Safari то так:

[not-brausers=Chrome]
[brausers=Safari]код[/brausers]
[/not-brausers]


У меня на ресурсе в поле юзера определяется тип браузера и системы (windows,unix,linux,mac)
Хак DataLife Engine предупреждающий, что на браузере IE, пользователи не смогут воспользоваться всеми функциями сайта, предлагается установить другой браузер.
Автор: toxx информация взята 0-web ru

Все файлы Хаки DLE сообщение с IE перейдите на другой браузер и исходники здесь
  • 80
Рубрика: DLE хаки » Разные навороты
Ранее » Хак слайд шоу для DLE (слайдер)« Далее jQuery HTML книжка с эффектом перелистывания страницы
Добавление комментарияОставить комментарий
  • № :2
  • 3 апреля 2013 14:42
ВОТ ЭТО ==> <?php
if (strstr($_SERVER["HTTP_USER_AGENT"], "MSIE")) {
?>
И
<?php
} else {
?>
НЕ НУЖНО, ЗАБЫЛ УБРАТЬ!
Оставляем только script
  • № :1
  • 3 апреля 2013 14:40
Хороший хак, но поставив его мы будем терять трафик кто пользуется ie, я придумал альтернативу к этому:

В main.tpl между <head></head> вставляем


Человек зашедший на сайт с ie получит сообщение о рекомендации, при нажатии ok сайт откроется, так мы не будем терять трафик!