Release status: stable
|Implementation||User interface, Ajax|
|Description||Provides a better experience to users when they click on thumbnails in a page|
|Author(s)||Mark Holmquist, Gergő Tisza, Gilles Dubuc|
|License||GNU General Public License 2.0 or later|
|Translate the MultimediaViewer extension if it is available at translatewiki.net|
|Check usage and version matrix.|
|Issues||Open tasks · Report a bug|
The MultimediaViewer extension gives the user of a wiki a different interface for viewing full-size, or nearly full-size, images in their browser without extraneous page loads or confusing interstitial pages.
Option A: use Vagrant. See the MediaWiki-Vagrant page for instructions to get a MediaWiki installation going with a Vagrant virtual machine system.
vagrant enable-role multimediaviewer and then
Option B: install manually.
First, consider installing Extension:BetaFeatures. It may be helpful to hide the media viewer feature behind a preference. If you don't install this, it will be enabled everywhere. MultimediaViewer uses the GetBetaFeaturePreferences hook, which is created and run from BetaFeatures, to register this preference.
You'll also likely want to download Extension:CommonsMetadata - it's not a hard requirement, but without it you won't get very much information in your lightboxes.
- Download and place the file(s) in a directory called
- Add the following code at the bottom of your LocalSettings.php:
wfLoadExtension( 'MultimediaViewer' );
- Done – Navigate to Special:Version on your wiki to verify that the extension is successfully installed.
To users running MediaWiki 1.26 or earlier:
The instructions above describe the new way of installing this extension using
wfLoadExtension(). If you need to install this extension on these earlier versions (MediaWiki 1.26 and earlier), instead of
wfLoadExtension( 'MultimediaViewer' );, you need to use:
$wgMediaViewerIsInBetawill register a preference with BetaFeatures if set to "true"
$wgMediaViewerEnableByDefaultForAnonymouswill determine whether MMV is enabled by default for everyone and for anonymous users, respectively. They both default to true.
$wgDefaultUserOptions['multimediaviewer-enable'] = 1;can be used as a replacement for
$wgMediaViewerUseThumbnailGuessingwill improve performance when enabled, but can be fragile depending on how the wiki is set up (it will probably work fine if you use a 404 handler).
- Forced download
To ensure files are offered for download and not viewed in the user's browser following a click on the Download … button, the server has to be configured, except when using vagrant:
If the requested URL to an image directory contains the
download query parameter, the
Content-Disposition-header must be set to
This can be achieved in Apache and compatible servers using mod_rewrite and mod_headers in a
Varnish configuration can look like this.
Using the extensionEdit
First thing, before testing, is to make sure you're logged in and you have the preference enabled: Log in to the wiki and go to Special:Preferences, then visit the "Beta features" tab and check the appropriate box.
Next, go to a page that has a thumbnail on it. Try clicking on the image or on the "expand" icon near it. The lightbox should pop up and give you a bigger view of the image.
If you'd prefer, there's an exported test environment that you can use via Special:Import to quickly set up a suitable testing environment.
Extending with user scriptsEdit
If you want to add functionality, you'll have to dig around in the classes and change the functionality pretty manually. We'll work on making this a nicer experience, but given the class and method hierarchy we've built, we think it's not terribly difficult right now.
HOWEVER, you should avoid doing this too much. If things change internally, then your code might break in unexpected ways, and you (and your users) will be surprised. Don't let that happen, and wait for a more stable way to extend the product.
See /Extension:Metadata for an example.
- Similar extension(s)
|This extension is maintained by the Reading Web team.|
|This extension is being used on one or more Wikimedia projects. This probably means that the extension is stable and works well enough to be used by such high-traffic websites. Look for this extension's name in Wikimedia's CommonSettings.php and InitialiseSettings.php configuration files to see where it's installed. A full list of the extensions installed on a particular wiki can be seen on the wiki's Special:Version page.|