Manual talk:Extensions/Archive 1

Versioning and file identification
I just had a bit of a problem trying to install an extension and fix another one. We are running 1.6.8, with PHP4. It was installed by a colleague, and he has done most of the work on it, including installing some extensions.

Today, one of our users reported that ParserFunctions wasn't working properly (it didn't produce a page at all), and also asked for StringFunctions, so I looked at these, starting of course with StringFunctions and ParserFunctions.

I was flabbergasted to find no version, date or compatibility information in the php files. I realise that they have a history in SVN, but that's not much use when you've downloaded odd files to your installation. I had no way of telling which version of ParserFunctions.php my colleague had loaded, and whether it was compatible with our installation (my first thought was that he had retrieved a 1.8 version). Once I looked at the log it was obvious that we were missing a function - sprintfDate - and I went looking for it, eventually finding Tim Starling's note that he had provided a compatibility version. Evidently the version we had was too old for that, but how could I tell? (His note didn't say there was an extra file to load, but I eventually realised that).

Am I missing something, or is this lack of version information in the files a disaster waiting to happen? --ColinFine 16:49, 15 January 2007 (UTC)

I just ran the command: svn checkout http://svn.wikimedia.org/svnroot/mediawiki/branches/REL1_11/phase3 and all I found in my extensions directory was a README file, no ExtensionFunctions.php (anywhere in my checkout tree) as this page lead me to expect. Maybe I've done something wrong, but I'm guessing that these functions have been rolled into the core and docs not updated to reflect this. MaxEnt 08:29, 23 February 2008 (UTC)


 * phase3 is the wiki core. Extensions are, per definitionl, not part of the core. So it only contains an empty directory for extensions. To check out extensions, use http://svn.wikimedia.org/svnroot/mediawiki/branches/REL1_11/extensions (all at once, if you like, or individually). -- Duesentrieb ⇌ 13:55, 25 February 2008 (UTC)
 * actually, ther readme file you mentioned tells you that too. Did you, err, read it? it's called README for a reason... -- Duesentrieb ⇌ 13:57, 25 February 2008 (UTC)

Cleaning up extension related manual pages
I would like to cut this page down to very simple instructions on creating an extension. Something like this setup information from Manual:Special pages. Then after that, it would say, "What type of extension do you want to create: Special Page, Tag, Parser Function, Variable, whatever". And each of those manual pages would be very simple instructions on the two or three extra lines you need for that type of extension followed by some examples of things you can do with each of them.

All the other info: coding conventions, internationalization, FAQs, would be moved to common pages like Extensions FAQ, Manual:Internationalization, Manual:Coding conventions, etc and just linked from the manual pages. Alternately, these pages could be subpages of Manual:Extensions. Most FAQ types these days appear on extension discussion pages. When people ask support type questions on discussion pages, the questions can be moved to the support desk or the FAQ depending on the question. We can leave the section header on the page with a link to the moved question to help encourage others to look in those places first. Also, the info for installing extensions should be split out into another page. It's really aimed at admins, not developers. Maybe Manual:Installing extensions. Thoughts? --Cneubauer 15:50, 30 May 2008 (UTC)

Date/Time formatting functions?
It would be great if any usable date/time formatting functions were mentioned as it is a bit complicated (user preferred date format, time zone, etc).

Internationalising namespaceNames
Hi there, I built an extension that provides a new namespace, called NS_LITERATUR, and added this code to my MyExtension.php: By now, all language versions of my Wiki use "Bib" and "Bib Talk" as namespaces. I want that in the German version of my Wiki the namespace is called "Literatur", and in the English version it should be called "Bibliography". How do I do this?--89.196.65.12 12:10, 28 September 2008 (UTC).

Where or how to install this, better instruction is needed.
require_once("$IP/extensions/uniwiki/MooTools12core/MooTools12core.php");

Problem with template used in "Publishing_your_extension" section
The template used in Manual:Extensions seems not to be working as intended.

I haven't the foggiest notion how its gone off the tracks or what it would take to fix it.

Mxmsj 23:45, 8 October 2009 (UTC)
 * I don't see anything wrong with it. Bawolff 06:57, 25 December 2010 (UTC)

Bad
I don't can understand it,don't know why. KnuxD 11:11, 17 August 2010 (UTC)

How does javascript codes are output into the template?
When I view source I see that there are bunch of javascript codes under How are those javascripts codes are getting out there from extensions, what code are they using in extension that allow them to do that? I see that in the template there is this php code data['jsvarurl']) { ?> that probably outputs the code but where are the codes stored? I want to out put my own javascript code but I don't know how.
 * Do things like $parser->mOutput->addHeadItem(' blah.. ', 'name of thing youre inserting to avoid double loading'); (see http://svn.wikimedia.org/doc/classParserOutput.html#a3ab19d71074ef964628d21164952ac26 $parser is a reference to the parser). Also check out $parser->mOutput->addModules if you're using the resource loader. Bawolff 07:10, 25 December 2010 (UTC)

Uninstalling/Removing Extensions
Could someone add instructions on how to remove an extension to this page, or a link to the page.

(I would love to add this information, but am uncertain that removing the files from the extensions/ directory and undoing any changes made to LocalSettings.php is all that is required.)
 * It really depends, an extension that makes changes to a database, you'd only really be disabling it like that, however a more simple extension, say with just a special page or something, then yeah, you'd uninstall it like that. --Lcawte 11:12, 9 January 2011 (UTC)