MediaWiki/archive/customizing
< MediaWiki | archive
Jump to navigation
Jump to search
Revision as of 19:49, 14 April 2007 by Woozle (talk | contribs) (→Extensions of Interest: variables extension)
computing: software: web: MediaWiki: customization
Links
- MediaWiki Customization at mediawiki.org
Articles
- modifying MediaWiki menus
- shortening MediaWiki URLs
- add a new navigation box to MediaWiki
- modifying the MediaWiki searchbox
- MediaWiki user-group security
Extensions of Interest
Available MediaWiki extensions which look like they could be useful (full list with brief descriptions):
- portal-type features:
- My blog: blogging features
- Tasks extension and Tasks Extension: rudimentary multi-user project management
- WikiFeeds adds to the standard feeds: Newest pages, Recent changes by user, Newest pages by user, User watchlist, Recent changes for articles in a category, Newest articles in a category
- data display:
- syntax highlighting
- TabbedData extension: useful for directly posting spreadsheets, though formatting may not be as nice as the converter; evaluation needed
- data management:
- Attribute Extension: adds an "attribute" tab to all pages; stores attribute data in a table
- Extension:Labeled Section Transclusion (LST): sort of an extension of the "noinclude" and "includeonly" tags: allows multiple named sections which can be included or excluded. Pages can be set up which are just "data" to be presented in different formats by inclusion (works well with templates, generally speaking). Now in use on PsyCrit.
- VariablesExtension is a different approach to storing data for re-use within the wiki. Due to the fact that the data has to fit inside a template call, available wiki-markup is more limited than with LST (above) but may have other strengths to compensate. Question: Can an included page "see" variables declared in the calling page?
- groups / security
- convenience:
- Special:Interwiki by Stephanie Amanda Stevens (phroziac)
- experimental (keep an eye on these to see if they become useful):
- Extension:WikiDB creates virtual tables within the wiki and lets you output their contents dynamically
- Extension:Semantic MediaWiki
Code Notes
(From Woozle 20:59, 15 Jun 2005 (CDT). Eventually to be given their own section, I expect.)
- Everything obviously starts with index.php
- For the purpose of displaying a page (not saving changes or doing anything else), this calls $wgArticle->view(), in Article.php (line 699)
- $wgArticle->view() appears to be able to provide a few other formats besides the regular view (including difference engine and displaying redirections as subtitles), but I'm ignoring that for now
- $wgOut seems to be the object which accumulates text to be output, via various methods:
- $wgOut->addWikiText(...)
- $wgOut->addHTML(...)
- $wgOut->addPrimaryWikiText() # Display content and save to parser cache
- $wgOut->addWikiText() # Display content, don't attempt to save to parser cache
- $wgOut->setPageTitle()
- $wgOut->transformBuffer(); # Put link titles into the link cache
- $wgOut->addMetaTags(); # Add link titles as META keywords
- ...and then it does these two lines:
- $this->viewUpdates(); (found at line 1926 -- doesn't do much)
- wfProfileOut( $fname );
- It's not clear whether the navbar has already been pulled in by the time we hit viewUpdates -- possibly transformBuffer does it? The comment makes it sound like that, but the name "transformBuffer" in that case is not very descriptive. The code in there should probably be examined.