There are no reviews yet. Be the first to send feedback to the community and the maintainers!
# Jekyll Sitemap Generator Plugin *Jekyll plugin to silently generate a sitemaps.org compliant sitemap for your Jekyll site* [![Build Status](https://travis-ci.org/jekyll/jekyll-sitemap.svg?branch=master)](https://travis-ci.org/jekyll/jekyll-sitemap) ## Usage 1. Add `gem 'jekyll-sitemap'` to your site's Gemfile and run `bundle` 2. Add the following to your site's `_config.yml`: ```yml url: "https://example.com" # the base hostname & protocol for your site plugins: - jekyll-sitemap ``` π‘ If you are using a Jekyll version less than 3.5.0, use the `gems` key instead of `plugins`. If all gem plugins have the same `priority`, they will be executed in the order they are required, generally. Thus, if you have other plugins which generate content and store that content in `site.pages`, `site.posts`, or `site.collections`, be sure to require `jekyll-sitemap` either *after* those other gems if you *want* the sitemap to include the generated content, or *before* those other gems if you *don't want* the sitemap to include the generated content from the gems. (Programming is *hard*.) Because the sitemap is added to `site.pages`, you may have to modify any templates that iterate through all pages (for example, to build a menu of all of the site's content). ## Note on Use with GitHub Pages Gem The GitHub Pages gem ignores all plugins included in the Gemfile. If you only include `jekyll-sitemap` in the Gemfile without also including it in the `_config.yml` *the plugin will not work*. This can be confusing because the official Jekyll docs state that plugins can be included in either the Gemfile or `_config.yml`. When building a site that uses the GitHub Pages gem, follow the instructions above and ensure that `jekyll-sitemap` is listed in the `plugins` array in `_config.yml`. :warning: If you are using Jekyll < 3.5.0 use the `gems` key instead of `plugins`. ## `<lastmod>` tag The `<lastmod>` tag in the `sitemap.xml` will reflect by priority: 1. The modified date of the file as reported by the filesystem if you have `jekyll-last-modified-at` plugin installed (not compatible with GitHub Pages auto building) 2. A personalised date if you add the variable `last_modified_at:` with a date in the Front Matter 3. The creation date of your post (corresponding to the `post.date` variable) ## Exclusions If you would like to exclude specific pages/posts from the sitemap set the sitemap flag to `false` in the front matter for the page/post. ```yml sitemap: false ``` To exclude files from your sitemap. It can be achieved with configuration using [Jekyll v3.7.2 and jekyll-sitemap v1.2.0](https://github.com/jekyll/jekyll/commit/776433109b96cb644938ffbf9caf4923bdde4d7f). Add a glob config to your `_config.yml` file. ```yml defaults: - scope: path: "assets/**/*.pdf" values: sitemap: false ``` ## Override default development settings [Follow these instructions on Jekyll's documentation](https://jekyllrb.com/docs/usage/#override-default-development-settings). ## Developing locally * Use `script/bootstrap` to bootstrap your local development environment. * Use `script/console` to load a local IRB console with the Gem. ## Testing 1. `script/bootstrap` 2. `script/cibuild` ## Known Issues 1. If the `sitemap.xml` doesn't generate in the `_site` folder, ensure `_config.yml` doesn't have `safe: true`. That prevents all plugins from working. 2. If the `sitemap.xml` doesn't generate in the `_site` folder, ensure that you don't have a sitemap generator plugin in your `_plugin` folder. ## Contributing 1. Fork the project 2. Create a descriptively named feature branch 3. Add your feature 4. Submit a pull request
jekyll
π Jekyll is a blog-aware static site generator in Rubyminima
Minima is a one-size-fits-all Jekyll theme for writers.jekyll-admin
A Jekyll plugin that provides users with a traditional CMS-style graphical interface to author content and administer Jekyll sites.jekyll-seo-tag
A Jekyll plugin to add metadata tags for search engines and social networks to better index and display your site's content.jekyll-feed
π A Jekyll plugin to generate an Atom (RSS-like) feed of your Jekyll postsjekyll-redirect-from
π Seamlessly specify multiple redirections URLs for your pages and posts.jekyll-compose
π Streamline your writing in Jekyll with these commands.jemoji
GitHub-flavored emoji plugin for Jekyllclassifier-reborn
A general classifier module to allow Bayesian and other types of classifications. A fork of cardmagic/classifier.jekyll-import
π₯ The "jekyll import" command for importing from various blogs to Jekyll format.jekyll-archives
π Archive pages for your Jekyll tags and categories.github-metadata
Jekyll plugin to propagate the `site.github` namespace and set default values for use with GitHub Pages.jekyll-gist
π Liquid tag for displaying GitHub Gists in Jekyll sites.jekyll-mentions
π₯ @mention support for your Jekyll sitejekyll-sass-converter
A Sass converter for Jekyll.mercenary
An easier way to build your command-line scripts in Ruby.jekyll-help
NO LONGER MAINTAINED. USE JEKYLL TALK INSTEAD.jekyll-paginate
NO LONGER UNDER ACTIVE DEVELOPMENT as of Jekyll 3: Pagination Generator for Jekylljekyll-watch
π Rebuild your Jekyll site when a file changes with the `--watch` switch.jekyll-avatar
A Jekyll plugin for rendering GitHub avatarsjekyll-coffeescript
A CoffeeScript converter for Jekyll.brand
Logo files for Jekyll.dashboard
A dashboard for at-a-glance knowledge of the health of the Jekyll ecosystem.jekyll-docs
Offline usage documentation for Jekyll. Requires Jekyll 3 and above.example
Jekyll example Project site. Do not clone.jekyll-opal
Let Jekyll convert your Ruby into JavaScript using Opaldirectory
Plugins and Themes discovery for Jekyll, built with Jekyll.jekyll-commonmark
CommonMark generator for Jekyllatom-jekyll
An editor built on top of a web browser? How 'bout some static site previewing?jekyll-textile-converter
Textile converter for Jekyll.Utterson
CI benchmarking suite for Jekylldns
DNS records for Jekyll properties. Uses octodns to sync.hyde
Our Campfire Hubot. Helps us maintain Jekyll even better. β€οΈbenchmarking
Benchmarking tools for Jekyllhubot-pr-status
Determine the status of a given pull request on GitHub.jekyllbot
The code that runs @jekyllbotacceptance
Daily acceptance tests for Jekyll. Builds 10 complex websites.themes-site
A list of third-party themes.teams
The code behind teams.jekyllrb.comscreencast
A collection of Jekyll screencast ideas.rubocop-jekyll
A RuboCop extension to enforce common code style in Jekyll and Jekyll pluginsjekyll-test
Testing helpers for Jekyll.test-site
A very, very simple, barebones test site for Jekyll.omnibus-jekyll
NOT UNDER ACTIVE DEVELOPMENT: Build standalone installers for Jekyll & its dependencies.jekyll-test-gem-plugin
Wouldn't it be cool if you could ship Jekyll plugins as gems?mojobot
The #jekyll IRC bot.cases
Test cases to aid in exploring bugs with Jekyll.jekyll-test-plugin-malicious
A MALICIOUS I WILL EAT ALL YOUR CODE plugin. Use at your own risk.common-theme
carbon-copy-content
Clone these files from here to other repos using probot.jekyll-test-theme-malicious
A malicious theme for Jekyll (for testing).github
Jekyll organization github metadataprofiling
Profiling the build time of various types of sites.Love Open Source and this site? Check out how you can help us