JCMS WordPress LibriVox Plugin

WP-LibriVox

Description

A shortcode-based plugin that accesses free public domain readings of out-of-copyright and copyright-free books. Recordings are provided by LibriVox.org and are accessed via the LibriVox REST API

The plugin provides a shortcode interface that allows presentation of a specified book, by its LibriVox API ID, with downloadable or HTML5 playable content.

The plugin also provides a rich web application that allows direct searching, browsing and playing of any recording in the LibriVox calatlogue. This application uses a large subset of the full LibriVox API to realise its functionality.

The rich web application uses a proxy REST API, accessed by client-side JavaScript. This proxy API is also available should other plugins wish to use it.

Features

  • Access thousands of public domain readings
  • Simple shortcode interface
  • REST interface for programmers

Deployment

Unzip the plugin archive into /wp-content/plugins/ directory of your WordPress installation. Enable in the plugins section of the wp-admin dashboard. There are no configuration options needed.

Shortcode for single book

Add shortcode [librivox_book bookid="nnn"] In a suitable location. The parameter 'nnn' is the LibriVox book ID. For example, replacing 'nnn' with '804' will render the classic Conan Doyle Sherlock Holmes collection:

LibriVox single book
LibriVox single book

Shortcode for interactive app

Add shortcode [librivox_app] In a suitable location. This will trigger the full interactive application, allowing searching for books by author and playing an audio book:

LibriVox interactive application #1
#1: Search for Author
LibriVox interactive application #2
#2: Booklist
LibriVox interactive application #3
#3: Select book
LibriVox interactive application #4
#4: Play track

REST endpoints

These are the available REST endpoints should another plugin require them. [Note that the URL may require a 'index.php' prefix, depending on your permalink settings.]

  • List all authors: /wp-json/wp-librivox/v1/authors
  • List books by author (e.g. ‘doyle’): /wp-json/wp-librivox/v1/books/doyle
  • Get book details by book ID: /wp-json/wp-librivox/v1/books/id/4135
  • Get track list by book ID: /wp-json/wp-librivox/v1/rss/4135