Форум русской поддержки Joomla!® CMS
05.12.2016, 00:26:29 *
Добро пожаловать, Гость. Пожалуйста, войдите или зарегистрируйтесь.
Вам не пришло письмо с кодом активации?

Войти
   
   Начало   Поиск Joomla 3.0 FAQ Joomla 2.5 FAQ Joomla 1.5 FAQ Правила форума Новости Joomla Реклама Войти Регистрация Помощь  
Страниц: [1]   Вниз
  Добавить закладку  |  Печать  
Автор

Как отключить модули при определенных разрешениях?

 (Прочитано 1348 раз)
0 Пользователей и 1 Гость смотрят эту тему.
intcorp
Завсегдатай
*****

Репутация: +12/-0
Offline Offline

Сообщений: 412


« : 23.03.2015, 14:49:17 »

Подскажите условие для шаблона, чтобы на определенных разрешениях экрана модули не грузились.
К примеру, не вижу смысла выводить тяжелые слайдеры на экранах до 320 и 240 пикс.
Записан
AlekVolsk
Профи
********

Репутация: +316/-3
Online Online

Пол: Мужской
Сообщений: 6453



« Ответ #1 : 23.03.2015, 14:55:33 »

Модуль в шаблоне выводится в позиции, которая, как правило, обернута в определенный div с определенным классом. В стилях шаблона добавьте что-то вроде:
Код
@media screen (min-width:320px) {.класс-обертка_нужной_позиции {display:none;}}
Возможно, потребуется дополнительная доверстка.
Записан
zomby6888
Живу я здесь
******

Репутация: +168/-3
Offline Offline

Пол: Мужской
Сообщений: 1538


« Ответ #2 : 23.03.2015, 14:56:22 »

На php это сделать не реально. Можно реализовать проверку разрешения на js и подгрузку модулей аяксом. Но это сложнее. Проще всего скрыть модули используя CSS медиазапросы.
Записан
ELLE
Support Team
*****

Репутация: +862/-0
Offline Offline

Пол: Женский
Сообщений: 4723



« Ответ #3 : 23.03.2015, 15:02:51 »

На php это сделать не реально.
Почему же? проверить в модуле какое устройство и разрешить ему дальше работать или умереть Azn
Записан
intcorp
Завсегдатай
*****

Репутация: +12/-0
Offline Offline

Сообщений: 412


« Ответ #4 : 23.03.2015, 15:04:40 »

Медиа запросы не подходят потому, что в случае загрузки кода и графики, скрывать их смысла не вижу, т.к. цель убрать "лишний" траффик, иначе можно просто подогнать под адекватный вид.
Записан
zomby6888
Живу я здесь
******

Репутация: +168/-3
Offline Offline

Пол: Мужской
Сообщений: 1538


« Ответ #5 : 23.03.2015, 15:04:53 »

Как вы на php определите тип устройства? Это же серверная технология
Записан
ELLE
Support Team
*****

Репутация: +862/-0
Offline Offline

Пол: Женский
Сообщений: 4723



« Ответ #6 : 23.03.2015, 15:06:37 »

по User Agent
Записан
zomby6888
Живу я здесь
******

Репутация: +168/-3
Offline Offline

Пол: Мужской
Сообщений: 1538


« Ответ #7 : 23.03.2015, 15:09:06 »

по User Agent

Максимум что вы получите оттуда это тип браузера, версию.
Записан
intcorp
Завсегдатай
*****

Репутация: +12/-0
Offline Offline

Сообщений: 412


« Ответ #8 : 23.03.2015, 15:12:58 »

Если бы было решение типа
Код:
<?php if($this->screen(min-width:320px)) : ?><jdoc:include type="modules" name="module" style="xhtml" /><?php else: ?>альтернативное значение<?php endif; ?>
было бы норм Azn
Записан
fsv
Практически профи
*******

Репутация: +330/-2
Offline Offline

Пол: Мужской
Сообщений: 2237


« Ответ #9 : 23.03.2015, 15:17:39 »

Как вы на php определите тип устройства? Это же серверная технология
Существуют различные скрипты определения мобильных агентов, с различной степенью детализации и обновляемостью базы.
Пишем плагин - определяет агента (+ в куки). Если мобильный - подсовывать мобильную версию шаблона (зачем? - читаем Люка Вроблевски "Сначала мобильные"), все эти "адаптивные" не годятся из-за специфики моб.устройств и сетей, и используются по принципу "лучше так, чем никак".
Записан
AlekVolsk
Профи
********

Репутация: +316/-3
Online Online

Пол: Мужской
Сообщений: 6453



« Ответ #10 : 23.03.2015, 15:25:52 »

http://mobiledetect.net/
Записан
zomby6888
Живу я здесь
******

Репутация: +168/-3
Offline Offline

Пол: Мужской
Сообщений: 1538


« Ответ #11 : 23.03.2015, 15:30:14 »

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

Скрипты на php? На js можно определить разрешение и записать в куку, если только так. А так я могу и на десктопе поставить 320x200 разрешение.
Записан
fsv
Практически профи
*******

Репутация: +330/-2
Offline Offline

Пол: Мужской
Сообщений: 2237


« Ответ #12 : 23.03.2015, 15:34:23 »

Скрипты на php?
да.
где-то себе подборку делал в прошлом году, быстро не нашел. все никак руки не дойдут сделать то, что написал. сам сапожник без сапог.)

UPD. ну страница то загружается с index.PHP по запросу конкретного браузера, и в ней шаблон сайту подсовывается.
« Последнее редактирование: 23.03.2015, 15:39:29 от fsv » Записан
Ilhom666
Живу я здесь
******

Репутация: +155/-0
Offline Offline

Сообщений: 1335



« Ответ #13 : 23.03.2015, 16:26:19 »

на гитхабе напр лежит Browser.php
Записан
AlekVolsk
Профи
********

Репутация: +316/-3
Online Online

Пол: Мужской
Сообщений: 6453



« Ответ #14 : 23.03.2015, 16:28:37 »

на гитхабе напр лежит Browser.php
Этот скрипт уже более 2х лет не обновлялся, устарел малость. По приведенной мною ссылке более навороченный вариант.
Записан
fbr
Живу я здесь
******

Репутация: +136/-6
Offline Offline

Сообщений: 1250


« Ответ #15 : 23.03.2015, 17:56:05 »

вещь конечно хорошая, только она не дает главного - разрешение экрана ...
что толку от isMobile() = true, если у мобилы разрешение больше моего ноута ))
Записан
AlekVolsk
Профи
********

Репутация: +316/-3
Online Online

Пол: Мужской
Сообщений: 6453



« Ответ #16 : 23.03.2015, 18:32:38 »

Тогда только медиа-запросами, которые обрабатываются только браузерами, разрешение экрана на сервер не передается.
Записан
zomby6888
Живу я здесь
******

Репутация: +168/-3
Offline Offline

Пол: Мужской
Сообщений: 1538


« Ответ #17 : 23.03.2015, 19:04:31 »

Можно определить через js и записать в куку, но только ведь при этом надо отдавать редирект в шаблоне получается. Или подгружать модули аяксом. Незнаю что лучше/проще.
Записан
Страниц: [1]   Вверх
  Добавить закладку  |  Печать  
 
Перейти в:  

Powered by SMF 1.1.21 | SMF © 2006, Simple Machines

Joomlaforum.ru is not affiliated with or endorsed by the Joomla! Project or Open Source Matters.
The Joomla! name and logo is used under a limited license granted by Open Source Matters
the trademark holder in the United States and other countries.

LiveInternet