Skip to main content

Allow definition of custom metadata parsers for Pelican content

Project description

A plugin for Pelican that allows the easy definition of custom metadata parsers.

Install

To install the library, you can use pip

$ pip install pelican-metadataparsing

Usage

  1. Update pelicanconf.py:

    1. Add metadataparsing to PLUGINS.

      You should add it before any metadata-affecting plugins.

      PLUGINS = [..., 'metadataparsing', ...]
      
    2. Define your custom metadata parsers through the METADATA_PARSERS setting:

      METADATA_PARSERS = {
          "<metadata-field-name1>": <function parser1(x)>,
          "<metadata-field-name2>": <function parser2(x)>
      }
      
  2. Corresponding fields of the page, article or entity object will have the value returned from the respective parser function.

Example

Multi-line metadata to simple string

import collections
import six

def parse_description(string):
    if string is None or isinstance(string, six.string_types):
        return string

    if isinstance(string, collections.Iterable):
        string = " ".join(string)

    return string


METADATA_PARSERS = {
    "Description": parse_description
}

For a working example check my site and my site’s source code.

Project details


Release history Release notifications

Download files

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

Filename, size & hash SHA256 hash help File type Python version Upload date
pelican-metadataparsing-0.1.0.tar.gz (7.0 kB) Copy SHA256 hash SHA256 Source None Aug 26, 2014

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 DigiCert DigiCert EV certificate StatusPage StatusPage Status page