Все для DataLife Engine / DLE хаки / Разные навороты, сборник хаков / Хаки DLE сообщение с IE перейдите на другой браузер

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


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

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

Самая простая установка ДЛЕ хак выводит сообщение не использовать 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();
}



Второй вариант. тоже связана с внедрением кода 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, выйдет подсказка, что для использования вашего портала лучше использовать другую программу интернет просмотра.

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

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

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 перейдите на другой браузер и исходники здесь

Soobschenie-s-IE-pereydite-na-drugoy-brauzer.rar [45,45 Kb] (cкачиваний: 89)
  • 80

Комментарии 2

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

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


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

Оставить комментарий

    • bowtiesmilelaughingblushsmileyrelaxedsmirk
      heart_eyeskissing_heartkissing_closed_eyesflushedrelievedsatisfiedgrin
      winkstuck_out_tongue_winking_eyestuck_out_tongue_closed_eyesgrinningkissingstuck_out_tonguesleeping
      worriedfrowninganguishedopen_mouthgrimacingconfusedhushed
      expressionlessunamusedsweat_smilesweatdisappointed_relievedwearypensive
      disappointedconfoundedfearfulcold_sweatperseverecrysob
      joyastonishedscreamtired_faceangryragetriumph
      sleepyyummasksunglassesdizzy_faceimpsmiling_imp
      neutral_faceno_mouthinnocent