While working on the new theme for this site, we realized that the various social media buttons We use were making the entire page load considerably slower. As soon as the browser hit that region of the page (the end of each post), everything would stop until those fat buttons were loaded. Using a little bit of jQuery, however, it's possible to get around this and load these heavier elements after the rest of the page has finished loading.
In order to load the share buttons after everything else, we need to do two things. First, we need to edit our post template (
single.php) to call a jQuery function after everything has loaded. We call this function in
In the code above, we're calling the function
get_social using jQuery's window load function instead of the typical document ready – this makes means our function is called after everything has loaded, whereas document ready loads all code immediately after the DOM is ready. Inside the window load event, we call our function and pass the title and permalink so our buttons have access to it.
get_social function itself, we can use jQuery's load function to pass our variables, get the response and populate or
div (with the id of "sharing-buttons"). Please be sure to point to the correct URL of your share.php file (which we'll create next) – you may even want to use the absolute URL to minimize errors (ie http://…).
In the beginning, we grab the permalink and title variables from either
$_POST (a bit more future-proof in case our function changes) and use the default button codes provided by these services. Note that here we don't use the permalink or title in any of the above buttons, as these services automatically detect that information from whatever page they're posted on, however it's there if you need it!
That should be it though – if you edited your
single.php and correctly point to your
share.php file in the
get_social function, you should be loading your buttons after the rest of the page is completely loaded!
share.php simply contains all of your dynamic button code. Here's what looks like:
$permalink = $_GET['permalink'] ? $_GET['permalink'] : $_POST['permalink']; $title = $_GET['title'] ? $_GET['title'] : $_POST['title']; ?>
Please, pay attention that some buttons could not function correctly when loaded this way, such as the one for DZone. We assume it has to do with the way their button code extracts the host URL, which it may have had difficulty with since it was being loaded from an external file. While it would've been nice to include that button, having a faster loading site is much more important than any single service.
Also, please keep in mind that this won't really change your overall page loading times – it will only make it so that the rest of the site is loaded before the social media buttons. It's useful if you find these buttons to be slow at times and parts of your page render white/blank until they're finished loading, which is the issue I was having.
Licenciada en Bellas Artes y programadora por pasión. Cuando tengo un rato retoco fotos, edito vídeos y diseño cosas. El resto del tiempo escribo en MA-NO WEB DESIGN AND DEVELOPMENT.
Many people all over the world enjoy photography. At first, it may seem difficult to learn, but once you turn it into a hobby, then it becomes a pleasure rather…
The most popular social media platforms boast of having hundreds of millions of active users every month. The number itself is more than enough to attract brands in trying to…
If your target audience aren’t interested in your brand, your marketing campaigns, or the service that you provide, why would they feel compelled to bring you their business? If you’re…
Creating any business is hard enough. Having people notice your business is a completely new challenge. Similar to Michael Scott’s “declaration” of bankruptcy in The Office doesn’t make it so. Creating…
There’s no disputing the influence that the internet and social media have had on business management. The speed at which platforms like Facebook, Instagram, and Twitter have grown has been…
Most individuals, marketers and business people struggle to get the best out of social media but do not know how to go about it. There are various applications that can…
Customer experience is measured by the individual’s experience during all points of contact against the individual’s expectations. Over the past century, countless inventions and advancements have inadvertently raised the bar of…
Want to save a bit of time? Facebook integrates some keyboard shortcuts that make it easier for users to navigate through the platform. Today we give you some tips on how…
Designing, building and growing successful social products requires a solid understanding of social behaviour and a willingness to adopt and embrace a development process that’s different to what most people…
A successful SEO campaign includes a Google+ strategy, yet many companies are still not thinking about Google+ as such a crucial aspect for SEO. Your typical social media benefits are…
Privacy changes are usually what draw the ire of most Facebook users, and it’s something that the site is hoping to change through better education and clearer directions. According to a recent infographic from Webpage…