> For the complete documentation index, see [llms.txt](https://playground.e107sk.com/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://playground.e107sk.com/jplayer-plugin/reference/open-questions.md).

# Open questions

Things about this plugin that are **not currently known**, gathered in one place so they are not lost. Nothing here is a decision — it is a list of things to establish.

Each entry says what was observed and what would settle it.

## Song order is not settable — and the front end depends on it

The player fetches a playlist's songs `ORDER BY position`. But `position` is not in the admin form's field definitions at all, so it can never be set: every song keeps the database default of `0`, and the playback order comes back arbitrary.

The songs screen also has no drag-to-reorder configured. An orphaned `move.png` icon sits unused in the admin assets, which suggests the WordPress original had drag ordering and it was not carried across.

**To settle:** add `position` to the song form (and/or enable drag ordering on the songs screen). Until then, playback order is not controllable.

## Playlist reordering may rewrite IDs

The playlists screen has drag-to-reorder enabled, but it is pointed at the record's `id` column — the primary key — rather than at a dedicated order column, and the playlists table does not have one. Songs reference playlists by that same `id`.

**To settle:** test what happens when playlists are dragged into a new order. **Until it has been tested, do not drag playlists into a new order on a live site.**

## What is the `external` column for?

The songs table has an `external` column. Nothing in the current code writes it, reads it, or exposes it in the admin. It is presumably a remnant of the WordPress original, where it may have marked songs hosted on another server.

**To settle:** confirm it is dead, then decide whether to drop it or wire it up.

## What does the MP3 field expect?

Whether it takes a path, a full URL, or a media-manager reference — and whether an MP3 hosted on another server works — is not established. The `external` column above suggests this was once a supported case.

**To settle:** test each form of input.

## What values does *Autoplay* accept?

The playlist *Autoplay* field is stored as text, not as a yes/no switch. The admin help text does not say what to type into it.

**To settle:** read how the value is used when the player is rendered.

## What scale is *Background opacity* on?

Stored as text, default `100`. `0`–`100` is the obvious reading but has not been confirmed against the CSS that consumes it.

**To settle:** check the generated CSS.

## The empty shortcode file

`e_shortcode.php` defines a shortcode class with nothing in it. It was empty in the original plugin too, so it appears to be a placeholder rather than something that broke.

**To settle:** decide whether to implement a shortcode for inserting a playlist, or remove the file.
