Who Posted in SHOWTHREAD
I wanted to be able to show who had participated in a given thread within the thread. This is available via WHOREAD in the forum listing, but it didn't feel as intuitive. Now, users can see immediately who's posted in a given thread.
What's involved: 1. Create a plugin 2. Create a template to display plugin info 3. Create a replacement variable 3. Edit SHOWTHREAD to call the template Creating the plugin This is pretty much a straight copy of the code from misc.php into a plugin, and registering the variable (thanks Lynne). 1. Admincp > Plugins & Products > Add New Plugin Product: Vbulletin Title: Who Posted in Showthread Hook Location: showthread_start Execution Order: 5 Code: PHP Code:
if (!$threadinfo['threadid'] OR $threadinfo['isdeleted'] OR (!$threadinfo['visible'] AND !can_moderate($threadinfo['forumid'], 'canmoderateposts')))
Creating the template Sharp eyes will have caught that the template is going to be named "showthreadwhoposted". I'm super original like that. 1. Styles and Templates > Style Manager > Add New Template Title: showthreadwhoposted Template: PHP Code:
<div style="margin-right: 3px; float: right; margin-bottom: 3px; max-width: 30px; overflow: hidden;">
Create a replacement variable Vbulletin isn't super helpful when it comes to calling avatars by username instead of userids, so we had to get a little bit hacky in the template above. This bit right here: "http://nwod.org/forum/image.php?u={vb:link member, {vb:raw post}}" Needs to be cleaned up. 1. Styles and Templates > Replacement Variable Manager > Add New Replacement Variable Search for Text: image.php?u=member.php? Replace with Text: image.php?u= This strips out the raw link we called, leaving us with just the userid. If someone knows of a better way to call the userid, this might not be necessary and the Template could be edited. Edit SHOWTHREAD to call the template We've made the plugin fetch who's posted, rendered it into a template, and cleaned up the avatar image URL in said template. Now we just need to place the display of users who posted in the SHOWTHREAD template. 1. Search in Templates > SHOWTHREAD (search Titles only) > Find 2. Search for the first occurence of "<vb:if condition="$pagenav">". This will position our list above the pagination and tools menu bar. 3. Add the following: PHP Code:
<div style="float: right; margin-top: 3px;">
If everything has been done properly you should see something like this: My SHOWTHREAD is modified a bit, but you get the general idea. Right above the pagination is a list of avatars that link to the member's page. Happy forum'ing! Download No files for download. |
Similar Mods
New Posting Features Showthread: Posted Hyperlink Colour | vBulletin 3.6 Template Modifications |