Hide the Admin menu

Posted by soronlin on 14 Apr 2010 18:07, last edited by Kei1234 on 16 Jul 2021 14:03

Tags:

rating: +3+x

The problem

You want to create a site that looks like a normal website, but you want access to the site manager and a few other pages that normal users should not be able to see. The standard templates, such as IronGiant mandate a nav:top menu item called Admin, that holds all kinds of stuff that, while useful in a general-access wiki, will just confuse people if they think they are visiting a normal web-site. If they click on any of the menu items they will get either an error message or a page of gobbledegook; they will not be impressed by either. You don't want to show that kind of stuff to the general public, but you want easy access to it yourself.

Therefore

  • Put the all pages meant only for administration in the admin: category.
  • Create an admin:start page that brings them all together with ListPages or whatever. Here's mine:
* [[[system: List all pages]]]
* [[[system:page-tags-list|Page Tags]]]
* [[[system:members | Site members]]] 
* [[[system:Category List]]]

++ Admin
[[module ListPages category="admin" order="fullname" separate="no"]]
* [[[%%fullname%%| %%title%%]]]
[[/module]]

++ Children
[[module ListPages  category="-admin"  parent="." order="fullname" separate="no"]]
* [[[%%fullname%%| %%title%%]]]
[[/module]]
----------
[[module NewPage size="15" button="general new page"]]
[[module NewPage size="15" button="new administration page" parent="admin:_start"]]
----------
  • Make the first or last entry in nav:top a hidden link to admin:start like so
* [[[admin:start | .]]]
  • Create a page admin:_public which redirects to the front page of your site, like so
[[module redirect destination="start"]]
  • In Site Manager»Permissions, un-check all the boxes for category admin
perms.png

On the top menu bar there will be an almost invisible entry consisting of a single ".". If a normal user clicks this it takes them back to the start page; it just looks like a redundant link and the user will write it off as a foible of the site design. However if an administrator or moderator clicks it, it takes them to the administration page.

Options

If site members are allowed to edit the wiki, just grant them access to admin:. Then they will be able to see the administration menu, but non-members will not.

It may be possible, by using two redirects, to give site members and administrators two different menu pages from the same top-bar menu item.

Most of the links that open a sub-menu use [# text] links so they don't have any action themselves, but you don't have to do that.

A site logo button

Make the first link in the menu a site-logo and put useful stuff in a sub-menu under it.

* [[image  http://mysite.wikidot.com/local--files/start/mylogo.gif link="admin:start" width="20px" alt="mysite"]]
 * [[[start | Welcome page]]]

A Start button

Make the first link in the menu "start", (as MicrosoftTM has taught us is where menus are found,) or some other generic text.

* [[[admin:start | start]]]
 * [[[start | Welcome page]]]

An invisible button

Hide the link even more carefully, by using the link [/admin:start ] (there's two spaces before the close-bracket). Then the link will be totally invisible.

* [/admin:start  ]

For extra obfuscation

Use one of the first two methods, but also make every other top-level menu item do the same as the first item on it's sub-menu.

* [[[admin:start | start]]]
 * [[[start | Welcome page]]]
* [[[example1 | examples]]]
 * [[[example1]]]
 * [[[example2]]]

Related Articles

add-a-hidden-menu-to-nav:top
/howto:how-to-put-a-private-page-on-a-public-wiki

Authors

rurwin does not match any existing user name. Please visit his/her userPage.

Ed JohnsonEd Johnson. Please visit his/her userPage.

Comments

Add a New Comment

Related articles

Comments

Add a New Comment
Unless otherwise stated, the content of this page is licensed under Creative Commons Attribution-Share Alike 2.5 License.