ManageMediaWiki

## Contents

* 1 Introduction
* 2 Testing
* 3 Layout and boxes
* 3.1 Change the navigation bar to the left
* 3.2 Add a banner to the sidebar (PHP) - solution 1
* 3.3 Add a banner to the sidebar (PHP) - solution 2
* 3.4 Skins
* 3.5 Images
* 3.6 SVG Image Support
* 4 Mediawiki configuration and upgrades
* 4.1 Downloads of Mediawiki software
* 4.2 Configuration file
* 4.3 Mediawiki major upgrades - procedure
* 4.4 Minor Mediawiki upgrades - procedure
* 4.5 Upgrading with a unified patch
* 4.6 Cool URL
* 4.7 Language strings for the Wiki
* 4.8 Interwiki links to other languages
* 4.9 Life time of a session
* 4.10 Search
* 4.11 Copie mediawiki sur PC / Windows
* 5 Site Maps
* 6 Access rights et user management
* 6.1 Détruire un utilisateur
* 6.2 Rename a user
* 6.3 Kill a page page forever
* 6.4 Login obligatoire
* 6.5 Access rights per page
* 6.6 Permissions et groupes
* 7 Export / import to mediawiki
* 7.1 Export
* 7.2 Editing tools
* 7.3 Mass import pictures
* 7.4 Import to Wiki links
* 7.5 HTML import
* 7.6 PDF 2 Wiki
* 7.7 Word 2 Wiki
* 7.7.1 Word2MediaWikiPlus
* 7.7.2 Word2MediaWiki.NET
* 7.7.3 Microsoft Office Word Add-in For MediaWiki
* 7.7.4 Via Open Office
* 7.8 Export from OpenOffice
* 8 Cache
* 8.1 PHP Cache
* 8.2 Internal messaging cache
* 8.3 Internal file cache
* 8.4 Purging cached files
* 8.5 Memcache
* 8.6 Cache externe avec Squid
* 8.7 Autres pointeurs cache
* 9 Installed extensions and templates
* 9.1 editor extension
* 9.2 FCKEditor
* 9.3 Visual editor
* 9.4 Wiki blog
* 9.5 Forum extension for the discussion page
* 9.6 Forum extensions
* 9.7 Various PDF export options
* 9.8 Semantic Wiki
* 9.9 SVGViz
* 9.10 Confirm Edit
* 9.11 Cite et Special:Cite, Page Authors
* 9.12 MetaUML
* 9.13 tag clouds, navigation, who did what
* 9.14 Templates
* 10 New Extensions etc.
* 10.1 Bots
* 10.2 References et citations
* 10.3 List of extensions to install / test
* 10.4 Extensions docs and parser extensions
* 10.5 Wikitech
* 10.6 External editors
* 10.6.1 Perl / GTK
* 10.6.2 It's all text
* 10.6.3 MwJed plugin for jEdit
* 11 Other
* 12 Wiki readers (books)
* 12.1 Best bet
* 12.2 Legacy links
* 13 Humor

## Introduction[edit | edit source]

This is a messy maintenace page (some lines in french) where we write down things we did to this and a few other wikis we host. Plus other useful information for things we may implement in the future .... Most information is outdated !!!. This is for internal use and I'll improve this for a larger audience when I'll feel like - Daniel K. Schneider)

Also (or rather) read:

* Mediawiki (high-level information, in particular about good extensions)
* Mediawiki installation (should become the page to consult .... but I am not sure if I can find the motivation - Daniel K. Schneider 11:01, 29 September 2011 (CEST))

## Testing[edit | edit source]

Administrators of this wiki should use the Testing Sandbox for tests that are intended to stay a bit. New users should just use the ordinary SandBox.

## Layout and boxes[edit | edit source]

### Change the navigation bar to the left[edit | edit source]

* To make changes to the sidebar, you always should start trying to modify just MediaWiki:Sidebar in your wiki
* Navigation bar help

Syntax is more powerful in more recent versions, e.g. with version 1.14 you may change the positions of portlets.

On 09:49, 31 July 2009 (UTC), we had:

* SEARCH

* navigation and help
** mainpage|Mainpage
** EduTech_Wiki:About|about
<!-- ** portal-url|portal -->
<!-- ** currentevents-url|currentevents -->
** randompage-url|randompage
** helppage|Help
** Help:Editing rules|Editing rules
** Blog:DKS|Blog (D.K.S.)

* categorytree-portlet

* TOOLBOX

* LANGUAGES

* big brother
** Special:Newpages|New Pages
** recentchanges-url|recentchanges
** Special:Guestbook|Guestbook
** Special:Popularpages|Popular Pages
** Special:WhosOnline|Who is online ?

* TECFA links
** http://tecfa.unige.ch/ |TECFA
** http://tecfaseed.unige.ch/door/ |TECFA Portal

Another example from EduTechWiki/fr using the vector skin, dated 10:13, 20 August 2010 (UTC):

* Via Google

* navigation

** mainpage|Mainpage
** recentchanges-url|recentchanges
** randompage-url|randompage
** helppage|Help
** Guidelines:Règles d'édition|Règles d'édition

* categorytree-portlet

* coll-print_export

* TOOLBOX

* LANGUAGES

* Big brother
** Special:Newpages|Nouvelles pages
** Special:Popularpages|Pages populaires
** Special:WhosOnline|Qui est en ligne?
** Special:Allpages|Toutes les pages

### Add a banner to the sidebar (PHP) - solution 1[edit | edit source]

You can add one or more banners to the sidebar by hacking your skins/Monobook.php or skin/Vector.php Adapted from: dvanced_customization

Find (line 526 for Vector.php / MW 1.16.0:

<!-- panel -->
<div id="mw-panel" class="noprint">
<!-- logo -->
<div id="p-logo"><a style="background-image: url(<?php $this->text( 'logopath' ) ?>);" href="<?php echo htmlspecialchars( $this->data['nav_urls']['mainpage']['href'] ) ?>" <?php echo $this->skin->tooltipAndAccesskey( 'p-logo' ) ?>></a></div>
<!-- /logo -->
<?php $this->renderPortals( $this->data['sidebar'] ); ?>

</div>
<!-- /panel -->

Include before the last div and after the renderPortals line:

<!-- begin of banner1 -->
<div class='generated-sidebar portlet'>
<h5><?php $this->msg('sidebar-banner1-headingtext') ?></h5>
<div style="border: 1px solid #B0B0B0; background-color: #FFFFFF;">
<a href="<?php $this->msg('sidebar-banner1-url') ?>">
<img width="100%" title="<?php $this->msg('sidebar-banner1-alttext') ?>"
alt="<?php $this->msg('sidebar-banner1-alttext') ?>"
src="<?php $this->msg('sidebar-banner1-imgsrc') ?>" /></a>
</div></div>
<!-- end of banner1 -->

</div>
<!-- /panel -->

I then removed the line with the heading text.

Now in your Wiki, create three or four System messages: (i.e. articles named MediaWiki:sidebar-banner1-...)

parameter  | value

|

`sidebar-banner1-headingtext` | The text that will be displayed as the banner heading ("advertisement", "sponsor" etc.)
`sidebar-banner1-url` | The destination URL of this banner
`sidebar-banner1-alttext` | Content of the alt="" parameter of an HTML <img> tag: any title for the destination site
`sidebar-banner1-imgsrc` | Content of the src="" parameter of an HTML <img> tag: the URL of the banner image. It may be the address of an image uploaded to your Wiki (magic words may be used, e.g. `{{filepath:banner1.png}}`), or the address of an external image. E.g. MediaWiki:Sidebar-banner1-imgsrc has the contents.

{{SCRIPTPATH}}/tecfa/Logo_TECFA.png

tecfa is a subdirectory of the main (root) mediawiki directory.

To add more banners, just repeat the process renaming "banner1" to "banner2" etc.

### Add a banner to the sidebar (PHP) - solution 2[edit | edit source]

I finally found it easier to write an extension to do this job. Not much is needed. I also use this hook to add a google search box .... You even could position the portlet by editing Mediawiki:Sidebar. By default, stuff goes to the end.

<?php
/**
* SidebarBannerBox
* CREDITS: Idea shamelessly copied from http://www.mediawiki.org/wiki/Extension:SidebarDonateBox
* @file
* @ingroup Extensions
* @author Daniel K. Schneider (http://www.mediawiki.org/wiki/User:Daniel_K._Schneider)
* @license http://www.gnu.org/copyleft/gpl.html GNU General Public License 2.0 or later

* This program is free software; you can redistribute it and/or
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.

* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
* GNU General Public License for more details.

* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301, USA.

if ( !defined( 'MEDIAWIKI' ) ) die( "This is an extension to the MediaWiki package and cannot be run standalone." );

$wgExtensionCredits['parserhook'][] = array (
'path' => __FILE__,
'name' => 'SidebarBannerBox',
'url' => 'http://mediawiki.org/wiki/Extension:SidebarBannerBox',
'version' => '0.1',
'author' => "[http://mediawiki.org/wiki/User:Daniel_K._Schneider Daniel K. Schneider]",
'descriptionmsg' => 'Adds banner(s) to the sidebar',
); // should be properly localized

$wgHooks['SkinBuildSidebar'][] = 'efSidebarBannerBox';

function efSidebarBannerBox( $skin, &$bar ) {
global $egSidebarBannerBoxContent, $wgScriptPath;
// CHANGE this according to your needs
$out = '<div class="sidebar_banner">';
$out .= '<a href="http://tecfa.unige.ch/">';
$out .= '<img title="TECFA - Educational Technology Unit - UniGE"';
$out .= 'alt="TECFA - Educational Technology Unit - Home page" ';
$out .= 'src="' . $wgScriptPath . '/tecfa/Logo_TECFA.png" /></a>';
$out .= '</div>';

$out .= '<div class="sidebar_banner">';
$out .= '<a href="http://tecfa.unige.ch/maltt">';
$out .= '<img title="Master of Science in Learning and Teaching Technologies"';
$out .= 'alt="Master of Science in Learning and Teaching Technologies" ';
$out .= 'src="' . $wgScriptPath . '/tecfa/LOGO_MALTT.png" /></a>';
$out .= '</div>';

$out .= '<div class="sidebar_banner">';
$out .= '<a href="http://tecfa.unige.ch/formcont/">';
$out .= '<img title="Cours de formation continue offerts par TECFA, Université de Genève"';
$out .= 'alt="Cours de formation continue offerts par TECFA, Université de Genève" ';
$out .= 'src="' . $wgScriptPath . '/tecfa/fclogored3.png" /></a>';
$out .= '</div>';

$bar['TECFA Links'] = $out;
return true;

### Skins[edit | edit source]

* I suggest to use the Monobook or Vector skins. Vector is a derivative of Monobook only officially distributed I believe since MW 1.16 (2010). Other skins are not as well supported. E.g. some extensions just won't work with other skins.
* To restyle some CSS class or id you should first try to do it via MediaWiki:Common.css. Do not edit CSS files in the server (if you can avoid). This makes maintenance much easier.

Support for mobiles

In LocalSettings.php:

$wgHandheldStyle='chick/main.css';
$wgHandheldForIPhone=true;

... may not be good enough (e.g. on an Android, only affects the Opera browser if set to mobile browsing). See also http://www.mediawiki.org/wiki/Extension:MobileSkin

Change of user's default skins (important if you change it !)

Execute the following maintenance script (example arguments)

php userOptions.php skin --old "monobook" --new "vector"

### Images[edit | edit source]

* http://en.wikipedia.org/wiki/Wikipedia:Images
* http://en.wikipedia.org/wiki/Wikipedia:Image_markup_with_HTML (OLD !!)
* http://en.wikipedia.org/wiki/Wikipedia:Picture_tutorial
* http://meta.wikimedia.org/wiki/Help:Images_and_other_uploaded_files
* http://meta.wikimedia.org/wiki/Help:Navigational_image
* http://meta.wikimedia.org/wiki/Fixing_transparent_PNGs (faudrait le faire !!)

Inclusion of external images

If you want users to be able to include external images you will have to reconfigure the Wiki in LocalSettings.php:

$wgAllowExternalImages = true;

* See explanations in http://meta.wikimedia.org/wiki/Help:Images_and_other_uploaded_files#Embedding_external_images

In edutechwiki this is forbidden, but we do use it with closed-for-writing educational wikis

Images for navigation

* http://meta.wikimedia.org/wiki/Template:Clickpic (template)

### SVG Image Support[edit | edit source]

Should work

* http://meta.wikimedia.org/wiki/SVG_image_support

Draw SVG in the wiki

* Doesn't seem to work yet - Daniel K. Schneider 09:49, 31 July 2009 (UTC)
* http://meta.wikimedia.org/wiki/SVG_whiteboard

## Mediawiki configuration and upgrades[edit | edit source]

### Downloads of Mediawiki software[edit | edit source]

* http://www.mediawiki.org/wiki/MediaWiki

Alternatively, download from GIT. Read:

* http://www.mediawiki.org/wiki/Download_from_Git

### Configuration file[edit | edit source]

All configurations are done in the LocalSettings.php file (sits in the root directory)

* At some point, it is really important to read http://www.mediawiki.org/wiki/Manual:Configuration_settings

For example:

* Accepted file types (easy to understand)

$wgFileExtensions = array( 'png', 'gif', 'jpg', 'jpeg', 'ogg', 'pdf', 'mp3', 'svg', 'doc', 'xls', 'ppt', 'pub', 'txt', 'ps', 'zip' );

* Localization and file cache (that would require some reading ...)

$wgUseFileCache = true;
$wgFileCacheDirectory = "$IP/cache";
$wgCacheDirectory = $IP/Cache

### Mediawiki major upgrades - procedure[edit | edit source]

* It's always a good idea to read the UPGRADE file that sits in the root of a distribution. Since I never had problems with upgrading (at least in the last 2 years) I just do it without backup. (but I do have a daily backup of all files in all systems...)

Step 1: Backup all mediawikis

Do it if you don't have a high-end backup service in your institution !

mysqlshow -p // in case you forgot the db name
mysqldump -p base_de_donnees > fichier.sql

Step 2: Upgrade preparation

Put the running wiki into read-only mode: IN Localsettings.php, set

$wgReadOnly = 'Upgrading to MediaWiki 1.XX.0';

Here are some principles of what is involved in the next steps

* Install the new release in a new directory
* Copy all images, extensions etc. to the new directory (see below)
* Edit and copy LocalSettings.php. Once in a while you might consult the new (and not used) default configuration file.
* You may have to upgrade extensions or remove them
* In case you made modifications to the skin, edit the new skins/XXX/XXX.php and add your custom stuff. This may be difficult, since this script changes a lot over the years....

Do not loose the following directories and files.

1. Upload directory: images
2. LocalSettings.php
3. In the directory includes you may have some extra files (old style extensions). A good occasions to get rid of these .....
* SpecialRenameuser.php
* SpecialRenameuser.i18n.php
* SpecialRenameuser_body.php
4. Directory extensions

Step 3: Uncompress the archive and copy old files

Make sure to copy setup and media files as shown below. I suggest that you keep a file with that kind of commands. Then just copy/paste 4 times / year. Alternatively, use GIT as explained above.

Decompress mediawiki tar archive:

cd /path/to/your/mediawiki
tar zxf mediawiki-xxx
mv mediawiki-xxx mediawiki-new
chown R xxx:yyy mediawiki-new

Alternatively you directly can:

mkdir /path/to/your/mediawiki-new
tar xvzf mediawiki-1.XXX.XX.tar.gz -C /path/to/your/mediawiki-new --strip-components=1
chown -R xxx:yyy mediawiki-new

Then make sure that you copy all the media files and extensions. Depending on your installation you may have more than the most important "images" directory, e.g. a directory where you put the logo.

cp -rp mediawiki/images/ mediawiki-new/
cp -p mediawiki/LocalSettings.php mediawiki-new/
cp -rp mediawiki/extensions mediawiki-new/
cp -rp mediawiki/tecfa/ mediawiki-new/

Step 4: Swap old and new and update

Stop the server and swap the two installs. You also can perform the whole upgrade in the new directory and then swap at the very end of the procedure.

mv mediawiki mediawiki.old
mv mediawiki-new mediawiki
cd mediawiki
mkdir cache
chown x:y cache
php maintenance/update.php

Mediawiki fr and other Mediawikis, same procedure, e.g:

tar xvzf mediawiki-1.17.0.tar.gz -C /data/portails/fmediawiki-new/ --strip-components=1
chown xxx:yyy fmediawiki-new

cp -rp fmediawiki/images/ fmediawiki-new/
cp -p fmediawiki/LocalSettings.php fmediawiki-new/
cp -rp fmediawiki/extensions fmediawiki-new/
cp -rp fmediawiki/tecfa/ fmediawiki-new/

Fix the skin file (Monobook of vector) if you made manual extensions. But you can do this later.

* Stop serveur Web (if you like) and exchange old with new

mv fmediawiki fmediawiki.old
mv fmediawiki-new fmediawiki
cd fmediawiki
chown x:y cache

* Important: Launch the upgrade script. It is critical to do so, else many new extensions or even the wiki just won't work...

php maintenance/update.php

Step 5: Clean up and upgrade extensions

Restart

* Start web server again (if you stopped it, I usually don't bother)
* Comment the line: $wgReadOnly = 'Upgrading to MediaWiki 1.16.0';

Extensions

Repair extensions and upgrade these (while most often these extensions will still work, it's always a good idea to upgrade for both security and functionality)

* Since we run several Mediawikis on the same machine, I use the following strategy

mkdir /path-to/portals/extensions17

* Install each new/updated extension in this new directory
* Test with one install
* Some extensions my change parameter names (!!). Make sure to change these in each LocalSetting.php
* Then link from each /path-to/portals/mediawiki-xxx/extensions folder

rm CategoryTree
ln -s ../../extensions17/CategoryTree
rm CheckUser
ln -s ../../extensions17/CheckUser
rm Cite
ln -s ../../extensions17/Cite
rm Collection
ln -s ../../extensions17/Collection
rm ConfirmEdit
ln -s ../../extensions17/ConfirmEdit
rm DiscussionThreading
ln -s ../../extensions17/DiscussionThreading
rm SyntaxHighlight_GeSHi
ln -s ../../extensions17/SyntaxHighlight_GeSHi
rm WhosOnline
ln -s ../../extensions17/WhosOnline/
rm WikiEditor
ln -s ../../extensions17/WikiEditor
rm WYSIWYG
ln -s ../../extensions17/WYSIWYG

....

Examine features of LocalSettings

* Compare old LocalSettings.php with include/DefaultSettings.php. Often, new mediawiki versions include new interesting option or sometimes deprecate some.
* Make changes (I suggest to look at this at least once / year)
* See also: http://www.mediawiki.org/wiki/Manual:Configuration_settings

### Minor Mediawiki upgrades - procedure[edit | edit source]

Minor upgrades are just some kind of patches, for example 1.6.5 to 1.6.6, only php code is replaced. See also patches below.

Read Manual:Upgrading

Installation

* Uncompress the archive somewhere
* chown -R owner:group *
* Save some custom stuff, e.g.

index.php
includes/SpecialPage.php
skins/Monobook.php
languages/Messages.php (maybe)

* Copy files on top of old tree
* Fix your "custom" pages

Updating script

Run:

php maintenance/update.php

### Upgrading with a unified patch[edit | edit source]

* First check if they don't overwrite the typical files you should save (see above)
* For unified patches, you must use gnu patch which is default under Linux.

Put the file in the mediawiki directory and if you feel safe, type something like:

patch -p1 < mediawiki-1.13.1.patch

gpatch -p1 < mediawiki-1.13.1.patch

The "p1" argument strips the first component of the file path.

You may use a more conservative strategy:

(1) This time we assume that the patch file remains in some src directory, e.g.:

cd /data/portails/src

(2) Then do a dry run:

patch --dry-run --verbose -p1 --directory=/data/portails/mediawiki < mediawiki-1.16.1.patch > tmp.text

Then examine tmp.text (e.g. check if it overwrites critical files and which lines)

(3a) Apply the patch

patch --verbose -p1 --directory=/data/portails/mediawiki < mediawiki-1.16.1.patch

(3b) Do it with a save copy of each file (you later can remove these *.save files)

patch --backup --suffix=.save --verbose -p1 --directory=/data/portails/mediawiki < mediawiki-1.16.1.patch

Then you should test and finally you can remove the save files

find /data/portails/mediawiki -name "*.save"
find /data/portails/fmediawiki -name "*.save" -exec rm {} \;

### Cool URL[edit | edit source]

Mediawiki URLs are ugly by default, but it's easy to change this:

* Read cool url (more difficult)
* Read Eliminating index.php. (adopted for edutech wiki)

In httpd.conf:

Redirect /portails/mediawiki  "http://edutechwiki.unige.ch/en"
Redirect /mediawiki  "http://edutechwiki.unige.ch/en"
Redirect /portails/fmediawiki "http://edutechwiki.unige.ch/fr"

<VirtualHost *:80>
ServerName edutechwiki.unige.ch
DocumentRoot "/data/portails/edutechwiki"
# ALIASES for edutechwiki: THREE alias for each WIKI
Alias /mediawiki "/data/portails/mediawiki"
Alias /en "/data/portails/mediawiki/index.php"
Alias /en/index.php "/data/portails/mediawiki/index.php"
Alias /fmediawiki "/data/portails/fmediawiki"
Alias /fr "/data/portails/fmediawiki/index.php"
Alias /fr/index.php "/data/portails/fmediawiki/index.php"
< /VirtualHost >

Then in LocalSettings.php:

$wgSitename         = "EduTech Wiki";

$wgScriptPath	    = "/mediawiki";
$wgScript           = "$wgScriptPath/index.php";
$wgRedirectScript   = "$wgScriptPath/redirect.php";

## If using PHP as a CGI module, use the ugly URLs
#   $wgArticlePath      = "$wgScript/$1";
# DKS 3/2006
$wgArticlePath      = "/en/$1";

Therefore only "normal" pages look nice. Special pages remain ugly, but this doesn't matter IMHO.

Also consider excluding all or most special pages in robots.txt. No reason that these should be indexed and they really eat away CPU cycles if you need another argument.

### Language strings for the Wiki[edit | edit source]

Depends on the installation !!

If you are using database message ($wgUseDatabaseMessages is true, the default), then the Special:Allmessages page lists all the navigation box. Display the messages, then click on it (will open a page for the message) and EDIT.

If you are not using database messages, you can edit the languages/Language.php file (for English) or languages/LanguageXX.php for non-English languages, where XX is the two-letter language code for your language.

Finally, some strings (E.g. the copyright messages) can be set as variables in the LocalSettings.php file

### Interwiki links to other languages[edit | edit source]

In order to create interwiki links to another wiki, e.g. for other language versions like in wikipedia, you will have to edit a database table:

* Read Interwiki_links_to_other_languages

### Life time of a session[edit | edit source]

* Change /usr/local/lib/php.ini

; Modif DKS augmenter le lifetime d'une session à 3600 secondes pour Mediawiki editing !
; session.gc_maxlifetime = 1440
session.gc_maxlifetime = 3600

See: [1]

### Search[edit | edit source]

* Default MySQL search is both very slow and plain dumb
* Therefore I added a a simple google box (manually in the skin)

To do:

* Install Lucene

Maybe test this "easy setup" (Will try this after we move edutech wiki to faster brand new server - End of Aug. 2009)

* http://www.mediawiki.org/wiki/Extension:EzMwLucene
* http://www.mediawiki.org/wiki/Extension:MWSearch

### Copie mediawiki sur PC / Windows[edit | edit source]

See also: WAMP, a probably updated English version of this section

* Attention, il faut PHP 5.x pour Mediawiki 1.7 !!
* Easyphp ne le fait pas, mais on peut upgrader:
* Vider le répertoire ./php et ensuite le remplir avec le zip: http://www.php.net/downloads.php
* IMPORTANT: Il faut editer php.ini et charger explicitement php_mysql (pour php 4 c'était pas le cas)

extensions_dir = "./ext"
extensions = php_mysql.dll

* cela marche, c.f. http://tecfa.unige.ch/guides/tie/html/tie-wiki/tie-wiki.html
* D'abord exporter (cf. ci-dessus) et importer la base de données

mysqldump -p base_de_donnees > fichier.sql
par ex. mysqldump -p wikimedia > /tmp/wikimedia.sql

*     * Ensuite transférer sur le PC.
* Importation:
* Je suggère d'utiliser mysql en ligne de commande (alternativement augmenter LARGEMENT tous les paramètres dans php.ini)
* Se trouve dans c:\program files\Easyphp-XX\mysql\bin\mysql.exe

mysql.exe base_de_donnees -u root -p < c:\tmp\wikimedia.sql               ... attendre un bon moment ;)

* Ensuite copier les fichiers PHP
* Adapter LocalSettings.php
* changer mot de passe de la bd (j'utilise root sur mon pc ... juste pour jouer ca va)
* changer $IP
* Vérifier le include path (les anciens, genre Mediawiki 1.5 était fait pour Unix)

$path = array( $IP, "$IP/includes", "$IP/languages" );
set_include_path( implode( PATH_SEPARATOR, $path ) );
require_once( "includes/DefaultSettings.php" );

* Finalement faire des alias Apache s'il en a (sinon ca crée un problème je pense)

## Site Maps[edit | edit source]

Google and other search engines may not find all pages. To help, you can create a sitemap that you then can register with Google and others. To do so, use something like:

/PATH-TO/mediawiki/maintenance/generateSitemap.php --server http://edutechwiki.unige.ch --urlpath http://edutechwiki.unige.ch/sitemap

If it works, put it in your crontab, e.g. a daily can do. E.g. you could edit /etc/crontab and add

06 6   * * *   A_USER /usr/bin/php /PATH-TO/mediawiki/maintenance/generateSitemap.php --server http://edutechwiki.unige.ch --urlpath http://edutechwiki.unige.ch/sitemap  --fspath /web/sitemap

Read: http://www.mediawiki.org/wiki/Manual:GenerateSitemap.php

## Access rights et user management[edit | edit source]

### Détruire un utilisateur[edit | edit source]

* Pas facile du tout dans le wiki
* Cf. discussions dans les mailing lists aussi:
* http://www.nabble.com/WikiMedia-f14017.html

L'utilisateur n'a jamais rien édité (et UNIQUEMENT dans ce cas)

* SAUF si l'utilisateur n'a jamais rien édité. Dans ce cas on peut simplement l'enlever de la base de données.
* Dans le répertoire maintanace il y a un script pour tuer tous les utilisateurs qui n'ont jamais édité une page (faudrait l'adapter pour tuer un utilisateur ...)

php removeUnusedAccounts.php --help

L'utilisateur à édité

* Il faut utiliser un script pour reassigner ses pages:

./maintenance/reassignEdits.php --help

* Ensuite seulement, on peut le tuer !

### Rename a user[edit | edit source]

Needs an extension (installed on edutechwiki eng/fr)

* See for Wikipedias: http://meta.wikimedia.org/wiki/Changing_username
* See: http://www.mediawiki.org/wiki/Extension:Renameuser
* See: http://www.mediawiki.org/wiki/Extension_talk:Renameuser
* http://svn.wikimedia.org/svnroot/mediawiki/trunk/extensions/Renameuser/ (download all files)
* ATTENTION: Make sure to upgrade ! Old versions may break. Also remove old versions from the include directory (it now sits in the extension directory)

### Kill a page page forever[edit | edit source]

* Use with spam pages (for the others it's better to keep them in the db)

./maintenance/nukePage.php

### Login obligatoire[edit | edit source]

cf. LocalSettings.php

### Access rights per page[edit | edit source]

* C.f. http://meta.wikimedia.org/wiki/Page_access_restriction_with_MediaWiki

(le problème va surtout se poser dans le contexte d'autres cultures que celle de TECFA)

### Permissions et groupes[edit | edit source]

* On peut les définir le fichier de config
* Exemple pour un Wiki assez ouvert:

$wgGroupPermissions['*']['edit']            = false;
$wgGroupPermissions['*']['createaccount']   = true;
$wgGroupPermissions['*']['read']            = true;

* Permissions read-only pour guests ET logins (group=user), seuls eleve et sysop peuvent editer etc.

$wgGroupPermissions['*']['edit']            = false;
$wgGroupPermissions['*']['createaccount']   = true;
$wgGroupPermissions['*']['read']            = true;
$wgGroupPermissions['*']['edit']            = false;

$wgGroupPermissions['user' ]['move']            = false;
$wgGroupPermissions['user' ]['read']            = true;
$wgGroupPermissions['user' ]['edit']            = false;
$wgGroupPermissions['user' ]['createpage']      = false;
$wgGroupPermissions['user' ]['createtalk']      = false;
$wgGroupPermissions['user' ]['upload']          = false;
$wgGroupPermissions['user' ]['reupload']        = false;
$wgGroupPermissions['user' ]['reupload-shared'] = false;
$wgGroupPermissions['user' ]['minoredit']       = false;

$wgGroupPermissions['sysop' ]['move']            = true;
$wgGroupPermissions['sysop' ]['read']            = true;
$wgGroupPermissions['sysop' ]['edit']            = true;
$wgGroupPermissions['sysop' ]['createpage']      = true;
$wgGroupPermissions['sysop' ]['createtalk']      = true;
$wgGroupPermissions['sysop' ]['upload']          = true;
$wgGroupPermissions['sysop' ]['reupload']        = true;
$wgGroupPermissions['sysop' ]['reupload-shared'] = true;
$wgGroupPermissions['sysop' ]['minoredit']       = true;

$wgGroupPermissions['eleve']['move']            = true;
$wgGroupPermissions['eleve']['read']            = true;
$wgGroupPermissions['eleve']['edit']            = true;
$wgGroupPermissions['eleve']['createpage']      = true;
$wgGroupPermissions['eleve']['createtalk']      = true;
$wgGroupPermissions['eleve']['upload']          = true;
$wgGroupPermissions['eleve']['reupload']        = true;
$wgGroupPermissions['eleve']['reupload-shared'] = true;
$wgGroupPermissions['eleve']['minoredit']       = true;

* User Rights (MediaWiki)
* ( User Access rights on Wikipedia )

See also extensions to create category or user-based permissions.

## Export / import to mediawiki[edit | edit source]

Several import/export tools to mediawiki exist. All of these need some manual tuning.

### Export[edit | edit source]

The collection extension

* exports to PDF and Open Office - best bet currently -
* See Mediawiki collection extension installation

Daniel K. Schneider 15:00, 17 June 2009 (UTC)

Other

* Help:Export officiel
* dump backup
* solution en python
* Using the python wikipediabot
* Processing MediaWiki XML with STX
* w2x (This is installed here, doesn't work will all formats though)
* PDF_Export \- needs FLTK and HTMLDOC installed -
* PDF Book \- OK
* http://www.mediawiki.org/wiki/Extension:PdfHandler (Mediawiki 1.11) - to be tested

### Editing tools[edit | edit source]

* http://en.wikipedia.org/wiki/Wikipedia:Tools/Editing_tools
* List of editing tools and filters like html2wiki and word2wiki, etc.

### Mass import pictures[edit | edit source]

Let's say that you have two wikis and wish to import all pictures from one to the other without overwriting existing files that have the same name.

In the source wiki, copy all images to a temp directory, e.g. under unix:

find . -name thumb -prune -or \( -name *.png -or -name *.jpg -or -name *.gif \) -exec cp -rp {} /tmp/images \;

Remove the ones you dont really need

In the target wiki, go to maintenance/ and use the importImages.php script roughly like this:

php importImages.php --extensions=jpg,gif,png,svg --user=WikiSysop --dry /tmp/images

Remove "--dry" if you feel safe :)

### Import to Wiki links[edit | edit source]

* http://de.wikipedia.org/wiki/Wikipedia:Helferlein/Word2MediaWikiPlus Word to Wiki
* http://www.dwheeler.com/html2wikipedia/ HTML to Wiki
* http://diberri.dyndns.org/wikipedia/html2wiki/ OnLine HTML to Wiki !
* http://www-math.cudenver.edu/~jmandel/latex2wiki/ Online Latex to Mediawiki converter (User:Jmath666/latex2wiki
* http://www.wikiwaves.org/index.php/Converting_Latex_to_Wiki Converting Latex to Wiki

### HTML import[edit | edit source]

Batch script

* html2wikipedia Script writting in C (Installation needs GNU and compiling)
* HTML::WikiConverter. A Perl script by Dave (Diberri)'s.

Online forms

* online form based on Dave's Perl script
* online form based on Dave's Perl script
* HTMLtoWIki On-line form from Seapine Labs (uses David's HTML::WikiConverter).
* Emiliano Bruni's form (an other on-line tool based on HTML::WikiConverter).
* converter form Wikipedia and Google Code Converter and Code Highlighter

Another solution is to load HTML into OpenOffice and then convert. This is most useful when you got many pictures, e.g. SPSS output.

### PDF 2 Wiki[edit | edit source]

(only if you just have a PDF, since you will have to do a lot of wiki formatting)

* http://mail.ywambrussels.be/sskcwiki/pdf2wiki.php (online form, works fine, but needs separate picture extraction and manual formatting)
* http://www.ywamkb.net/kb/index.php/User:Kevin_pdf2wiki

### Word 2 Wiki[edit | edit source]

See Word macros at Mediawiki.org. It lists several tools. However, currently (09:35, 30 July 2009 (UTC)) we believe that it is probably easier to open a word file in Open Office and then export from there (the Wiki filter is included in OO).

#### Word2MediaWikiPlus[edit | edit source]

* Extension:Word2MediaWikiPlus. Convert Microsoft Word document content to MediaWiki markup. This is a Word Visual Basic macro. Usage requires a running copy of Microsoft Word that supports Visual Basic macros (Word 2000 or greater). This is an enhancement of the Word2MediaWiki converter.
* Daniel K. Schneider has tested this and it works.

Installation

* Get http://www.beadsoft.net/files/Word2MediaWikiPlus.zip
* Change Macro security level in Word, in Word 2003 (english) do:
* Open Tools -> Options -> Security Tab
* Click on the Macro Security button (lower right)
* Set Security level to "Medium"
* Set Trusted Publishers to "Trust all installed ..." and Trust access to Visual Basic
* Install the macro: Click
* You can revert "Trust acces to Visual Basic" after this.

Post installation configuration

* Once the macro is installed, you can define the URL of your Wiki (2 versions)
* MS Photo editor doesn't exist anymore in Office 2003. You can reinstall it from an old Office version if you have it still around (http://support.microsoft.com/kb/817095)

Upload

* You have to cut and paste, but the macro will launch the probable page in your wiki. If it doesn't exist you can create it.
* You can enter the category the article will belong to

#### Word2MediaWiki.NET[edit | edit source]

(not updated since 2008 ?)

* Word2MediaWiki.NET
* I had a brief look at it. It installs ok on Windows Vista and Word 2007
* To run, look in the Word 2007 add-ins tab.
* Doesn't do image and tables conversion (Beta 2) - Daniel K. Schneider 19:33, 10 March 2009 (UTC)

#### Microsoft Office Word Add-in For MediaWiki[edit | edit source]

* Microsoft Office Word Add-in For MediaWiki at Microsoft for Office 2007 and 2010
* Dated 10/27/2010.
* Usage: "Save as" (but see below)

As of July 2019:

* download is the same, but the registry is wrong. This can be fixed.
* Read https://answers.microsoft.com/en-us/msoffice/forum/msoffice_word-mso_other/using-microsoft-office-word-add-in-for-mediawiki/449726c2-6d08-45e1-919a-4b5082ab4b5b
* I.e. do the following

Run the Registry Editor (regedit.exe)
Navigate the following key: HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Office\14.0\Word\Text Converters\OOXML Converters\Export\MediaWiki
export that key to a file
Open the file with notepad and change the "14.0" to "15.0" and save the file
Import the registry file

If you are running the 64 bit edition of Windows, do the same thing for HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\Microsoft\Office\15.0\Word\Text Converters\OOXML Converters\Export\MediaWiki

Also do ti for 16.0 in both cases ....

#### Via Open Office[edit | edit source]

Open the word file in OpenOffice and then export from there (see below)

### Export from OpenOffice[edit | edit source]

I like Open Office even less than word. I really don't understand how to use style in an efficient way, e.g. like in FrameMaker. What I always resent is that with software like Word or OpenOffice it is always difficult to find a stylesheet that contains just the tags you need for a given task. E.g. 50 tags for a book and maybe 15 for a Wikipage. Then when you write, you just use these styles. PERIOD.

However, starting version version 2.3 there is a relatively decent export to MediaWiki format. (Menu File->Export). It's not great, but ok. I this for example to create wiki text from SPSS:

* Export from SPSS to HTML
* Open this HTML in Open Office
* Save as wiki. It will have links to the png's produced by SPSS
* Tables are shaky though (only one level)

## Cache[edit | edit source]

Read http://www.mediawiki.org/wiki/Manual:Cache

### PHP Cache[edit | edit source]

(used for edutechwiki)

A PHP cache allows to cache php code files. To use this, install a PHP chaching extensions. This has nothing to do with a MediaWiki installation. Read http://www.mediawiki.org/wiki/Manual:Cache#PHP_caching.

E.g. on Ubuntu, install APC first:

apt-get install php-apc
apache2ctl restart

Then:

$wgMainCacheType = CACHE_ACCEL;

### Internal messaging cache[edit | edit source]

For localization (messages) cache (new in 1.16):

$wgCacheDirectory = "$IP/cache";

### Internal file cache[edit | edit source]

(used for edutechwiki)

For File caching, change LocalSettings.php

$wgUseFileCache = true;
$wgFileCacheDirectory = "{$wgCacheDirectory}/html";

### Purging cached files[edit | edit source]

Don't know exactly what this affects, but it's good voodoo when some page contents don't refresh as they should...

(1) Empty cache for a single page

?action=purge

(2) Empty all: Emtpy the "objectcache" table

TRUNCATE TABLE objectcache;

### Memcache[edit | edit source]

Read http://svn.wikimedia.org/viewvc/mediawiki/trunk/phase3/docs/memcached.txt?view=markup

* For solaris, both libevent and memcache are available at www.sunfreeware.com

* IMPORTANT: A firewall must be installed for the memcache port. Else anyone can read/write to it - DKS

run with the -v flag to see mistakes :)

### Cache externe avec Squid[edit | edit source]

* http://meta.wikimedia.org/wiki/Squid_caching
* http://meta.wikimedia.org/wiki/Talk:Squid_caching
* Bon, depuis 23/6/2005 j'ai installé un SQUID 2.5

A faire

* logfiles format (apache style dans squid ou encore faire un forward pour Apache)
* perfomance tuning.
* Mise à jour: version 2.6

Config approximative dans Apache http.conf

* Apache n'est plus visible à l'extérieur.

NameVirtualHost 127.0.0.1:80
<VirtualHost 127.0.0.1:80>
ServerName tecfaX.unige.ch
<VirtualHost 127.0.0.1:80>
ServerName edutechwiki.unige.ch

Config approximative de squid

http_port 129.194.9.48:80
acl all src 0.0.0.0/0.0.0.0
acl manager proto cache_object
acl localhost src 127.0.0.1/255.255.255.255
# acl to_localhost dst 127.0.0.0/8
acl CONNECT method CONNECT
acl Safe_ports port 80		# http
http_access allow manager localhost
http_access deny manager
http_access deny !Safe_ports
httpd_accel_host 127.0.0.1 # same machine
httpd_accel_port 80
httpd_accel_single_host on
httpd_accel_uses_host_header on

Changement dans la config des Wiki

* IMPORTANT dans Localsettings.php

$wgUseSquid = true;

$wgSquidServers = array('127.0.0.1');

* La boite "top contributors" empeche le cache de fonctionner, donc on censure:

Fichier: extensions/awc/top_ten/config.php
define (nav_menu, false);

Links

* The Squid Guide (Wiki)
* Squid HomePage

### Autres pointeurs cache[edit | edit source]

* D'autres methodes pour le cach (sous performance):
* http://meta.wikimedia.org/wiki/Help:Contents

## Installed extensions and templates[edit | edit source]

This may not be up-to-date or just not documented on purpose ;) See Special:Version for installed extensions. Note that some just show up indirectly in the tag list.

See also:

* https://www.mediawiki.org/wiki/Help:Extension:ParserFunctions
* https://www.mediawiki.org/wiki/Help:Magic_words

### editor extension[edit | edit source]

* WikiEd is an alternative because it supports pasting formatted text, e.g. from MS-Word (including tables). An in-browser text editor that adds enhanced text processing functions to Wikipedia and other MediaWiki edit pages.

Currently it works only for Mozilla browsers like Firefox and SeaMonkey. Works fine. Although personally I prefer to use emacs through "It's all text" (on Windows) or directly in Ubuntu.

### FCKEditor[edit | edit source]

This is a dead project, only use it on older Mediawiki installations that you can't upgrade

Was never installed on english edutech wiki, but in wikis that we use for teaching. Out-of-the box install now worked ok with version mediawiki 13.x - Daniel K. Schneider 10:55, 23 February 2009 (UTC)

FCKeditor

* http://www.mediawiki.org/wiki/Extension:FCKeditor_(Official)
* Had it installed on french Edutechwiki for example, worked more or less ok.
* http://mediawiki.fckeditor.net/

The advantage of this extensions is that it produces wiki code (not html). Makes it easy to hand edit stuff if needed.

### Visual editor[edit | edit source]

This is the new official Wikimedia Wysywig editor. So far it needs a bleeding edge installation (i.e. 1.22/wmf4+ or better). A stable MediaWiki distribution is expected by the end of 2013. That being said, it is available on Wikipedia.en and Mediawiki.org for user who do edit with a login.

It requires a Parsoid server.

Read:

* Extension:VisualEditor
* Parsoid
* How to install the latest node.js on Ubuntu?, (needed for Parsoid)

### Wiki blog[edit | edit source]

* http://www.mediawiki.org/wiki/Extension:Wikilog
* Installed on June 2009 - seems to work fine - Daniel K. Schneider 15:00, 17 June 2009 (UTC).

### Forum extension for the discussion page[edit | edit source]

This is really useful if you use the wiki for assigments. Allows Q/R (tutoring support). Without you are in trouble since students can't use wiki for threaded discussion ....

* http://www.mediawiki.org/wiki/Extension:DiscussionThreading

Alternative:

* http://www.mediawiki.org/wiki/Extension:LiquidThreads (unstable on June 2009)

### Forum extensions[edit | edit source]

In case you need a real forum (e.g. phpbb-like), there are other extensions:

* http://www.mediawiki.org/wiki/Category:Discussion_and_forum_extensions

E.g. try one of these:

* http://www.mediawiki.org/wiki/Extension:MediaWiki_Bulletin_Board (not tested so far, not maintained ?)
* http://www.mediawiki.org/wiki/Extension:AWC_Forum / http://wiki.anotherwebcom.com/Category:MediaWiki:Forum (not tested so far)

### Various PDF export options[edit | edit source]

* PDFExport
* PDFBook
* http://www.mediawiki.org/wiki/Extension:Pdf_Book
* It is important to change server settings of large pages (both php.ini and httpd.conf)
* Also, hacks to replace thumbnails and image-width

php.ini

max_execution_time = 600
max_input_time = 600
memory_limit = 100M

httpd.conf

Timeout 600

### Semantic Wiki[edit | edit source]

* A local production to visualize links with Java (disabled now, since size was too big)

### SVGViz[edit | edit source]

* A local production to visualize links with SVG. Read Mediawiki SvGViz extension !

### Confirm Edit[edit | edit source]

* Anti-Spam Login Creation
* Read Spam article. It will explain how we use the ConfirmEdit / Recaptcha extension

### Cite et Special:Cite, Page Authors[edit | edit source]

Cite

* http://meta.wikimedia.org/wiki/Cite/Cite.php
* WARNING: Il faut editer le fichier

require_once( "extensions/Cite/Cite.php" );

Special
Cite.

* http://meta.wikimedia.org/wiki/Cite/SpecialCite.php

require_once( "extensions/Cite/SpecialCite.php" );

PageBy

* This will list authors.

<pageby/>

* I suggest to use the following (made an emacs macro of course, since typing is too long)

<!-- <pageby nominor="false" comments="false"/> -->

### MetaUML[edit | edit source]

This is more complicated.

Step: Make sure that latex, dvips, gs (ghostscript), and convert (ImageMagick) installed and available in the PATH. Depending on how the system is installed, this also means to fix the path of the Apache webserver.

It probably would be a good idea to install livetex, but since I found I binary for (older) teTex I went with this. texTex in /opt/sfw wasn't correctly installed. Got a new version from http://www.sunfreeware.com/. This package installs in /usr/local

gunzip tetex-3.0-sol10-sparc-local.gz
pkgadd -d tetex-3.0-sol10-sparc-local

teTex now should be installed and there is some postinstall work to do

* Add /usr/local/teTeX/bin/sparc-sun-solaris2.10 to the path.
* Configure

texconfig conf

Step: Install texvc (maybe not needed). This is a standard Mediawiki script to render Latex math fragments.

* It's already in the mediawiki distribution
* Read: http://en.wikipedia.org/wiki/Texvc and compile.

Step: Fix some configuration variables. Some documentation on variables is here:

* http://www.mediawiki.org/wiki/Manual:Configuration_settings

You have to make sure that all these variables are defined:

$wgUseTeX	    = true;
$wgMathPath         = "{$wgUploadPath}/math";
$wgMathDirectory    = "{$wgUploadDirectory}/math";
$wgTmpDirectory     = "{$wgUploadDirectory}/tmp";
$wgImageMagickIdentifyCommand="/usr/local/bin/identify";
$wgImageMagickConvertCommand = "/usr/local/bin/convert";
$wgDvipsCommand="/usr/local/teTeX/bin/sparc-sun-solaris2.10/dvips";

Step: Install MetaUML, UML for LaTeX/MetaPost

* Get the archive from http://metauml.sourceforge.net/
* Decompress
* Copy files into /usr/local/teTeX/share/texmf-dist/metauml
* texhash

This works.

### tag clouds, navigation, who did what[edit | edit source]

See e.g. the The big picture page for examples.

Top ten pages

* http://www.mediawiki.org/wiki/Extension:TopTenPages

<TopTenPages>20</TopTenPages>

Top contributors (by Rob Church)

* http://www.mediawiki.org/wiki/User:Robchurch/TopContributors
* Edit the php file to change how many you want

<topcontributors/>

Tag Cloud (by Orange Dino, http://www.orangedino.org)

<tagcloud></tagcloud>

### Templates[edit | edit source]

Liste des templates utilisé dans ce wiki

* C.f la Category:Templates

* D'autres sont en test, voir: Category:Esoteric_templates

* ATTENTION: Me semble qu'utiliser un éditeur externe ne marche pas bien ...

Problème avec les templates

* Ils sont reliés à un problème du système de caching (ne sais pas où).
* Redémarrer le serveur résout le problème
* Autre alternative: au lieu de {{incomplete}}, utiliser {{subst:incomplete}}. Cela substitue en dur avec les désavantage évident que (a) tout changement global n'aura pas d'effet et (b) cela ajouter du code HTML dans la page ... ; FAQ entry * http://meta.wikimedia.org/wiki/Help:A_quick_guide_to_templates *I edited the template, so why didn't the page it is used on change? :There are some caching bugs. One way to force refresh is to do edit on the page in which the template appears, and to then click on Save page without having changed anything - there is no need to fill in the Summary field since there will not be any history of this as a change generated. Alternatively, refreshing by pressing Ctrl and F5 often helps. other way is edit bookmark and add <nowiki>&action=purge

to the URL.

## New Extensions etc.[edit | edit source]

* Most of these extensions can be found on http://www.mediawiki.org/wiki/MediaWiki
* See the Extension Matrix

Others

* http://meta.wikimedia.org/wiki/User:Duesentrieb/Tools (Daniel Düsentrieb indexes some of his stuff only here)
* http://tools.wikimedia.de/~daniel/repository/extensions/

* http://bluecortex.com/ (Jean-Lou Dupont)
* http://bizzwiki.com/ (Jean-Lou Dupont)

* http://forums.anotherwebcom.com/ (AWC)

### Bots[edit | edit source]

Wikipedia:Bots

### References et citations[edit | edit source]

Pas clair quel systeme va s'imposer sur les Wikipedia. voir:

* Wikipedia:Citing sources (Style guide)
* Wikipedia:Citation templates
* Wikipedia:Citing sources/example style
* http://library.concordia.ca/help/howto/citations.html (APA ressource)

More ambitious projects that aim to support citation networks (and data more generally)

* http://meta.wikimedia.org/wiki/Wikicite (Wikicite)
* http://meta.wikimedia.org/wiki/Wikicat (Wikicat, an ambitious bibliographic catalog project).
* http://meta.wikimedia.org/wiki/WikiTextrose
* http://meta.wikimedia.org/wiki/Wikidata
* http://www.omegawiki.org/Main_Page
* http://meta.wikimedia.org/wiki/Ultimate_Wiktionary_data_design

Harward references

Il faudrait se demander si on ne veut pas utiliser le system "Harward" de certains parse extensions....

* http://en.wikipedia.org/wiki/Template:Harvard_reference
* http://en.wikipedia.org/wiki/Template_talk:Harvard_citation
* http://en.wikipedia.org/wiki/Wikipedia:Template_messages/General

Bibliography management

* http://wolfgang.plaschg.net/bibwiki/
* Interesting system, but it should be extended to allow for citations

### List of extensions to install / test[edit | edit source]

(some of these already may have been installed .... )

User management

* CheckUser
* Only works with 1.10+, will install it once the official version is out
* http://www.mediawiki.org/wiki/Extension:CheckUser

* ActiveUsers
* http://meta.wikimedia.org/wiki/User:Duesentrieb/ActiveUsers
* External application talking to the recentchanges page of a given wiki. (wikipedia sites only).

* Minimum Name Length
* http://www.mediawiki.org/wiki/Extension:Minimum_Name_Length
* Force users to have somewhat real names

* Moodle interface (single-sign-on integration)
* http://www.mediawiki.org/wiki/Extension:Hierarchy

People

* PageBy (renders as a summary of the pages edit history)
* http://www.mediawiki.org/wiki/Extension:PageBy
* http://svn.wikimedia.org/svnroot/mediawiki/trunk/extensions/PageBy/README

Who is online

* We have a special page installed for this ... (not too useful)
* http://www.gizmogarden.com/index.php/Whos_online_ajax (should work with recent wikis - not yet tested)

Chat

* WikiChat (early beta on 17:21, 12 April 2007 (MEST))
* http://www.mediawiki.org/wiki/Extension:Chat
* http://www.wikichat.org/Main_Page
* http://www.wikichat.org/WikiChat_Project

Shoutbox

* There is no Wikimedia shoutbox as far as I can tell
* But one might try to include standalone shoutboxes with an i-frame (in a skin file, no tested)

Some code that looks ok

* http://www.gerd-tentler.de/tools/
* http://www.j-fx.ws/tagbox

Navigation / Information Organization

* Semantic MediaWiki
* http://meta.wikimedia.org/wiki/Semantic_MediaWiki (to test !)

* Category cloud
* http://www.mediawiki.org/wiki/Extension:CategoryCloud
* Make clouds of subcategories (only ?)
* Tag Cloud
* http://www.mediawiki.org/wiki/Extension:YetAnotherTagCloud
* Another version (better than above ?)

* Category tree
* http://www.mediawiki.org/wiki/Extension:CategoryTree
* Displays categories as tree (can be insterted in any page).
* TreeView Skin
* http://clc-wiki.net/wiki/Planning:Treeview_skin:Feedback

* Hierarchy
* http://www.mediawiki.org/wiki/Extension:Hierarchy
* Could be used to produce "booklets" for a theme (but a page can only be in one hierarchy).

* PageAfterandBefore
* http://www.mediawiki.org/wiki/Extension:PageAfterAndBefore
* http://bluecortex.com/index.php?title=Bluecortex:PageAfterAndBefore
* Good to implement linear reading structures
* Needs ExtensionClass Extension

Assembly / In/oc/transclusions

* DynamicPageList
* Dynamically create pages according to (lots) of different criteria
* http://www.mediawiki.org/wiki/Extension:DynamicPa
* http://semeb.com/dpldemo/index.php/Main_Page

* HTMLLets provides a way to include (inline) static HTML snippets into wiki pages.
* http://www.mediawiki.org/wiki/Extension:HTMLets

* Selective transclusion
* http://www.mediawiki.org/wiki/Extension:Labeled_Section_Transclusion

Special contents

* Slides extension - ok seems to work / DKS
* http://meta.wikimedia.org/wiki/Slides_extension
* http://bloodgate.com/wiki/index.php?title=Wiki-Presentations

* Graph
* http://bloodgate.com/wiki/index.php?title=Graph
* http://bloodgate.com/perl/graph/manual/

* Quiz
* http://www.mediawiki.org/wiki/Extension:Quiz
* quote: Simple in its syntax and its use; powerful in its possibilities.

* Wiki2xml
* http://www.mediawiki.org/wiki/Extension:Wiki2xml
* useful project, but no longer maintained ?

* XML Class
* http://www.mediawiki.org/wiki/Extension:XML_Class
* http://bluecortex.com/index.php?title=Bluecortex:XML_Class
* Serves XML/XSL data sources with proper MIME content type
* http://www.mediawiki.org/wiki/Extension:Article_Class_Extended

* Infobox Data Capture
* Will make infoboxes easier
* http://www.mediawiki.org/wiki/Extension:Infobox_Data_Capture

Blogs

* http://www.mediawiki.org/wiki/Extension:Wikilog (still Beta in June 2009) - installed
* http://juliano.info/en/Blog:Memory_Leak

There doesn't seem to be another decent blog with update code. See also http://www.gossamer-threads.com/lists/wiki/mediawiki/137413 E.g.

* http://www.mediawiki.org/wiki/Extension:My_blog (ok for individual blogs)

An other trick is to use transclusions from the talk page, and then maybe use a talk page extension to have threads.

{{ :{{TALKPAGENAME}} }}

Wikia does a probably good extension, but I couldn't find any code:

* http://help.wikia.com/wiki/Help:Blog_article
* http://help.wikia.com/wiki/Help:Blog_article/Bloglist

Feeds

* http://www.mediawiki.org/wiki/Extension:News_Channel
* http://jimbojw.com/wiki/index.php?title=WikiArticleFeeds_Extension / http://svn.wikimedia.org/viewvc/mediawiki/trunk/extensions/WikiArticleFeeds

Import feeds

* http://www.mediawiki.org/wiki/Extension:XFeed_-_RSS_Feed_Aggregator

### Extensions docs and parser extensions[edit | edit source]

* Il faudrait faire un inventaire de ce qu'on aimerai avoir et inclure ici la liste complete (templates et autres). La situation n'est pas du tout claire pour moi -- DSchneider. Si j'ai bien compris:

1. extensions avec des balises wikitext (xml)
2. extensions avec des pages spéciales
3. extensions avec des templates
* hacks anciens, comme Harvard ou citation
* ParserFunctions ajoutent un "vrai" langage de controle dans le parser, ne marchent qu'avec 1.7 ??

Documentation:

* http://meta.wikimedia.org/wiki/MediaWiki_extensions_FAQ
* http://meta.wikimedia.org/wiki/Writing_a_new_special_page
* http://meta.wikimedia.org/wiki/Write_your_own_MediaWiki_extension

Extension categories:

* http://meta.wikimedia.org/wiki/Category:MediaWiki_extensions
* http://meta.wikimedia.org/wiki/Category:Parser_extensions

* Parser functions, something new that seems to be more interesting and works well with 1.7.
* http://meta.wikimedia.org/wiki/ParserFunctions
* http://en.wikipedia.org/wiki/Category:Templates_using_ParserFunctions

### Wikitech[edit | edit source]

* As usual, the hot information is in mailing lists, e.g.:
* http://blog.gmane.org/gmane.science.linguistics.wikipedia.technical

### External editors[edit | edit source]

* External editors

#### Perl / GTK[edit | edit source]

Perl-based reference implementation

* DSchneider uses this on his Linux box, not that difficult to install. Wiki serves a special mime type that calls the perl script which in turn works with any UTF-8 capable editor (I use Gnu Emacs).
* Did not manage to get this working on Win XP (maybe some problem with the GTK library).

Configuration of Emacs

* DSchneider uses Gnu Emacs with LEIM (UTF-8) extensions
* In addition: the http://en.wikipedia.org/wiki/Wikipedia:Wikipedia-mode.el (syntax coloring plus navigation/tree tools)
* download is here: http://www.emacswiki.org/cgi-bin/wiki/wikipedia-mode.el
* In addition: longlines.el

* Alternatively, one could use a Firefox extension that pipes all forms editing into emacs (see the next solution).

#### It's all text[edit | edit source]

Install this Firefox extension. It will allow you to edit any HTML text field with your chosen external editor. It will save edited text to the wiki editing form which then needs to be saved. This solution is not compatible with the Wiked Greasemonkey script, so you have to turn Greasemonkey off)

* https://addons.mozilla.org/en-US/firefox/addon/4125

Read How to open articles in your text editor for more details

Daniel K. Schneider uses this strategy for his windows vista laptops (together with GNU emacs 22.3.1 for win32.

If your editor is Gnu emacs: It's important to set the environment to UTF-8 (Menu->options->Mule->Set Languate environment). Then save with Menu->Options->Save.

#### MwJed plugin for jEdit[edit | edit source]

MwJed plugin is available for jEdit with Firefox or Safari Works well with Mac OS 10.4 and Windows XP (using Firefox 1.5+). Nice syntax highlighting. Moderately easy to install.

1. Get and install all the necessary downloads at mwjed (including JRE 1.4.2, jEdit 4.2 final and the dependent plugins XML and JakartaCommons)
2. extract `$HOME/.jedit/jars/MwJed.jar` into a new directory
3. create a directory `$HOME/.jedit/MwJed/_family`
4. extract `$HOME/.jedit/jars/mwapi.jar` into a new directory
5. find and copy `common.family` and `common.site` into `$HOME/.jedit/MwJed/_family/` and rename accordingly (`NAME.family` and `NAME.site`
6. adapt these two files for the mediawiki you wish to edit
7. add edit link on mwjed homepage to your bookmarks within either Firefox 1.5+ or Safari.
8. restart jEdit
9. within jEdit select Plugins>MwJed>Log in and select the mediawiki you wish to edit (the one with the `NAME` given in step 4
10. open mediawiki page you wish to edit in your browser and select bookmark link created in step 6. The page will load into jEdit.

For more detailed instructions see mwjed homepage and modkwiki.net's help page

Windows (jEdit 4.3pre 10)

* Modified in jEdit download preferences to install jars in the installation directory
* Installed the plugin in the installation directory
* Create a new directory mwjed under c:\Documents and Settings\USER\\.jEdit, then a subdirectory called "_family"
* Extract the files commons.family and commons.site from /jars/mwapi.jar into this _family directory (use any unzip program). Then rename them to something like edutech_en.*

A typical config *.family file should look like this:

## configuration for a whole wiki family

# identification
name	 edutechwiki

# languages
multilingual 	true
defaultLanguage 	en
supportedLanguage 	en
supportedLanguage 	fr

A typical config file for a wiki site:

# identification
family	edutechwiki
language en

# network
protocol	http://
hostName	edutechwiki.unige.ch
rawPath	        /mediawiki/index.php
prettyPath	/en/
apiPath	        /mediawiki/api.php

Do no remove messages etc. This plugin is really tricky and does not show any useful error messages when something goes wrong. See Utilities->Troubleshooting->Activity Log

## Other[edit | edit source]

Parameters for the index.php page

* http://www.mediawiki.org/wiki/Manual:Parameters_to_index.php

(very useful to know ...)

## Wiki readers (books)[edit | edit source]

### Best bet[edit | edit source]

* http://www.mediawiki.org/wiki/Extension:Collection

See:

* http://edutechwiki.unige.ch/en/Help:Books
* http://edutechwiki.unige.ch/en/Mediawiki_collection_extension_installation

Works well, also ordering books from PediaPress - Daniel K. Schneider 15:00, 17 June 2009 (UTC).

### Legacy links[edit | edit source]

Global Links

* http://en.wikipedia.org/wiki/Wikipedia:Tools
* http://en.wikipedia.org/wiki/Wikipedia:WikiReader

German wiki links

* The most advanced people seem to be the Germans
* http://de.wikipedia.org/wiki/Wikipedia:WikiReader/Handbuch
* http://de.wikipedia.org/wiki/Wikipedia:WikiReader
* http://de.wikipedia.org/wiki/Wikipedia:Helferlein
* http://de.wikipedia.org/wiki/Wikipedia:WP_1.0 \- 100 vol. printed Wikipedia !

Manually / German method

* http://de.wikipedia.org/wiki/Wikipedia:WikiReader/Handbuch
* http://de.wikipedia.org/wiki/Wikipedia:WikiPress/Erstellung
* http://de.wikipedia.org/wiki/Wikipedia:WikiPress/Erfahrungsbericht_Erstellung

Filters / Exporters

* Perl modules ? (don't know what this exactly does)
* http://www.organicdesign.co.nz/Peer.home

* flexbisonparse module ??

* wiki2xml (SVN module - installed here but not fully functional yet)
* http://tools.wikimedia.de/~magnus/wiki2xml/w2x.php
* http://svn.wikimedia.org/viewvc/mediawiki/trunk/wiki2xml/ (SVN access)

* flexbisonparse

* Wt2b (dead ?)
* http://www.tldp.org/
* http://www.tldp.org/wt2db/ Wikitext, Wiki to DocBook exporter
* http://www.tldp.org/HOWTO/WikiText-HOWTO/

Generators

* http://de.wikipedia.org/wiki/Wikipedia:PDF-Generator
* http://sourceforge.net/projects/wikipdf/
* http://aluno.no-ip.info/juca/index.php/WikiPDF
* Needs Latex AND pdfTEX installed !! (The Tex Live package thas it)
* http://www.plog4u.de/index.php/Wikipedia_nach_PDF_konvertieren

Examples

* http://www.wikireader.de/
* http://meta.wikimedia.org/wiki/WikiReader
* http://fr.wikipedia.org/wiki/Wikipédia:Projet,_WikiReader (Les cahiers de Wikipédia).
* http://en.wikipedia.org/wiki/Wikipedia:WikiReader

## Humor[edit | edit source]

* http://meta.wikimedia.org/wiki/Wikipedia_is_an_MMORPG