Wiki source for InvisibleWiki


Show raw source

===== Running an invisible wiki engine =====
//How to install and configure an invisible wiki engine to power your website//

>>== Examples of sites run by an invisible Wikka engine==
- [[http://clients.3st.com/civitas/HomePage | Civitas Schools]]
- [[http://nitens.org/taraborelli | Dartar's Homepage]]
- [[http://www.ifccc.org/wikka.php?wakka=HomePage | Dutch Connection]]
- [[http://www.yanb.be/ | YanB's Homepage]]
== See also:==
~-[[http://wikkawiki.org/WikiInAVacuum | WikiInAVacuum]]
~-[[WikkaThemes | Installing themes]] {{since version="1.2" display="inline"}}
~- [[http://blog.wikkawiki.org/2009/09/11/how-to-design-themes-for-wikkawiki/ | How to design themes for Wikka]]
>>== Watch a video tutorial ==
""<object style="border: 1px solid #CCC" width="420" height="317"><param name="allowfullscreen" value="true" /><param name="allowscriptaccess" value="always" /><param name="movie" value="http://vimeo.com/moogaloop.swf?clip_id=3245416&server=vimeo.com&show_title=0&show_byline=0&show_portrait=0&color=00adef&fullscreen=1" /><embed src="http://vimeo.com/moogaloop.swf?clip_id=3245416&server=vimeo.com&show_title=0&show_byline=0&show_portrait=0&color=00adef&fullscreen=0" type="application/x-shockwave-flash" allowfullscreen="true" allowscriptaccess="always" width="420" height="317"></embed></object>""::c::
=== Wiki engines are more than //engines for wikis// ===
A common misunderstanding about [[WikiEngine | wiki engines]] is that they can only be used to run //actual wikis// (or //web-based collaborative projects// like, for example, [[http://en.wikipedia.org | Wikipedia]]). Wiki engines are, on the contrary, a simple and effective solution for maintaining and managing different [[FlexibleWikka | kinds]] of non-wiki websites, without bothering with FTP connections.

Two frequent arguments about the fact that //wiki engines can only be used to maintain wikis// are the following:

~A)anyone can edit the content of a wiki;
~A)wiki engines make sites look //wikish//;

Both arguments are **false**.

Regarding A), editing privileges in many wiki engines, including Wikka, can be set on a per-page basis through [[ACLInfo | Access Control Lists]]. A wiki engine can thus easily restrict read-, comment- or write-access for specific pages to //no user//, //a specific user// or //more users//.

As for B) - one might argue - a site run by a wiki engine will probably look //too "wikish"// for one's (and one's users') taste, with a lot of links and features that usually are not expected on non-wiki sites. Wiki-related features typically include:

~-recent changes links;
~-login links;
~-last edit information;
~-last author information;
~-history/revision links;
~-comments;

To address this issue, I propose in this page a very simple solution.

=== An invisible wiki engine? ===

{{image class="" alt="[preview of site run by invisible wiki engine]" url="http://photos10.flickr.com/12642355_ffe99448f0.jpg" link="http://nitens.org/taraborelli" title="An example of invisible wiki integration"}} {{image class="" alt="[editing a site run by invisible wiki engine]" url="http://photos9.flickr.com/12642221_bd35af2b94.jpg" link="http://nitens.org/taraborelli" title="An example of invisible wiki integration"}} ::c::
I use WikkaWiki as a backend for my personal website, so I can update the content with a simple [[WikkaTourEditing | double-click]] anytime I need to. I have configured my Wikka engine so that all wiki-related features are hidden to the user in graphical browsers. **No code modification is required**, only the setting of specific options in the [[COnfigurationOptions | configuration file]] and some minor changes in the [[WikkaSkins | stylesheet]].
::c::

----
=== The configuration ===
If you want to use Wikka as an invisible backend to power a non-wiki site, here's what you need to do.

First, you will need to restrict write access to the administrator (i.e., yourself), so as to prevent other users from modifying the content of your site. Open ##wikka.config.php## and set the [[ACLInfo | ACL options]] as follows:
~%%(php)
"default_write_acl" => "!*",
"default_read_acl" => "*",
"default_comment_acl" => "!*",
%%
These settings mean that by default anyone is able to read wiki pages but no one except the administrator can modify them. You can also set all the default options to **##!*##** and decide to give read access to single pages only.

Second, hide comments by setting the relevant configuration option to '1':
~%%(php)
"hide_comments" => "1",
%%
Optionally, you may want to delete or mask all the default wiki-related pages, like - say - WikkaDocumentation or PageIndex. To do this, open the page and either:
~a) append ##/delete## to the page URL to remove the page;
~a) append ##/acls## to the page URL (or click on //""Edit ACLs""//) to set the access options for this page as: !* - !* - !*;

Reduce the navigation links to the minimum necessary for instance:
~In Wikka 1.1.x you can modify the values of ##navigation_links## and ##loggedin_navigation_links## in the config file:
~%%(php)
"navigation_links" => "[[UserSettings | login]]",
%%
~ Since [[WhatsNew12 | Wikka 1.2]] you can control the content displayed in navigation bars and menus via [[WikkaMenus | menu template files]].
~You might also want to hide the login page. To do this just mask or delete the default UserSettings page, after creating a new login page (a page with the ##""{{usersettings}}""## action) //not linked// from any other page of your website.

Modify the stylesheet to hide wiki-related page elements. In order to do so, open ##.css/wikka.css##. First make a backup of this file so you can restore the original stylesheet if needed. Then, look for all the components of the page that you want to be //invisible// to the user and //mask// them. This can be easily done by adding to the relevant CSS selector a ##display:none## attribute. In my stylesheet, I mask the following elements:
~%%(css)
#header h2 {display:none;}
#footer {display: none;}
#comments {display: none;}
%%
~Keep in mind that the hidden elements (including links) are still visible in the page source so they will be crawled and cached by search engines. To prevent this, change the ACL settings or remove these pages as suggested at point 3).
~&Also keep in mind that some browsers don't implement stylesheets at all, including text browsers like Lynx, but also some graphical browsers. If stylesheets aren't implemented, all text will appear. A few approaches are possible to have less appear:
~-use the ""{{nocomments}}"" action to completely suppress the comments area
~-use a stylesheet (rather than the Formatter) to generate "link tails" (or prefixes): no stylesheet, no tails
~-edit header.php and footer.php to remove unwanted elements

That's all folks. Comments and suggestions are welcome
-- DarTar

----
CategoryEN
Valid XHTML :: Valid CSS: :: Powered by WikkaWiki