Building a WordPress Series Plugin: Specifications

By Sol in Lab

The first step in developing a WordPress plugin is defining its features and functionality.

Features

Series Management

  • Create/Edit/Delete series
  • Series Properties
    • Title
    • Description
    • Other?

Series Content Management

In addition to managing the series themselves, we’ll also need to be able to manage the items (e.g. posts) that compose a series.

  • View items (list)
  • Remove items (individual/bulk)
  • Reorder items
    • Manual ordering: Allows author to curate series sequence
    • Default ordering: Item publication date (oldest – most recent)

Output

These features pertain to how the series content is displayed.

Series Page

  • List items in series (links to item pages)
  • Item titles are not prefixed with series name on this page
    • If item has series name in title already, it is removed (along with punctuation/spaces/etc.)
  • Series properties (title, description, metadata, etc.)

Series Item Page

  • Content prefix – e.g. “This post is part 2 of 10 in {series-link}”
    • Optional (user option)
    • User-defined template
  • Series navigation (filter and/or shortcode)
    • See Widgets
  • Prefix item title with series name
    • See Sitewide

Widgets

  • Series navigation
    • Links to other posts in series (list)
    • Link to series main page (to view all items in series)
    • Display options
      • Full listing – all items in series including current item
        • Current item is in the list, but is not linked
      • Subset listing – limited number of items before/after current item
        • User-defined number of items to display
      • Next/Prev item(s) in series – quick access to directly adjacent items in series
    • Only displayed when viewing an item that is part of a series
  • List series items
    • Select a series to list items of
    • + Good for highlighting a particular series of posts (on home page, etc.)

Sitewide

  • Prefix item titles with series name
    • Optional (user option)
    • + Allows user to focus on specific item’s title when writing
    • + Connects item with series that it’s part of
    • ! Must create clear conditions when series name is added to item title and when it is not (single, archive, etc.)

Open to change

This specification will likely be updated over time as new features are added and existing features modified. Your feedback will also determine what features are developed.

Next

Planning is fun and all, but the next step is where the real fun begins– developing the plugin! Stay tuned!