SlideShare una empresa de Scribd logo
1 de 20
Descargar para leer sin conexión
How fast can you go?

   Optimising Joomla! templates

          Ruth Cheesley
What we will cover

● Why optimise templates

● Top tips for templates

● How to optimise your template

● Compression and minimisation
Why optimise templates?
Why optimise your templates?
                 ● Users are less
                   willing to suffer a
                   slow loading
                   website

                 ● Conversions are
                   more likely with
                   faster loading sites

                 ● It's good practice!
What is happening to slow
    websites?




Courtesy of Web Performance Today
This means that...
● If your website is loading slow you will:

   ○ Have less conversions (sales)

   ○ Have a higher bounce rate

   ○ Have less page views per visit

● Your business may experience a reduction
  in sales, poor customer satisfaction, and
  frustration for users on slower connections
Why focus on the template?

● Templates apply site-wide therefore
  problems are far-reaching

● More complex templates and extensions can
  mean more files to load - therefore higher
  load time
Top tips for optimising templates
Top tips for templates

● Adhere to current WC3 standards

● Load CSS before Javascript but not
  intermingled

● Avoid inline CSS

● Minimise use of large images
Optimising your template
Key concepts

● Use sprites where you can

● Don't load javascript for the sake of it!

● Combine, compress and minify JS & CSS

● Optimise images
What are sprites?

● Combining multiple images
  (icons, menu images etc) into
  one file

● Use CSS to tell the browser
  how to find the correct image to
  display (using background-
  position)
Taming the Javascript beast
Taming the Javascript beast
● Only load each javascript file ONCE

● Check extensions which often load their own
  JS file, identical to existing JS files but
  named differently (e.g. K2.js)

● Load (where possible) from the latest
  Google repository

● Be vigilant for multiple versions being loaded
  (causes conflicts)
Compress, combine & minify CSS & JS
Compress, combine & minify CSS &
  JS
   CSS can look like this             1     body {
                                                line-height: 1;
                                      2
                                            }
                                      3     ol, ul {
                                      4         list-style: none;
                                      5     }
                                            blockquote, q {
                                      6         quotes: none;
                                      7     }
                                      8
                                      9



  Or like this, and it still works.   1      body{line-height:1}ol,ul{list-style:none}blockquote,q{quotes:none}

Also, use shorthand!
                                                                                                    BUT
Long Version:                             Shorthand version:
#container {                              #container {
   padding-top: 5px                          padding: 5px 10px 30px 18px;
   padding-right: 10px                    }
   padding-bottom: 30px
   padding-left: 18px
}
Why compress, combine & minify?
● Compress - significant reduction in size of
  files downloaded by browser

● Combine - significant reduction in the
  number of files compressed & downloaded
  by browser

● Minify - significant reduction in the volume
  of data being sent to (and interpreted by) the
  browser
Establishing a benchmark

             ● Identify benchmarks to test
               against & demonstrate
               improvement

             ● Lots of free tools available
               with professional reports
               produced

             ● Demonstrate business case
               and return on investment
Tools of the trade

● Google minifier - combines, minifies and
  caches JS and CSS files on demand - http:
  //code.google.com/p/minify

● Yui compressor - compresses JS/CSS -
  http://refresh-sf.com/yui
Thank you!

Ruth Cheesley

@RCheesley

Más contenido relacionado

Similar a Joomla User Group Suffolk - July 2012 - Template Optimisation by Ruth Cheesley, Virya Technologies

Web Design for Literary Theorists II: Overview of CSS (v 1.0)
Web Design for Literary Theorists II: Overview of CSS (v 1.0)Web Design for Literary Theorists II: Overview of CSS (v 1.0)
Web Design for Literary Theorists II: Overview of CSS (v 1.0)Patrick Mooney
 
The Characteristics of a Successful SPA
The Characteristics of a Successful SPAThe Characteristics of a Successful SPA
The Characteristics of a Successful SPAGil Fink
 
6 Methods to use page scroll animation.pdf
6 Methods to use page scroll animation.pdf6 Methods to use page scroll animation.pdf
6 Methods to use page scroll animation.pdfBe Problem Solver
 
Html 5 mobile - nitty gritty
Html 5 mobile - nitty grittyHtml 5 mobile - nitty gritty
Html 5 mobile - nitty grittyMario Noble
 
How We Use the Abivia Content Pattern (ACP) Plugin in Joomla Website Development
How We Use the Abivia Content Pattern (ACP) Plugin in Joomla Website DevelopmentHow We Use the Abivia Content Pattern (ACP) Plugin in Joomla Website Development
How We Use the Abivia Content Pattern (ACP) Plugin in Joomla Website DevelopmentAlan Langford
 
The What & Why of Pattern Lab
The What & Why of Pattern LabThe What & Why of Pattern Lab
The What & Why of Pattern LabDave Olsen
 
Website speed optimization techniques
Website speed optimization techniquesWebsite speed optimization techniques
Website speed optimization techniquesValueCoders
 
Web dev presentation
Web dev presentationWeb dev presentation
Web dev presentationDomendra Sahu
 
WT Module-3.pptx
WT Module-3.pptxWT Module-3.pptx
WT Module-3.pptxRamyaH11
 
Using Apache Camel as AKKA
Using Apache Camel as AKKAUsing Apache Camel as AKKA
Using Apache Camel as AKKAJohan Edstrom
 
Building the next generation of themes with WP Rig 2.0
Building the next generation of themes with WP Rig 2.0Building the next generation of themes with WP Rig 2.0
Building the next generation of themes with WP Rig 2.0Morten Rand-Hendriksen
 
How QCLean Works? Introduction to Browser Extensions
How QCLean Works? Introduction to Browser ExtensionsHow QCLean Works? Introduction to Browser Extensions
How QCLean Works? Introduction to Browser ExtensionsQing-Cheng Li
 
[QCon 2011] Por uma web mais rápida: técnicas de otimização de Sites
[QCon 2011] Por uma web mais rápida: técnicas de otimização de Sites[QCon 2011] Por uma web mais rápida: técnicas de otimização de Sites
[QCon 2011] Por uma web mais rápida: técnicas de otimização de SitesCaelum
 

Similar a Joomla User Group Suffolk - July 2012 - Template Optimisation by Ruth Cheesley, Virya Technologies (20)

Web Design for Literary Theorists II: Overview of CSS (v 1.0)
Web Design for Literary Theorists II: Overview of CSS (v 1.0)Web Design for Literary Theorists II: Overview of CSS (v 1.0)
Web Design for Literary Theorists II: Overview of CSS (v 1.0)
 
Dust.js
Dust.jsDust.js
Dust.js
 
The Characteristics of a Successful SPA
The Characteristics of a Successful SPAThe Characteristics of a Successful SPA
The Characteristics of a Successful SPA
 
6 Methods to use page scroll animation.pdf
6 Methods to use page scroll animation.pdf6 Methods to use page scroll animation.pdf
6 Methods to use page scroll animation.pdf
 
Html 5 mobile - nitty gritty
Html 5 mobile - nitty grittyHtml 5 mobile - nitty gritty
Html 5 mobile - nitty gritty
 
How We Use the Abivia Content Pattern (ACP) Plugin in Joomla Website Development
How We Use the Abivia Content Pattern (ACP) Plugin in Joomla Website DevelopmentHow We Use the Abivia Content Pattern (ACP) Plugin in Joomla Website Development
How We Use the Abivia Content Pattern (ACP) Plugin in Joomla Website Development
 
Unit 4(it workshop)
Unit 4(it workshop)Unit 4(it workshop)
Unit 4(it workshop)
 
HTML CSS & Javascript
HTML CSS & JavascriptHTML CSS & Javascript
HTML CSS & Javascript
 
The What & Why of Pattern Lab
The What & Why of Pattern LabThe What & Why of Pattern Lab
The What & Why of Pattern Lab
 
Website speed optimization techniques
Website speed optimization techniquesWebsite speed optimization techniques
Website speed optimization techniques
 
Tools for Modern Web Design
Tools for Modern Web DesignTools for Modern Web Design
Tools for Modern Web Design
 
Web dev presentation
Web dev presentationWeb dev presentation
Web dev presentation
 
Modern web technologies
Modern web technologiesModern web technologies
Modern web technologies
 
RWD
RWDRWD
RWD
 
Web Information Systems Html and css
Web Information Systems Html and cssWeb Information Systems Html and css
Web Information Systems Html and css
 
WT Module-3.pptx
WT Module-3.pptxWT Module-3.pptx
WT Module-3.pptx
 
Using Apache Camel as AKKA
Using Apache Camel as AKKAUsing Apache Camel as AKKA
Using Apache Camel as AKKA
 
Building the next generation of themes with WP Rig 2.0
Building the next generation of themes with WP Rig 2.0Building the next generation of themes with WP Rig 2.0
Building the next generation of themes with WP Rig 2.0
 
How QCLean Works? Introduction to Browser Extensions
How QCLean Works? Introduction to Browser ExtensionsHow QCLean Works? Introduction to Browser Extensions
How QCLean Works? Introduction to Browser Extensions
 
[QCon 2011] Por uma web mais rápida: técnicas de otimização de Sites
[QCon 2011] Por uma web mais rápida: técnicas de otimização de Sites[QCon 2011] Por uma web mais rápida: técnicas de otimização de Sites
[QCon 2011] Por uma web mais rápida: técnicas de otimização de Sites
 

Más de Ruth Cheesley

Open source meets marketing - Presentation - OpenFest 2019
Open source meets marketing - Presentation - OpenFest 2019Open source meets marketing - Presentation - OpenFest 2019
Open source meets marketing - Presentation - OpenFest 2019Ruth Cheesley
 
Data first web development
Data first web developmentData first web development
Data first web developmentRuth Cheesley
 
Integrated Marketing Strategies with Mautic
Integrated Marketing Strategies with MauticIntegrated Marketing Strategies with Mautic
Integrated Marketing Strategies with MauticRuth Cheesley
 
Automating your marketing workflows in Joomla with Mautic
Automating your marketing workflows in Joomla with MauticAutomating your marketing workflows in Joomla with Mautic
Automating your marketing workflows in Joomla with MauticRuth Cheesley
 
Fight for the Pixel - Innovation Martlesham - Ruth Cheesley
Fight for the Pixel - Innovation Martlesham - Ruth CheesleyFight for the Pixel - Innovation Martlesham - Ruth Cheesley
Fight for the Pixel - Innovation Martlesham - Ruth CheesleyRuth Cheesley
 
Custom Fields in Joomla - JoomlaDay UK 2016 - Marco Dings
Custom Fields in Joomla - JoomlaDay UK 2016 - Marco DingsCustom Fields in Joomla - JoomlaDay UK 2016 - Marco Dings
Custom Fields in Joomla - JoomlaDay UK 2016 - Marco DingsRuth Cheesley
 
Time to stop breaking your promises - dealing with 404's, broken URLs and pla...
Time to stop breaking your promises - dealing with 404's, broken URLs and pla...Time to stop breaking your promises - dealing with 404's, broken URLs and pla...
Time to stop breaking your promises - dealing with 404's, broken URLs and pla...Ruth Cheesley
 
Chalk and cheese - how developers and designers can work together and not cru...
Chalk and cheese - how developers and designers can work together and not cru...Chalk and cheese - how developers and designers can work together and not cru...
Chalk and cheese - how developers and designers can work together and not cru...Ruth Cheesley
 
Discovering Joomla! - Find out about Joomla's features
Discovering Joomla! - Find out about Joomla's featuresDiscovering Joomla! - Find out about Joomla's features
Discovering Joomla! - Find out about Joomla's featuresRuth Cheesley
 
Ruth Cheesley - Joomla World Conference 2014 - How to prove you're worth a mi...
Ruth Cheesley - Joomla World Conference 2014 - How to prove you're worth a mi...Ruth Cheesley - Joomla World Conference 2014 - How to prove you're worth a mi...
Ruth Cheesley - Joomla World Conference 2014 - How to prove you're worth a mi...Ruth Cheesley
 
Conflict as an opportunity for growth in Open Source communities - European C...
Conflict as an opportunity for growth in Open Source communities - European C...Conflict as an opportunity for growth in Open Source communities - European C...
Conflict as an opportunity for growth in Open Source communities - European C...Ruth Cheesley
 
The world needs Open Source - Ruth Cheesley - NorDevCon 2014
The world needs Open Source - Ruth Cheesley - NorDevCon 2014The world needs Open Source - Ruth Cheesley - NorDevCon 2014
The world needs Open Source - Ruth Cheesley - NorDevCon 2014Ruth Cheesley
 
A gaze into the crystal ball of Google - social, local and predictive search
A gaze into the crystal ball of Google - social, local and predictive searchA gaze into the crystal ball of Google - social, local and predictive search
A gaze into the crystal ball of Google - social, local and predictive searchRuth Cheesley
 
CMS Security - Ruth Cheesley - CMS Africa 2014
CMS Security - Ruth Cheesley - CMS Africa 2014CMS Security - Ruth Cheesley - CMS Africa 2014
CMS Security - Ruth Cheesley - CMS Africa 2014Ruth Cheesley
 
Women in Open Source - Ruth Cheesley - CMS Africa 2014
Women in Open Source - Ruth Cheesley - CMS Africa 2014Women in Open Source - Ruth Cheesley - CMS Africa 2014
Women in Open Source - Ruth Cheesley - CMS Africa 2014Ruth Cheesley
 
Ruth Cheesley - Joomla! World Conference 2013 - What are you trying to say (a...
Ruth Cheesley - Joomla! World Conference 2013 - What are you trying to say (a...Ruth Cheesley - Joomla! World Conference 2013 - What are you trying to say (a...
Ruth Cheesley - Joomla! World Conference 2013 - What are you trying to say (a...Ruth Cheesley
 
Ruth Cheesley - Joomla! World Conference 2013 - Is your business intelligent?
Ruth Cheesley - Joomla! World Conference 2013 - Is your business intelligent?Ruth Cheesley - Joomla! World Conference 2013 - Is your business intelligent?
Ruth Cheesley - Joomla! World Conference 2013 - Is your business intelligent?Ruth Cheesley
 
Suffolk Internet Marketing & SEO/M Specialists - Ruth Cheesley - Don't get in...
Suffolk Internet Marketing & SEO/M Specialists - Ruth Cheesley - Don't get in...Suffolk Internet Marketing & SEO/M Specialists - Ruth Cheesley - Don't get in...
Suffolk Internet Marketing & SEO/M Specialists - Ruth Cheesley - Don't get in...Ruth Cheesley
 
Ruth Cheesley - Joomla!Day UK - Joomla in your area
Ruth Cheesley - Joomla!Day UK - Joomla in your areaRuth Cheesley - Joomla!Day UK - Joomla in your area
Ruth Cheesley - Joomla!Day UK - Joomla in your areaRuth Cheesley
 
Ruth Cheesley - Joomla!Day UK - Articles are boring, long live the CCK!
Ruth Cheesley - Joomla!Day UK - Articles are boring, long live the CCK!Ruth Cheesley - Joomla!Day UK - Articles are boring, long live the CCK!
Ruth Cheesley - Joomla!Day UK - Articles are boring, long live the CCK!Ruth Cheesley
 

Más de Ruth Cheesley (20)

Open source meets marketing - Presentation - OpenFest 2019
Open source meets marketing - Presentation - OpenFest 2019Open source meets marketing - Presentation - OpenFest 2019
Open source meets marketing - Presentation - OpenFest 2019
 
Data first web development
Data first web developmentData first web development
Data first web development
 
Integrated Marketing Strategies with Mautic
Integrated Marketing Strategies with MauticIntegrated Marketing Strategies with Mautic
Integrated Marketing Strategies with Mautic
 
Automating your marketing workflows in Joomla with Mautic
Automating your marketing workflows in Joomla with MauticAutomating your marketing workflows in Joomla with Mautic
Automating your marketing workflows in Joomla with Mautic
 
Fight for the Pixel - Innovation Martlesham - Ruth Cheesley
Fight for the Pixel - Innovation Martlesham - Ruth CheesleyFight for the Pixel - Innovation Martlesham - Ruth Cheesley
Fight for the Pixel - Innovation Martlesham - Ruth Cheesley
 
Custom Fields in Joomla - JoomlaDay UK 2016 - Marco Dings
Custom Fields in Joomla - JoomlaDay UK 2016 - Marco DingsCustom Fields in Joomla - JoomlaDay UK 2016 - Marco Dings
Custom Fields in Joomla - JoomlaDay UK 2016 - Marco Dings
 
Time to stop breaking your promises - dealing with 404's, broken URLs and pla...
Time to stop breaking your promises - dealing with 404's, broken URLs and pla...Time to stop breaking your promises - dealing with 404's, broken URLs and pla...
Time to stop breaking your promises - dealing with 404's, broken URLs and pla...
 
Chalk and cheese - how developers and designers can work together and not cru...
Chalk and cheese - how developers and designers can work together and not cru...Chalk and cheese - how developers and designers can work together and not cru...
Chalk and cheese - how developers and designers can work together and not cru...
 
Discovering Joomla! - Find out about Joomla's features
Discovering Joomla! - Find out about Joomla's featuresDiscovering Joomla! - Find out about Joomla's features
Discovering Joomla! - Find out about Joomla's features
 
Ruth Cheesley - Joomla World Conference 2014 - How to prove you're worth a mi...
Ruth Cheesley - Joomla World Conference 2014 - How to prove you're worth a mi...Ruth Cheesley - Joomla World Conference 2014 - How to prove you're worth a mi...
Ruth Cheesley - Joomla World Conference 2014 - How to prove you're worth a mi...
 
Conflict as an opportunity for growth in Open Source communities - European C...
Conflict as an opportunity for growth in Open Source communities - European C...Conflict as an opportunity for growth in Open Source communities - European C...
Conflict as an opportunity for growth in Open Source communities - European C...
 
The world needs Open Source - Ruth Cheesley - NorDevCon 2014
The world needs Open Source - Ruth Cheesley - NorDevCon 2014The world needs Open Source - Ruth Cheesley - NorDevCon 2014
The world needs Open Source - Ruth Cheesley - NorDevCon 2014
 
A gaze into the crystal ball of Google - social, local and predictive search
A gaze into the crystal ball of Google - social, local and predictive searchA gaze into the crystal ball of Google - social, local and predictive search
A gaze into the crystal ball of Google - social, local and predictive search
 
CMS Security - Ruth Cheesley - CMS Africa 2014
CMS Security - Ruth Cheesley - CMS Africa 2014CMS Security - Ruth Cheesley - CMS Africa 2014
CMS Security - Ruth Cheesley - CMS Africa 2014
 
Women in Open Source - Ruth Cheesley - CMS Africa 2014
Women in Open Source - Ruth Cheesley - CMS Africa 2014Women in Open Source - Ruth Cheesley - CMS Africa 2014
Women in Open Source - Ruth Cheesley - CMS Africa 2014
 
Ruth Cheesley - Joomla! World Conference 2013 - What are you trying to say (a...
Ruth Cheesley - Joomla! World Conference 2013 - What are you trying to say (a...Ruth Cheesley - Joomla! World Conference 2013 - What are you trying to say (a...
Ruth Cheesley - Joomla! World Conference 2013 - What are you trying to say (a...
 
Ruth Cheesley - Joomla! World Conference 2013 - Is your business intelligent?
Ruth Cheesley - Joomla! World Conference 2013 - Is your business intelligent?Ruth Cheesley - Joomla! World Conference 2013 - Is your business intelligent?
Ruth Cheesley - Joomla! World Conference 2013 - Is your business intelligent?
 
Suffolk Internet Marketing & SEO/M Specialists - Ruth Cheesley - Don't get in...
Suffolk Internet Marketing & SEO/M Specialists - Ruth Cheesley - Don't get in...Suffolk Internet Marketing & SEO/M Specialists - Ruth Cheesley - Don't get in...
Suffolk Internet Marketing & SEO/M Specialists - Ruth Cheesley - Don't get in...
 
Ruth Cheesley - Joomla!Day UK - Joomla in your area
Ruth Cheesley - Joomla!Day UK - Joomla in your areaRuth Cheesley - Joomla!Day UK - Joomla in your area
Ruth Cheesley - Joomla!Day UK - Joomla in your area
 
Ruth Cheesley - Joomla!Day UK - Articles are boring, long live the CCK!
Ruth Cheesley - Joomla!Day UK - Articles are boring, long live the CCK!Ruth Cheesley - Joomla!Day UK - Articles are boring, long live the CCK!
Ruth Cheesley - Joomla!Day UK - Articles are boring, long live the CCK!
 

Último

🐬 The future of MySQL is Postgres 🐘
🐬  The future of MySQL is Postgres   🐘🐬  The future of MySQL is Postgres   🐘
🐬 The future of MySQL is Postgres 🐘RTylerCroy
 
[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdfhans926745
 
Breaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path MountBreaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path MountPuma Security, LLC
 
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdfThe Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdfEnterprise Knowledge
 
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Miguel Araújo
 
GenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationGenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationMichael W. Hawkins
 
Slack Application Development 101 Slides
Slack Application Development 101 SlidesSlack Application Development 101 Slides
Slack Application Development 101 Slidespraypatel2
 
08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking Men08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking MenDelhi Call girls
 
My Hashitalk Indonesia April 2024 Presentation
My Hashitalk Indonesia April 2024 PresentationMy Hashitalk Indonesia April 2024 Presentation
My Hashitalk Indonesia April 2024 PresentationRidwan Fadjar
 
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...Igalia
 
Understanding the Laravel MVC Architecture
Understanding the Laravel MVC ArchitectureUnderstanding the Laravel MVC Architecture
Understanding the Laravel MVC ArchitecturePixlogix Infotech
 
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptxHampshireHUG
 
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure service
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure serviceWhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure service
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure servicePooja Nehwal
 
Salesforce Community Group Quito, Salesforce 101
Salesforce Community Group Quito, Salesforce 101Salesforce Community Group Quito, Salesforce 101
Salesforce Community Group Quito, Salesforce 101Paola De la Torre
 
How to convert PDF to text with Nanonets
How to convert PDF to text with NanonetsHow to convert PDF to text with Nanonets
How to convert PDF to text with Nanonetsnaman860154
 
Scaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationScaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationRadu Cotescu
 
Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...
Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...
Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...HostedbyConfluent
 
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...shyamraj55
 
#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024BookNet Canada
 
Enhancing Worker Digital Experience: A Hands-on Workshop for Partners
Enhancing Worker Digital Experience: A Hands-on Workshop for PartnersEnhancing Worker Digital Experience: A Hands-on Workshop for Partners
Enhancing Worker Digital Experience: A Hands-on Workshop for PartnersThousandEyes
 

Último (20)

🐬 The future of MySQL is Postgres 🐘
🐬  The future of MySQL is Postgres   🐘🐬  The future of MySQL is Postgres   🐘
🐬 The future of MySQL is Postgres 🐘
 
[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf
 
Breaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path MountBreaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path Mount
 
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdfThe Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
 
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
 
GenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationGenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day Presentation
 
Slack Application Development 101 Slides
Slack Application Development 101 SlidesSlack Application Development 101 Slides
Slack Application Development 101 Slides
 
08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking Men08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking Men
 
My Hashitalk Indonesia April 2024 Presentation
My Hashitalk Indonesia April 2024 PresentationMy Hashitalk Indonesia April 2024 Presentation
My Hashitalk Indonesia April 2024 Presentation
 
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
 
Understanding the Laravel MVC Architecture
Understanding the Laravel MVC ArchitectureUnderstanding the Laravel MVC Architecture
Understanding the Laravel MVC Architecture
 
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
 
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure service
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure serviceWhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure service
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure service
 
Salesforce Community Group Quito, Salesforce 101
Salesforce Community Group Quito, Salesforce 101Salesforce Community Group Quito, Salesforce 101
Salesforce Community Group Quito, Salesforce 101
 
How to convert PDF to text with Nanonets
How to convert PDF to text with NanonetsHow to convert PDF to text with Nanonets
How to convert PDF to text with Nanonets
 
Scaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationScaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organization
 
Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...
Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...
Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...
 
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...
 
#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
 
Enhancing Worker Digital Experience: A Hands-on Workshop for Partners
Enhancing Worker Digital Experience: A Hands-on Workshop for PartnersEnhancing Worker Digital Experience: A Hands-on Workshop for Partners
Enhancing Worker Digital Experience: A Hands-on Workshop for Partners
 

Joomla User Group Suffolk - July 2012 - Template Optimisation by Ruth Cheesley, Virya Technologies

  • 1. How fast can you go? Optimising Joomla! templates Ruth Cheesley
  • 2. What we will cover ● Why optimise templates ● Top tips for templates ● How to optimise your template ● Compression and minimisation
  • 4. Why optimise your templates? ● Users are less willing to suffer a slow loading website ● Conversions are more likely with faster loading sites ● It's good practice!
  • 5. What is happening to slow websites? Courtesy of Web Performance Today
  • 6. This means that... ● If your website is loading slow you will: ○ Have less conversions (sales) ○ Have a higher bounce rate ○ Have less page views per visit ● Your business may experience a reduction in sales, poor customer satisfaction, and frustration for users on slower connections
  • 7. Why focus on the template? ● Templates apply site-wide therefore problems are far-reaching ● More complex templates and extensions can mean more files to load - therefore higher load time
  • 8. Top tips for optimising templates
  • 9. Top tips for templates ● Adhere to current WC3 standards ● Load CSS before Javascript but not intermingled ● Avoid inline CSS ● Minimise use of large images
  • 11. Key concepts ● Use sprites where you can ● Don't load javascript for the sake of it! ● Combine, compress and minify JS & CSS ● Optimise images
  • 12. What are sprites? ● Combining multiple images (icons, menu images etc) into one file ● Use CSS to tell the browser how to find the correct image to display (using background- position)
  • 14. Taming the Javascript beast ● Only load each javascript file ONCE ● Check extensions which often load their own JS file, identical to existing JS files but named differently (e.g. K2.js) ● Load (where possible) from the latest Google repository ● Be vigilant for multiple versions being loaded (causes conflicts)
  • 15. Compress, combine & minify CSS & JS
  • 16. Compress, combine & minify CSS & JS CSS can look like this 1 body { line-height: 1; 2 } 3 ol, ul { 4 list-style: none; 5 } blockquote, q { 6 quotes: none; 7 } 8 9 Or like this, and it still works. 1 body{line-height:1}ol,ul{list-style:none}blockquote,q{quotes:none} Also, use shorthand! BUT Long Version: Shorthand version: #container { #container { padding-top: 5px padding: 5px 10px 30px 18px; padding-right: 10px } padding-bottom: 30px padding-left: 18px }
  • 17. Why compress, combine & minify? ● Compress - significant reduction in size of files downloaded by browser ● Combine - significant reduction in the number of files compressed & downloaded by browser ● Minify - significant reduction in the volume of data being sent to (and interpreted by) the browser
  • 18. Establishing a benchmark ● Identify benchmarks to test against & demonstrate improvement ● Lots of free tools available with professional reports produced ● Demonstrate business case and return on investment
  • 19. Tools of the trade ● Google minifier - combines, minifies and caches JS and CSS files on demand - http: //code.google.com/p/minify ● Yui compressor - compresses JS/CSS - http://refresh-sf.com/yui