MyBB Tutorials
Color All Post Backgrounds of a Usergroup
Submitted by Blowjob, 23-01-2015, 07:01 AM, Thread ID: 627
Thread Closed
This tutorial is for those who want some specific usergroup's posts be different from the others. Like say all moderators' post background to be some different color. We can do it without using any plugin. Let's discuss about that trick today.
First we have to add a special class to our postbit templates to override the default post colors. For that open the template:
ACP > Templates & Styles > Templates > [Theme Name] Templates > Postbit Templates > postbit
and find:
Now we have to add our special class post{$usergroup['gid']} to it. So, change the code to:
Note that: You have to place the class
a) after class 'trow2' else the 'trow2' background color will govern.
b) before class'{$unapproved_shade}' so that Unapproved post's color can lead over any user's post.
Do the same thing with postbit_classic template. Open:
ACP > Templates & Styles > Templates > [Theme Name] Templates > Postbit Templates > postbit_classic
and find:
Change the code to:
Now the CSS, main trick part. Our dynamic class 'post{$usergroup['gid']}' will change at runtime based on group ID. ie. for all the posts of admins (default group ID is 4) it will be post4, for all the posts of members (default group ID is 2) it will be post2
So, as we said, if we want to target the specific group, for our example, say Moderators (default group ID is 6) we will declare our CSS class as .post6
Now, open your global.css and add at the end (or any suitable location):
and save global.css.
Now the background of all posts made by any Moderator is a decent light pink.
We can change post backgrounds for as many usergroups as we wish using this trick, only we need to know the target group ID and change the number at the end of the class in css as per that group ID.
First we have to add a special class to our postbit templates to override the default post colors. For that open the template:
ACP > Templates & Styles > Templates > [Theme Name] Templates > Postbit Templates > postbit
and find:
Code:
<td class="trow2 post_content {$unapproved_shade}">
Now we have to add our special class post{$usergroup['gid']} to it. So, change the code to:
Code:
<td class="trow2 post_content post{$usergroup['gid']} {$unapproved_shade}">
Note that: You have to place the class
a) after class 'trow2' else the 'trow2' background color will govern.
b) before class'{$unapproved_shade}' so that Unapproved post's color can lead over any user's post.
Do the same thing with postbit_classic template. Open:
ACP > Templates & Styles > Templates > [Theme Name] Templates > Postbit Templates > postbit_classic
and find:
Code:
<div id="pid_{$post['pid']}" class="post_body">
Change the code to:
Code:
<div id="pid_{$post['pid']}" class="post_body post{$usergroup['gid']}">
Now the CSS, main trick part. Our dynamic class 'post{$usergroup['gid']}' will change at runtime based on group ID. ie. for all the posts of admins (default group ID is 4) it will be post4, for all the posts of members (default group ID is 2) it will be post2
So, as we said, if we want to target the specific group, for our example, say Moderators (default group ID is 6) we will declare our CSS class as .post6
Now, open your global.css and add at the end (or any suitable location):
Code:
.post6 { background: #FDB5FF; }
and save global.css.
Now the background of all posts made by any Moderator is a decent light pink.
We can change post backgrounds for as many usergroups as we wish using this trick, only we need to know the target group ID and change the number at the end of the class in css as per that group ID.
Users browsing this thread: 2 Guest(s)