Question

I'd like to make the database of famous musicians using dokuwiki.

Musician has their own Biography, Discography, Members, and Live Concert Info.

For example, Aero Smith. They have many CD released. and historical events. So does Live Concert Info.

That's why basically I'd like to make all the page separated something like this.

  • Aero Smith (Main Page of Aero Smith)
    1. Biography
    2. Discograhy
    3. Members
    4. Live Concert Info

I was talking about only Aero Smith. But there will be other famous musicians, too just like this.

  • Red Hot Chilli Peppers (Main Page of Red Hot Chilli Peppers)
    1. Biography
    2. Discograhy
    3. Members
    4. Live Concert Info

So each band should have 5 pages for total including Main Page.
Then here's my question.

Is it possible to let these 5 pages have the same menu which has links to other pages?

For example, I want the Table of Contents(or Side Menu) which has link to these

  1. Main Page(of Aero Smith)
  2. Biography(of Aero Smith)
  3. Discograhy(of Aero Smith)
  4. Members(of Aero Smith)
  5. Live Concert Info(of Aero Smith)

Of course, this will be shown only in Aero Smith's content page.
In other musician's page, their menu will be shown up just like "Main Page(of Red Hot Chilli Peppers)"

and one more thing. I want this "Table of Contents(or Side Menu)" just as menu for links to the other pages.
I don't need the same name header in a page. All I want it is only for the links to the other pages.
I just want it as menu that indicates links.

Are they possible with dokuwiki? or Is there any other wiki that can make all of these possible?

Was it helpful?

Solution

HUSTEN, you can certainly do this following the guidelines for creating Namespace Templates and placing 'relative' links in the template in order to link to the sub-pages. (See the 'aside' below in regard to namespace/page naming.)

Place the following markup into your page named: bands:aerosmith:main

Menu: [[.:main | Main Page]] [[.:discography | Discography]] [[.:members | Members]] [[.:live | Live Concerts]]

Note the use of .: in the links to create 'relative' links to the current namespace. See DokuWiki Namespaces

You may also want to add any common headings or sections into this page as well as the menu links (as this will be your template).

Now follow the instructions on the Namespace Templates page to copy /bands/aerosmith/main.txt to /bands/__template.txt (note the double underscores which will make the template apply to all sub-namespaces within the 'bands' namespace).

Now, whenever you create another band page, such as bands:red-hot-chilli-peppers:main, it will automatically be populated with this menu of links to the other pages (and you have the benefit of just clicking the link in order to create the page).


A brief 'aside' in regards to DokuWiki pages and namespaces:

If you create a new 'page' named bands:aerosmith
then you end up with a Namespace named 'bands' which contains a Page named 'aerosmith.txt'

But if you create a new 'page' named (note the trailing colon) bands:aerosmith:
then you end up with a Namespace named 'bands' containing another Namespace named 'aerosmith' which contains a Page named 'start.txt' (if you haven't changed the default page name in the configmanager).

So, if you use my instructions above, you will end up with a Namespace named 'bands' and a Namespace named 'aerosmith' and a Page named 'main.txt'. BUT you do not have a page named 'start.txt' so if you attempt to browse to /bands/aerosmith then you won't see the 'main' page as it will (by default) attempt to show you the 'start' page in that namespace.


Licensed under: CC-BY-SA with attribution
Not affiliated with StackOverflow
scroll top