Go Back   vb.org Archive > vBulletin Modifications > vBulletin 4.x Modifications > vBulletin 4.x Add-ons
FAQ Community Calendar Today's Posts Search

Reply
 
Thread Tools
United-Forum CSS Sprites - ludicrous speed - NOW! Details »»
United-Forum CSS Sprites - ludicrous speed - NOW!
Version: 0.7.2, by Osbes Osbes is offline
Developer Last Online: Feb 2013 Show Printable Version Email this Page

Category: Board Optimization - Version: 4.x.x Rating:
Released: 07-11-2011 Last Update: 08-05-2011 Installs: 267
Uses Plugins Auto-Templates
Additional Files Is in Beta Stage  
No support by the author.

tl;dr Makes your forum faster.

Want an easy one-click installation for this addon? . Vote for this jira-entry

Add on currently is in beta stage

When visiting a website, speed is a very important factor not only for users but crawlers as well. Long loading times are a nuisance since your time is basically wasted during the waiting period. Hence, we are trying everything we can in order to speed up our site. One great way to improve loading times is by the use of css sprites. Unfortunately these are not implemented by vBulletin.

We therefore decided to develop our own css-sprite add on for vBulletin boards and want to share this code with the worldwide vBulletin community.

Live demo
The add on is permanently running in our vBulletin board ( > 2.000.000 posts), take a look:
http://www.united-forum.de

The add on will be supported via this thread. If you have any questions, issues, improvements or feedback regarding this add on, please feel free to post a comment or write us a pm at any time. We are happy to discuss

vBulletin performance using css sprites
Our tests are based on version 0.7.0. We used the analytic tools firebug network utility and the googlelabs.com page speed site

on the client side the following parameter were used:
download speed: 5.7 MBit/s
ping: 31ms




css sprites - what are they?
The intention behind css sprites is the bundling of many small graphics into one large graphic in order to decrease the number of required http requests. This shortens the loading times of the given website. In addition, the the accumulated size of all small graphics is higher than the size of the sprite due to reasons of compression.
You can find further information in a great article by Chris Coyier.
What is the gain in using css sprites?
Aside from the technical implementation, the question on how much one actually does gain by using css sprites is of the most interest. Obviously they decrease loading times - but how important are small loading times and what is the impact on vBulletin overall loading times?

A short time ago, Jasper Aguila pointed out that speed is one crucial stickiness factor in his blog on vBulletin.com.
Quote:
Originally Posted by Jasper Aguila vBulletin Support
The internet has unfortunately contributed to the exponential decrease in attention span for many individuals. That's why this decade is seeing a trend in emerging technologies emphasizing the importance of speed request. It's crucial for your content to be promptly distributed in a timely manner, else bounce rate will increase - making you lose returning visitors. It's also important to note that slow sites may be penalized by search engines.

With better browsers, more powerful processors, and improved technologies constantly releasing each year, it's becoming quite difficult to provide excuses for slow loading pages. Therefore, try optimizing your server for speed. Read up and learn optimization techniques at vBulletin.com's Server Configuration forum.
In addition, the google ranking is influenced by the site speed as well.

Google Webmaster Central Blog
Quote:
Originally Posted by 09.04.2010 - Google Webmaster Central Blog
You may have heard that here at Google we're obsessed with speed, in our products and on the web. As part of that effort, today we're including a new signal in our search ranking algorithms: site speed. Site speed reflects how quickly a website responds to web requests.
vBseo Webmaster Mert G?k?eimam
Quote:
CSS sprites is a huge bonus for big boards , any big board owner definately should use it.
Last but not least, not only the user's loading time is reduced, but also does the server load decrease as the server will have to handle a lot less of http requests. This clears available connections and cpu time.
Add on features
In the current released beta version 0.7.2, sprites are available for FORUMHOME and FORUMDISPLAY. Coming up next SHOWTHREAD.

Sprites are created style based for all forum styles and saved in a folder which you can set via the imgdir_sprite stylevar. You have one additional button in the ACP (CSS-Sprites -> Refresh) which automatically creates all sprites, the according css definitions and includes those css definitions in the vBulletin css rollup files.
Installation

First of all, if you didnt want to change the templates manually, install the Template Modification System (TMS). Now proceed with the installation:
  • upload the contents of the upload folder into your forum home directory.
  • import the add on in the ACP
  • upon installation a new stylevar imgdir_sprite will be created. Update this stylevar based on your file structure - default value is the vbulletin sprite directory. Make sure the folder is writable, else the sprites can't be saved!
  • create the sprites via the ACP at CSS-Sprite using the Refresh option.
  • If you have installed TMS, you are done now. This was an easy gained speed up, not? If you didnt installed TMS and didnt want to do it, proceed with the next point:
  • in order to use the sprites, you then will have to edit some templates. The diffs (xou will find it in the do_not_upload folder show which parts you have to delete '<' and which parts to add '>' In addition, on top find the lines in which you will find the respective code.[/b]

Download Now

File Type: xml product-sprite-0.7.2.xml (51.9 KB, 1699 views)
File Type: zip sprite_0.7.2.zip (22.0 KB, 2769 views)

Screenshots

File Type: jpg forumdisplay_default.jpg (151.3 KB, 0 views)
File Type: png forumdisplay_sprites_070.png (70.8 KB, 0 views)
File Type: jpg forumhome_default.jpg (145.6 KB, 0 views)
File Type: png forumhome_sprites_070.png (66.6 KB, 0 views)
File Type: jpg nachher_forumdisplay.jpg (96.6 KB, 0 views)
File Type: jpg nachher_forumhome.jpg (94.1 KB, 0 views)

Supporters / CoAuthors

Show Your Support

  • This modification may not be copied, reproduced or published elsewhere without author's permission.

Comments
  #332  
Old 09-06-2011, 02:19 PM
hanhdn hanhdn is offline
 
Join Date: Aug 2011
Posts: 32
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

Quote:
Originally Posted by Mooff View Post
Thanks, I installed. My new trouble is the last instruction:
in order to use the sprites, you then will have to edit some templates. The diffs (xou will find it in the do_not_upload folder show which parts you have to delete '<' and which parts to add '>' In addition, on top find the lines in which you will find the respective code.

As this instruction I opened file TEMPLATE_CHANGES.diff and saw the code:

## Version 0.7.1 ##

Template: search_threadbit
1c1
< <li class="imodselector threadbit {vb:if !$thread['del_username'], $thread['statusstring']}" id="thread_{vb:raw thread.realthreadid}" title="{vb:raw thread.preview}">
---
> <li class="sprite_statusicon_thread_30 imodselector threadbit {vb:if !$thread['del_username'], $thread['statusstring']}" id="thread_{vb:raw thread.realthreadid}" title="{vb:raw thread.preview}">

Template: threadbit_deleted
1c1
< <li class="threadbit deleted<vb:if condition="$show['paperclip']"> attachments</vb:if><vb:if condition="!$thread['postuserid']"> guest</vb:if><vb:if condition="$thread['moderatedprefix']"> unapproved</vb:if>" id="thread_{vb:raw thread.realthreadid}">
---
> <li class="sprite_statusicon_thread_30 threadbit deleted<vb:if condition="$show['paperclip']"> attachments</vb:if><vb:if condition="!$thread['postuserid']"> guest</vb:if><vb:if condition="$thread['moderatedprefix']"> unapproved</vb:if>" id="thread_{vb:raw thread.realthreadid}">


What I have to do next? The code only for ver.0.7.1???? and how about the code from ver.0.5 to ver.0.7??? ignore them??
Srr for my noob
Reply With Quote
  #333  
Old 09-08-2011, 03:49 AM
thecore762 thecore762 is offline
 
Join Date: Jul 2008
Posts: 510
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

Would you recommend using this mod for a forum line mine? www.47r-squad.com
It's custom built and very graphic intensive..
Not sure if this is going to work for me.
Reply With Quote
  #334  
Old 09-08-2011, 01:48 PM
Mooff Mooff is offline
 
Join Date: Mar 2010
Posts: 301
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

@Seductor
I don't know exactly what is causing this behaviour. Someone in this thread had it before, i thought this bug was fixed then.

@hanhdn
You need to perform all code changes mentioned in the diff file. How to read that file is explained here.
https://vborg.vbsupport.ru/showpost....0&postcount=25
But, i would advise everyone to use the TMS, which does those changes for you.

@thecore762
The addon will merge a lot of your icons into sprites. So yes, i would recommend using it.
Reply With Quote
  #335  
Old 09-08-2011, 02:10 PM
ZeroHour's Avatar
ZeroHour ZeroHour is offline
 
Join Date: Sep 2007
Location: Scotland
Posts: 105
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

@Moof just to say thats the issue I had as well although I have removed the mod for now.

@Seductor what OS and php version do you have? trying to think of causes
Reply With Quote
  #336  
Old 09-08-2011, 02:54 PM
tpearl5's Avatar
tpearl5 tpearl5 is offline
 
Join Date: Nov 2001
Location: PA
Posts: 1,014
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

can't wait to see this for showthread - that's where the majority of my traffic comes in from.
Reply With Quote
  #337  
Old 09-09-2011, 05:48 AM
hanhdn hanhdn is offline
 
Join Date: Aug 2011
Posts: 32
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

Quote:
Originally Posted by Mooff View Post
@hanhdn
You need to perform all code changes mentioned in the diff file. How to read that file is explained here.
https://vborg.vbsupport.ru/showpost....0&postcount=25
But, i would advise everyone to use the TMS, which does those changes for you.
Thank friend,
I already changed all the default icon and status icon by custom icon and avatars in my forum. I want to know the mod still make my forum faster or not?
My forum: http://srsc.com.vn

Thank again,
Reply With Quote
  #338  
Old 09-09-2011, 09:43 AM
Mooff Mooff is offline
 
Join Date: Mar 2010
Posts: 301
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

Wow, your site takes 30 seconds to load for me on the first go and 18 seconds on the second one. :eek And that is with javascript blocked.

As for images. I don't know what you are using for your forumicons. Unfortunately i doesn't seem to be the build in vb4 version, which also would allow to choose different icons for different forums (see our site) so we can't catch them. Avatars we can't catch at all. Avatars can't be added in a sprite since a board at most will show 20 at a time? And boards like ours have thousands of avatars on them. So it doesn't make sense to transfer the data of thousand avatars to show 20.

Forumdisplay you show avatars instead of threadicons, so the addon won't be able to catch those.

There are still some http requests you can save using the addon. But do not expect a massive performance increase (i would expect it to shave like 2 seconds off), since most of your loading time is due to your other addons, like huge animated graphics, real time graph creation etc. and that we cannot speed up.
Reply With Quote
  #339  
Old 09-11-2011, 03:28 AM
Chris.08i Chris.08i is offline
 
Join Date: Oct 2008
Posts: 30
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

This gave me a boost by about 7 points.

I'm still horribly low on 38 points.

Page Speed Online by google is still giving me quite a large list of images which can be converted into CSS sprites. They are mostly gradients and/or icons.

I was wondering if I've done anything wrong?

I have TMS installed.

Any help will be greatly appreciated.
Reply With Quote
  #340  
Old 09-12-2011, 10:09 AM
Mooff Mooff is offline
 
Join Date: Mar 2010
Posts: 301
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

Please provide a link to your site.

I assume you have some other addons running which add a lot of images to your page. Images the default vb4 installation does know nothing about, and therefore we can't catch them (unless someone uses our plugin hook to include those icons into the sprite).
Reply With Quote
  #341  
Old 09-12-2011, 02:16 PM
Seductor Seductor is offline
 
Join Date: May 2011
Posts: 128
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

Quote:
Originally Posted by Mooff View Post
Wow, your site takes 30 seconds to load for me on the first go and 18 seconds on the second one. :eek And that is with javascript blocked.
It took me more than 30 seconds :O That is insane!
Reply With Quote
Reply


Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off

Forum Jump


All times are GMT. The time now is 04:58 PM.


Powered by vBulletin® Version 3.8.12 by vBS
Copyright ©2000 - 2024, vBulletin Solutions Inc.
X vBulletin 3.8.12 by vBS Debug Information
  • Page Generation 0.09951 seconds
  • Memory Usage 2,382KB
  • Queries Executed 27 (?)
More Information
Template Usage:
  • (1)SHOWTHREAD
  • (1)ad_footer_end
  • (1)ad_footer_start
  • (1)ad_header_end
  • (1)ad_header_logo
  • (1)ad_navbar_below
  • (1)ad_showthread_beforeqr
  • (6)bbcode_quote
  • (1)footer
  • (1)forumjump
  • (1)forumrules
  • (1)gobutton
  • (1)header
  • (1)headinclude
  • (1)modsystem_post
  • (1)navbar
  • (4)navbar_link
  • (120)option
  • (1)pagenav
  • (1)pagenav_curpage
  • (4)pagenav_pagelink
  • (2)pagenav_pagelinkrel
  • (11)post_thanks_box
  • (17)post_thanks_box_bit
  • (11)post_thanks_button
  • (1)post_thanks_javascript
  • (1)post_thanks_navbar_search
  • (1)post_thanks_postbit
  • (11)post_thanks_postbit_info
  • (10)postbit
  • (8)postbit_attachment
  • (11)postbit_onlinestatus
  • (11)postbit_wrapper
  • (1)spacer_close
  • (1)spacer_open
  • (1)tagbit_wrapper 

Phrase Groups Available:
  • global
  • inlinemod
  • postbit
  • posting
  • reputationlevel
  • showthread
Included Files:
  • ./showthread.php
  • ./global.php
  • ./includes/init.php
  • ./includes/class_core.php
  • ./includes/config.php
  • ./includes/functions.php
  • ./includes/class_hook.php
  • ./includes/modsystem_functions.php
  • ./includes/functions_bigthree.php
  • ./includes/class_postbit.php
  • ./includes/class_bbcode.php
  • ./includes/functions_reputation.php
  • ./includes/functions_post_thanks.php 

Hooks Called:
  • init_startup
  • init_startup_session_setup_start
  • init_startup_session_setup_complete
  • cache_permissions
  • fetch_threadinfo_query
  • fetch_threadinfo
  • fetch_foruminfo
  • style_fetch
  • cache_templates
  • global_start
  • parse_templates
  • global_setup_complete
  • showthread_start
  • showthread_getinfo
  • forumjump
  • showthread_post_start
  • showthread_query_postids
  • showthread_query
  • bbcode_fetch_tags
  • bbcode_create
  • showthread_postbit_create
  • postbit_factory
  • postbit_display_start
  • post_thanks_function_post_thanks_off_start
  • post_thanks_function_post_thanks_off_end
  • post_thanks_function_fetch_thanks_start
  • fetch_musername
  • post_thanks_function_fetch_thanks_end
  • post_thanks_function_thanked_already_start
  • post_thanks_function_thanked_already_end
  • post_thanks_function_fetch_thanks_bit_start
  • post_thanks_function_show_thanks_date_start
  • post_thanks_function_show_thanks_date_end
  • post_thanks_function_fetch_thanks_bit_end
  • post_thanks_function_fetch_post_thanks_template_start
  • post_thanks_function_fetch_post_thanks_template_end
  • postbit_imicons
  • bbcode_parse_start
  • bbcode_parse_complete_precache
  • bbcode_parse_complete
  • postbit_attachment
  • postbit_display_complete
  • post_thanks_function_can_thank_this_post_start
  • pagenav_page
  • pagenav_complete
  • tag_fetchbit_complete
  • forumrules
  • navbits
  • navbits_complete
  • showthread_complete