Перейти к публикации

Как на смартфоне использовать не стандартный шаблон smartphone, а тот, что указан для рубрики?


Рекомендованные сообщения

Добрый день. 

Сайт https://www.telegraf.in.ua/

Создала новую рубрику и задала для нее отдельный шаблон longread. Но оказалось, что этот шаблон отображается только на десктопах, а на смартфонах используется стандартный шаблон Smartphone.

Для меня очень важно использовать шаблон longread и на десктопах и на мобильных. Сделала так - в файле engine/init.php в блок, отвечающий за определение смартфонов, добавила кусок кода для определения шаблона категории

if ( ($config['allow_smartphone'] AND !$_SESSION['mobile_disable'] AND $tpl->smartphone) OR $_SESSION['mobile_enable'] ) {

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

        $config['skin'] = "smartphone";
        $smartphone_detected = true;
        
        if( $config['allow_comments_wysiwyg'] > 0 ) $config['allow_comments_wysiwyg'] = 0;
        
        /* здесь определяем шаблон для категории*/
        
        if ($category_skin != "") {

            $category_skin = trim( totranslit($category_skin, false, false) );

            if ($category_skin AND @is_dir ( ROOT_DIR . '/templates/' . $category_skin )) {
                $config['skin'] = $category_skin;
            }

        }
        
        /* */

    }

}

Работает, но корректно ли это? Может, есть другие варианты?

Ссылка на сообщение
Поделиться на других сайтах
1 минуту назад, Gameer сказал:

Настройки системы --> Смартфоны --> Включить автоматическую поддержку смартфонов

Так поддержка смартфонов включена

Ссылка на сообщение
Поделиться на других сайтах
Только что, juva404 сказал:

Так поддержка смартфонов включена

Её отключить нужно, чтобы DLE автоматически не переводил при просмотре с телефонов на шаблон smartphone

Ссылка на сообщение
Поделиться на других сайтах
1 минуту назад, Gameer сказал:

Её отключить нужно, чтобы DLE автоматически не переводил при просмотре с телефонов на шаблон smartphone

Не дописала выше. Мне нужен стандартный шаблон Smartphone для всего сайта и только для рубрики longread - нужен отдельный шаблон

Ссылка на сообщение
Поделиться на других сайтах
Только что, juva404 сказал:

Не дописала выше. Мне нужен стандартный шаблон Smartphone для всего сайта и только для рубрики longread - нужен отдельный шаблон

if ( ($config['allow_smartphone'] AND !$_SESSION['mobile_disable'] AND $tpl->smartphone) OR $_SESSION['mobile_enable'] ) {

Замените на

if ((($config['allow_smartphone'] && !$_SESSION['mobile_disable'] && $tpl->smartphone) || $_SESSION['mobile_enable']) && $category != 'longread') {

 

Ссылка на сообщение
Поделиться на других сайтах
20 минут назад, Gameer сказал:

if ( ($config['allow_smartphone'] AND !$_SESSION['mobile_disable'] AND $tpl->smartphone) OR $_SESSION['mobile_enable'] ) {

Замените на


if ((($config['allow_smartphone'] && !$_SESSION['mobile_disable'] && $tpl->smartphone) || $_SESSION['mobile_enable']) && $category != 'longread') {

 

Просто верхнюю строчку заменить? А то, что я ниже добавила - это оставлять? если я удаляю свой добавленный блок, то не работает подмена шаблона

Ссылка на сообщение
Поделиться на других сайтах
2 минуты назад, juva404 сказал:

Просто верхнюю строчку заменить? А то, что я ниже добавила - это оставлять? если я удаляю свой добавленный блок, то не работает подмена шаблона

У вас какой url категории?

Ссылка на сообщение
Поделиться на других сайтах
1 час назад, juva404 сказал:

https://www.telegraf.in.ua/longread/ (сейчас на тестовом сайте, не на рабочем)

if ( ($config['allow_smartphone'] AND !$_SESSION['mobile_disable'] AND $tpl->smartphone) OR $_SESSION['mobile_enable'] ) {

Замените на

$checkCat = $category ?: $_GET['seocat'];
if ((($config['allow_smartphone'] AND !$_SESSION['mobile_disable'] AND $tpl->smartphone) OR $_SESSION['mobile_enable']) && $checkCat != 'longread') {

 

Ссылка на сообщение
Поделиться на других сайтах
2 часа назад, juva404 сказал:

Создала новую рубрику и задала для нее отдельный шаблон longread. Но оказалось, что этот шаблон отображается только на десктопах, а на смартфонах используется стандартный шаблон Smartphone.

В настройках скрипта в админпанели отключите настройку:

Цитата

Включить автоматическую поддержку смартфонов

При включении данной поддержки для пользователей заходящих на ваш сайт с мобильных смартфонов, будет использован специальный облегченный дизайн вашего сайта. Перед включением данной опции убедитесь что в вашей папке шаблонов /templates/ присутствует папка с именем шаблона smartphone.

 

1 час назад, juva404 сказал:

Не дописала выше. Мне нужен стандартный шаблон Smartphone для всего сайта и только для рубрики longread - нужен отдельный шаблон

Намного проще в таких случаях сделать обычный стандартный шаблон адаптивным, а не использовать несколько разных шаблонов.

Ссылка на сообщение
Поделиться на других сайтах
Только что, celsoft сказал:

В настройках скрипта в админпанели отключите настройку:

Сорри, я не указала сразу в начале темы, что шаблон smartphone должен использоваться по умолчанию, и только при просмотре рубрики longread - используется отдельный шаблон

9 минут назад, celsoft сказал:

Намного проще в таких случаях сделать обычный стандартный шаблон адаптивным

Я согласна, но ситуация так сложилась, что я не могу сейчас это сделать

Сelsoft, подскажите пожалуйста, так можно добавить кусок кода как я написала в самом начале и так решить задачу?

18 минут назад, Gameer сказал:

$checkCat = $category ?: $_GET['seocat']; if ((($config['allow_smartphone'] AND !$_SESSION['mobile_disable'] AND $tpl->smartphone) OR $_SESSION['mobile_enable']) && $checkCat != 'longread') {

Gameer, cпасибо, работает

Ссылка на сообщение
Поделиться на других сайтах

Создайте аккаунт или войдите в него для комментирования

Вы должны быть пользователем, чтобы оставить комментарий

Создать аккаунт

Зарегистрируйтесь для получения аккаунта. Это просто!

Зарегистрировать аккаунт

Войти

Уже зарегистрированы? Войдите здесь.

Войти сейчас
×
×
  • Создать...