Skip to content

Administration

Go to SlideMind Bridge > Packages to manage your uploaded packages.

At the top of the page, a notice indicates whether a supported LMS was detected:

  • Green notice: “Active LMS detected: [name]” — completion and score bridging is active.
  • Yellow warning: “No supported LMS detected” — packages play and track progress, but no completion passback occurs.

The table displays the following columns:

ColumnSortableDescription
TitleYesPackage name
TypeYesFormat badge: SCORM 1.2, SCORM 2004, or xAPI
CourseYesAssociated course name (editable inline)
UploadedYesUpload date
ShortcodeReady-to-copy [smbr_player id="..."] with a copy button
ActionsPreview, Replace, Delete
  • Search — Filter by package title.
  • Type filter — Dropdown: All types, xAPI, SCORM 1.2, SCORM 2004.
  • Course filter — Dropdown to filter by course association.

Click Preview to open a modal that loads the package in an iframe. The modal uses the same nonce-signed launch URL as the frontend player. Close the modal to stop content execution.

Click Replace to upload a new ZIP file for an existing package. The old content is deleted and replaced with the new archive. The package ID, shortcode, and all tracking data are preserved — only the content files change.

Click Delete to permanently remove a package. This deletes the package post, its extracted files, and all associated tracking data. A confirmation prompt appears before deletion.

Each package can be associated with a course. This association is used for:

  • LMS bridging — the bridge needs to know which LMS course/lesson the package belongs to.
  • Reports grouping — packages with the same course label are grouped in the Reports course detail view.

Editing the course association:

Click the edit icon next to the course column for any package.

  • When an LMS is detected: a dropdown appears listing courses from the active LMS (e.g., LearnDash courses, TutorLMS courses). Select a course and click Save.
  • When no LMS is detected: a text input appears with autocomplete suggestions from existing course labels. Type a course name and click Save.

Course labels can also be edited inline — click Cancel to discard changes.


The Settings card appears below the packages table on the Reports page.

FieldDescriptionDefaultRange
xAPI statements stored per attemptMaximum number of xAPI statements kept per learner attempt. Older statements are discarded when the limit is reached.5010–500

This controls storage usage for xAPI packages. SCORM packages store CMI data as a single JSON blob and are not affected by this setting.


SlideMind Bridge detects supported LMS plugins automatically on every page load. If multiple LMS plugins are active, the highest-priority one is used:

PriorityLMS pluginPlugin slugStatus
1LearnDashsfwd-lms/sfwd_lms.phpFully tested
2TutorLMStutor/tutor.phpBeta
3LearnPresslearnpress/learnpress.phpBeta
4LifterLMSlifterlms/lifterlms.phpBeta
5Sensei LMSsensei-lms/sensei-lms.phpBeta

Note: LearnDash integration is fully tested. The other LMS bridges are in beta — they implement the same completion and score passback logic but have not been extensively tested in production. Please report any issues.

When a learner achieves a “completed” or “passed” status in a SCORM or xAPI package, two things happen:

  1. Completion passback — The LMS lesson/topic associated with the package is marked as complete using the LMS’s native API.
  2. Score passback — If a score is recorded, it is stored in WordPress user meta (_smbr_score_{package_id}) with the raw score, max score, percentage, and timestamp.

For completion passback to work, the package must be associated with an LMS course, and it must be embedded in an LMS lesson or topic. Bridge automatically captures the LMS context (lesson/topic post ID) when the shortcode or block renders inside an LMS lesson.

If no supported LMS is detected:

  • Packages play normally in sandboxed iframes.
  • Learner progress (status, score, time, attempts) is tracked in the smbr_tracking table.
  • No completion or score data is sent to any external system.

Note: This feature requires a Pro license.

External LRS forwarding lets you send xAPI statements to an external Learning Record Store in addition to storing them locally. This is useful when you need centralized analytics across multiple platforms.

When enabled, every xAPI statement received by Bridge is forwarded to your external LRS in real time. Forwarding is fire-and-forget — if the external LRS is unreachable, the statement is still stored locally and the learner experience is not affected.

The LRS forwarding card appears on the Reports page, below the Settings card (visible only with a Pro license).

FieldDescription
Enable LRS forwardingCheckbox to activate or deactivate forwarding
LRS Endpoint URLThe xAPI endpoint of your LRS (e.g., https://lrs.example.com/xapi/)
Basic Auth KeyThe Basic Auth key (username) provided by your LRS
Basic Auth SecretThe Basic Auth secret (password). Once saved, the field shows ********. Leave blank to keep the current secret.

Click Test Connection to verify your credentials before saving. The test sends a request to the LRS and reports success or failure.

Click Save to store the settings. The secret is encrypted at rest using AES-256 before being stored in the database.

Any LRS that accepts xAPI statements via the standard POST /statements endpoint with Basic Auth is compatible. Examples include:

  • Learning Locker
  • Watershed (by Rustici Software)
  • SCORM Cloud
  • Veracity LRS
  • Yet Analytics
  1. Learner interacts with an xAPI package.
  2. The xAPI content sends a statement to Bridge’s built-in LRS emulator (/wp-json/smbr/v1/xapi/statements).
  3. Bridge stores the statement locally in the smbr_tracking table.
  4. If forwarding is enabled, Bridge immediately sends a copy of the statement to the external LRS endpoint.
  5. The response from the external LRS is not awaited — forwarding does not block the learner experience.

Data pointSCORM 1.2 / 2004xAPI
Completion statuscmi.core.lesson_status / cmi.completion_statusDerived from verb (completed, passed, failed)
Score (raw)cmi.core.score.raw / cmi.score.rawresult.score.raw
Score (max)cmi.core.score.max / cmi.score.maxresult.score.max
Score (scaled)result.score.scaled (SCORM 2004 also)
Total timecmi.core.total_time / cmi.total_timeresult.duration
Suspend datacmi.suspend_dataState API
Interactionscmi.interactions.n.*Individual statements
Attempt numberTracked per user-package pairTracked per user-package pair

Statuses follow a one-way progression:

not attempted → incomplete → completed / passed / failed

A status can only move forward (e.g., incomplete to completed), never backward. This prevents edge cases where a content package might reset its own status.

Each learner-package pair tracks an attempt number. When a learner re-opens a package, Bridge loads the existing data for the current attempt, allowing the learner to resume where they left off.

SCORM packages use cmi.suspend_data for resume data. xAPI packages use the State API endpoint.


When you delete SlideMind Bridge through the WordPress Plugins > Delete flow, the following data is permanently removed:

DataLocation
Tracking table{prefix}smbr_tracking (dropped)
Plugin optionssmbr_version, smbr_settings (deleted)
Package postsAll smbr_package custom post type entries (deleted)
Package postmetaAll _smbr_* postmeta keys (deleted)
User metaAll _smbr_* usermeta keys (deleted)
Uploaded fileswp-content/uploads/smbr-packages/ directory (recursively deleted)

Note: Deactivating the plugin does not delete any data. Data is only removed on full uninstall (delete).