Composr Supplementary: Separate forums for separate zones

Written by kenno, Edited by Chris Graham

Potentially Outdated Tutorial

This supplementary tutorial might be outdated as it was written for a previous version of Composr CMS (version 10).


This tutorial will show how to set up separate forums on individual zones using the Composr virtual roots feature.


My goal

What I wanted to achieve was the look and feel that I had separate forums for certain zones, which in my eyes looks a little better then just giving them a subforum on the main forum pages.

I also wanted it so that you could not view the main forum pages any more.

Basic outline

The forum pages (modules) in Composr are:
  • forumview
  • topicview
  • topics
These are located in the forum zone.

What I had to do was set up transparent redirects and virtual-root the forum modules for each of my zones. This gives the look to the user that the forum pages run separately. In actuality they do not run separately, but it is an effective illusion.

Instructions you can follow

Create our zone-specific forum

Go to Admin Zone > Structure > Forums.

In the normal way, create a forum for our zone, underneath the forum root.

Set up redirects

Go to Admin Zone > Structure > Redirects.

Let's imagine our new zone is called foo

You'd set up these redirects:
  1. foo:forumviewforum:forumview, with transparent checked.
  2. foo:topicviewforum:topicview, with transparent checked.
  3. foo:topicsforum:topics, with transparent checked.

Now we have the forum pages running from our foo zone :) !

Set up virtual roots

We could now naively edit the menus inside our foo zone to have a link to foo:forumview.

However, if we were to link to them directly, it'd go to the forum root. We want to go to the forum we created.

This is where virtual roots come in.

You can generate a URL that "pretends" that it is the root of the forum tree, and then use this URL on that menu:
  1. Make sure "Virtual root links" is enabled under Admin Zone > Setup > Configuration > Feature options > Advanced
  2. Browse to your new forum.
  3. In the breadcrumbs, click the final node in it, which corresponds to the forum you are at.
  4. After clicking it you will see magically the breadcrumbs change so it appears this is the root forum.
  5. Copy the current address bar URL to the clipboard.
  6. Go edit your foo zone's menu, and putting the URL from your clipboard in as your new menu link.

Remove main forum links

You will probably want to remove all links to the main forum, as we want users to access forums via our individual zones.
Do this via normal menu editing techniques.

See also


Feedback

Please rate this tutorial:

Have a suggestion? Report an issue on the tracker.