What Is WP Media Player?
WP Media Player is a fast, self-hosted WordPress video and audio player that lets you host, brand, and monetize your media directly from your WordPress dashboard. Add a video, pick a player skin, drop in chapters and captions, capture emails mid-playback, and track every view — all without writing a single line of code, and without handing your viewer data to a third-party platform.
Performance & Loading Speed
WP Media Player is built on the Vidstack engine and loads on your terms. A Load Strategy setting decides exactly when each player initializes, so a video below the fold never blocks your page from rendering.
- Eager: Load the player immediately with the page.
- Visible: Load only when the player scrolls into view — the default, and the safest choice for Core Web Vitals.
- Idle: Wait until the browser is idle, then load in the background.
- Play: Load nothing until the viewer actually clicks play.
- Poster: Show only the poster image until playback starts.
Because playback is self-hosted, there are no external player scripts, no tracking pixels, and no embed iframes slowing down your site.
Introducing the Media Editor
Every media item opens in a single editor with a live preview on one side and your settings on the other. From here you can:
- Choose the source — media library file, YouTube, Vimeo, or a direct URL
- Apply a player preset and override its branding per video
- Set the aspect ratio, autoplay behavior, and what happens when the video ends
- Add chapter markers with start and end times for easy navigation
- Upload VTT caption tracks and let viewers switch languages
- Place interactive layers at any timestamp
- Link language versions of the same video with a built-in switcher
- Generate a ready-to-paste shortcode for the video
Everything is saved to your own database and previewed live, so you see the finished player before you publish it.
Supported Media Sources
You are not locked into one host. WP Media Player plays from wherever your media already lives:
- WordPress Media Library: Upload a new file or pick one you already have.
- YouTube: Paste any video URL. Privacy-enhanced mode is available.
- Vimeo: Paste any Vimeo video URL.
- Direct URL: Point at any MP4, WebM, or MP3 file.
- Audio: Use the same player and features for podcasts and audio episodes.
- Cloud video platforms (Pro): Connect Bunny Stream, BunnyCDN Storage, Mux, Gumlet, or Cloudflare Stream and browse your hosted videos without leaving WordPress.
Player Presets & Branding
A preset is a reusable player configuration — skin, visible controls, playback behavior, colors, and context menu — that you apply to any number of videos at once.
Six skins ship in the free version: Classic, Modern, Simple, Standard, Floating, and Minimal. A seventh cinematic skin, Ambient, is included with Pro. You can also build your own presets from scratch.
Within each preset you control which controls appear — play, skip forward and back, progress bar, current time, volume, settings, playback speed, fullscreen, Picture-in-Picture, captions, and chapters — plus the brand color, control bar color, play button color, border radius, and a clickable logo watermark you can place in any corner.
Turning Viewers Into Subscribers
Layers are interactive elements that appear over the video at a timestamp you choose. Use them to move a viewer toward the next step instead of letting the video simply end.
- Email capture: Ask for an email address mid-playback with your own headline, placeholder, button text, and colors.
- CTA cards: Show a call to action at a chosen point or at a percentage of the video.
- Hotspots: Place clickable markers anywhere on the video frame.
- Forms: Drop a Fluent Forms form straight into the player.
- Ads: Run a promotional layer with an optional skip control.
- Shortcodes: Render any WordPress shortcode inside the player.
Every submitted email is stored in your own WordPress database first. From there you can forward it automatically to Mailchimp, Brevo, ActiveCampaign, MailerLite, GetResponse, Omnisend, a custom webhook, or a plain email notification sent through WordPress or your own SMTP server.
Analytics Dashboard
Turn analytics on and WP Media Player records views, plays, pauses, seeks, progress, and completions for every video — in your database, on your server.
The dashboard shows total views, plays, events, and unique media at a glance. Pro adds watch time tracking, engagement metrics, geographic data, device and browser breakdowns, custom date ranges, and real-time monitoring. Automatic cleanup keeps the events table lean by pruning old rows on a schedule you set.
If you already use Google Analytics, you can optionally forward player events to your own measurement ID. It is off by default.
Embedding Your Player
There are three ways to put a player on the page, and all of them take seconds:
- Shortcode: Paste
[wp-media-player id="123"]into any post, page, or widget. Optional attributes let you override autoplay, the poster image, and the playlist layout for that one embed. - Gutenberg block: Search for WP Media Player in the block inserter, pick your media, and adjust autoplay, poster, and aspect ratio in the sidebar. The block supports Wide and Full alignment.
- Timestamp links: Use the
[wpmediaplayer_timestamp]shortcode to create clickable timestamps in your post copy that jump the player to an exact moment.
The player renders as a native custom element, so it works with any theme and any page builder that accepts shortcodes.
Exploring Settings
Global defaults live under WP Media Player > Settings, organized into eight tabs:
- General: Default preset, default aspect ratio, auto-resume playback, and site-wide custom CSS.
- Branding: Brand color, control bar color, play button colors, and logo watermark applied to every player.
- Email Providers: Connect your marketing platform, configure SMTP, or point submissions at a webhook.
- Storage: Add API credentials for Bunny, Mux, Gumlet, and Cloudflare.
- YouTube: Enable privacy-enhanced mode and show a subscribe button linked to your channel.
- Analytics: Turn tracking on or off and set how long event data is retained.
- Export: Back up and restore your plugin configuration.
- Appearance: Match the admin interface to your brand color and preloader preference.
Auto-resume deserves a mention of its own: switch it on and each viewer picks up exactly where they left off, with a minimum watch time before a position is saved and a retention window of 7, 30, or 90 days — or forever.
Privacy & Data Ownership
WP Media Player stores media configuration, analytics events, and captured email addresses in custom tables inside your own WordPress database. No viewer data is sent to CodeConfig or any third-party analytics service.
YouTube privacy-enhanced mode routes embeds through youtube-nocookie.com. Google Analytics forwarding is opt-in and uses your own measurement ID. Storage provider credentials stay on your server and are only used to talk to the service you connected.
What Pro Adds
The free version covers the player, presets, media management, chapters, layers, email capture, and core analytics. A Pro license unlocks:
- Playlists, including the drag-and-drop builder and YouTube playlist import
- The Ambient player skin
- Advanced analytics — watch time, engagement, geography, devices, custom ranges, and real-time data
- Collected email management with export and delete
- The visual overlay editor, subtitle editor, and timed content editor
- Media tags for organizing a large library
- Cloud storage integrations for Bunny, Mux, Gumlet, and Cloudflare
Why Use WP Media Player?
- No coding skills required
- Self-hosted playback with no third-party viewer tracking
- Load strategies that protect your page speed scores
- Seven player skins plus unlimited custom presets
- Email capture and interactive layers built into the player
- Analytics stored in your own database
- Works with any theme, page builder, or block editor
- Translation ready, with template overrides for developers
Start hosting, branding, and growing an audience from your own video player today with WP Media Player.