Back to vBulletin 3 Articles

Better Forum Layout
by pein87 05 Jan 2009

How to seperate your forums for a cleaner, more appealing skin/style.

To start for those who arent good with xhtml never fear no additional coding will be used its pretty much a search, move, and delete deal.

Open you forumhome template to your default theme. I noticed that some skins had it so each forum was seperateed so with a bit of playing around and code reading I figured out how to do it and I would like to share with with my fellow members.

Search for
<!-- main -->
take note of all the code between the <!--main --> <!--/main --> comments thats the code will be changing, feel free to copy this to a txt file if you wanna play with it later on.

Notice the $forumbits variable, that is what maks up your entire forum on forumhome. Now copy this to a text document and save the file. DO NOT CUT AND PASTE! When you save you`ll see a bunch of forumhome templates.

Search for this template:

forumhome_forumbit_level1_nopost
open this template this is what we will be mostly editing.

See how incomplete this template is? Thats because its what your software prints each time you make a new forum.

Ok I`ve already done the edit for you but to explain it the standard vbulletin skin has the $forumbits variable evaled to the forumhome_forumbit_level1_nopost template.

Clear the entire forumhome_forumbit_level1_nopost template and add this code:

PHP Code:
<table class="tborder" cellpadding="$stylevar[cellpadding]cellspacing="$stylevar[cellspacing]border="0" width="100%" align="center">
<
thead>
    <
tr>
        <
td class="tcat" colspan="<if condition="$vboptions[showmoderatorcolumn]">6<else />5</if>">
            <if 
condition="$childforumbits">
            <
a style="float:$stylevar[right]href="#top" onclick="return toggle_collapse('forumbit_$forumid')"><img id="collapseimg_forumbit_$forumidsrc="$stylevar[imgdir_button]/collapse_tcat{$collapseimg_forumid}.gif" alt="" border="0" /></a>
            </if>
            <
a href="forumdisplay.php?$session[sessionurl]f=$forum[forumid]">$forum[title]</a>
            <if 
condition="$show['forumdescription']"><div class="smallfont">$forum[description]</div></if>
            <if 
condition="$show['subforums']"><div class="smallfont"><strong>$vbphrase[subforums]</strong>: $forum[subforums]</div></if>
        </
td>
    </
tr>
</
thead>
<
tbody>
    <
tr align="center">
      <
td class="thead">&nbsp;</td>
      <
td class="thead" width="100%" align="$stylevar[left]">$vbphrase[forum]</td>
      <
td class="thead">$vbphrase[last_post]</td>
      <
td class="thead">$vbphrase[threads]</td>
      <
td class="thead">$vbphrase[posts]</td>
      <if 
condition="$vboptions['showmoderatorcolumn']">
      <
td class="thead">$vbphrase[moderator]</td>
      </if>
    </
tr>
</
tbody>
<if 
condition="$childforumbits">
<
tbody id="collapseobj_forumbit_$forumidstyle="{$collapseobj_forumid}">
$childforumbits
</tbody>
</if>
</
table><br /> 
This code adds the the colum name to the top of the table making it a table head instead of a table body and the post/forumname display is not a table head, its instead been switched to a table body. You bascilly just moved a few things around changed the tags around and deleted some useless code. Now you have the forum leaders colum. Its not good to place this in the forumbits template because each forum would have it at the end, we can add it below it as a seperate table but it would just be floating there since after each forum a space is included. TO fix it we will move it to the bottom of the whats going on area.

Open forumhome template and find:

$template_hook[forumhome_wgo_pos5]

This is near the end right before this:

</table>
<br />
<!-- end what's going on box -->


Place this code right above itAfter the </if>)

PHP Code:
<tbody>
    <
tr>
        <
td class="tfoot" align="center" colspan="<if condition="$vboptions['showmoderatorcolumn']">6<else />5</if>"><div class="smallfont"><strong>
            <
a href="forumdisplay.php?$session[sessionurl]do=markread" rel="nofollow">$vbphrase[mark_forums_read]</a>
            <if 
condition="$vboptions['forumleaders']">&nbsp; &nbsp;
            <
a href="showgroups.php$session[sessionurl_q]">$vbphrase[view_forum_leaders]</a></if>
        </
strong></div></td>
    </
tr>
</
tbody
This moves the forum leaders colum below the whats going on box to cap it off and makes your forum look nicer.

Code should look like this:

PHP Code:
</if>
<
tbody>
    <
tr>
        <
td class="tfoot" align="center" colspan="<if condition="$vboptions['showmoderatorcolumn']">6<else />5</if>"><div class="smallfont"><strong>
            <
a href="forumdisplay.php?$session[sessionurl]do=markread" rel="nofollow">$vbphrase[mark_forums_read]</a>
            <if 
condition="$vboptions['forumleaders']">&nbsp; &nbsp;
            <
a href="showgroups.php$session[sessionurl_q]">$vbphrase[view_forum_leaders]</a></if>
        </
strong></div></td>
    </
tr>
</
tbody>
$template_hook[forumhome_wgo_pos5]
</
table>
<
br />
<!-- 
end what's going on box --> 
Now to finish out this project when you save use the save and reload option so your brought back to the template.

Find:

<!-- main -->

Delete everything after this all the way till you see:

<!--/main -->

Next add this in between the <!--main --> and <!-- /main --> comments.

$forumbits
$forumhome_markread_script


so it should look like this:

<!--main -->
$forumbits
$forumhome_markread_script
<!-- /main -->


Next save and enjoy your newly styled forum now you can make your defaut theme into a nice new skin using vbulletin's built in style manager.
Images provided to see the final out come and attached txt file with info aswell for easy access for those like me and cant be online much. Also tiny green check marks in images means valid xhtml transitional. I use a firefox plugin with and sgml and xml/xhtml validater.

UPDATED

If your making the change to 3.7.5 or any of the 3.8.x versions use this instead of the above forumhome_forumbit_level1_nopost

PHP Code:
<table class="tborder" cellpadding="$stylevar[cellpadding]cellspacing="$stylevar[cellspacing]border="0" width="100%" align="center">
<
thead>
    <
tr>
        <
td class="tcat" colspan="<if condition="$vboptions[showmoderatorcolumn]">6<else />5</if>">
            <if 
condition="$childforumbits">
            <
a style="float:$stylevar[right]href="#top" onclick="return toggle_collapse('forumbit_$forumid')"><img id="collapseimg_forumbit_$forumidsrc="$stylevar[imgdir_button]/collapse_tcat{$collapseimg_forumid}.gif" alt="" border="0" /></a>
            </if>
            <
a href="forumdisplay.php?$session[sessionurl]f=$forum[forumid]">$forum[title]</a>
            <if 
condition="$show['forumdescription']"><div class="smallfont">$forum[description]</div></if>
            <if 
condition="$show['subforums']"><div class="smallfont"><strong>$vbphrase[subforums]</strong>: $forum[subforums]</div></if>
        </
td>
    </
tr>
</
thead>
<if 
condition="!$show['collapsable_forums']">
<
tbody>
</if>
    <
tr align="center">
      <
td class="thead">&nbsp;</td>
      <
td class="thead" width="100%" align="$stylevar[left]">$vbphrase[forum]</td>
      <
td class="thead">$vbphrase[last_post]</td>
      <
td class="thead">$vbphrase[threads]</td>
      <
td class="thead">$vbphrase[posts]</td>
      <if 
condition="$vboptions['showmoderatorcolumn']">
      <
td class="thead">$vbphrase[moderator]</td>
      </if>
    </
tr>
<if 
condition="!$show['collapsable_forums']">
</
tbody>
</if>
<if 
condition="$childforumbits">
<if 
condition="!$show['collapsable_forums']">
<
tbody id="collapseobj_forumbit_$forumidstyle="{$collapseobj_forumid}">
</if>
$childforumbits
<if condition="!$show['collapsable_forums']">
</
tbody>
</if>
</if>
</
table><br /> 
You will still need to do the part with the forum leader part but this is a replacement to fix template upgrades in those versions.
Attached Thumbnails
Click image for larger version
Name:	layout_tutorial.jpg
Views:	1403
Size:	85.6 KB
ID:	91793   Click image for larger version
Name:	layout_tutorial2.jpg
Views:	1270
Size:	82.3 KB
ID:	91794  
Attached Files
File Type: txt layout_tutorial.txt (5.3 KB, 34 views)

Similar Mods

Alternate forum Home Display forum layout vBulletin 3.5 Template Modifications

vblts.ru supports vBulletin®, 2022-2024