Jekyll-Gerüst für den Start neuer Websites. https://marcanuy.github.io/jekyll-skeleton/
Inhaltsverzeichnis
Dies ist eine einfache Jekyll-Site, die mit jekyll new --blank
erstellt wurde (ohne Themen oder Beispielbeiträge), um als Ausgangspunkt für jede Website zu dienen.
Sein Zweck besteht darin, schnell neue Websites zu starten, dieses Repo zu klonen und an Ihre Bedürfnisse anzupassen, wobei bereits alle Funktionen vorhanden sind, die ich jedes Mal hinzugefügt und konfiguriert habe, wenn ich eine neue Jekyll-Instanz erstellt habe.
Die Live-Demo sieht so „ minimalistisch “ aus, weil sie kein Thema verwendet und ihr einziger Zweck darin besteht, das Design der Website-Navigation und das Hinzufügen von Beiträgen/Kategorien zu zeigen.
Seine Struktur verwendet das Design, das in den Artikeln „So fügen Sie Bootstrap 4 zu Jekyll richtig hinzu“, „Mehrsprachiges Jekyll ohne Plugins“ und „Wie implementiert man Breadcrumbs auf einer Jekyll-Site mit verschachtelten Kategorien“ beschrieben wird, angewendet auf eine leere Jekyll-Instanz mit den Vorschlägen, die von den Plugins unten bereitgestellt werden.
Klonen Sie einfach dieses Repo und beginnen Sie mit der Erstellung Ihres eigenen.
git clone [email protected]:marcanuy/jekyll-skeleton.git
Generiert automatisch bei jedem Jekyll-Build :
/sitemap.xml
/feed.xml
. SASS und einfache Anpassung von Bootstrap 4-Variablen in /assets/main.scss
und /_sass/_variables.scss
.
Fügt automatisch Metadaten-Tags für Suchmaschinen und soziale Netzwerke hinzu
Seitentitel mit angehängtem Seitentitel oder einer Beschreibung
<head>
<title>...</title>
</head>
Seitenbeschreibung
<head>
<meta name="description" content="..."/>
</head>
Kanonische URL
<link rel="canonical" href="..."/>
Nächste und vorherige URLs auf paginierten Seiten
JSON-LD-Site und Post-Metadaten für eine umfassendere Indizierung
<meta property="fb:app_id" content="1822851531277021"/>
<script type="application/ld+json">
{"@context": "http://schema.org",
"@type": "WebPage",
"headline": "...",
"description": "...",
"url": "..."}</script>
Open Graph-Titel, Beschreibung, Seitentitel und URL (für Facebook, LinkedIn usw.)
<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="..."/>
Metadaten der Twitter-Zusammenfassungskarte
<meta name="twitter:card" content="summary"/>
<meta name="twitter:site" content="..."/>
<meta name="twitter:creator" content="..."/>
Mehrsprachig
Sprachnavigationsmenü für jede Seite zu allen anderen Übersetzungsversionen
<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" />
Alternative Linkelemente im head
von 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" />
Leitet vom Unterordner der Standardsprache zur Website-Homepage weiter ( /en
-> /
)
Breadcrumbs für Seiten und Beiträge
<!-- 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 wurde unter Berücksichtigung der folgenden Prinzipien entwickelt:
jekyll-seo-tag
.git clone https://github.com/marcanuy/jekyll-skeleton
cd jekyll-seleton
make install
make serve
Fügen Sie die Sprache zu _config.yml
hinzu:
defaults:
#languages
-
scope:
path: ""
values:
lang: "en"
layout: default
-
scope:
path: "es"
values:
lang: "es"
Sein Name lautet _data/locales.yml
und ein Äquivalent für jede Seite in der Sprache in /_data/map.yml
:
-
en: index.html
es: es/index.html
-
en: about.html
es: es/acerca.html
Fügen Sie einen Beitrag in jeder Sprache hinzu, die sich im Sprachunterverzeichnis befindet: /en
, es
usw.
Die folgenden Eigenschaften werden im Post-Frontmatter verwendet:
---
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 verwendet die folgenden Plugins:
Wenn Sie eine von diesem Repo abgeleitete Site in Github hosten möchten, können Sie dieser Anleitung folgen: Automatisierte Bereitstellung von Jekyll-Websites auf Github-Seiten mit einem Git-Push auf Github.
$ make build rm -fr _site/ rm -fr Assets/Vendor/ #from Yarn rm -fr Assets/Fonts #fontawesome-Abhängigkeit rm -fr .sass_cache bundle install --path Anbieter/Bundler Warnung: Die laufende Version von Bundler (1.13.6) ist älter als die Version, die die Sperrdatei erstellt hat (1.15.0). Wir empfehlen Ihnen, ein Upgrade auf die neueste Version von Bundler durchzuführen, indem Sie „gem install bundler“ ausführen. Verwendung von Concurrent-Ruby 1.0.5 Verwendung von i18n 0.8.1 Mit Minitest 5.10.2 Verwendung von thread_safe 0.3.6 Verwendung von public_suffix 2.0.5 Verwendung von Colorator 1.1.0 Verwendung von farbigen 1.2 Mit ffi 1.9.18 Verwendung von Forwardable-Extended 2.6.0 Verwendung von Söldner 0.3.6 Verwendung von mini_portile2 2.1.0 Parallel verwenden 1.11.2 Verwenden von Yell 2.0.7 Verwenden von Sass 3.4.24 Verwendung von rb-fsevent 0.9.8 Verwenden von Kramdown 1.13.2 Verwendung von Flüssigkeit 3.0.6 Verwendung von Rouge 1.11.1 Verwendung von safe_yaml 1.0.4 Mit Bundler 1.13.6 Verwendung von tzinfo 1.2.3 Verwendung von adressierbarem 2.5.1 Verwendung von Ethon 0.10.1 Verwendung von rb-inotify 0.9.8 Verwenden von pathutil 0.14.0 Verwendung von Nokogiri 1.7.2 Verwendung des Jekyll-Sass-Konverters 1.5.0 Verwendung von ActiveSupport 5.1.1 Verwenden von Typhoeus 0.8.0 Verwenden von Listen 3.0.8 Verwendung von Jekyll-Toc 0.2.1 Verwendung von HTML-Proofer 3.7.2 Verwenden von Jekyll-Watch 1.5.0 Verwenden von Jekyll 3.4.3 Verwendung von Jekyll-Feed 0.9.2 Verwendung von jekyll-redirect-from 0.12.1 Verwendung von jekyll-seo-tag 2.2.3 Verwendung von Jekyll-Sitemap 1.1.1 Bundle komplett! 7 Gemfile-Abhängigkeiten, 38 Gems jetzt installiert. Gebündelte Gems werden in ./vendor/bundler installiert. Garn installieren Garninstallation v0.24.5 [1/4] Pakete werden aufgelöst... Erfolg Bereits aktuell. In 0,38 Sekunden erledigt. mkdir -p asset/vendor/ cp node_modules/font-awesome/css/font-awesome.min.css asset/vendor/ cp -r node_modules/font-awesome/fonts asset cp node_modules/jquery/dist/jquery.min.js asset/vendor/ cp node_modules/tether/dist/js/tether.min.js asset/vendor/ cp node_modules/bootstrap/dist/js/bootstrap.min.js asset/vendor/ bundle exec jekyll build Konfigurationsdatei: /tmp/jekyll-skeleton/_config.yml Quelle: /tmp/jekyll-skeleton Ziel: /tmp/jekyll-skeleton/_site Inkrementeller Build: deaktiviert. Aktivieren Sie mit --incremental Generieren... erledigt in 5,474 Sekunden. Automatische Regeneration: deaktiviert. Verwenden Sie zum Aktivieren --watch. $ tree -L 3 _site/ _Website/ ├── Vermögenswerte │ ├── Schriftarten │ │ ├── FontAwesome.otf │ │ ├── fontawesome-webfont.eot │ │ ├── fontawesome-webfont.svg │ │ ├── fontawesome-webfont.ttf │ │ ├── fontawesome-webfont.woff │ │ └── fontawesome-webfont.woff2 │ ├── main.css │ └── Anbieter │ ├── bootstrap.min.js │ ├── font-awesome.min.css │ ├── jquery.min.js │ └── tether.min.js ├── de │ ├── beispiel-post.html │ ├── index.html │ └── unterkategorie1 │ ├── index.html │ └── post-in-unterkategorie.html ├──ploy_key.enc ├── de │ ├── example-post.html │ ├── index.html │ └── Unterkategorie1 │ ├── index.html │ └── post-in-subdirectory.html ├── es │ ├── index.html │ ├── post-ejemplo.html │ └── Unterkategorie1 │ ├── index.html │ └── post-en-subdirectorio.html ├── feed.xml ├── index.html ├── LIZENZ ├── package.json ├── README.md ├── robots.txt ├── sitemap.xml └── Garn.lock 9 Verzeichnisse, 32 Dateien $ Scheck ausstellen Bundle Exec Jekyll Doctor Konfigurationsdatei: /tmp/jekyll-skeleton/_config.yml Ihre Testergebnisse liegen vor. Alles sieht gut aus. bundle exec htmlproofer --check-html --http-status-ignore 999 --internal-domains marcanuy.github.io,localhost:4000 --assume-extension _Website Ausführen von ["ScriptCheck", "LinkCheck", "HtmlCheck", "ImageCheck"] auf ["_site"] auf *.html ... 14 externe Links werden geprüft... Lief auf 13 Dateien! HTML-Proofer erfolgreich abgeschlossen.
Fühlen Sie sich frei, Probleme zu eröffnen und/oder einen Beitrag zu leisten!