я вообще запутался что делать и с чего начинать, можно мне какое задание. что я могу сделать?
Универсальный шаблонизатор для Bro
yura_coя вообще запутался что делать и с чего начинать, можно мне какое задание. что я могу сделать?
@yura_co пока что подождать немного, саму суть уловили с шаблонизатором, теперь бы создать конструктор, где можно скомбинировать все блоки, сам макет сайта в HTML формате пока что интересен, вроде @ocdroid - взялся за создание, сейчас подискиваю решение (так же с вами консультируюсь) по управлению блоками, чуть позже отправлю схему, как примерно вижу я, на утверждение в альянсе.
важно сейчас получить "HTML" макет сайта, который будет сразу и адаптивным под устройства и с дополнительными стилями (тоесть что бы сделать меню с фиксированной ширины на полную - необходимо поменять только один класс), тогда я могу нарезать блоки с этого макета и начать конструировать шаблонизатор, по принципу "drag & drop", пока что приоритет №1 - это HTML макет, с моей же стороны - логика конструктора.
отказываемся от бутстрапа?
а есть ли альтернатива, поддерживаемая в передовых браузерах ?
@ALarik , ну можно оставить классы и под них подверстать стили, но убрать кучу ненужного шлака, которую тянет буцтрап за собой.
И совместимость останется и легче станет. Как пример - skeleton framework
UPD: я бы еще и от font-awesome если не избавился, то хотя бы альтернативу какую прикрутил. ico-moon весьма ничего так выглядит
И совместимость останется и легче станет. Как пример - skeleton framework
UPD: я бы еще и от font-awesome если не избавился, то хотя бы альтернативу какую прикрутил. ico-moon весьма ничего так выглядит
@ocdroid, а мне вообще не понятно зачем эти рисунки, вродь векторный простой рисунок сейчас и в школе учат рисовать
yura_co@ocdroid, а мне вообще не понятно зачем эти рисунки, вродь векторный простой рисунок сейчас и в школе учат рисовать
ну, куда проще к менюшке выбрать своеобразную иконку, что бы уникализировать меню, телефон или ещё какой то элемент, например е-меил, вроде мелочь, но упрощает.
насколько лучше использовать какую библиотеку - это уже вам решать, уважаемые специалисты, если есть какое то сомнение - можно вынести на согласование и принять решение.
fontawesome банально приелся.
как вариант:
https://icons8.com/line-awesome
А если делать выбор иконпака, то хз.. Задавать глобал с маркером и рендерить шаблон на его основе.
типа, this->render->fa_cart_twig || this->render->im_cart_twig
но ради иконок кучи шаблонов городить... как-то сомнительное удовольствие. Как и кучу else-if в шаблонах использовать
Так что я скорее за обычную замену fontawesome.
И line-awesome, как по мне - отличная альтернатива. Выглядит свежее и адаптируется очень легко.
как вариант:
https://icons8.com/line-awesome
А если делать выбор иконпака, то хз.. Задавать глобал с маркером и рендерить шаблон на его основе.
типа, this->render->fa_cart_twig || this->render->im_cart_twig
но ради иконок кучи шаблонов городить... как-то сомнительное удовольствие. Как и кучу else-if в шаблонах использовать
Так что я скорее за обычную замену fontawesome.
И line-awesome, как по мне - отличная альтернатива. Выглядит свежее и адаптируется очень легко.
я за свежие решения. кстати. о иконках... так как многие используют в контактах мобильные телефоны разных операторов может сразу предусмотреть настройку телефонов с возможностью или подгружать иконку или сделать готовый набор иконок?
я интегрирую всю, что вы выберете, главное утвердить, что бы каждую недели не обновлять по хотелкам шаблонизатор или... установить возможность с админки добавлять библиотечность виджета (например захотел фонтевсаме - пжалуйста, захтотел line-awesome - подключи себе сам или через конфиг), но оставить возможность через админку это дело мануально добавлять с инструкцией по использованию, как смотрите ?
а какую тему выбрать для дефолта?
имею ввиду расположение блоков и форма модулей
имею ввиду расположение блоков и форма модулей
ALarikили... установить возможность с админки добавлять библиотечность виджета
вот я о том, как это в шаблонах будет выглядеть?
{% if fontawesome %}
<i class="fa fa-cart"></i>
{% else if lineawesome %}
<i class="la la-cart"></i>
{% endif %}
Так? Что-то неохота так)) А выбор особо и невелик. Или так, или рендерить (и соответственно создавать) шаблон под каждый иконпак.
Неудобно.
Хотя, конкретно для fontawesome & lineawesome это может выглядеть так:
<i class="{{ iconclass }}-cart"></i>
:)
Но с другими не сработает - имена разные
смотрите, как вижу я:
модули (все) имеют одинаоквый класс и настройку, если:
а) расположены в контентной части
б) расположены в боковых колонках
так же, при верстке макета, нужно:
модули (все) имеют одинаоквый класс и настройку, если:
а) расположены в контентной части
б) расположены в боковых колонках
так же, при верстке макета, нужно:
- учитывать настройки блоков, что бы при смене названия класса, менялась с box <---> fullwidth, absolute <---> sticky и т.д.,
- учитывать использование статического css файла, а не "ин-лайн" стилей, которые прописаны в шаблонизаторе
- расположение блоков
а почему вот так не сделать:
в админке - подключаем либу, векторы который выводим на фронте, а уже в самом шаблоне, просто указываем:
и если вдруг, никакой либы не подключено - гахнуть дефолтный или невидимый, на фронте - хотелось бы все выводить уже в готовый каркас, без свитчера, все переключалки - до момента шаблона должны быть готовы, по типу:
в админке задаем, а в контроллере (перед view) получаем что то типа этого:
где 'split' - свойство, указывающее на объединение блоков с предыдущим и ЕСЛИ предыдущий в FALSE то - со следующим
в админке - подключаем либу, векторы который выводим на фронте, а уже в самом шаблоне, просто указываем:
<i class="{{ my_fontavsome }}"></i>и если вдруг, никакой либы не подключено - гахнуть дефолтный или невидимый, на фронте - хотелось бы все выводить уже в готовый каркас, без свитчера, все переключалки - до момента шаблона должны быть готовы, по типу:
в админке задаем, а в контроллере (перед view) получаем что то типа этого:
$style_data['theme_header'] = array(
'header_top_left' => array (
'block_1' => $logo,
'block_2' => false,
'block_3' => $login
),
'header_top_centr' => array (
'block_1' => $phones,
'block_2' => $search,
'block_3' => false
),
'header_top_right' => array (
'block_1' => false,
'block_2' => array($currency, $language, $cart),
'block_3' => 'split'
),
'menu' => array (
'width' => 'full',
'level' => 3,
'icons_parent' => true,
'icons_vendor' => 'fontawsome',
'color_palitra' => $medovo_gorchichnaya,
'position' => 'fixed'
),
);
где 'split' - свойство, указывающее на объединение блоков с предыдущим и ЕСЛИ предыдущий в FALSE то - со следующим
@ALarik насчет иконок, вот смотри:
у тебя иконка входа, допустим в фонтасоме имеет class="fa fa-user", а в икомуне class="ico-customer", вот мне и интересен этот момент, где ты будешь разбор проводить, что именно должно в {{ icon_user }} выводиться.
Красиво сработает только с fontawesome и lineawesome - я выше дополнял сообщение. У них классы одинаковые, только префиксы отличаются
А по поводу контроллера шаблона - да, это оно. Вот так я это и вижу.
у тебя иконка входа, допустим в фонтасоме имеет class="fa fa-user", а в икомуне class="ico-customer", вот мне и интересен этот момент, где ты будешь разбор проводить, что именно должно в {{ icon_user }} выводиться.
Красиво сработает только с fontawesome и lineawesome - я выше дополнял сообщение. У них классы одинаковые, только префиксы отличаются
А по поводу контроллера шаблона - да, это оно. Вот так я это и вижу.
рад что сошлись в некоторых моментах, по поводу
то как раз в этом то и суть, что сидеть и добавлять весь массив иконок, доступный в либо, для темплейта, долго ? ДА, муторно ? ещё бы, копипаста ? та пох! Главное - что потом один раз добавил и готовый конфиг, я могу с этим подзапарится, потом каждый добавит по одной иконке, глядишь и полноценный конфиг, в голом конструкторе, я это вижу так (конкретно под иконки):
это из общего конфига темплейта - небольшая часть, в самом же конструкторе, это просто подгрузка обязательных массивов и подключение к перебору, на примере вот так (админка):
если нет либы или нужно указать иконки свои, то вендор, например, можно указать не "fontawesome", а "bronhilda" и перебор не "фа"-шек будет в массиве айконс, а локальные рисуночки, относительно данных конфига, тоесть тут подход довольно интересный с шаблонизатором получается, тут хочу совет спросить у @SlaSoft и @OCappLab , если получив массив данных и его хэш (для проверки), можем ли мы генерировать статический хедер, который не будет иметь динамических данных, кроме "корзины" например, которая так же будет аяксом подгружена в момент либо добавления товара либо при онклике ? что имею ввиду, так это генерацию, по типу твига, на на порядок проще, статических блоков, проверяя хэш конфига, где вместо подключения, например футера:
под катом
будет вот такой вот сгенерированный статический файл, в зависимости от языковой переменной:
под катом 2
<i class="{{ my_fontavsome }}"></i>то как раз в этом то и суть, что сидеть и добавлять весь массив иконок, доступный в либо, для темплейта, долго ? ДА, муторно ? ещё бы, копипаста ? та пох! Главное - что потом один раз добавил и готовый конфиг, я могу с этим подзапарится, потом каждый добавит по одной иконке, глядишь и полноценный конфиг, в голом конструкторе, я это вижу так (конкретно под иконки):
$data['font'] = array(
'vendor' => 'fontawesome',
'prefix' => 'fa',
'integrate' => array('menu_horizontal', 'wishlist', 'compare'),
'icons' => array(
'fa-bug',
'fa-calculator',
'fa-search',
...
'fa-quote-left'
)
);
это из общего конфига темплейта - небольшая часть, в самом же конструкторе, это просто подгрузка обязательных массивов и подключение к перебору, на примере вот так (админка):
<div class="form-group">
<label class="col-sm-2 control-label" for="input-font">{{ entry_font_icon_parent_menu_categories }}</label>
<div class="col-sm-10">
<select name="config_font_cat_id" id="input-font" class="form-control">
{% for icon in font.icons %}
{% if icon == config_font_cat_id %}
<option value="{{ icon }}" selected="selected"><i class="{{ icon }}"></i></option>
{% else %}
<option value="{{ icon }}"><i class="{{ icon }}"></i></option>
{% endif %}
{% endfor %}
</select>
</div>
</div>
если нет либы или нужно указать иконки свои, то вендор, например, можно указать не "fontawesome", а "bronhilda" и перебор не "фа"-шек будет в массиве айконс, а локальные рисуночки, относительно данных конфига, тоесть тут подход довольно интересный с шаблонизатором получается, тут хочу совет спросить у @SlaSoft и @OCappLab , если получив массив данных и его хэш (для проверки), можем ли мы генерировать статический хедер, который не будет иметь динамических данных, кроме "корзины" например, которая так же будет аяксом подгружена в момент либо добавления товара либо при онклике ? что имею ввиду, так это генерацию, по типу твига, на на порядок проще, статических блоков, проверяя хэш конфига, где вместо подключения, например футера:
под катом
<footer>
<div class="container">
<div class="row">
{% if informations %}
<div class="col-sm-3">
<h5>{{ text_information }}</h5>
<ul class="list-unstyled">
{% for information in informations %}
<li><a href="{{ information.href }}">{{ information.title }}</a></li>
{% endfor %}
</ul>
</div>
{% endif %}
<div class="col-sm-3">
<h5>{{ text_service }}</h5>
<ul class="list-unstyled">
<li><a href="{{ contact }}">{{ text_contact }}</a></li>
<li><a href="{{ return }}">{{ text_return }}</a></li>
<li><a href="{{ sitemap }}">{{ text_sitemap }}</a></li>
</ul>
</div>
<div class="col-sm-3">
<h5>{{ text_extra }}</h5>
<ul class="list-unstyled">
<li><a href="{{ manufacturer }}">{{ text_manufacturer }}</a></li>
<li><a href="{{ voucher }}">{{ text_voucher }}</a></li>
<li><a href="{{ affiliate }}">{{ text_affiliate }}</a></li>
<li><a href="{{ special }}">{{ text_special }}</a></li>
</ul>
</div>
<div class="col-sm-3">
<h5>{{ text_account }}</h5>
<ul class="list-unstyled">
<li><a href="{{ account }}">{{ text_account }}</a></li>
<li><a href="{{ order }}">{{ text_order }}</a></li>
<li><a href="{{ wishlist }}">{{ text_wishlist }}</a></li>
<li><a href="{{ newsletter }}">{{ text_newsletter }}</a></li>
</ul>
</div>
</div>
<hr>
<p>{{ powered }}</p>
</div>
</footer>
будет вот такой вот сгенерированный статический файл, в зависимости от языковой переменной:
под катом 2
<footer>
<div class="container">
<div class="row">
<div class="col-sm-3">
<h5>ИНФОРМАЦИЯ</h5>
<ul class="list-unstyled">
<li><a href="/o-nas.html">О нас</a></li>
<li><a href="/politika.html">Политика</a></li>
<li><a href="/zakaz.html">Как заказать</a></li>
</ul>
</div>
<div class="col-sm-3">
<h5>Услуги</h5>
<ul class="list-unstyled">
<li><a href="/contact.html">Контакты</a></li>
<li><a href="/return.html">Возврат</a></li>
<li><a href="/sitemap.html">Карта сайта</a></li>
</ul>
</div>
<div class="col-sm-3">
<h5>Дополнительно</h5>
<ul class="list-unstyled">
<li><a href="/manufacturer.html">Производители</a></li>
<li><a href="/voucher.html">Подарочные сертификаты</a></li>
<li><a href="/affiliate.html">Партнёрство</a></li>
<li><a href="/special.html">Акции</a></li>
</ul>
</div>
<div class="col-sm-3">
<h5>Аккаунт</h5>
<ul class="list-unstyled">
<li><a href="/account.html">Войти</a></li>
<li><a href="/order.html">Заказы</a></li>
<li><a href="/wishlist.html">Избранное</a></li>
<li><a href="/newsletter.html">Подписки</a></li>
</ul>
</div>
</div>
<hr>
<p>Мой сайт. Все права защищены 2019</p>
</div>
</footer>
если подскажете чего делать с иконками, я сделаю. копипасто это моё второе имя)
изящно придумал, что сказать (y)
можно и заморочиться с копипастой разок-другой. Захотел добавить иконпак - копипасть третий конфиг.
Ух! Такой комбайн мне по душе! :love:
можно и заморочиться с копипастой разок-другой. Захотел добавить иконпак - копипасть третий конфиг.
Ух! Такой комбайн мне по душе! :love:
на каком этапе сейчас шаблонизатор, хоть какие новости, а то чет поговорили. активно взялись а терь заглохло всё ((((
или пока не до шаблонизатора?
или пока не до шаблонизатора?
с моей стороны пока на уровне локальной наработки, остановился на лейаутах, пока перешел на обновлятор, с Бако разрабатываем, что бы каждое обновление сборки не перезаписывать из гитхаба, а через админку установить, думаю вещь немного приоритетней, @ocdroid, что у тебя там по наброскам ?
@ALarik , работу доработаю и в телеге состучимся. Согласуем на денек поработать. У меня тоже все наброски локально, представление что к чему уже мы имеем - осталось собрать первый тестовый скелет. И от него плясать /roll
Идей много, задач - ещё больше, некому делать, нас 4-ро активных - не каждый успевает делать поставленное (пока что на энтузиазме), я все делать тоже не имею возможности и не хочу "перегореть", так что по мере нарастания приоритетов делаем, по шаблонизатору пока заморозил у Артура, делаем "updater", который избавит пользователей от постоянных фиксов сборки и позволит через админку обновлять код, да, нам в 7-мь раз больше задач, невзирая, что все это делается для пользователя, что бы уменьшить его лишние движения.
Прошу отнестись с пониманием. Если есть дальше активность по шаблонизатору - приветствую, если есть темы адаптированные - тоже приветствую, на данный момент, я предлагаю активно обговорить и создать список:
Чем больше такой информации, тем легче приступить к непосредственной разработке, и соответственно - к приведению к какому то виду конструктора ну и дизайнеру будет легче созидать блоки, для подальшей верстки. Просто разговоры, это как со сборкой, просто поговорить - можно месяцами, но только действие - единственный показатель твоего намерения.
Прошу отнестись с пониманием. Если есть дальше активность по шаблонизатору - приветствую, если есть темы адаптированные - тоже приветствую, на данный момент, я предлагаю активно обговорить и создать список:
- самые поширенные header's которые встречаются на сайтах (можно скриншотами)
- меню (горизовнтальные) : все возможные виды
- размещение блоков в контенте (вместе с колонками)
- футер (все возможные виды)
- блоки на странице товара (разные возможные комбинации), тоесть где главное изображение, где дополнительные, где отзывы, основная инфо, активные кнопки призывающие к действию, инфо-блок и т.д.
Чем больше такой информации, тем легче приступить к непосредственной разработке, и соответственно - к приведению к какому то виду конструктора ну и дизайнеру будет легче созидать блоки, для подальшей верстки. Просто разговоры, это как со сборкой, просто поговорить - можно месяцами, но только действие - единственный показатель твоего намерения.
ну, не заморозил, я по мере свободного времени и мыслей продолжаю конструировать в этом направлении, парралельно добавляя новые модули для брокарт, но согласен, сейчас есть немного важнее дела по дистрибутиву (сборкой уже не называем, отдельно будет сборка).
@Baco , та то невірний падход. Які ще поширені хідери, коли в нормальних двигунцях собі будь-яка домогосподиня вибирає собі скільки в неї блоків у хідері, та в якому що виводити.
То ми за Аларіком вже продумали все. Майже :D
То ми за Аларіком вже продумали все. Майже :D
Та я понял, что вы там продумали, но надо бы прокубатурить все варианты, которые возможно из "трендовых", я понимаю что вы там сориентированы на домохозяек, но прошу понять акцент дистрибутива, мы не столько нацелены на домохозяйку, сколько на шоп-мейкера, что бы владелец сайта заказал легковесный и шустрый дистр. и понимал, что опытный мастер, сможет на конструкторе сообразить то, что у конкурента, но на порядок круче, а ты только сидиш с другой стороны за пультом, и переключаешь. но нужно учесть все варианты, но начать можно и из базовых, главное, дайте результат, дальше будем посмотреть.
Anyone can read. To post and vote, sign in.