Skip to main content
Join the official 2019 Python Developers SurveyStart the survey!

sitemap generator plugin for pelican

Project description

A sitemap plugin for Pelican.

It generates a sitemap.xml according to the specification of sitemaps.org and considers the pelican index page, articles, pages and special pages (like tags, categories, authors). Also comes with a XML stylesheet to be able to view the sitemap in browser without pain.

There is also a sitemap plugin within the official pelican plugin repo. The main differences in my package are:

  • the overview pages for tags, pages aso are included
  • there is a stylesheet
  • used dates do not include time

NOTICE: Backwards incompatible changes in 1.0.0:

In version 1.0.0 the package naming has been fixed, it’s now called “extended_sitemap” (instead “extended-sitemap”) following PEP8. Please adjust your usages in PLUGINS appropriately.

Pelican settings

Add to the plugins list:

PLUGINS = [
    'extended_sitemap'
]

Plugin settings

Add the EXTENDED_SITEMAP_PLUGIN dict to your settings. The keys explained:

  • priorities: priority for each page type, from 0.0 to 1.0
    • index: index page
    • articles: article pages
    • pages: pages
    • others: category, tags and authors pages
  • changefrequencies: how often a page will likely change, possible values: always, hourly, daily, weekly, monthly, yearly, never

The settings below are the default values:

EXTENDED_SITEMAP_PLUGIN = {
    'priorities': {
        'index': 1.0,
        'articles': 0.8,
        'pages': 0.5,
        'others': 0.4
    },
    'changefrequencies': {
        'index': 'daily',
        'articles': 'weekly',
        'pages': 'monthly',
        'others': 'monthly',
    }
}

Paths for DIRECT_TEMPLATES

The value of the paths for DIRECT_TEMPLATES are defined by the following order:

({NAME} stands for the direct template name, e.g. ARCHIVES for archives.)

  1. if the setting {NAME}_URL is defined, use {NAME}_URL
  2. if the setting {NAME}_URL is not defined but the setting {NAME}_SAVE_AS is, use {NAME}_SAVE_AS
  3. if none of the above applies, use the default filename {NAME}.html

Note that {NAME}_URL is not a default Pelican setting.

Tests

nose is required to run the tests. Install the package and run with the nosetest command.

The tests fixture files were created with generated content by http://jaspervdj.be/lorem-markdownum/.

Changelog

see Github release page.

ToDos

What still has to be implemented:

  • support for multilingual content, see pelican translations (it in fact may work, but I have not tested it)

Contributors

Thanks to all contributers!

Bug Reporters:

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Files for pelican-extended-sitemap, version 1.2.3
Filename, size File type Python version Upload date Hashes
Filename, size pelican-extended-sitemap-1.2.3.tar.gz (19.2 kB) File type Source Python version None Upload date Hashes View hashes

Supported by

Elastic Elastic Search Pingdom Pingdom Monitoring Google Google BigQuery Sentry Sentry Error logging AWS AWS Cloud computing DataDog DataDog Monitoring Fastly Fastly CDN SignalFx SignalFx Supporter DigiCert DigiCert EV certificate StatusPage StatusPage Status page