Хак для DLE SETXT

Рубрика: Хаки для DLE » Хак DLE 13.1, 13.0, 12.1, 12.0, 11.3, 11.2, 11.1, 11.0, 10.6, 10.5, 10.4, 10.3, 10.2, 10.1, 10.0, 9.8
Хак для DLE SETXT
Представляем хак для DLE SETXT 2.0 способный сделать вывод разного контента так, что он будет виден только на определенных устройствах и браузерах, которые достаточно выделить с помощью специальных тегов. Благодаря хаку SETXT 2.0 можно вывести всякие сообщения для разных браузеров и операционных систем представленные в списке ниже.

Пример настройки тегов:
В нужном tpl доступен тег (несколько значений можно задавать через запятую):
[setxt browser="opera,yandex" os="windows"]текст[/setxt]Кроме того можно писать так[setxt browser="opera"]текст[/setxt]Или так[setxt os="linux"]текст[/setxt]Или так[setxt browser-not="opera,yandex" os="windows"]текст[/setxt]Кроме того можно писать так[setxt browser-not="opera"]текст[/setxt]Или так[setxt os-not="linux"]текст[/setxt]Или так[setxt browser-not="opera,yandex" os-not="windows"]текст[/setxt]


Приставка -not работает в обратном значении, то есть для всех кроме этих значений покажется текст.





Установка хака SEtxt
Скопируйте все файлы из папки upload в данном архиве на ваш сервер.
Открыть файл /engine/classes/templates.class.php
найти
class dle_template {


Выше вставить:
require_once ROOT_DIR . '/engine/mod/SEtxt.php';Далее найти:$this->dir = ROOT_DIR . '/templates/';Ниже вставить$this->SEtxt = SEtxt::getSingleton();
    $this->SEtxt->construct();


Далее найти:
$this->_clear();

Выше вставить для UTF-8
$this->result[$tpl] = preg_replace_callback("#\\[setxt (.+?)\\](.*?)\\[/setxt\\]#umis", array($this->SEtxt, "checkMatch"), $this->result[$tpl]);

Для CP1251 вставить
$this->result[$tpl] = preg_replace_callback("#\\[setxt (.+?)\\](.*?)\\[/setxt\\]#mis", array($this->SEtxt, "checkMatch"), $this->result[$tpl]);

SEtxt 2.0 описание:
DataLife Engine 9.0 - 11.x
от 23.10.2016
Автор: Gameer. (http:// gameer name/)

Обновленная версия 26.01.2017.

Представляем хак для DLE SETXT 2.0 способный сделать вывод разного контента так, что он будет виден только на определенных устройствах и браузерах всё лучшее у нас форумы, хаки, модули, шаблоны.
  • 60
Рубрика: DLE хаки » Хак для DLE
Ранее » Слайдер для DLE 11.x« Далее Хак DLE Вывод данных количество скаченного в профиле
Нажмите на ссылку, чтобыОставить комментарий
  • № :6
  • 17 сентября 2017 09:02
Надо не так
$this->SEtxt = SEtxt::getSingleton();
$this->SEtxt->construct();
а так
$this->SEtxt = new SEtxt();
$this->SEtxt->__construct();
  • № :5
  • 7 июля 2017 11:57
Как бы там не было, у меня опять на другой 11.3 после вставки
Далее найти:$this->dir = ROOT_DIR . '/templates/';
Ниже вставить$this->SEtxt = SEtxt::getSingleton();

Выдает
Fatal error: Call to undefined method SEtxt::getSingleton() in W:\domains\DLETest113-1251 .ru\engine\classes\templates.class.php on line 48

Может что-то изменилось с 11.0 и на новых код не проходит или инструкция с ошибкой.
  • № :4
  • 6 июля 2017 19:37
Цитата: Dartus
Наконец то дорвался до папки модов, и был неприятно огорчен.
Модуль не работает на 11.2 и 11.3 а может и более ранних.
При разном добавлении доработак в инструкции выдает ошибки
Parse error: syntax error, unexpected '$this' (T_VARIABLE) in W:\domains\DLETest112 .ru\engine\classes\templates.class.php on line 927 

вы допускаете ошибку при добавлении кода в файл engine\classes\templates.class.php
дело не модуле
  • № :3
  • 6 июля 2017 16:54
Наконец то дорвался до папки модов, и был неприятно огорчен.
Модуль не работает на 11.2 и 11.3 а может и более ранних.
При разном добавлении доработак в инструкции выдает ошибки
Parse error: syntax error, unexpected '$this' (T_VARIABLE) in W:\domains\DLETest112 .ru\engine\classes\templates.class.php on line 927 
  • № :2
  • 29 января 2017 06:23
Цитата: Dartus
Спасибо за такой модуль) Может и пригодиться, раньше такого невидел.
Жаль что и версию указывать нельзя, а то бывает что некоторые модули под старые версии браузеров не работают, и тут это палочка выручалочка).

На здоровье. Версию не указал автор, тут выручает даты создания файлов и изменения относительно старой версии.
  • № :1
  • 29 января 2017 05:05
Спасибо за такой модуль) Может и пригодиться, раньше такого невидел.
Жаль что и версию указывать нельзя, а то бывает что некоторые модули под старые версии браузеров не работают, и тут это палочка выручалочка).