Мобильная версия шаблона блока или страницы — различия между версиями

Материал из Umicms
Перейти к:навигация, поиск
(Новая страница: «'''Актуально для версии 18''' При использовании PHP-шаблонизатора, возможно создать мобильн…»)
 
Строка 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, т.к. автоматический режим более приоритетный.