Skip to main content

News Feed extension for Sphinx

Project description

Overview

sphinxcontrib-newsfeed is a extension for adding a simple Blog, News or Announcements section to a Sphinx website.

Features:

  • Makes feed entries from Sphinx documents.

  • Generates a list of entries with teasers.

  • Saves the feed to a file in RSS format.

  • Supports comments via Disqus.

You can see this extension in action at http://htsql.org/blog/. For more examples, see demo directory in the source distribution.

This software is written by Kirill Simonov (Prometheus Research, LLC) and released under BSD license.

Usage

To enable this extension, add the following line to conf.py:

extensions.append('sphinxcontrib.newsfeed')

To add a comment form to news entries, you also need to specify the Disqus website identifier:

disqus_shortname = '...'

Now you can convert any Sphinx document to a news entry by using directive feed-entry. For example:

Welcome!!!
==========

.. feed-entry::
   :date: 2012-01-01

Welcome to the news feed of **Elvensense**.  Here we will post
release announcements and other project news.

Use cut directive to separate the entry teaser from the content:

Elvensense 96 is released
=========================

.. feed-entry::
   :date: 2012-12-31

We are proud to announce a new release of **Elvensense**.

.. cut::

Specific changes since the last release:

* An exciting feature was added.
* An annoying bug was fixed.

To make a list of news entries and generate an RSS file, use feed directive:

.. feed::
   :rss: index.rss
   :title: Elvensense News

   release
   welcome

The body of feed directive must list documents containing news entries (similar to toctree). The options of feed directive define the name of the RSS file and describe the feed metadata.

You need to manually update your HTML templates to add a link to the RSS feed:

<link rel="alternate"
      type="application/rss+xml"
      title="Elvensense News"
      href="/index.rss" />

Reference

Directives

feed-entry

Specifies an entry metadata.

This directive has no body.

Options:

author

The author of the post (optional).

date

The date of the post in YYYY-MM-DD format.

feed

Inserts a list of entries with teasers at the current location.

This directive should contain a list of document names (similar to toctree). This directive adds the documents to the hierarchy, so that you don’t need to add the to toctree.

Options:

rss

Where to write the RSS feed (optional).

title

The name of the RSS channel.

description

Description of the RSS channel.

link

The website URL.

cut

Separates the entry teaser from the rest of the text.

This directive has no options and no body.

disqus

Inserts a Disqus comment widget.

Normally you don’t need to use this directive for news entries since, if disqus_shortname parameter is set, Disqus comment form is encluded automatically with every feed entry. This directive allows you to use Disqus with regular Sphinx documents.

Options:

shortname

The website identifier. Use to override disqus_shortname configuration parameter.

identifier

The page identifier. If not set, use the document name.

title

The title of the page. If not set, use the document title.

Configuration parameters

disqus_shortname

Sets the unique identifier for a Disqus website. To acquire one, you need to register the website on http://disqus.com/.

disqus_developer

Sets the developer mode (False or True).

CSS classes

feed-meta

Wraps for the post metadata block.

feed-author

Wraps the author name.

feed-date

Wraps the post date.

feed-disqus

Wraps the Disqus comment widget.

feed-ref

Wraps the post title in the list of posts.

feed-more

Wraps the Read more… link.

Project details


Download files

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

Source Distribution

sphinxcontrib-newsfeed-0.1.1.tar.gz (9.4 kB view details)

Uploaded Source

File details

Details for the file sphinxcontrib-newsfeed-0.1.1.tar.gz.

File metadata

File hashes

Hashes for sphinxcontrib-newsfeed-0.1.1.tar.gz
Algorithm Hash digest
SHA256 1022d97ee81b7b4af2d9154457d2d010a15faba1cf9069ffc0b225cfaf6c73e7
MD5 9e7f2d7e3f62d317b8c88d4033ead35a
BLAKE2b-256 11574f6600f80188a4e54793408645e95fc6ed317a8894247d9f7f8830f7e1a3

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page