Skip to content

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

1 Commit
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

mm-read-later

mm-read-later is a Bludit plugin for 3.14.1 that lets visitors keep a personal read-later list in their own browser using localStorage.

The plugin provides the UI layer:

  • a read-later overlay
  • a badge counter
  • an optional theme hook for an open trigger
  • a mobile floating fallback button if no theme trigger exists

Important: this plugin does not automatically inject save buttons into your article lists or page templates. Visitors can only save items if your theme outputs elements with the expected data-rl-* attributes.

Compatibility

  • Bludit: 3.14.1
  • Plugin version: 1.4.0
  • License: MIT

How It Works

The plugin stores saved entries only in the visitor's browser.

  • No data is written to the server
  • No user accounts or database tables are used
  • The saved list is browser-local and device-local
  • The main localStorage key is bludit-readlater-v1
  • The auto-remove preference is stored separately in the browser as bludit-readlater-v1:auto-remove

Each saved item contains:

  • url
  • title
  • slug
  • addedAt

Items are treated as identical by URL.

What The Plugin Renders By Itself

Without any theme customization, the plugin renders:

  • CSS styles in the page head
  • the overlay markup and JavaScript at the end of the page body
  • a mobile-only floating action button if no element with data-rl-open exists

Important behavior:

  • The floating fallback button is hidden on desktop widths from 768px upward
  • On desktop, you should add a theme trigger with Theme::plugins('readLaterIcon')
  • The plugin currently does not output a save button through Theme::plugins('pageBegin')

Installation

  1. Copy the folder to your Bludit plugins directory:

    /bl-plugins/mm-read-later/

  2. Make sure these files exist:

    • plugin.php
    • metadata.json
    • languages/en.json
    • languages/de.json
    • css/readlater.css
    • js/readlater.js
  3. Enable the plugin in the Bludit admin panel.

Recommended Theme Integration

To render an open trigger in your theme, place this hook where you want the read-later icon to appear, for example in the header:

<?php Theme::plugins('readLaterIcon'); ?>

This renders:

  • a bookmark-style trigger
  • a badge showing the current number of saved items
  • a click target that opens the overlay

This hook only opens the saved-items panel. It does not create save buttons for posts automatically.

Save Buttons In Your Theme

To let visitors add or remove entries, your theme must output buttons or links with the expected attributes.

Toggle The Current Page

Use this on a single post/page template when the current page should be added or removed:

<a href="#" data-rl-toggle-current>
  <span data-rl-save-label>Read later</span>
</a>

Behavior:

  • if the current page is not saved yet, it will be added
  • if it is already saved, it will be removed
  • the optional child element with data-rl-save-label is updated to Read later or Gespeichert by the plugin script

Note: the current script updates the label text in German for the saved state (Gespeichert).

Toggle A Specific Item From A List Or Teaser

Use this in homepage lists, category views, teasers, custom cards, or similar places:

<a
  href="#"
  data-rl-toggle
  data-rl-url="https://example.com/article"
  data-rl-title="Article title"
  data-rl-slug="article-slug"
>
  Read later
</a>

Supported attributes:

  • data-rl-url: required for list items
  • data-rl-title: optional, falls back to URL if missing
  • data-rl-slug: optional

If data-rl-url is missing, the plugin falls back to the current page context.

Overlay Behavior

Visitors can:

  • open the list from the trigger or mobile fallback button
  • see the number of saved items
  • open a saved item
  • remove a single item
  • clear the entire list
  • enable automatic removal when opening a saved item

The overlay can be closed by:

  • the close button
  • clicking outside the panel
  • pressing Escape

Limitations And Notes

  • This plugin depends on theme integration for saving content in a useful way
  • Without a theme trigger, the fallback opener is mobile-only
  • There is no server-side sync between browsers or devices
  • There is no admin settings screen
  • The pageBegin() method exists in code but currently returns an empty string

Files

  • [plugin.php](/media/marcy/Eigene Dateien/_Z_BACKUP/sources/bludit-plugins-dev/mm-read-later/plugin.php)
  • [css/readlater.css](/media/marcy/Eigene Dateien/_Z_BACKUP/sources/bludit-plugins-dev/mm-read-later/css/readlater.css)
  • [js/readlater.js](/media/marcy/Eigene Dateien/_Z_BACKUP/sources/bludit-plugins-dev/mm-read-later/js/readlater.js)
  • [metadata.json](/media/marcy/Eigene Dateien/_Z_BACKUP/sources/bludit-plugins-dev/mm-read-later/metadata.json)
  • [languages/en.json](/media/marcy/Eigene Dateien/_Z_BACKUP/sources/bludit-plugins-dev/mm-read-later/languages/en.json)
  • [languages/de.json](/media/marcy/Eigene Dateien/_Z_BACKUP/sources/bludit-plugins-dev/mm-read-later/languages/de.json)
  • [README.de.md](/media/marcy/Eigene Dateien/_Z_BACKUP/sources/bludit-plugins-dev/mm-read-later/README.de.md)

Author

  • Author: magicmarcy
  • Website: https://magicmarcy.de/
  • Email: business@magicmarcy.de

About

Plugin for Bludit 3.14.1 - for a simple Read-Later function

Topics

Resources

Stars

Watchers

Forks

Releases

Sponsor this project

Packages

Contributors

Languages