Skip to content

Media Provider Package Installation Plugin#

Available since WoltLab Suite 3.1

Media providers are responsible to detect and convert links to a 3rd party service inside messages.


Each item is described as a <provider> element with the mandatory attribute name that should equal the lower-cased provider name. If a provider provides multiple components that are (largely) unrelated to each other, it is recommended to use a dash to separate the name and the component, e. g. youtube-playlist.


The title is displayed in the administration control panel and is only used there, the value is neither localizable nor is it ever exposed to regular users.


The regular expression used to identify links to this provider, it must not contain anchors or delimiters. It is strongly recommended to capture the primary object id using the (?P<ID>...) group.


<className> and <html> are mutually exclusive.

PHP-Callback-Class that is invoked to process the matched link in case that additional logic must be applied that cannot be handled through a simple replacement as defined by the <html> element.

The callback-class must implement the interface \wcf\system\bbcode\media\provider\IBBCodeMediaProvider.


<className> and <html> are mutually exclusive.

Replacement HTML that gets populated using the captured matches in <regex>, variables are accessed as {$VariableName}. For example, the capture group (?P<ID>...) is accessed using {$ID}.


<?xml version="1.0" encoding="UTF-8"?>
<data xmlns="" xmlns:xsi="" xsi:schemaLocation="">
    <provider name="youtube">
      <!-- advanced PHP callback -->

    <provider name="youtube-playlist">
      <title>YouTube Playlist</title>
      <!-- uses a simple HTML replacement -->
      <html><![CDATA[<div class="videoContainer"><iframe src="{$ID}" allowfullscreen></iframe></div>]]></html>

    <provider identifier="example" />

Last update: 2021-01-08