Extension:Collection
This extension is currently not actively maintained! Although it may still work, any bug reports or feature requests will more than likely be ignored. If you are interested in taking on the task of developing and maintaining this extension, you can request repository ownership. As a courtesy, you may want to contact the author. You should also remove this template and list yourself as maintaining the extension in the page's {{Extension }} infobox. |
Collection Release status: unmaintained |
|
---|---|
Implementation | Special page , MyWiki |
Description | Allows to organize personal selections of pages in a collection that can be edited, persisted and optionally retrieved as PDF, ODF or DocBook (XML) |
Author(s) | |
Latest version | 1.8.0 |
Compatibility policy | Snapshots releases along with MediaWiki. Master is not backward compatible. |
MediaWiki | >= 1.43 |
Database changes | No |
License | GNU General Public License 2.0 or later |
Download | README |
Example | wiki.openoffice.org |
|
|
|
|
Quarterly downloads | 74 (Ranked 70th) |
Public wikis using | 1,243 (Ranked 219th) |
Translate the Collection extension if it is available at translatewiki.net | |
Issues | Open tasks · Report a bug |
The Collection extension allows a user to organize personal selections of pages in a collection. Collections can be:
- edited and structured using chapters
- persisted, loaded and shared
- ordered as a printed book at https://pediapress.com/
See the press release Wikis Go Printable for more information on the original project.
Documentation & Support
The Collection extension uses the Proton service to do most of its heavy lifting. It used OCG before.
You can use the IRC channel #wikimedia-services connect to get in touch with developers.
Use the MediaWiki-extensions-Collection
project in Phabricator in order to report bugs.
A detailed guide on how to prepare your wiki (templates, help pages, categories) if you setup the extension is available at meta.wikimedia.org.
Screencast
There is a screencast demoing the basic functionality available at YouTube (in German) (2:45 minutes).
Creating cross-wiki article collections
The OCG service supported this, but the Collection extension does not (yet — patches welcome!).
You can use the low-level mw-ocg-bundler
and mw-ocg-latexer
tools to create cross-wiki collections, or use https://pediapress.com/collection/ for this purpose, see ticket 408.
Installation
- Download and move the extracted
Collection
folder to yourextensions/
directory.
Developers and code contributors should install the extension from Git instead, using:cd extensions/
git clone https://gerrit.wikimedia.org/r/mediawiki/extensions/Collection - Add the following code at the bottom of your LocalSettings.php file:
wfLoadExtension( 'Collection' );
- Configure the extension as required
- Done – Navigate to Special:Version on your wiki to verify that the extension is successfully installed.
Please also read the included README for detailed configuration instructions of the extension. If you use MediaWiki 1.4.1 you have to use the following Command:
cd extensions/
git clone https://gerrit.wikimedia.org/r/mediawiki/extensions/Collection --branch REL1_41
- Local render server (OCG)
Installing a development instance contains the most up-to-date documentation.
Configuration
- Generating PDFs, OpenDocument- & DocBook-Exports
It's easy to enable PDF (ODF, DocBook) support with this extension. It is configured by default to use the server https://tools.pediapress.com/. Therefore (low traffic) sites that are accessible from the internet don't need to install their own PDF server. Steps:
- Simply install and configure the Collection extension using the default value
http://tools.pediapress.com/mw-serve/
for$wgCollectionMWServeURL
(see README of the Collection extension for instructions) and make sure the MediaWiki API (api.php
) is enabled on your MediaWiki installation. - Some users report that installing PDFtk is necessary.
No installation of Python, ReportLab, mwlib etc. required! Note however, that in order to use this service, your wiki must be accessible from the internet and must be either accessible for non-logged-in users or login credentials must be configured (see README for instructions).
Have a look at the Solar system, example article from the English language Wikipedia, rendered as PDF using this technology.
Advanced and optional configuration
Most wikis will never need to know about what follows. Check the main PHP file to see all the global variables you can configure and their meaning. Some of them are useful to tweak the export in many cases.
Print on demand
Since version 1.6 the extension offers the variable $wgCollectionPODPartners
that is used to define available providers of the print-on-demand service.
By default it uses PediaPress service:
$wgCollectionPODPartners = [
'pediapress' => [
'name' => 'PediaPress',
'url' => 'http://pediapress.com/',
'posturl' => 'http://pediapress.com/api/collections/',
'infopagetitle' => 'coll-order_info_article'
],
];
It is an array of elements, every of them will be listed as a possible print-on-demand provider. The parameters are:
- name
- short name of the provider
- url
- URL to point for more information if there is no information page
- posturl
- URL of the actual printing web service
- infopagetitle
- MediaWiki system message name (as visible in the MediaWiki: namespace) that contains page title of the page that will be used to shortly describe the provider. The default (for PediaPress) is MediaWiki:Coll-order info article, which defaults to PediaPress order information. If this page exists, it is used to display information about PediaPress book printing service.
It is also possible to disable print on demand altogether by setting:
$wgCollectionPODPartners = false;
Please see task T35536 for more information about this feature.
You can also configure which file formats are available:
$wgCollectionFormats = [
'rl' => 'PDF', # enabled by default
'odf' => 'ODT',
'docbook' => 'DocBook XML',
'xhtml' => 'XHTML 1.0 Transitional',
'epub' => 'e-book (EPUB)',
'zim' => 'Kiwix (OpenZIM)',
];
See README for more configuration options.
User rights for saving books
To allow users to save books in both their user space and the community space, add the following lines to your LocalSettings.php
:
$wgGroupPermissions['user']['collectionsaveascommunitypage'] = true;
$wgGroupPermissions['user']['collectionsaveasuserpage'] = true;
Add the links at another place
If you want to add the links at another place, e.g. in the menu "Personal Tools", you can do that by adding them into the according portlet.
For example, in the Vector skin you can do that by adding to the file skins/Vector.php
so that it looks like this:
<h3><?php $this->msg( 'personaltools' ) ?></h3>
<ul<?php $this->html( 'userlangattributes' ) ?>>
<?php
$personalTools = $this->getPersonalTools();
/* Links to create a PDF file/a book start */
if ( class_exists('CollectionHooks') ) {
$collectionURLs = CollectionHooks::getPortlet($this->getSkin());
if ( $collectionURLs !== false ) {
/* Put the links of the Collection extension below the last item. */
$personalTools += $collectionURLs;
}
}
/* Links to create a PDF file/a book end */
foreach ( $personalTools as $key => $item ) {
echo $this->makeListItem( $key, $item );
}
You can still modify the order of the links in the portlet by modifying $personalTools directly before the foreach loop is executed.
The above implementation has the drawback, that the two newly inserted links do not show their tooltip. A solution for that is still outstanding and would be greatly appreciated.
Setting book prefix
To change the default prefix for book name edit the message MediaWiki:Coll-community book prefix.
Cache
Recent versions store rendered "books" in a cache. Collections which have been previously exported by users should be available for download almost immediately, rather than after several minutes of rendering; the cached version can be updated by following a link offered in the download page.
Printed Books with PediaPress
PediaPress is a service that offers printed books based from wiki content. This service is seamlessly integrated in this extension (can be disabled).
See also
- PDF export — summary of all PDF export extensions
- Bookshelf — Combines wiki pages to create books and also to export them as PDF
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. |
This extension is included in the following wiki farms/hosts and/or packages: This is not an authoritative list. Some wiki farms/hosts and/or packages may contain this extension even if they are not listed here. Always check with your wiki farms/hosts or bundle to confirm. |
- Unmaintained extensions/en
- Special page extensions/en
- Personalization extensions/en
- GPL licensed extensions/en
- Extensions in Wikimedia version control/en
- All extensions/en
- Extensions used on Wikimedia/en
- Extensions included in Canasta/en
- Extensions included in MyWikis/en
- Extensions included in ProWiki/en
- Extensions included in WikiForge/en
- PDF extensions/en