Джекилл помогает создавать новые веб-сайты. https://marcanuy.github.io/jekyll-skeleton/
Оглавление
Это базовый сайт Jekyll, созданный с помощью jekyll new --blank
(без тем и примеров сообщений), который может служить отправной точкой для любого веб-сайта.
Его цель — быстро запустить новые веб-сайты, клонировать этот репозиторий и настроить его под свои нужды, имея уже все функции, которые я добавлял и настраивал каждый раз, когда создавал новый экземпляр Jekyll.
Живая демо-версия выглядит такой « минималистичной », потому что она не использует никаких тем и ее единственная цель — показать дизайн навигации по сайту и то, как добавлять сообщения/категории.
В его структуре используется дизайн, описанный в статьях «Как правильно добавить Bootstrap 4 в Jekyll», «Многоязычный Jekyll без плагинов» и «Как реализовать хлебные крошки на сайте Jekyll с вложенными категориями», примененных к пустому экземпляру Jekyll с предложениями, предоставленными плагинами ниже.
Просто клонируйте этот репозиторий и начните создавать свой.
git clone [email protected]:marcanuy/jekyll-skeleton.git
Автоматически генерируется при каждой сборке Jekyll :
/sitemap.xml
/feed.xml
. SASS и простая настройка переменных Bootstrap 4 в /assets/main.scss
и /_sass/_variables.scss
.
Автоматически добавляет теги метаданных для поисковых систем и социальных сетей.
Заголовок страницы с добавленным названием или описанием сайта.
<head>
<title>...</title>
</head>
Описание страницы
<head>
<meta name="description" content="..."/>
</head>
Канонический URL-адрес
<link rel="canonical" href="..."/>
Следующий и предыдущий URL-адреса на страницах с разбивкой на страницы
JSON-LD Метаданные сайта и публикации для расширенной индексации
<meta property="fb:app_id" content="1822851531277021"/>
<script type="application/ld+json">
{"@context": "http://schema.org",
"@type": "WebPage",
"headline": "...",
"description": "...",
"url": "..."}</script>
Заголовок, описание, название сайта и URL-адрес Open Graph (для Facebook, LinkedIn и т. д.)
<meta property="og:title" content="..."/>
<meta name="description" content="..."/>
<meta property="og:description" content="..."/>
<meta property="og:url" content="..."/>
<meta property="og:site_name" content="..."/>
<meta property="og:type" content="..."/>
<meta property="article:published_time" content="..."/>
<meta property="fb:app_id" content="..."/>
Метаданные сводной карты Twitter
<meta name="twitter:card" content="summary"/>
<meta name="twitter:site" content="..."/>
<meta name="twitter:creator" content="..."/>
Мультиязычный
Меню языковой навигации для каждой страницы ко всем остальным версиям перевода
<a hreflang="es" href="http://example.com/es/foobar" />
<a hreflang="de" href="http://example.com/de/foobar" />
<a hreflang="en" href="http://example.com/en/foobar" />
Альтернативные элементы ссылок в head
HTML.
<link rel="alternate" hreflang="es" href="http://example.com/es" />
<link rel="alternate" hreflang="de" href="http://example.com/de" />
<link rel="alternate" hreflang="en" href="http://example.com/en" />
Перенаправляет из подпапки языка по умолчанию на домашнюю страницу сайта ( /en
-> /
)
Хлебные крошки для страниц и сообщений
<!-- url: /jekyll-skeleton/en/example-post -->
<ol class="breadcrumb">
<li class="breadcrumb-item"><a href="/jekyll-skeleton/"><i class="fa fa-home" aria-hidden="true"></i></a></li>
<li class="breadcrumb-item ">
<a href="/jekyll-skeleton/en">en</a>
</li>
<li class="breadcrumb-item active">
Example Post
</li>
</ol>
jekyll-skeleton был создан с учетом следующих принципов:
jekyll-seo-tag
.git clone https://github.com/marcanuy/jekyll-skeleton
cd jekyll-seleton
make install
make serve
Добавьте язык в _config.yml
:
defaults:
#languages
-
scope:
path: ""
values:
lang: "en"
layout: default
-
scope:
path: "es"
values:
lang: "es"
Его имя — _data/locales.yml
и эквивалент каждой страницы на языке в /_data/map.yml
:
-
en: index.html
es: es/index.html
-
en: about.html
es: es/acerca.html
Добавьте сообщение на каждом языке, расположенном в подкаталоге языков: /en
, es
и т. д.
Во вступительной части поста используются следующие свойства:
---
title: # jekyll-seo-tag - The title of the post, page, or document
description: # jekyll-seo-tag - A short description of the page's content
image: # jekyll-seo-tag - URL to an image associated with the post, page, or document (e.g., /assets/page-pic.jpg)
author: # jekyll-seo-tag - Page-, post-, or document-specific author information (see below)
lang: # jekyll-seo-tag - Page-, post-, or document-specific language information
---
Jekyll-skeleton использует следующие плагины:
Если вы хотите разместить сайт, созданный на основе этого репозитория, в Github, вы можете следовать этому руководству: Автоматическое развертывание веб-сайтов Jekyll на страницах Github с помощью Git Push To Github.
$ сделать сборку rm -fr _site/ rm -fr assets/vendor/ #from Yarn rm -fr ресурсы/шрифты #fontawesome зависимость rm -fr .sass_cache установка пакета --путь поставщика/сборщика Внимание: действующая версия Bundler (1.13.6) старше версии, создавшей файл блокировки (1.15.0). Мы предлагаем вам обновиться до последней версии Bundler, запустив `gem install Bundler`. Использование параллельного Ruby 1.0.5 Использование i18n 0.8.1 Использование минитеста 5.10.2 Использование thread_safe 0.3.6 Использование public_suffix 2.0.5 Использование колоратора 1.1.0 Использование цветного 1.2 Использование ffi 1.9.18 Использование пересылаемой расширенной версии 2.6.0 Использование наемника 0.3.6 Использование mini_portile2 2.1.0 Использование параллельной версии 1.11.2 Использование крика 2.0.7 Использование SASS 3.4.24 Использование rb-fsevent 0.9.8 Использование крамдауна 1.13.2 Использование жидкости 3.0.6 Использование румян 1.11.1 Использование Safe_yaml 1.0.4 Использование бандлера 1.13.6 Использование tzinfo 1.2.3 Использование адресного 2.5.1 Использование этона 0.10.1 Использование rb-inotify 0.9.8 Использование pathutil 0.14.0 Использование нокогири 1.7.2 Использование jekyll-sass-конвертера 1.5.0 Использование активной поддержки 5.1.1 Использование тайфея 0.8.0 Использование прослушивания 3.0.8 Использование jekyll-toc 0.2.1 Использование html-корректора 3.7.2 Использование jekyll-watch 1.5.0 Использование Джекилла 3.4.3 Использование jekyll-feed 0.9.2 Использование jekyll-redirect-from 0.12.1 Использование jekyll-seo-tag 2.2.3 Использование jekyll-sitemap 1.1.1 Комплектация завершена! 7 зависимостей Gemfile, теперь установлено 38 драгоценных камней. Входящие в комплект драгоценные камни устанавливаются в ./vendor/bundler. установка пряжи установка пряжи v0.24.5 [1/4] Разрешение пакетов... успех Уже актуален. Выполнено за 0,38 с. mkdir -p активы/поставщик/ cp node_modules/font-awesome/css/font-awesome.min.css assets/vendor/ cp -r node_modules/font-awesome/fonts assets cp node_modules/jquery/dist/jquery.min.js assets/vendor/ cp node_modules/tether/dist/js/tether.min.js assets/vendor/ cp node_modules/bootstrap/dist/js/bootstrap.min.js assets/vendor/ сборка Exec Jekyll Bundle Файл конфигурации: /tmp/jekyll-skeleton/_config.yml. Источник: /tmp/jekyll-скелетон Назначение: /tmp/jekyll-skeleton/_site Инкрементная сборка: отключена. Включить с помощью --incremental Создание... сделано за 5,474 секунды. Авторегенерация: отключена. Используйте --watch, чтобы включить. $ дерево -L 3 _сайт/ _сайт/ ├── активы │ ├── шрифты │ │ ├── FontAwesome.otf │ │ ├── Fontawesome-webfont.eot │ │ ├── Fontawesome-webfont.svg │ │ ├── Fontawesome-webfont.ttf │ │ ├── Fontawesome-webfont.woff │ │ └── Fontawesome-webfont.woff2 │ ├── main.css │ └── продавец │ ├── bootstrap.min.js │ ├── font-awesome.min.css │ ├── jquery.min.js │ └── tether.min.js ├── де │ ├── beispiel-post.html │ ├── index.html │ └── без категории1 │ ├── index.html │ └── post-in-unterkategorie.html ├── Deploy_key.enc ├── ru │ ├── example-post.html │ ├── index.html │ └── подкатегория1 │ ├── index.html │ └── post-in-subdirectory.html ├── эс │ ├── index.html │ ├── post-ejemplo.html │ └── подкатегория1 │ ├── index.html │ └── post-en-subdirectorio.html ├──feed.xml ├── index.html ├── ЛИЦЕНЗИЯ ├── package.json ├── README.md ├── robots.txt ├── sitemap.xml └── пряжа.lock 9 каталогов, 32 файла $ сделать чек доктор бандл Джекил Файл конфигурации: /tmp/jekyll-skeleton/_config.yml. Результаты вашего теста получены. Все в порядке. пакет exec htmlproofer --check-html --http-status-ignore 999 --internal-domains marcanuy.github.io,localhost:4000 --assume-расширение _сайт Запуск ["ScriptCheck", "LinkCheck", "HtmlCheck", "ImageCheck"] на ["_site"] в *.html... Проверка 14 внешних ссылок... Пробежал 13 файлов! HTML-Proofer завершился успешно.
Не стесняйтесь открывать вопросы и/или вносить свой вклад!