The Arcive of Official vBulletin Modifications Site.It is not a VB3 engine, just a parsed copy! |
|
|
Thread title leads to new (unread) posts like Xenforo does, instead to the first post Details »» | |||||||||||||||||||||||||||
Thread title leads to new (unread) posts like Xenforo does, instead to the first post
Developer Last Online: Oct 2023
We now have situtation where we have small image ( - Here I'm using image from vBorg, not image that's used in your forums) that leads us to first unread post in thread and the whole big thread title leads us to first post of thread. This is not the happiest solution in my opinion and I also heard that Xenforo uses thread title to lead you to first unread post.
I'm talking about this: Version 2.10: You need to edit template threadbit. After some thinking I realized that using image is totally unnecessary, as thread title is enough for good UI. If thread has more than one page, we could always use page numbers available under thread title. So, to remove image completely find this code and remove it: HTML Code:
<vb:if condition="$show['gotonewpost']"><a href="{vb:link thread, {vb:raw thread}, {vb:raw pageinfo_newpost}, 'threadid', 'threadtitle'}" id="thread_gotonew_{vb:raw thread.realthreadid}"><img class="gotonewpost" src="{vb:stylevar imgdir_button}/firstnew.png" alt="{vb:rawphrase go_to_first_new_post}" /></a> </vb:if> Find: HTML Code:
<a class="title<vb:if condition="$show['gotonewpost']"> threadtitle_unread</vb:if>" href="{vb:link thread, {vb:raw thread}, {vb:raw pageinfo}, 'threadid', 'threadtitle'}" id="thread_title_{vb:raw thread.realthreadid}">{vb:raw thread.threadtitle}</a> HTML Code:
<a class="title<vb:if condition="$show['gotonewpost']"> threadtitle_unread</vb:if>" href="{vb:link thread, {vb:raw thread}, {vb:raw pageinfo_newpost}, 'threadid', 'threadtitle'}" id="thread_title_{vb:raw thread.realthreadid}">{vb:raw thread.threadtitle}</a> --------------------------------------- Fixed in version 2.10: We need to use same id to be able to edit thread title by double click next to thread title. If we exchange id with image's id, then double click doesn't enable us to edit thread title. In code above change is already made, and changed is this: from HTML Code:
id="thread_gotonew_{vb:raw thread.realthreadid}" HTML Code:
id="thread_title_{vb:raw thread.realthreadid}" --------------------------------------------------- Version 1.00: Anyway, if you want that thread title leads to new (unread) post, and small image () leads to first post of the thread, it's relatively simple template edit. You need to edit template threadbit. Find this code: HTML Code:
<vb:if condition="$show['gotonewpost']"><a href="{vb:link thread, {vb:raw thread}, {vb:raw pageinfo_newpost}, 'threadid', 'threadtitle'}" id="thread_gotonew_{vb:raw thread.realthreadid}"><img class="gotonewpost" src="{vb:stylevar imgdir_button}/firstnew.png" alt="{vb:rawphrase go_to_first_new_post}" /></a> HTML Code:
<vb:if condition="$show['gotonewpost']"><a href="{vb:link thread, {vb:raw thread}, {vb:raw pageinfo}, 'threadid', 'threadtitle'}" id="thread_gotonew_{vb:raw thread.realthreadid}"><img class="gotonewpost" src="{vb:stylevar imgdir_button}/firstnew.png" alt="{vb:rawphrase go_to_first_new_post}" /></a> But, this image appears only if there are new posts in thread, so to make this image appear all the time, you need to remove this if statment in front of code: HTML Code:
<vb:if condition="$show['gotonewpost']">
HTML Code:
</vb:if>
Second, more important change as it changes where thread title leads is this: Find: HTML Code:
<a class="title<vb:if condition="$show['gotonewpost']"> threadtitle_unread</vb:if>" href="{vb:link thread, {vb:raw thread}, {vb:raw pageinfo}, 'threadid', 'threadtitle'}" id="thread_title_{vb:raw thread.realthreadid}">{vb:raw thread.threadtitle}</a> HTML Code:
<a class="title<vb:if condition="$show['gotonewpost']"> threadtitle_unread</vb:if>" href="{vb:link thread, {vb:raw thread}, {vb:raw pageinfo_newpost}, 'threadid', 'threadtitle'}" id="thread_title_{vb:raw thread.realthreadid}">{vb:raw thread.threadtitle}</a> You can also completely remove icon (by removing code, and not just replacing it), if you want that users go only to first unread post (or last, if there are no new posts in thread). But, if you want to keep icon (which I personally prefer, to go to first post in thread easily), I suggest that you also change phrase go_to_first_new_post, as icon now leads to first post, not first new post. To explain what I did, I exchanged link (href) info between the two (icon and thread title), so you could fairly easy make template change even if this particular code changes with future versions of vBulletin. Hope you'll find this useful. :up: Show Your Support
|
5 благодарности(ей) от: | ||
postcd, rollingzone, SaN-DeeP, Sunka, z3r0 |
Comments |
#2
|
||||
|
||||
Thanks always saw this stuff on some of my regular sites..
Probably some of biggest vbulletin sites.. |
#3
|
||||
|
||||
Yes, this seem way more logical to use thread titles for finding unread posts and not trying to hit little image in front of it.
|
#4
|
|||
|
|||
Guys I'm having a bit of trouble with this, and I can't understand why.
I have set it up so users have the choice via their profile, using VB:IF to alternate between the original code, and the one listed here. It works perfectly, unless the user is in a special permission group forum. It's obviously a pain to test, because I need to be on when there are plenty of people posting. Really appreciate any help. |
#5
|
||||
|
||||
You can create test user with same permissions, log as that test user in one browser and test, while monitoring with other browser where you're logged as admin. I always have test user created and just change permissions depending on what I need to test.
Also, it would be interesting to see what code you're actually using to achieve this. |
#6
|
|||
|
|||
It seems to not be special forums as I thought earlier. It seems random as to whether it loads the last unread or the last. However, it certainly works more times than it doesn't, and not always on the same thread.
Code: Code:
<vb:if condition="$bbuserinfo['field25'] == 'OFF'"> <a class="title<vb:if condition="$show['gotonewpost']"> threadtitle_unread</vb:if>" href="{vb:link thread, {vb:raw thread}, {vb:raw pageinfo_newpost}, 'threadid', 'threadtitle'}" id="thread_title_{vb:raw thread.realthreadid}">{vb:raw thread.threadtitle}</a> <vb:else /> <a class="title<vb:if condition="$show['gotonewpost']"> threadtitle_unread</vb:if>" href="{vb:link thread, {vb:raw thread}, {vb:raw pageinfo}, 'threadid', 'threadtitle'}" id="thread_title_{vb:raw thread.realthreadid}">{vb:raw thread.threadtitle}</a> </vb:if> |
#7
|
||||
|
||||
Last unread post is last post if there aren't new posts in thread. If it acts randomly, it may be problem in the way your forum tracks what is last read post. You have option to select the way it is tracked.
Changed code (what I changed) just points to what vB thinks is last unread post that also could be last post of thread, nothing else. I'd check this. |
#8
|
|||
|
|||
Where is this option available to look at?
I'm aware of what the change does, and how it should work. It just seems odd to me that this would be acting like this. If I could see some options, that would be good. |
#9
|
||||
|
||||
Yes, you go to ACP->Settings->Options->General Settings->Thread/Forum Read Marking Type
I'm using last option: Database (automatic forum marking) |
#10
|
|||
|
|||
is there any pic ?
i didnt understand... |
|
|
X vBulletin 3.8.12 by vBS Debug Information | |
---|---|
|
|
More Information | |
Template Usage:
Phrase Groups Available:
|
Included Files:
Hooks Called:
|