The Arcive of Official vBulletin Modifications Site.It is not a VB3 engine, just a parsed copy! |
|
Disallow guests to view threads, must register first Details »» | |||||||||||||||||||||||||||
Disallow guests to view threads, must register first
Developer Last Online: Jun 2020
Yes I know that there is already a a feature to stop guests from viewing threads, but then this also shows all the posts and threads counters to zero, and under Last Post it will say never (which sucks ). But, with my hack, it just asks guests to either login or register when viewing a thread and still shows all the right numbers
Instructions Open archive/index.php and find PHP Code:
PHP Code:
PHP Code:
PHP Code:
PHP Code:
PHP Code:
Show Your Support
|
Comments |
#122
|
||||
|
||||
There is still a problem if your vB is closed for guest and a user registers at the forum without click on the activation eMail, he can still read threads in the forum!
I found the solution for one usergroupID in the thread. PHP Code:
PHP Code:
|
#123
|
|||
|
|||
Is there a link explaining how to how to do this via a template?
Quote:
|
#124
|
|||
|
|||
I've gotten all turned around in this thread, I'm wondering if someone can help me please?
I have one forum that I don't want ANYONE to see in any way (through searches, archives, nothing) unless they have special permission (admin or access masking). One forum that I want registered members to have access to, and guests at least be able to see that there ARE threads in there, just not be able to view the actual threads. And one forum that I want guests to be able to participate in. So basically, I want the "can't view at all" AND the "open" options... pain in the rear, aren't I? |
#125
|
|||
|
|||
Quote:
|
#126
|
||||
|
||||
Quote:
Of course i did not change the permissions for unregistered guests, i assumed they should see the posts automatically after applying this hack. But since i had not given them rights to view the forum topics, i could not get this to work at all. But now that i changed the forum rights settings they are allowed to see the topics, i get the right number of posts for them as well. (But they still cant read the threads, only view them, as it was meant too). |
#127
|
|||
|
|||
Nice hack and all, but I just did it this way:
PHP Code:
|
#128
|
||||
|
||||
Is there any way to tie in the $vboptions[spiderstrings] array into the spider-list - ???
|
#129
|
|||
|
|||
nice hack thanx =]
|
#130
|
|||
|
|||
I'm using this to keep out some determined fools on my site. For the benefit of anyone else who may be doing this, make sure you follow similar instructions as described in post #1 of this thread and apply the change to the following files in the same place:
As a result, all pages that I changed had a longer line added to them to cover all the appropriate usergroups: Code:
if (($bbuserinfo['userid'] == 0 or $bbuserinfo['usergroupid'] == 1 or $bbuserinfo['usergroupid'] == 3 or $bbuserinfo['usergroupid'] == 4) AND !preg_match("#(google|slurp@inktomi|yahoo! slurp)#si", $_SERVER['HTTP_USER_AGENT'])) { print_no_permission(); } Of course, this all depends on your motives for keeping people out. Threads in our board are private so this was appropriate for us |
#131
|
|||
|
|||
nice hack can google still index archives?
|
#132
|
|||
|
|||
Anyone knows how get this work with 3.0.1?
(Showthread.php does not containt this code: Code:
globalize($_REQUEST, array('perpage' => INT, 'pagenumber', 'highlight' => STR, 'goto')); |
#133
|
|||
|
|||
Quote:
If anyone can find a fix, please post it!!! Thanks in advance. This is a very useful hack. I don't know why this feature is not default in vB3. Plain s2pid!!!!!!!!! |
#134
|
|||
|
|||
Google for some reason has stop indexing my site after I blocked the archives from being viewed by non members. The purpose of the archive is has nothing to do with archiving but instead it's work around to make vb3 search-engine-friendly. So the solution would be to uninstall the hack from archive and remove the archive link in the footer?
|
#135
|
||||
|
||||
Quote:
Code:
$grouparray = array ( 3,4); if (in_array($bbuserinfo['usergroupid'],$grouparray) OR $bbuserinfo['userid'] == 0 AND !preg_match("#(google|slurp@inktomi|yahoo! slurp|lycos|ask jeeves|scooter|fast-webcrawler|turntinbot|msnbot|webcrawler|Infoseek|W3C_Val|googlebot)#si", $_SERVER['HTTP_USER_AGENT'])) { echo "<center><font face=verdana, arial, helvetica size=3>You are not allowed to show our archive.<br><br>Your have to <a href=\"$vboptions[bburl]/register.php?\">register</a> first at $vboptions[bbtitle] to show threads in our forums.<br><br>If you are registered at our forum it could be that you are not logged in our your account must first be checked and enabled from an Administrator.</font></center>\n<hr />\n"; print_no_permission(); } For my Board Google is idexing all threads in archive and it works great |
#136
|
|||
|
|||
Quote:
|
#137
|
||||
|
||||
Quote:
$bbuserinfo, $usergroupid and print_no_permission() is the same for vB3 in all Versions right now. |
#138
|
|||
|
|||
Hi Onkel Tom,
Does it work with 3.0.3 ? I have tried Gary W's code but unfortunately it works for all usergroups (don't know why???) not just guest/not logged in, so if you could post the instruction from scratch for all the files, it would really help me. I think I'm in the same boat with IndyWebDesign. Quote:
|
#139
|
||||
|
||||
Quote:
Your find the instruction of the Hack in the first post. I only changed some parts for better fitting on my own wishes, so I posted my code which is working for the most recent search engines. This code can be placed in /archive/index.php to allow search engines which are written in the code to index this pages. If you want to use my code instead of Gary W's code for the archive just replace in /archive/index.php: Code:
if ($bbuserinfo['userid'] == 0 AND !preg_match("#(google|slurp@inktomi|yahoo! slurp)#si", $_SERVER['HTTP_USER_AGENT'])) { print_no_permission(); } Code:
$grouparray = array ( 3,4); if (in_array($bbuserinfo['usergroupid'],$grouparray) OR $bbuserinfo['userid'] == 0 AND !preg_match("#(google|slurp@inktomi|yahoo! slurp|lycos|ask jeeves|scooter|fast-webcrawler|turntinbot|msnbot|webcrawler|Infoseek|W3C_Val|googlebot)#si", $_SERVER['HTTP_USER_AGENT'])) { echo "<center><font face=verdana, arial, helvetica size=3>You are not allowed to show our archive.<br><br>Your have to <a href=\"$vboptions[bburl]/register.php?\">register</a> first at $vboptions[bbtitle] to show threads in our forums.<br><br>If you are registered at our forum it could be that you are not logged in our your account must first be checked and enabled from an Administrator.</font></center>\n<hr />\n"; print_no_permission(); } Code:
!preg_match("#(google|slurp@inktomi|yahoo! slurp|lycos|ask jeeves|scooter|fast-webcrawler|turntinbot|msnbot|webcrawler|Infoseek|W3C_Val|googlebot)#si", The echo syntax is only for index.php of archive because if you use this code and a unauthorised person will access the archive only a white page is shown. Therefore I added the echo information to the screen to show "what is wrong". I used the "$grouparray = array ( 3,4); " function to define my usergroups which are not allowed to access the archive. You can put here any usergroup ID you want not to access your archive separated by ",". Usergroup 8 and 11 are defined groups from my board, just remove that both group ID's. I hope I could help and the instructions are easy to understand |
#140
|
|||
|
|||
Very cool, I will try this. Thanks a lot man!!!
|
#141
|
|||
|
|||
Tried it, looks great! Many thanks to you....
|
#142
|
|||
|
|||
great job,
Install |
#143
|
|||
|
|||
I read a few pages of this topic and I don't see my question answered.
It might be in the other pages but anyway here it is: Is there a way to let my guests see the News forum topics and not be able to open the others? |
#144
|
||||
|
||||
installed
|
#145
|
|||
|
|||
I've been playing around with this hack and MAY have come up with a forumula to allow spiders to still view threads while denying permission to guest. I am not a coder by trade so please check this code out and see if it works for you. I've been running it about 3-4 hours and it seems spider friendly on my site.
There are three files to change and one file to upload. archive/index.php includes/functions.php showthread.php Upload this file and place in your forum root directory and the archive directory. spiders.txt Open archive/index.php and find: Code:
$title .= ' - ' . $foruminfo['title']; } else { $do = 'index'; } Code:
if (restrict_guest($bbuserinfo['userid'])) { print_no_permission(); } Code:
globalize($_REQUEST, array('perpage' => INT, 'pagenumber', 'highlight' => STR, 'goto')); Code:
if (restrict_guest($bbuserinfo['userid'])) { print_no_permission(); } Code:
if ($bbuserinfo['userid'] == 0 or $bbuserinfo['usergroupid'] == 3) { print_no_permission(); } Code:
if ($bbuserinfo['userid'] == 0 or $bbuserinfo['usergroupid'] == 3 and !$spider_flag) { print_no_permission(); } Code:
if (!($forumperms & CANVIEWOTHERS) AND ($thread['postuserid'] != $bbuserinfo['userid'] OR $bbuserinfo['userid'] == 0)) { print_no_permission(); } Code:
if (!($forumperms & CANVIEWOTHERS) AND ($thread['postuserid'] != $bbuserinfo['userid'] OR ($bbuserinfo['userid'] == 0 AND !$spider_flag))) { print_no_permission(); } Code:
?> Code:
function restrict_guest($user_id) { global $_SERVER, $spider_flag; $user_agent = strtolower($_SERVER['HTTP_USER_AGENT']); $spider_flag = false; if ($user_agent != "") { $spiders = file('./spiders.txt'); for ($i=0, $n=sizeof($spiders); $i<$n; $i++) { if (!empty($spiders[$i])) { if (is_integer(strpos($user_agent, trim($spiders[$i])))) { $spider_flag = true; break; } } } } if ($user_id == 0 AND !$spider_flag) { return true; } return false; } |
#146
|
|||
|
|||
Thanks Gary.
|
#147
|
|||
|
|||
Yea I needed this, I was waiting for this!!
|
#148
|
||||
|
||||
Quote:
I have installed this hack with gr8 results... my only problem is that i have a links partner section on the main forum itself... now what is happening is that when these link partners try to periodically locate their links in the forum they get the access denied message and they remove my links from their website. Just as we did with archive section... Can we also exclude a selected forum from being affected by this hack. i mean that single particular forum should available as usual to anyone and everyone without any restriction. Please guide me otherwise i am left with no option but to compromise on this hack. Regards |
#149
|
|||
|
|||
before i install this, does it work with vb 3.0.3?
|
#150
|
|||
|
|||
Quote:
Works on mine! See here, for a protected forum: http://www.allbowling.com/forum/forumdisplay.php?f=11 |
#151
|
||||
|
||||
Quote:
I am just about to install this and just wanted to check what you were doing. |
#152
|
|||
|
|||
Where do add the code for showthread.php in vb 3.0.3? I've searched the php several times for the "globalize....." line and have not found it. Thanks in advance for the help.
|
#153
|
|||
|
|||
Quote:
Yes, all registered users. Actually, Registered and Imported users... since I imported my users from phpBB. |
#154
|
|||
|
|||
Quote:
Read post #111 in this thread to see the altered code. He said it didn't work for him, but it did for me. |
#155
|
|||
|
|||
Hi,
I have v3.0.3 too and really cant understand the part about the showthread. Am a beginner in .php so please understand. What exactly do I find in the showthread and what do I add/replace? Thanks much R |
#156
|
|||
|
|||
bamaster,
Thanks for the suggestion. I tried it (post 111) and am still not working. Would you mind posting exactly how you got it to work? Are we working with different VB ver's? |
#157
|
|||
|
|||
Hi we have got this hack installed on our forum www.gob++++es.co.uk and it seems to be working fine.
Question, does anybody know what impact, if any, this has on google spiders etc? I have submitted our site to google and some other search engines but vey little evidence of google spiders appearing. On another forum to which I belonged they were regularly visiting. cheers |
#158
|
|||
|
|||
no impact on yahoo whatsover.
|
#159
|
|||
|
|||
Well, I installed the initial code on my 3.0.6 board that I just installed and it worked great.. I thought it was bulletproof... Well , there seems to be a problem. When users are logged in they do not have access to their subscription panel and they cannot use the drop down menu for subscribing to thread or forum. When they click they get a message that they do not have suffiecient privilages etc.... They can read and reply to threads... They cannot use the subsciption.php correctly. I even tried the fix that got posted for the subscription.php.. Still nothing
Nikos This hack is integral to the success of my forum. ANy help is appreciated. |
#160
|
|||
|
|||
It seems like admin and supermoderators can access the
http://www.vbulletin.com/forum/subscription.php? page but normal users cannot.. I can't figure it out Nikos |
#161
|
|||
|
|||
Strange.. works ok on mine. you shouldn't have edited subscription.php
|
|
|
X vBulletin 3.8.12 by vBS Debug Information | |
---|---|
|
|
More Information | |
Template Usage:
Phrase Groups Available:
|
Included Files:
Hooks Called:
|