Расположение файлов модуля в UMI.CMS
Основные факты, связанные с расположением файлов модуля относительно корня сайта:
Замечание 1. $module_name – имя модуля не должно совпадать с уже существующими в системе модулями. Список зарезервированных имен: news, content, catalog, data, autoupdate, comments, blogs, faq, filemanager, forum, vote, webforms, etc
Замечание 2. $template_name – имя файла шаблона. По умолчанию этот файл называется default.
Замечание 3. $skin_name – кодовое имя скина. Начиная с версии 2.8.* в системе используется скин mac – Butterfly. Начиная с версии 2.14.* по умолчанию используется скин Modern.
PHP код
PHP код модуля расположен в директории /classes/components/ /
Шаблоны скинов админки
XSLT шаблон скина административной панели /styles/skins/ /
FRONT-END шаблоны
FRONT-END шаблоны модуля. Шаблонизатор подключается по расширению файла. Существует три варианта расширений файлов: tpl, xsl, phtml
TPL шаблонизатор
Файлы лежат в /templates/имя_шаблона/tpls// .tpl Точкой входа является шаблон из папки /templates/имя_модуля/tpls/content/ .tpl ассоциированный с конкретной страницей в административной панели.
XSLT шаблонизатор
Все файлы шаблонов лежат в папке /templates/имя_шаблона/xslt/ . Любой файл может являться точкой входа. Правил, по которым упорядочиваются файлы в этой папке, на данный момент не существует.
PHP шаблонизатор
Все файлы шаблонов лежат в папке /templates/имя_шаблона/php/ . Любой файл может являться точкой входа. Правил, по которым упорядочиваются файлы в этой папке, на данный момент не существует.
Изображения и CSS стили
Изображения и CSS стили, относящиеся к конкретному модулю необходимо помещать в следующие папки:
- CSS файлы в папку styles/skins/modern/design/css/ .css
- IMG файлы используемые в административной панеле помещаются в папку соответствующего скина /images/cms/admin/ / внутри этой папки действуют собственные правила этого скина.
Иконки модуля
У модуля должны быть иконки определённых размеров для каждого скина. Базовое имя для иконки мы задали в файле инсталлятора ($INFO[‘ico’]).
- Cкин «Butterfly» — иконки для этого скина находятся в папке ~/images/cms/admin/mac/icons Для этого скина базовое имя для иконки игнорируется. Иконка должна носить имя модуля, тип иконки — прозрачный png
- ~/images/cms/admin/mac/icons/small/ .png — иконка 42×30 px
- ~/images/cms/admin/mac/icons/medium/ .png — иконка 64×64 px
- ~/images/cms/admin/mac/icons/big/ .png — иконка 95×95 px
- Cкин «Modern» — иконки для этого скина находятся в папке ~/images/cms/admin/modern/icon Для этого скина базовое имя для иконки игнорируется. Иконка должна носить имя модуля, тип иконки — прозрачный png
Иконки элементов в структуре сайта
Для каждого скина есть свой собственный набор иконок элементов отображаемых в дереве «структуры сайта». Спасает то, что пути для всех одинаковые:
- ~/images/cms/admin/mac/tree/ico_ _ .gif
Справка
В качестве справки загружается соответствующий файл из папки ~/man/, например, для страницы admin/content/seo/ при русском языке по умолчанию будет загружен файл /man/ru/content/seo.html
Установка кода UMI.CMS
Установить код Yagla на сайт созданный при помощи конструктора сайтов «UMI.CMS», вы можете воспользоваться нашей инструкцией.
Шаг 1
Зайдите на сайт через FTP и выберите каталог /tpls/content/
Шаг 2
В файл «header.inc.tpl» вставьте код виджета сразу после тэга . Если на вашем сайте используется несколько шаблонов, то установить таким образом код нужно во все шаблоны.
Шаг 3
Сохраните файл и обновите страницу вашего сайта.
Установка через панель администрирования
Можно установить код Yagla через панель администрирования (хотим предупредить, что в UMI.CMS это реализовано достаточно неудобно, лучше размещать код используя доступ по FTP).
Шаг 1
Войдите в административную панель UMI, перейдите на страницу, на которой будет размещаться виджет. Нажмите «Редактировать» (редактирование HTML).
Шаг 2
Вставьте код виджета, например, перед закрытием тэга .
Шаг 3
Сохраните страницу и обновите её на вашем сайте. Обратите внимание! Если редактировать этот блок ещё раз, UMI неправильно исправляет код виджета — нужно удалить код, стоящий на месте кода виджета и вставить его заново. Это придётся делать при каждом редактировании текста.
- Настройка связок с рекламной кампанией
- Регистрация
- Выбор аккаунта
- Создание аккаунта в Яндекс.Директ
- Прикрепление собственного аккаунта в Яндекс.Директ
- Прикрепление аккаунта Google Ads, созданного НЕ в Yagla
- Как пополнить аккаунт Реклама ВК
- Выбор тарифного плана
- Перенос рекламной кампании Google
- Разметка страниц
- Установка кода
- CMS WordPress
- Плагин для WordPress
- Принцип работы подменяемых элементов
- Заполнение подмен по методу 4U
- Настройки
- Отображение размера текста в редакторе
- Вид таблицы связок
- Очередность подмен в таблице:
- Отображение подмен из архива
- Настройка целей
- Как настроить цели в Yagla
- Отслеживание целей через CallTouch
- Отслеживание целей через Ringostat
- Тестирование вариантов
- Как добавить форматирование ко всем фразам через Excel
- Управление проектом. Удаление и перенос кампании.
- Передача доступа к рекламной кампании в Яндекс.Директ
- Обновление данных рекламной кампании
- Ввод в концепцию гиперсегментации
- Создание рекламного аккаунта в сервисе Yagla
- Выбор и оплата тарифа для собственного рекламного аккаунта
- Добавление собственного рекламного аккаунта
- Инструкция по переносу рекламных кампаний в Яндекс.Директе
- Инструкция по переносу рекламных кампаний в Google Ads
- Группировка ключевых запросов. Видеоинструкция
- Скрытие элементов сайта
- Как подменять видео на сайте
- Подмена в виде HTML кода
- Разметка страницы в продвинутом режиме
- Пополнение бюджета рекламных кампаний
- Как настроить цель типа «Событие»
- Полная экскурсия по кабинету и возможностям сервиса
- Создание рекламного аккаунта через Yagla
- Что делать после завершения настройки РК
- Пополнение бюджета рекламной кампании
- Бюджеты и аккаунты
- Обновление статистики по аккаунту
- Создание проекта связок
- Из каких кампаний создать проект связок
- Разметка
- Установка кода
- Как работать с таблицей связок
- Группировка
- Использование фильтра в группировке ключевых запросов
- Сортировка
- Работа с таблицей связок через Excel
- Конструктор подмен
- Настройки
- Очередность подмен
- Темный фон
- Текстовый редактор
- Расширенные настройки
- Скрытие исходных элементов сайта с помощью подмен
- Включение проекта связок
- Настройка целей
- Настройка тестирования
- Работа с запущенным проектом. Навигация
- Обновление данных
- Как попадают новые фразы в таблицу
- Добавление рекламного аккаунта, созданного НЕ в Yagla
- Выбор тарифного плана для аккаунта, созданного не в Yagla
- Гибкая настройка. Зачем она нужна
- Гибкая настройка. Как работать с utm-метками
- Статистика. Как читать графики
Интеграция с UMI.CMS
Для того, чтобы виджет правильно отображался на сайте под управлением UMI, нужно вставить код виджета в режиме редактирования html. Вот как это сделать:
1. Перейдите на страницу, которую хотите отредактировать, и нажмите «Редактировать»:
2. Выберите место, куда хотите вставить виджет и нажмите «Редактировать html»:

3. Вставьте код виджета в появившемся окне:

4. Сохраните страницу и обновите её. После нескольких секунд загрузки виджет появится на экране.
Обратите внимание! Если редактировать этот блок ещё раз, UMI неправильно исправляет код виджета. Нужно удалить код, стоящий на месте кода виджета и вставить его заново. Это придётся делать при каждом редактировании текста.
Как вывести контент страницы в UMI.CMS?
Как вывести контент страницы в UMI.CMS? Шаблонизатор PHP, нужно контент страницы доставка вывести на главной, как это делается в .tpl знаю, но здесь даже по инструкции не получается api.docs.umi-cms.ru/spravochnik_po_klassam_yadra_u.
- Вопрос задан более трёх лет назад
- 204 просмотра
Комментировать
Решения вопроса 0
Ответы на вопрос 1
Покажите код как вы делаете это в TPL.
И покажите код который вы пробуете, но не получается.
Ответ написан более трёх лет назад
Евгений М. @egvimar Автор вопроса
В .тпл сейчас нет времени искать, но когда делал это было без проблем.
Вы хотите вывести контент страницы на которой находитесь или другой (зная его ID) ?
Евгений М. @egvimar Автор вопроса
$content = $this->macros(‘content’, ‘insert’, array(73140)); ничего не выводит((((
Евгений М. @egvimar Автор вопроса
Есть страница контента в структуре сайта, контент этой страницы нужно вывести на главной странице.Вот я человеку дал ответ на такой же вопрос неделю назад.
Почитайте Как свойство из шаблона данных UMI получить в карточку товара?
Евгений М. @egvimar Автор вопроса
Евгений, мне не свойство нужно, а контент, которое по умолчанию идет поле, и не в карточку товара а просто на главную, чтобы при редактирование на главной поменялось тоже.

Евгений М., причем тут тип страницы или какое свойство, вы либо вообще незнакомы с системой либо вам лень почитать ссылку которую вам предоставили.
$hierarchy = umiHierarchy::getInstance(); $page = $hierarchy->getElement($page_id);И уже в нужном месте вставляете вывод контента. Контент это свойство страницы с итендификатором как правило CONTENT. Если контент содержится в другом поле — посмотрите в каком и выводите его.
content ?>Ответ был по ссылки которую я вам дал.

Евгений М. @egvimar Автор вопроса
Евгений, спасибо, но я не понимаю почему не работает так как у них в инструкции написано, ведь это готовые системные макросы
$content = $this->macros('content', 'insert', array(290));Евгений М., сложно сказать почему у вас не работает.
Евгений найдите в системных файлах и посмотрите код который вы вызываете. Это тоже самое что и я вам дал. Вы вызовите ваш макрос и посмотрите что он отдает вообще var_dump.
Может вы вообще не получаете доступ к странице./** * Возвращает контент страницы * @param int|string $elementId идентификатор или адрес страницы * @return bool|Mixed|null|string */ public function insert($elementId) < $hierarchy = umiHierarchy::getInstance(); $cmsController = cmsController::getInstance(); $currentElementId = $cmsController->getCurrentElementId(); $elementId = trim($elementId); if (!$elementId) < return '%content_error_insert_null%'; >$elementId = (int) is_numeric($elementId) ? $elementId : $hierarchy->getIdByPath($elementId); if ($elementId == $currentElementId) < return '%content_error_insert_recursy%'; >if (!$elementId) < return '%content_error_insert_null%'; >$element = $hierarchy->getElement($elementId); if ($element) < $this->module->pushEditable('content', '', $elementId); return $element->content; > return '%content_error_insert_null%'; >
- Как настроить цели в Yagla
- CMS WordPress
