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

 
InstantCMS Team
small user social cms
МедальАвторитет форумаКубок зрительских симпатий
Сообщений: 4803
Олег Васильевич я:
Выводить в зависимости от девайса разные файлы (при их наличии).
Тут все же наверное стоит более универсально предусмотреть цепочки наследования шаблонов. Например, сейчас если файла шаблона нет в текущей теме, то этот файл ищется в дефолтном шаблоне. Так вот идея в том, чтобы сделать некий механизм, позволяющий дополнять такие проверки. Т.е. если файла нет в шаблоне template2, он сначала ищется в шаблоне template1, а потом уже в дефолтном.

Soul, все уже есть в движке.
Код PHP:
  1. $device_type = cmsRequest::getDeviceType();
Видео каталог для InstantCMS | Аудио каталог для InstantCMS | Мы Вконтакте | Предложение для спонсоров
Модератор
small user social cms
МедальКубок зрительских симпатийАвторитет форума
Сообщений: 1348
Fuze:
Soul, все уже есть в движке.
Да, но в device mode данная конструкция не срабатывает.
почему я задаю мало вопросов? потому, что на 90% из них уже кто-то ответил...
Реклама
cms
InstantCMS Team
small user social cms
МедальАвторитет форумаКубок зрительских симпатий
Сообщений: 4803
Soul:
Да, но в device mode данная конструкция не срабатывает.
Не очень понял ответа. Поясню:

Код PHP:
  1.  
  2. $device_type = cmsRequest::getDeviceType();
  3.  
  4. // $device_type может быть равен tablet, mobile или desktop, что будет означать
  5. // планшет, мобильное устройство или ПК
  6.  
Этим следует пользоваться в общих случаях, без уточнения устройства. Следует пользоваться потому, что движок это определяет для клиента один раз и запоминает значение в куках на год.

Val:
$request->device_type;
Это не сработает, т.к. свойство приватное. Единственное правильное получение типа устройства из любого места движка я описал выше.
Редактировалось: 1 раз (Последний: 14 мая 2016 в 14:05)
Видео каталог для InstantCMS | Аудио каталог для InstantCMS | Мы Вконтакте | Предложение для спонсоров
Модератор
small user social cms
МедальКубок зрительских симпатийАвторитет форума
Сообщений: 1348
Fuze:
Не очень понял ответа.
Это ответ Atid - Gorec по поводу возможности проверки в device mode.
почему я задаю мало вопросов? потому, что на 90% из них уже кто-то ответил...
Посетитель
small user social cms
МедальПочетный донор проектаКубок зрительских симпатийАвторитет форумаПочетный донор проекта
Сообщений: 3356
Fuze:
Т.е. если файла нет в шаблоне template2, он сначала ищется в шаблоне template1, а потом уже в дефолтном.
Таки да, лучше б сначала шаблон "по-умолчанию" проверить на наличие нужного файла
Украинский для инстант
Посетитель
small user social cms
МедальКубок зрительских симпатийАвторитет форума
Сообщений: 1163
Fuze:

Val:
$request->device_type;
Это не сработает, т.к. свойство приватное.
Да... вы правы)) Видел свойство через дебагер, а в ..\core\request.php не заглянул zst
Посетитель
small user social cms
Сообщений: 95
Здравствуйте. Чтобы не плодить лишних тем напишу в похожую. Я не силён в php, потому прошу помощи.
На примере этого кода попытался сделать вывод полей для мобильных одно, для десктопов другое, вставив код напрямую в шаблон, но результата не добился.
Код PHP:
  1. <?php if ($request->device_type == 'mobile') {
  2. cmsTemplate::getInstance()->render('template_for_mobile');
  3. ($item['pole1']);
  4. } else {
  5. cmsTemplate::getInstance()->render('template_for_desktop');
  6. ($item['pole2']);
  7. }
  8. ?>
Возможно ли вообще выводить поля для разных типов устройств таким образом? Помогите разобраться.
P.S. И ещё вопрос template_for_mobile - это только для мобильных? А для планшетов есть другая функция?
Посетитель
small user social cms
МедальКубок зрительских симпатийАвторитет форума
Сообщений: 1440
А как можно самому задать device_type например через хук EngineStart ? Сумел только через setCookie но это неправильно, и такой вариант срабатывает только после перезагрузки страницы.
Редактировалось: 1 раз (Последний: 12 января 2021 в 22:10)
Делаю сайты, дополнения, верстаю, исправляю. skype:gdvden
В начало страницы
Предыдущая темаСледующая тема Перейти на форум:
Страницы: Первая Предыдущая 1 2
Быстрый ответ
Чтобы писать на форуме, зарегистрируйтесь или авторизуйтесь.