{"id":308053,"date":"2026-05-01T21:39:39","date_gmt":"2026-05-01T21:39:39","guid":{"rendered":"https:\/\/wordpress.org\/plugins\/dependent-media-audio-playlist-for-beaver-builder\/"},"modified":"2026-05-01T21:39:40","modified_gmt":"2026-05-01T21:39:40","slug":"dependent-media-audio-playlist-for-beaver-builder","status":"publish","type":"plugin","link":"https:\/\/test.wordpress.org\/plugins\/dependent-media-audio-playlist-for-beaver-builder\/","author":16819691,"comment_status":"closed","ping_status":"closed","template":"","meta":{"_crdt_document":"","version":"2.0.2","stable_tag":"2.0.2","tested":"6.9.4","requires":"6.2","requires_php":"7.4","requires_plugins":null,"header_name":"Dependent Media Audio Playlist for Beaver Builder","header_author":"Dependent Media","header_description":"A Beaver Builder module that adds a customizable audio playlist player with shuffle, repeat, artwork, and full playback controls. Tracks live in your Media Library; nothing is sent to any external service.","assets_banners_color":"","last_updated":"2026-05-01 21:39:40","external_support_url":"","external_repository_url":"","donate_link":"","header_plugin_uri":"https:\/\/github.com\/Dependent-Media\/dm-audio-playlist","header_author_uri":"https:\/\/dependentmedia.com","rating":0,"author_block_rating":0,"active_installs":0,"downloads":66,"num_ratings":0,"support_threads":0,"support_threads_resolved":0,"author_block_count":0,"sections":["description","installation","faq","changelog"],"tags":{"2.0.2":{"tag":"2.0.2","author":"hsojhsoj","date":"2026-05-01 21:39:40"}},"upgrade_notice":{"2.0.2":"<p>First public WordPress.org release. If you were running a prior internal 1.x &quot;BB MP3 Player&quot; build, your existing module instances and their settings will continue to work after upgrade \u2014 no manual migration needed. Works with both Beaver Builder Lite and Beaver Builder Pro.<\/p>"},"ratings":[],"assets_icons":[],"assets_banners":[],"assets_blueprints":{},"all_blocks":[],"tagged_versions":["2.0.2"],"block_files":[],"assets_screenshots":[],"screenshots":[],"jetpack_post_was_ever_published":false},"plugin_section":[],"plugin_tags":[452,11515,708,218,220],"plugin_category":[50],"plugin_contributors":[254136],"plugin_business_model":[],"class_list":["post-308053","plugin","type-plugin","status-publish","hentry","plugin_tags-audio","plugin_tags-beaver-builder","plugin_tags-mp3","plugin_tags-music","plugin_tags-playlist","plugin_category-media","plugin_contributors-hsojhsoj","plugin_committers-hsojhsoj"],"banners":[],"icons":{"svg":false,"icon":"https:\/\/s.w.org\/plugins\/geopattern-icon\/dependent-media-audio-playlist-for-beaver-builder.svg","icon_2x":false,"generated":true},"screenshots":[],"raw_content":"<!--section=description-->\n<p>Dependent Media Audio Playlist for Beaver Builder adds a self-contained audio playlist module to the Beaver Builder page editor. Drop it onto a page, paste in audio URLs (or pick files from your media library), and you get a full playlist player with play\/pause, previous\/next, shuffle, repeat, scrubbable progress, and a volume slider \u2014 all styleable from the standard Beaver Builder color and dimension settings.<\/p>\n\n<p>This plugin is <strong>not affiliated with or endorsed by Beaver Builder<\/strong>. \"Beaver Builder\" is a trademark of Beaver Builder LLC and is used in this plugin's name and description solely to describe what page builder this module integrates with.<\/p>\n\n<h4>Features<\/h4>\n\n<ul>\n<li>Full playlist UI with track titles, artists, and optional artwork<\/li>\n<li>Play, pause, previous, next, shuffle, repeat (off \/ repeat-all \/ repeat-one)<\/li>\n<li>Scrubbable progress bar with current time and duration<\/li>\n<li>Volume slider with configurable initial volume<\/li>\n<li>Optional autoplay (browser-permitting)<\/li>\n<li>Per-instance color customization: background, text, accent, progress bar, hover highlight<\/li>\n<li>Border radius and max-width controls<\/li>\n<li>Native HTML5 audio \u2014 no external libraries, no third-party services<\/li>\n<li>Works with whatever audio formats the visitor's browser supports (MP3, AAC, OGG, WAV)<\/li>\n<li>Built-in media library picker buttons in the editor for both audio files and artwork<\/li>\n<\/ul>\n\n<h4>You bring your own audio<\/h4>\n\n<p>Tracks are stored in your WordPress Media Library (or any reachable URL). The plugin just references them and plays them in the browser. No data leaves the visitor's device \u2014 there are no analytics, no telemetry, and no third-party scripts.<\/p>\n\n<h4>Requires Beaver Builder<\/h4>\n\n<p>This module requires the Beaver Builder page builder (Lite or Pro). The free <a href=\"https:\/\/wordpress.org\/plugins\/beaver-builder-lite-version\/\">Beaver Builder Lite<\/a> version is sufficient. If Beaver Builder is not installed or activated, the module simply won't appear in the editor and an admin notice will be shown.<\/p>\n\n<!--section=installation-->\n<ol>\n<li>Install Beaver Builder (Lite or Pro) and activate it.<\/li>\n<li>Upload this plugin through the <strong>Plugins \u2192 Add New<\/strong> screen, or upload the ZIP via <strong>Plugins \u2192 Add New \u2192 Upload Plugin<\/strong>.<\/li>\n<li>Activate the plugin through the <strong>Plugins<\/strong> screen.<\/li>\n<li>Edit any page with Beaver Builder. Open the modules panel, scroll to the <strong>Media<\/strong> group, and drag in the <strong>MP3 Player<\/strong> module.<\/li>\n<li>In the module's <strong>Tracks<\/strong> section, add one track at a time: paste an audio URL or click <strong>Browse Audio Files<\/strong> to pick from the media library. Optionally add a title, artist, and artwork URL.<\/li>\n<li>Tweak playback (initial volume, autoplay) and styling (colors, border radius, max width) in the other tabs.<\/li>\n<li>Save the page and view it on the frontend.<\/li>\n<\/ol>\n\n<!--section=faq-->\n<dl>\n<dt id=\"do%20i%20need%20beaver%20builder%20to%20use%20this%3F\"><h3>Do I need Beaver Builder to use this?<\/h3><\/dt>\n<dd><p>Yes. This plugin adds a module to the Beaver Builder page editor. Without Beaver Builder installed and active, the module has nothing to attach to. The free <a href=\"https:\/\/wordpress.org\/plugins\/beaver-builder-lite-version\/\">Beaver Builder Lite<\/a> version is sufficient.<\/p><\/dd>\n<dt id=\"what%20audio%20formats%20are%20supported%3F\"><h3>What audio formats are supported?<\/h3><\/dt>\n<dd><p>Whatever the visitor's browser supports through the native HTML5 <code>&lt;audio&gt;<\/code> element. In practice that's MP3, AAC, OGG, and WAV across modern browsers. The plugin doesn't transcode \u2014 you serve whatever file you upload.<\/p><\/dd>\n<dt id=\"where%20are%20tracks%20stored%3F\"><h3>Where are tracks stored?<\/h3><\/dt>\n<dd><p>Wherever you put them. The module just stores URLs. Most people upload audio files to their WordPress Media Library and use those URLs, but any publicly reachable URL works.<\/p><\/dd>\n<dt id=\"does%20autoplay%20work%3F\"><h3>Does autoplay work?<\/h3><\/dt>\n<dd><p>It tries. The plugin will call <code>audio.play()<\/code> on page load if autoplay is enabled, but most browsers block autoplay with sound unless the user has interacted with the page first. If the browser blocks it, the player just sits ready and waits for the user to click play \u2014 no error is shown.<\/p><\/dd>\n<dt id=\"can%20i%20have%20multiple%20players%20on%20one%20page%3F\"><h3>Can I have multiple players on one page?<\/h3><\/dt>\n<dd><p>Yes. Each module instance is fully independent \u2014 its own tracks, its own playback state, its own styling. They don't interfere with each other.<\/p><\/dd>\n<dt id=\"does%20the%20player%20track%20listening%20data%20or%20report%20anything%3F\"><h3>Does the player track listening data or report anything?<\/h3><\/dt>\n<dd><p>No. There are no analytics calls, no third-party scripts, no telemetry. The browser plays the file directly from wherever the URL points.<\/p><\/dd>\n<dt id=\"will%20this%20slow%20down%20my%20pages%3F\"><h3>Will this slow down my pages?<\/h3><\/dt>\n<dd><p>The module enqueues a small per-instance CSS + JS pair only on pages that contain the module. The total weight per instance is on the order of a few kilobytes; the audio file itself is fetched only when the user starts playback (preload is set to <code>metadata<\/code> so only the duration is fetched up front).<\/p><\/dd>\n<dt id=\"where%20can%20i%20report%20bugs%20or%20request%20features%3F\"><h3>Where can I report bugs or request features?<\/h3><\/dt>\n<dd><p>Open an issue at the GitHub repository: <a href=\"https:\/\/github.com\/Dependent-Media\/dm-audio-playlist\">https:\/\/github.com\/Dependent-Media\/dm-audio-playlist<\/a><\/p><\/dd>\n\n<\/dl>\n\n<!--section=changelog-->\n<h4>2.0.2<\/h4>\n\n<ul>\n<li>First public release on WordPress.org.<\/li>\n<li>Renamed the plugin from \"BB MP3 Player\" to \"Dependent Media Audio Playlist for Beaver Builder\" to comply with WordPress.org Plugin Directory naming guidance (third-party plugins cannot use a brand name as a prefix in a way that implies official affiliation).<\/li>\n<li>Updated the text domain to <code>dependent-media-audio-playlist-for-beaver-builder<\/code>.<\/li>\n<li>Fixes a CSS-injection issue in the per-instance frontend styles: color values from the Beaver Builder color picker are now passed through a strict allowlist sanitizer (<code>dm_audio_playlist_sanitize_color<\/code>) that accepts only valid <code>#hex<\/code>, <code>hex<\/code>, <code>rgb()<\/code>, and <code>rgba()<\/code> patterns; everything else falls back to the per-field default.<\/li>\n<li>Removes the duplicate inline <code>&lt;style&gt;<\/code> block that was being emitted from <code>frontend.php<\/code> in addition to the framework-rendered <code>frontend.css.php<\/code>. Styles are now rendered through a single source.<\/li>\n<li>Refactors the Beaver Builder editor's media-picker injection script: the inline <code>&lt;script&gt;<\/code> previously echoed into <code>wp_footer<\/code> is now an enqueued JavaScript file (<code>js\/editor.js<\/code>) loaded only when the BB editor is active and the user has <code>edit_posts<\/code>.<\/li>\n<li>Adds the GPLv2 <code>License<\/code>, <code>License URI<\/code>, <code>Requires at least<\/code>, and <code>Requires PHP<\/code> plugin headers required by the WordPress.org Plugin Directory.<\/li>\n<li>Backwards-compatibility shim for sites that ran the prior internal 1.x \"BB MP3 Player\" builds: the <code>BBMp3PlayerModule<\/code> PHP class is registered as an alias of <code>DM_Audio_Playlist_Module<\/code>, and both the module and its track settings form are registered under their old and new names. Existing Beaver Builder layouts that reference the old class continue to render after upgrade with all settings preserved (track URLs, titles, artwork, colors, volume, autoplay).<\/li>\n<li>Drops the <code>Requires Plugins: beaver-builder-lite-version<\/code> header. Beaver Builder Pro has a different slug than Beaver Builder Lite, so that header would block users on Pro from activating the plugin even though Pro fully satisfies the actual dependency. The plugin still checks for <code>FLBuilder<\/code> at runtime and shows an admin notice if neither Lite nor Pro is active.<\/li>\n<\/ul>","raw_excerpt":"A Beaver Builder module: customizable audio playlist player with shuffle, repeat, artwork, volume, and full playback controls.","jetpack_sharing_enabled":true,"_links":{"self":[{"href":"https:\/\/test.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin\/308053","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/test.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin"}],"about":[{"href":"https:\/\/test.wordpress.org\/plugins\/wp-json\/wp\/v2\/types\/plugin"}],"replies":[{"embeddable":true,"href":"https:\/\/test.wordpress.org\/plugins\/wp-json\/wp\/v2\/comments?post=308053"}],"author":[{"embeddable":true,"href":"https:\/\/test.wordpress.org\/plugins\/wp-json\/wporg\/v1\/users\/hsojhsoj"}],"wp:attachment":[{"href":"https:\/\/test.wordpress.org\/plugins\/wp-json\/wp\/v2\/media?parent=308053"}],"wp:term":[{"taxonomy":"plugin_section","embeddable":true,"href":"https:\/\/test.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_section?post=308053"},{"taxonomy":"plugin_tags","embeddable":true,"href":"https:\/\/test.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_tags?post=308053"},{"taxonomy":"plugin_category","embeddable":true,"href":"https:\/\/test.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_category?post=308053"},{"taxonomy":"plugin_contributors","embeddable":true,"href":"https:\/\/test.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_contributors?post=308053"},{"taxonomy":"plugin_business_model","embeddable":true,"href":"https:\/\/test.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_business_model?post=308053"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}