SlideShare una empresa de Scribd logo
1 de 81
WordPress
Optimization and Security

              Leeds, September 2012


               http://gdig.de/think12


   Bastian Grimm, Managing Partner - Grimm Digital
About me
 Background: PHP & Java
  – Dev. CMS, shops & forums
  – Wazap! Game Search Engine
 Online Marketing since 2004
  – SEO strategy consulting, in-house
    trainings & workshops, WordPress
                                        @basgr
    SEO, bla bla…
 Links, Links, Links…need some?
 Stuff to play with…

                                                 2
Get the Slide-Deck




             http://gdig.de/think12




                                      3
Credits for facts & graphic: http://yoast.com/wordpress-stats/
Credits for facts & graphic: http://yoast.com/wordpress-stats/
Section #1: Configuration
#1 Settings > PermaLinks

                           Get rid of those dates
                           (IDs), they look awful!




 /%postname%/
#2 Settings > Privacy




   Make sure you actually
   allow search engine to
   access your contents!




                            8
#3 Fix your Themes’ Page Title

                       Open header.php in your
                         themes’ folder, search
                       for “wp_title” – it’s going
                           be the first match!


  <title><?php wp_title(); ?></title>


  That’s the ONLY
  thing you need!

                                                     9
Section #2: WordPress SEO
#4 WordPress SEO by Yoast 1/9


                      Make sure to uncheck this!
                       Enables setting noindex,
                      canonical & 301 (for users)
                         on a per-post basis
#4 WordPress SEO by Yoast 2/9


                            You surely don‘t need paged
                             archives, categories, etc. –
                             they‘re targeting the same
                                   keys anyways.




                   Affiliate sites mainly have
                    pages, no need for RSS.
                       Check all of them!
#4 WordPress SEO by Yoast 3/9

                           Set proper page title &
                          description, also choose
                           author for SERP listing
#4 WordPress SEO by Yoast 4/9




                                        Use help section to get
                                      details an all 30+ variables!

            Keep unchecked unless
            you’re publishing news.
             Default value has been
            changed w/ last update.
In addition: Post-level settings



                       You can overwrite defaults
                        on a per-post level using
                        the “Advanced” settings.




                                                    15
#4 WordPress SEO by Yoast 5/9




                       Usually you just need one
                        (unless having a HUGE
                         amount of content) –
                       “noindex” the other one!
#4 WordPress SEO by Yoast 6/9




                      Especially w/ single-authored
                      blogs, those are a 1:1 copy of
                             your homepage.
                       301 is the better solution!
#4 WordPress SEO by Yoast 7/9


                       For larger sites, check to auto-
                          generate XML sitemaps.
                       Remember to check excludes!
#4 WordPress SEO by Yoast 8/9




              Make absolutely sure
               you‘re using these!
BTW: Clean those URL-Slugs

                                    WP Permalauts




            Especially important for
             Germany, France, etc.


                 http://wordpress.org/extend/plugins/wp-permalauts/
#4 WordPress SEO by Yoast 9/9
Trust me… things change!




Check out SEO data transporter
    to switch SEO plug-ins!
                                 22
Migration made easy: Painless switching!

                              SEO Data Transporter




              http://wordpress.org/extend/plugins/seo-data-transporter/
Section #3: Plug-ins
                       24
Make absolutely sure
you only use plug-ins
from trusted authors!
#5 Fix your Pagination

   Better crawl-ability, better                  WP-PageNavi
 indexation – what else u want?




 WordPress pagination
  s*cks, replace it!




                            http://wordpress.org/extend/plugins/wp-pagenavi/
#6 Improve internal Cross-Linking

                                      Yet Another Related
                                          Posts Plugin




         http://wordpress.org/extend/plugins/yet-another-related-posts-plugin/
#7 Auto-optimize Image Attributes

                          SEO Friendly Images



                           Forces post title &
                         image name to be used
                           as img alt-attribute




                  http://wordpress.org/extend/plugins/seo-image/
#8 Redirect old Contents

                                       Redirection




                  http://wordpress.org/extend/plugins/redirection/
#9 Mask your Affiliate Links

                       Eclipse Link Cloaker




                               http://eclipsecloaker.com/
Don’t forget to tweak your robots.txt

                            We don‘t want some WP
User-Agent: *                specific files & folders
Disallow: /wp-admin/
Disallow: /feed/
Disallow: /comments/feed/
Disallow: /*/trackback/$
Disallow: /*/feed/$
Disallow: /*.css$           Adjust according to your
Disallow: /*.js$
Disallow: /r/
                             Link Cloaker settings.




                                                        31
#10 Have Rich-Snippets if possible

                                 Schema Creator




                http://wordpress.org/extend/plugins/schema-creator/
Section #4: Security
#11 Never EVER do this!




                           These sites are
                          more than worse…
A quick peak into some theme files…

                     LOL! „family friendly“
                       links – my a*s…




                                              35
A quick peak into some theme files…

                 functions.php: This theme
                 won‘t be working without
                        those links…




                                             36
#12 Always use TAC to do a pre-check!

                     Theme Authenticity
                       Checker (TAC)




                      http://builtbackwards.com/projects/tac/
It get’s worse: base64 encoded footer

                 Are you really sure you want
                  to see that footer.php file?




                                                 38
Right… NICE FOOTER!




                      39
If you are REALLY curious…
   http://ottodestruct.com/decoder.php
   http://www.tareeinternet.com/scripts/byterun.php
   http://www.tareeinternet.com/scripts/decrypt.php
   http://rot13-encoder-decoder.waraxe.us/


                               The PHP code isn’t “really”
                          encrypted, rather kind of obfuscated.
                                 Reversing is possible!
PLEASE… stay away
from “free” WordPress
 themes – they’re not
     free, really!
#13 Keep your installation clean



   Remove all non-active
 plug-ins as well as themes!




                                   42
#14 Do updates regularly!
 WP Updates Notifier to get emails
  on out-dated components (core,
  themes & plug-ins) for all blogs:
   – http://wordpress.org/extend/plugins
     /wp-updates-notifier/
 ManageWP can do one-click mass
  updates (core, themes, plug-ins
  again) for all your blogs:
   – http://managewp.com/features
#15 Daily scan your Theme

                                   WP AntiVirus




                  http://wordpress.org/extend/plugins/antivirus/
#16 Harden your Security Settings

                              Secure WordPress




                  Most important: Remove version
                  number from ALL components &
                   block malicious URL requests.


               http://wordpress.org/extend/plugins/secure-wordpress/
#17 Protect wp-admin by .htaccess


                            Put an .htaccess to your
                             /wp-admin/ for basic
                              passwd. protection.



                   You can also try the “Lockdown WP
                  Admin” plug-in to protect PHP files in
                   wp-admin as well as the login itself.


             http://wordpress.org/extend/plugins/lockdown-wp-admin/
#18 Fix File & Folder Permissions

                                 WP-Security Scan




  Very important: chmod your
 wp-config.php to be read-only!
                  http://wordpress.org/extend/plugins/wp-security-scan/
Section #5: Maintenance
                          48
#19 Do a Theme Test Drive

                        Live-Testing a new theme
                           without anyone else
                             noticing… nice!




               http://wordpress.org/extend/plugins/theme-test-drive/
#20 Debug your WordPress #1

                   P3 (Plugin Perf. Profiler)




                 http://wordpress.org/extend/plugins/p3-profiler/
#20 Debug your WordPress #1




                 http://wordpress.org/extend/plugins/p3-profiler/
#20 Debug your WordPress #1




                 http://wordpress.org/extend/plugins/p3-profiler/
#20 Debug your WordPress #1




                 http://wordpress.org/extend/plugins/p3-profiler/
#21 Debug your WordPress #2

                                    Debug Objects




               http://wordpress.org/extend/plugins/debug-objects/
#22 Enable Akismet




                Just enable, get an API key
                and turn „auto-delete“ on!
#23 Backup Database & Files

                                       BackWPup




                  http://wordpress.org/extend/plugins/backwpup/
#24 Watch out for Errors
                            Knowledge is power
                            Use a 404 logger
                              – Analytics software
                              – Redirection (built-in)
                              – Webserver logs
                            Setup 301 redirects
                             accordingly using
                             “Redirection”, again.




                              Image-Credits: http://gdig.de/i
#25 Maintain Categories & Tags

                                    Term Mgmt. Tools




 Mass merge &
 change parents


             http://wordpress.org/extend/plugins/term-management-tools/
Section #6: Performance
GWT Site Performance Info

              This is really not so good…!




                                             60
Scoring domains by
performance; check it out!




        https://developers.google.com/pagespeed/
#26 Compress those Images

       13.2% savings                   WP Smush.it
      for one image!




                   http://wordpress.org/extend/plugins/wp-smushit/
Or try this one - if you don’t like Yahoo…

       Run‘s awesome                              CW Image
     image optimization                           Optimizer
      but requires Unix
         „littleutils“




                 http://wordpress.org/extend/plugins/cw-image-optimizer/
#27 Setup a Caching Plug-in

                                     W3 Total Cache




                http://wordpress.org/extend/plugins/w3-total-cache/
#28 Combine multiple CSS files
 Combine CSS files into one to
  reduce the number of HTTP requests
 Minify the big file by removing white-
  spaces, etc. to reduce file size per request
  – Check: W3Total > Performance > Minify!
 Same goes for JavaScript as well… and put those
  JS files into the footer, if possible!



                                                    65
#29 Do CSS-Sprites




                     http://spriteme.org/
#30 Off-load JS-Libs

                            WP Use Google Libraries




          Simply enable the plug-in &
        serve JS libs from Google‘s CDN!




                 http://wordpress.org/extend/plugins/use-google-libraries/
Section #7: Scale that Sh*t!
WordPress + Cloning Installations
         1. Setup WP w/ optimized settings
            – Permalinks, Plug-ins, Settings, etc.
         2. Use Xcloner to multiply setup
            – Easier vs. re-doing 1/ over & over again
         3. Use ManageWP for maintenance
            – Perfect mass management solution
         4. Or: Update using browser favorites
            – Just replace hostnames in your list


                                                         69
Maybe give xMarkPro a try?

                 Looks very promising…
                 But I didn’t find the time to test it
                       in full detail yet, Sorry.




                                        http://xmarkpro.com/
WordPress + Multisites
         1. Use default WordPress and install
         2. Edit wp-config.php:
           – define('WP_ALLOW_MULTISITE', true);
         3. Install WP “MU Domain Mapping”
           – Copy “sunrise.php” to “wp-content”
         4. Edit wp-config.php, again:
           – define('SUNRISE', 'on');


         Bonus: “Clone Sites for WPMU“
                      http://codex.wordpress.org/Create_A_Network
OMCap 2011 - Online Marketing Konferenz Berlin




                      And that’s it! …
13.10.2011
                  Wait, still not enough?                     72
Section #8: wp-config.php Tweaks
How to do it?

                       Just find this
                          beast…


              … don’t use this
              piece of sh*t…

… and put directives
   before here!
Moving the “wp-content” folder

define('WP_CONTENT_DIR', $_SERVER['DOCUMENT_ROOT'].'/blog/my-wp-content');



                             WP_CONTENT_DIR points to “new”
                             the full local path (no trailing slash)


define('WP_CONTENT_URL', 'http://domain.com/blog/my-wp-content');



                             WP_CONTENT_URL points to “new”
                              full URI (no trailing slash either)
Auto-saving & Revision-handling

define('AUTOSAVE_INTERVAL', 160 );



                               WP uses Ajax to auto-save revisions
                               to the post as you edit. Change the
                                interval if necessary (default=60)

define('WP_POST_REVISIONS', 3);
… or (not recommended):
define('WP_POST_REVISIONS', false);      Limit WP to create a maximum
                                          number of revisions per post
                                           using WP_POST_REVISIONS
SSL Logins & Administration

define('FORCE_SSL_LOGIN', true);



                                Set FORCE_SSL_LOGIN to “true” to
                                force all logins to happen over SSL.
                               (still allows non-SSL admin sessions)

define('FORCE_SSL_ADMIN', true);

                                   Use FORCE_SSL_ADMIN to force all
                                    logins and all admin sessions to
                                    happen over SSL (can be slow…)
Enable DB Auto-Repair

                              Go edit „wp-config.php“
                              and add this line – easy!



 define('WP_ALLOW_REPAIR', true);

    Afterwards, you need to call the repair script manually:
       http://example.com/wp-admin/maint/repair.php
OMCap 2011 - Online Marketing Konferenz Berlin




                                Finally! …
13.10.2011
                   Well, well… one more!                      79
Thanks! Questions?
  mail@grimm-digital.com
  twitter.com/basgr
  linkedin.com/in/bastiangrimm
  facebook.com/grimm.digital

  http://gdig.de/think12

 Bastian Grimm, Managing Partner - Grimm Digital

Más contenido relacionado

La actualidad más candente

Plugins at WordCamp Phoenix
Plugins at WordCamp PhoenixPlugins at WordCamp Phoenix
Plugins at WordCamp Phoenix
Andrew Ryno
 
Don't sh** in the Pool
Don't sh** in the PoolDon't sh** in the Pool
Don't sh** in the Pool
Chris Jean
 

La actualidad más candente (20)

Hardening WordPress - SAScon Manchester 2013 (WordPress Security)
Hardening WordPress - SAScon Manchester 2013 (WordPress Security)Hardening WordPress - SAScon Manchester 2013 (WordPress Security)
Hardening WordPress - SAScon Manchester 2013 (WordPress Security)
 
wordcampUK SEO tools & plugins
wordcampUK SEO tools & pluginswordcampUK SEO tools & plugins
wordcampUK SEO tools & plugins
 
8 Most Common Joomla! Hacks and How to Avoid Them
8 Most Common Joomla! Hacks and How to Avoid Them8 Most Common Joomla! Hacks and How to Avoid Them
8 Most Common Joomla! Hacks and How to Avoid Them
 
WordPress Security Best Practices
WordPress Security Best PracticesWordPress Security Best Practices
WordPress Security Best Practices
 
Plugins at WordCamp Phoenix
Plugins at WordCamp PhoenixPlugins at WordCamp Phoenix
Plugins at WordCamp Phoenix
 
10 Tips to make your Website lightning-fast - SMX Stockholm 2012
10 Tips to make your Website lightning-fast - SMX Stockholm 201210 Tips to make your Website lightning-fast - SMX Stockholm 2012
10 Tips to make your Website lightning-fast - SMX Stockholm 2012
 
Beginning WordPress Plugin Development
Beginning WordPress Plugin DevelopmentBeginning WordPress Plugin Development
Beginning WordPress Plugin Development
 
Joomla! Plugin Development
Joomla! Plugin DevelopmentJoomla! Plugin Development
Joomla! Plugin Development
 
Ako na vlastne WP temy
Ako na vlastne WP temyAko na vlastne WP temy
Ako na vlastne WP temy
 
Don't sh** in the Pool
Don't sh** in the PoolDon't sh** in the Pool
Don't sh** in the Pool
 
The Server Side of Responsive Web Design
The Server Side of Responsive Web DesignThe Server Side of Responsive Web Design
The Server Side of Responsive Web Design
 
Getting started with WordPress development
Getting started with WordPress developmentGetting started with WordPress development
Getting started with WordPress development
 
DrupalCamp Melbourne 2015. Bootstrap: framework and theme.
DrupalCamp Melbourne 2015. Bootstrap: framework and theme.DrupalCamp Melbourne 2015. Bootstrap: framework and theme.
DrupalCamp Melbourne 2015. Bootstrap: framework and theme.
 
Learn How to Use Atomic Design to Make Your Site Manageable and Adaptable
Learn How to Use Atomic Design to Make Your Site Manageable and AdaptableLearn How to Use Atomic Design to Make Your Site Manageable and Adaptable
Learn How to Use Atomic Design to Make Your Site Manageable and Adaptable
 
Structured Data in WordPress
Structured Data in WordPressStructured Data in WordPress
Structured Data in WordPress
 
Webinar: 5 Tricks for WordPress web administrators
Webinar: 5 Tricks for WordPress web administratorsWebinar: 5 Tricks for WordPress web administrators
Webinar: 5 Tricks for WordPress web administrators
 
Building the Media Block in ReactJS
Building the Media Block in ReactJS Building the Media Block in ReactJS
Building the Media Block in ReactJS
 
Joomla 3 JLayout's - Joomladay Netherlands 2014 #jd14nl
Joomla 3 JLayout's - Joomladay Netherlands 2014 #jd14nlJoomla 3 JLayout's - Joomladay Netherlands 2014 #jd14nl
Joomla 3 JLayout's - Joomladay Netherlands 2014 #jd14nl
 
Intro to WordPress Plugin Development
Intro to WordPress Plugin DevelopmentIntro to WordPress Plugin Development
Intro to WordPress Plugin Development
 
5 things to know before updating word press version
5 things to know before updating word press version5 things to know before updating word press version
5 things to know before updating word press version
 

Destacado

Presentation MMEPL Business Plan V1 26 07 2016
Presentation MMEPL Business Plan V1 26 07 2016Presentation MMEPL Business Plan V1 26 07 2016
Presentation MMEPL Business Plan V1 26 07 2016
glsomani
 

Destacado (20)

Citizen Citation
Citizen CitationCitizen Citation
Citizen Citation
 
Practica 4
Practica 4Practica 4
Practica 4
 
skydrive_word_doc
skydrive_word_docskydrive_word_doc
skydrive_word_doc
 
Clave secreta y pública
Clave secreta y públicaClave secreta y pública
Clave secreta y pública
 
scanvoor online
scanvoor onlinescanvoor online
scanvoor online
 
#Saveus
#Saveus#Saveus
#Saveus
 
ACi-TV
ACi-TVACi-TV
ACi-TV
 
Curriculum vitae
Curriculum vitaeCurriculum vitae
Curriculum vitae
 
Lugo fecoht
Lugo fecohtLugo fecoht
Lugo fecoht
 
Rob poster pdf
Rob poster pdfRob poster pdf
Rob poster pdf
 
The Need for Speed - SMX Sydney 2013
The Need for Speed - SMX Sydney 2013The Need for Speed - SMX Sydney 2013
The Need for Speed - SMX Sydney 2013
 
WE310+300B
WE310+300BWE310+300B
WE310+300B
 
New Doc 8
New Doc 8New Doc 8
New Doc 8
 
Ocene2011 12 p2_01
Ocene2011 12 p2_01Ocene2011 12 p2_01
Ocene2011 12 p2_01
 
Dir iiee 2016
Dir iiee 2016Dir iiee 2016
Dir iiee 2016
 
Presentation MMEPL Business Plan V1 26 07 2016
Presentation MMEPL Business Plan V1 26 07 2016Presentation MMEPL Business Plan V1 26 07 2016
Presentation MMEPL Business Plan V1 26 07 2016
 
Presentation on the First ever Reality Musical Travelogue in the history of w...
Presentation on the First ever Reality Musical Travelogue in the history of w...Presentation on the First ever Reality Musical Travelogue in the history of w...
Presentation on the First ever Reality Musical Travelogue in the history of w...
 
Oxus to Kabul- CASA 1000 Survey - SNC Lavalin Canada- An Asian Development Ba...
Oxus to Kabul- CASA 1000 Survey - SNC Lavalin Canada- An Asian Development Ba...Oxus to Kabul- CASA 1000 Survey - SNC Lavalin Canada- An Asian Development Ba...
Oxus to Kabul- CASA 1000 Survey - SNC Lavalin Canada- An Asian Development Ba...
 
SEO for Large Ecommerce Sites - Adam Audette's SMX West Presentation
SEO for Large Ecommerce Sites - Adam Audette's SMX West PresentationSEO for Large Ecommerce Sites - Adam Audette's SMX West Presentation
SEO for Large Ecommerce Sites - Adam Audette's SMX West Presentation
 
Eletricidade básica ( Senai )
Eletricidade básica ( Senai )Eletricidade básica ( Senai )
Eletricidade básica ( Senai )
 

Similar a WordPress Optimization & Security - ThinkVisibility 2012, Leeds

Presentation to SAIT Students - Dec 2013
Presentation to SAIT Students - Dec 2013Presentation to SAIT Students - Dec 2013
Presentation to SAIT Students - Dec 2013
Think Media Inc.
 
WordCamp Philippines 2009: WordPress In The Wild
WordCamp Philippines 2009: WordPress In The WildWordCamp Philippines 2009: WordPress In The Wild
WordCamp Philippines 2009: WordPress In The Wild
rebelpixel
 
Word Camp Ph 2009 Word Press In The Wild
Word Camp Ph 2009   Word Press In The WildWord Camp Ph 2009   Word Press In The Wild
Word Camp Ph 2009 Word Press In The Wild
rebelpixel
 

Similar a WordPress Optimization & Security - ThinkVisibility 2012, Leeds (20)

Optimize wordpress
Optimize wordpressOptimize wordpress
Optimize wordpress
 
Making the Most of Plug-ins - WordCamp Toronto 2008
Making the Most of Plug-ins - WordCamp Toronto 2008Making the Most of Plug-ins - WordCamp Toronto 2008
Making the Most of Plug-ins - WordCamp Toronto 2008
 
WordPress Security
WordPress SecurityWordPress Security
WordPress Security
 
WordPress 2.5 Overview - Rich Media Institute
WordPress 2.5 Overview - Rich Media InstituteWordPress 2.5 Overview - Rich Media Institute
WordPress 2.5 Overview - Rich Media Institute
 
Presentation to SAIT Students - Dec 2013
Presentation to SAIT Students - Dec 2013Presentation to SAIT Students - Dec 2013
Presentation to SAIT Students - Dec 2013
 
Now That's What I Call WordPress Security 2010
Now That's What I Call WordPress Security 2010Now That's What I Call WordPress Security 2010
Now That's What I Call WordPress Security 2010
 
WordPress Plugins and Security
WordPress Plugins and SecurityWordPress Plugins and Security
WordPress Plugins and Security
 
WordPress Security Best Practices
WordPress Security Best PracticesWordPress Security Best Practices
WordPress Security Best Practices
 
WordCamp Philippines 2009: WordPress In The Wild
WordCamp Philippines 2009: WordPress In The WildWordCamp Philippines 2009: WordPress In The Wild
WordCamp Philippines 2009: WordPress In The Wild
 
WordPress End-User Security
WordPress End-User SecurityWordPress End-User Security
WordPress End-User Security
 
WordPress Security Updated - NYC Meetup 2009
WordPress Security Updated - NYC Meetup 2009WordPress Security Updated - NYC Meetup 2009
WordPress Security Updated - NYC Meetup 2009
 
WordPress Resources Nov 2014
WordPress Resources Nov 2014WordPress Resources Nov 2014
WordPress Resources Nov 2014
 
Word Press Website Tips
Word Press Website TipsWord Press Website Tips
Word Press Website Tips
 
Amazing WordPress & Productivity Tips
Amazing WordPress & Productivity TipsAmazing WordPress & Productivity Tips
Amazing WordPress & Productivity Tips
 
How To Get Started After Installing Wordpress ( Wordcamp, Delhi )
How To Get Started After Installing Wordpress ( Wordcamp, Delhi )How To Get Started After Installing Wordpress ( Wordcamp, Delhi )
How To Get Started After Installing Wordpress ( Wordcamp, Delhi )
 
Word Camp Ph 2009 Word Press In The Wild
Word Camp Ph 2009   Word Press In The WildWord Camp Ph 2009   Word Press In The Wild
Word Camp Ph 2009 Word Press In The Wild
 
Protect Your WordPress From The Inside Out
Protect Your WordPress From The Inside OutProtect Your WordPress From The Inside Out
Protect Your WordPress From The Inside Out
 
WordPress Security Best Practices 2019 Update
WordPress Security Best Practices 2019 UpdateWordPress Security Best Practices 2019 Update
WordPress Security Best Practices 2019 Update
 
Wordcampuk 09 (wordcampuk)
Wordcampuk 09 (wordcampuk)Wordcampuk 09 (wordcampuk)
Wordcampuk 09 (wordcampuk)
 
20 tips to Improving Your WordPress Site...for Beginners
20 tips to Improving Your WordPress Site...for Beginners20 tips to Improving Your WordPress Site...for Beginners
20 tips to Improving Your WordPress Site...for Beginners
 

Más de Bastian Grimm

Más de Bastian Grimm (20)

Migration Best Practices - Peak Ace on Air
Migration Best Practices - Peak Ace on AirMigration Best Practices - Peak Ace on Air
Migration Best Practices - Peak Ace on Air
 
SEOday Köln 2020 - Surprise, Surprise - 5 SEO secrets
SEOday Köln 2020 - Surprise, Surprise - 5 SEO secretsSEOday Köln 2020 - Surprise, Surprise - 5 SEO secrets
SEOday Köln 2020 - Surprise, Surprise - 5 SEO secrets
 
Technical SEO vs. User Experience - Bastian Grimm, Peak Ace AG
Technical SEO vs. User Experience - Bastian Grimm, Peak Ace AGTechnical SEO vs. User Experience - Bastian Grimm, Peak Ace AG
Technical SEO vs. User Experience - Bastian Grimm, Peak Ace AG
 
Advanced data-driven technical SEO - SMX London 2019
Advanced data-driven technical SEO - SMX London 2019Advanced data-driven technical SEO - SMX London 2019
Advanced data-driven technical SEO - SMX London 2019
 
Migration Best Practices - SMX West 2019
Migration Best Practices - SMX West 2019Migration Best Practices - SMX West 2019
Migration Best Practices - SMX West 2019
 
Migration Best Practices - Search Y 2019, Paris
Migration Best Practices - Search Y 2019, ParisMigration Best Practices - Search Y 2019, Paris
Migration Best Practices - Search Y 2019, Paris
 
Migration Best Practices - SEOkomm 2018
Migration Best Practices - SEOkomm 2018Migration Best Practices - SEOkomm 2018
Migration Best Practices - SEOkomm 2018
 
Data-driven Technical SEO: Logfile Auditing - SEOkomm 2018
Data-driven Technical SEO: Logfile Auditing - SEOkomm 2018Data-driven Technical SEO: Logfile Auditing - SEOkomm 2018
Data-driven Technical SEO: Logfile Auditing - SEOkomm 2018
 
The need for Speed: Advanced #webperf - SEOday 2018
The need for Speed: Advanced #webperf - SEOday 2018The need for Speed: Advanced #webperf - SEOday 2018
The need for Speed: Advanced #webperf - SEOday 2018
 
OK Google, Whats next? - OMT Wiesbaden 2018
OK Google, Whats next? - OMT Wiesbaden 2018OK Google, Whats next? - OMT Wiesbaden 2018
OK Google, Whats next? - OMT Wiesbaden 2018
 
Super speed around the globe - SearchLeeds 2018
Super speed around the globe - SearchLeeds 2018Super speed around the globe - SearchLeeds 2018
Super speed around the globe - SearchLeeds 2018
 
Migration Best Practices - SMX London 2018
Migration Best Practices - SMX London 2018Migration Best Practices - SMX London 2018
Migration Best Practices - SMX London 2018
 
Welcome to a new reality - DeepCrawl Webinar 2018
Welcome to a new reality - DeepCrawl Webinar 2018Welcome to a new reality - DeepCrawl Webinar 2018
Welcome to a new reality - DeepCrawl Webinar 2018
 
Web Performance Madness - brightonSEO 2018
Web Performance Madness - brightonSEO 2018Web Performance Madness - brightonSEO 2018
Web Performance Madness - brightonSEO 2018
 
Digitale Assistenzsysteme - SMX München 2018
Digitale Assistenzsysteme - SMX München 2018Digitale Assistenzsysteme - SMX München 2018
Digitale Assistenzsysteme - SMX München 2018
 
AMP - SMX München 2018
AMP - SMX München 2018AMP - SMX München 2018
AMP - SMX München 2018
 
How fast is fast enough - SMX West 2018
How fast is fast enough - SMX West 2018How fast is fast enough - SMX West 2018
How fast is fast enough - SMX West 2018
 
Whats Next in SEO & CRO - 3XE Conference 2018 Dublin
Whats Next in SEO & CRO - 3XE Conference 2018 DublinWhats Next in SEO & CRO - 3XE Conference 2018 Dublin
Whats Next in SEO & CRO - 3XE Conference 2018 Dublin
 
Migration Best-Practices: So gelingt der erfolgreiche Relaunch - SEOkomm 2017
Migration Best-Practices: So gelingt der erfolgreiche Relaunch - SEOkomm 2017Migration Best-Practices: So gelingt der erfolgreiche Relaunch - SEOkomm 2017
Migration Best-Practices: So gelingt der erfolgreiche Relaunch - SEOkomm 2017
 
Digitale Assistenten - OMX 2017
Digitale Assistenten - OMX 2017Digitale Assistenten - OMX 2017
Digitale Assistenten - OMX 2017
 

Último

0183760ssssssssssssssssssssssssssss00101011 (27).pdf
0183760ssssssssssssssssssssssssssss00101011 (27).pdf0183760ssssssssssssssssssssssssssss00101011 (27).pdf
0183760ssssssssssssssssssssssssssss00101011 (27).pdf
Renandantas16
 
FULL ENJOY Call Girls In Mahipalpur Delhi Contact Us 8377877756
FULL ENJOY Call Girls In Mahipalpur Delhi Contact Us 8377877756FULL ENJOY Call Girls In Mahipalpur Delhi Contact Us 8377877756
FULL ENJOY Call Girls In Mahipalpur Delhi Contact Us 8377877756
dollysharma2066
 
Call Girls In DLf Gurgaon ➥99902@11544 ( Best price)100% Genuine Escort In 24...
Call Girls In DLf Gurgaon ➥99902@11544 ( Best price)100% Genuine Escort In 24...Call Girls In DLf Gurgaon ➥99902@11544 ( Best price)100% Genuine Escort In 24...
Call Girls In DLf Gurgaon ➥99902@11544 ( Best price)100% Genuine Escort In 24...
lizamodels9
 
Call Girls From Pari Chowk Greater Noida ❤️8448577510 ⊹Best Escorts Service I...
Call Girls From Pari Chowk Greater Noida ❤️8448577510 ⊹Best Escorts Service I...Call Girls From Pari Chowk Greater Noida ❤️8448577510 ⊹Best Escorts Service I...
Call Girls From Pari Chowk Greater Noida ❤️8448577510 ⊹Best Escorts Service I...
lizamodels9
 
Call Girls in Delhi, Escort Service Available 24x7 in Delhi 959961-/-3876
Call Girls in Delhi, Escort Service Available 24x7 in Delhi 959961-/-3876Call Girls in Delhi, Escort Service Available 24x7 in Delhi 959961-/-3876
Call Girls in Delhi, Escort Service Available 24x7 in Delhi 959961-/-3876
dlhescort
 
Call Girls Kengeri Satellite Town Just Call 👗 7737669865 👗 Top Class Call Gir...
Call Girls Kengeri Satellite Town Just Call 👗 7737669865 👗 Top Class Call Gir...Call Girls Kengeri Satellite Town Just Call 👗 7737669865 👗 Top Class Call Gir...
Call Girls Kengeri Satellite Town Just Call 👗 7737669865 👗 Top Class Call Gir...
amitlee9823
 

Último (20)

Call Girls Ludhiana Just Call 98765-12871 Top Class Call Girl Service Available
Call Girls Ludhiana Just Call 98765-12871 Top Class Call Girl Service AvailableCall Girls Ludhiana Just Call 98765-12871 Top Class Call Girl Service Available
Call Girls Ludhiana Just Call 98765-12871 Top Class Call Girl Service Available
 
0183760ssssssssssssssssssssssssssss00101011 (27).pdf
0183760ssssssssssssssssssssssssssss00101011 (27).pdf0183760ssssssssssssssssssssssssssss00101011 (27).pdf
0183760ssssssssssssssssssssssssssss00101011 (27).pdf
 
Organizational Transformation Lead with Culture
Organizational Transformation Lead with CultureOrganizational Transformation Lead with Culture
Organizational Transformation Lead with Culture
 
Ensure the security of your HCL environment by applying the Zero Trust princi...
Ensure the security of your HCL environment by applying the Zero Trust princi...Ensure the security of your HCL environment by applying the Zero Trust princi...
Ensure the security of your HCL environment by applying the Zero Trust princi...
 
FULL ENJOY Call Girls In Mahipalpur Delhi Contact Us 8377877756
FULL ENJOY Call Girls In Mahipalpur Delhi Contact Us 8377877756FULL ENJOY Call Girls In Mahipalpur Delhi Contact Us 8377877756
FULL ENJOY Call Girls In Mahipalpur Delhi Contact Us 8377877756
 
Mondelez State of Snacking and Future Trends 2023
Mondelez State of Snacking and Future Trends 2023Mondelez State of Snacking and Future Trends 2023
Mondelez State of Snacking and Future Trends 2023
 
Call Girls In DLf Gurgaon ➥99902@11544 ( Best price)100% Genuine Escort In 24...
Call Girls In DLf Gurgaon ➥99902@11544 ( Best price)100% Genuine Escort In 24...Call Girls In DLf Gurgaon ➥99902@11544 ( Best price)100% Genuine Escort In 24...
Call Girls In DLf Gurgaon ➥99902@11544 ( Best price)100% Genuine Escort In 24...
 
Katrina Personal Brand Project and portfolio 1
Katrina Personal Brand Project and portfolio 1Katrina Personal Brand Project and portfolio 1
Katrina Personal Brand Project and portfolio 1
 
Call Girls In Panjim North Goa 9971646499 Genuine Service
Call Girls In Panjim North Goa 9971646499 Genuine ServiceCall Girls In Panjim North Goa 9971646499 Genuine Service
Call Girls In Panjim North Goa 9971646499 Genuine Service
 
MONA 98765-12871 CALL GIRLS IN LUDHIANA LUDHIANA CALL GIRL
MONA 98765-12871 CALL GIRLS IN LUDHIANA LUDHIANA CALL GIRLMONA 98765-12871 CALL GIRLS IN LUDHIANA LUDHIANA CALL GIRL
MONA 98765-12871 CALL GIRLS IN LUDHIANA LUDHIANA CALL GIRL
 
Mysore Call Girls 8617370543 WhatsApp Number 24x7 Best Services
Mysore Call Girls 8617370543 WhatsApp Number 24x7 Best ServicesMysore Call Girls 8617370543 WhatsApp Number 24x7 Best Services
Mysore Call Girls 8617370543 WhatsApp Number 24x7 Best Services
 
A DAY IN THE LIFE OF A SALESMAN / WOMAN
A DAY IN THE LIFE OF A  SALESMAN / WOMANA DAY IN THE LIFE OF A  SALESMAN / WOMAN
A DAY IN THE LIFE OF A SALESMAN / WOMAN
 
Call Girls From Pari Chowk Greater Noida ❤️8448577510 ⊹Best Escorts Service I...
Call Girls From Pari Chowk Greater Noida ❤️8448577510 ⊹Best Escorts Service I...Call Girls From Pari Chowk Greater Noida ❤️8448577510 ⊹Best Escorts Service I...
Call Girls From Pari Chowk Greater Noida ❤️8448577510 ⊹Best Escorts Service I...
 
It will be International Nurses' Day on 12 May
It will be International Nurses' Day on 12 MayIt will be International Nurses' Day on 12 May
It will be International Nurses' Day on 12 May
 
Call Girls in Delhi, Escort Service Available 24x7 in Delhi 959961-/-3876
Call Girls in Delhi, Escort Service Available 24x7 in Delhi 959961-/-3876Call Girls in Delhi, Escort Service Available 24x7 in Delhi 959961-/-3876
Call Girls in Delhi, Escort Service Available 24x7 in Delhi 959961-/-3876
 
Call Girls Kengeri Satellite Town Just Call 👗 7737669865 👗 Top Class Call Gir...
Call Girls Kengeri Satellite Town Just Call 👗 7737669865 👗 Top Class Call Gir...Call Girls Kengeri Satellite Town Just Call 👗 7737669865 👗 Top Class Call Gir...
Call Girls Kengeri Satellite Town Just Call 👗 7737669865 👗 Top Class Call Gir...
 
VVVIP Call Girls In Greater Kailash ➡️ Delhi ➡️ 9999965857 🚀 No Advance 24HRS...
VVVIP Call Girls In Greater Kailash ➡️ Delhi ➡️ 9999965857 🚀 No Advance 24HRS...VVVIP Call Girls In Greater Kailash ➡️ Delhi ➡️ 9999965857 🚀 No Advance 24HRS...
VVVIP Call Girls In Greater Kailash ➡️ Delhi ➡️ 9999965857 🚀 No Advance 24HRS...
 
Enhancing and Restoring Safety & Quality Cultures - Dave Litwiller - May 2024...
Enhancing and Restoring Safety & Quality Cultures - Dave Litwiller - May 2024...Enhancing and Restoring Safety & Quality Cultures - Dave Litwiller - May 2024...
Enhancing and Restoring Safety & Quality Cultures - Dave Litwiller - May 2024...
 
Dr. Admir Softic_ presentation_Green Club_ENG.pdf
Dr. Admir Softic_ presentation_Green Club_ENG.pdfDr. Admir Softic_ presentation_Green Club_ENG.pdf
Dr. Admir Softic_ presentation_Green Club_ENG.pdf
 
Uneak White's Personal Brand Exploration Presentation
Uneak White's Personal Brand Exploration PresentationUneak White's Personal Brand Exploration Presentation
Uneak White's Personal Brand Exploration Presentation
 

WordPress Optimization & Security - ThinkVisibility 2012, Leeds

  • 1. WordPress Optimization and Security Leeds, September 2012 http://gdig.de/think12 Bastian Grimm, Managing Partner - Grimm Digital
  • 2. About me  Background: PHP & Java – Dev. CMS, shops & forums – Wazap! Game Search Engine  Online Marketing since 2004 – SEO strategy consulting, in-house trainings & workshops, WordPress @basgr SEO, bla bla…  Links, Links, Links…need some?  Stuff to play with… 2
  • 3. Get the Slide-Deck http://gdig.de/think12 3
  • 4. Credits for facts & graphic: http://yoast.com/wordpress-stats/
  • 5. Credits for facts & graphic: http://yoast.com/wordpress-stats/
  • 7. #1 Settings > PermaLinks Get rid of those dates (IDs), they look awful! /%postname%/
  • 8. #2 Settings > Privacy Make sure you actually allow search engine to access your contents! 8
  • 9. #3 Fix your Themes’ Page Title Open header.php in your themes’ folder, search for “wp_title” – it’s going be the first match! <title><?php wp_title(); ?></title> That’s the ONLY thing you need! 9
  • 11. #4 WordPress SEO by Yoast 1/9 Make sure to uncheck this! Enables setting noindex, canonical & 301 (for users) on a per-post basis
  • 12. #4 WordPress SEO by Yoast 2/9 You surely don‘t need paged archives, categories, etc. – they‘re targeting the same keys anyways. Affiliate sites mainly have pages, no need for RSS. Check all of them!
  • 13. #4 WordPress SEO by Yoast 3/9 Set proper page title & description, also choose author for SERP listing
  • 14. #4 WordPress SEO by Yoast 4/9 Use help section to get details an all 30+ variables! Keep unchecked unless you’re publishing news. Default value has been changed w/ last update.
  • 15. In addition: Post-level settings You can overwrite defaults on a per-post level using the “Advanced” settings. 15
  • 16. #4 WordPress SEO by Yoast 5/9 Usually you just need one (unless having a HUGE amount of content) – “noindex” the other one!
  • 17. #4 WordPress SEO by Yoast 6/9 Especially w/ single-authored blogs, those are a 1:1 copy of your homepage. 301 is the better solution!
  • 18. #4 WordPress SEO by Yoast 7/9 For larger sites, check to auto- generate XML sitemaps. Remember to check excludes!
  • 19. #4 WordPress SEO by Yoast 8/9 Make absolutely sure you‘re using these!
  • 20. BTW: Clean those URL-Slugs WP Permalauts Especially important for Germany, France, etc. http://wordpress.org/extend/plugins/wp-permalauts/
  • 21. #4 WordPress SEO by Yoast 9/9
  • 22. Trust me… things change! Check out SEO data transporter to switch SEO plug-ins! 22
  • 23. Migration made easy: Painless switching! SEO Data Transporter http://wordpress.org/extend/plugins/seo-data-transporter/
  • 25. Make absolutely sure you only use plug-ins from trusted authors!
  • 26. #5 Fix your Pagination Better crawl-ability, better WP-PageNavi indexation – what else u want? WordPress pagination s*cks, replace it! http://wordpress.org/extend/plugins/wp-pagenavi/
  • 27. #6 Improve internal Cross-Linking Yet Another Related Posts Plugin http://wordpress.org/extend/plugins/yet-another-related-posts-plugin/
  • 28. #7 Auto-optimize Image Attributes SEO Friendly Images Forces post title & image name to be used as img alt-attribute http://wordpress.org/extend/plugins/seo-image/
  • 29. #8 Redirect old Contents Redirection http://wordpress.org/extend/plugins/redirection/
  • 30. #9 Mask your Affiliate Links Eclipse Link Cloaker http://eclipsecloaker.com/
  • 31. Don’t forget to tweak your robots.txt We don‘t want some WP User-Agent: * specific files & folders Disallow: /wp-admin/ Disallow: /feed/ Disallow: /comments/feed/ Disallow: /*/trackback/$ Disallow: /*/feed/$ Disallow: /*.css$ Adjust according to your Disallow: /*.js$ Disallow: /r/ Link Cloaker settings. 31
  • 32. #10 Have Rich-Snippets if possible Schema Creator http://wordpress.org/extend/plugins/schema-creator/
  • 34. #11 Never EVER do this! These sites are more than worse…
  • 35. A quick peak into some theme files… LOL! „family friendly“ links – my a*s… 35
  • 36. A quick peak into some theme files… functions.php: This theme won‘t be working without those links… 36
  • 37. #12 Always use TAC to do a pre-check! Theme Authenticity Checker (TAC) http://builtbackwards.com/projects/tac/
  • 38. It get’s worse: base64 encoded footer Are you really sure you want to see that footer.php file? 38
  • 40. If you are REALLY curious…  http://ottodestruct.com/decoder.php  http://www.tareeinternet.com/scripts/byterun.php  http://www.tareeinternet.com/scripts/decrypt.php  http://rot13-encoder-decoder.waraxe.us/ The PHP code isn’t “really” encrypted, rather kind of obfuscated. Reversing is possible!
  • 41. PLEASE… stay away from “free” WordPress themes – they’re not free, really!
  • 42. #13 Keep your installation clean Remove all non-active plug-ins as well as themes! 42
  • 43. #14 Do updates regularly!  WP Updates Notifier to get emails on out-dated components (core, themes & plug-ins) for all blogs: – http://wordpress.org/extend/plugins /wp-updates-notifier/  ManageWP can do one-click mass updates (core, themes, plug-ins again) for all your blogs: – http://managewp.com/features
  • 44. #15 Daily scan your Theme WP AntiVirus http://wordpress.org/extend/plugins/antivirus/
  • 45. #16 Harden your Security Settings Secure WordPress Most important: Remove version number from ALL components & block malicious URL requests. http://wordpress.org/extend/plugins/secure-wordpress/
  • 46. #17 Protect wp-admin by .htaccess Put an .htaccess to your /wp-admin/ for basic passwd. protection. You can also try the “Lockdown WP Admin” plug-in to protect PHP files in wp-admin as well as the login itself. http://wordpress.org/extend/plugins/lockdown-wp-admin/
  • 47. #18 Fix File & Folder Permissions WP-Security Scan Very important: chmod your wp-config.php to be read-only! http://wordpress.org/extend/plugins/wp-security-scan/
  • 49. #19 Do a Theme Test Drive Live-Testing a new theme without anyone else noticing… nice! http://wordpress.org/extend/plugins/theme-test-drive/
  • 50. #20 Debug your WordPress #1 P3 (Plugin Perf. Profiler) http://wordpress.org/extend/plugins/p3-profiler/
  • 51. #20 Debug your WordPress #1 http://wordpress.org/extend/plugins/p3-profiler/
  • 52. #20 Debug your WordPress #1 http://wordpress.org/extend/plugins/p3-profiler/
  • 53. #20 Debug your WordPress #1 http://wordpress.org/extend/plugins/p3-profiler/
  • 54. #21 Debug your WordPress #2 Debug Objects http://wordpress.org/extend/plugins/debug-objects/
  • 55. #22 Enable Akismet Just enable, get an API key and turn „auto-delete“ on!
  • 56. #23 Backup Database & Files BackWPup http://wordpress.org/extend/plugins/backwpup/
  • 57. #24 Watch out for Errors  Knowledge is power  Use a 404 logger – Analytics software – Redirection (built-in) – Webserver logs  Setup 301 redirects accordingly using “Redirection”, again. Image-Credits: http://gdig.de/i
  • 58. #25 Maintain Categories & Tags Term Mgmt. Tools Mass merge & change parents http://wordpress.org/extend/plugins/term-management-tools/
  • 60. GWT Site Performance Info This is really not so good…! 60
  • 61. Scoring domains by performance; check it out! https://developers.google.com/pagespeed/
  • 62. #26 Compress those Images 13.2% savings WP Smush.it for one image! http://wordpress.org/extend/plugins/wp-smushit/
  • 63. Or try this one - if you don’t like Yahoo… Run‘s awesome CW Image image optimization Optimizer but requires Unix „littleutils“ http://wordpress.org/extend/plugins/cw-image-optimizer/
  • 64. #27 Setup a Caching Plug-in W3 Total Cache http://wordpress.org/extend/plugins/w3-total-cache/
  • 65. #28 Combine multiple CSS files  Combine CSS files into one to reduce the number of HTTP requests  Minify the big file by removing white- spaces, etc. to reduce file size per request – Check: W3Total > Performance > Minify!  Same goes for JavaScript as well… and put those JS files into the footer, if possible! 65
  • 66. #29 Do CSS-Sprites http://spriteme.org/
  • 67. #30 Off-load JS-Libs WP Use Google Libraries Simply enable the plug-in & serve JS libs from Google‘s CDN! http://wordpress.org/extend/plugins/use-google-libraries/
  • 68. Section #7: Scale that Sh*t!
  • 69. WordPress + Cloning Installations 1. Setup WP w/ optimized settings – Permalinks, Plug-ins, Settings, etc. 2. Use Xcloner to multiply setup – Easier vs. re-doing 1/ over & over again 3. Use ManageWP for maintenance – Perfect mass management solution 4. Or: Update using browser favorites – Just replace hostnames in your list 69
  • 70. Maybe give xMarkPro a try? Looks very promising… But I didn’t find the time to test it in full detail yet, Sorry. http://xmarkpro.com/
  • 71. WordPress + Multisites 1. Use default WordPress and install 2. Edit wp-config.php: – define('WP_ALLOW_MULTISITE', true); 3. Install WP “MU Domain Mapping” – Copy “sunrise.php” to “wp-content” 4. Edit wp-config.php, again: – define('SUNRISE', 'on'); Bonus: “Clone Sites for WPMU“ http://codex.wordpress.org/Create_A_Network
  • 72. OMCap 2011 - Online Marketing Konferenz Berlin And that’s it! … 13.10.2011 Wait, still not enough? 72
  • 74. How to do it? Just find this beast… … don’t use this piece of sh*t… … and put directives before here!
  • 75. Moving the “wp-content” folder define('WP_CONTENT_DIR', $_SERVER['DOCUMENT_ROOT'].'/blog/my-wp-content'); WP_CONTENT_DIR points to “new” the full local path (no trailing slash) define('WP_CONTENT_URL', 'http://domain.com/blog/my-wp-content'); WP_CONTENT_URL points to “new” full URI (no trailing slash either)
  • 76. Auto-saving & Revision-handling define('AUTOSAVE_INTERVAL', 160 ); WP uses Ajax to auto-save revisions to the post as you edit. Change the interval if necessary (default=60) define('WP_POST_REVISIONS', 3); … or (not recommended): define('WP_POST_REVISIONS', false); Limit WP to create a maximum number of revisions per post using WP_POST_REVISIONS
  • 77. SSL Logins & Administration define('FORCE_SSL_LOGIN', true); Set FORCE_SSL_LOGIN to “true” to force all logins to happen over SSL. (still allows non-SSL admin sessions) define('FORCE_SSL_ADMIN', true); Use FORCE_SSL_ADMIN to force all logins and all admin sessions to happen over SSL (can be slow…)
  • 78. Enable DB Auto-Repair Go edit „wp-config.php“ and add this line – easy! define('WP_ALLOW_REPAIR', true); Afterwards, you need to call the repair script manually: http://example.com/wp-admin/maint/repair.php
  • 79. OMCap 2011 - Online Marketing Konferenz Berlin Finally! … 13.10.2011 Well, well… one more! 79
  • 80.
  • 81. Thanks! Questions? mail@grimm-digital.com twitter.com/basgr linkedin.com/in/bastiangrimm facebook.com/grimm.digital http://gdig.de/think12 Bastian Grimm, Managing Partner - Grimm Digital