Modules used
- Freelinking (allows pages to quickly be created "on the fly")
- Diff (tracks revisions)
- Pathauto (makes urls nice & helps views)
- Wikitools (nice wiki-ish stuff like automatic page creation on [[]] linking)
- Table of contents (creates a table of contents w/ the "<!--tableofcontents-->" tag; may not work w/ tinymce)
- Talk (puts comments underneath a separate tab)
- Tagadellic (creates a tag "cloud")
- Taxonomy list (creates a tag/folder list)
- Taxonomy redirect (redirects taxonomy links for different views)
- WYSIWYG API (for the nice editor, here tinymce)
- Token (for a dependency)
- Views (for folder lists and other ways of viewing data)
Configuration
- Creat a new content type, remembering to enable revisions
- For Comments, use the Talk module to be like mediawiki
- Organizion and navigation are handled by taxonomy,
- either loose/tagging or fixed list of "folders" (use taxonomy list for block and views/taxonomy redirect for page lists)
- a required fixed list can prevent orphan pages!
- Enable file uploads, if desired; possibly use IMCE
- Freelinking: set the default wiki content type
- Input formats:
- Enable filters (table of contents, freelinking)
- Order can mess things up--change things here if they aren't working
- Pathauto: add a path if desired, otherwise set "[title-raw]" for the wiki node type; be sure to leave old aliases intact
- Custom block (code below)
- Site information: Set homepage to be a single home node
What's more to do
Take a look at outline designer for easier organization/allow user creation of folders
Link to content (appears to be dead
Multiauthor issues/views
Update notifications/RSS
Better theming
Look at personal wiki pages
Export from mediawiki, and use feedapi & feed api mapper for import
Cleanup: html purifier
Editors like TinyMCE don't do well with code pasted from Microsoft Word. There are a number of ways to clean things up, but I've had good luck with a project/module called html Purifier. Essentially, it allows you to set which html tags will be allowed in your pages (users will get an error when using unauthorized tags). Here's my list of allowed tags:
a[href],em,i,b,u,strong,cite,code,ul,ol,li,dl,dt,dd,a,p,h1,h2,h3,h4,h5,h6,hr,br,dl,dt,dd,table,tr,td,blockquote,pre,embed,object,span[text-decoration|text-align]
...and forbidden attributes
span@style,p@style
Custom Block
<?php
if (arg(0) == 'node' && is_numeric(arg(1))) $nodeid = arg(1);
?>
<table width="100%" border="0" id="addedit">
<tr>
<td><h2><a href="/druwiki/?q=node/add/page">Create new page</a> </h2></td>
</tr>
<tr>
<td><h2><a href="/druwiki/?q=node/<?php print($nodeid)?>/edit">Edit this page</a></h2></td>
</tr>
</table>