Extension:Attachments
This extension is incompatible with MediaWiki 1.41 or any later release! You are advised against using this extension on a live site. MediaWiki developers are invited to pledge their efforts to updating this extension to make it compatible with MediaWiki 1.42 by replacing the {{Incompatible }} template with {{Incompatible |version=1.41|pledge=~~~~}} . |
This extension is currently not actively maintained! Although it may still work, any bug reports or feature requests will more than likely be ignored. |
Attachments Release status: unmaintained |
|
---|---|
Implementation | Parser function , Variable , Page action , Hook |
Description | Attach subpages, files and external links to pages. |
Author(s) | (Gittenburgtalk) |
Latest version | 0.1.0 (2019-06-11) |
Compatibility policy | Master maintains backward compatibility. |
MediaWiki | 1.32+ |
License | MIT License |
Download | GitHub: Note: |
Example | https://vowi.fsinf.at/ |
|
|
The Attachments extension lets users attach subpages, files and external links to pages in enabled namespaces.
- Attachments can easily be added through the user interface.
- Attachments of an article are displayed in an automatically generated list at its end.
- This extension integrates with the Vector and Minerva skins.
So how does it work?
- subpages automatically count as attached to their parent page
- When you upload a file through the Attach page action, a parser function
{{#attach: Title}}
is added to the descripiton. - When you add a link, the extension creates a subpage containing the
{{#exturl: URL}}
parser function. - Both parser functions set page properties, which are queried for the autogenerated sections.
Advanced features
#attach
can also be used to attach a regular page to another regular page.- You can exclude subpages starting with a specific prefix from the autoindex with
{{#attachments ignore subpages: prefix}}
on the parent page. - You can access attachments before they are sorted with the
BeforeSortAttachments(&$links)
hook, where links is an associative array mapping string keys to HTML links. Return false to take over the sorting.
Relatively linking an attached file
The Attachments extension provides the {{FILEPREFIX}}
parser function to faciliate linking/embedding attached files.
If you attach an image Example.jpg to Somepage then you can embed the image:
- from Somepage with
[[File:{{FILEPREFIX}}Example.jpg]]
- from Somepage/Subpage with
[[File:{{FILEPREFIX:..}}Example.jpg]]
- from Somepage/Subpage/Subsubpage with
[[File:{{FILEPREFIX:../..}}Example.jpg]]
Note that the same also works with [[Media:...]]
links.
Installation
- Download and place the file(s) in a directory called
Attachments
in yourextensions/
folder. - Add the following code at the bottom of your LocalSettings.php file:
wfLoadExtension( 'Attachments' );
- Done – Navigate to Special:Version on your wiki to verify that the extension is successfully installed.
You will need to enable the extension for the namespaces where you want to use it, e.g:
$wgAttachmentsNamespaces[NS_MAIN] = true;
Note that you should also enable subpages for these namespaces.
Optional configuration parameters
$wgAttachmentsChunkListByLetter
|
Boolean | whether or not the attachment list should be chunked by the first letter of list items. Defaults to true .
|
$wgAttachmentsShowSubpageForm
|
Boolean | whether or not the subpage form should be shown. Defaults to true .
|
$wgAttachmentsShowLinkForm
|
Boolean | whether or not the external link form should be shown. Defaults to true .
|
Tips
- Enable $wgCountCategorizedImagesAsUsed to exclude attached files from Special:UnusedImages.
- Attachments and external URLs are both stored as page props, meaning they can be queried with API:Pageprops and API:Pageswithprop.
- Set $wgForeignUploadTargets to
[]
, if you want to prevent users from circumventing this extension through the upload dialog. - If new attachments do not show up, it might be because you have many jobs in your job queue.
Credits
This extension is essentially a complete rewrite of PerPageResources by Mathias Ertl, which consists of Extension:Resources, Extension:AddResource and Extension:ExternalRedirects. This extension replaces all three, notable differences are:
- attachments are stored in page_props instead of pagelinks
- no open redirects, just links
- attachments are shown at the end of pages, as opposed to on a special page
See also
- MoinMoinWiki - supports attachments out of the box.