Skip to content

maveio/mave-wordpress

Repository files navigation

Mave for WordPress

Mave for WordPress lets editors upload, choose, and embed Mave videos from the WordPress block editor.

Features

  • Mave Video block for Gutenberg.
  • Direct uploads through Mave, with the player shown only after the video is playable.
  • Mave library picker with collection support.
  • Global player defaults for theme and color, with per-block overrides.
  • [mave_video] shortcode for classic content.
  • Server-side API key storage; editors only receive WordPress REST responses and scoped upload tokens.

Requirements

  • WordPress 6.5 or newer.
  • PHP 7.4 or newer.
  • A Mave API key.

Installation

  1. Install and activate the plugin in WordPress.
  2. Open Settings > Mave.
  3. Paste your Mave API key.
  4. Optionally set an upload target. Use a Mave collection id to scope uploads and make the block picker open from that collection.

Usage

Add a Mave Video block to a post or page, then choose an existing Mave video or upload a new one. The block renders a Mave player in the editor and on the front end.

The block inherits the player theme and color from Settings > Mave. Select a block and use the block settings sidebar to override those values for one player.

Shortcodes are also supported:

[mave_video id="..." theme="dolphin" color="#f6ead9"]

Configuration

Production Mave endpoints are configured by default. Advanced settings allow a site administrator to change the component module URL and Mave service endpoints when needed.

The API key is stored in WordPress options and is not exposed to the browser. Uploads use short-lived JWTs generated by WordPress for the configured Mave space or collection.

External services

This plugin connects to Mave, an external video hosting, upload, playback, and video analytics service. Mave is provided by Mave and uses the mave.io and video-dns.com domains listed below.

The plugin uses Mave services under these conditions:

  • When an administrator configures a Mave API key, the WordPress server sends authenticated API requests to api.mave.io to list videos and collections for the block picker. These requests send the configured API key and request parameters such as page number, page size, collection id, and archived filter.
  • When an editor uploads a file through the Mave block, WordPress creates a short-lived upload token scoped to the configured Mave upload target. The editor's browser connects to dash.mave.io for upload status and uploads the selected video or audio file to upload.mave.io. The upload sends the selected file, filename, file type, upload id, and short-lived upload token.
  • When the editor or a public page renders a Mave block or shortcode, the browser loads the Mave component module from cdn.video-dns.com so mave-player and mave-upload web components can render and operate.
  • Public pages that contain a Mave player load thumbnails, video playback assets, and related player resources from video-dns.com CDN endpoints such as space-{space-id}.video-dns.com. These requests include the requested video asset URL and normal browser request metadata.
  • The Mave player may send privacy-friendly aggregate playback events to metrics.video-dns.com. These events include the embed id and playback event data needed for video analytics. Mave analytics do not use cookies, cross-site tracking, advertising identifiers, or viewer profiling.

Development

Local development instructions live in DEVELOPMENT.md.

About

No description, website, or topics provided.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors