Мобильная версия шаблона блока или страницы — различия между версиями
Axlab (обсуждение | вклад) (Новая страница: «'''Актуально для версии 18''' При использовании PHP-шаблонизатора, возможно создать мобильн…») |
Whoa (обсуждение | вклад) |
||
Строка 1: | Строка 1: | ||
− | '''Актуально для версии 18''' | + | '''Статья предоставлена партнером UMI.CMS [https://www.umi-cms.ru/find_webdevs/axlab/ Артемом Войсковичем]''' |
+ | |||
+ | '''Актуально для версии 18.''' | ||
При использовании PHP-шаблонизатора, возможно создать мобильную версии шаблона, для этого достаточно добавить папку mobile в корне вашего шаблона. | При использовании PHP-шаблонизатора, возможно создать мобильную версии шаблона, для этого достаточно добавить папку mobile в корне вашего шаблона. |
Версия 13:23, 17 сентября 2018
Статья предоставлена партнером UMI.CMS Артемом Войсковичем
Актуально для версии 18.
При использовании PHP-шаблонизатора, возможно создать мобильную версии шаблона, для этого достаточно добавить папку mobile в корне вашего шаблона.
Автоматический режим
В папке с шаблоном создадим файл /php/content/content.phtml:
<?php $page = $variables['page']; ?>
<h1>Is desktop page</h1>
<?= $page->getValue('content') ?>
Также создадим файл /php/mobile/content/content.phtml:
<?php $page = $variables['page']; ?>
<h1>Is mobile page</h1>
<?= $page->getValue('content') ?>
Для примера используем только шаблон контента в основном файле шаблона:
<?= $this->render($variables, "{$variables['module']}/{$variables['method']}") ?>
Теперь, зайдя с мобильного устройства отобразится шаблон мобильной версии сайта.
При использовании $this->render система будет искать шаблон в папке mobile, при заходе с мобильного устройства.
Ручной режим
В PHP-шаблонизаторе также можно использовать функцию isMobile:
В файле шаблона /php/content/content.phtml добавим следующую строку:
<?php if($this->isMobile()){ ?> <div>Этот блок появится только в мобильной версии сайта.</div> <?php } ?>
При этом важно, чтобы в корне шаблона не было папки mobile, т.к. автоматический режим более приоритетный.