Изменение названий модульных позиций в шаблоне

ЕСТЬ РЕШЕНИЕ ЗАКРЫТО InstantCMS 1.X

Мобильная версия на поддомене

#1 29 декабря 2016 в 22:35
Недавно столкнулся с проблемой. Решил сделать мобильную версию сайта на поддомене с использованием адаптивного шаблона, но название ряда позиций в новом шаблоне совпадает с названиями в действующем. В итоге не получается нормально расположить и вывести необходимые модули.
(Если кто-то не в курсе, в Instant при подключении двух сайтов к одной базе в админке все модули одинаково включены и выводятся на сайте; если выключить в одной админке, то и в другой выключается.)

Надо изменить названия модульных позиций в новом шаблоне (к примеру, поставить в начало каждой позиции "m-").

Как это сделать максимально легко?
#2 29 декабря 2016 в 23:34
Можно залезть в систему и сделать не одно поле с названием модуля, а два. Они должны быть с разными классами.
Затем для десктопного шаблона в первом поле задаем "display:none", и такой же стиль задаем в шаблоне для мобилок, но уже в другом поле. Это, конечно, мучительно)
#3 29 декабря 2016 в 23:51
я сразу не обратил внимание, что это для первой версии.

Возможно, что методом правок кода в шаблоне, можно вывести название модуля в шаблон (на данный момент это отображается только в админе). У вас будет отображаться два поля: заголовок и название. Задайте для них два класса. А что дальше делать с классами я уже писал в предыдущем сообщении

UPD: че мудрить-то с классами...
для одного шаблона вывести заголовок, а для второго название
#4 30 декабря 2016 в 00:43

Надо изменить названия модульных позиций в новом шаблоне (к примеру, поставить в начало каждой позиции "m-").

Карен М.

в template.php
потом добавить новые позиции в positions.txt
#5 30 декабря 2016 в 08:13

в template.php
потом добавить новые позиции в positions.txt

Нил™

Все сказано… Другой вопрос что обрамить дивами, как именно Вам необходимо распределить позиции.
#6 30 декабря 2016 в 23:29
Большое спасибо, Нил! Очень просто и вроде бы действует (пока в процессе пробы).
Рома, спасибо за помощь, но я постараюсь воспользоваться советом Нила.
Нил™, Rainbow, у меня возник вопрос, помогите, пожалуйста. К примеру, сочетание "top_menu" встречается в трех выражениях:
1. <?php if ($this->countModules('top_menu')) { ?>
2. <div id="top_menu">
3. <?php $this->printModules('top_menu'); ?>
Где менять, где не трогать?
#7 31 декабря 2016 в 04:48

1. <?php if ($this->countModules('top_menu')) { ?>

Карен М.
Условие, если есть модуль в позиции 'top_menu'

<div id="top_menu">

Карен М.
Стиль блока с модулем

<?php $this->printModules('top_menu'); ?>

Карен М.
Вывести модуль 'top_menu'
#8 31 декабря 2016 в 15:31

Где менять, где не трогать?

Карен М.
Смотря чего вы хотите.

@chameleon9, перевёл
+ если модуль находится в условии if, то его нужно еще добавить в верхнюю часть шаблона в блок
  1. // Получаем количество модулей на нужные позиции
  2. $mod_count['top'] = $this->countModules('top');
  3. $mod_count['topmenu'] = $this->countModules('topmenu');
  4. $mod_count['sidebar'] = $this->countModules('sidebar');
#9 2 января 2017 в 01:35
Друзья, большое спасибо, все получилось!
Если будет время, взгляните, пожалуйста, сюда. Вы мне очень поможете, если подскажете верное решение.
А эту тему можно уже закрывать, были даны исчерпывающие ответы. Спасибо!
#10 2 января 2017 в 01:37
Хорошо, когда есть профессионалы, которые помогут советом.
Используя этот сайт, вы соглашаетесь с тем, что мы используем файлы cookie.