<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="uk">
	<id>https://mediawiki.zina.run/index.php?action=history&amp;feed=atom&amp;title=Hugo_%2B_Bootstrap</id>
	<title>Hugo + Bootstrap - Історія редагувань</title>
	<link rel="self" type="application/atom+xml" href="https://mediawiki.zina.run/index.php?action=history&amp;feed=atom&amp;title=Hugo_%2B_Bootstrap"/>
	<link rel="alternate" type="text/html" href="https://mediawiki.zina.run/index.php?title=Hugo_%2B_Bootstrap&amp;action=history"/>
	<updated>2026-10-12T09:33:24Z</updated>
	<subtitle>Історія редагувань цієї сторінки в вікі</subtitle>
	<generator>MediaWiki 1.44.2</generator>
	<entry>
		<id>https://mediawiki.zina.run/index.php?title=Hugo_%2B_Bootstrap&amp;diff=805&amp;oldid=prev</id>
		<title>Romych: /* См. также */</title>
		<link rel="alternate" type="text/html" href="https://mediawiki.zina.run/index.php?title=Hugo_%2B_Bootstrap&amp;diff=805&amp;oldid=prev"/>
		<updated>2020-04-10T06:46:05Z</updated>

		<summary type="html">&lt;p&gt;&lt;span class=&quot;autocomment&quot;&gt;См. также&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;b&gt;Нова сторінка&lt;/b&gt;&lt;/p&gt;&lt;div&gt;←[[Hugo]]&lt;br /&gt;
&lt;br /&gt;
Есть несколько вариантов подключения Bootstrap в Hugo:&lt;br /&gt;
&lt;br /&gt;
# Самый простой способ — подключить Bootstrap через [https://getbootstrap.com/ CDN]&lt;br /&gt;
# Установить Bootstrap с помощью NPM и компилировать из SASS в CSS с помощью Gulp, Grunt, Webpack и.п.&lt;br /&gt;
# Установить Bootstrap с помощью NPM и компилировать из SASS в CSS с помощью Hugo Pipes.&lt;br /&gt;
# Монтировать Bootstrap с помощью модулей Go и компилировать из SASS в CSS с помощью Hugo Pipes.&lt;br /&gt;
&lt;br /&gt;
Варианты с Hugo Pipes хороши тем, что они работают на встроенном в Hugo сервере. Это решение «из коробки» и с максимальным быстродействием.&lt;br /&gt;
&lt;br /&gt;
Поэтьому рассмотрим третий вариант — сборку Bootstrap с помощью Hugo Pipes.&lt;br /&gt;
&lt;br /&gt;
== Компиляция SASS/SCSS с помощью Hugo Pipes ==&lt;br /&gt;
&lt;br /&gt;
Файлы ваших стилей SASS, которые будут компилироваться в CSS с помощью Hugo Pipes, должны размещаться в папке &amp;lt;code&amp;gt;/assets&amp;lt;/code&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Создайте основной файл &amp;lt;code&amp;gt;assets/sass/main.scss&amp;lt;/code&amp;gt; и добавьте в него строки:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;source lang=&amp;quot;sass&amp;quot;&amp;gt;&lt;br /&gt;
$not-so-white: FloralWhite;&lt;br /&gt;
body {&lt;br /&gt;
  background-color: $not-so-white;&lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Вставьте в основной шаблон &amp;lt;code&amp;gt;layouts/_default/baseof.html&amp;lt;/code&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;source lang=&amp;quot;html&amp;quot;&amp;gt;&lt;br /&gt;
{{ $style := resources.Get &amp;quot;sass/main.scss&amp;quot; | toCSS }}&lt;br /&gt;
&amp;lt;link rel=&amp;quot;stylesheet&amp;quot; href=&amp;quot;{{ $style.RelPermalink }}&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Теперь можно запустить Hugo и проверить — будет создан файл &amp;lt;code&amp;gt;/sass/main.css&amp;lt;/code&amp;gt; и цвет фона станет [https://www.materialui.co/htmlcolors/floralwhite FloralWhite].&lt;br /&gt;
&lt;br /&gt;
В принципе, на этом этапе можно применить первый способ подключения Bootstrap — добавить перед строкой &amp;lt;code&amp;gt;&amp;lt;link rel=&amp;quot;stylesheet&amp;quot;...&amp;lt;/code&amp;gt; строку со ссылкой на [https://www.bootstrapcdn.com/ CDN Bootstrap] типа: &amp;lt;code&amp;gt;&amp;lt;link rel=&amp;quot;stylesheet&amp;quot; href=&amp;quot;&amp;lt;nowiki&amp;gt;https://stackpath.bootstrapcdn.com/bootstrap/4.4.1/css/bootstrap.min.css&amp;lt;/nowiki&amp;gt;&amp;quot;...&amp;lt;/code&amp;gt; — и этого будет достаточно.&lt;br /&gt;
&lt;br /&gt;
Чтобы использовать Bootstrap более тонко — например, включать только определенные части стилей, чтобы результирующий файл был минимального размера — установим Bootstrap в проекте и настроим его компиляцию вместе с вашими стилями.&lt;br /&gt;
&lt;br /&gt;
== Установка Bootstrap через NPM ==&lt;br /&gt;
&lt;br /&gt;
Установите NPM:&lt;br /&gt;
&lt;br /&gt;
 sudo apt install npm&lt;br /&gt;
&lt;br /&gt;
Перейдите в корень проекта и инициализируйте приложение:&lt;br /&gt;
&lt;br /&gt;
 npm init .&lt;br /&gt;
&lt;br /&gt;
Будут заданы вопросы (можно на все отвечать &amp;lt;kbd&amp;gt;Enter&amp;lt;/kbd&amp;gt;) и создан конфиг &amp;lt;code&amp;gt;package.json&amp;lt;/code&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Установите в проекте Bootstrap:&lt;br /&gt;
&lt;br /&gt;
 npm install bootstrap jquery popper.js postcss-cli autoprefixer --save&lt;br /&gt;
&lt;br /&gt;
== Импорт стилей Bootstrap ==&lt;br /&gt;
&lt;br /&gt;
Самый простой способ — добавить в начало файла &amp;lt;code&amp;gt;assets/sass/main.scss&amp;lt;/code&amp;gt; строку:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;source lang=&amp;quot;sass&amp;quot;&amp;gt;&lt;br /&gt;
@import &amp;quot;../../node_modules/bootstrap/scss/bootstrap&amp;quot;;&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
После компиляции в итоговом &amp;lt;code&amp;gt;.css&amp;lt;/code&amp;gt; файле уже будут все стили Bootstrap.&lt;br /&gt;
&lt;br /&gt;
=== Выборочный импорт стилей ===&lt;br /&gt;
&lt;br /&gt;
Добавим параметр &amp;lt;code&amp;gt;includePaths&amp;lt;/code&amp;gt;, в котором укажем, где искать стили Bootstrap:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;source lang=&amp;quot;html&amp;quot;&amp;gt;&lt;br /&gt;
{{ $options := (dict &amp;quot;includePaths&amp;quot; (slice &amp;quot;node_modules/bootstrap/scss&amp;quot;)) }}&lt;br /&gt;
{{ $style := resources.Get &amp;quot;sass/main.scss&amp;quot; | toCSS $options }}&lt;br /&gt;
&amp;lt;link rel=&amp;quot;stylesheet&amp;quot; href=&amp;quot;{{ $style.RelPermalink }}&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
А в &amp;lt;code&amp;gt;assets/sass/main.scss&amp;lt;/code&amp;gt; строку с путем к Bootstrap напишем просто:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;source lang=&amp;quot;sass&amp;quot;&amp;gt;&lt;br /&gt;
@import &amp;quot;bootstrap&amp;quot;;&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Теперь можно импортировать только часть стилей — например, только бутстраповский сброс стилей:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;source lang=&amp;quot;sass&amp;quot;&amp;gt;&lt;br /&gt;
@import &amp;quot;bootstrap-reboot&amp;quot;;&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
или только сетку:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;source lang=&amp;quot;sass&amp;quot;&amp;gt;&lt;br /&gt;
@import &amp;quot;bootstrap-grid&amp;quot;;&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
или только navbar (список со всеми зависимостями):&lt;br /&gt;
&lt;br /&gt;
&amp;lt;source lang=&amp;quot;sass&amp;quot;&amp;gt;&lt;br /&gt;
@import &amp;quot;functions&amp;quot;;&lt;br /&gt;
@import &amp;quot;variables&amp;quot;;&lt;br /&gt;
@import &amp;quot;mixins&amp;quot;;&lt;br /&gt;
@import &amp;quot;nav&amp;quot;;&lt;br /&gt;
@import &amp;quot;navbar&amp;quot;;&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Переопределение переменных Bootstrap ===&lt;br /&gt;
&lt;br /&gt;
Стандартные переменные Bootstrap хранятся в файле &amp;lt;code&amp;gt;node_modules/bootstrap/scss/_variables.scss&amp;lt;/code&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Лучше их редактировать не напрямую, а переопределять в собственном файле.&lt;br /&gt;
&lt;br /&gt;
Создайте файл &amp;lt;code&amp;gt;assets/sass/custom_variables.scss&amp;lt;/code&amp;gt; и в него копируйте те стандартные переменные Bootstrap, которые нужно переопределить.&lt;br /&gt;
&lt;br /&gt;
При этом у ваших вариантов переменных удаляйте в конце директиву &amp;lt;code&amp;gt;!default&amp;lt;/code&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div class=&amp;quot;note&amp;quot;&amp;gt;&lt;br /&gt;
Можно для удобства создать символическую ссылку на файл со стандартными переменными:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;source lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
ln -s $(pwd)/node_modules/bootstrap/scss/_variables.scss assets/sass/_variables.scss&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Чтобы переопределение переменных сработало, нужно их подключать после стандартных переменных, но перед остальными компонентами Bootstrap.&lt;br /&gt;
&lt;br /&gt;
Подключайте переопределенные переменные в &amp;lt;code&amp;gt;assets/sass/main.scss&amp;lt;/code&amp;gt; примерно так:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;source lang=&amp;quot;sass&amp;quot;&amp;gt;&lt;br /&gt;
// Первые компоненты Bootstrap - должны быть в начале&lt;br /&gt;
@import &amp;quot;functions&amp;quot;;&lt;br /&gt;
@import &amp;quot;variables&amp;quot;; &lt;br /&gt;
&lt;br /&gt;
// Переопределенные переменные&lt;br /&gt;
@import &amp;quot;custom_variables&amp;quot;;&lt;br /&gt;
&lt;br /&gt;
// Остальные компоненты Bootstrap&lt;br /&gt;
@import &amp;quot;mixins&amp;quot;;&lt;br /&gt;
@import &amp;quot;root&amp;quot;;&lt;br /&gt;
...&lt;br /&gt;
&lt;br /&gt;
// Ваши стили&lt;br /&gt;
@import &amp;quot;styles.scss&amp;quot;&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Дополнительные параметры компиляции SASS ==&lt;br /&gt;
&lt;br /&gt;
Добавим несколько улучшений (подробнее см. [[Hugo Pipes]]):&lt;br /&gt;
&lt;br /&gt;
* &amp;lt;code&amp;gt;targetPath&amp;lt;/code&amp;gt; — изменим имя и путь к результирующему файлу &amp;lt;code&amp;gt;.css&amp;lt;/code&amp;gt;&lt;br /&gt;
* &amp;lt;code&amp;gt;enableSourceMap&amp;lt;/code&amp;gt; — добавим Source Maps&lt;br /&gt;
* &amp;lt;code&amp;gt;outputStyle&amp;lt;/code&amp;gt; — минифицируем код CSS&lt;br /&gt;
* &amp;lt;code&amp;gt;minify&amp;lt;/code&amp;gt; — дополнительно минифицируем вторым способом (сожмет еще немного)&lt;br /&gt;
* &amp;lt;code&amp;gt;fingerprint&amp;lt;/code&amp;gt; — добавим уникальный номер к имени &amp;lt;code&amp;gt;.css&amp;lt;/code&amp;gt; файла, чтобы он не кешировался браузером при изменениях в стилях&lt;br /&gt;
&lt;br /&gt;
&amp;lt;source lang=&amp;quot;html&amp;quot;&amp;gt;&lt;br /&gt;
{{ $options := (dict &amp;quot;targetPath&amp;quot; &amp;quot;css/main.css&amp;quot; &amp;quot;enableSourceMap&amp;quot; true &amp;quot;outputStyle&amp;quot; &amp;quot;compressed&amp;quot; &amp;quot;includePaths&amp;quot; (slice &amp;quot;node_modules/bootstrap/scss&amp;quot;)) }}&lt;br /&gt;
{{ $style := resources.Get &amp;quot;sass/main.scss&amp;quot; | toCSS $options | minify | fingerprint }}&lt;br /&gt;
&amp;lt;link rel=&amp;quot;stylesheet&amp;quot; href=&amp;quot;{{ $style.RelPermalink }}&amp;quot; &amp;gt;&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Подключение JavaScript ==&lt;br /&gt;
&lt;br /&gt;
Создайте папку и скопируйте в нее файлы:&lt;br /&gt;
&lt;br /&gt;
 mkdir -p assets/js/vendor/&lt;br /&gt;
 cp node_modules/jquery/dist/jquery.min.js assets/js/vendor/&lt;br /&gt;
 cp node_modules/bootstrap/dist/js/bootstrap.bundle.min.js assets/js/vendor/&lt;br /&gt;
&lt;br /&gt;
Вставьте в конце &amp;lt;code&amp;gt;baseof.html&amp;lt;/code&amp;gt; перед &amp;lt;code&amp;gt;&amp;lt;/body&amp;gt;&amp;lt;/code&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;source lang=&amp;quot;html&amp;quot;&amp;gt;&lt;br /&gt;
{{ $jquery := resources.Get &amp;quot;js/vendor/jquery.min.js&amp;quot; }}&lt;br /&gt;
{{ $bootstrap := resources.Get &amp;quot;js/vendor/bootstrap.bundle.min.js&amp;quot; }}&lt;br /&gt;
{{ $js := slice $jquery $bootstrap | resources.Concat &amp;quot;js/bundle.js&amp;quot; | resources.Minify }}&lt;br /&gt;
&lt;br /&gt;
&amp;lt;script src=&amp;quot;{{$js.RelPermalink}}&amp;quot;&amp;gt;&amp;lt;/script&amp;gt;&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== См. также ==&lt;br /&gt;
&lt;br /&gt;
* [[Hugo Pipes]]&lt;br /&gt;
* [[Сниппеты Bootstrap]]&lt;br /&gt;
&lt;br /&gt;
=== Hugo Bootstrap Themes ===&lt;br /&gt;
&lt;br /&gt;
* [[Hugo Minimal Bootstrap Theme]] — наша сборка простого сайта на Hugo с минимальной темой Bootstrap&lt;br /&gt;
&lt;br /&gt;
* [https://themes.gohugo.io/minimal-bootstrap-hugo-theme/ Minimal Bootstrap Hugo Theme]&lt;br /&gt;
* [https://themes.gohugo.io/vanilla-bootstrap-hugo-theme/ Vanilla Bootstrap Hugo Theme]&lt;br /&gt;
* [https://themes.gohugo.io/bootstrap-bp-hugo-theme/ Bootstrap Bp Hugo Theme]&lt;br /&gt;
* [https://themes.gohugo.io/hugo-theme-bootstrap4-blog/ Hugo Theme Bootstrap4 Blog]&lt;br /&gt;
* [https://github.com/appernetic/hugo-bootstrap-premium Hugo appernetic bootstrap premium theme]&lt;br /&gt;
* [https://github.com/UtkarshVerma/startbootstrap-clean-blog GitHub &amp;amp;#45; UtkarshVerma/startbootstrap&amp;amp;#45;clean&amp;amp;#45;blog&amp;amp;#58; Hugo theme based on Start Bootstrap Clean blog]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Категория:Hugo]]&lt;br /&gt;
[[Категория:Bootstrap]]&lt;br /&gt;
[[Категория:Sass]]&lt;/div&gt;</summary>
		<author><name>Romych</name></author>
	</entry>
</feed>