Coder Social home page Coder Social logo

orsha-lug / orsha-lug-hugo Goto Github PK

View Code? Open in Web Editor NEW
1.0 2.0 0.0 1.87 MB

Сайт оршанской группы пользователей Linux.

Home Page: https://orsha.linux.by

Shell 1.27% HTML 98.73%
hugo static-website linux-user-group linux-users community belarus

orsha-lug-hugo's Introduction

Orsha LUG website v3

Сайт оршанской группы пользователей Linux. Адрес сайта: https://orsha.linux.by

Сайт управляется системой Hugo, которая обеспечивает сборку статичных html-страниц из исходных markdown-страниц. Основной контент сайта размещён в приватном репозитории, чтобы избежать SEO-проблем с поисковиками.

Ниже приведена инструкция.

Установка программного обеспечения

Для работы над сайтом понадобится Git и Hugo.

Установка Git

Желательна версия 2.7.4 или выше.

Пример установки для debian-based дистрибутивов (Ubuntu, Debian, и т.д.):

sudo apt-get install git

Установка Hugo

Версия: проверена работоспособность с версиями 0.30.2 и 0.40.1.

Пример установки для debian-based дистрибутивов (Ubuntu, Debian, и т.д.):

sudo apt-get install hugo

Подготовка локальной копии

Склонируйте данный репозиторий:

git clone https://github.com/shurph/orsha-lug-hugo.git

Перейдите в каталог со склонированным репозиторием и инициализируйте сабмодули:

cd orsha-lug-hugo/

git submodule init

Теперь здесь же обновите содержимое сабмодулей (данные будут загружены из других репозиториев).

Внимание: некоторые из репозиториев — приватны. Это сделано для того, чтобы избежать SEO-проблем с поисковиками [1], [2], [3], [4].

Запросите права на чтение этих репозиториев у @shurph, если вы таковыми не обладаете.

И так, обновление содержимого сабмодулей:

git submodule update

После успещного выполнения всех вышеперечисленных команд у вас всё будет готово для работы над сайтом.

Запуск локального Hugo-сервера

Локальный Hugo-сервер понадобится для тестирования вносимых изменений.

Из каталога репозитория выполните:

hugo server -D --disableFastRender

Сборка «production»-версии

После того, как редактирование страниц закончено, можно выполнить сборку html-страниц для размещения на сайте:

Из каталога репозитория выполните:

hugo

Заливка файлов на сайт

Это можно делать с помощью любого ftp-клиента.

Обратите внимание, что при заливке новой версии сайта по умолчанию новые файлы копируются поверх существующих. Это значит, что файлы, которые были удалены в новой версии, останутся нетронутыми на сайте. Их придётся удалять отдельно.

Структура каталогов

Все исходники контента сайта хранятся в двух основных каталогах: content и static.

Каталог content

В каталоге content размещены ещё два каталога, post и article, в которых уже непосредственно размещаются markdown-файлы, преобразуемые Hugo.

Каталог static

В этом каталоге могут размещаться любые файлы и каталоги в режиме «как есть». Все файлы из этого каталога будут скопированы в исходном виде в корень каталога public/ при генерации сайта. Т.е. после заливки содержимого каталога public/ на «живой» сайт файлы каталога static будут помещены в корень сайта.

Это позволяет использовать каталог static для создания и хранения таких файлов как robotx.txt, favicon.ico, sitemap_index.xml и т.д. Важно: файл sitemap.xml помещать сюда не следует, т.к. он будет автоматически сгенерирован Hugo.

Формат markdown-файла для Hugo

---
title: "Начало положено"
date: 2007-03-03T14:37:14+03:00
---
*Именно* в этот _день_, 3 марта 2007...

Вверху расположена секция с мета-информацией, начинающаяся и заканчивающаяся строками с тремя тире ---. После второй, «закрывающей», строки с тремя тире --- начинается контент в формате Markdown. Подробнее о Markdown: https://ru.wikipedia.org/wiki/Markdown

Вспомогательные инструменты

Как генерировать sitemap для форума

Устанавливаем генератор:

npm install -g sitemap-generator-cli

Запускаем генерацию:

sitemap-generator -q -v https://orsha.linux.by/forum/ -f static/sitemap_forum.xml

orsha-lug-hugo's People

Contributors

shurph avatar

Stargazers

 avatar

Watchers

 avatar  avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.