Редактор темы

Реклама
Реклама
Реклама
Реклама

Важно Тем кто использует в dle мобильную версию сайта

@ZerocooL,
DLE 10.2 - /engine/init.php

не нашел совпадения

if ( ($config['allow_smartphone'] AND !$_SESSION['mobile_disable'] AND $tpl->smartphone) OR $_SESSION['mobile_enable'] ) {
 
Автор темы
@dr.gopher, пробуй ЧАСТЬ кода искать что то типо mobile_disable или smartphone и визуально сотри совпадение потом
 
  • Нравится
Реакции: dusk
@dr.gopher, пробуй ЧАСТЬ кода искать что то типо mobile_disable или smartphone и визуально сотри совпадение потом
В зависимости от версий dle или от кривизны кнопок ctlr+c, иногда приходится искать не полную запись, а частями и после визуально сравнивать.
 
иногда приходится искать не полную запись, а частями и после визуально сравнивать.
🙂
Часть моего кода отдаленно напоминает пример:

Код:
$smartphone_detected = false;

if( isset( $_REQUEST['action'] ) and $_REQUEST['action'] == "mobiledisable" ) $_SESSION['mobile_disable'] = 1;
if( isset( $_REQUEST['action'] ) and $_REQUEST['action'] == "mobile" ) { $_SESSION['mobile_enable'] = 1; $_SESSION['mobile_disable'] = 0;}
if( !isset( $_SESSION['mobile_disable'] ) ) $_SESSION['mobile_disable'] = 0;
if( !isset( $_SESSION['mobile_enable'] ) ) $_SESSION['mobile_enable'] = 0;

if ( $config['allow_smartphone'] AND !$_SESSION['mobile_disable'] ) {

    if ( check_smartphone() ) {

        if ( @is_dir ( ROOT_DIR . '/templates/smartphone' ) ) {

            $config['skin'] = "smartphone";
            $smartphone_detected = true;
            $config['allow_comments_wysiwyg'] = 0;

        }

    }

}
 
Автор темы
@dr.gopher, быть может в вашей версии дле еше не было поддержки таблетов ? )) Список изменений версий посмотрите.
 
Автор темы
10.4 100% ОНО
 
if ( ($config['allow_smartphone'] AND !$_SESSION['mobile_disable'] AND $tpl->smartphone OR $tpl->tablet) OR $_SESSION['mobile_enable'] ) {
Чет мне кажется данный код будет работать не совсем корректно, т.е. мобильная версию включится, если:
1. В конфиге сайта разрешена мобильная версия и если они не отключена пользователем и если это телефон
2. Если это планшет, игнорирая настройки сайта и пожелания пользователя.

Нужно либо использовать конструкцию кода ($tpl->smartphone OR $tpl->tablet), т.е. обернуть в скобки, ибо по умолчанию php будет обрабатывать OR, только потом AND, а не последовательно.
Либо после $tpl->tablet дописать AND $config['allow_smartphone'] AND !$_SESSION['mobile_disable'].

Т.е. получается сейчас
(config AND !session AND smart) OR tables
Нужно сделать
config AND !session AND (smart OR tables)
или
config AND !session AND smart OR tables AND config AND !session
 

Похожие темы Последние темы Популярные темы

Назад
Сверху