The Arcive of Official vBulletin Modifications Site.It is not a VB3 engine, just a parsed copy! |
|
vB3 Forumhome Stats Cache Serialize hack v2.2 Details »» | |||||||||||||||||||||||||||
vB3 Forumhome Stats Cache Serialize hack v2.2
Developer Last Online: Jun 2012
vB3 Forumhome Stats Cache Serialize hack
Version 2.2 (By Boofo) What does this hack do? This hack will add some forum statistics to your forumhome that will be cached (to reduce the query load) for a certain amount of time that can be set to whatever you want. This covers most of the stats any forum Admin would use on his site. Note: This is the setting for the time interval (in minutes) that you want the cache to be updated on. The default value is 10 minutes. The following code is in the index.php part of this hack. $updatetime = 10; Once you install the Admin CP setting (at the end of this file), you will be able to update this from the Admin CP vBulletin Options settings. Credits: I want to thank Tigga for the original Forumhome Statistics Cache hack for vB2, partly on what this hack is based. I also want to thank EvilLS1 for his time and patience in helping put this hack together. Another thank you goes out to Mike Gaidin for testing this thoroughly while I was putting together this install file. And, finally, thank you goes out to NTLDR, for helping me track down a very stupid mistake on my part which I had overlooked. Version 2.0 credits go out to g-force2k2 for getting me started on the datastore version of this hack and guiding me through some of the rough parts in the beginning. And also to KirbyDE for answering all of my dummy questions while writing this version and verifying the code when I figured out all of my mistakes. This is my first attempt at using the datastore function but it seems to work better and be easier to code than the older way of doing things. Version Information: Version 1.0 --Initial release Version 2.0 --Completely rewritten using the datastore function for vB3. It now uses "serialize" to store the data and "unserialize" to retrieve the data. There is also now 1 less query when reading from the cache. Version 2.1 --Combined the "new threads since last visit" and "new posts since last visit" queries into 1 query, thus eliminating another query on cache hits. Thanks goes out to g_force2k2 for this one. Also added Admin CP setting code so you can change the time interval between cache updates via the Forum Display Option setting in the vBulletin Option in the Admin CP. That code to add is at the end of this file. Version 2.2 --Added "Top Reputation" statistic (requested by rinkrat ) and totally re-did the template. It looks cleaner now. New Installation: Do all of the steps in this file. To Update Version 1.0 to Version 2.0: To update this hack you will need to do everything in this file over again except the second query (Query #2). After you have this hack up and running again and you have made sure it is running to your satisfaction, you can drop the statscache table (from version one of this hack) completely. It is no longer needed. To Update Version 2.0 to Version 2.1: You will need to re-add the code for the index.php and go to the end of this file and add the setting for the Admin CP. To Update Version 2.1 to Version 2.2: You will need to re-add the code for the index.php and replace the code for the forumhome template. Installation overview: Queries to run: (2) Files to edit: (2) --index.php --member.php Templates to edit: (1) --forumhome Settings to add: (1) --forumhomecachetime vB3 Arcade hack stats addon: https://vborg.vbsupport.ru/showpost....&postcount=262 The first attachment shows the Guest loggedin and the second attachment show the Registered Member and above loggedin. Show Your Support
|
Comments |
#17
|
||||
|
||||
Ok, all you query junkies! New version uploaded to first post. One more query deleted from this hack. Now uses serialize to store the data.
|
#18
|
||||
|
||||
Upgraded. Good job Bob.
|
#19
|
||||
|
||||
Thanks, Mike!
|
#20
|
||||
|
||||
Quote:
[high]* Alien clicks install.[/high] |
#21
|
||||
|
||||
This hack will add 1 query to what you already have (for the new threads and new posts since you last logged on). This can't be cached because it is per user. If you have 10 you will now have 11 when reading from the cache. Since the cache is serialized, there is no query there. So the update to the hack dropped one query. When it updates the cache, it will add 9 queries for all of the stats being updated. So you would then have 20 queries. But the 20 queries only runs at whatever interval you have set (default is 10 minutes). Once the cache is updated, you are back down to 11 queries until the next update. This way you can have numerous stats on your forumhome and not have to worry about a lot of server load at all times. With the serialzation, you can use these same stats on other ares of the board by just including the statscache in the special templates section of the file you want to use them in and you won't have you worry about any queries there (if I understand serialization, right, anyway).
Does that help to understand this a little better. |
#22
|
||||
|
||||
Nice addition to the latest version Bob.
|
#23
|
|||
|
|||
I have a vbrc3 tables prefix that i edited it to the queries. Now i get this message:
Invalid SQL: SELECT COUNT(*) AS referrals, user.username, user.userid FROM vb3_user AS users LEFT JOIN vb3_user ON (users.referrerid = user.userid) WHERE users.referrerid <> 0 GROUP BY users.referrerid ORDER BY referrals DESC LIMIT 1 mysql error: Unknown table 'user' in field list mysql error number: 1109 Is there anything to edit to get rid of this message? |
#24
|
||||
|
||||
Try this:
PHP Code:
|
#25
|
|||
|
|||
Thanks for the quick reply. That never worked. So i took that whole referrer thing out and it is now working. I do not use the referer system anyways. Once again boofo thanks for the quick reply.
|
#26
|
||||
|
||||
That's strange. Optimize your tables in the Admin CP and try it again. There is no way that that shouldn't work unless you have a table a little messed up.
No problem on the reply. I just try to support my hacks as best I can. Don't forget to click install. |
#27
|
|||
|
|||
Hey Boofo thanks for the hack ..
To tell you the truth i was thinking of making something like this a few days ago (with my limited php knowlege tho) hehe.. With my header i display total posts, members and threads on the forum. Instead of adding statscache to every file (pain in the ass) i was thinking maybe adding that code (main code) to the phpinclude or even trying to add statscache to the specialtemplates using the phpinclude (possible?), im not to sure with this new vb3 where the phpincludes comes into play so yeh dunno if it would be possible...(havnt had time to look) What do you guys and gals think? Thanks |
#28
|
||||
|
||||
I would leave it on the forumhome. You'd be adding a lot of unneccessay queries when the cache updates to all of your pages.
But if you wanted to add the stats themselves to different pages and have the forumhome updated them as needed, then all you have the do is add $statscache to the specialtemplates of whatever page you want them on and do un unserialize and it would do no queries that way. |
#29
|
|||
|
|||
I would perfer it to be on the header, same way as i had it on vb2... (used to it now hehe)
The only parts i use are total threads, posts and members. Ive edited the rest out of your script. I was going to set it to update every 20mins, therefor it would only run thoes 3-4 queries every 20mins, which isent so bad considering they are only quick ones.. im just trying to think of the best way of doing it ?. Wow you do reply fast |
#30
|
|||
|
|||
==================
thats good and all, but if its in my header.. well thats alot of files.. hehe |
#31
|
||||
|
||||
Give it a shot and let me know how it goes. I've never tried doing it that way before.
If I was going to add it to my header, I would run the hack on the forumhome and let it do all of the updating and then just unserialize it. But to tell you the truth, I'm not sure what file I would have to do that in. Maybe init.php? |
|
|
X vBulletin 3.8.12 by vBS Debug Information | |
---|---|
|
|
More Information | |
Template Usage:
Phrase Groups Available:
|
Included Files:
Hooks Called:
|