Содержание
Разработка дизайна сайта с использованием модульной сетки — CMS Magazine
Сегодня я решил поделиться с коллегами одним из учебных кейсов пошагового построения дизайна сайта с использованием модульной сетки.
Эту методику я демонстрирую студентам в рамках своего тренинга и использую в ежедневной работе. Возможно, некоторым она окажется полезной.
Итак, приступим:
Больше не нужно искать и обзванивать каждое диджитал-агентство
Создайте конкурс на workspace.ru – получите предложения от участников CMS Magazine по цене и срокам. Это бесплатно и займет 5 минут. В каталоге 15 617 диджитал-агентств, готовых вам помочь – выберите и сэкономьте до 30%.
Создать конкурс →
1. Определяем функциональность
Анализируем задачи проекта и потребности его пользователей. Выявляем самое важное. Формируем функциональность проекта, структуру и состав страниц, которые будут ее решать.
Выявляем самые сложные и важные страницы. Именно с них начнется работа. Формируем для них список функциональности и сортируем его по приоритетам.
Описываем каждый блок функциональности, детализируя до уровня отдельных элементов. У нас должен получиться многоуровневый список, который описывает логические блоки страницы и составляющие их элементы.
Это наше «лего» — кубики, которые высыпали горкой из ведерка. Теперь осталось только их взять из списка и поставить на нужное место.
2. Эскиз
После того как определили все, что мы должны учесть в нашем дизайне, рисуем на бумаге эскиз ключевой страницы.
Переносим наш список функциональности, блок за блоком. Экспериментируем, смело рисуем, перебираем варианты, ищем оптимальное решение. Рисуем, черкаем. Бракуем, не жалея. Благо, схематичное выражение мыслей на бумаге занимает буквально минуты.
Вот что получилось у меня:
Только после того как мы выразили на бумаге основной замысел, который реализует необходимую функциональность и креативную идею, можно включать компьютер.
3. Строим модульную сетку
Работу над дизайном начинаем с построения модульной сетки. Для этого смотрим свой эскиз, анализируем количество колонок и поясов, а также горизонтальных и вертикальных членений. Все это нам подсказывает, какую сетку мы будем строить.
В моем случае я решил использовать как основу для вертикального членения колоночную сетку на 12 юнитов от 960grid. После этого я стал ее обогащать, чтобы получить модульную сетку.
Исходя из тематики и предварительного замысла сайта я определил, какой шрифт, кегль и межстрочник будут у основного набора текста. Приняв это решение, я ввел в макет шрифтовую сетку, на ее основе построил вертикальное членение, которое задает макету вертикальный ритм. На пересечении горизонтальных и вертикальных членений получилась сетка модулей.
Именно модульная и шрифтовая сетка нам потребуются для дальнейшей работы.
От редакции
Возможно, некоторым это покажется удивительным, но в веб-дизайне творчество напрямую связано с использованием бесчисленного числа технических приемов, элементов и знаний. Грамотное использование сетки — не исключение. Рядовым заказчикам сайтов знать такие тонкости ни к чему. Главное – выбрать подрядчика, который все это знает. Как это сделать?
Например, при помощи Рейтинга креативности веб-студий. В нем уже учтены победы компаний в таких престижных конкурсах сайтов как «Рейтинг Рунета», «Золотой сайт», Awwwards, FWA, Webby Awards и CSS Design Awards. Так что, выбирая себе подрядчика из числа участников топ-100, можете не сомневаться в его компетенциях.
4. Прототипируем
Когда модульная сетка построена, мы переносим на экран эскиз, пользуясь сеткой для определения размеров и положения элементов. В случае необходимости можно незначительно отклоняться от эскиза в пользу сетки.
Не тратя время на детализацию, накидываем смысловые, графические и текстовые блоки. Я себе позволяю на этой фазе решать вопросы, связанные с типографикой. Но часто это лишнее.
5. Оформляем
Результатом нашей работы стал полноценный прототип. Все размеры и положения элементов найдены. Можно приступать к оформлению.
Дорабатываем типографику, вводим цвета, эмоции, расставляем акценты, прорабатываем детали. При необходимости подключаем иллюстраторов или фотографов.
6. Развиваем идею
Когда оригинал-макет ключевой страницы готов, можем приступить к реализации остальных.
Делаем блочные эскизы страниц на бумаге. Если функциональность сложная или сильно отличается от ключевой страницы, прототипируем необходимые участки.
Благодаря тому что модульная сетка, типографика и общая визуальная стилистика сайта уже найдены, мы быстро реализуем наши страницы в дизайне.
Вуаля! Пара рабочих дней — и дизайн проекта готов к передаче разработчикам.
Вместо резюме
Сетка для дизайнера — мощная вспомогательная конструкция. Единая система пропорций и координат для положения и размеров всех элементов дизайна. Забирает на себя рутинные задачи. Позволяет микро- и макро-шаблонирование, дает возможность для формирования библиотеки паттернов и графических элементов.
Дизайн бессознательно воспринимается более комфортным и упорядоченным. Структурность и визуальная иерархия элементов обеспечивают более быстрое считывание информации. Нам проще направлять внимание пользователя. Сетка — это гармоничное восприятие и эстетичность простых решений на минимальных выразительных средствах.
Верстальщики получают бонусы в виде упрощения коммуникации с дизайнерами, стандартизаци решений и сокращения объемов кода, выработки фреймоворка проекта и многократного использования готовых элементов.
Сетка дает цельность и единообразие результата — что особенно важно в командной работе над масштабными или долговременными проектами. Кроме этого, снижается «порог входа» для новых участников.
Общая скорость дизайна, разработки, развития и модификации проекта значительно увеличиваются, а трудозатраты снижаются, что увеличивает эффективность работы каждого специалиста и команды в целом.
Вычитано Протекстом.
Модульные страницы — Документация Grav CMS на русском
Концепция модульных страниц сначала немного сложна для понимания, но когда вы с этим справитесь, вы увидите, насколько удобны они в использовании. Модульная страница — это набор страниц, уложенных друг на друга для создания единой страницы. Это позволяет создавать сложную структуру страниц, используя подход кирпичиков LEGO — и кто не любит LEGO?!
Что такое модульные страницы и чем они не являются?
В Grav страницы — это широкая концепция, охватывающая практически любые комбинации элементов, которые вы можете себе представить при посещении веб-сайта. Важно отметить, что модульные страницы — это подмножество этой концепции, но не то же самое, что и обычные страницы. Обычная страница является достаточно автономной в том смысле, что Grav будет отображать и отображать её независимо от другого контента, такого как другие страницы или дочерние страницы. Однако модульная страница не имеет дочерних страниц. Это можно проиллюстрировать, представив простую структуру страницы.
На обычной странице по адресу domain.com/books есть подробная информация о том, какие книги продаются. Для этой страницы существует несколько дочерних страниц, например domain.com/books/gullivers-travels и domain.com/books/the-hobbit. Их папки названы так же, как и адрес, который отображает Grav: /pages/books
, /pages/books/gullivers-travels
и /pages/books/the-hobbit
. Эта структура не будет работать на модульной странице.
Модульная страница не имеет дочерних страниц в том же смысле, скорее у нее есть модули, которые составляют части страницы. Таким образом, вместо различных книг, расположенных под страницей верхнего уровня, модульная страница отображает свои модули на той же странице. «Путешествия Гулливера» и «Хоббит» появляются в domain.com/books с путями /pages/books/_gullivers-travels
и /pages/books/_the-hobbit
. Таким образом, модульные страницы не совместимы напрямую с обычными страницами и имеют свою собственную структуру.
Пример структуры папки
Используя наш одностраничный каркас в качестве примера, мы более подробно объясним, как работают модульные страницы.
Модульная страница состоит из страниц, которые существуют во вложенных папках, находящихся в основной папке страницы. В случае нашего одностраничного скелета эта страница находится в папке 01.home
. В этой папке находится единственный файл modular.md
, который сообщает Grav, какие подстраницы нужно использовать для сборки модульной страницы и в каком порядке их отображать. Имя этого файла важно, потому что оно указывает Grav использовать modular.html.twig
— шаблон из текущей темы для рендеринга страницы.
Эти подстраницы находятся в папках, имена которых начинаются с символа подчеркивания (_
). Используя подчеркивание, вы сообщаете Grav, что это модули, а не отдельные страницы. Например, папки-подстраницы могут называться _features
или _showcase
. Эти страницы не маршрутизируемы — на них нельзя указывать непосредственно в браузере, и они не видны — они не отображаются в меню.
В случае нашего одностраничного скелета мы создали структуру папок, показанную ниже.
Каждая подпапка содержит файл Markdown, который действует как страница.
Данные в этих папках модулей, включая файлы Markdown, изображения и т. д., затем извлекаются и отображаются на странице Modular. Это достигается путем создания первичной страницы, определения Коллекции страниц в YAML FrontMatter первичной страницы, а затем повторения этой коллекции в шаблоне Twig для создания объединенной HTML-страницы. В теме уже должен быть шаблон modular.html.twig
, который будет делать это и будет использоваться при создании типа модульной страницы. Вот простой пример из modular.html.twig
:
{% for module in page.collection() %} {{ module.content }} {% endfor %}
Вот пример полученной модульной страницы с выделением различных используемых модульных папок.
Настройка основной страницы
Как видите, каждый раздел извлекает контент из разных папок модуля. Определение того, какие папки модуля используются и в каком порядке, происходит в первичном файле Markdown в родительской папке модуля. Вот содержимое файла modular.md
в папке 01.home
.
--- title: One Page Demo Site menu: Home onpage_menu: true body_classes: "modular header-image fullwidth" content: items: '@self.modular' order: by: default dir: asc custom: - _showcase - _highlights - _callout - _features ---
Как видите, в этом файле нет фактического содержимого. Всё обрабатывается в YAML FrontMatter в шапке. Здесь находятся Заголовок страницы, Меню и другие настройки, которые можно найти на обычной странице. Параметр Content инструктирует Grav создавать контент на основе коллекции модульных страниц и даже предоставляет настраиваемый ручной порядок их рендеринга.
Модули
Markdown-файл для каждого модуля может иметь свой собственный шаблон, настройки и т. д. Для всех целей и задач он имеет большинство функций и настроек обычной страницы, просто он не отображается как единое целое. Мы рекомендуем разместить настройки всей страницы, такие как taxonomy, в основном файле Markdown, который контролирует всю страницу.
Сами модульные страницы обрабатываются так же, как и обычные страницы. Вот пример использования файла text.md
на странице _callout
, которая появляется в середине модульной страницы.
--- title: Homepage Callout image_align: right --- ## Content Unchained Вы больше не раб своей CMS. **Grav** дает вам возможность создавать что угодно: [простой одностраничный сайт](#), [красивый блог](#), мощный и многофункциональный [сайт продукта](#) или почти все, что вы можете придумать!
Как вы можете видеть, заголовок страницы содержит основную информацию, которую вы можете найти на обычной странице. Он имеет свой собственный заголовок, на который можно ссылаться, и пользовательские параметры страницы, такие как выравнивание изображения, могут быть установлены здесь, как и на любой другой странице.
Файл шаблона для файла text.md
должен находиться в папке /templates/modular
вашей темы и называться text.html.twig
. Этот файл, как и любой файл шаблона Twig для любой другой страницы, определяет настройки, а также любые различия в стилях между ним и базовой страницей.
<div> {% set image = page.media.images|first %} {% if image %} {{ image.cropResize(400,400).html('','','align-'~page.header.image_align) }} {% endif %} {{ content }} </div>
Как правило, модульные страницы очень просты. Вам просто нужно привыкнуть к мысли, что каждый раздел на вашей странице определяется в Модуле, который имеет свою собственную папку под фактической страницей. Все они отображаются для ваших посетителей сразу, но организованы несколько иначе, чем обычные страницы. Не стесняйтесь экспериментировать и узнайте, сколько вы можете сделать с модульной страницей в Grav.
Введение — ContentBox Modular CMS
____ _ _ ____
/ ___|___ _ __ | |_ ___ _ __ | |_| __ ) _____ __
| | / _ \| ‘_ \| __/ _ \ ‘_ \| __| _ \ / _ \ \/ /
| |__| (_) | | | | || __/ | | | |_| |_) | (_) > <
\____\___/|_| |_|\__\___|_| |_|\__|____/ \___/_/\_\
ContentBox Modular CMS — v5. x
ContentBox
ContentBox — профессиональная система с открытым исходным кодом гибрид модульная CMS (система управления контентом), которая позволяет легко создавать веб-сайты, блоги, вики, сложные веб-приложения и даже мобильные или облачные приложения. Построенный на безопасном и гибком модульном ядре, рассчитанный на масштабирование и в сочетании с поддержкой мирового класса, ContentBox позволит реализовать ваши проекты в кратчайшие сроки.
Гибрид — ContentBox — это не только безголовая CMS, но и полнофункциональная традиционная CMS. Имейте свободу использовать один или оба! Теперь у тебя есть власть!
Управление версиями
ContentBox поддерживается в максимально возможной степени в соответствии с рекомендациями по семантическому управлению версиями. рекомендации:
Нарушение обратной совместимости сбрасывает основной (и сбрасывает второстепенный и исправление)
Новые дополнения без нарушения обратной совместимости нарушают второстепенный (и сбрасывают исправление)
Исправление ошибок и другие изменения нарушают патч
Лицензия
ContentBox Modular CMS с открытым исходным кодом и под лицензией Apache 2 License. Ortus Solutions, Corp, создатель ContentBox, также может предлагать коммерческие и поддерживаемые версии.
Авторские права принадлежат Ortus Solutions, Corp
ContentBox является зарегистрированным товарным знаком Ortus Solutions, Corp
Дискуссионную группу и сообщество ContentBox можно найти здесь: https://community. ortussolutions.com/c/communities/contentbox/15
Сообщение об ошибке
Все мы время от времени совершаем ошибки 🙂 Итак почему бы не сообщить нам об этом и помочь нам. Мы также любим запросы на вытягивание, поэтому, пожалуйста, отметьте нас и создайте форк: https://github.com/Ortus-Solutions/ContentBox
Автор Jira: https://ortussolutions.atlassian.net/browse/CONTENTBOX
Профессионал с открытым исходным кодом
Ortus Solutions, Corp
ContentBox — это профессиональное программное обеспечение с открытым исходным кодом, поддерживаемое Ortus Solutions, Corp Service Services, такая как:
Custom Development
Профессиональная поддержка и наставничество
Профессиональная поддержка и наставничество
.
Повышение безопасности
Проверка кода
Многое другое
9003
9003
Ресурсы
Официальный сайт: https://www.contentboxcms.org Трекер: https://ortussolutions.atlassian.net/browse/CONTENTBOX
Twitter: @gocontentbox
Facebook: https://www.facebook.com/gocontentbox
Канал Vimeo: http://vimeo.com/channels/contentbox
Сообщество Ortus: https://community. ortussolutions.com/c/communities/contentbox/15
ЧЕСТЬ БОГУ ВЫШЕ ВСЕГО
Благодаря Его милости этот проект существует. Если вам это не нравится, то не читайте, это не для вас.
«Итак, оправдавшись верой , мы имеем мир с Богом через Господа нашего Иисуса Христа:
через Которого и получили мы доступ верою к той благодати , в которой стоим и хвалимся надеждою славы Божией» Римлянам 5:5
Модульная CMS ContentBox
Модульное управление контентом
ContentBox — это профессиональный модульный механизм управления контентом с открытым исходным кодом (лицензия Apache 2), который позволяет легко создавать веб-сайты, блоги, вики, сложные веб-приложения и веб-сервисы RESTFul. Его также можно использовать как полноценную CMS Headless или как гибридную CMS. Построенный на безопасном и гибком модульном ядре, рассчитанный на масштабирование и в сочетании с поддержкой мирового класса, ContentBox позволит реализовать ваши проекты в кратчайшие сроки. ContentBox CMS можно развернуть на любом механизме ColdFusion/CFML или любом контейнере сервлетов Java.
Скачать техническое описание
Solid Foundation
ContentBox построен на основе надежной иерархической платформы MVC с открытым исходным кодом; Платформа ColdBox, которая поддерживает приложения ColdFusion/CFML с 2005 года и используется тысячами разработчиков по всему миру. Используется такими клиентами, как NASA, ESRI, Adobe TV, FAA, GE и многими другими. ContentBox был разработан с использованием богатой объектно-ориентированной модели контента на основе Hibernate, де-факто стандартного Object Relational Mapper, и может работать в любой среде Java. Вся наша инфраструктура построена с учетом масштабируемости и развертывания в облаке.
Модульность
ContentBox — это не традиционное и монолитное приложение CMS, а комбинация модулей ColdBox, которые предоставят вам возможности CMS. Вы также можете расширить любое веб-приложение с помощью этих возможностей. Больше не ограничивайтесь точками расширения приложения, а расширяйте и масштабируйте модульно.
Портативность
ContentBox имеет собственный образ ContentBox Docker. Образ поставляется с автономной экспресс-версией, которая использует базу данных h3 в памяти и может легко распространяться на несколько реплик. Чтобы поднять изображение для целей тестирования, просто запустите:
docker pull ortussolutions/contentbox && докер запустить -p 8080:8080 \ -e экспресс=истина \ -e установить=истина \ ortussolutions/contentbox
Наш образ также имеет следующие возможности:
- Встроенная база данных или подключение к любой СУБД
- Проверка работоспособности изображений и приложений
- Поддержка SSL
- Распределенное кэширование
- Распределенные сеансы
- Сохранение данных
- Пользовательские монтирования данных
Подробнее о поддержке Docker
Официальный сайт
Монтаж
Загрузки
Функции
Документация
Документация по API
Документация по безголовому API
Поддержка сообщества
Исходный код
Трекер проблем
Видео
Соединение ContentBox
Спонсорское развитие
Поддержка и обучение
Станьте спонсором, чтобы помочь в разработке этого продукта.
- Галерея изображений
- Для менеджеров
- Для разработчиков
- Для дизайнеров
- Для правительства
- Контейнер готов
ContentBox обеспечивает полный контроль над вашим контентом.
- Возможности автоматического обновления
- Интегрированная и настраиваемая система безопасности на основе ролей разрешений
- Настраиваемый брандмауэр безопасности
- Управление версиями содержимого с журналами фиксации изменений, откатом и представлениями различий
- Менеджеры содержимого и кэша данных с отчетами
- Системы публикации и истечения срока действия контента
- Возможность развертывания модулей пользовательского интерфейса и администратора на разных серверах
- Возможность импорта данных из других систем CMS
- Расширенные правила модерации комментариев
- Медиа-менеджер с подробным контролем разрешений
- Возможность резервного копирования вашей системы
- Возможность перевести сайт в режим обслуживания
- Возможность включения векторов атаки с ограничением скорости и входом в систему
ContentBox обрабатывает скучные части за вас, чтобы вы могли кодировать интересные части.
- Модульная архитектура MVC
- Расширение за счет событийно-ориентированного программирования с более чем 100 различными событиями
- Внедрение зависимостей и основы АОП
- Создание настраиваемых типов контента
- Подключаемые пользовательские механизмы безопасности
- Создание многоразовых виджетов содержимого
- Расширение возможностей администратора, редакторов и даже пользовательского интерфейса с помощью модулей ContentBox
- API для интеграции с другими модулями или даже приложениями
- API системы меню для расширения пользовательского интерфейса администратора
- Интегрированная документация API
- Онлайн-редактор веб-кода с подсветкой синтаксиса
- Возможность создания и интеграции приложений благодаря ядру платформы ColdBox
ContentBox — это масштабируемая и эффективная платформа для предоставления государственных приложений и веб-сайтов.
- Возможность развертывания модулей пользовательского интерфейса и администратора на разных серверах
- Доступны версии с открытым исходным кодом и коммерческие версии
- Возможность применения ограничения скорости
- Возможность применять отслеживание входа и журналы аутентификации
- Возможность развертывания на любом сервере с поддержкой Java
- Простое развертывание в кластере серверов
- Платформа двухфакторной аутентификации
- Правила пароля
- Ознакомьтесь с нашим заявлением о возможностях
Contentbox готов к использованию в облаке и бесконечно масштабируем.
- Выделенный образ Docker, полностью оптимизированный для облачных развертываний
- включают в себя:
- Встроенное распределенное кэширование и хранилище сеансов
- Переопределение среды для общих параметров и путей к файлам
- Облегченный механизм контейнеров сервлетов, оптимизированный для повышения производительности
- Поддержка мультиплатформенных СУБД
- Полная настройка и конфигурация Coldbox
ContentBox в Docker Hub
Функции образа Docker
Вы можете быстро приступить к работе с ContentBox, воспользовавшись CommandBox, нашим интерфейсом командной строки и менеджером пакетов или нашими образами Docker.
Контентбокс CLI
Вы можете легко установить ContentBox с любым движком и базой данных CFML, используя наш инструмент командной строки:
установить контентбокс-кли mkdir мой сайт --cd мастер установки contentbox
Докер
Вы можете использовать наш образ докера для ContentBox или создавать отличные стеки развертывания с распределенными сеансами, контентом и многим другим.
docker pull ortussolutions/contentbox && докер запустить -p 8080:8080 \ -e ЭКСПРЕСС=истина \ -e УСТАНОВИТЬ=истина \ ortussolutions/contentbox
Примечание: Перед выполнением команд убедитесь, что вы находитесь в пустой папке и в интерактивной оболочке CommandBox. Просто откройте исполняемый файл CommandBox или введите в поле
, чтобы запустить нашу интерактивную оболочку.
Отсюда вы можете скачать различные версии ContentBox. Ты
также можете посетить наш
Сервер артефактов
чтобы просмотреть всю нашу коллекцию загрузок. Обратите внимание, что мы предпочитаем устанавливать ContentBox через наш
контентбокс-кли
.
ContentBox v5.1.0
Дата выпуска: 18 марта 2022 г.
Кодовое имя
: Псалом 143:1
Выберите ContentBox
Модуль для загрузки ContentBox в виде набора модулей для развертывания на
существующий ColdBox
заявление. Выбирать
Установщик для загрузки полного сайта ColdBox с установщиком ContentBox.
Выбирать
Сайт для загрузки полного сайта ColdBox с ContentBox, но без
установщики.Выберите
Контентбокс
WAR для развертывания на выбранном вами движке Java или ContentBox
Express , чтобы загрузить автономную установку одним щелчком, включая
встроенный
база данных, отлично подходит для демонстраций или встраиваемых сайтов!
Вы также можете найти все наши патчи в нашем
Артефакты интеграции
Репозиторий
Нужен новый веб-сайт или новое информационное приложение?
Нет проблем, мы в Ortus можем помочь вам реализовать ваш следующий проект и реализовать его в рекордно короткие сроки.