SlideShare uma empresa Scribd logo
1 de 38
Baixar para ler offline
Joomla! SEO
Technical Search Engine Optimisation
René Kreijveld
 Internet developer
Optimising your website for


  requires 2 things well setup:
•Your content must be in order
•Your template must be spiderable and
 search engine friendly
Search Engine Optimisation:

      75% is content
     25% is technoloy
This presentation
is about technology.
     Sorry ;-) ...
Okay, short on content ;-)
• Write a good pagetitle
• Write an introductionary paragraph with
  keywords about your subject
• Use H1, H2 and H3 tags
• Avoid structures in your content like tables
  and frames
• Use alt and title tags for links and images
• Use Meta Descriptions
• Update your content frequently
How can technology help?
•Create error-free pages [wysiwyg editor]
•Create content and navigation that
 webcrawlers can read [css]
•Present content in the right order [css]
•Generate the right tags H1, H2, H3
 [template overrides]
Why you need content
     in the right order?
•A webcrawler is dumb:
 - it can’t read images
 - it doesn’t understand Javascript
 - it doesn’t understand Flash
 - it doesn’t understand CSS
•Let’s take a look at www.joomla.org
•And this is how a webcrawler sees this
  website:
Source-ordered is important
•Prominence to keyword optimized sections
•Spiders see unique page elements before
 sitewide elements
•Place searchable elements above blocks
 that crawlers can’t read (flash etc.)
•No undesired elements in search results
•Importent content loads first
•Better rankings
So it is important that your
  main content comes first.
   How can we do that?
•Create a source-ordered template
•You can never build that with tables
•CSS based design with absolute
  positioning and floated elements is the key
Get the right tools
•If you have Mozilla Firefox:
  Firebug:
  https://addons.mozilla.org/nl/firefox/addon/1843

  Web developer toolbar:
  http://chrispederick.com/work/web-developer/

•If you have Internet Explorer:
  IETester + DebugBar
  http://www.my-debugbar.com/wiki/IETester/HomePage
Let’s start with a simple
        css based design
•http://localhost/so/01
Structure based on
5 divs in a wrapper
Outer wrapper is centered:
div#wrapper {
  position: absolute;
  width: 900px;
  left: 50%;
  margin-left: -450px;
  text-align: left;
}
Content divs float:
div#left {
   float: left;
   width: 190px;
   padding: 5px 10px 5px 0px;
}
div#main {
   float: left;
   width: 490px;
   padding: 5px;
}
div#right {
   float: right;
   width: 190px;
   padding: 5px 0px 5px 10px;
}
After floats use clear:both
CSS:
div.clr {
   clear: both;
}


XHTML:
<div   id="left"></div> /* floats left */
<div   id="main"></div> /* floats left */
<div   id="right"></div> /* floats right */
<div   class="clr"></div> /* clears all floats, this ensures footer is below floats */
<div   id="footer"></div>


The element “footer” is moved below all floating
boxes of earlier elements in the source document.
First step of optimisation,
  let’s group Left & Main:
•http://localhost/so/02
Left div and Main div
now in div Maincontent
New div maincontent,
         main now floats right
div#maincontent {
   float: left;
   width: 700px;
}
div#left {
   float: left;
   width: 190px;
   padding: 5px 10px 5px 0px;
}
div#main {
   float: right;
   width: 490px;
   padding: 5px;
}
Second step of optimisation,
   re-order Left & Main:
•http://localhost/so/03
Re-order Left and Main:
Content in maincontent
         now source-ordered:
<div id="wrapper">
     <div id="header"></div>
     <div id="maincontent"> /* floats left */
          <div id="main"></div> /* floats right */
          <div id="left"></div> /* floats left */
          <div class="clr"></div>
     </div>
     <div id="right"></div> /* floats right */
     <div class="clr"></div>
     <div id="footer"></div>
</div>
Third step of optimisation,
group Maincontent & Right:
•http://localhost/so/04
All divs between Header
and Footer now grouped:
Content divs grouped
               together:
<div id="wrapper">
     <div id="header"></div>
     <div id="content">
          <div id="maincontent"> /* floats left */
               <div id="main"></div> /* floats right */
               <div id="left"></div> /* floats left */
               <div class="clr"></div>
          </div>
          <div id="right"></div> /* floats right */
          <div class="clr"></div>
     </div>
     <div id="footer"></div>
</div>
Next step of optimisation,
 How to push header down?
•Absolute positioning does the trick!
•http://localhost/so/05
Full source-ordered:
All source-ordered:
<div id="wrapper">
     <div id="content"> /* positioned absolute at 0,100 */
          <div id="maincontent"> /* floats left */
               <div id="main"></div> /* floats right */
               <div id="left"></div> /* floats left */
               <div class="clr"></div>
          </div>
          <div id="right"></div> /* floats right */
          <div class="clr"></div>
          <div id="footer"></div>
     </div>
     <div id="header"></div> /* positioned absolute at 0,0 */
</div>
The content div is
        positioned absolute:
div#content {
  position: absolute;
  left: 0;
  top: 100px;
}

Position location is relative to parent absolute
positioned element!
The header div is also
        positioned absolute:
div#header {
  position: absolute;
  left: 0;
  top: 0;
}
Putting it all together in a
      Joomla! template:
•http://localhost/so/06
How to generate the right
     H1, H2, H3 tags:
•Add template overrides to your template
•http://www.yootheme.com/member-area/
 downloads/item/templates-15/template-
 overrides-15
•More about that in the next session:
 Template Overrides: Hans Kuijpers
Resources:
http://www.webcreatives.nl/jd09nl
Questions?
Thank you for your attention.
 Meet me at the Dr. Joomla.

Mais conteúdo relacionado

Mais procurados

10- Learn CSS Fundamentals / Pseudo-elements
10- Learn CSS Fundamentals / Pseudo-elements10- Learn CSS Fundamentals / Pseudo-elements
10- Learn CSS Fundamentals / Pseudo-elementsIn a Rocket
 
WordPress Theme Structure
WordPress Theme StructureWordPress Theme Structure
WordPress Theme Structurekeithdevon
 
WordPress Theme Development for Designers
WordPress Theme Development for DesignersWordPress Theme Development for Designers
WordPress Theme Development for Designerselliotjaystocks
 
13- Learn CSS Fundamentals / Specificity
13- Learn CSS Fundamentals / Specificity13- Learn CSS Fundamentals / Specificity
13- Learn CSS Fundamentals / SpecificityIn a Rocket
 
Basics of Front End Web Dev PowerPoint
Basics of Front End Web Dev PowerPointBasics of Front End Web Dev PowerPoint
Basics of Front End Web Dev PowerPointSahil Gandhi
 
An Introduction To HTML5
An Introduction To HTML5An Introduction To HTML5
An Introduction To HTML5Robert Nyman
 
How to Prepare a WordPress Theme for Public Release
How to Prepare a WordPress Theme for Public ReleaseHow to Prepare a WordPress Theme for Public Release
How to Prepare a WordPress Theme for Public ReleaseDavid Yeiser
 
Introduction to HTML5
Introduction to HTML5Introduction to HTML5
Introduction to HTML5Terry Ryan
 
Semantic HTML5
Semantic HTML5Semantic HTML5
Semantic HTML5Terry Ryan
 
Intro to WordPress theme development
Intro to WordPress theme developmentIntro to WordPress theme development
Intro to WordPress theme developmentThad Allender
 
HTML5 workshop, part 1
HTML5 workshop, part 1HTML5 workshop, part 1
HTML5 workshop, part 1Robert Nyman
 
HTML5 and the web of tomorrow!
HTML5  and the  web of tomorrow!HTML5  and the  web of tomorrow!
HTML5 and the web of tomorrow!Christian Heilmann
 
Theming websites effortlessly with Deliverance (CMSExpo 2010)
Theming websites effortlessly with Deliverance (CMSExpo 2010)Theming websites effortlessly with Deliverance (CMSExpo 2010)
Theming websites effortlessly with Deliverance (CMSExpo 2010)Jazkarta, Inc.
 
Understanding email hacks - Litmus Live London TEDC16
Understanding email hacks - Litmus Live London TEDC16Understanding email hacks - Litmus Live London TEDC16
Understanding email hacks - Litmus Live London TEDC16Mark Robbins
 
WordPress theme frameworks
WordPress theme frameworksWordPress theme frameworks
WordPress theme frameworksEddie Johnston
 
9- Learn CSS Fundamentals / Pseudo-classes
9- Learn CSS Fundamentals / Pseudo-classes9- Learn CSS Fundamentals / Pseudo-classes
9- Learn CSS Fundamentals / Pseudo-classesIn a Rocket
 

Mais procurados (20)

10- Learn CSS Fundamentals / Pseudo-elements
10- Learn CSS Fundamentals / Pseudo-elements10- Learn CSS Fundamentals / Pseudo-elements
10- Learn CSS Fundamentals / Pseudo-elements
 
Html for beginners
Html for beginnersHtml for beginners
Html for beginners
 
HTML5 & CSS3 Flag
HTML5 & CSS3 FlagHTML5 & CSS3 Flag
HTML5 & CSS3 Flag
 
WordPress Theme Structure
WordPress Theme StructureWordPress Theme Structure
WordPress Theme Structure
 
WordPress Theme Development for Designers
WordPress Theme Development for DesignersWordPress Theme Development for Designers
WordPress Theme Development for Designers
 
13- Learn CSS Fundamentals / Specificity
13- Learn CSS Fundamentals / Specificity13- Learn CSS Fundamentals / Specificity
13- Learn CSS Fundamentals / Specificity
 
Basics of Front End Web Dev PowerPoint
Basics of Front End Web Dev PowerPointBasics of Front End Web Dev PowerPoint
Basics of Front End Web Dev PowerPoint
 
An Introduction To HTML5
An Introduction To HTML5An Introduction To HTML5
An Introduction To HTML5
 
Web 101 intro to html
Web 101  intro to htmlWeb 101  intro to html
Web 101 intro to html
 
How to Prepare a WordPress Theme for Public Release
How to Prepare a WordPress Theme for Public ReleaseHow to Prepare a WordPress Theme for Public Release
How to Prepare a WordPress Theme for Public Release
 
HTML5 Essentials
HTML5 EssentialsHTML5 Essentials
HTML5 Essentials
 
Introduction to HTML5
Introduction to HTML5Introduction to HTML5
Introduction to HTML5
 
Semantic HTML5
Semantic HTML5Semantic HTML5
Semantic HTML5
 
Intro to WordPress theme development
Intro to WordPress theme developmentIntro to WordPress theme development
Intro to WordPress theme development
 
HTML5 workshop, part 1
HTML5 workshop, part 1HTML5 workshop, part 1
HTML5 workshop, part 1
 
HTML5 and the web of tomorrow!
HTML5  and the  web of tomorrow!HTML5  and the  web of tomorrow!
HTML5 and the web of tomorrow!
 
Theming websites effortlessly with Deliverance (CMSExpo 2010)
Theming websites effortlessly with Deliverance (CMSExpo 2010)Theming websites effortlessly with Deliverance (CMSExpo 2010)
Theming websites effortlessly with Deliverance (CMSExpo 2010)
 
Understanding email hacks - Litmus Live London TEDC16
Understanding email hacks - Litmus Live London TEDC16Understanding email hacks - Litmus Live London TEDC16
Understanding email hacks - Litmus Live London TEDC16
 
WordPress theme frameworks
WordPress theme frameworksWordPress theme frameworks
WordPress theme frameworks
 
9- Learn CSS Fundamentals / Pseudo-classes
9- Learn CSS Fundamentals / Pseudo-classes9- Learn CSS Fundamentals / Pseudo-classes
9- Learn CSS Fundamentals / Pseudo-classes
 

Destaque

Go Joomla 1.6 with your extension - Joomla!Days NL 2010 #jd10nl
Go Joomla 1.6 with your extension -  Joomla!Days NL 2010 #jd10nlGo Joomla 1.6 with your extension -  Joomla!Days NL 2010 #jd10nl
Go Joomla 1.6 with your extension - Joomla!Days NL 2010 #jd10nlJoomla!Days Netherlands
 
Joomla 1.5 modules - Joomla!Days NL 2009 #jd09nl
Joomla 1.5 modules - Joomla!Days NL 2009 #jd09nlJoomla 1.5 modules - Joomla!Days NL 2009 #jd09nl
Joomla 1.5 modules - Joomla!Days NL 2009 #jd09nlJoomla!Days Netherlands
 
Joomla 1.7 and beyond - Hannes Papenberg
Joomla 1.7 and beyond - Hannes PapenbergJoomla 1.7 and beyond - Hannes Papenberg
Joomla 1.7 and beyond - Hannes PapenbergJoomla!Days Netherlands
 
Joomla development & release strategy - Andrea Tarr #jd12nl
Joomla development & release strategy - Andrea Tarr #jd12nlJoomla development & release strategy - Andrea Tarr #jd12nl
Joomla development & release strategy - Andrea Tarr #jd12nlJoomla!Days Netherlands
 
My Joomla Website is Hacked - Joomla!Days NL 2009 #jd09nl
My Joomla Website is Hacked - Joomla!Days NL 2009 #jd09nlMy Joomla Website is Hacked - Joomla!Days NL 2009 #jd09nl
My Joomla Website is Hacked - Joomla!Days NL 2009 #jd09nlJoomla!Days Netherlands
 
K2 for beginners - Joomla!Days NL 2010 #jd10nl
K2 for beginners  -  Joomla!Days NL 2010 #jd10nlK2 for beginners  -  Joomla!Days NL 2010 #jd10nl
K2 for beginners - Joomla!Days NL 2010 #jd10nlJoomla!Days Netherlands
 
Joomla 1.6 - Joomla!Days NL 2009 #jd09nl
Joomla 1.6 - Joomla!Days NL 2009 #jd09nlJoomla 1.6 - Joomla!Days NL 2009 #jd09nl
Joomla 1.6 - Joomla!Days NL 2009 #jd09nlJoomla!Days Netherlands
 
Building mobile website with Joomla - Joomla!Days NL 2010 #jd10nl
Building mobile website with Joomla -  Joomla!Days NL 2010 #jd10nlBuilding mobile website with Joomla -  Joomla!Days NL 2010 #jd10nl
Building mobile website with Joomla - Joomla!Days NL 2010 #jd10nlJoomla!Days Netherlands
 
High Performance - Joomla!Days NL 2009 #jd09nl
High Performance - Joomla!Days NL 2009 #jd09nlHigh Performance - Joomla!Days NL 2009 #jd09nl
High Performance - Joomla!Days NL 2009 #jd09nlJoomla!Days Netherlands
 
Building a successful open source business model - Joomla!Days NL 2010 #jd10nl
Building a successful open source business model  -  Joomla!Days NL 2010 #jd10nlBuilding a successful open source business model  -  Joomla!Days NL 2010 #jd10nl
Building a successful open source business model - Joomla!Days NL 2010 #jd10nlJoomla!Days Netherlands
 
Yireo Mage Bridge - Joomla!Days NL 2009 #jd09nl
Yireo Mage Bridge - Joomla!Days NL 2009 #jd09nlYireo Mage Bridge - Joomla!Days NL 2009 #jd09nl
Yireo Mage Bridge - Joomla!Days NL 2009 #jd09nlJoomla!Days Netherlands
 
Gezien vanuit de andere hoek - Joomla!Days NL 2010 #jd10nl
Gezien vanuit de andere hoek -  Joomla!Days NL 2010 #jd10nlGezien vanuit de andere hoek -  Joomla!Days NL 2010 #jd10nl
Gezien vanuit de andere hoek - Joomla!Days NL 2010 #jd10nlJoomla!Days Netherlands
 

Destaque (18)

Go Joomla 1.6 with your extension - Joomla!Days NL 2010 #jd10nl
Go Joomla 1.6 with your extension -  Joomla!Days NL 2010 #jd10nlGo Joomla 1.6 with your extension -  Joomla!Days NL 2010 #jd10nl
Go Joomla 1.6 with your extension - Joomla!Days NL 2010 #jd10nl
 
Joomla Bug Squad - Andrea Tarr #jd12nl
Joomla Bug Squad - Andrea Tarr #jd12nlJoomla Bug Squad - Andrea Tarr #jd12nl
Joomla Bug Squad - Andrea Tarr #jd12nl
 
Joomla 1.5 modules - Joomla!Days NL 2009 #jd09nl
Joomla 1.5 modules - Joomla!Days NL 2009 #jd09nlJoomla 1.5 modules - Joomla!Days NL 2009 #jd09nl
Joomla 1.5 modules - Joomla!Days NL 2009 #jd09nl
 
Joomla 1.7 and beyond - Hannes Papenberg
Joomla 1.7 and beyond - Hannes PapenbergJoomla 1.7 and beyond - Hannes Papenberg
Joomla 1.7 and beyond - Hannes Papenberg
 
Joomla development & release strategy - Andrea Tarr #jd12nl
Joomla development & release strategy - Andrea Tarr #jd12nlJoomla development & release strategy - Andrea Tarr #jd12nl
Joomla development & release strategy - Andrea Tarr #jd12nl
 
My Joomla Website is Hacked - Joomla!Days NL 2009 #jd09nl
My Joomla Website is Hacked - Joomla!Days NL 2009 #jd09nlMy Joomla Website is Hacked - Joomla!Days NL 2009 #jd09nl
My Joomla Website is Hacked - Joomla!Days NL 2009 #jd09nl
 
K2 for beginners - Joomla!Days NL 2010 #jd10nl
K2 for beginners  -  Joomla!Days NL 2010 #jd10nlK2 for beginners  -  Joomla!Days NL 2010 #jd10nl
K2 for beginners - Joomla!Days NL 2010 #jd10nl
 
Tamka - Joomla!Days NL 2009 #jd09nl
Tamka - Joomla!Days NL 2009 #jd09nlTamka - Joomla!Days NL 2009 #jd09nl
Tamka - Joomla!Days NL 2009 #jd09nl
 
Joomla 1.6 - Joomla!Days NL 2009 #jd09nl
Joomla 1.6 - Joomla!Days NL 2009 #jd09nlJoomla 1.6 - Joomla!Days NL 2009 #jd09nl
Joomla 1.6 - Joomla!Days NL 2009 #jd09nl
 
CCK ZOO - Dick Verschuur #jd12nl
CCK ZOO - Dick Verschuur #jd12nlCCK ZOO - Dick Verschuur #jd12nl
CCK ZOO - Dick Verschuur #jd12nl
 
Joomla Governance - Paul Orwig #jd12nl
Joomla Governance - Paul Orwig #jd12nlJoomla Governance - Paul Orwig #jd12nl
Joomla Governance - Paul Orwig #jd12nl
 
Joomla V - Paul Delbar #jd12nl
Joomla V - Paul Delbar #jd12nlJoomla V - Paul Delbar #jd12nl
Joomla V - Paul Delbar #jd12nl
 
Building mobile website with Joomla - Joomla!Days NL 2010 #jd10nl
Building mobile website with Joomla -  Joomla!Days NL 2010 #jd10nlBuilding mobile website with Joomla -  Joomla!Days NL 2010 #jd10nl
Building mobile website with Joomla - Joomla!Days NL 2010 #jd10nl
 
High Performance - Joomla!Days NL 2009 #jd09nl
High Performance - Joomla!Days NL 2009 #jd09nlHigh Performance - Joomla!Days NL 2009 #jd09nl
High Performance - Joomla!Days NL 2009 #jd09nl
 
Building a successful open source business model - Joomla!Days NL 2010 #jd10nl
Building a successful open source business model  -  Joomla!Days NL 2010 #jd10nlBuilding a successful open source business model  -  Joomla!Days NL 2010 #jd10nl
Building a successful open source business model - Joomla!Days NL 2010 #jd10nl
 
Yireo Mage Bridge - Joomla!Days NL 2009 #jd09nl
Yireo Mage Bridge - Joomla!Days NL 2009 #jd09nlYireo Mage Bridge - Joomla!Days NL 2009 #jd09nl
Yireo Mage Bridge - Joomla!Days NL 2009 #jd09nl
 
Gezien vanuit de andere hoek - Joomla!Days NL 2010 #jd10nl
Gezien vanuit de andere hoek -  Joomla!Days NL 2010 #jd10nlGezien vanuit de andere hoek -  Joomla!Days NL 2010 #jd10nl
Gezien vanuit de andere hoek - Joomla!Days NL 2010 #jd10nl
 
Website Adaptation & Formatting Layer
Website Adaptation & Formatting LayerWebsite Adaptation & Formatting Layer
Website Adaptation & Formatting Layer
 

Semelhante a Source Ordered Templates - - Joomla!Days NL 2009 #jd09nl

HTML5, just another presentation :)
HTML5, just another presentation :)HTML5, just another presentation :)
HTML5, just another presentation :)François Massart
 
Code &amp; design your first website (3:16)
Code &amp; design your first website (3:16)Code &amp; design your first website (3:16)
Code &amp; design your first website (3:16)Thinkful
 
Html css crash course may 11th, atlanta
Html css crash course may 11th, atlantaHtml css crash course may 11th, atlanta
Html css crash course may 11th, atlantaThinkful
 
Code & Design your first website 4/18
Code & Design your first website 4/18Code & Design your first website 4/18
Code & Design your first website 4/18TJ Stalcup
 
Theme Kickstart
Theme KickstartTheme Kickstart
Theme KickstartPeter
 
Making WordPress Your CMS and Automatically Updating a Self Hosted WordPress ...
Making WordPress Your CMS and Automatically Updating a Self Hosted WordPress ...Making WordPress Your CMS and Automatically Updating a Self Hosted WordPress ...
Making WordPress Your CMS and Automatically Updating a Self Hosted WordPress ...cehwitham
 
Advanced CSS Troubleshooting & Efficiency
Advanced CSS Troubleshooting & EfficiencyAdvanced CSS Troubleshooting & Efficiency
Advanced CSS Troubleshooting & EfficiencyDenise Jacobs
 
Frontend for developers
Frontend for developersFrontend for developers
Frontend for developersHernan Mammana
 
Advanced CSS Troubleshooting
Advanced CSS TroubleshootingAdvanced CSS Troubleshooting
Advanced CSS TroubleshootingDenise Jacobs
 
Introduction to WordPress Theme Development
Introduction to WordPress Theme DevelopmentIntroduction to WordPress Theme Development
Introduction to WordPress Theme DevelopmentSitdhibong Laokok
 
How to create a basic template
How to create a basic templateHow to create a basic template
How to create a basic templatevathur
 
HTML/CSS Web Blog Example
HTML/CSS Web Blog ExampleHTML/CSS Web Blog Example
HTML/CSS Web Blog ExampleMichael Bodie
 
2022 HTML5: The future is now
2022 HTML5: The future is now2022 HTML5: The future is now
2022 HTML5: The future is nowGonzalo Cordero
 
WordPress Theme Workshop: Part 4
WordPress Theme Workshop: Part 4WordPress Theme Workshop: Part 4
WordPress Theme Workshop: Part 4David Bisset
 
From a Fireworks Comp to a Genesis Child Theme, Step by Step
From a Fireworks Comp to a Genesis Child Theme, Step by StepFrom a Fireworks Comp to a Genesis Child Theme, Step by Step
From a Fireworks Comp to a Genesis Child Theme, Step by StepEast Bay WordPress Meetup
 
CSS Layout Tutorial
CSS Layout TutorialCSS Layout Tutorial
CSS Layout Tutorialhstryk
 
ViA Bootstrap 4
ViA Bootstrap 4ViA Bootstrap 4
ViA Bootstrap 4imdurgesh
 
Blog HTML example for IML 295
Blog HTML example for IML 295Blog HTML example for IML 295
Blog HTML example for IML 295Evan Hughes
 
Joomla Beginner Template Presentation
Joomla Beginner Template PresentationJoomla Beginner Template Presentation
Joomla Beginner Template Presentationalledia
 

Semelhante a Source Ordered Templates - - Joomla!Days NL 2009 #jd09nl (20)

HTML5, just another presentation :)
HTML5, just another presentation :)HTML5, just another presentation :)
HTML5, just another presentation :)
 
Code &amp; design your first website (3:16)
Code &amp; design your first website (3:16)Code &amp; design your first website (3:16)
Code &amp; design your first website (3:16)
 
Html css crash course may 11th, atlanta
Html css crash course may 11th, atlantaHtml css crash course may 11th, atlanta
Html css crash course may 11th, atlanta
 
Code & Design your first website 4/18
Code & Design your first website 4/18Code & Design your first website 4/18
Code & Design your first website 4/18
 
Theme Kickstart
Theme KickstartTheme Kickstart
Theme Kickstart
 
Making WordPress Your CMS and Automatically Updating a Self Hosted WordPress ...
Making WordPress Your CMS and Automatically Updating a Self Hosted WordPress ...Making WordPress Your CMS and Automatically Updating a Self Hosted WordPress ...
Making WordPress Your CMS and Automatically Updating a Self Hosted WordPress ...
 
Advanced CSS Troubleshooting & Efficiency
Advanced CSS Troubleshooting & EfficiencyAdvanced CSS Troubleshooting & Efficiency
Advanced CSS Troubleshooting & Efficiency
 
Frontend for developers
Frontend for developersFrontend for developers
Frontend for developers
 
Advanced CSS Troubleshooting
Advanced CSS TroubleshootingAdvanced CSS Troubleshooting
Advanced CSS Troubleshooting
 
Introduction to WordPress Theme Development
Introduction to WordPress Theme DevelopmentIntroduction to WordPress Theme Development
Introduction to WordPress Theme Development
 
How to create a basic template
How to create a basic templateHow to create a basic template
How to create a basic template
 
HTML/CSS Web Blog Example
HTML/CSS Web Blog ExampleHTML/CSS Web Blog Example
HTML/CSS Web Blog Example
 
2022 HTML5: The future is now
2022 HTML5: The future is now2022 HTML5: The future is now
2022 HTML5: The future is now
 
WordPress Theme Workshop: Part 4
WordPress Theme Workshop: Part 4WordPress Theme Workshop: Part 4
WordPress Theme Workshop: Part 4
 
From a Fireworks Comp to a Genesis Child Theme, Step by Step
From a Fireworks Comp to a Genesis Child Theme, Step by StepFrom a Fireworks Comp to a Genesis Child Theme, Step by Step
From a Fireworks Comp to a Genesis Child Theme, Step by Step
 
CSS Layout Tutorial
CSS Layout TutorialCSS Layout Tutorial
CSS Layout Tutorial
 
ViA Bootstrap 4
ViA Bootstrap 4ViA Bootstrap 4
ViA Bootstrap 4
 
Blog HTML example for IML 295
Blog HTML example for IML 295Blog HTML example for IML 295
Blog HTML example for IML 295
 
Day of code
Day of codeDay of code
Day of code
 
Joomla Beginner Template Presentation
Joomla Beginner Template PresentationJoomla Beginner Template Presentation
Joomla Beginner Template Presentation
 

Mais de Joomla!Days Netherlands

Sitemaps uit de doeken gedaan - Nico Bouwman - #jd15nl
Sitemaps uit de doeken gedaan - Nico Bouwman - #jd15nlSitemaps uit de doeken gedaan - Nico Bouwman - #jd15nl
Sitemaps uit de doeken gedaan - Nico Bouwman - #jd15nlJoomla!Days Netherlands
 
Een veilige joomla website - Teeuwis Hillebrand - #jd15nl
Een veilige joomla website - Teeuwis Hillebrand - #jd15nlEen veilige joomla website - Teeuwis Hillebrand - #jd15nl
Een veilige joomla website - Teeuwis Hillebrand - #jd15nlJoomla!Days Netherlands
 
Webshop met K2 Store - Rienk Vlieger - #jd15nl
Webshop met K2 Store - Rienk Vlieger - #jd15nlWebshop met K2 Store - Rienk Vlieger - #jd15nl
Webshop met K2 Store - Rienk Vlieger - #jd15nlJoomla!Days Netherlands
 
Case-study: thelanguageindustry.eu - #jd15nl
Case-study: thelanguageindustry.eu - #jd15nlCase-study: thelanguageindustry.eu - #jd15nl
Case-study: thelanguageindustry.eu - #jd15nlJoomla!Days Netherlands
 
Geld verdienen met je Joomla site - Theo van der Zee - #jd15nl
Geld verdienen met je Joomla site - Theo van der Zee - #jd15nlGeld verdienen met je Joomla site - Theo van der Zee - #jd15nl
Geld verdienen met je Joomla site - Theo van der Zee - #jd15nlJoomla!Days Netherlands
 
Beter vindbaar met Onpage SEO - Maurice Lehr - #jd15nl
Beter vindbaar met Onpage SEO - Maurice Lehr - #jd15nlBeter vindbaar met Onpage SEO - Maurice Lehr - #jd15nl
Beter vindbaar met Onpage SEO - Maurice Lehr - #jd15nlJoomla!Days Netherlands
 
Local Search: lokaal goed gevonden worden - Maurice Lehr - #jd15nl
Local Search: lokaal goed gevonden worden  - Maurice Lehr - #jd15nlLocal Search: lokaal goed gevonden worden  - Maurice Lehr - #jd15nl
Local Search: lokaal goed gevonden worden - Maurice Lehr - #jd15nlJoomla!Days Netherlands
 
Een autodealer website bouwen met Form2Content - René Kreijveld - #jd15nl
Een autodealer website bouwen met Form2Content - René Kreijveld - #jd15nlEen autodealer website bouwen met Form2Content - René Kreijveld - #jd15nl
Een autodealer website bouwen met Form2Content - René Kreijveld - #jd15nlJoomla!Days Netherlands
 
Going Live with a CheckList - René Kreijveld - #jd15nl
Going Live with a CheckList - René Kreijveld - #jd15nlGoing Live with a CheckList - René Kreijveld - #jd15nl
Going Live with a CheckList - René Kreijveld - #jd15nlJoomla!Days Netherlands
 
Formulier extensies voor Joomla - Tijs Hensen #jd11nl
Formulier extensies voor Joomla - Tijs Hensen #jd11nlFormulier extensies voor Joomla - Tijs Hensen #jd11nl
Formulier extensies voor Joomla - Tijs Hensen #jd11nlJoomla!Days Netherlands
 
Joomla websites beheren - Joomla!Days NL 2010 #jd10nl
Joomla websites beheren -  Joomla!Days NL 2010 #jd10nlJoomla websites beheren -  Joomla!Days NL 2010 #jd10nl
Joomla websites beheren - Joomla!Days NL 2010 #jd10nlJoomla!Days Netherlands
 
Joomla Extensions Directory - Joomla!Days NL 2009 #jd09nl
Joomla Extensions Directory -  Joomla!Days NL 2009 #jd09nlJoomla Extensions Directory -  Joomla!Days NL 2009 #jd09nl
Joomla Extensions Directory - Joomla!Days NL 2009 #jd09nlJoomla!Days Netherlands
 
Joomla + SEO + Google - Joomla!Days NL 2009 #jd09nl
Joomla + SEO + Google - Joomla!Days NL 2009 #jd09nlJoomla + SEO + Google - Joomla!Days NL 2009 #jd09nl
Joomla + SEO + Google - Joomla!Days NL 2009 #jd09nlJoomla!Days Netherlands
 
Joomla Marketing - Joomla!Days NL 2009 #jd09nl
Joomla Marketing - Joomla!Days NL 2009 #jd09nlJoomla Marketing - Joomla!Days NL 2009 #jd09nl
Joomla Marketing - Joomla!Days NL 2009 #jd09nlJoomla!Days Netherlands
 

Mais de Joomla!Days Netherlands (18)

Sitemaps uit de doeken gedaan - Nico Bouwman - #jd15nl
Sitemaps uit de doeken gedaan - Nico Bouwman - #jd15nlSitemaps uit de doeken gedaan - Nico Bouwman - #jd15nl
Sitemaps uit de doeken gedaan - Nico Bouwman - #jd15nl
 
Een veilige joomla website - Teeuwis Hillebrand - #jd15nl
Een veilige joomla website - Teeuwis Hillebrand - #jd15nlEen veilige joomla website - Teeuwis Hillebrand - #jd15nl
Een veilige joomla website - Teeuwis Hillebrand - #jd15nl
 
Webshop met K2 Store - Rienk Vlieger - #jd15nl
Webshop met K2 Store - Rienk Vlieger - #jd15nlWebshop met K2 Store - Rienk Vlieger - #jd15nl
Webshop met K2 Store - Rienk Vlieger - #jd15nl
 
Case-study: thelanguageindustry.eu - #jd15nl
Case-study: thelanguageindustry.eu - #jd15nlCase-study: thelanguageindustry.eu - #jd15nl
Case-study: thelanguageindustry.eu - #jd15nl
 
Geld verdienen met je Joomla site - Theo van der Zee - #jd15nl
Geld verdienen met je Joomla site - Theo van der Zee - #jd15nlGeld verdienen met je Joomla site - Theo van der Zee - #jd15nl
Geld verdienen met je Joomla site - Theo van der Zee - #jd15nl
 
Beter vindbaar met Onpage SEO - Maurice Lehr - #jd15nl
Beter vindbaar met Onpage SEO - Maurice Lehr - #jd15nlBeter vindbaar met Onpage SEO - Maurice Lehr - #jd15nl
Beter vindbaar met Onpage SEO - Maurice Lehr - #jd15nl
 
Local Search: lokaal goed gevonden worden - Maurice Lehr - #jd15nl
Local Search: lokaal goed gevonden worden  - Maurice Lehr - #jd15nlLocal Search: lokaal goed gevonden worden  - Maurice Lehr - #jd15nl
Local Search: lokaal goed gevonden worden - Maurice Lehr - #jd15nl
 
JUGs Presentatie - #jd15nl
JUGs Presentatie - #jd15nlJUGs Presentatie - #jd15nl
JUGs Presentatie - #jd15nl
 
Een autodealer website bouwen met Form2Content - René Kreijveld - #jd15nl
Een autodealer website bouwen met Form2Content - René Kreijveld - #jd15nlEen autodealer website bouwen met Form2Content - René Kreijveld - #jd15nl
Een autodealer website bouwen met Form2Content - René Kreijveld - #jd15nl
 
Going Live with a CheckList - René Kreijveld - #jd15nl
Going Live with a CheckList - René Kreijveld - #jd15nlGoing Live with a CheckList - René Kreijveld - #jd15nl
Going Live with a CheckList - René Kreijveld - #jd15nl
 
Joomla! 3.0 - Andrea Tarr #jd12nl
Joomla! 3.0 - Andrea Tarr #jd12nlJoomla! 3.0 - Andrea Tarr #jd12nl
Joomla! 3.0 - Andrea Tarr #jd12nl
 
Joomla Project - Paul Orwig #jd12nl
Joomla Project - Paul Orwig #jd12nlJoomla Project - Paul Orwig #jd12nl
Joomla Project - Paul Orwig #jd12nl
 
Formulier extensies voor Joomla - Tijs Hensen #jd11nl
Formulier extensies voor Joomla - Tijs Hensen #jd11nlFormulier extensies voor Joomla - Tijs Hensen #jd11nl
Formulier extensies voor Joomla - Tijs Hensen #jd11nl
 
Joomla als corporate cms - Ebo Eppenga
Joomla als corporate cms - Ebo EppengaJoomla als corporate cms - Ebo Eppenga
Joomla als corporate cms - Ebo Eppenga
 
Joomla websites beheren - Joomla!Days NL 2010 #jd10nl
Joomla websites beheren -  Joomla!Days NL 2010 #jd10nlJoomla websites beheren -  Joomla!Days NL 2010 #jd10nl
Joomla websites beheren - Joomla!Days NL 2010 #jd10nl
 
Joomla Extensions Directory - Joomla!Days NL 2009 #jd09nl
Joomla Extensions Directory -  Joomla!Days NL 2009 #jd09nlJoomla Extensions Directory -  Joomla!Days NL 2009 #jd09nl
Joomla Extensions Directory - Joomla!Days NL 2009 #jd09nl
 
Joomla + SEO + Google - Joomla!Days NL 2009 #jd09nl
Joomla + SEO + Google - Joomla!Days NL 2009 #jd09nlJoomla + SEO + Google - Joomla!Days NL 2009 #jd09nl
Joomla + SEO + Google - Joomla!Days NL 2009 #jd09nl
 
Joomla Marketing - Joomla!Days NL 2009 #jd09nl
Joomla Marketing - Joomla!Days NL 2009 #jd09nlJoomla Marketing - Joomla!Days NL 2009 #jd09nl
Joomla Marketing - Joomla!Days NL 2009 #jd09nl
 

Último

Exploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone ProcessorsExploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone Processorsdebabhi2
 
Apidays Singapore 2024 - Modernizing Securities Finance by Madhu Subbu
Apidays Singapore 2024 - Modernizing Securities Finance by Madhu SubbuApidays Singapore 2024 - Modernizing Securities Finance by Madhu Subbu
Apidays Singapore 2024 - Modernizing Securities Finance by Madhu Subbuapidays
 
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemkeProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemkeProduct Anonymous
 
A Year of the Servo Reboot: Where Are We Now?
A Year of the Servo Reboot: Where Are We Now?A Year of the Servo Reboot: Where Are We Now?
A Year of the Servo Reboot: Where Are We Now?Igalia
 
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...DianaGray10
 
EMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWER
EMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWEREMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWER
EMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWERMadyBayot
 
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...apidays
 
Architecting Cloud Native Applications
Architecting Cloud Native ApplicationsArchitecting Cloud Native Applications
Architecting Cloud Native ApplicationsWSO2
 
Automating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps ScriptAutomating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps Scriptwesley chun
 
Why Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire businessWhy Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire businesspanagenda
 
Strategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a FresherStrategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a FresherRemote DBA Services
 
Emergent Methods: Multi-lingual narrative tracking in the news - real-time ex...
Emergent Methods: Multi-lingual narrative tracking in the news - real-time ex...Emergent Methods: Multi-lingual narrative tracking in the news - real-time ex...
Emergent Methods: Multi-lingual narrative tracking in the news - real-time ex...Zilliz
 
Boost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdfBoost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdfsudhanshuwaghmare1
 
Navi Mumbai Call Girls 🥰 8617370543 Service Offer VIP Hot Model
Navi Mumbai Call Girls 🥰 8617370543 Service Offer VIP Hot ModelNavi Mumbai Call Girls 🥰 8617370543 Service Offer VIP Hot Model
Navi Mumbai Call Girls 🥰 8617370543 Service Offer VIP Hot ModelDeepika Singh
 
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
 
Ransomware_Q4_2023. The report. [EN].pdf
Ransomware_Q4_2023. The report. [EN].pdfRansomware_Q4_2023. The report. [EN].pdf
Ransomware_Q4_2023. The report. [EN].pdfOverkill Security
 
AWS Community Day CPH - Three problems of Terraform
AWS Community Day CPH - Three problems of TerraformAWS Community Day CPH - Three problems of Terraform
AWS Community Day CPH - Three problems of TerraformAndrey Devyatkin
 
GenAI Risks & Security Meetup 01052024.pdf
GenAI Risks & Security Meetup 01052024.pdfGenAI Risks & Security Meetup 01052024.pdf
GenAI Risks & Security Meetup 01052024.pdflior mazor
 
AXA XL - Insurer Innovation Award Americas 2024
AXA XL - Insurer Innovation Award Americas 2024AXA XL - Insurer Innovation Award Americas 2024
AXA XL - Insurer Innovation Award Americas 2024The Digital Insurer
 
presentation ICT roal in 21st century education
presentation ICT roal in 21st century educationpresentation ICT roal in 21st century education
presentation ICT roal in 21st century educationjfdjdjcjdnsjd
 

Último (20)

Exploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone ProcessorsExploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone Processors
 
Apidays Singapore 2024 - Modernizing Securities Finance by Madhu Subbu
Apidays Singapore 2024 - Modernizing Securities Finance by Madhu SubbuApidays Singapore 2024 - Modernizing Securities Finance by Madhu Subbu
Apidays Singapore 2024 - Modernizing Securities Finance by Madhu Subbu
 
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemkeProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
 
A Year of the Servo Reboot: Where Are We Now?
A Year of the Servo Reboot: Where Are We Now?A Year of the Servo Reboot: Where Are We Now?
A Year of the Servo Reboot: Where Are We Now?
 
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
 
EMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWER
EMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWEREMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWER
EMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWER
 
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
 
Architecting Cloud Native Applications
Architecting Cloud Native ApplicationsArchitecting Cloud Native Applications
Architecting Cloud Native Applications
 
Automating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps ScriptAutomating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps Script
 
Why Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire businessWhy Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire business
 
Strategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a FresherStrategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a Fresher
 
Emergent Methods: Multi-lingual narrative tracking in the news - real-time ex...
Emergent Methods: Multi-lingual narrative tracking in the news - real-time ex...Emergent Methods: Multi-lingual narrative tracking in the news - real-time ex...
Emergent Methods: Multi-lingual narrative tracking in the news - real-time ex...
 
Boost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdfBoost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdf
 
Navi Mumbai Call Girls 🥰 8617370543 Service Offer VIP Hot Model
Navi Mumbai Call Girls 🥰 8617370543 Service Offer VIP Hot ModelNavi Mumbai Call Girls 🥰 8617370543 Service Offer VIP Hot Model
Navi Mumbai Call Girls 🥰 8617370543 Service Offer VIP Hot Model
 
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...
 
Ransomware_Q4_2023. The report. [EN].pdf
Ransomware_Q4_2023. The report. [EN].pdfRansomware_Q4_2023. The report. [EN].pdf
Ransomware_Q4_2023. The report. [EN].pdf
 
AWS Community Day CPH - Three problems of Terraform
AWS Community Day CPH - Three problems of TerraformAWS Community Day CPH - Three problems of Terraform
AWS Community Day CPH - Three problems of Terraform
 
GenAI Risks & Security Meetup 01052024.pdf
GenAI Risks & Security Meetup 01052024.pdfGenAI Risks & Security Meetup 01052024.pdf
GenAI Risks & Security Meetup 01052024.pdf
 
AXA XL - Insurer Innovation Award Americas 2024
AXA XL - Insurer Innovation Award Americas 2024AXA XL - Insurer Innovation Award Americas 2024
AXA XL - Insurer Innovation Award Americas 2024
 
presentation ICT roal in 21st century education
presentation ICT roal in 21st century educationpresentation ICT roal in 21st century education
presentation ICT roal in 21st century education
 

Source Ordered Templates - - Joomla!Days NL 2009 #jd09nl

  • 1. Joomla! SEO Technical Search Engine Optimisation
  • 3. Optimising your website for requires 2 things well setup: •Your content must be in order •Your template must be spiderable and search engine friendly
  • 4. Search Engine Optimisation: 75% is content 25% is technoloy
  • 5. This presentation is about technology. Sorry ;-) ...
  • 6. Okay, short on content ;-) • Write a good pagetitle • Write an introductionary paragraph with keywords about your subject • Use H1, H2 and H3 tags • Avoid structures in your content like tables and frames • Use alt and title tags for links and images • Use Meta Descriptions • Update your content frequently
  • 7. How can technology help? •Create error-free pages [wysiwyg editor] •Create content and navigation that webcrawlers can read [css] •Present content in the right order [css] •Generate the right tags H1, H2, H3 [template overrides]
  • 8. Why you need content in the right order? •A webcrawler is dumb: - it can’t read images - it doesn’t understand Javascript - it doesn’t understand Flash - it doesn’t understand CSS •Let’s take a look at www.joomla.org
  • 9.
  • 10. •And this is how a webcrawler sees this website:
  • 11.
  • 12. Source-ordered is important •Prominence to keyword optimized sections •Spiders see unique page elements before sitewide elements •Place searchable elements above blocks that crawlers can’t read (flash etc.) •No undesired elements in search results •Importent content loads first •Better rankings
  • 13. So it is important that your main content comes first. How can we do that? •Create a source-ordered template •You can never build that with tables •CSS based design with absolute positioning and floated elements is the key
  • 14. Get the right tools •If you have Mozilla Firefox: Firebug: https://addons.mozilla.org/nl/firefox/addon/1843 Web developer toolbar: http://chrispederick.com/work/web-developer/ •If you have Internet Explorer: IETester + DebugBar http://www.my-debugbar.com/wiki/IETester/HomePage
  • 15. Let’s start with a simple css based design •http://localhost/so/01
  • 16. Structure based on 5 divs in a wrapper
  • 17. Outer wrapper is centered: div#wrapper { position: absolute; width: 900px; left: 50%; margin-left: -450px; text-align: left; }
  • 18. Content divs float: div#left { float: left; width: 190px; padding: 5px 10px 5px 0px; } div#main { float: left; width: 490px; padding: 5px; } div#right { float: right; width: 190px; padding: 5px 0px 5px 10px; }
  • 19. After floats use clear:both CSS: div.clr { clear: both; } XHTML: <div id="left"></div> /* floats left */ <div id="main"></div> /* floats left */ <div id="right"></div> /* floats right */ <div class="clr"></div> /* clears all floats, this ensures footer is below floats */ <div id="footer"></div> The element “footer” is moved below all floating boxes of earlier elements in the source document.
  • 20. First step of optimisation, let’s group Left & Main: •http://localhost/so/02
  • 21. Left div and Main div now in div Maincontent
  • 22. New div maincontent, main now floats right div#maincontent { float: left; width: 700px; } div#left { float: left; width: 190px; padding: 5px 10px 5px 0px; } div#main { float: right; width: 490px; padding: 5px; }
  • 23. Second step of optimisation, re-order Left & Main: •http://localhost/so/03
  • 25. Content in maincontent now source-ordered: <div id="wrapper"> <div id="header"></div> <div id="maincontent"> /* floats left */ <div id="main"></div> /* floats right */ <div id="left"></div> /* floats left */ <div class="clr"></div> </div> <div id="right"></div> /* floats right */ <div class="clr"></div> <div id="footer"></div> </div>
  • 26. Third step of optimisation, group Maincontent & Right: •http://localhost/so/04
  • 27. All divs between Header and Footer now grouped:
  • 28. Content divs grouped together: <div id="wrapper"> <div id="header"></div> <div id="content"> <div id="maincontent"> /* floats left */ <div id="main"></div> /* floats right */ <div id="left"></div> /* floats left */ <div class="clr"></div> </div> <div id="right"></div> /* floats right */ <div class="clr"></div> </div> <div id="footer"></div> </div>
  • 29. Next step of optimisation, How to push header down? •Absolute positioning does the trick! •http://localhost/so/05
  • 31. All source-ordered: <div id="wrapper"> <div id="content"> /* positioned absolute at 0,100 */ <div id="maincontent"> /* floats left */ <div id="main"></div> /* floats right */ <div id="left"></div> /* floats left */ <div class="clr"></div> </div> <div id="right"></div> /* floats right */ <div class="clr"></div> <div id="footer"></div> </div> <div id="header"></div> /* positioned absolute at 0,0 */ </div>
  • 32. The content div is positioned absolute: div#content { position: absolute; left: 0; top: 100px; } Position location is relative to parent absolute positioned element!
  • 33. The header div is also positioned absolute: div#header { position: absolute; left: 0; top: 0; }
  • 34. Putting it all together in a Joomla! template: •http://localhost/so/06
  • 35. How to generate the right H1, H2, H3 tags: •Add template overrides to your template •http://www.yootheme.com/member-area/ downloads/item/templates-15/template- overrides-15 •More about that in the next session: Template Overrides: Hans Kuijpers
  • 38. Thank you for your attention. Meet me at the Dr. Joomla.