HelpSophie
@HelpSophie

Include HTML с условиями?

Дано: есть футер, в нем есть блок, который на разных страницах разный, блок A, блок B, блок C.
Футер это отдельный файлик, который подключается с помощью include.
<include src="source/html-blocks/block_footer.html"></include>


Могу ли я как-нибудь вживить внутрь футера блоки с условиями? Как?
Например, на главной внутри футера должен быть блок A, на страницах каталога блок B, на всех других блок C.

Используется gulp и posthtml-include
таск:
gulp.task("html", function () {
  return gulp.src("source/*.html")
    .pipe(posthtml([
      include()
    ]))
    .pipe(gulp.dest("build"));
});
  • Вопрос задан
  • 662 просмотра
Решения вопроса 1
delphinpro
@delphinpro Куратор тега HTML
frontend developer
Используйте полноценные шаблонизаторы, а не всякие суррогаты.
Например twig (gulp-twig для верстки)

{% if some_variable == 2 %}
  {% include "file1.twig" %}
{% else %}
  {% include "file2.twig" %}
{% endif %}


UPD
Почитал комменты. Twig это что называется like html шаблонизатор. Т.е. обычный html файл скормленный шаблонизатору не вызовет ошибок компиляции. Это значит, что вы можете по сути в свой html просто вставлять управляющие конструкции шаблонизатора.
Ответ написан
Пригласить эксперта
Ответы на вопрос 1
xmoonlight
@xmoonlight
https://sitecoder.blogspot.com
Чтобы проще было управлять кусками HTML, используйте includeHTML.
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы