Обучение программированию Python, PHP

×
Поиск по сайту

Работы по «MF». Подвал

Шаблоны для MaxSite CMSПросмотров: 4414Комментарии: 0

Главная сложность с подвалом, как оказалось — это многообразие блоков и их настроек. По задумке подвалов может быть много (десятки). Изначально я планировал их сделать в виде компонентов, что в итоге приводит к некоторой путанице в админке. Кроме того, каждый такой компонент должен иметь свои настройки: даже элементарное — название сайта и какие-то ссылки. Тут ещё нюанс в том, что блоки подвала как правило, имеют одну html-разметку в виде flex-колонок: меняется только содержимое внутренних ячеек. Я тогда подумал остановится на универсальном решении, что-то вроде footer-cols1 из Default-шаблона. Но такой компонент настраивается через опции, и если их немного, то проблем нет, но что делать, если я захочу предложить 10 блоков? Настраивать все поля опций — ещё то занятие...

Сама по себе проблема очень старая и относится не только к MaxSite CMS, но и другим «движкам». Нужен какой-то оптимальный вариант, который с одной стороны скроет сложную html/php/css-верстку от обычного пользователя, но при этом оставит ему всё многообразие настроек.

Новый компонент Cols1 (он будет только в шаблоне «MF») имеет всего лишь одно поле, где указываются адреса используемых файлов.

Компонент Cols1

Этот компонент сам сформирует flex-сетку. В подключаемом файле размещаются секционные опции, которые и описывают в простом виде что именно нужно выводить. На самом деле, сейчас это не важно, поскольку пользователь получит уже готовый файл, но я покажу один из файлов в качестве примера:

[options]
rules = 
autotag_simple = 1
tmpl = 0
container_css = layout-center-wrap bg-gray800 t-gray400 pad50-tb t90 links-no-color hide-print
wrap_css = layout-wrap flex flex-wrap flex-vcenter
[/options]
 
[col w20 w40-tablet]
h4(i-dribbble t-white) <span style="color: #00bfff;">MF</span> Site
[/col]
 
[col w55 w100-tablet flex-order2-tablet]
Великий Оксмокс предупреждал ее о злых запятых.
[/col] 
 
[col w20 w40-tablet]
h5(t-white) Адрес:
 
_ Франция, Париж, ул.Робеспьера, 42
[/col]

То есть останется только подправить тексты под свою задачу. Главная же «фишка» в том, что в секционных опциях прямо в названии секции можно указывать дополнительные опции. В этом примере секции [col] определяют каждую колонку/ячейку, но при этом сразу же указываются css-классы. Такой вариант сильно упрощает задание ячеек для неподготовленного пользователя. При этом компонент понимает пасер Simple и встроенный PHP-шаблонизатор, что вообще делает его «мега крутым». :-)

Для того, чтобы секционные опции получили такую возможность, мне пришлось внести небольшую доработку в MaxSite CMS. Правда обработка всё также ложится на плечи компонента. Так что пока это будет доступно только в MF.

На текущйи момент я сделал несколько подвалов. Все они с поддержкой адаптивности, но здесь я приведу только desktop-варианты.

Последний скриншот от компонента footer-copy-stat, который настраивается из админ-панели.

Напомню, что пока вы можете заказать шаблон MF по льготной цене 40$. Я окончательно решил, что данное предложение будет действовать только до 1 января 2019 года. После этого у него будет полная цена 75$ без скидок.

Оставьте комментарий!

Комментарий будет опубликован после проверки. Вы соглашаетесь с правилами сайта.

(обязательно)

MAXSITE.org
Блог о программировании.
Обучение программированию Python, PHP