This is the documentation page for Module:Sound
Module:Sound creates a small clickable volume icon that plays an uploaded audio file when clicked.
Overview
This module powers {{Sound}}. Given the name of an audio file uploaded to the wiki, it outputs a volume-icon button that the wiki's JavaScript turns into a play control. It does this by resolving the file's URL and storing it on the button as a data-sound-file attribute; a site gadget/script then plays that URL when the icon is clicked. It does not play audio by itself — it only builds the button markup and supplies the file URL.
Editors use the {{Sound}} template rather than calling the module directly.
Functions / entry points
| Function (#invoke) | What it does | Called by |
|---|---|---|
p.main |
Reads the file name (arg 1) and optional icon size (arg 2, default 20px) from the parent template, resolves the file's URL via the filepath parser function, and returns a containing a File:Icon-Volume.png image. Returns a red error message if no file name is given. |
{{Sound}}
|
How it's used
{{Sound}} is simply:
<includeonly>{{#invoke:Sound|main}}</includeonly>
So on a page an editor writes, for example:
{{Sound|MyBossRoar.ogg}}
{{Sound|MyBossRoar.ogg|32px}}
- Argument 1 — the audio file name as uploaded (e.g.
MyBossRoar.ogg). Read from the parent template's parameters. - Argument 2 (optional) — the size of the volume icon, default
20px.
Editors should use {{Sound}}; the raw Error: No file specified only appears inside that template.
Notes
- The play behaviour depends on an external site script/gadget that reads
data-sound-fileand thesound-buttonclass. The module only emits the markup and the resolved URL; if that script isn't loaded, clicking does nothing. - The file URL comes from
. Protocol-relative URLs (starting//) are prefixed withhttps:. - The clickable icon is
File:Icon-Volume.png, rendered withlink=(no link target) so the click is handled by the script, not by following a link. - Newlines/carriage returns are stripped from the output so it can be used inline.
- Related:
{{Sound}}.