SlideShare a Scribd company logo
1 of 248
Download to read offline
T H E M O S T E X T E N S I V E A N D
D E T A I L E D G U I D E O F A D V A N C E D S E O
T E C H N I Q U E S T H A T E X I S T S T O D A Y
T H E A D V A N C E D
G U I D E T O
T o my readers, I wanted to give you the most ex tensive and
detailed guide of advanced SE O techniq ues that ex ists today.
T his resource is piled to the top with tactile, immediately
actionable things you can do to your website, to improve
rankings, performance and traffic. E verything from schema.org
to mobile search to link building and site speed. I want you to
all be insanely successful and prosperous on the web!
If you’ ve read SE O moz’ s B eginner’ s G uide to SE O and want
more, or you’ ve read my other basic guides to SE O and want
more - this A dvanced G uide T o SE O is for you. If you’ ve
already mastered the basics of SE O like writing title tags, the
basics of link building or data research on the web and want
more - this guide is for you! It’ s for anyone looking to take
their success on the web to the nex t level; bloggers, business
owners, eCommerce and even affiliate marketers. T his guide
provides you with dozens and dozens of things you can sit
down and do right now to improve your traffic from organic
search on the web.
INTRODUCTION
W h y D i d I W r i t e T h i s G u i d e ?
W h o I s T h i s G u i d e F o r ?
I would suggest reading the whole thing! W hile you may not
have to apply every section to your site, you will gain an
understanding of the concepts in each part. SE O can be broken
into pieces, but it definitely fits together as one big picture, you
you’ ll want to read it all.
H o w M u c h O f T h i s
G u i d e S h o u l d I R e a d ?
t
ken
you
BY NEIL PATEL
AND
SUJAN PATEL
SEOSEOSEOSEOSEOSEOSEOSEOSEOSEOSEOSEOSEOSEOSEOSEOSEOSEOSEOSEOSEOSEOSEOSEOSEOSEOSEOSEOSEOSEOSEOSEOSEOSEOSEOSEOSEOSEOSEOSEOSEOSEOSEOSEOSEOSEOSEOSEOSEOSEOSEOSEOSEOSEOSEOSEOSEOSEOSEOSEOSEOSEOSEOSEOSEOSEOSEOSEOSEOSEOSEOSEOSEOSEOSEOSEOSEOSEOSEOSEOSEOSEOSEOSEOSEO
You could have the best content in the world, the most amazing
audience and even traffic coming from all kinds of places like social
media and referrals. B ut if the search engines can’ t properly access,
crawl and index your site none of that matters for SE O . T hat is why
in this section you’ re going to learn how to look at your website from
the search engine’ s point of view. You’ re going to be able to do a full
crawl of your own site, handle migrations, redesigns and much more.
C H A P T E R O N E
I N D E X A T I O N & A C C E S S I B I L I T Y
It is well known by now that G oogle has said site speed is a small ranking factor
( about 1 % ) . T his is tiny, but it’ s rare for G oogle to say that anything has a definite
effect on rankings. So it makes so much sense to follow this advice. P lus, user low
fast and responsive sites. T hey will feel more in control of their ex perience,
consume your amazing content more efficiently and convert better.
A nd after section one, the engines are index ing your site better, so let’ s take it to
the nex t level. T his section will teach you how to measure and analyze your site’ s
speed and performance, as well as give some advanced actionable ways to improve.
S I T E S P E E D & P E R F O R M A N C E
T he maj ority of new websites created today are built upon
W ordP ress. Q uickSprout.com is built on W ordP ress and
most of my readers have site using this popular CM S. I find
most people get the basics pretty good for W ordP ress and
SE O , but we’ re going to take things a bit further in this
section. You’ ll find a detailed walkthrough of setting up the
SE O for W ordP ress plugin, improving your W ordP ress speed
and performance, creating a custom author page and more.
C H A P T E R F O U R
W O R D P R E S S
SE O is growing fast and changing everyday. It’ s way more
than j ust title tags and some back links. You have to have a
semantically relevant site. O ne in which the engines ( and
people! ) understand what the page is about in relation to real
world things - like the concept of actors relating to movies or
people having a birthday.
R ead this section to stay ahead of the new search frontiers.
C H A P T E R T H R E E
C H A P T E R T W O
N E W S E A R C H
P art of what makes SE O uniq ue, fun and challenging is that we
get to be like detectives on the web. W e have to be good at pulling
data from different places and getting that data no matter what it
takes sometimes. Some new ways have come about lately for
doing so. W e’ re going to walk step by step through nine specific
ways you can collect data more effectively.
C H A P T E R F I V E
A D V A N C E D D A T A R E S E A R C H
A lthough panda and penguin make it harder to build links like we used
to, once you have ex ceptional content you still need to employ some
killer techniq ues to get that content out there, get it in front of the eyes
that matter, and get people to link back to that content.
T his section has fifteen in depth and actionable ways you can start
building links to that content immediately. E verything from obtaining a
link worthy domain, to using alerts like IF T T T and more.
C H A P T E R E I G H T
L I N K B U I L D I N G T E C H N I Q U E S
I’ m sure you’ ve all used the adwords keyword tool a lot,
but what about other keyword research tools and
techniq ues? T hat’ s what this section will cover. W e’ re
going to go beyond j ust the data G oogle has and use other
keyword tools, search suggest scraping, internal site
search and more.
C H A P T E R S I X
K E Y W O R D R E S E A R C H
Since P enguin and P anda, it’ s harder and
harder to build links the old way; through
directories, email blasts, commenting, or
black hat ways like blog networks and
spinning. T his section will give you some
solid ways to build some content that is link
worthy and valuable to your visitors and will
keep people coming back time and time again.
C H A P T E R S E V E N
L I N K B U I L D I N G
W I T H C O N T E N T
You might conq uer the rankings in universal search for your
article, post or product. B ut what about photo? W hat about
mobile and local search? H ere I give you some techniq ues for
optimizing search verticals to perform even better on the web.
C H A P T E R N I N E
S E A R C H V E R T I C A L S
S I M P L Y P U T ; U S E T H I S G U I D E T O T A K E Y O U R
S E O T O T H E N E X T L E V E L .
T A K E M E T O
CHAPTER ONE
T A K E M E T O
CHAPTER ONE
C H A P T E R E I G H T
worthy and valuable to your visitors and will
keep people coming back time and time again.
T H E A D V A N C E D
G U I D E T O
SEOSEOSEOSEOSEOSEOSEOSEOSEOSEOSEOSEOSEOSEOSEOSEOSEOSEOSEOSEOSEOSEOSEOSEOSEOSEOSEOSEOSEOSEOSEOSEOSEOSEOSEOSEOSEOSEOSEOSEOSEOSEOSEOSEOSEOSEOSEOSEOSEOSEOSEOSEOSEOSEOSEOSEOSEOSEOSEOSEOSEOSEOSEOSEOSEOSEOSEOSEOSEOSEOSEOSEOSEOSEOSEOSEOSEOSEO
0101010101CHAPTER 01
I N D E X A T I O N & A C C E S S I B I L I T Y
W elcome to the first chapter of my guide to A dvanced SE O .
In this section you’ re going to learn some advanced
techniq ues for evaluation and optimization your website for
index ation and accessibility.
T his doesn’ t j ust mean accessibility for the search engines
but accessibility for humans too. T hat’ s why this section
covers best practices for both engines and users - with this
like installing G oogle translate to making A J A X crawlable.
A fter applying to techniq ues in this section to your website
where most applicable, you should have an ex ceptionally
crawlable and accessible website.
W hen optimizing your site for SE O , wouldn’ t it make sense to
put yourself in the shoes of the search engine? A nd “ see” your
site like a search engine does? N ow you all know you can
simply “ view source” to see the H T M L source code from any
browser. B ut I’ ve got a killer method that will really put you in
their shoes and reveal possible holes in your technical SE O you
can easily plug up.
I nstall the Plugins
You’ re going to want to use F ireF ox to do this. H ere’ s the plugins:
W eb D eveloper
https://addon s.moz il l a.org/e n - U S /fire fox /addon /we b - de v e l ope r/
User A gent S witcher
https://addon s.moz il l a.org/e n - U S /fire fox /addon /u se r- age n t- switche r/
B R O W S E Y O U R
S I T E L I K E A
S E A R C H E N G I N E
NO 1
S T E P O N E
BY NEIL PATEL
AND
SUJAN PATEL
G o to “ preferences” and “ content” and
uncheck “ E nable J avaScript” .
W e do this because items like menus, links
and drop downs need to be available to
G ooglebot without J avaScript. If they are
buried within your J S than G oogle can not
crawl them!
W hat does Q uickS prout look like to
G ooglebot?
T his is j ust the top ( because otherwise the
whole page is really L O N G ) . B ut you can
see that the menu appears as clickable
links, and none of the other tex t and links
are hidden from G ooglebot.
V iew your site this way and you may be
surprised what you find!
W hy disable CSS? G ooglebot crawls the content in
the order of the H T M L . T he CSS styling can
sometimes obscure the order of your content.
D isable J avaS cript in FireFox
D isable C S S with the W eb D eveloper Plugin
S T E P T W O
Fire up your website and browse!S T E P F I V E
Web Search
Downloads
Add-ons
Set Up Sync...
Rank Checker
Web Developer
Page Info
Start Private Browsing
Clear Recent History...
Default User Agent
Web Developer
Default User Agent
Internet Explorer
Search Robots
iPhone 3.0
Edit User Agents...
User Agent Switcher
Default User Agent
Search Robots Googlebot 2.1
Msnbot 1.1
Yahoo Slurp
Googlebot 2.1
Tools Window Help
S T E P T H R E E
S T E P F O U RS et User- A gent to G ooglebot
quicksprout.com
MAIN TABS
Block popup windows
Load images automatically
Enable JavaScript
Enable Java
Default Font
FONTS & COLOURS
CONTENT APPLICATIONS PRIVACY ADVANCED
EXCEPTIONSEXCEPTIONS
EXCEPTIONSEXCEPTIONS
ADVANCEDADVANCED
ADVANCEDADVANCED
COLOURSCOLOURS
Default Font Size: 16
Choose your preferred language for displaying pages
LANGUAGES
CHOOSECHOOSE
HELPHELPOKAYOKAY CANCELCANCEL
Disable Styles
Display CSS By Media Type
View CSS
View Style Information
Add User Style Sheet...
Edit CSS
Use Border Box Model
All Styles
Browser Default Styles
Embedded Styles
Inline Styles
Linked Style Sheets
Print Styles
Individual Style Sheet
Disable Styles All Styles
quicksprout.com
S ome things to check for:
Can you see all of your menu links ( drop down s too! ) ?
D o all of the menu items and links appear as plain tex t?
A re all the links clickable?
D oes this reveal any tex t that was previously hidden? ( H idde n te x t can se n d a
re d fl ag to G oogl e b ot. I t might n ot al way s b e the re mal iciou sl y , b u t it
shou l dn ’ t b e the re .)
Is your sidebar or widgets content all the way at the top? R emember, your most
important links and content should be at the top of the H T M L . T his is more
important the bigger the site is.
T he problem with this site is that the
menu tex t is not real tex t, its images.
W hat does this mean? T here is no
anchor tex t signal given to
G ooglebot. You all know how
important anchor tex t is for
back- links, and its j ust as important
for internal links. O n the above
website, none of the inner pages are
receive the full value of link j uice
flowing into them from the
homepage.
O nce doing an on- site inspection
from the point of view of a search
engine, you may be ready to crawl
the site with a web spider.
Finally.
Here’ s an ex ample of a site with an issue.
C R A W L Y O U R S I T E
W I T H S C R E A M I N G F R O G
NO 2
C rawl The S iteS T E P O N E
S ave Your C rawl
W hat I s S creaming Frog?
Screaming F rog SE O Spider allows you to crawl your website and
gain valuable insight into how its put together much more easily
and faster than you ever could j ust by looking at it. A s you’ ll see,
you will certainly gain a new perspective on how your site looks in
the nex t few minutes!
T his being a hands on technical guide, if you’ d like more details
on the benefits of using your own web spider you can read
Screaming F rog’ s documentation at;
http://www.scre amin gfrog.co.u k/se o- spide r/
Note: S cre amin g F rog is fre e for y ou to crawl u p to 5 0 0 page s at
a time . F or b igge r site s y ou wil l n e e d to pu rchase an an n u al
l ice n se . B U T do y ou wan t a se cre t workarou n d for this? I thou ght
so! Y ou can e n te r su b dire ctorie s to crawl - l ike
http://www.q u icksprou t.com/2 0 1 2 / wil l giv e me on l y the posts from
2 0 1 2 . D o this for more mu l tipl e su b dire ctorie s an d y ou can stil l
crawl the e n tire site , j u st in pie ce s.
F ire up Screaming F rog and run the
first crawl on your site.
D epending upon how large your site
is, this can take anywhere from 2 to
2 0 minutes.
You should save the crawl of your site in the
.seospider file format. T his way you won’ t
have to run the crawl again in case you close
the program or want to review it again later.
R emember though, if you make maj or changes
to the site you should crawl it again anyway.
B ut this way you’ ll have a crawl record of your
site from this date.
S T E P O N E
C rawl The S ite
S T E P T W O
S ave Your C rawl
S T E P T H R E E
C heck Page L evels
S T E P F O U R
C heck for C rawl Errors
S T E P F I V E
Find & Fix L ong Titles
S T E P S I X
Find & Fix L ong
D escriptions
S T E P S E V E N
L ook at I ndex ation
S ettings
B O N U S
How To Find A ll Pages
W ith A ny HTM L
SAVE
Crawls
Save As:
File Format:
quicksprout-crawl.seospider
SAVESAVECANCELCANCEL
SEOSpider (Screaming Fr...
Name Date Modified
S T E P T W O
S T E P T H R E E C heck Page L evels
C heck for C rawl Errors
R emember, this is a technical guide so that you can make real
changes to your website that will bring you definite SE O
improvement. So we’ re going to focus on getting information out
of Screaming F rog that you can then go and apply to your site.
If you have pages that are buried too deep
within your website, this is not good for users
or your SE O . W e’ re going to find those pages
easily with Screaming F rog and get them into a
list for you to take action on.
A fter your crawl, you’ ll be on the main
“ internal” page showing you all the data
gathered internal to your site.
E ven Q uickSprout has some older blog
posts that have ended up 4 - 7 levels deep.
S ide Note: Y ou might wan t to con side r a
pl u gin for W ordP re ss l ike crossl in ke r
http://wordpre ss.org/e x te n d/pl u gin s/cross- l in k
e r/
which can he l p y ou al way s in te rn al l y l in k
an d cross l in k y ou r posts.
Scroll back to the left, and you’ ve got a nice
prioritized list of pages to be sure to link
back to when writing new posts.
N ow you’ ve got a great, actionable list of UR L s to link back to
from newer posts, right in E x cel.
A nd of course when back- linking, be sure the references are
relevant, useful and use descriptive keyword- rich anchor tex t.
N ow we’ ll begin ex ploring some of the different menus at the top.
S E L E C T H T M L
S C R O L L R I G H T
( A L L T H E W A Y )
S O R T P A G E S B Y
L E V E L
S C R O L L B A C K
E X P O R T T O C S V
S T E P F O U R
N ow we’ ll begin ex ploring some of the different menus at the top.
T here are a lot of hidden gems in Screaming F rog, but you have
to know how to find them - which is what I’ m showing you now!
G oogle W ebmaster T ools will of course give you crawl errors, but
they may be incomplete or old. P L US, this will give you all
ex ternal links you’ re linking to that are broken. A fresh crawl of
your site with your own tool is a fantastic way to get a current
accurate list.
You all may know that title tags and meta
descriptions have a recommended length.
A nd again, W ebmaster T ools does give you
some of this data.
W hat’ s great about Screaming F rog, is you
know this data is complete and you can sort
and filter it.
T his gives you a list of only the pages
which returned some sort of 4 0 0 level
error ( usually 4 0 4 s) .
[1] C lick on “ R esponse C odes”
[2] S elect “ C lient Error 4x x ” from the filter drop down menu
[3] Ex port as C S V
[1] C lick on over to “ Page Titles”
in the top menu.
[2] S elect “ O ver 7 0 C haracters”
from the menu.
[3] Ex port as C S V
S T E P F I V EFind & Fix L ong Titles
SAVE
Exports
Save As:
File Format:
page_titles_over_70_characters.csv
SAVESAVECANCELCANCELNEW FOLDERNEW FOLDER
CSV (Comma delineated(*...
Name Date Modified
T I P : I m m e d i a t e l y “ s a v e a s ”
a n E x c e l d o c u m e n t . Y o u m a y
l o s e s o m e f o r m a t t i n g c h a n g e s
o t h e r w i s e .
C heck for C rawl ErrorsS T E P F O U R
In your E x cel document, you’ ll want to create a new column for your new title.
A lso, create a column for length.
W hat a simple way for E x cel to automatically count the characters as you
compose your new title tags? A dd this simple formula to the “ new length”
column; = L EN( E3)
O f cou rse b e su re to re fe re n ce the ce l l y ou hav e y ou r n e w titl e in .
Select “ O ver 15 6 C haracters” from the
filter drop down menu
E x port to CSV
You can work on your new descriptions j ust
like how we worked with the new title tags
in ex cel. M ake new columns and use the
formula = L EN( E2) to automatically count
the length of your new description tags.
F inding and fix ing long descriptions is similar.
W e’ re going to navigate over to the descriptions menu.
[1] S elect the formula cell
[2] Hover over the bottom right corner of the formula cell.
[3] W ait for the cursor to change to a cross shape.
[4] D rag the sq uare down the entire column
A N D T H E NA N D T H E N
S T E P S I X
Find & Fix L ong D escriptions
S T E P S E V E N L ook at I ndex ation S ettings
L et’ s get a little more technical. Suppose you wanted
to find A L L the pages within a website that had the
presence of certain H T M L . L et’ s say in this instance
we want to find all pages within Q uickSprout that
have links that open in new tabs or windows.
N ow, we have all the pages with links that open in a new tab or window!
T his is great for an ex isting site if its not going to change at all. B ut
what do you do when you are getting set to redesign your site? You’ ll
want to do a self audit in prep for a redesign.
You should also head on over to the “ meta and canonical” menu to check your
index ation settings. You should look for things like;
S T E P S E V E N L ook at I ndex ation S ettings
How To Find A ll Pages
W ith A ny HTM L
[1] S elect “ C ustom” from the “ C onfiguration” M enu
[2] Enter the HTM L you want it to look for in “ Filter 1”
Note: Y ou can al so hav e it fin d page s that do N O T con tain the
H T M L e n te re d. Y ou can e n te r u p to fiv e fil te rs.
[3] C rawl the site again
[4] S elect “ C ustom” in the menu
[5 ] S elect “ Filter O ne” from the filter drop down menu.
M issin g can on ical tags
I n corre ct C an on ical tags ( poin tin g to a
diffe re n t page e tc)
P age s that shou l d b e in de x e d b u t hav e a
“ n oin de x ” tag on the m.
P age s that shou l d N O T b e in de x e d b u t
hav e n o me ta tag or hav e “ in de x ”
<head>
<title>SEO G UI D E</title>
</head>
B O N U S
N ex t is a complete step by step process for auditing your own
site if you do a redesign. T his can be an important step to take
in your web evolution and promoting your authority online,
but let’ s not let you lose out on any traffic in the process!
T his portion of the guide assumes you have followed best
practices while making your new site, such as;
B e in g su re its crawl ab l e
S u b mittin g a n e w X M L site map
P u ttin g 3 0 1 re dire cts in pl ace
T he following is a mock up spreadsheet to show you how
to monitor these metrics as the new site goes live.
S E L F A U D I T F O R A
S I T E R E D E S I G N
C R E A T E A S P R E A D S H E E T T O M O N I T O R P R O G R E S S
You’ re simply going to use the G oogle site: search to do this;
M O N I T O R N U M B E R O F P A G E S I N D E X E D
NO 3
DATE PAGES INDEXED CACHE DATE PR DA WMT ERRORS NOTES
4/1/2012
4/8/2012
4/15/2012
4,200
3,750
4,150
6
5
6
71
67
70
525
679
482
New site
launched
New site
cached
started to
fix errors
3/23/2012
4/7/2012
4/12/2012
site:quicksprout.com
About 56,000 results (0.31 seconds)
SEARCHSEARCH
A gain, we’ re j ust going to do a G oogle search for cache:sitename.com
T he cache date is the largest factor to telling you what version of your site
G oogle is using in their algorithm.
M O N I T O R C AC H E D A T E
A lthough it is known that P R is a very loosely used metric,
it still gives a rough indication to the value of the site.
Use the SE O q uake toolbar as one fast way of checking your
pagerank, which you can install at http://www.se oq u ake .com/
M O N I T O R P A G E R A N K
T his metric will have a delay, depending upon when SE O moz
updates their linkscape index . B ut still good to monitor - and
you can use their toolbar to do so as well. You can install it
here: http://www.se omoz .org/se o- tool b ar
D A authority is best to look at
M O N I T O R S E O M O Z D O M A I N A U T H O R I T Y
DA authority is best to look at
Use Webmaster Tools to watch your not found
errors and get your numbers from there;
With these tools and steps you’ll
ensure the smoothest transition
possible while moving the site
over.
M O N I T O R “ N O T F O U N D ” E R R O R S
In this tutorial, we will setup your computer so that when you type in the
UR L , it will go to your test website so you can try it out before it goes live
using the real UR L .
T he instructions will differ greatly depending on where you host your
website but in general, they will be listed somewhere in your admin
panel. If you can' t find it, call the hosting company up and simply ask.
G et the I P address of your new website.S T E P O N E
S T E P T W O
Edit your hosts file to
point to your I P address
O N A M A C O N A P C
[1] O pen up A pplication folder >
Utilities > Terminal [1] C lick on S tart > type in
" notepad" into the search box ,
and look for notepad to show up
in your start menu.
[2] R ight click on it and left click on
" run as administrator" .
[3] C lick on File > open
[4] I n the filename box type
"  windows system32 driver etc"
press enter.
[5 ] C hange the file type pull- down
from " tex t file" to " all files" .
[6 ] D ouble click on " hosts"
[7 ] A t the end of the file, type in the
following line:
[2] I nside the terminal app, type
" sudo nano / etc/ hosts"
[3] A t the end of the file, type in the
following line:
Google Drive
Desktop
Applications
Documents
Downloads
inbox
Twitter
UnRarX
Utilities
Vagrant
VirtualBox
VMware Fusion
RAID utility
Remote Install Mac OS X
Spaces
System Profiler
Terminal
Voiceover Utility
T ype in your user’ s password if
that’ s req uired.
Say yes to W indows if it asks for
permission
1 1 1 .2 2 2 .3 3 3 .4 4 4 www.newdomain.com
R eplace 1 1 1 .2 2 2 .3 3 3 .4 4 4 with the real
IP address you got from step 1 and
replace " www.newdomain.com" with
you new domain.
1 1 1 .2 2 2 .3 3 3 .4 4 4 www.newdomain.com
R eplace 1 1 1 .2 2 2 .3 3 3 .4 4 4 with the real
IP address you got from step 1 and
replace " www.newdomain.com" with
you new domain.
H it Control- O to and press enter.
[4] Hit C ontrol- X to ex it the editor.
[5 ] C lose the terminal window
NO 4
T E S T I N G A N E W S I T E
B E F O R E I T G O E S L I V E
h t t p : / / p a n d a . c o m
O pen up a browser and test your website to see if it looks like you ex pect
it. T ype in the UR L to your new website Your hosts file edits will forward
you to the test website.
Test your websiteS T E P T H R E E
O nce tested, you can undo your changes you made in step 2 . Simply go
back to the file and remove the line you j ust created.
Undo C hangesS T E P F O U R
W hen migrating to a new website you can use the following guidelines to
ensure a safe transition without any downtime. It takes about a day for all the
servers around the world to get updated IP and domain information so plan to
have both servers running for at least the first week of your new site.
T he instructions to do this is different for every hosting company or
domain registrar. Usually, you can find that setting in your control panel
for your domain, but if you can' t find it, call up your domain registrar and
ask for tech support.
M I G R A T I N G T O A N E W
S I T E W I T H O U T D O W N T I M E
NO 5
WARNING: THIS MIGHT BRING DOWN YOUR WEBSITE
IF SOMETHING GOES WRONG. BE CAREFUL!
S et the TTL of your new domain to 5 minutesS T E P O N E
I F Y O U ’ R E U S I N G G O D A D D Y :
[1] L ogin to G oD addy’ s website
[2] C lick on M y A ccount. G o down
to D omains and click on L aunch
[3] C lick on one of your domains
[4] S croll down to D NS M anager
and click L aunch
[5 ] L ook for “ @ ” under host and
click on the pencil icon under
“ TTL ”
[6 ] Pull down the menu and select
the shortest time available ( 1/ 2
hour)
http://godaddy.com
http://godaddy.com
http://godaddy.com
L ocate the D NS settings for your domainS T E P T W O
N ow that you' ve tested your site and changed your T T L , you will want
to change the D N S settings for your domain name. F irst, go to your
current domain registrar, and locate the current D N S settings. T hen
go to your new hosting company and write down the new D N S settings
you need to enter into your current domain registrar. T he instructions
is always different from one hosting company to another and from one
domain registrar to another.
Usually, you can find that setting in your control panel for your
domain, but if you can' t find it, call up your domain registrar and ask
for tech support.
C hange the D NS settings on your current domain.S T E P T H R E E
O nce you have them both registrar to be the D N S address you wrote
down from your new hosting company. You should know where to
change them because you already found it in step # 3 .
Unset your hosts file by removing the lines
you added in step # 1.
S T E P F O U R
D o so by following step # 1 ex cept remove the lines you originally added.
W ait 5 minutes, then try to go to your new website.S T E P F I V E
You may need to clear your browser' s cache and cookies. If you' re new
website is up, you done! If not, reverse what you did in step # 4 in order to
revert back to your old website.
In this ex ample, we will show you how to use j Q uery’ s post method to create crawlable
A J A X . F or this tutorial, we will use the “ X M L H ttpR eq uest P O ST ” method.
F or additional details about this best practice, go here:
http://googl e we b maste rce n tral .b l ogspot.com/2 0 1 1 /1 1 /ge t- post- an d- safe l y - su rfacin g- more - of.html
In this ex ample, line 4 was added.
In this ex ample, line 8 was added.
T he ex ample code outputs an
ex ample blog post.
In this ex ample, lines 1 0 - 1 5 were added.
C R A W L A B L E A J A X
( U S I N G J Q U E R Y G E T )
C reate your HTM L template.S T E P O N E
A dd J avaS cript to the site that will load
content into the < D I V > tag
S T E P F O U R
S T E P T W OA dd j Q uery to your site
S T E P F I V EC reate your PHP script
S T E P T H R E E
A dd a < D I V > tag with a uniq ue I D in the
body where your dynamic content will go
NO 6
q u i c k s p r o u t . c o m
It should look like this:
Test your script on your web serverS T E P S I X
It should look like the H T M L template.
C heck view- sourceS T E P S E V E N
You should see the dynamic content loaded
in the D O M . It should look like this:
S T E P E I G H T
C heck I nspect Element
C R A W L A B L E A J A X
( W I T H O U T H A S H E S )
NO 7
T his tutorial is for websites that load dynamic content on the page without
refreshing but changes the UR L . G oogle recommends routing
“ _ escaped_ fragment_ ” in your q uery string to an H T M L snapshot. T he
principal idea is that you want to render H T M L for G oogleB ot and
J avaScript for users.
T here are many ways of achieving the same result. T he implementation will
depend on your particular website’ s setup. In this ex ample, we will use P H P
to decide what to render.
If the UR L looks like this: “ http://www.e x ampl e .com/in de x .php” then we want
P H P to create a page with J avaScript that loads the content dynamically and
asynchronously so that it’ s fast.
If the UR L looks like this:
“ http://www.e x ampl e .com/in de x .php? _ e scape d_ fragme n t_ ” then we want P H P to
create a normal H T M L page that can be index ed and crawled.
F or additional details about this best practice, see:
https://de v e l ope rs.googl e .com/we b maste rs/aj ax - crawl in g/docs/ge ttin g- starte d
T his will tell search spiders that the page is crawlable using the
“ _ escaped_ fragment_ ” q uery string. In this ex ample, we created a
function that creates the entire < head> tag for us.
Note: L in e 1 0 con tain s the me ta tag that te l l s spide rs to crawl u sin g
e scape d fragme n t.
S tart by creating a PHP script that will add
the proper < meta> tag in the header.
S T E P O N E
In this ex ample, the render_ post has an argument “ $ render_ snapshot.” B y default, the
page will render a regular page for users. If render_ snapshot is true, then it will render a
regular H T M L page for G oogleB ot with the same content.
Notes:
L in e 2 5 of the P H P de cide s if the page shou l d b e H T M L or dy n amic.
L in e s 2 6 - 2 9 ge ts the con te n t an d re tu rn s the H T M L in side the D I V tag
L in e s 3 1 - 3 7 ge ts the con te n t u sin g j Q u e ry to dy n amical l y adds H T M L in side the D I V tag
Nex t, we will create a function that renders the page.S T E P T W O
In this ex ample, if _ escaped_ fragment_ is found, it will render the post using H T M L .
Nex t, we will add code to handle the
escaped fragment q uery string
S T E P T H R E E
In this ex ample, the code will convert J SO N into H T M L .
Nex t, we will create a content.php file. S T E P F O U R
You should see your content because the Inspect E lement view
is what the H T M L looks like after J avaScript has run.
L ook at the I nspect Elements viewS T E P E I G H T
It should look the same as the dynamic page:
C heck the bot’ s view by adding
“ ? _ escaped_ fragment_ ” to the end of the UR L
S T E P N I N E
It should look like regular H T M L
without any J avaScript.
C heck view source of the bot’ s view S T E P T E N
C R O S S D O M A I N
R E L = C A N O N I C A L
NO 8
www.example.com/index.php
T his is where many people get a little confused, so before the ex act technical
implementation, let’ s j ust cover when the tag should be used.
U se it whe n the con te n t from the ol d site n e e ds to b e mov e d or du pl icate d
to a n e w site - an d the ol d host doe s n ot prov ide se rv e r side re dire cts.
U se it on l y afte r y ou ’ v e re du ce d on - site du pl ication on the ol d site as
mu ch as possib l e .
I f y ou can do a 3 0 1 re dire ct in ste ad an d this prov ide s a pre fe rre d u se r
e x pe rie n ce , u se the 3 0 1 re dire ct.
A l so, y ou shou l d n ot pu t a n oin de x on a page with a re l = can on ical . T he
page shou l d b e crawl ab l e in orde r to pick u p the re dire ct.
U se it whe n con te n t is the same on b oth page s, or with on l y sl ight
diffe re n ce s.
L et’ s say I wanted to move this infographic post from Q uickSprout...
http://www.q u icksprou t.com/2 0 1 2 /0 6 /1 1 /5 - way s- to- ge t- y ou r- in fographic- to- go- v iral /
...to K ISSmetrics. P erhaps I wouldn’ t do this in real life, but let’ s suppose so,
j ust for the ex ample. W e’ re going to move it to:
http://b l og.kissme trics.com/5 - way s- to- ge t- y ou r- in fographic- to- go- v iral
C R O S S D O M A I N
R E L = C A N O N I C A L
NO 8
W H E N T O U S EW H E N T O U S E
THE CROSS DOMAIN CANONICAL
A Q U I C K E X A M P L EA Q U I C K E X A M P L E
T his is not so different than implementing a regular canonical tag.
H O W T O I M P L E M E N TH O W T O I M P L E M E N T
[1] G et your two pages ready
[2] B e able to edit the source code on the first ( original) page.
[3] A dd the tag to the < head> section of the old page,
pointing to the new page;
< l in k re l = " can on ical " hre f= " http://www.e x ampl e .com/e x ampl e - page - n ame />
where “ ex ample- page- name” is the UR L of the NEW page.
pointing to the new page;
I N F O G R A P H I C O N
Q U I C K S P R O U T
S A M E
I N F O G R A P H I C O N
K I S S M E T R I C S
http://www.q u icksprou t.com/
2 0 1 2 /0 6 /1 1 /5 - way s- to- ge t- y o
u r- in fographic- to- go- v iral /
< he ad>
< l in k re l = ” can on ical ” hre f=
“ http://b l og.kissme trics.com/
5 - way s- to- ge t- y ou r- in fograph
ic- to- go- v iral ” />
< /he ad>
http://b l og.kissme trics.com/5
- way s- to- ge t- y ou r- in fographi
c- to- go- v iral
C A N O N I C A L
P O I N T S T O
N E W P A G E
L A S T F E W H I N T SL A S T F E W H I N T S
[1] Make the links absolute not relative (include the full http:// etc)
[2] Just like with 301s avoid chains of canonicals
[3] Ultimately this is a hint for Google, not an absolute direction, so
you will want to check Google’s index and webmaster tools to see if
it has been followed.
A s I’ m sure most of you know, https is the protocol by which secure pages are
transferred over the world wide web. P ages such as your shopping cart, login
pages and other secure areas should be at an https address. H owever, this can
potentially cause duplicate content, because of the added ‘ s’ in the UR L .
T ypically, https pages should not be in the index . T hey are usually private pages
and don’ t have a use for being returned in search results.
If your crawl report or site audit comes back as having https UR L s found on your
site as duplicates, there’ s three steps you should take to resolve this;
F I X I N G H T T P S
D U P L I C A T E
C O N T E N T E R R O R S
NO 9
[1] I dentify which pages are index ed
[2] D iagnose why they are index ed
[3a] 30 1 R edirect pages that should not be there
[3b] R emove them from the index if they should not be there
Use this special G oogle search to find pages from your site that have been index ed
with https;
site:yourdomain.com inurl:https
You can see the crazyegg website looks totally clean! E x cept for this flash loader,
no https pages have gotten into the index .
Finding https pages that have been index edS T E P O N E
inurl:https site:crazyegg.com SEARCHSEARCH
About 1 result (0.10 seconds)
File Format: Shockwave flash
In order to show you the most relevant results, we have omitted some entries
very similar to the 1 already displayed.
If you like, you can repeat the search with the omitted results included.
[FLASH]
https://crazyegg.com/flash/data_loader.swf
K ISSmetrics. on the other hand is a good ex ample of a site that has some https in
the index .
T his second page here is j ust a normal blog post and should not be in the index
( third result down) .
A nd these other pages indicated, are supposed to be https pages but should
not be in the index ;
So what do you do when you find pages in the index that should not be
there? L ike any old page you don’ t want in the index , you need to find out
why it got there to begin with!
inurl:https site:kissmetrics.com SEARCHSEARCH
About 27 results (0.09 seconds)
Forgot your password? Email Address: Recover password
https://www.kissmetrics.com/forgot_password
Forgot your password? - KISSmetrics
Tracking pageviews and visitors to see how much traffic you’re getting is incredibly
important right? WRONG. Finding out if your website actually helps your...
https://www.kissmetrics.com/critical-goal-types
4 Google Analytics Goal Types That Are Critical
Thanks for contacting KISSmetrics! One of our team members will be contacting you
shortly. In the meantime, here’s some more information about KISSmetrics...
https://www.kissmetrics.com/request/thanks
Web Analytics by KISSmetrics
These pages should be https
but should not be in the
index. They don’t need to be
redirected but should be
removed from the index
https://www.kissmetrics.com/forgot_password
Forgot your password? - KISSmetrics
https://www.kissmetrics.com/request/thanks
Web Analytics by KISSmetrics
inurl:https site:kissmetrics.com SEARCHSEARCH
About 27 results (0.09 seconds)
Forgot your password? Email Address: Recover password
https://www.kissmetrics.com/forgot_password
Forgot your password? - KISSmetrics
Tracking pageviews and visitors to see how much traffic you’re getting is incredibly
important right? WRONG. Finding out if your website actually helps your...
https://www.kissmetrics.com/critical-goal-types
4 Google Analytics Goal Types That Are Critical
Thanks for contacting KISSmetrics! One of our team members will be contacting you
shortly. In the meantime, here’s some more information about KISSmetrics...
https://www.kissmetrics.com/request/thanks
Web Analyitics by KISSmetrics
This page should not be https
so the cause should be found,
and it should be 301
redirected.https://www.kissmetrics.com/critical-goal-types
4 Google Analytics Goal Types That Are Critical
L et’ s use the blog post from above as an ex ample, and look at the page.
You can see G oogle Chrome indicating https is present in the UR L but the page is not
secure. T his in fact confirms the page should not be in the index this way.
D iagnose W hy They Ended Up I n The I ndexS T E P T W O
Its probably in the index because it got linked to from somewhere, either internally
or external, so we’re going to use a few tools to try and find the source of the link.
Let’s use Screaming Frog first, since we know it will be a complete crawl of the site.
Enter the root domain of the website in Screaming Frog (because some sites, like
KISSmetrics. operate across different subdomains, www / blog etc - we want to be
sure we get a complete crawl of the whole site.)
While crawling the site, you can do a search for the URL of that page and wait for it
to show up.
Then, wait until the crawl is complete and review its “In Links”.
Look in the “to” column to see if any links use the “https://”
In this case, there are no internal links pointing to the https:// version of the page.
If an internal link is found, you need to change your internal links and 301 redirect the
https version to the http version.
If no internal link is found, you may be able to find the external link, but may not have
control over changing it. So you have to 301 redirect it to the http version. This will
redirect the user and eventually remove/replace the https version from the index.
P A G I N A T I O N
W I T H R E L = N E X T
P agination has always been one of the trickiest elements of on- page SE O
and architecture to handle. B ut now G oogle allows you to use rel= ” nex t”
and rel= ” prev” to help show them you have pages that belong in a series.
W hen using a CM S like W ordP ress there are many plugins that handle
this for you, including Yoast SE O . B ut if you have a custom made site, or
a site hand coded in pure H T M L , this section will show you have to
correct handle pagination with these new tags. It’ s q uite simple actually!
B ut you may not find the best source on the internet. H ere I’ ve made
sure it’ s bulletproof.
W e’ ve identified this page being the first
in a paginated series, as you can see the
menu for pages 2 , 3 , 4 etc.
H ere is the page 1 UR L
http://www.z appos.com/me n s- sn e ake rs- athl e
tic- shoe s~ dA
and page 2 , 3 etc
http://www.z appos.com/me n s- sn e ake rs- athl e
tic- shoe s~ dB
http://www.z appos.com/me n s- sn e ake rs- athl e
tic- shoe s~ dC
Note: the y are u sin g l e tte rs ( a, b , c) to
chan ge the page .
L et’ s use Z appos as an ex ample. H ere is
their M en’ s Sneakers page 1 .
I dentify Your Pages I n The S eriesS T E P O N E
A dd rel= ” nex t” To Page O neS T E P T W O
T hat’ s right, once you’ ve identified the pages in the series, page one
only gets the “ nex t” tag since its the first page in the series. T herefore
to page one, in the < head> section we would add;
< l in k re l = " n e x t"
hre f= " http://www.z appos.com/me n s- sn e ake rs- athl e tic- shoe s~ dB ” >
C hange the D NS settings on your current domain.S T E P T H R E E
E very page but the first and the last should have a “ nex t” and “ prev”
tag. T his makes sense since there are pages before and after. P age two
( mens- sneakers- athletic- shoes~ dB ) would have this;
< l in k re l = " pre v "
hre f= " http://www.z appos.com/me n s- sn e ake rs- athl e tic- shoe s~ dA ” >
< l in k re l = " n e x t"
hre f= " http://www.z appos.com/me n s- sn e ake rs- athl e tic- shoe s~ dC ” >
A dd rel= ” prev” to the last pageS T E P F O U R
T he last page in the seq uence only needs to refer to the page before it, so we
NO 10
www.zappos.com
A dd rel= ” prev” to the last pageS T E P F O U R
T he last page in the seq uence only needs to refer to the page before it, so we
would add;
< l in k re l = " n e x t" hre f= " http://www.z appos.com/me n s- sn e ake rs- athl e tic- shoe s~ dY ” >
A ssuming Z is the last page.
Final Notes
Y ou can in cl u de a can on ical tag in con j u n ction with re l n e x t/pre v
Y ou can u se ab sol u te or re l ativ e U R L s, b u t I al way s re comme n d ab sol u te
whe n e v e r possib l e .
C onfigure .htaccessS T E P T W O
You’ ll need to redirect a bunch of error codes to the error page. You should
add the following lines to .htaccess
R E D I R E C T I N G E R R O R
P A G E S W I T H . H T AC C E S S
NO 11
T his will follow a few step process;
1 . Create an error page - this page will have a special script on it.
2 . Configure Your .htaccess file to redirect to the error page
Create a page in which the errors will return from - you can call it
anything - error.php works.
O n that page, add the following code to the top;
<? php
switch( $ _ SER V ER [ "R ED I R EC T _ ST AT US"] ) {
case 400:
$ title = "400 B ad R eq uest";
$ description = "T he req uest can not be processed due to bad syntax ";
break;
case 401:
$ title = "401 Unauthoriz ed";
$ description = "T he req uest has failed authentication";
break;
case 403:
$ title = "403 F orbidden";
$ description = "T he server refuses to response to the req uest";
break;
case 404:
$ title = "404 N ot F ound";
$ description = "T he resource req uested can not be found.";
break;
case 5 00:
$ title = "5 00 I nternal Server Error";
$ description = "T here was an error which doesn' t fit any other error
message";
break;
case 5 02:
$ title = "5 02 B ad G ateway";
$ description = "T he server was acting as a prox y and received a bad
req uest.";
break;
case 5 04:
$ title = "5 04 G ateway T imeout";
$ description = "T he server was acting as a prox y and the req uest timed
out.";
break;
}
? >
ErrorD ocument 400 /error.php
ErrorD ocument 401 /error.php
ErrorD ocument 403 /error.php
ErrorD ocument 404 /error.php
ErrorD ocument 5 00 /error.php
ErrorD ocument 5 02 /error.php
ErrorD ocument 5 04 /error.php
T his P H P code creates a different title for each type of error. T his way
you don’ t need a ton of different files. W e’ re doing it all within one file.
In this ex ample we’ re j ust creating a uniq ue title and description for each
error page. B ut you can add ex tra variables and create any uniq ue content
you want.
C reate Your Error PageS T E P O N E
O P T I M I Z I N G R S S F E E D S
R SS feeds are such a huge part of blogging. Yet we sometimes overlook how powerful
it can be to optimize these feeds! T he following hands on tips should help you get the
most out of your R SS feed.
T his assumes you’ re using feedburner.
R eplace D efault R S S Feed I n Your Header
A ssuming you’ re using F eedB urner, do all the links on your website point to the
correct feed? T he header section of the Q uick Sprout site points to the feedburner feed.
If you’ re site does not do this, you need to change the feed UR L in the header.php
file ( if using W ordP ress) or where ever your CM S allows.
Find the R S S link in your header.php file
Q uick W ins I n Feedburner
T here’ s a few simple features you can easily activate in F eedB urner. L et’ s make sure
you’ ve got them covered!
A ctivate S martFeed
SmartF eed helps to make your feed compatible in any reader.
R eplace it with your feedburner feed UR L .
NO 12
A nd activate it!
A ctivate FeedFlare
F eedflare is a way to put link at the bottom of your feed to ask users to do things like
share on F acebook, email, bookmark on delicious etc.
T his is an essential must for any R SS feed.
In the O ptimize tab, click F eedF lare.
Select the links you want to appear. F eed means they will appear in the R SS feed.
Site means they will appear in the website, if you send the feed out to a website.
N ex t, we’ re going to add some “ personal” flares. T hese are simple flares people have
created that do not ex ist in the default set of flares.
Click ‘ B rowse the Catalog’ .
T he activate button is easy to miss, its down below.
Click O ptimize- > smartfeed
N ex t, we’ re going to add some “ personal” flares. T hese are simple flares people have
created that do not ex ist in the default set of flares.
Click ‘ B rowse the Catalog’ .
B rowse through the available flares. W hen you find one you like, and want to select
it, click ‘ L ink’ .
A tab will open with the flare. Copy the UR L .
G o back to the original screen. P aste the flare UR L . Click ‘ A dd N ew F lare’
you will see your flare appear above. Select where you want it to show ( F eed, Site or both) .
B elow, you can view a preview of your flares. R eorder them by dragging and dropping
the items.
B elow, you can view a preview of your flares. R eorder them by dragging and dropping
the items.
A ctivate PingS hot
P ingShot will notify the reading services when there’ s updates. T his speeds up the
delivery of your feed.
G o to P ublicize P ingShot and click ‘ A ctivate’ .
L ink to the O riginal S ource of the Feed
H ave you ever had your R SS feed scraped and duplicated onto another site without
your permission? It happens all the time, especially as you get more popular ( with
the he l p of this gu ide ! ) . G ooglebot or users might have a hard time telling which
article was the original source.
T his is why we’ re going to add a link the bottom of your R SS feed citing you as the
original source of your content. N ot only will this help users and engines make this
determination, it will get you some ex tra back- links as well.
D on ’ t forge t to cl ick ‘ S av e ’ . It’ s easy to miss down there.
[1] A dding R SS Source L ink in B logger
C reate Thank You’ s
Some personalization and a thank you to your readers can go a long way.
H ere’ s how to set up a simple message in your feed.
G o to O ptimize B rowserF riendly Content O ptions
Click ‘ enable’ and enter a personal message!
Time Your R S S Emails
You now have reference to the original source ( y ou ! ) of the content in
your R SS feeds. A s always, check your work to make sure its been done
correctly.
[1] A dding R SS Source L ink in B logger
G o to Settings Site F eed
A dd the following code:
[2] A dding R SS Source L ink in W ordP ress
G o to A ppearance E ditor functions.php
A dd the following code:
<hr />
<a href="http://www.myblog.com">My B log N ame</a>
function embed_ rss( $ content) {
if( is_ feed( ) )
$ content .= "<p><a href=' ". get_ permalink( ) ."' >' ";
$ content .= get_ the_ title( ) ."</a></p>";
return $ content;
}
add_ filter( ' the_ content' , ' embed_ rss' ) ;
V I D E O S I T E M A P S
Time Your R S S Emails
E ncourage more opens from your R SS email list by controlling send time.
G o to P ublicize E mail Subscriptions D elivery O ptions
Select your timezone and the best time for your audience. 9 am- 1 1 am is
often a good choice.
R edirect W ordPress R S S to Feedburner
You may have a standard R SS feed built into W ordP ress. You may even
have subscribers to it! W ith the help of a P lugin called “ F eedburner
R edirect” we’ re going to make sure everything is going through
feedburner.
You can find the plugin here -
http://wordpre ss.org/e x te n d/pl u gin s/te n tb l ogge rs- fe e db u rn e r- rss- re dire ct- pl u gin /
E nter your feedburner UR L in both fields. A nd you’ re done!
[1] Install it in your W ordP ress setup.
[2] A ctivate it.
If you have any sort of video on your website or blog, and
especially if it’ s marked up with metadata, you need to
have a video sitemap. T his gets your video content noticed,
processed and index ed much faster by G oogle and B ing.
V I D E O S I T E M A P SNO 13
Create a file, the name doesn’ t matter, but I like to use: sitemap_ video.x ml
T hen save it in your root directory, like:
http://www.q u icksprou t.com/site map_ v ide o.x ml
A s mentioned, it doesn’ t matter so much what you name it or even where you put
it, but you’ ll need to know this later for when you submit the sitemap to
W ebmaster T ools.
E x planation of above code;
C reate an Empty X M L FileS T E P O N E
Paste This I nto the X M L FileS T E P T W O
<urlset x mlns="http://www.sitemaps.org/schemas/sitemap/0.9"
x mlns:video="http://www.google.com/schemas/sitemap-video/1.1">
<url>
<loc></loc>
<video:video>
<video:thumbnail_ loc></video:thumbnail_ loc>
<video:title></video:title>
<video:description></video:description>
<video:content_ loc></video:content_ loc>
<video:player_ loc allow_ embed="yes"
autoplay="ap=1"></video:player_ loc>
</video:video>
</url>
</urlset>
O PTI O N A - M A NUA L G ENER A TI O N
If you have a small site with only a few videos, and you’ re not adding them all
of the time, you can easily generate your video X M L sitemap manually.
F irst, I want to provide you with the skeleton template of the X M L structure.
You can cut and paste the template and then add your own data.
T his is j ust the most basic template with the req uired fields.
Many of the properties in the template are optional, but I wanted you to have the whole
thing :-)
Required Fields
URL of Page
Video File URL or Player URL
Title
Description
Thumbnail
So let’s fill in our example template. I’ve stripped out all the other properties for now, so
you can clearly see it with only the required elements;
Basic Code for One Video in XML Video Sitemap
<url>
<loc>http://www.quicksprout.com/videos/neil-patel-video-1.html</loc>
<video:video>
<video:thumbnail_loc>http://www.quicksprout.com/thumbs/thumbnail.jpg</video:thu
mbnail_loc>
<video:title>Advanced SEO for Bloggers</video:title>
<video:description>An exclusive video with SEO expert Neil Patel. Drive
ridiculous amounts of leads to your blog and learn the 7 secrets of conversion
rate optimization.</video:description>
<video:content_loc>http://www.quicksprout.com/video.flv</video:content_loc>
</video:video>
</url>
Adding Additional Properties
There are many additional properties you can add to your video sitemap, such as;
<video:duration>
<video:expiration_date>
<video:rating>
<video:view_count>
<video:publication_date>
<video:tag>
<video:tag>
<video:category>
<video:restriction>
<video:restriction>
<video:restriction>
<video:gallery_loc>
<video:gallery_loc>
<video:price>
<video:requires_subscription>
<video:uploader>
<video:uploader>
<video:platform>
<video:platform>
<video:platform>
<video:live>
Let’s add a few of these back into our example, so you can see them in action!
<url>
<loc>http://www.quicksprout.com/videos/neil-patel-video-1.html</loc>
<video:video>
<video:thumbnail_loc>http://www.quicksprout.com/thumbs/thumbnail.jpg</video:thu
mbnail_loc>
<video:title>Advanced SEO for Bloggers</video:title>
<video:description>An exclusive video with SEO expert Neil Patel. Drive
O ption A
S ubmit it to W ebmaster Tools D irectly
T his is the preferred method to submitting any x ml
sitemap to G oogle.
S ign in to W e b maste r T ool s
V ie w the profil e for y ou r we b site
N av igate to S ite C on figu ration - > S ite maps
Click “ A dd/ T est a Sitemap” in the right hand corner
E nter the name of your sitemap and hit submit
O ption B
A dd The Following L ine To Your R obots.tx t File
Sitemap: http://www.e x ampl e .com/site map_ v ide o.x ml
L ike with any x ml sitemap, if your robots.tx t file set up
correctly, G oogle with find and process your video x ml
sitemaps through having found it in robots.tx t
S ubmit Your S itemap to G oogle W ebmaster ToolsS T E P T H R E E
L et’ s add a few of these back into our ex ample, so you can see them in action!
<url>
<loc>http://www.q uicksprout.com/videos/neil-patel-video-1.html</loc>
<video:video>
<video:thumbnail_ loc>http://www.q uicksprout.com/thumbs/thumbnail.j pg</video:thu
mbnail_ loc>
<video:title>Advanced SEO for B loggers</video:title>
<video:description>An ex clusive video with SEO ex pert N eil Patel. D rive
ridiculous
amounts of leads to your blog and learn the 7 secrets of
conversion rate optimiz ation.</video:description>
<video:content_ loc>http://www.q uicksprout.com/video.flv</video:content_ loc>
<! --optional properties-->
<video:duration>7 5 0</video:duration>
<video:rating>4.1</video:rating>
<video:view_ count>5 4321</video:view_ count>
<video:publication_ date>2012-04-01T 19:20:30+08:00</video:publication_ date>
<video:family_ friendly>yes</video:family_ friendly>
<video:restriction relationship="allow">I E G B US C A</video:restriction>
<video:req uires_ subscription>no</video:req uires_ subscription>
<video:live>no</video:live>
</video:video>
</url>
M any of these should be self ex planatory. You can always check G oogle’ s documentation
for further ex planation of all the individual fields allowed.
. H T A C C E S S H A C K S
T hese tips only work if your client is using A pache. If your client is using
W indows IIS, then look at IIS hacks.
[1] L ocate your .htaccess file on your server.
( See “ H ow to locate .htaccess on your server” )
[2] O nce you’ ve located it, edit the file using a tex t editor.
If you are using W indows, I recommend N otepad. If you’ re using M ac,
download a free tex t editor like T ex tW rangler.
[3] I n your htaccess file decide what you want to do, then add a line of code:
To create a custom 40 4 page
Use “ E rrorD ocument” and put the UR L to your custom 4 0 4 page at the end.
E x ample:
E rrorD ocument 4 0 4 http://www.e x ampl e .com/my - cu stom- 4 0 4 - page .html
To password protect a folder
A . F irst, you will need to first need to create an .htpasswd file. T he easy way is to
use this online tool to create it: http://www.tool s.dy n amicdriv e .com/password/
B . E nter your desired username on the left, and the password you want that person
to have on the right.
C. In the “ path to .htpasswd” box , put it in a folder that isn’ t accessible to the
public. Usually, it’ s safe to put in your home directory like “ / home/ myusername”
D . Click submit and put the downloaded .htpasswd file into “ / home/ myusername”
E . N ow that you’ re done that, type this into your .htaccess file
AuthUserF ile /home/myusername/.htpasswd
AuthN ame EnterPassword
AuthT ype B asic
req uire user some_ users_ name
R eplace “ some_ users_ name” with the username that will be allowed into this
folder.
To block users by I P address
T ype these four lines into your .htaccess file:
O rder allow, deny
D eny from 111.222.333.444
D eny from 5 5 5 .666.7 7 7 .888
Allow from all
In the lines that say “ deny from, ” replace the ex ample IP addresses
“ 111.222.333.444” with the real IP address you want to block.
To block users by referrer
A dd these three lines to your .htaccess file:
R ewriteEngine O n
R ewriteC ond % { H T T P_ R EF ER ER } somedomain .com [ N C ]
R ewriteR ule .* - [ F ]
If you want to block more than one referrer, add more R ewriteCond lines like this:
R ewriteEngine O n
R ewriteC ond % { H T T P_ R EF ER ER } somedomain .com [ N C ,O R ]
R ewriteC ond % { H T T P_ R EF ER ER } anotherdomain .com [ N C ,O R ]
R ewriteC ond % { H T T P_ R EF ER ER } 3rdD omain .com [ N C ]
R ewriteR ule .* - [ F ]
N otice that every line ex cept for the last one should end in “ [ N C ,O R ] ”
NO 14
Notice that every line except for the last one should end in “[NC,OR]”
To make something other than index.html be the default page.
Let’s say you want “home.html” to be your default page. Use this line in the
htaccess file:
DirectoryIndex. home.html
To 301 redirect an old domain to a new domain
Add these lines to your htaccess file
RewriteEngine on
RewriteCond %{HTTP_HOST} ^olddomain.com [NC,OR]
RewriteCond %{HTTP_HOST} ^www.olddomain.com [NC]
RewriteRule ^(.*)$ http://www.newdomain.com/$1 [R=301,NC]
Replace "olddomain.com" with your old domain name. This will 301 redirect links
form your old domain to your new one with the WWW in front of it.
To prevent someone hotlinking resources on your website
Add these lines to your htaccess file
RewriteEngine on
RewriteCond %{HTTP_REFERER} !^$
RewriteCond %{HTTP_REFERER} !^http://(www.)?mydomain.com/.*$ [NC]
RewriteRule .(gif|jpg|js|css)$ - [F]
Replace mydomain.com with your domain name. These lines will prevent someone
from hot linking GIF, JPG, JS, and CSS files.
To redirect all pages from HTTPS:// to HTTP://
Add these lines to your htaccess file
RewriteEngine on
RewriteCond %{SERVER_PORT} !^80$
RewriteRule ^(.*)$ https://www.domain.com/$1 [NC,R=301,L]
Replace domain.com with your own domain.
To redirect all pages from HTTP:// to HTTPS://
Add these lines to your htaccess file
RewriteEngine on
RewriteCond %{SERVER_PORT} !^443$
RewriteRule ^(.*)$ http://www.domain.com/$1 [NC,R=301,L]
Replace domain.com with your own domain.
To redirect one URL from HTTPS:// to HTTP://
Assume the URL is http://www.domain.com/mypage.html
RewriteEngine on
RewriteCond %{HTTP_HOST} !^80$
RewriteCond %{HTTP_HOST} ^www.domain.com/mypage.html [NC]
RewriteRule ^(.*)$ http://www.domain.com/mypage.html [NC,R=301,L]
D E T E C T I N G G O O G L E B O TNO 15
[ 1 ] C ut and paste the following code anywhere in the < body> of your document>
if( strstr( strtolower( $ _ SER V ER [ ' H T T P_ USER _ AG EN T ' ] ) , "googlebot") )
{
// what to do
}
[ 2 ] R eplace with your content
R eplace “ / / what to do” with whatever you want to happen.
Tip: T o make it H T M L
D o this;
if( strstr( strtolower( $ _ SER V ER [ ' H T T P_ USER _ AG EN T ' ] ) , "googlebot") )
{ ? >
<h1>Put your H T ML here</h1>
<p>anything you’ d normally do</p>
<? php
}
L et’ s break apart each piece of the P H P .
if( condition) { } - this is j ust a simple function that says “ if x is true, do y” .
N ow we’ ll work from the inside of the nested statement out.
‘ H T T P_ USER _ AG EN T ’ - this ex tracts a browser specific ID string
$ _ SER V ER - this is an array with information such as headers, paths, and script
locations, which is created by the web server
strtolower - returns string with all alphabetic characters converted to lowercase.
strstr - returns part of haystack string starting from and including the first
occurrence of needle to the end of haystack
{
// what to do
}
forward slashes / / are j ust used to make a comment. A ll we’ re saying here, is to put
whatever you want to happen between the curly brackets.
If you like visuals better - this is a good ex planation of the pieces of code;
T here may be many reasons why you’ d want to detect G ooglebot as
the User A gent. T hese can be left to your imagination :)
A D D C U S T O M S E A R C H
E N G I N E T O Y O U R S I T E
A custom G oogle search on your site can be a powerful feature, yet still many
people are not using it. I’ m going to walk you through the steps of installing
it on your site.
G o to - http://www.googl e .com/cse
T his is where a little technical know how applies.
You can’ t j ust simply add the site UR L - you must include an
asterisk ( * ) after the UR L for it to search the entire site, like this;
http://www.q u icksprou t.com/*
A fter we have done all this, we’ re given the opportunity to try
out the custom search engine before installing it on our site.
C ompose a Title and D escriptionS T E P O N E
S T E P T W OA dd S ites To B e I ncluded in S earch
S T E P T H R E ES elect Edition and C onfirm
C H E C K I T O U T
LET’S
C H E C K I T O U T
LET’S
NO 16
A search for [ twitter tips] in our custom engine shows good
results and variety among the sites in the engine. ( N ote the
ads will be present unless you pay for a premium version) .
N ow it’ s time to install in your site!
T his type of installation is going to either be a new page or a
new post. L et’ s use a new page in this ex ample, however a new
post will work in the same way.
W e’ re going to edit in H T M L mode since we’ ll be pasting J avaScript
code into the page.
A search for [ twitter tips] in our custom engine shows good
results and variety among the sites in the engine. ( N ote the
I NS TA L L I NG C US TO M S EA R C H I N YO UR S I TE
[1] Navigate to a “ new page”
[2] Edit in HTM L M ode
[3] Paste C ode
W e’ re going to edit in H T M L mode since we’ ll be pasting J avaScript
code into the page.
P R E V I E W I T
LET’S
P R E V I E W I T
LET’S
[3] Paste C ode
LET’SLET’SLET’SLET’SLET’S
I’ m going to show you a way to allow visitors who speak any language to enj oy
M U L T I L I N G U A L M A R K U P
A N D G O O G L E T R A N S L A T E
NO 17
I’ m going to show you a way to allow visitors who speak any language to enj oy
your site, with the installation of G oogle T ranslate. T his is fairly new, and not
many people are doing it, so its still a good time to get in early.
N avigate to: http://tran sl ate .googl e .com/tran sl ate _ tool s
F or most of you, you’ re going to want to “ translate the
whole page” . In very specific circumstances where you may
have a section of tex t in a different language you have the
option to translate j ust a section of your page.
I recommend using optional settings to completely
customize your translation ex perience on your site.
You can select ex actly which languages your page
can be translated to.
You can select how the translate box will
A gain, for most of us that’ s going to be E nglish.
T he first phase of getting translate running on your site, is to select all the
options and generate the code snippet.
M U L T I L I N G U A L M A R K U P
A N D G O O G L E T R A N S L A T E
NO 17
P H A S E IP H A S E I
G E T T I N G T H E C O D EG E T T I N G T H E C O D E
Translate Page or Part of Page?S T E P O N E
F or most of you, you’ re going to want to “ translate the
whole page” . In very specific circumstances where you may
have a section of tex t in a different language you have the
option to translate j ust a section of your page.
S T E P T W OS elect L anguage of Your W ebpage
S how O ptional S ettingsS T E P T H R E E
You can select how the translate box will
display on your site. I personally like
“ inline” and “ dropdown only” .
T he you’ ve got some more advanced setting choices. H ere we’ ve chosen to
automatically display the banner to people who need to translate the page.
A nd we’ ve select to track the usage in G oogle A nalytics.
A fter you’ ve made all of your selections you should see the completed snippet of code.
You can do a q uick preview of your translate button before you go to copy the
code and add it to your site.
QUICK TIP:
FAST WAY TO FIND YOUR GOOGLE ANALYTICS ID
1. GO TO YOUR WEBPAGE
2. VIEW SOURCE
3. CONTROL F (IN CHROME) TO FIND TEXT
4. SEARCH FOR “UA-” (WITH THE DASH)
Preview The Page
You can do a q uick preview of your translate button before you go to copy the
code and add it to your site.
Preview The Page
N ow that we’ ve got the code ready, it needs to be installed on your site. If you’ re
running a content management system like W ordP ress, this should be fairly
easy. W e’ re j ust going to locate the spot where the code needs to be inserted.
T here’ s likely to be two basic places you’ ll decide to install the box .
A q uick look at the source code again,
will give you a good idea where the
code needs to go;
P H A S E I I
I N S T A L L I N G T H E
C O D E O N Y O U R S I T E
D ecide W here You W ant To Translate B ox To A ppearS T E P O N E
O ption A
W ould be somewhere in the header, like
here on Q uickSprout;
O ption B
W ould be somewhere in a sidebar, like
here on Q uicksprout;
I nstalling The C ode I n The Header [option A ]S T E P T W O
A q uick look at the source code again,
will give you a good idea where the
code needs to go;
You can see, it needs to go inbetween the search box and the logo.
T his option is a little easier, because you will likely be able to j ust
create a new tex t widget.
A ll done! N ow visitors of any language can enj oy
your site!
L ocate the place in the code where your translate
box needs to go and paste the snippet in the
header.php file and save.
I nstalling The C ode I n The Header [option A ]S T E P T W O
I nstalling the C ode in a S idebar. [option B ]S T E P T W O
[1] L og I nto W ordPress
[2] Navigate to the “ editor”
[3] S elect “ Header”
[4] Paste Translate C ode I nto Header.php File
[1] Navigate to your widgets
[2] A dd a new “ Tex t W idget” to your sidebar
[3] Paste the Translate C ode I nto Your W idget
box needs to go and paste the snippet in the
header.php file and save.
[2]
[1]
[2]
[3]
[3]
[4]
B L O C K P O T E N T I A L L Y
M A L I C I O U S O R H A R M F U L
L I N K S T O Y O U R S I T E
NO 18
http://www.q u icksprou t.com/? n e il pate l scam
( P lease don’ t link to me or anyone else like that)
A nd the malicious q uery string can end up on different pages:
http://www.q u icksprou t.com/page /2 /? n e il pate l scam
http://www.q u icksprou t.com/page /3 /? n e il pate l scam
T hese pages can get index ed as such, and could potentially replace the real pages in
their index . T his is unlikely, but in either case, you may need a way to fix this if it
happens. H ere’ s a bit of .htaccess code to do so:
# F I X B AD L I N K S
<ifModule mod_ rewrite.c>
R ewriteC ond % { Q UER Y _ ST R I N G } q uerystring [ N C ]
R ewriteR ule .* http://ex ample.com/$ 1? [ R =301,L ]
</ifModule>
S imply do the following:
[1] M ake sure the .htaccess is in your root directory.
[2] P lace this bit of code at the bottom on the .htaccess file.
[3] R eplace “ q uerystring” with the malicious q uerystring being used.
[4] R eplace ex ample.com with your site’ s UR L
[5 ] T o add multiple q uerystrings use the “ pipes” ( | ) as an “ or” ex pressions:
( neilpatelscam| q uicksproutripoff| badblogger) for the q uerystring.
[6 ] F inally, run a site: q uery in G oogle a week or two later, such as:
site:q uicksprout.com/ ? neilpatelscam to see if they’ ve been removed from the
index .
O ccasionally a hacker or even j ust someone inex perienced
without malicious intent will send a back link over to your site
with a q uery parameter attached to the end of it. It might look
something like the following:
T his section of browser plugins revolves around the ones that help optimize your
sites accessibility and index ation.
F irst, here’ s the list.
B roken L ink Checker
https://chrome .googl e .com/we b store /de tail /oj kcdipcgfae kb e ae l aapakgn j fl fgl f
W eb D eveloper
http://chrispe de rick.com/work/we b - de v e l ope r/
R edirect P ath Checker
https://chrome .googl e .com/we b store /de tail /aomidfkchockcl dhb kggj okdkke b mdl l
SE O moz T oolbar
https://chrome .googl e .com/we b store /de tail /e akacpaij cpapn dcfffdgphdiccmpkn p
Chrome Sniffer
https://chrome .googl e .com/we b store /de tail /homgcn aoacgigpkkl j j j e kpign b l ke ae
G oogle A nalytics D ebugger
https://chrome .googl e .com/we b store /de tail /j n kmfdil e e l hofj cij ame phohj e chhn a
M icroformats for Chrome
https://chrome .googl e .com/we b store /de tail /oal b ifkn mcl b n mj l l j de mhj j l kmppj j l
R ulers G uides and E yedropper Color P icker
https://chrome .googl e .com/we b store /de tail /b j pn gj gkahhfl e j n e e mihpb n fdoafoe h
W ord Count
https://chrome .googl e .com/we b store /de tail /kmn dj oipob j fj b hocpoe e j j imchn b j j e
Source K it
https://chrome .googl e .com/we b store /de tail /iie e l dj dihkpoapgipfke oddj ckopgj g? hl = e n - U S
I’ m going to show you how to use some of these in an advanced way.
B roken L inks C hecker
N ot only is the broken links checker a great plugin to find broken links q uickly on
your site, but you can use it in creative ways on other people’ s sites to get ideas for
linkbuilding and prospecting.
F or ex ample, try running it on the sitemap of a competitor’ s website. H ere’ s how:
[1] F ind a competitor with an H T M L sitemap. F or this ex ample I’ m going to
randomly use www.bizchair.com and their sitemap is
http://www.b iz chair.com/site - map.html
B R O W S E R P L U G I N S F O R
O N - S I T E A N A L Y S I S
NO 19
[2] R un the L ink Checker
Click the icon for the ex tension
W ait for it to find the broken links - in this case there are
q uite a few.
N ot only is the broken links checker
B rowser plugins can greatly speed up your workflow and efficiency.
I’ m going to show you some plugins for G oogle Chrome, and a little
bit about how to use them in more advanced ways.
C hrome S niffer
T his plugin automatically shows you the CM S or script library a website uses.
E x tremely handy if you are looking to reach out to only W ordP ress site owners, for
ex ample.
A s you browse the web, the icon to the far right of the UR L will change to match
which CM S or library is being used.
R edirect Path C hecker
T his plugin will automatically alert you if you were taken to a page via any kind of
redirect. Can be very useful when browsing your site, in the case that you are
internally linking to outdated UR L s ( or ex ternally for that matter)
F or ex ample, I j ust found on my site this link to G izmodo 3 0 2 redirects:
H ow did I know? B ecause the plugin alerted me to the 3 0 2 .
A nd then you can click on the icon and it will show you the redirect ( or series of
redirects) that the browser took to get to a page.
N ot only is the broken links checker
a great plugin to find broken links
q uickly on your site, but you can use
it in creative ways on other people’ s
sites to get ideas for linkbuilding
and prospecting.
R edirect Path C hecker
T his plugin will automatically alert you if you were taken to a page via any kind of
F or ex ample, you can see that my site is built on W ordP ress and here is a site built
with D rupal
A nd then you can click on the icon and it will show you the redirect ( or series ofA nd then you can click on the icon and it will show you the redirect ( or series ofA nd then you can click on the icon and it will show you the redirect ( or series of
The S EO moz Toolbar & Plugin
You can do many things with the M oz plugin. A few of the more advanced things
you might use it to look for are:
Q uickly finding followed vs nofollowed links
O r finding the country and IP
address for the website
W E L L D O N E ! Y O U M A D E I T T H R O U G H C H A P T E R
O N E ! A R E Y O U R E A D Y F O R C H A P T E R T W O :
S I T E S P E E D & P E R F O R M A N C E
T A K E M E T O
CHAPTER TWO
T A K E M E T O
CHAPTER TWO
T A K E M E T O
INTRODUCTION
T A K E M E T O
INTRODUCTION
T H E A D V A N C E D
G U I D E T O BY NEIL PATEL
AND
SUJAN PATEL
SEOSEOSEOSEOSEOSEOSEOSEOSEOSEOSEOSEOSEOSEOSEOSEOSEOSEOSEOSEOSEOSEOSEOSEOSEOSEOSEOSEOSEOSEOSEOSEOSEOSEOSEOSEOSEOSEOSEOSEOSEOSEOSEOSEOSEOSEOSEOSEOSEOSEOSEOSEOSEOSEOSEOSEOSEOSEOSEOSEOSEOSEOSEOSEOSEOSEOSEOSEOSEOSEOSEOSEOSEOSEOSEOSEOSEOSEOSEOSEOSEOSEOSEOSEOSEO
0202
SEOSEOSEOSEOSEOSEOSEO
02
SEOSEOSEOSEOSEOSEOSEO
020202
SEO
02
SEO
02
SEO
02
SEOSEOSEOSEO
02
SEOSEOSEO
02
SEOSEOSEO
02
SEOSEOSEOSEOSEOSEOSEOSEOSEOSEO
02
SEOSEOSEOSEOSEOSEOSEO
02
SEOSEOSEOSEOSEOSEOSEO
02
SEOSEOSEOSEOSEOSEOSEO
CHAPTER 02
S I T E S P E E D & P E R F O R M A N C E
T he first section covered how to make your site crawlable
and accessible. T hat’ s a fantastic first step, once
accomplished, to make your site better than many others
on the web.
N ow we’ re going to crank it up a level and help make your
site faster and perform more efficiently. T his is not only
great for user ex perience but search engines love it to.
F ollow this section straight through for some tips to get
your site up to speed.
P age speed or page load time is crucial these days, not only
for a possible small boost in rankings, but because u se rs wil l
l ov e y ou . P roviding a fast ex perience for visitors is essential!
W e’ re going to cover how you can measure your site speed
through G oogle P age Speed O nline.
G o to https://de v e l ope rs.googl e .com/page spe e d/
M E A S U R I N G Y O U R
S I T E S P E E D
NO 1
G o To G oogle PageS peed O nlineS T E P O N E
S T E P T W O
R un The Tool O n
Your Homepage
T his gives you an overall score, and being your homepage is a
good gauge of your site as a whole.
T hen you can drill down into the list of prioritized issues;
You should focus on the high and medium priority items first.
Click on each item to get the details.
T he tools gives you detailed suggestions for each item. F ix ing
many of the common issues is covered later in this document.
F or now, we’ re simply running the tool to diagnose any issues.
I have a page on my site, Q uickSprout, which is entirely different than
most of the other pages - http://www.q u icksprou t.com/pro/
So I would also want to run the P ageSpeed tool on this page to look
any differences, especially because it’ s an important sales page.
Click the “ mobile” tab top right;
R un the Tool O n I nner Pages
( E sp ecially T hose T hat M ight B e D ifferent F rom T he H om ep age)
Test Your S ite For M O B I L E S ite S peed
S T E P T W O
R un The Tool O n
Your Homepage
S T E P T H R E E
Click the “ mobile” tab top right;
R emember to test your inner pages as well;
Test Your S ite For M O B I L E S ite S peedS T E P F O U R
You probably all know how to install the normal analytics tracking in W ordP ress,
and you may even know how to install the page speed code snippet as well.
W e’ re using the G oogle A nalyticator P lugin for this.
A gain, this is likely very basic, but j ust a reminder. Install the tracking code here.
B efore we configure the page speed part, we’ re j ust going to be sure you’ ve
configured the user tracking correctly. M ight as well, since we’ re in here, right?
T R AC K P A G E L O A D
I N A N A L Y T I C S
NO 2
You may know that you can also track page load
speed within analytics. B ut you may not know of a
few little ex tras you can do along with this.
W e’ re going to cover doing this two ways:
[1] Tracking within W ordPress
[2] Tracking within a Non W ordPress site
S E T T I N G U P
T R A C K I N G I N
W O R D P R E S S
S E T T I N G U P
T R A C K I N G I N
W O R D P R E S S
I nstall the Normal Tracking C odeS T E P O N E
N E X T
S T E P T H R E E C heck S ource C ode
T o do this, follow these simple three steps;
[1] S elect “ no”
[2] C heck which users you do NO T want to track for traffic
( I l ike j u st admin )
[3] S elect “ R emove” - this is the easiest method
T he site speed portion. Its made so easy in this analytics plugin.
J ust be sure its “ enabled” .
You might think that was easy, and this is an advanced guide. N ow that we
have the basics setup, let’ s add some more important features.
N ot many people know to do this, but you can set your sampl e rate . N ormally,
G oogle A nalytics does not track a very large percentage of your site speed data
( on l y 1 % b y de fau l t) — so if you have a small site, you could potentially be
missing out on a lot of important data.
T his gets installed before tracker initializ ation, so be sure to put it in the
correct box .
H ere’ s the code snippet ( T he A sync snippet) ;
_ gaq .push( [ ' _ setSiteSpeedSampleR ate' , 5 ] ) ;
N otice the number ‘ 5 ’ . T his is the new sample rate — 5 % of all visits. F or a small
site, that receives less than about 1 0 , 0 0 0 visits a month, feel free to crank that
up to 5 0 or even 1 0 0 , but only a reasonable amount to collect the data you need.
B ut please note, that if your site receives more than 1 0 K hits a day, G oogle will
automatically only collect a 1 % sample.
It is also recommended to keep your sample size as low as possible but large
enough to collect data.
You should always check your source code to be sure its rendering correctly.
( R e me mb e r, don ’ t che ck it whil e l ogge d in to W ordP re ss, b e cau se as an admin
y ou wil l b e e x cl u de d from se e in g the code ) .
S et S ample R ateS T E P T W O
N E X T
S T E P T H R E E C heck S ource C ode
You should always check your source code to be sure its rendering correctly.
( R e me mb e r, don ’ t che ck it whil e l ogge d in to W ordP re ss, b e cau se as an admin
y ou wil l b e e x cl u de d from se e in g the code ) .
You should see the Sample R ate code j ust above the T rack P ageview code, as
shown in the screenshot.
T his is a very similar process, but we’ re going to lay it all out
specifically so you can see it.
T his is all pretty basic, but j ust make sure you have the page load time code
added in analytics;
Your analytics will look like the following, with the page load code bolded;
<script type="tex t/j avascript">
var _ gaq = _ gaq | | [ ] ;
A dd Page L oad Time C odeS T E P T W O
020202020202020202020202020202S E T T I N G U P
T R A C K I N G I N
N O N W O R D P R E S S
S E T T I N G U P
T R A C K I N G I N
N O N W O R D P R E S S
D epending on how your custom site may be set up, you might have a .php file
that handles the header ( l ike in W ordP re ss) or you may have static H T M L files
with the header in each file ( in which case y ou wil l hav e to u pdate e v e ry fil e ) .
O ur ex ample will have a header.php file.
L ocate Your G oogle A nalyticsS T E P O N E
S T E P T H R E E A dd S ample R ate C ode
N ex t, we’ ll add the same sample rate code;
Your analytics will look like the following, with the page load code bolded;
<script type="tex t/j avascript">
var _ gaq = _ gaq | | [ ] ;
_ gaq .push( [ ' _ setAccount' , ' UA-15 89983-1' ] ) ;
_ gaq .push( [ ' _ trackPageview' ] ) ;
_ g a q . p u s h ( [ ' _ t r a c k P a g e Lo a d Ti m e ' ] ) ;
( function( ) {
var ga = document.createElement( ' script' ) ; ga.type =
' tex t/j avascript' ; ga.async = true;
ga.src = ( ' https:' == document.location.protocol ? ' https://ssl' :
' http://www' ) + ' .google-analytics.com/ga.j s' ;
var s = document.getElementsB yT agN ame( ' script' ) [ 0] ;
s.parentN ode.insertB efore( ga, s) ;
} ) ( ) ;
T he code again is;
_ gaq .push( [ ' _ setSiteSpeedSampleR ate' , 5 ] ) ;
A nd you use the number ( in this case 5 ) to control the
percentage of the site being tracked for page speed.
W H E R E T O F I N D T H E R E P O R T
You will view this data by going to;
Content O verview Site Speed
M ost people miss this nex t step! G o to “ page timings” and click on “ technical”
U S I N G Y A H O O ’ S
Y S L O W P L U G I N
NO 3
I nstall YS lowS T E P O N E
G o to http://y sl ow.org/
Install the YSlow plugin in your browser
( pre tty mu ch an y thin g b e side s I n te rn e t E x pl ore r) .
T his is all pretty basic, but j ust make
sure you have the page load time code
added in analytics;
You’ ll notice there are three rulesets to choose from;
[1] YS low ( V 2) - R uns the full set of 23 rules
[2] C lassic ( V 1) - R uns the first 13 rules
[3] S mall S ite or B log - R uns 14 rules that apply to small sites
I would use small site or blog only if you’ re getting less than about 1 0 , 0 0 0 visits
a month. O therwise use YS low ( V 2) if you’ re getting over 1 0 , 0 0 0 visits a month.
L oad the page you want to test. H it “ R un T est” .
O pen and R un YS lowS T E P T W O
www.zappos.com
S T E P T H R E E R eading The R esults
O verall performance score - You should strive for an 8 5 ( B ) .
A lso, note that you can filter the report of the type of result.
A s a strategy of prioritization, I would focus on the F ’ s first.
E ach error provides a short ex planation and a link to read more information
on the Yahoo D eveloper site.
N otice the first error returned in YSlow?
M ake F ewer H T T P R eq uests
“ T his page has 2 3 e x te rn al J av ascript scripts. T ry comb in in g the m in to on e .
T his page has 7 e x te rn al sty l e she e ts. T ry comb in in g the m in to on e .
T his page has 1 9 e x te rn al b ackgrou n d image s. T ry comb in in g the m with C S S
sprite s.”
T his is very common, and it is because the CSS and J S files are not optimized and
minified.
C he ck ou t the se ction ” U sin g L E S S to optimiz e C S S ” for how to improv e the se
are as.
L et’ s tackle one of the easiest win areas: reducing large images.
name:
1 . what is seo?
2 . what is yslow?
3 . make fewer H T T P req uests?
4 . Use a content delivery newtowrk?
5 . A void SR C href
6 . Compress components with gzip?
7 . P ut CSS at top?
8 . R educe D N S lookups?
L arge images are often the biggest culprit when it comes to slow site
speed. I’ m going to show you a few ways to find the worst offenders so
you can take action and reduce them.
T hat’ s right! You can find large images within G oogle image search. T his
is a q uick method to catch any low hanging fruit.
site:q uicksprout.com
shows me all the images from my site G oogle has index ed;
image s.googl e .com
G o To G oogle I mage S earchS T E P O N E
S T E P T W OD o A S ite S earch
NO 4
F I N D I N G L A R G E
I M A G E S T O R E D U C E
i m a g e s . g o o g l e . c o m
i m a g e s . g o o g l e . c o m
S T E P T H R E ES hut O ff S afe S earch
010101010101010101G O O G L E
I M A G E
S E A R C H
G O O G L E
I M A G E
S E A R C H
W e want to be sure we’ re getting all the images in results.
Start with a conservative number, and
filter for images larger than 6 4 0 x 4 8 0 .
W hen you’ re looking at results, see if you spot any images that end up
as being “ large” that you know shouldn’ t be. You know they’ re probably
being resized in the CSS or H T M L and should be reduced to the actual
size you want.
H ere are the results. T his one image caught my attention;
T his is a really q uick method to find some really obvious ones. L et’ s do
some approaches that work much better at scale.
A nd you can see when clicking on
the photo, the actual size is much
to large
Filter B y S iz e
L ook at R esults
S T E P F O U R
i m a g e s . g o o g l e . c o m
S T E P T H R E ES hut O ff S afe S earch
S T E P F I V E
W e’ re going to use Screaming F rog to crawl a site and show us the
largest images by file size.
If you haven’ t already, crawl the site you want to check.
T hen view images
F ilter by those over 1 0 0 kb
Sort by size
E x port to .csv
Use the spreadsheet as you track your progress to reducing images. You may
have a lot of large images, and reducing them could take a few sessions!
020202020202020202U S E S C R E A M I N G
F R O G S E O
S P I D E R
U S E S C R E A M I N G
F R O G S E O
S P I D E R
C rawl The S iteS T E P O N E
W hen you minify your J avaScript and turn it into a single file you increase the speed
of your website because it’ s only one small download instead of many larger ones.
T his tutorial will help you install G oogle Closure T ool and minify all of your
J avaScript.
[1] G o to the G oogle C ompiler closure website
T he website is: http://code .googl e .com/p/cl osu re - compil e r/
[2] C lick on the download
T he download is the link that says “ compiler- latest.zip”
G O O G L E C L O S U R E T O
O P T I M I Z E F O R S P E E DNO 5
i m a g e s . g o o g l e . c o m
[3] O pen the Z I P file
[5 ] O pen a command line window
[4] C opy the J A R file to the folder where all your J avaS cript is located
O N A M A C
O N A P CD ouble click on the Z IP file. It will create a folder with the same
name containing a “ J A R ” file.
In this ex ample, we dragged the compiler.j ar file to the folder where
our J avaScript is located.
Google Drive
Desktop
Applications
Documents
Downloads
inbox
compiler-latest
compiler-latest.zip
compiler.jar
COPYING
README
Google Drive
Desktop
Applications
Documents
Downloads
inbox
favicon.iso
img
javascripts
job-ques
robots.txt
stylesheets
application.js
bootstrap.js
bootstrap.min.js
compiler.jar
d3.min.js
extensions.js
jquery_spinner.js
inbox
Google Drive
Desktop
Applications
Documents
Downloads
inbox
compiler-latest
compiler-latest.zip
compiler.jar
COPYING
README
[5 ] O pen a command line window
[6 ] C hange to the folder where your J avaS cript is located
O N A M A C
G o to your F inder, then open A pplications > Utilities > T erminal
O N A M A C
T ype in “ ~ / ” then the folder where your J avaScript files are located.
In this ex ample, my J avaScript was in the home directory under a
folder called code, then os2 , then public, then j avascripts.
O N A W I N D O W S
Click on Start, type in “ command prompt” , click on “ command prompt”
O N A W I N D O W S
T ype in “ cd  ” then the folder where your J avaScript files are located.
[7 ] Type in the J ava command to create your minified J avaS cript file
O N B O T H W I N D O W S A N D M A C :
T ype: j ava -j ar compiler.j ar --j s j q uery.j s
j q uery_ spinner.j s --j s_ output_ file output.j s”
R eplace “ j q uery.j s” and “ j q uery_ spinner.j s” with the names of the
J avaScript files you want to minify. If order is important, type them
in the correct order they need to go in.
R eplace “ output.j s”
In this ex ample, we compiled j q uery.j s and a plugin called
“ j q uery_ spinner.”
Google Drive
Desktop
Applications
Documents
Downloads
inbox
TimeTracker
TinkerTool
TinyUmbrella
Twitter
Utilities
Vagrant
Podcast Capture
RAID Utility
Remote Install Mac OS X
Spaces
System Profiler
Terminal
[8] Add the minified JavaScript file back into your project
[9] Finally, test your application to make sure everything is still running
In this example, we added line 8 to add the JavaScript back into this
HTML file.
In sections two and three we covered how to evaluate the performance of your site. H ere
we’ re going to cover an advanced way to optimize CSS and J S files, with “ L E SS” .
L ES S is a dynamic stylesheet language that creates CSS for you. T he advantage of using
L E SS is that a L E SS compiler will automatically make your CSS files smaller so they are
faster to download for your users.
L ess has a free application you can download to compress your CSS files
F O R M A C S
G o to http://in cide n t5 7 .com/l e ss/ and download L ess.A pp.
S T E P T W OO pen the L ess A pplication
S T E P O N E
O P T I M I Z I N G C S S
A N D J S F I L E S
D ownload and I nstall L ess A pplications
http://incident57.com
F O R W I N D O W S
G o to http://win l e ss.org/ and download the W inL ess application
http://winless.org
NO 6
S T E P T H R E E
F O R M A C S
D ouble click on the download and move the
L ess application to your applications folder.
S T E P T W OO pen the L ess A pplication
Google Drive
Desktop
Applications
Documents
Downloads
inbox
Less
Less.zip
Google Drive
Desktop
Applications
Documents
Downloads
inbox
index.php
modernist
pagelines
readme.txt
twentyeleven
twentyten
404.php
archive.php
editor-style.css
footer.php
ie-fixes.css
index.php
style.css
Google Drive
Desktop
Applications
Documents
Downloads
inbox
index.php
modernist
pagelines
readme.txt
twentyeleven
twentyten
404.php
archive.php
editor-style.less
footer.php
ie-fixes.less
index.php
style.less
In this ex ample, we took a W ordpress theme’ s CSS files and renamed
them all with “ .less” .
In this ex ample, we’ re dragging the folder that contains the L E SS files
into the application:
O pen the Folder W here your C S S Files are
and R ename your C S S Files as “ .less”
S T E P T H R E E D rag the folder with your L ES S files
into the L ess application
B E F O R E A F T E R
T his will create new CSS files that have been minified for faster downloads.
W hile the application is open, every time you change your less files, it will
automatically update the minified CSS for you.
Your L E SS files will look normal so you can still edit them:
B ut your minified CSS files will look like this:
C lick on C ompiler, then C ompile A llS T E P F O U R
L ess will A utomatically M inify your L ES S
Files into C S S Files W hile it’ s O pen
S T E P F I V E
B ut your minified CSS files will look like this:
In this ex ample we shaved off 2 k in file size. W hile it’ s only a small difference
doing many small optimization tweaks will add up and give your users a much
faster download.
I N S T A L L I N G G O O G L E ’ S
M O D _ S P E E D F O R A P AC H E
NO 7
[1] I nstalling G oogle’ s M O D _ S PEED for A pache
[1] S S H into your server
[2] D ownload the mod- pagespeed .deb package
[3] I nstall the .deb package
If you are running your website on an A pache server and you have control over
the configuration of the server at the module level, then you can install the
M O D _ P A G E SP E E D module for an easy speed boost.
I F Y O U ’ R E U S I N G A D E B I A N B A S E D S E R V E R
( S U C H A S D E B I A N O R U B U N T U ) :
[1] S S H into your server
I F Y O U ’ R E U S I N G A R E D H A T B A S E D S E R V E R
( S U C H A S R E D H A T , F E D O R A , O R C E N T O S ) :
F or additional information about M O D _ P A G E SP E E D see:
https://de v e l ope rs.googl e .com/spe e d/docs/mod_ page spe e d/u sin g_ mod
If your server is a 3 2 - bit machine use this command:
wget
https://dl-ssl.google.com/dl/linux /direct/mod-pagespeed-beta_ current_ i3
86.deb
If your server is a 6 4 - bit machine use this command:
wget
https://dl-ssl.google.com/dl/linux /direct/mod-pagespeed-beta_ current_ am
d64.deb
T ype this into the command line:
dpkg -i mod-pagespeed-* .deb
[4] C orrect any broken dependencies in place
T ype this into the command line:
apt-get -f install
WARNING: Although this tutorial looks very advanced, it’s relatively easy for someone
with experience configuring Apache at the server level. However, doing this on your own
with no experience may result in your whole website going down! You should know how to
install Apache modules and configure your webserver from a command line. If you don’t
know how then you should leave this up to a professional web developer or system
administrator who has experience.
[1] S S H into your server
[2] D ownload the mod- pagespeed .deb package
I F Y O U ’ R E U S I N G A R E D H A T B A S E D S E R V E R
( S U C H A S R E D H A T , F E D O R A , O R C E N T O S ) :
[1] O pen your A pache configuration file for editing
C O N F I G U R I N G M O D _ P A G E S P E E D
If your server is a 3 2 - bit machine use this command:
wget
https://dl-ssl.google.com/dl/linux /direct/mod-pagespeed-beta_ current_ i3
86.rpm
If your server is a 6 4 - bit machine use this command:
wget
https://dl-ssl.google.com/dl/linux /direct/mod-pagespeed-beta_ current_ x 8
6_ 64.rpm
[3] I nstall “ at” using the Yum package manager
T ype this into the command line:
yum install at
If you’ re using Ubuntu or D ebian the file will be located in:
/etc/apache2/mods-available
If you’ re using CentO S or F edora or R edhat, the file will be located in:
/etc/httpd/conf.d
[2] L ocate the pagespeed_ module directives.
T hey will be wrapped inside an IfM odule directive.
Enabling or disabling the module per folder
A dd the following line to any .htaccess file on your website:
T o turn M odP agespeed on:
ModPagespeed on
T o turn M odP agespeed off:
ModPagespeed off
[4] C orrect any broken dependencies in place
T ype this into the command line:
rpm -U mod-pagespeed-* .rpm
B R O W S E R C AC H I N G
( N O N - W O R D P R E S S S I T E )
NO 8
M ost of you are likely running W ordP ress sites, and we’ re going to cover some
plugins you can use with W ordP ress to speed up performance.
B ut for some of you who may not be running W ordP ress, I still want to give you
some technical info on optimizing for speed.
H ere, we’ re going to cover some advanced things you can do within your .htaccess
file to leverage browser caching. So when you see that warning within G oogle
P ageSpeed O nline, you can use the following techniq ues to fix it.
Use your F T P client of choice, or you can download and use F ileZ illa -
http://fil e z il l a- proj e ct.org/
I am sure you are familiar with how to log in via F T P , but in case you need a q uick
reminder;
Host: website name
Username
Password
Port: most cases you can leave this blank
T his is located in the root directory. M ake sure you can see hidden files,
otherwise you may not notice it.
N ex t, we’ re going to download the .htaccess file and save a backup so we can
safely edit it, but restore it if there is a mistake.
In F ileZ illa you right click and download;
L og I nto Your FTP S erver and B ackup Your .htaccess fileS T E P O N E
N ex t, we’ re going to download the .htaccess file and save a backup so we can
safely edit it, but restore it if there is a mistake.
In F ileZ illa you right click and download;
Find Your .htaccess FileS T E P T W O
S T E P T H R E E D ownload and B ackup the .htaccess File
N O T E : You should be a little comfortable
editing your .htaccess file. Talk to your
webmaster if you’re not sure this is something
you should be editing.
N O T E : In some cases your site may not have
an .htaccess file, so you can just create a new
file. Start a new document in your text editor
and name it .htaccess
N otice the code is basically the same, but
we’ ve chosen a different length of time for
the css.
T his will cache your CSS for one day. A gain,
this depends on how often you change your
css files, and how often people return back
to your site.
T he code for j avascript caching is also
similar, but in this case we’ ve set it to a
month.
[1] Turn R ewriteEngine O n
this should be the first thing in the .htaccess file
[2] A dd < file> wrapper tags
P H O T O F I L E S
C S S
J A V A S C R I P T
W e’ re setting the cache time for one week for photos. You should determine a
reasonable time frame for your site, depending on how often the photos change
and people visit.
[3] A dd the file type( s) within the wrapper
[4] A dd the code which creates the caching and sets the max time
to one week
[5 ] A dd the same code for other photo file types .png and .gif
N otice the code is basically the same, but
we’ ve chosen a different length of time for
the css.
T his will cache your CSS for one day. A gain,
this depends on how often you change your
css files, and how often people return back
to your site.
T he code for j avascript caching is also
similar, but in this case we’ ve set it to a
month.
T his will depend on how heavily your site
req uires J avascript and how often it changes.
C S S
J A V A S C R I P T
T I M E C H E A T - S H E E T
H ere’ s a few different time frames, since they are calculated in seconds;
5 minutes in seconds = 3 0 0
1 day in seconds = 8 6 , 4 0 0
1 week in seconds = 6 0 , 4 8 0 0
1 month in seconds = 2 , 6 2 9 , 0 0 0
6 months in seconds = 1 5 , 7 7 4 , 0 0 0
1 year in seconds = 3 1 , 5 3 6 , 0 0 0 ( basically ‘ infinite’ )
A s mentioned, you can mix and match the file types with time frames that make sense
for your site. W hen in doubt, set your time frames a little shorter j ust to be safe!
If you’ ve followed and implemented the tips in this section you should have one of the
faster sites on the web! N ex t we’ re going to cover new and groundbreaking areas of
search. You should be doing these things now to stay ahead of the competition.
W E L L D O N E ! Y O U M A D E I T T H R O U G H C H A P T E R
O N E ! A R E Y O U R E A D Y F O R C H A P T E R T H R E E :
N E W S E A R C H ?
T A K E M E T O
CHAPTER THREE
T A K E M E T O
CHAPTER THREE
T A K E M E T O
CHAPTER ONE
T A K E M E T O
CHAPTER ONE
T H E A D V A N C E D
G U I D E T O
SEOSEOSEOSEOSEOSEOSEOSEOSEOSEOSEOSEOSEOSEOSEOSEOSEOSEOSEOSEOSEOSEOSEOSEOSEOSEOSEOSEOSEOSEOSEOSEOSEOSEOSEOSEOSEOSEOSEOSEOSEOSEOSEOSEOSEOSEOSEOSEOSEOSEOSEOSEOSEOSEOSEOSEOSEOSEOSEOSEOSEOSEOSEOSEOSEOSEOSEOSEOSEOSEOSEOSEOSEOSEOSEOSEOSEOSEO
0303
SEOSEOSEOSEOSEOSEOSEO
03
SEOSEOSEOSEOSEOSEOSEO
030303
SEO
03
SEO
03
SEO
03
SEOSEOSEOSEO
03
SEOSEOSEO
03
SEOSEOSEO
03
SEOSEOSEOSEOSEOSEOSEOSEOSEOSEO
03
SEOSEOSEOSEOSEOSEOSEO
03
SEOSEOSEOSEOSEOSEOSEO
03
SEOSEOSEOSEOSEOSEOSEO
CHAPTER 03
N E W S E A R C H
N ow your site is crawlable, index able and lightening fast.
T ime to ramp it up another notch with some new search
elements. Search is moving towards a more semantic “ real
to life” environment. T his means a world where engines
understand the relationships between real world obj ects
like people, places, movies, businesses etc. T ime to get on
board now and integrate this into your website!
Schema.org is a universal metadata markup introduced in 2 0 1 1 by the
maj or search engines. Its used to communicate to them the intended type
of content on your website. T here are still many people not taking full
advantage of this!
W e’ re going to cover several types of schema implementation, and how to
get the correct markup into your H T M L code.
T hese five elements are best
described with an ex ample.
I T E M S C O P E
I T E M T Y P E
I T E M P R O P
I T E M I D
I T E M R E F
S C H E M A . O R G M E T A D A T A
I M P L E M E N T A T I O N
NO 1
010101010101010101010101B A S I C A T T R I B U T E S
O F M I C R O D A T A
B A S I C A T T R I B U T E S
O F M I C R O D A T A
BY NEIL PATEL
AND
SUJAN PATEL
120888 advanced seo g
120888 advanced seo g
120888 advanced seo g
120888 advanced seo g
120888 advanced seo g
120888 advanced seo g
120888 advanced seo g
120888 advanced seo g
120888 advanced seo g
120888 advanced seo g
120888 advanced seo g
120888 advanced seo g
120888 advanced seo g
120888 advanced seo g
120888 advanced seo g
120888 advanced seo g
120888 advanced seo g
120888 advanced seo g
120888 advanced seo g
120888 advanced seo g
120888 advanced seo g
120888 advanced seo g
120888 advanced seo g
120888 advanced seo g
120888 advanced seo g
120888 advanced seo g
120888 advanced seo g
120888 advanced seo g
120888 advanced seo g
120888 advanced seo g
120888 advanced seo g
120888 advanced seo g
120888 advanced seo g
120888 advanced seo g
120888 advanced seo g
120888 advanced seo g
120888 advanced seo g
120888 advanced seo g
120888 advanced seo g
120888 advanced seo g
120888 advanced seo g
120888 advanced seo g
120888 advanced seo g
120888 advanced seo g
120888 advanced seo g
120888 advanced seo g
120888 advanced seo g
120888 advanced seo g
120888 advanced seo g
120888 advanced seo g
120888 advanced seo g
120888 advanced seo g
120888 advanced seo g
120888 advanced seo g
120888 advanced seo g
120888 advanced seo g
120888 advanced seo g
120888 advanced seo g
120888 advanced seo g
120888 advanced seo g
120888 advanced seo g
120888 advanced seo g
120888 advanced seo g
120888 advanced seo g
120888 advanced seo g
120888 advanced seo g
120888 advanced seo g
120888 advanced seo g
120888 advanced seo g
120888 advanced seo g
120888 advanced seo g
120888 advanced seo g
120888 advanced seo g
120888 advanced seo g
120888 advanced seo g
120888 advanced seo g
120888 advanced seo g
120888 advanced seo g
120888 advanced seo g
120888 advanced seo g
120888 advanced seo g
120888 advanced seo g
120888 advanced seo g
120888 advanced seo g
120888 advanced seo g
120888 advanced seo g
120888 advanced seo g
120888 advanced seo g
120888 advanced seo g
120888 advanced seo g
120888 advanced seo g
120888 advanced seo g
120888 advanced seo g
120888 advanced seo g
120888 advanced seo g
120888 advanced seo g
120888 advanced seo g
120888 advanced seo g
120888 advanced seo g
120888 advanced seo g
120888 advanced seo g
120888 advanced seo g
120888 advanced seo g
120888 advanced seo g
120888 advanced seo g
120888 advanced seo g
120888 advanced seo g
120888 advanced seo g
120888 advanced seo g
120888 advanced seo g
120888 advanced seo g
120888 advanced seo g
120888 advanced seo g
120888 advanced seo g
120888 advanced seo g
120888 advanced seo g
120888 advanced seo g
120888 advanced seo g
120888 advanced seo g
120888 advanced seo g
120888 advanced seo g
120888 advanced seo g
120888 advanced seo g
120888 advanced seo g
120888 advanced seo g
120888 advanced seo g
120888 advanced seo g
120888 advanced seo g
120888 advanced seo g
120888 advanced seo g
120888 advanced seo g
120888 advanced seo g
120888 advanced seo g
120888 advanced seo g
120888 advanced seo g
120888 advanced seo g
120888 advanced seo g
120888 advanced seo g
120888 advanced seo g
120888 advanced seo g
120888 advanced seo g
120888 advanced seo g
120888 advanced seo g
120888 advanced seo g
120888 advanced seo g
120888 advanced seo g
120888 advanced seo g
120888 advanced seo g
120888 advanced seo g
120888 advanced seo g
120888 advanced seo g
120888 advanced seo g
120888 advanced seo g
120888 advanced seo g
120888 advanced seo g
120888 advanced seo g
120888 advanced seo g
120888 advanced seo g
120888 advanced seo g
120888 advanced seo g
120888 advanced seo g
120888 advanced seo g
120888 advanced seo g
120888 advanced seo g
120888 advanced seo g
120888 advanced seo g
120888 advanced seo g
120888 advanced seo g
120888 advanced seo g
120888 advanced seo g

More Related Content

What's hot

The duck soup link building guide
The duck soup link building guideThe duck soup link building guide
The duck soup link building guideTabish Javed
 
Moving URLs: Structural Web changes 
without losing rankings #SearchLove
Moving URLs: Structural Web changes 
without losing rankings #SearchLoveMoving URLs: Structural Web changes 
without losing rankings #SearchLove
Moving URLs: Structural Web changes 
without losing rankings #SearchLoveAleyda Solís
 
SEO Tests on Big Sites & Small - What Etsy, Pinterest and Others Can Teach Us
SEO Tests on Big Sites & Small - What Etsy, Pinterest and Others Can Teach UsSEO Tests on Big Sites & Small - What Etsy, Pinterest and Others Can Teach Us
SEO Tests on Big Sites & Small - What Etsy, Pinterest and Others Can Teach UsTom Anthony
 
BrightonSEO - How to use XPath with eCommerce Websites
BrightonSEO - How to use XPath with eCommerce WebsitesBrightonSEO - How to use XPath with eCommerce Websites
BrightonSEO - How to use XPath with eCommerce WebsitesJanet Plumpton
 
The Technical Seo Renaissance - Mike King
 The Technical Seo Renaissance - Mike King   The Technical Seo Renaissance - Mike King
The Technical Seo Renaissance - Mike King Glen Dimaandal
 
Single Page Apps - Gerry White @ BrightonSEO
Single Page Apps - Gerry White @ BrightonSEOSingle Page Apps - Gerry White @ BrightonSEO
Single Page Apps - Gerry White @ BrightonSEOGerry White
 
Deep crawl the chaotic landscape of JavaScript
Deep crawl the chaotic landscape of JavaScript Deep crawl the chaotic landscape of JavaScript
Deep crawl the chaotic landscape of JavaScript Onely
 
Modern Day Link Building by Jon Cooper
Modern Day Link Building by Jon CooperModern Day Link Building by Jon Cooper
Modern Day Link Building by Jon CooperGlen Dimaandal
 
SearchLove San Diego 2018 | Will Critchlow | From the Horse’s Mouth: What We ...
SearchLove San Diego 2018 | Will Critchlow | From the Horse’s Mouth: What We ...SearchLove San Diego 2018 | Will Critchlow | From the Horse’s Mouth: What We ...
SearchLove San Diego 2018 | Will Critchlow | From the Horse’s Mouth: What We ...Distilled
 
Google Search Engine Ranking Position - 200 Top Ranking Factors for SEO Marke...
Google Search Engine Ranking Position - 200 Top Ranking Factors for SEO Marke...Google Search Engine Ranking Position - 200 Top Ranking Factors for SEO Marke...
Google Search Engine Ranking Position - 200 Top Ranking Factors for SEO Marke...Ronald Soh
 
Mauro Cattaneo - Why hreflang is crucial to international SEO success - Brigh...
Mauro Cattaneo - Why hreflang is crucial to international SEO success - Brigh...Mauro Cattaneo - Why hreflang is crucial to international SEO success - Brigh...
Mauro Cattaneo - Why hreflang is crucial to international SEO success - Brigh...Mauro Cattaneo
 
Debugging rendering problems at scale
Debugging rendering problems at scaleDebugging rendering problems at scale
Debugging rendering problems at scaleGiacomo Zecchini
 
SearchLove Boston 2018 - Dewi Nawasari - Optimizing When Google is Your Compe...
SearchLove Boston 2018 - Dewi Nawasari - Optimizing When Google is Your Compe...SearchLove Boston 2018 - Dewi Nawasari - Optimizing When Google is Your Compe...
SearchLove Boston 2018 - Dewi Nawasari - Optimizing When Google is Your Compe...Distilled
 
Hreflang - why and how and why not for International SEO
Hreflang - why and how and why not for International SEOHreflang - why and how and why not for International SEO
Hreflang - why and how and why not for International SEOGerry White
 
SearchLove London 2018 - John Campbell - Voice Search – Calculating and Seizi...
SearchLove London 2018 - John Campbell - Voice Search – Calculating and Seizi...SearchLove London 2018 - John Campbell - Voice Search – Calculating and Seizi...
SearchLove London 2018 - John Campbell - Voice Search – Calculating and Seizi...Distilled
 
The State of the Web: Pagination and Infinite Scroll
The State of the Web: Pagination and Infinite ScrollThe State of the Web: Pagination and Infinite Scroll
The State of the Web: Pagination and Infinite ScrollAdam Gent
 
Common SEO Mistakes During Site Relaunches, Redesigns, Migrations (2018)
Common SEO Mistakes During Site Relaunches, Redesigns, Migrations (2018) Common SEO Mistakes During Site Relaunches, Redesigns, Migrations (2018)
Common SEO Mistakes During Site Relaunches, Redesigns, Migrations (2018) Melanie Phung
 

What's hot (18)

The duck soup link building guide
The duck soup link building guideThe duck soup link building guide
The duck soup link building guide
 
Moving URLs: Structural Web changes 
without losing rankings #SearchLove
Moving URLs: Structural Web changes 
without losing rankings #SearchLoveMoving URLs: Structural Web changes 
without losing rankings #SearchLove
Moving URLs: Structural Web changes 
without losing rankings #SearchLove
 
SEO Tests on Big Sites & Small - What Etsy, Pinterest and Others Can Teach Us
SEO Tests on Big Sites & Small - What Etsy, Pinterest and Others Can Teach UsSEO Tests on Big Sites & Small - What Etsy, Pinterest and Others Can Teach Us
SEO Tests on Big Sites & Small - What Etsy, Pinterest and Others Can Teach Us
 
BrightonSEO - How to use XPath with eCommerce Websites
BrightonSEO - How to use XPath with eCommerce WebsitesBrightonSEO - How to use XPath with eCommerce Websites
BrightonSEO - How to use XPath with eCommerce Websites
 
Facebook Coin
Facebook CoinFacebook Coin
Facebook Coin
 
The Technical Seo Renaissance - Mike King
 The Technical Seo Renaissance - Mike King   The Technical Seo Renaissance - Mike King
The Technical Seo Renaissance - Mike King
 
Single Page Apps - Gerry White @ BrightonSEO
Single Page Apps - Gerry White @ BrightonSEOSingle Page Apps - Gerry White @ BrightonSEO
Single Page Apps - Gerry White @ BrightonSEO
 
Deep crawl the chaotic landscape of JavaScript
Deep crawl the chaotic landscape of JavaScript Deep crawl the chaotic landscape of JavaScript
Deep crawl the chaotic landscape of JavaScript
 
Modern Day Link Building by Jon Cooper
Modern Day Link Building by Jon CooperModern Day Link Building by Jon Cooper
Modern Day Link Building by Jon Cooper
 
SearchLove San Diego 2018 | Will Critchlow | From the Horse’s Mouth: What We ...
SearchLove San Diego 2018 | Will Critchlow | From the Horse’s Mouth: What We ...SearchLove San Diego 2018 | Will Critchlow | From the Horse’s Mouth: What We ...
SearchLove San Diego 2018 | Will Critchlow | From the Horse’s Mouth: What We ...
 
Google Search Engine Ranking Position - 200 Top Ranking Factors for SEO Marke...
Google Search Engine Ranking Position - 200 Top Ranking Factors for SEO Marke...Google Search Engine Ranking Position - 200 Top Ranking Factors for SEO Marke...
Google Search Engine Ranking Position - 200 Top Ranking Factors for SEO Marke...
 
Mauro Cattaneo - Why hreflang is crucial to international SEO success - Brigh...
Mauro Cattaneo - Why hreflang is crucial to international SEO success - Brigh...Mauro Cattaneo - Why hreflang is crucial to international SEO success - Brigh...
Mauro Cattaneo - Why hreflang is crucial to international SEO success - Brigh...
 
Debugging rendering problems at scale
Debugging rendering problems at scaleDebugging rendering problems at scale
Debugging rendering problems at scale
 
SearchLove Boston 2018 - Dewi Nawasari - Optimizing When Google is Your Compe...
SearchLove Boston 2018 - Dewi Nawasari - Optimizing When Google is Your Compe...SearchLove Boston 2018 - Dewi Nawasari - Optimizing When Google is Your Compe...
SearchLove Boston 2018 - Dewi Nawasari - Optimizing When Google is Your Compe...
 
Hreflang - why and how and why not for International SEO
Hreflang - why and how and why not for International SEOHreflang - why and how and why not for International SEO
Hreflang - why and how and why not for International SEO
 
SearchLove London 2018 - John Campbell - Voice Search – Calculating and Seizi...
SearchLove London 2018 - John Campbell - Voice Search – Calculating and Seizi...SearchLove London 2018 - John Campbell - Voice Search – Calculating and Seizi...
SearchLove London 2018 - John Campbell - Voice Search – Calculating and Seizi...
 
The State of the Web: Pagination and Infinite Scroll
The State of the Web: Pagination and Infinite ScrollThe State of the Web: Pagination and Infinite Scroll
The State of the Web: Pagination and Infinite Scroll
 
Common SEO Mistakes During Site Relaunches, Redesigns, Migrations (2018)
Common SEO Mistakes During Site Relaunches, Redesigns, Migrations (2018) Common SEO Mistakes During Site Relaunches, Redesigns, Migrations (2018)
Common SEO Mistakes During Site Relaunches, Redesigns, Migrations (2018)
 

Viewers also liked

Orthognatic surgery
Orthognatic surgery  Orthognatic surgery
Orthognatic surgery Soo Yoong
 
Social media communicatie is key in Smart Repair
Social media communicatie is key in Smart RepairSocial media communicatie is key in Smart Repair
Social media communicatie is key in Smart RepairKirsten Bruijel
 
Audience feedback and what I plan to improve on
Audience feedback and what I plan to improve onAudience feedback and what I plan to improve on
Audience feedback and what I plan to improve onVictoria Norton
 
Elisa Renee Swartz Resume April 2015
Elisa Renee Swartz Resume April 2015Elisa Renee Swartz Resume April 2015
Elisa Renee Swartz Resume April 2015Elisa Swartz
 
Social media campagne TechniekNL mobiliseert heroes uit de installatiebranche
Social media campagne TechniekNL mobiliseert heroes uit de installatiebrancheSocial media campagne TechniekNL mobiliseert heroes uit de installatiebranche
Social media campagne TechniekNL mobiliseert heroes uit de installatiebrancheKirsten Bruijel
 
Styler.vn - Rev A Jul 28th
Styler.vn - Rev A Jul 28thStyler.vn - Rev A Jul 28th
Styler.vn - Rev A Jul 28thHoang Nguyen
 

Viewers also liked (6)

Orthognatic surgery
Orthognatic surgery  Orthognatic surgery
Orthognatic surgery
 
Social media communicatie is key in Smart Repair
Social media communicatie is key in Smart RepairSocial media communicatie is key in Smart Repair
Social media communicatie is key in Smart Repair
 
Audience feedback and what I plan to improve on
Audience feedback and what I plan to improve onAudience feedback and what I plan to improve on
Audience feedback and what I plan to improve on
 
Elisa Renee Swartz Resume April 2015
Elisa Renee Swartz Resume April 2015Elisa Renee Swartz Resume April 2015
Elisa Renee Swartz Resume April 2015
 
Social media campagne TechniekNL mobiliseert heroes uit de installatiebranche
Social media campagne TechniekNL mobiliseert heroes uit de installatiebrancheSocial media campagne TechniekNL mobiliseert heroes uit de installatiebranche
Social media campagne TechniekNL mobiliseert heroes uit de installatiebranche
 
Styler.vn - Rev A Jul 28th
Styler.vn - Rev A Jul 28thStyler.vn - Rev A Jul 28th
Styler.vn - Rev A Jul 28th
 

Similar to 120888 advanced seo g

Become SEO Expert in 5 Minutes
Become SEO Expert in 5 MinutesBecome SEO Expert in 5 Minutes
Become SEO Expert in 5 MinutesSBS101Solutions
 
Tips and tricks for the best user-friendly website
Tips and tricks for the best user-friendly website Tips and tricks for the best user-friendly website
Tips and tricks for the best user-friendly website ESRI Bulgaria
 
Get Top
Get Top Get Top
Get Top auto446
 
SEO-for-Beginners.pdf
SEO-for-Beginners.pdfSEO-for-Beginners.pdf
SEO-for-Beginners.pdfRamesh Prasad
 
Semantic SEO in 2017 & Beyond: The Ultimate Guide
Semantic SEO in 2017 & Beyond: The Ultimate GuideSemantic SEO in 2017 & Beyond: The Ultimate Guide
Semantic SEO in 2017 & Beyond: The Ultimate GuideLissa Anderson
 
The ultimate-step-by-step-guide-for-free-traffic
The ultimate-step-by-step-guide-for-free-trafficThe ultimate-step-by-step-guide-for-free-traffic
The ultimate-step-by-step-guide-for-free-traffickejart
 
Does google consider seo to be spam
Does google consider seo to be spamDoes google consider seo to be spam
Does google consider seo to be spamPhuong Viet
 
Top 3 SEO Myths | Simplemachine
Top 3 SEO Myths | SimplemachineTop 3 SEO Myths | Simplemachine
Top 3 SEO Myths | SimplemachineSean Morrison
 
SimpleFloors SEO Guide
SimpleFloors SEO GuideSimpleFloors SEO Guide
SimpleFloors SEO GuideMackenzie Lane
 
Google analytics guide
Google analytics guideGoogle analytics guide
Google analytics guideRajiv Kumar
 
Delight Your Customers with Modern SEO
Delight Your Customers with Modern SEODelight Your Customers with Modern SEO
Delight Your Customers with Modern SEOCharlotte Han
 
Yoast’s small seo guide to optimize your website small seo-guide
Yoast’s small seo guide to optimize your website   small seo-guideYoast’s small seo guide to optimize your website   small seo-guide
Yoast’s small seo guide to optimize your website small seo-guideLaura Curso
 
Yoast’s small seo guide to optimize your website
Yoast’s small seo guide to optimize your website   Yoast’s small seo guide to optimize your website
Yoast’s small seo guide to optimize your website communitymartas
 
Yoast’s small seo guide to optimize your website small seo-guide
Yoast’s small seo guide to optimize your website   small seo-guideYoast’s small seo guide to optimize your website   small seo-guide
Yoast’s small seo guide to optimize your website small seo-guideMaría Alvaro
 
Yoast’s small seo guide to optimize your website small seo-guide
Yoast’s small seo guide to optimize your website   small seo-guideYoast’s small seo guide to optimize your website   small seo-guide
Yoast’s small seo guide to optimize your website small seo-guideFABIOLA ORTIZ CARRILLO
 

Similar to 120888 advanced seo g (20)

SEO & Social Media
SEO & Social MediaSEO & Social Media
SEO & Social Media
 
Become SEO Expert in 5 Minutes
Become SEO Expert in 5 MinutesBecome SEO Expert in 5 Minutes
Become SEO Expert in 5 Minutes
 
Tips and tricks for the best user-friendly website
Tips and tricks for the best user-friendly website Tips and tricks for the best user-friendly website
Tips and tricks for the best user-friendly website
 
Ahrefs Tutorial
Ahrefs TutorialAhrefs Tutorial
Ahrefs Tutorial
 
Get Top
Get Top Get Top
Get Top
 
SEO-for-Beginners.pdf
SEO-for-Beginners.pdfSEO-for-Beginners.pdf
SEO-for-Beginners.pdf
 
Semantic SEO in 2017 & Beyond: The Ultimate Guide
Semantic SEO in 2017 & Beyond: The Ultimate GuideSemantic SEO in 2017 & Beyond: The Ultimate Guide
Semantic SEO in 2017 & Beyond: The Ultimate Guide
 
The ultimate-step-by-step-guide-for-free-traffic
The ultimate-step-by-step-guide-for-free-trafficThe ultimate-step-by-step-guide-for-free-traffic
The ultimate-step-by-step-guide-for-free-traffic
 
chatgpt dalle.pptx
chatgpt dalle.pptxchatgpt dalle.pptx
chatgpt dalle.pptx
 
Does google consider seo to be spam
Does google consider seo to be spamDoes google consider seo to be spam
Does google consider seo to be spam
 
Top 3 SEO Myths | Simplemachine
Top 3 SEO Myths | SimplemachineTop 3 SEO Myths | Simplemachine
Top 3 SEO Myths | Simplemachine
 
SimpleFloors SEO Guide
SimpleFloors SEO GuideSimpleFloors SEO Guide
SimpleFloors SEO Guide
 
SEO Tips Even Mom Would Love
SEO Tips Even Mom Would LoveSEO Tips Even Mom Would Love
SEO Tips Even Mom Would Love
 
Google analytics guide
Google analytics guideGoogle analytics guide
Google analytics guide
 
Delight Your Customers with Modern SEO
Delight Your Customers with Modern SEODelight Your Customers with Modern SEO
Delight Your Customers with Modern SEO
 
3,14 tips to boost your traffic
3,14 tips to boost your traffic3,14 tips to boost your traffic
3,14 tips to boost your traffic
 
Yoast’s small seo guide to optimize your website small seo-guide
Yoast’s small seo guide to optimize your website   small seo-guideYoast’s small seo guide to optimize your website   small seo-guide
Yoast’s small seo guide to optimize your website small seo-guide
 
Yoast’s small seo guide to optimize your website
Yoast’s small seo guide to optimize your website   Yoast’s small seo guide to optimize your website
Yoast’s small seo guide to optimize your website
 
Yoast’s small seo guide to optimize your website small seo-guide
Yoast’s small seo guide to optimize your website   small seo-guideYoast’s small seo guide to optimize your website   small seo-guide
Yoast’s small seo guide to optimize your website small seo-guide
 
Yoast’s small seo guide to optimize your website small seo-guide
Yoast’s small seo guide to optimize your website   small seo-guideYoast’s small seo guide to optimize your website   small seo-guide
Yoast’s small seo guide to optimize your website small seo-guide
 

Recently uploaded

定制(UAL学位证)英国伦敦艺术大学毕业证成绩单原版一比一
定制(UAL学位证)英国伦敦艺术大学毕业证成绩单原版一比一定制(UAL学位证)英国伦敦艺术大学毕业证成绩单原版一比一
定制(UAL学位证)英国伦敦艺术大学毕业证成绩单原版一比一Fs
 
定制(Lincoln毕业证书)新西兰林肯大学毕业证成绩单原版一比一
定制(Lincoln毕业证书)新西兰林肯大学毕业证成绩单原版一比一定制(Lincoln毕业证书)新西兰林肯大学毕业证成绩单原版一比一
定制(Lincoln毕业证书)新西兰林肯大学毕业证成绩单原版一比一Fs
 
Chennai Call Girls Porur Phone 🍆 8250192130 👅 celebrity escorts service
Chennai Call Girls Porur Phone 🍆 8250192130 👅 celebrity escorts serviceChennai Call Girls Porur Phone 🍆 8250192130 👅 celebrity escorts service
Chennai Call Girls Porur Phone 🍆 8250192130 👅 celebrity escorts servicesonalikaur4
 
Sushant Golf City / best call girls in Lucknow | Service-oriented sexy call g...
Sushant Golf City / best call girls in Lucknow | Service-oriented sexy call g...Sushant Golf City / best call girls in Lucknow | Service-oriented sexy call g...
Sushant Golf City / best call girls in Lucknow | Service-oriented sexy call g...akbard9823
 
VIP 7001035870 Find & Meet Hyderabad Call Girls LB Nagar high-profile Call Girl
VIP 7001035870 Find & Meet Hyderabad Call Girls LB Nagar high-profile Call GirlVIP 7001035870 Find & Meet Hyderabad Call Girls LB Nagar high-profile Call Girl
VIP 7001035870 Find & Meet Hyderabad Call Girls LB Nagar high-profile Call Girladitipandeya
 
VIP Kolkata Call Girl Alambazar 👉 8250192130 Available With Room
VIP Kolkata Call Girl Alambazar 👉 8250192130  Available With RoomVIP Kolkata Call Girl Alambazar 👉 8250192130  Available With Room
VIP Kolkata Call Girl Alambazar 👉 8250192130 Available With Roomdivyansh0kumar0
 
FULL ENJOY Call Girls In Mayur Vihar Delhi Contact Us 8377087607
FULL ENJOY Call Girls In Mayur Vihar Delhi Contact Us 8377087607FULL ENJOY Call Girls In Mayur Vihar Delhi Contact Us 8377087607
FULL ENJOY Call Girls In Mayur Vihar Delhi Contact Us 8377087607dollysharma2066
 
定制(Management毕业证书)新加坡管理大学毕业证成绩单原版一比一
定制(Management毕业证书)新加坡管理大学毕业证成绩单原版一比一定制(Management毕业证书)新加坡管理大学毕业证成绩单原版一比一
定制(Management毕业证书)新加坡管理大学毕业证成绩单原版一比一Fs
 
How is AI changing journalism? (v. April 2024)
How is AI changing journalism? (v. April 2024)How is AI changing journalism? (v. April 2024)
How is AI changing journalism? (v. April 2024)Damian Radcliffe
 
Call Girls In Mumbai Central Mumbai ❤️ 9920874524 👈 Cash on Delivery
Call Girls In Mumbai Central Mumbai ❤️ 9920874524 👈 Cash on DeliveryCall Girls In Mumbai Central Mumbai ❤️ 9920874524 👈 Cash on Delivery
Call Girls In Mumbai Central Mumbai ❤️ 9920874524 👈 Cash on Deliverybabeytanya
 
VIP Kolkata Call Girl Salt Lake 👉 8250192130 Available With Room
VIP Kolkata Call Girl Salt Lake 👉 8250192130  Available With RoomVIP Kolkata Call Girl Salt Lake 👉 8250192130  Available With Room
VIP Kolkata Call Girl Salt Lake 👉 8250192130 Available With Roomishabajaj13
 
AlbaniaDreamin24 - How to easily use an API with Flows
AlbaniaDreamin24 - How to easily use an API with FlowsAlbaniaDreamin24 - How to easily use an API with Flows
AlbaniaDreamin24 - How to easily use an API with FlowsThierry TROUIN ☁
 
Denver Web Design brochure for public viewing
Denver Web Design brochure for public viewingDenver Web Design brochure for public viewing
Denver Web Design brochure for public viewingbigorange77
 
VIP Kolkata Call Girl Kestopur 👉 8250192130 Available With Room
VIP Kolkata Call Girl Kestopur 👉 8250192130  Available With RoomVIP Kolkata Call Girl Kestopur 👉 8250192130  Available With Room
VIP Kolkata Call Girl Kestopur 👉 8250192130 Available With Roomdivyansh0kumar0
 
VIP Kolkata Call Girls Salt Lake 8250192130 Available With Room
VIP Kolkata Call Girls Salt Lake 8250192130 Available With RoomVIP Kolkata Call Girls Salt Lake 8250192130 Available With Room
VIP Kolkata Call Girls Salt Lake 8250192130 Available With Roomgirls4nights
 

Recently uploaded (20)

Rohini Sector 26 Call Girls Delhi 9999965857 @Sabina Saikh No Advance
Rohini Sector 26 Call Girls Delhi 9999965857 @Sabina Saikh No AdvanceRohini Sector 26 Call Girls Delhi 9999965857 @Sabina Saikh No Advance
Rohini Sector 26 Call Girls Delhi 9999965857 @Sabina Saikh No Advance
 
定制(UAL学位证)英国伦敦艺术大学毕业证成绩单原版一比一
定制(UAL学位证)英国伦敦艺术大学毕业证成绩单原版一比一定制(UAL学位证)英国伦敦艺术大学毕业证成绩单原版一比一
定制(UAL学位证)英国伦敦艺术大学毕业证成绩单原版一比一
 
Hot Sexy call girls in Rk Puram 🔝 9953056974 🔝 Delhi escort Service
Hot Sexy call girls in  Rk Puram 🔝 9953056974 🔝 Delhi escort ServiceHot Sexy call girls in  Rk Puram 🔝 9953056974 🔝 Delhi escort Service
Hot Sexy call girls in Rk Puram 🔝 9953056974 🔝 Delhi escort Service
 
定制(Lincoln毕业证书)新西兰林肯大学毕业证成绩单原版一比一
定制(Lincoln毕业证书)新西兰林肯大学毕业证成绩单原版一比一定制(Lincoln毕业证书)新西兰林肯大学毕业证成绩单原版一比一
定制(Lincoln毕业证书)新西兰林肯大学毕业证成绩单原版一比一
 
Chennai Call Girls Porur Phone 🍆 8250192130 👅 celebrity escorts service
Chennai Call Girls Porur Phone 🍆 8250192130 👅 celebrity escorts serviceChennai Call Girls Porur Phone 🍆 8250192130 👅 celebrity escorts service
Chennai Call Girls Porur Phone 🍆 8250192130 👅 celebrity escorts service
 
Call Girls In South Ex 📱 9999965857 🤩 Delhi 🫦 HOT AND SEXY VVIP 🍎 SERVICE
Call Girls In South Ex 📱  9999965857  🤩 Delhi 🫦 HOT AND SEXY VVIP 🍎 SERVICECall Girls In South Ex 📱  9999965857  🤩 Delhi 🫦 HOT AND SEXY VVIP 🍎 SERVICE
Call Girls In South Ex 📱 9999965857 🤩 Delhi 🫦 HOT AND SEXY VVIP 🍎 SERVICE
 
Sushant Golf City / best call girls in Lucknow | Service-oriented sexy call g...
Sushant Golf City / best call girls in Lucknow | Service-oriented sexy call g...Sushant Golf City / best call girls in Lucknow | Service-oriented sexy call g...
Sushant Golf City / best call girls in Lucknow | Service-oriented sexy call g...
 
VIP 7001035870 Find & Meet Hyderabad Call Girls LB Nagar high-profile Call Girl
VIP 7001035870 Find & Meet Hyderabad Call Girls LB Nagar high-profile Call GirlVIP 7001035870 Find & Meet Hyderabad Call Girls LB Nagar high-profile Call Girl
VIP 7001035870 Find & Meet Hyderabad Call Girls LB Nagar high-profile Call Girl
 
VIP Kolkata Call Girl Alambazar 👉 8250192130 Available With Room
VIP Kolkata Call Girl Alambazar 👉 8250192130  Available With RoomVIP Kolkata Call Girl Alambazar 👉 8250192130  Available With Room
VIP Kolkata Call Girl Alambazar 👉 8250192130 Available With Room
 
FULL ENJOY Call Girls In Mayur Vihar Delhi Contact Us 8377087607
FULL ENJOY Call Girls In Mayur Vihar Delhi Contact Us 8377087607FULL ENJOY Call Girls In Mayur Vihar Delhi Contact Us 8377087607
FULL ENJOY Call Girls In Mayur Vihar Delhi Contact Us 8377087607
 
定制(Management毕业证书)新加坡管理大学毕业证成绩单原版一比一
定制(Management毕业证书)新加坡管理大学毕业证成绩单原版一比一定制(Management毕业证书)新加坡管理大学毕业证成绩单原版一比一
定制(Management毕业证书)新加坡管理大学毕业证成绩单原版一比一
 
How is AI changing journalism? (v. April 2024)
How is AI changing journalism? (v. April 2024)How is AI changing journalism? (v. April 2024)
How is AI changing journalism? (v. April 2024)
 
Call Girls In Mumbai Central Mumbai ❤️ 9920874524 👈 Cash on Delivery
Call Girls In Mumbai Central Mumbai ❤️ 9920874524 👈 Cash on DeliveryCall Girls In Mumbai Central Mumbai ❤️ 9920874524 👈 Cash on Delivery
Call Girls In Mumbai Central Mumbai ❤️ 9920874524 👈 Cash on Delivery
 
sasti delhi Call Girls in munirka 🔝 9953056974 🔝 escort Service-
sasti delhi Call Girls in munirka 🔝 9953056974 🔝 escort Service-sasti delhi Call Girls in munirka 🔝 9953056974 🔝 escort Service-
sasti delhi Call Girls in munirka 🔝 9953056974 🔝 escort Service-
 
VIP Kolkata Call Girl Salt Lake 👉 8250192130 Available With Room
VIP Kolkata Call Girl Salt Lake 👉 8250192130  Available With RoomVIP Kolkata Call Girl Salt Lake 👉 8250192130  Available With Room
VIP Kolkata Call Girl Salt Lake 👉 8250192130 Available With Room
 
AlbaniaDreamin24 - How to easily use an API with Flows
AlbaniaDreamin24 - How to easily use an API with FlowsAlbaniaDreamin24 - How to easily use an API with Flows
AlbaniaDreamin24 - How to easily use an API with Flows
 
Denver Web Design brochure for public viewing
Denver Web Design brochure for public viewingDenver Web Design brochure for public viewing
Denver Web Design brochure for public viewing
 
VIP Kolkata Call Girl Kestopur 👉 8250192130 Available With Room
VIP Kolkata Call Girl Kestopur 👉 8250192130  Available With RoomVIP Kolkata Call Girl Kestopur 👉 8250192130  Available With Room
VIP Kolkata Call Girl Kestopur 👉 8250192130 Available With Room
 
Call Girls Service Dwarka @9999965857 Delhi 🫦 No Advance VVIP 🍎 SERVICE
Call Girls Service Dwarka @9999965857 Delhi 🫦 No Advance  VVIP 🍎 SERVICECall Girls Service Dwarka @9999965857 Delhi 🫦 No Advance  VVIP 🍎 SERVICE
Call Girls Service Dwarka @9999965857 Delhi 🫦 No Advance VVIP 🍎 SERVICE
 
VIP Kolkata Call Girls Salt Lake 8250192130 Available With Room
VIP Kolkata Call Girls Salt Lake 8250192130 Available With RoomVIP Kolkata Call Girls Salt Lake 8250192130 Available With Room
VIP Kolkata Call Girls Salt Lake 8250192130 Available With Room
 

120888 advanced seo g

  • 1. T H E M O S T E X T E N S I V E A N D D E T A I L E D G U I D E O F A D V A N C E D S E O T E C H N I Q U E S T H A T E X I S T S T O D A Y T H E A D V A N C E D G U I D E T O T o my readers, I wanted to give you the most ex tensive and detailed guide of advanced SE O techniq ues that ex ists today. T his resource is piled to the top with tactile, immediately actionable things you can do to your website, to improve rankings, performance and traffic. E verything from schema.org to mobile search to link building and site speed. I want you to all be insanely successful and prosperous on the web! If you’ ve read SE O moz’ s B eginner’ s G uide to SE O and want more, or you’ ve read my other basic guides to SE O and want more - this A dvanced G uide T o SE O is for you. If you’ ve already mastered the basics of SE O like writing title tags, the basics of link building or data research on the web and want more - this guide is for you! It’ s for anyone looking to take their success on the web to the nex t level; bloggers, business owners, eCommerce and even affiliate marketers. T his guide provides you with dozens and dozens of things you can sit down and do right now to improve your traffic from organic search on the web. INTRODUCTION W h y D i d I W r i t e T h i s G u i d e ? W h o I s T h i s G u i d e F o r ? I would suggest reading the whole thing! W hile you may not have to apply every section to your site, you will gain an understanding of the concepts in each part. SE O can be broken into pieces, but it definitely fits together as one big picture, you you’ ll want to read it all. H o w M u c h O f T h i s G u i d e S h o u l d I R e a d ? t ken you BY NEIL PATEL AND SUJAN PATEL SEOSEOSEOSEOSEOSEOSEOSEOSEOSEOSEOSEOSEOSEOSEOSEOSEOSEOSEOSEOSEOSEOSEOSEOSEOSEOSEOSEOSEOSEOSEOSEOSEOSEOSEOSEOSEOSEOSEOSEOSEOSEOSEOSEOSEOSEOSEOSEOSEOSEOSEOSEOSEOSEOSEOSEOSEOSEOSEOSEOSEOSEOSEOSEOSEOSEOSEOSEOSEOSEOSEOSEOSEOSEOSEOSEOSEOSEOSEOSEOSEOSEOSEOSEOSEO
  • 2. You could have the best content in the world, the most amazing audience and even traffic coming from all kinds of places like social media and referrals. B ut if the search engines can’ t properly access, crawl and index your site none of that matters for SE O . T hat is why in this section you’ re going to learn how to look at your website from the search engine’ s point of view. You’ re going to be able to do a full crawl of your own site, handle migrations, redesigns and much more. C H A P T E R O N E I N D E X A T I O N & A C C E S S I B I L I T Y It is well known by now that G oogle has said site speed is a small ranking factor ( about 1 % ) . T his is tiny, but it’ s rare for G oogle to say that anything has a definite effect on rankings. So it makes so much sense to follow this advice. P lus, user low fast and responsive sites. T hey will feel more in control of their ex perience, consume your amazing content more efficiently and convert better. A nd after section one, the engines are index ing your site better, so let’ s take it to the nex t level. T his section will teach you how to measure and analyze your site’ s speed and performance, as well as give some advanced actionable ways to improve. S I T E S P E E D & P E R F O R M A N C E T he maj ority of new websites created today are built upon W ordP ress. Q uickSprout.com is built on W ordP ress and most of my readers have site using this popular CM S. I find most people get the basics pretty good for W ordP ress and SE O , but we’ re going to take things a bit further in this section. You’ ll find a detailed walkthrough of setting up the SE O for W ordP ress plugin, improving your W ordP ress speed and performance, creating a custom author page and more. C H A P T E R F O U R W O R D P R E S S SE O is growing fast and changing everyday. It’ s way more than j ust title tags and some back links. You have to have a semantically relevant site. O ne in which the engines ( and people! ) understand what the page is about in relation to real world things - like the concept of actors relating to movies or people having a birthday. R ead this section to stay ahead of the new search frontiers. C H A P T E R T H R E E C H A P T E R T W O N E W S E A R C H P art of what makes SE O uniq ue, fun and challenging is that we get to be like detectives on the web. W e have to be good at pulling data from different places and getting that data no matter what it takes sometimes. Some new ways have come about lately for doing so. W e’ re going to walk step by step through nine specific ways you can collect data more effectively. C H A P T E R F I V E A D V A N C E D D A T A R E S E A R C H
  • 3. A lthough panda and penguin make it harder to build links like we used to, once you have ex ceptional content you still need to employ some killer techniq ues to get that content out there, get it in front of the eyes that matter, and get people to link back to that content. T his section has fifteen in depth and actionable ways you can start building links to that content immediately. E verything from obtaining a link worthy domain, to using alerts like IF T T T and more. C H A P T E R E I G H T L I N K B U I L D I N G T E C H N I Q U E S I’ m sure you’ ve all used the adwords keyword tool a lot, but what about other keyword research tools and techniq ues? T hat’ s what this section will cover. W e’ re going to go beyond j ust the data G oogle has and use other keyword tools, search suggest scraping, internal site search and more. C H A P T E R S I X K E Y W O R D R E S E A R C H Since P enguin and P anda, it’ s harder and harder to build links the old way; through directories, email blasts, commenting, or black hat ways like blog networks and spinning. T his section will give you some solid ways to build some content that is link worthy and valuable to your visitors and will keep people coming back time and time again. C H A P T E R S E V E N L I N K B U I L D I N G W I T H C O N T E N T You might conq uer the rankings in universal search for your article, post or product. B ut what about photo? W hat about mobile and local search? H ere I give you some techniq ues for optimizing search verticals to perform even better on the web. C H A P T E R N I N E S E A R C H V E R T I C A L S S I M P L Y P U T ; U S E T H I S G U I D E T O T A K E Y O U R S E O T O T H E N E X T L E V E L . T A K E M E T O CHAPTER ONE T A K E M E T O CHAPTER ONE C H A P T E R E I G H T worthy and valuable to your visitors and will keep people coming back time and time again.
  • 4. T H E A D V A N C E D G U I D E T O SEOSEOSEOSEOSEOSEOSEOSEOSEOSEOSEOSEOSEOSEOSEOSEOSEOSEOSEOSEOSEOSEOSEOSEOSEOSEOSEOSEOSEOSEOSEOSEOSEOSEOSEOSEOSEOSEOSEOSEOSEOSEOSEOSEOSEOSEOSEOSEOSEOSEOSEOSEOSEOSEOSEOSEOSEOSEOSEOSEOSEOSEOSEOSEOSEOSEOSEOSEOSEOSEOSEOSEOSEOSEOSEOSEOSEOSEO 0101010101CHAPTER 01 I N D E X A T I O N & A C C E S S I B I L I T Y W elcome to the first chapter of my guide to A dvanced SE O . In this section you’ re going to learn some advanced techniq ues for evaluation and optimization your website for index ation and accessibility. T his doesn’ t j ust mean accessibility for the search engines but accessibility for humans too. T hat’ s why this section covers best practices for both engines and users - with this like installing G oogle translate to making A J A X crawlable. A fter applying to techniq ues in this section to your website where most applicable, you should have an ex ceptionally crawlable and accessible website. W hen optimizing your site for SE O , wouldn’ t it make sense to put yourself in the shoes of the search engine? A nd “ see” your site like a search engine does? N ow you all know you can simply “ view source” to see the H T M L source code from any browser. B ut I’ ve got a killer method that will really put you in their shoes and reveal possible holes in your technical SE O you can easily plug up. I nstall the Plugins You’ re going to want to use F ireF ox to do this. H ere’ s the plugins: W eb D eveloper https://addon s.moz il l a.org/e n - U S /fire fox /addon /we b - de v e l ope r/ User A gent S witcher https://addon s.moz il l a.org/e n - U S /fire fox /addon /u se r- age n t- switche r/ B R O W S E Y O U R S I T E L I K E A S E A R C H E N G I N E NO 1 S T E P O N E BY NEIL PATEL AND SUJAN PATEL
  • 5. G o to “ preferences” and “ content” and uncheck “ E nable J avaScript” . W e do this because items like menus, links and drop downs need to be available to G ooglebot without J avaScript. If they are buried within your J S than G oogle can not crawl them! W hat does Q uickS prout look like to G ooglebot? T his is j ust the top ( because otherwise the whole page is really L O N G ) . B ut you can see that the menu appears as clickable links, and none of the other tex t and links are hidden from G ooglebot. V iew your site this way and you may be surprised what you find! W hy disable CSS? G ooglebot crawls the content in the order of the H T M L . T he CSS styling can sometimes obscure the order of your content. D isable J avaS cript in FireFox D isable C S S with the W eb D eveloper Plugin S T E P T W O Fire up your website and browse!S T E P F I V E Web Search Downloads Add-ons Set Up Sync... Rank Checker Web Developer Page Info Start Private Browsing Clear Recent History... Default User Agent Web Developer Default User Agent Internet Explorer Search Robots iPhone 3.0 Edit User Agents... User Agent Switcher Default User Agent Search Robots Googlebot 2.1 Msnbot 1.1 Yahoo Slurp Googlebot 2.1 Tools Window Help S T E P T H R E E S T E P F O U RS et User- A gent to G ooglebot quicksprout.com MAIN TABS Block popup windows Load images automatically Enable JavaScript Enable Java Default Font FONTS & COLOURS CONTENT APPLICATIONS PRIVACY ADVANCED EXCEPTIONSEXCEPTIONS EXCEPTIONSEXCEPTIONS ADVANCEDADVANCED ADVANCEDADVANCED COLOURSCOLOURS Default Font Size: 16 Choose your preferred language for displaying pages LANGUAGES CHOOSECHOOSE HELPHELPOKAYOKAY CANCELCANCEL Disable Styles Display CSS By Media Type View CSS View Style Information Add User Style Sheet... Edit CSS Use Border Box Model All Styles Browser Default Styles Embedded Styles Inline Styles Linked Style Sheets Print Styles Individual Style Sheet Disable Styles All Styles quicksprout.com
  • 6. S ome things to check for: Can you see all of your menu links ( drop down s too! ) ? D o all of the menu items and links appear as plain tex t? A re all the links clickable? D oes this reveal any tex t that was previously hidden? ( H idde n te x t can se n d a re d fl ag to G oogl e b ot. I t might n ot al way s b e the re mal iciou sl y , b u t it shou l dn ’ t b e the re .) Is your sidebar or widgets content all the way at the top? R emember, your most important links and content should be at the top of the H T M L . T his is more important the bigger the site is. T he problem with this site is that the menu tex t is not real tex t, its images. W hat does this mean? T here is no anchor tex t signal given to G ooglebot. You all know how important anchor tex t is for back- links, and its j ust as important for internal links. O n the above website, none of the inner pages are receive the full value of link j uice flowing into them from the homepage. O nce doing an on- site inspection from the point of view of a search engine, you may be ready to crawl the site with a web spider. Finally. Here’ s an ex ample of a site with an issue.
  • 7. C R A W L Y O U R S I T E W I T H S C R E A M I N G F R O G NO 2 C rawl The S iteS T E P O N E S ave Your C rawl W hat I s S creaming Frog? Screaming F rog SE O Spider allows you to crawl your website and gain valuable insight into how its put together much more easily and faster than you ever could j ust by looking at it. A s you’ ll see, you will certainly gain a new perspective on how your site looks in the nex t few minutes! T his being a hands on technical guide, if you’ d like more details on the benefits of using your own web spider you can read Screaming F rog’ s documentation at; http://www.scre amin gfrog.co.u k/se o- spide r/ Note: S cre amin g F rog is fre e for y ou to crawl u p to 5 0 0 page s at a time . F or b igge r site s y ou wil l n e e d to pu rchase an an n u al l ice n se . B U T do y ou wan t a se cre t workarou n d for this? I thou ght so! Y ou can e n te r su b dire ctorie s to crawl - l ike http://www.q u icksprou t.com/2 0 1 2 / wil l giv e me on l y the posts from 2 0 1 2 . D o this for more mu l tipl e su b dire ctorie s an d y ou can stil l crawl the e n tire site , j u st in pie ce s. F ire up Screaming F rog and run the first crawl on your site. D epending upon how large your site is, this can take anywhere from 2 to 2 0 minutes. You should save the crawl of your site in the .seospider file format. T his way you won’ t have to run the crawl again in case you close the program or want to review it again later. R emember though, if you make maj or changes to the site you should crawl it again anyway. B ut this way you’ ll have a crawl record of your site from this date. S T E P O N E C rawl The S ite S T E P T W O S ave Your C rawl S T E P T H R E E C heck Page L evels S T E P F O U R C heck for C rawl Errors S T E P F I V E Find & Fix L ong Titles S T E P S I X Find & Fix L ong D escriptions S T E P S E V E N L ook at I ndex ation S ettings B O N U S How To Find A ll Pages W ith A ny HTM L SAVE Crawls Save As: File Format: quicksprout-crawl.seospider SAVESAVECANCELCANCEL SEOSpider (Screaming Fr... Name Date Modified S T E P T W O
  • 8. S T E P T H R E E C heck Page L evels C heck for C rawl Errors R emember, this is a technical guide so that you can make real changes to your website that will bring you definite SE O improvement. So we’ re going to focus on getting information out of Screaming F rog that you can then go and apply to your site. If you have pages that are buried too deep within your website, this is not good for users or your SE O . W e’ re going to find those pages easily with Screaming F rog and get them into a list for you to take action on. A fter your crawl, you’ ll be on the main “ internal” page showing you all the data gathered internal to your site. E ven Q uickSprout has some older blog posts that have ended up 4 - 7 levels deep. S ide Note: Y ou might wan t to con side r a pl u gin for W ordP re ss l ike crossl in ke r http://wordpre ss.org/e x te n d/pl u gin s/cross- l in k e r/ which can he l p y ou al way s in te rn al l y l in k an d cross l in k y ou r posts. Scroll back to the left, and you’ ve got a nice prioritized list of pages to be sure to link back to when writing new posts. N ow you’ ve got a great, actionable list of UR L s to link back to from newer posts, right in E x cel. A nd of course when back- linking, be sure the references are relevant, useful and use descriptive keyword- rich anchor tex t. N ow we’ ll begin ex ploring some of the different menus at the top. S E L E C T H T M L S C R O L L R I G H T ( A L L T H E W A Y ) S O R T P A G E S B Y L E V E L S C R O L L B A C K E X P O R T T O C S V S T E P F O U R
  • 9. N ow we’ ll begin ex ploring some of the different menus at the top. T here are a lot of hidden gems in Screaming F rog, but you have to know how to find them - which is what I’ m showing you now! G oogle W ebmaster T ools will of course give you crawl errors, but they may be incomplete or old. P L US, this will give you all ex ternal links you’ re linking to that are broken. A fresh crawl of your site with your own tool is a fantastic way to get a current accurate list. You all may know that title tags and meta descriptions have a recommended length. A nd again, W ebmaster T ools does give you some of this data. W hat’ s great about Screaming F rog, is you know this data is complete and you can sort and filter it. T his gives you a list of only the pages which returned some sort of 4 0 0 level error ( usually 4 0 4 s) . [1] C lick on “ R esponse C odes” [2] S elect “ C lient Error 4x x ” from the filter drop down menu [3] Ex port as C S V [1] C lick on over to “ Page Titles” in the top menu. [2] S elect “ O ver 7 0 C haracters” from the menu. [3] Ex port as C S V S T E P F I V EFind & Fix L ong Titles SAVE Exports Save As: File Format: page_titles_over_70_characters.csv SAVESAVECANCELCANCELNEW FOLDERNEW FOLDER CSV (Comma delineated(*... Name Date Modified T I P : I m m e d i a t e l y “ s a v e a s ” a n E x c e l d o c u m e n t . Y o u m a y l o s e s o m e f o r m a t t i n g c h a n g e s o t h e r w i s e . C heck for C rawl ErrorsS T E P F O U R
  • 10. In your E x cel document, you’ ll want to create a new column for your new title. A lso, create a column for length. W hat a simple way for E x cel to automatically count the characters as you compose your new title tags? A dd this simple formula to the “ new length” column; = L EN( E3) O f cou rse b e su re to re fe re n ce the ce l l y ou hav e y ou r n e w titl e in . Select “ O ver 15 6 C haracters” from the filter drop down menu E x port to CSV You can work on your new descriptions j ust like how we worked with the new title tags in ex cel. M ake new columns and use the formula = L EN( E2) to automatically count the length of your new description tags. F inding and fix ing long descriptions is similar. W e’ re going to navigate over to the descriptions menu. [1] S elect the formula cell [2] Hover over the bottom right corner of the formula cell. [3] W ait for the cursor to change to a cross shape. [4] D rag the sq uare down the entire column A N D T H E NA N D T H E N S T E P S I X Find & Fix L ong D escriptions S T E P S E V E N L ook at I ndex ation S ettings
  • 11. L et’ s get a little more technical. Suppose you wanted to find A L L the pages within a website that had the presence of certain H T M L . L et’ s say in this instance we want to find all pages within Q uickSprout that have links that open in new tabs or windows. N ow, we have all the pages with links that open in a new tab or window! T his is great for an ex isting site if its not going to change at all. B ut what do you do when you are getting set to redesign your site? You’ ll want to do a self audit in prep for a redesign. You should also head on over to the “ meta and canonical” menu to check your index ation settings. You should look for things like; S T E P S E V E N L ook at I ndex ation S ettings How To Find A ll Pages W ith A ny HTM L [1] S elect “ C ustom” from the “ C onfiguration” M enu [2] Enter the HTM L you want it to look for in “ Filter 1” Note: Y ou can al so hav e it fin d page s that do N O T con tain the H T M L e n te re d. Y ou can e n te r u p to fiv e fil te rs. [3] C rawl the site again [4] S elect “ C ustom” in the menu [5 ] S elect “ Filter O ne” from the filter drop down menu. M issin g can on ical tags I n corre ct C an on ical tags ( poin tin g to a diffe re n t page e tc) P age s that shou l d b e in de x e d b u t hav e a “ n oin de x ” tag on the m. P age s that shou l d N O T b e in de x e d b u t hav e n o me ta tag or hav e “ in de x ” <head> <title>SEO G UI D E</title> </head> B O N U S
  • 12. N ex t is a complete step by step process for auditing your own site if you do a redesign. T his can be an important step to take in your web evolution and promoting your authority online, but let’ s not let you lose out on any traffic in the process! T his portion of the guide assumes you have followed best practices while making your new site, such as; B e in g su re its crawl ab l e S u b mittin g a n e w X M L site map P u ttin g 3 0 1 re dire cts in pl ace T he following is a mock up spreadsheet to show you how to monitor these metrics as the new site goes live. S E L F A U D I T F O R A S I T E R E D E S I G N C R E A T E A S P R E A D S H E E T T O M O N I T O R P R O G R E S S You’ re simply going to use the G oogle site: search to do this; M O N I T O R N U M B E R O F P A G E S I N D E X E D NO 3 DATE PAGES INDEXED CACHE DATE PR DA WMT ERRORS NOTES 4/1/2012 4/8/2012 4/15/2012 4,200 3,750 4,150 6 5 6 71 67 70 525 679 482 New site launched New site cached started to fix errors 3/23/2012 4/7/2012 4/12/2012 site:quicksprout.com About 56,000 results (0.31 seconds) SEARCHSEARCH A gain, we’ re j ust going to do a G oogle search for cache:sitename.com T he cache date is the largest factor to telling you what version of your site G oogle is using in their algorithm. M O N I T O R C AC H E D A T E A lthough it is known that P R is a very loosely used metric, it still gives a rough indication to the value of the site. Use the SE O q uake toolbar as one fast way of checking your pagerank, which you can install at http://www.se oq u ake .com/ M O N I T O R P A G E R A N K T his metric will have a delay, depending upon when SE O moz updates their linkscape index . B ut still good to monitor - and you can use their toolbar to do so as well. You can install it here: http://www.se omoz .org/se o- tool b ar D A authority is best to look at M O N I T O R S E O M O Z D O M A I N A U T H O R I T Y
  • 13. DA authority is best to look at Use Webmaster Tools to watch your not found errors and get your numbers from there; With these tools and steps you’ll ensure the smoothest transition possible while moving the site over. M O N I T O R “ N O T F O U N D ” E R R O R S
  • 14. In this tutorial, we will setup your computer so that when you type in the UR L , it will go to your test website so you can try it out before it goes live using the real UR L . T he instructions will differ greatly depending on where you host your website but in general, they will be listed somewhere in your admin panel. If you can' t find it, call the hosting company up and simply ask. G et the I P address of your new website.S T E P O N E S T E P T W O Edit your hosts file to point to your I P address O N A M A C O N A P C [1] O pen up A pplication folder > Utilities > Terminal [1] C lick on S tart > type in " notepad" into the search box , and look for notepad to show up in your start menu. [2] R ight click on it and left click on " run as administrator" . [3] C lick on File > open [4] I n the filename box type " windows system32 driver etc" press enter. [5 ] C hange the file type pull- down from " tex t file" to " all files" . [6 ] D ouble click on " hosts" [7 ] A t the end of the file, type in the following line: [2] I nside the terminal app, type " sudo nano / etc/ hosts" [3] A t the end of the file, type in the following line: Google Drive Desktop Applications Documents Downloads inbox Twitter UnRarX Utilities Vagrant VirtualBox VMware Fusion RAID utility Remote Install Mac OS X Spaces System Profiler Terminal Voiceover Utility T ype in your user’ s password if that’ s req uired. Say yes to W indows if it asks for permission 1 1 1 .2 2 2 .3 3 3 .4 4 4 www.newdomain.com R eplace 1 1 1 .2 2 2 .3 3 3 .4 4 4 with the real IP address you got from step 1 and replace " www.newdomain.com" with you new domain. 1 1 1 .2 2 2 .3 3 3 .4 4 4 www.newdomain.com R eplace 1 1 1 .2 2 2 .3 3 3 .4 4 4 with the real IP address you got from step 1 and replace " www.newdomain.com" with you new domain. H it Control- O to and press enter. [4] Hit C ontrol- X to ex it the editor. [5 ] C lose the terminal window NO 4 T E S T I N G A N E W S I T E B E F O R E I T G O E S L I V E h t t p : / / p a n d a . c o m
  • 15. O pen up a browser and test your website to see if it looks like you ex pect it. T ype in the UR L to your new website Your hosts file edits will forward you to the test website. Test your websiteS T E P T H R E E O nce tested, you can undo your changes you made in step 2 . Simply go back to the file and remove the line you j ust created. Undo C hangesS T E P F O U R
  • 16. W hen migrating to a new website you can use the following guidelines to ensure a safe transition without any downtime. It takes about a day for all the servers around the world to get updated IP and domain information so plan to have both servers running for at least the first week of your new site. T he instructions to do this is different for every hosting company or domain registrar. Usually, you can find that setting in your control panel for your domain, but if you can' t find it, call up your domain registrar and ask for tech support. M I G R A T I N G T O A N E W S I T E W I T H O U T D O W N T I M E NO 5 WARNING: THIS MIGHT BRING DOWN YOUR WEBSITE IF SOMETHING GOES WRONG. BE CAREFUL! S et the TTL of your new domain to 5 minutesS T E P O N E I F Y O U ’ R E U S I N G G O D A D D Y : [1] L ogin to G oD addy’ s website [2] C lick on M y A ccount. G o down to D omains and click on L aunch [3] C lick on one of your domains [4] S croll down to D NS M anager and click L aunch [5 ] L ook for “ @ ” under host and click on the pencil icon under “ TTL ” [6 ] Pull down the menu and select the shortest time available ( 1/ 2 hour) http://godaddy.com http://godaddy.com http://godaddy.com
  • 17. L ocate the D NS settings for your domainS T E P T W O N ow that you' ve tested your site and changed your T T L , you will want to change the D N S settings for your domain name. F irst, go to your current domain registrar, and locate the current D N S settings. T hen go to your new hosting company and write down the new D N S settings you need to enter into your current domain registrar. T he instructions is always different from one hosting company to another and from one domain registrar to another. Usually, you can find that setting in your control panel for your domain, but if you can' t find it, call up your domain registrar and ask for tech support. C hange the D NS settings on your current domain.S T E P T H R E E O nce you have them both registrar to be the D N S address you wrote down from your new hosting company. You should know where to change them because you already found it in step # 3 . Unset your hosts file by removing the lines you added in step # 1. S T E P F O U R D o so by following step # 1 ex cept remove the lines you originally added. W ait 5 minutes, then try to go to your new website.S T E P F I V E You may need to clear your browser' s cache and cookies. If you' re new website is up, you done! If not, reverse what you did in step # 4 in order to revert back to your old website.
  • 18. In this ex ample, we will show you how to use j Q uery’ s post method to create crawlable A J A X . F or this tutorial, we will use the “ X M L H ttpR eq uest P O ST ” method. F or additional details about this best practice, go here: http://googl e we b maste rce n tral .b l ogspot.com/2 0 1 1 /1 1 /ge t- post- an d- safe l y - su rfacin g- more - of.html In this ex ample, line 4 was added. In this ex ample, line 8 was added. T he ex ample code outputs an ex ample blog post. In this ex ample, lines 1 0 - 1 5 were added. C R A W L A B L E A J A X ( U S I N G J Q U E R Y G E T ) C reate your HTM L template.S T E P O N E A dd J avaS cript to the site that will load content into the < D I V > tag S T E P F O U R S T E P T W OA dd j Q uery to your site S T E P F I V EC reate your PHP script S T E P T H R E E A dd a < D I V > tag with a uniq ue I D in the body where your dynamic content will go NO 6 q u i c k s p r o u t . c o m
  • 19. It should look like this: Test your script on your web serverS T E P S I X It should look like the H T M L template. C heck view- sourceS T E P S E V E N You should see the dynamic content loaded in the D O M . It should look like this: S T E P E I G H T C heck I nspect Element
  • 20. C R A W L A B L E A J A X ( W I T H O U T H A S H E S ) NO 7 T his tutorial is for websites that load dynamic content on the page without refreshing but changes the UR L . G oogle recommends routing “ _ escaped_ fragment_ ” in your q uery string to an H T M L snapshot. T he principal idea is that you want to render H T M L for G oogleB ot and J avaScript for users. T here are many ways of achieving the same result. T he implementation will depend on your particular website’ s setup. In this ex ample, we will use P H P to decide what to render. If the UR L looks like this: “ http://www.e x ampl e .com/in de x .php” then we want P H P to create a page with J avaScript that loads the content dynamically and asynchronously so that it’ s fast. If the UR L looks like this: “ http://www.e x ampl e .com/in de x .php? _ e scape d_ fragme n t_ ” then we want P H P to create a normal H T M L page that can be index ed and crawled. F or additional details about this best practice, see: https://de v e l ope rs.googl e .com/we b maste rs/aj ax - crawl in g/docs/ge ttin g- starte d T his will tell search spiders that the page is crawlable using the “ _ escaped_ fragment_ ” q uery string. In this ex ample, we created a function that creates the entire < head> tag for us. Note: L in e 1 0 con tain s the me ta tag that te l l s spide rs to crawl u sin g e scape d fragme n t. S tart by creating a PHP script that will add the proper < meta> tag in the header. S T E P O N E In this ex ample, the render_ post has an argument “ $ render_ snapshot.” B y default, the page will render a regular page for users. If render_ snapshot is true, then it will render a regular H T M L page for G oogleB ot with the same content. Notes: L in e 2 5 of the P H P de cide s if the page shou l d b e H T M L or dy n amic. L in e s 2 6 - 2 9 ge ts the con te n t an d re tu rn s the H T M L in side the D I V tag L in e s 3 1 - 3 7 ge ts the con te n t u sin g j Q u e ry to dy n amical l y adds H T M L in side the D I V tag Nex t, we will create a function that renders the page.S T E P T W O
  • 21. In this ex ample, if _ escaped_ fragment_ is found, it will render the post using H T M L . Nex t, we will add code to handle the escaped fragment q uery string S T E P T H R E E In this ex ample, the code will convert J SO N into H T M L . Nex t, we will create a content.php file. S T E P F O U R
  • 22. You should see your content because the Inspect E lement view is what the H T M L looks like after J avaScript has run. L ook at the I nspect Elements viewS T E P E I G H T It should look the same as the dynamic page: C heck the bot’ s view by adding “ ? _ escaped_ fragment_ ” to the end of the UR L S T E P N I N E It should look like regular H T M L without any J avaScript. C heck view source of the bot’ s view S T E P T E N C R O S S D O M A I N R E L = C A N O N I C A L NO 8 www.example.com/index.php
  • 23. T his is where many people get a little confused, so before the ex act technical implementation, let’ s j ust cover when the tag should be used. U se it whe n the con te n t from the ol d site n e e ds to b e mov e d or du pl icate d to a n e w site - an d the ol d host doe s n ot prov ide se rv e r side re dire cts. U se it on l y afte r y ou ’ v e re du ce d on - site du pl ication on the ol d site as mu ch as possib l e . I f y ou can do a 3 0 1 re dire ct in ste ad an d this prov ide s a pre fe rre d u se r e x pe rie n ce , u se the 3 0 1 re dire ct. A l so, y ou shou l d n ot pu t a n oin de x on a page with a re l = can on ical . T he page shou l d b e crawl ab l e in orde r to pick u p the re dire ct. U se it whe n con te n t is the same on b oth page s, or with on l y sl ight diffe re n ce s. L et’ s say I wanted to move this infographic post from Q uickSprout... http://www.q u icksprou t.com/2 0 1 2 /0 6 /1 1 /5 - way s- to- ge t- y ou r- in fographic- to- go- v iral / ...to K ISSmetrics. P erhaps I wouldn’ t do this in real life, but let’ s suppose so, j ust for the ex ample. W e’ re going to move it to: http://b l og.kissme trics.com/5 - way s- to- ge t- y ou r- in fographic- to- go- v iral C R O S S D O M A I N R E L = C A N O N I C A L NO 8 W H E N T O U S EW H E N T O U S E THE CROSS DOMAIN CANONICAL A Q U I C K E X A M P L EA Q U I C K E X A M P L E T his is not so different than implementing a regular canonical tag. H O W T O I M P L E M E N TH O W T O I M P L E M E N T [1] G et your two pages ready [2] B e able to edit the source code on the first ( original) page. [3] A dd the tag to the < head> section of the old page, pointing to the new page; < l in k re l = " can on ical " hre f= " http://www.e x ampl e .com/e x ampl e - page - n ame /> where “ ex ample- page- name” is the UR L of the NEW page. pointing to the new page; I N F O G R A P H I C O N Q U I C K S P R O U T S A M E I N F O G R A P H I C O N K I S S M E T R I C S http://www.q u icksprou t.com/ 2 0 1 2 /0 6 /1 1 /5 - way s- to- ge t- y o u r- in fographic- to- go- v iral / < he ad> < l in k re l = ” can on ical ” hre f= “ http://b l og.kissme trics.com/ 5 - way s- to- ge t- y ou r- in fograph ic- to- go- v iral ” /> < /he ad> http://b l og.kissme trics.com/5 - way s- to- ge t- y ou r- in fographi c- to- go- v iral C A N O N I C A L P O I N T S T O N E W P A G E
  • 24. L A S T F E W H I N T SL A S T F E W H I N T S [1] Make the links absolute not relative (include the full http:// etc) [2] Just like with 301s avoid chains of canonicals [3] Ultimately this is a hint for Google, not an absolute direction, so you will want to check Google’s index and webmaster tools to see if it has been followed.
  • 25. A s I’ m sure most of you know, https is the protocol by which secure pages are transferred over the world wide web. P ages such as your shopping cart, login pages and other secure areas should be at an https address. H owever, this can potentially cause duplicate content, because of the added ‘ s’ in the UR L . T ypically, https pages should not be in the index . T hey are usually private pages and don’ t have a use for being returned in search results. If your crawl report or site audit comes back as having https UR L s found on your site as duplicates, there’ s three steps you should take to resolve this; F I X I N G H T T P S D U P L I C A T E C O N T E N T E R R O R S NO 9 [1] I dentify which pages are index ed [2] D iagnose why they are index ed [3a] 30 1 R edirect pages that should not be there [3b] R emove them from the index if they should not be there Use this special G oogle search to find pages from your site that have been index ed with https; site:yourdomain.com inurl:https You can see the crazyegg website looks totally clean! E x cept for this flash loader, no https pages have gotten into the index . Finding https pages that have been index edS T E P O N E inurl:https site:crazyegg.com SEARCHSEARCH About 1 result (0.10 seconds) File Format: Shockwave flash In order to show you the most relevant results, we have omitted some entries very similar to the 1 already displayed. If you like, you can repeat the search with the omitted results included. [FLASH] https://crazyegg.com/flash/data_loader.swf
  • 26. K ISSmetrics. on the other hand is a good ex ample of a site that has some https in the index . T his second page here is j ust a normal blog post and should not be in the index ( third result down) . A nd these other pages indicated, are supposed to be https pages but should not be in the index ; So what do you do when you find pages in the index that should not be there? L ike any old page you don’ t want in the index , you need to find out why it got there to begin with! inurl:https site:kissmetrics.com SEARCHSEARCH About 27 results (0.09 seconds) Forgot your password? Email Address: Recover password https://www.kissmetrics.com/forgot_password Forgot your password? - KISSmetrics Tracking pageviews and visitors to see how much traffic you’re getting is incredibly important right? WRONG. Finding out if your website actually helps your... https://www.kissmetrics.com/critical-goal-types 4 Google Analytics Goal Types That Are Critical Thanks for contacting KISSmetrics! One of our team members will be contacting you shortly. In the meantime, here’s some more information about KISSmetrics... https://www.kissmetrics.com/request/thanks Web Analytics by KISSmetrics These pages should be https but should not be in the index. They don’t need to be redirected but should be removed from the index https://www.kissmetrics.com/forgot_password Forgot your password? - KISSmetrics https://www.kissmetrics.com/request/thanks Web Analytics by KISSmetrics inurl:https site:kissmetrics.com SEARCHSEARCH About 27 results (0.09 seconds) Forgot your password? Email Address: Recover password https://www.kissmetrics.com/forgot_password Forgot your password? - KISSmetrics Tracking pageviews and visitors to see how much traffic you’re getting is incredibly important right? WRONG. Finding out if your website actually helps your... https://www.kissmetrics.com/critical-goal-types 4 Google Analytics Goal Types That Are Critical Thanks for contacting KISSmetrics! One of our team members will be contacting you shortly. In the meantime, here’s some more information about KISSmetrics... https://www.kissmetrics.com/request/thanks Web Analyitics by KISSmetrics This page should not be https so the cause should be found, and it should be 301 redirected.https://www.kissmetrics.com/critical-goal-types 4 Google Analytics Goal Types That Are Critical L et’ s use the blog post from above as an ex ample, and look at the page. You can see G oogle Chrome indicating https is present in the UR L but the page is not secure. T his in fact confirms the page should not be in the index this way. D iagnose W hy They Ended Up I n The I ndexS T E P T W O
  • 27. Its probably in the index because it got linked to from somewhere, either internally or external, so we’re going to use a few tools to try and find the source of the link. Let’s use Screaming Frog first, since we know it will be a complete crawl of the site. Enter the root domain of the website in Screaming Frog (because some sites, like KISSmetrics. operate across different subdomains, www / blog etc - we want to be sure we get a complete crawl of the whole site.) While crawling the site, you can do a search for the URL of that page and wait for it to show up. Then, wait until the crawl is complete and review its “In Links”. Look in the “to” column to see if any links use the “https://” In this case, there are no internal links pointing to the https:// version of the page. If an internal link is found, you need to change your internal links and 301 redirect the https version to the http version. If no internal link is found, you may be able to find the external link, but may not have control over changing it. So you have to 301 redirect it to the http version. This will redirect the user and eventually remove/replace the https version from the index.
  • 28. P A G I N A T I O N W I T H R E L = N E X T P agination has always been one of the trickiest elements of on- page SE O and architecture to handle. B ut now G oogle allows you to use rel= ” nex t” and rel= ” prev” to help show them you have pages that belong in a series. W hen using a CM S like W ordP ress there are many plugins that handle this for you, including Yoast SE O . B ut if you have a custom made site, or a site hand coded in pure H T M L , this section will show you have to correct handle pagination with these new tags. It’ s q uite simple actually! B ut you may not find the best source on the internet. H ere I’ ve made sure it’ s bulletproof. W e’ ve identified this page being the first in a paginated series, as you can see the menu for pages 2 , 3 , 4 etc. H ere is the page 1 UR L http://www.z appos.com/me n s- sn e ake rs- athl e tic- shoe s~ dA and page 2 , 3 etc http://www.z appos.com/me n s- sn e ake rs- athl e tic- shoe s~ dB http://www.z appos.com/me n s- sn e ake rs- athl e tic- shoe s~ dC Note: the y are u sin g l e tte rs ( a, b , c) to chan ge the page . L et’ s use Z appos as an ex ample. H ere is their M en’ s Sneakers page 1 . I dentify Your Pages I n The S eriesS T E P O N E A dd rel= ” nex t” To Page O neS T E P T W O T hat’ s right, once you’ ve identified the pages in the series, page one only gets the “ nex t” tag since its the first page in the series. T herefore to page one, in the < head> section we would add; < l in k re l = " n e x t" hre f= " http://www.z appos.com/me n s- sn e ake rs- athl e tic- shoe s~ dB ” > C hange the D NS settings on your current domain.S T E P T H R E E E very page but the first and the last should have a “ nex t” and “ prev” tag. T his makes sense since there are pages before and after. P age two ( mens- sneakers- athletic- shoes~ dB ) would have this; < l in k re l = " pre v " hre f= " http://www.z appos.com/me n s- sn e ake rs- athl e tic- shoe s~ dA ” > < l in k re l = " n e x t" hre f= " http://www.z appos.com/me n s- sn e ake rs- athl e tic- shoe s~ dC ” > A dd rel= ” prev” to the last pageS T E P F O U R T he last page in the seq uence only needs to refer to the page before it, so we NO 10 www.zappos.com
  • 29. A dd rel= ” prev” to the last pageS T E P F O U R T he last page in the seq uence only needs to refer to the page before it, so we would add; < l in k re l = " n e x t" hre f= " http://www.z appos.com/me n s- sn e ake rs- athl e tic- shoe s~ dY ” > A ssuming Z is the last page. Final Notes Y ou can in cl u de a can on ical tag in con j u n ction with re l n e x t/pre v Y ou can u se ab sol u te or re l ativ e U R L s, b u t I al way s re comme n d ab sol u te whe n e v e r possib l e .
  • 30. C onfigure .htaccessS T E P T W O You’ ll need to redirect a bunch of error codes to the error page. You should add the following lines to .htaccess R E D I R E C T I N G E R R O R P A G E S W I T H . H T AC C E S S NO 11 T his will follow a few step process; 1 . Create an error page - this page will have a special script on it. 2 . Configure Your .htaccess file to redirect to the error page Create a page in which the errors will return from - you can call it anything - error.php works. O n that page, add the following code to the top; <? php switch( $ _ SER V ER [ "R ED I R EC T _ ST AT US"] ) { case 400: $ title = "400 B ad R eq uest"; $ description = "T he req uest can not be processed due to bad syntax "; break; case 401: $ title = "401 Unauthoriz ed"; $ description = "T he req uest has failed authentication"; break; case 403: $ title = "403 F orbidden"; $ description = "T he server refuses to response to the req uest"; break; case 404: $ title = "404 N ot F ound"; $ description = "T he resource req uested can not be found."; break; case 5 00: $ title = "5 00 I nternal Server Error"; $ description = "T here was an error which doesn' t fit any other error message"; break; case 5 02: $ title = "5 02 B ad G ateway"; $ description = "T he server was acting as a prox y and received a bad req uest."; break; case 5 04: $ title = "5 04 G ateway T imeout"; $ description = "T he server was acting as a prox y and the req uest timed out."; break; } ? > ErrorD ocument 400 /error.php ErrorD ocument 401 /error.php ErrorD ocument 403 /error.php ErrorD ocument 404 /error.php ErrorD ocument 5 00 /error.php ErrorD ocument 5 02 /error.php ErrorD ocument 5 04 /error.php T his P H P code creates a different title for each type of error. T his way you don’ t need a ton of different files. W e’ re doing it all within one file. In this ex ample we’ re j ust creating a uniq ue title and description for each error page. B ut you can add ex tra variables and create any uniq ue content you want. C reate Your Error PageS T E P O N E
  • 31. O P T I M I Z I N G R S S F E E D S R SS feeds are such a huge part of blogging. Yet we sometimes overlook how powerful it can be to optimize these feeds! T he following hands on tips should help you get the most out of your R SS feed. T his assumes you’ re using feedburner. R eplace D efault R S S Feed I n Your Header A ssuming you’ re using F eedB urner, do all the links on your website point to the correct feed? T he header section of the Q uick Sprout site points to the feedburner feed. If you’ re site does not do this, you need to change the feed UR L in the header.php file ( if using W ordP ress) or where ever your CM S allows. Find the R S S link in your header.php file Q uick W ins I n Feedburner T here’ s a few simple features you can easily activate in F eedB urner. L et’ s make sure you’ ve got them covered! A ctivate S martFeed SmartF eed helps to make your feed compatible in any reader. R eplace it with your feedburner feed UR L . NO 12
  • 32. A nd activate it! A ctivate FeedFlare F eedflare is a way to put link at the bottom of your feed to ask users to do things like share on F acebook, email, bookmark on delicious etc. T his is an essential must for any R SS feed. In the O ptimize tab, click F eedF lare. Select the links you want to appear. F eed means they will appear in the R SS feed. Site means they will appear in the website, if you send the feed out to a website. N ex t, we’ re going to add some “ personal” flares. T hese are simple flares people have created that do not ex ist in the default set of flares. Click ‘ B rowse the Catalog’ . T he activate button is easy to miss, its down below. Click O ptimize- > smartfeed
  • 33. N ex t, we’ re going to add some “ personal” flares. T hese are simple flares people have created that do not ex ist in the default set of flares. Click ‘ B rowse the Catalog’ . B rowse through the available flares. W hen you find one you like, and want to select it, click ‘ L ink’ . A tab will open with the flare. Copy the UR L . G o back to the original screen. P aste the flare UR L . Click ‘ A dd N ew F lare’ you will see your flare appear above. Select where you want it to show ( F eed, Site or both) . B elow, you can view a preview of your flares. R eorder them by dragging and dropping the items.
  • 34. B elow, you can view a preview of your flares. R eorder them by dragging and dropping the items. A ctivate PingS hot P ingShot will notify the reading services when there’ s updates. T his speeds up the delivery of your feed. G o to P ublicize P ingShot and click ‘ A ctivate’ . L ink to the O riginal S ource of the Feed H ave you ever had your R SS feed scraped and duplicated onto another site without your permission? It happens all the time, especially as you get more popular ( with the he l p of this gu ide ! ) . G ooglebot or users might have a hard time telling which article was the original source. T his is why we’ re going to add a link the bottom of your R SS feed citing you as the original source of your content. N ot only will this help users and engines make this determination, it will get you some ex tra back- links as well. D on ’ t forge t to cl ick ‘ S av e ’ . It’ s easy to miss down there. [1] A dding R SS Source L ink in B logger
  • 35. C reate Thank You’ s Some personalization and a thank you to your readers can go a long way. H ere’ s how to set up a simple message in your feed. G o to O ptimize B rowserF riendly Content O ptions Click ‘ enable’ and enter a personal message! Time Your R S S Emails You now have reference to the original source ( y ou ! ) of the content in your R SS feeds. A s always, check your work to make sure its been done correctly. [1] A dding R SS Source L ink in B logger G o to Settings Site F eed A dd the following code: [2] A dding R SS Source L ink in W ordP ress G o to A ppearance E ditor functions.php A dd the following code: <hr /> <a href="http://www.myblog.com">My B log N ame</a> function embed_ rss( $ content) { if( is_ feed( ) ) $ content .= "<p><a href=' ". get_ permalink( ) ."' >' "; $ content .= get_ the_ title( ) ."</a></p>"; return $ content; } add_ filter( ' the_ content' , ' embed_ rss' ) ;
  • 36. V I D E O S I T E M A P S Time Your R S S Emails E ncourage more opens from your R SS email list by controlling send time. G o to P ublicize E mail Subscriptions D elivery O ptions Select your timezone and the best time for your audience. 9 am- 1 1 am is often a good choice. R edirect W ordPress R S S to Feedburner You may have a standard R SS feed built into W ordP ress. You may even have subscribers to it! W ith the help of a P lugin called “ F eedburner R edirect” we’ re going to make sure everything is going through feedburner. You can find the plugin here - http://wordpre ss.org/e x te n d/pl u gin s/te n tb l ogge rs- fe e db u rn e r- rss- re dire ct- pl u gin / E nter your feedburner UR L in both fields. A nd you’ re done! [1] Install it in your W ordP ress setup. [2] A ctivate it.
  • 37. If you have any sort of video on your website or blog, and especially if it’ s marked up with metadata, you need to have a video sitemap. T his gets your video content noticed, processed and index ed much faster by G oogle and B ing. V I D E O S I T E M A P SNO 13 Create a file, the name doesn’ t matter, but I like to use: sitemap_ video.x ml T hen save it in your root directory, like: http://www.q u icksprou t.com/site map_ v ide o.x ml A s mentioned, it doesn’ t matter so much what you name it or even where you put it, but you’ ll need to know this later for when you submit the sitemap to W ebmaster T ools. E x planation of above code; C reate an Empty X M L FileS T E P O N E Paste This I nto the X M L FileS T E P T W O <urlset x mlns="http://www.sitemaps.org/schemas/sitemap/0.9" x mlns:video="http://www.google.com/schemas/sitemap-video/1.1"> <url> <loc></loc> <video:video> <video:thumbnail_ loc></video:thumbnail_ loc> <video:title></video:title> <video:description></video:description> <video:content_ loc></video:content_ loc> <video:player_ loc allow_ embed="yes" autoplay="ap=1"></video:player_ loc> </video:video> </url> </urlset> O PTI O N A - M A NUA L G ENER A TI O N If you have a small site with only a few videos, and you’ re not adding them all of the time, you can easily generate your video X M L sitemap manually. F irst, I want to provide you with the skeleton template of the X M L structure. You can cut and paste the template and then add your own data. T his is j ust the most basic template with the req uired fields.
  • 38. Many of the properties in the template are optional, but I wanted you to have the whole thing :-) Required Fields URL of Page Video File URL or Player URL Title Description Thumbnail So let’s fill in our example template. I’ve stripped out all the other properties for now, so you can clearly see it with only the required elements; Basic Code for One Video in XML Video Sitemap <url> <loc>http://www.quicksprout.com/videos/neil-patel-video-1.html</loc> <video:video> <video:thumbnail_loc>http://www.quicksprout.com/thumbs/thumbnail.jpg</video:thu mbnail_loc> <video:title>Advanced SEO for Bloggers</video:title> <video:description>An exclusive video with SEO expert Neil Patel. Drive ridiculous amounts of leads to your blog and learn the 7 secrets of conversion rate optimization.</video:description> <video:content_loc>http://www.quicksprout.com/video.flv</video:content_loc> </video:video> </url> Adding Additional Properties There are many additional properties you can add to your video sitemap, such as; <video:duration> <video:expiration_date> <video:rating> <video:view_count> <video:publication_date> <video:tag> <video:tag> <video:category> <video:restriction> <video:restriction> <video:restriction> <video:gallery_loc> <video:gallery_loc> <video:price> <video:requires_subscription> <video:uploader> <video:uploader> <video:platform> <video:platform> <video:platform> <video:live> Let’s add a few of these back into our example, so you can see them in action! <url> <loc>http://www.quicksprout.com/videos/neil-patel-video-1.html</loc> <video:video> <video:thumbnail_loc>http://www.quicksprout.com/thumbs/thumbnail.jpg</video:thu mbnail_loc> <video:title>Advanced SEO for Bloggers</video:title> <video:description>An exclusive video with SEO expert Neil Patel. Drive
  • 39. O ption A S ubmit it to W ebmaster Tools D irectly T his is the preferred method to submitting any x ml sitemap to G oogle. S ign in to W e b maste r T ool s V ie w the profil e for y ou r we b site N av igate to S ite C on figu ration - > S ite maps Click “ A dd/ T est a Sitemap” in the right hand corner E nter the name of your sitemap and hit submit O ption B A dd The Following L ine To Your R obots.tx t File Sitemap: http://www.e x ampl e .com/site map_ v ide o.x ml L ike with any x ml sitemap, if your robots.tx t file set up correctly, G oogle with find and process your video x ml sitemaps through having found it in robots.tx t S ubmit Your S itemap to G oogle W ebmaster ToolsS T E P T H R E E L et’ s add a few of these back into our ex ample, so you can see them in action! <url> <loc>http://www.q uicksprout.com/videos/neil-patel-video-1.html</loc> <video:video> <video:thumbnail_ loc>http://www.q uicksprout.com/thumbs/thumbnail.j pg</video:thu mbnail_ loc> <video:title>Advanced SEO for B loggers</video:title> <video:description>An ex clusive video with SEO ex pert N eil Patel. D rive ridiculous amounts of leads to your blog and learn the 7 secrets of conversion rate optimiz ation.</video:description> <video:content_ loc>http://www.q uicksprout.com/video.flv</video:content_ loc> <! --optional properties--> <video:duration>7 5 0</video:duration> <video:rating>4.1</video:rating> <video:view_ count>5 4321</video:view_ count> <video:publication_ date>2012-04-01T 19:20:30+08:00</video:publication_ date> <video:family_ friendly>yes</video:family_ friendly> <video:restriction relationship="allow">I E G B US C A</video:restriction> <video:req uires_ subscription>no</video:req uires_ subscription> <video:live>no</video:live> </video:video> </url> M any of these should be self ex planatory. You can always check G oogle’ s documentation for further ex planation of all the individual fields allowed.
  • 40. . H T A C C E S S H A C K S T hese tips only work if your client is using A pache. If your client is using W indows IIS, then look at IIS hacks. [1] L ocate your .htaccess file on your server. ( See “ H ow to locate .htaccess on your server” ) [2] O nce you’ ve located it, edit the file using a tex t editor. If you are using W indows, I recommend N otepad. If you’ re using M ac, download a free tex t editor like T ex tW rangler. [3] I n your htaccess file decide what you want to do, then add a line of code: To create a custom 40 4 page Use “ E rrorD ocument” and put the UR L to your custom 4 0 4 page at the end. E x ample: E rrorD ocument 4 0 4 http://www.e x ampl e .com/my - cu stom- 4 0 4 - page .html To password protect a folder A . F irst, you will need to first need to create an .htpasswd file. T he easy way is to use this online tool to create it: http://www.tool s.dy n amicdriv e .com/password/ B . E nter your desired username on the left, and the password you want that person to have on the right. C. In the “ path to .htpasswd” box , put it in a folder that isn’ t accessible to the public. Usually, it’ s safe to put in your home directory like “ / home/ myusername” D . Click submit and put the downloaded .htpasswd file into “ / home/ myusername” E . N ow that you’ re done that, type this into your .htaccess file AuthUserF ile /home/myusername/.htpasswd AuthN ame EnterPassword AuthT ype B asic req uire user some_ users_ name R eplace “ some_ users_ name” with the username that will be allowed into this folder. To block users by I P address T ype these four lines into your .htaccess file: O rder allow, deny D eny from 111.222.333.444 D eny from 5 5 5 .666.7 7 7 .888 Allow from all In the lines that say “ deny from, ” replace the ex ample IP addresses “ 111.222.333.444” with the real IP address you want to block. To block users by referrer A dd these three lines to your .htaccess file: R ewriteEngine O n R ewriteC ond % { H T T P_ R EF ER ER } somedomain .com [ N C ] R ewriteR ule .* - [ F ] If you want to block more than one referrer, add more R ewriteCond lines like this: R ewriteEngine O n R ewriteC ond % { H T T P_ R EF ER ER } somedomain .com [ N C ,O R ] R ewriteC ond % { H T T P_ R EF ER ER } anotherdomain .com [ N C ,O R ] R ewriteC ond % { H T T P_ R EF ER ER } 3rdD omain .com [ N C ] R ewriteR ule .* - [ F ] N otice that every line ex cept for the last one should end in “ [ N C ,O R ] ” NO 14
  • 41. Notice that every line except for the last one should end in “[NC,OR]” To make something other than index.html be the default page. Let’s say you want “home.html” to be your default page. Use this line in the htaccess file: DirectoryIndex. home.html To 301 redirect an old domain to a new domain Add these lines to your htaccess file RewriteEngine on RewriteCond %{HTTP_HOST} ^olddomain.com [NC,OR] RewriteCond %{HTTP_HOST} ^www.olddomain.com [NC] RewriteRule ^(.*)$ http://www.newdomain.com/$1 [R=301,NC] Replace "olddomain.com" with your old domain name. This will 301 redirect links form your old domain to your new one with the WWW in front of it. To prevent someone hotlinking resources on your website Add these lines to your htaccess file RewriteEngine on RewriteCond %{HTTP_REFERER} !^$ RewriteCond %{HTTP_REFERER} !^http://(www.)?mydomain.com/.*$ [NC] RewriteRule .(gif|jpg|js|css)$ - [F] Replace mydomain.com with your domain name. These lines will prevent someone from hot linking GIF, JPG, JS, and CSS files. To redirect all pages from HTTPS:// to HTTP:// Add these lines to your htaccess file RewriteEngine on RewriteCond %{SERVER_PORT} !^80$ RewriteRule ^(.*)$ https://www.domain.com/$1 [NC,R=301,L] Replace domain.com with your own domain. To redirect all pages from HTTP:// to HTTPS:// Add these lines to your htaccess file RewriteEngine on RewriteCond %{SERVER_PORT} !^443$ RewriteRule ^(.*)$ http://www.domain.com/$1 [NC,R=301,L] Replace domain.com with your own domain. To redirect one URL from HTTPS:// to HTTP:// Assume the URL is http://www.domain.com/mypage.html RewriteEngine on RewriteCond %{HTTP_HOST} !^80$ RewriteCond %{HTTP_HOST} ^www.domain.com/mypage.html [NC] RewriteRule ^(.*)$ http://www.domain.com/mypage.html [NC,R=301,L]
  • 42. D E T E C T I N G G O O G L E B O TNO 15 [ 1 ] C ut and paste the following code anywhere in the < body> of your document> if( strstr( strtolower( $ _ SER V ER [ ' H T T P_ USER _ AG EN T ' ] ) , "googlebot") ) { // what to do } [ 2 ] R eplace with your content R eplace “ / / what to do” with whatever you want to happen. Tip: T o make it H T M L D o this; if( strstr( strtolower( $ _ SER V ER [ ' H T T P_ USER _ AG EN T ' ] ) , "googlebot") ) { ? > <h1>Put your H T ML here</h1> <p>anything you’ d normally do</p> <? php } L et’ s break apart each piece of the P H P . if( condition) { } - this is j ust a simple function that says “ if x is true, do y” . N ow we’ ll work from the inside of the nested statement out. ‘ H T T P_ USER _ AG EN T ’ - this ex tracts a browser specific ID string $ _ SER V ER - this is an array with information such as headers, paths, and script locations, which is created by the web server strtolower - returns string with all alphabetic characters converted to lowercase. strstr - returns part of haystack string starting from and including the first occurrence of needle to the end of haystack { // what to do } forward slashes / / are j ust used to make a comment. A ll we’ re saying here, is to put whatever you want to happen between the curly brackets. If you like visuals better - this is a good ex planation of the pieces of code; T here may be many reasons why you’ d want to detect G ooglebot as the User A gent. T hese can be left to your imagination :)
  • 43. A D D C U S T O M S E A R C H E N G I N E T O Y O U R S I T E A custom G oogle search on your site can be a powerful feature, yet still many people are not using it. I’ m going to walk you through the steps of installing it on your site. G o to - http://www.googl e .com/cse T his is where a little technical know how applies. You can’ t j ust simply add the site UR L - you must include an asterisk ( * ) after the UR L for it to search the entire site, like this; http://www.q u icksprou t.com/* A fter we have done all this, we’ re given the opportunity to try out the custom search engine before installing it on our site. C ompose a Title and D escriptionS T E P O N E S T E P T W OA dd S ites To B e I ncluded in S earch S T E P T H R E ES elect Edition and C onfirm C H E C K I T O U T LET’S C H E C K I T O U T LET’S NO 16
  • 44. A search for [ twitter tips] in our custom engine shows good results and variety among the sites in the engine. ( N ote the ads will be present unless you pay for a premium version) . N ow it’ s time to install in your site! T his type of installation is going to either be a new page or a new post. L et’ s use a new page in this ex ample, however a new post will work in the same way. W e’ re going to edit in H T M L mode since we’ ll be pasting J avaScript code into the page. A search for [ twitter tips] in our custom engine shows good results and variety among the sites in the engine. ( N ote the I NS TA L L I NG C US TO M S EA R C H I N YO UR S I TE [1] Navigate to a “ new page” [2] Edit in HTM L M ode [3] Paste C ode
  • 45. W e’ re going to edit in H T M L mode since we’ ll be pasting J avaScript code into the page. P R E V I E W I T LET’S P R E V I E W I T LET’S [3] Paste C ode LET’SLET’SLET’SLET’SLET’S I’ m going to show you a way to allow visitors who speak any language to enj oy M U L T I L I N G U A L M A R K U P A N D G O O G L E T R A N S L A T E NO 17
  • 46. I’ m going to show you a way to allow visitors who speak any language to enj oy your site, with the installation of G oogle T ranslate. T his is fairly new, and not many people are doing it, so its still a good time to get in early. N avigate to: http://tran sl ate .googl e .com/tran sl ate _ tool s F or most of you, you’ re going to want to “ translate the whole page” . In very specific circumstances where you may have a section of tex t in a different language you have the option to translate j ust a section of your page. I recommend using optional settings to completely customize your translation ex perience on your site. You can select ex actly which languages your page can be translated to. You can select how the translate box will A gain, for most of us that’ s going to be E nglish. T he first phase of getting translate running on your site, is to select all the options and generate the code snippet. M U L T I L I N G U A L M A R K U P A N D G O O G L E T R A N S L A T E NO 17 P H A S E IP H A S E I G E T T I N G T H E C O D EG E T T I N G T H E C O D E Translate Page or Part of Page?S T E P O N E F or most of you, you’ re going to want to “ translate the whole page” . In very specific circumstances where you may have a section of tex t in a different language you have the option to translate j ust a section of your page. S T E P T W OS elect L anguage of Your W ebpage S how O ptional S ettingsS T E P T H R E E
  • 47. You can select how the translate box will display on your site. I personally like “ inline” and “ dropdown only” . T he you’ ve got some more advanced setting choices. H ere we’ ve chosen to automatically display the banner to people who need to translate the page. A nd we’ ve select to track the usage in G oogle A nalytics. A fter you’ ve made all of your selections you should see the completed snippet of code. You can do a q uick preview of your translate button before you go to copy the code and add it to your site. QUICK TIP: FAST WAY TO FIND YOUR GOOGLE ANALYTICS ID 1. GO TO YOUR WEBPAGE 2. VIEW SOURCE 3. CONTROL F (IN CHROME) TO FIND TEXT 4. SEARCH FOR “UA-” (WITH THE DASH) Preview The Page
  • 48. You can do a q uick preview of your translate button before you go to copy the code and add it to your site. Preview The Page N ow that we’ ve got the code ready, it needs to be installed on your site. If you’ re running a content management system like W ordP ress, this should be fairly easy. W e’ re j ust going to locate the spot where the code needs to be inserted. T here’ s likely to be two basic places you’ ll decide to install the box . A q uick look at the source code again, will give you a good idea where the code needs to go; P H A S E I I I N S T A L L I N G T H E C O D E O N Y O U R S I T E D ecide W here You W ant To Translate B ox To A ppearS T E P O N E O ption A W ould be somewhere in the header, like here on Q uickSprout; O ption B W ould be somewhere in a sidebar, like here on Q uicksprout; I nstalling The C ode I n The Header [option A ]S T E P T W O
  • 49. A q uick look at the source code again, will give you a good idea where the code needs to go; You can see, it needs to go inbetween the search box and the logo. T his option is a little easier, because you will likely be able to j ust create a new tex t widget. A ll done! N ow visitors of any language can enj oy your site! L ocate the place in the code where your translate box needs to go and paste the snippet in the header.php file and save. I nstalling The C ode I n The Header [option A ]S T E P T W O I nstalling the C ode in a S idebar. [option B ]S T E P T W O [1] L og I nto W ordPress [2] Navigate to the “ editor” [3] S elect “ Header” [4] Paste Translate C ode I nto Header.php File [1] Navigate to your widgets [2] A dd a new “ Tex t W idget” to your sidebar [3] Paste the Translate C ode I nto Your W idget box needs to go and paste the snippet in the header.php file and save. [2] [1] [2] [3] [3] [4]
  • 50. B L O C K P O T E N T I A L L Y M A L I C I O U S O R H A R M F U L L I N K S T O Y O U R S I T E NO 18 http://www.q u icksprou t.com/? n e il pate l scam ( P lease don’ t link to me or anyone else like that) A nd the malicious q uery string can end up on different pages: http://www.q u icksprou t.com/page /2 /? n e il pate l scam http://www.q u icksprou t.com/page /3 /? n e il pate l scam T hese pages can get index ed as such, and could potentially replace the real pages in their index . T his is unlikely, but in either case, you may need a way to fix this if it happens. H ere’ s a bit of .htaccess code to do so: # F I X B AD L I N K S <ifModule mod_ rewrite.c> R ewriteC ond % { Q UER Y _ ST R I N G } q uerystring [ N C ] R ewriteR ule .* http://ex ample.com/$ 1? [ R =301,L ] </ifModule> S imply do the following: [1] M ake sure the .htaccess is in your root directory. [2] P lace this bit of code at the bottom on the .htaccess file. [3] R eplace “ q uerystring” with the malicious q uerystring being used. [4] R eplace ex ample.com with your site’ s UR L [5 ] T o add multiple q uerystrings use the “ pipes” ( | ) as an “ or” ex pressions: ( neilpatelscam| q uicksproutripoff| badblogger) for the q uerystring. [6 ] F inally, run a site: q uery in G oogle a week or two later, such as: site:q uicksprout.com/ ? neilpatelscam to see if they’ ve been removed from the index . O ccasionally a hacker or even j ust someone inex perienced without malicious intent will send a back link over to your site with a q uery parameter attached to the end of it. It might look something like the following:
  • 51. T his section of browser plugins revolves around the ones that help optimize your sites accessibility and index ation. F irst, here’ s the list. B roken L ink Checker https://chrome .googl e .com/we b store /de tail /oj kcdipcgfae kb e ae l aapakgn j fl fgl f W eb D eveloper http://chrispe de rick.com/work/we b - de v e l ope r/ R edirect P ath Checker https://chrome .googl e .com/we b store /de tail /aomidfkchockcl dhb kggj okdkke b mdl l SE O moz T oolbar https://chrome .googl e .com/we b store /de tail /e akacpaij cpapn dcfffdgphdiccmpkn p Chrome Sniffer https://chrome .googl e .com/we b store /de tail /homgcn aoacgigpkkl j j j e kpign b l ke ae G oogle A nalytics D ebugger https://chrome .googl e .com/we b store /de tail /j n kmfdil e e l hofj cij ame phohj e chhn a M icroformats for Chrome https://chrome .googl e .com/we b store /de tail /oal b ifkn mcl b n mj l l j de mhj j l kmppj j l R ulers G uides and E yedropper Color P icker https://chrome .googl e .com/we b store /de tail /b j pn gj gkahhfl e j n e e mihpb n fdoafoe h W ord Count https://chrome .googl e .com/we b store /de tail /kmn dj oipob j fj b hocpoe e j j imchn b j j e Source K it https://chrome .googl e .com/we b store /de tail /iie e l dj dihkpoapgipfke oddj ckopgj g? hl = e n - U S I’ m going to show you how to use some of these in an advanced way. B roken L inks C hecker N ot only is the broken links checker a great plugin to find broken links q uickly on your site, but you can use it in creative ways on other people’ s sites to get ideas for linkbuilding and prospecting. F or ex ample, try running it on the sitemap of a competitor’ s website. H ere’ s how: [1] F ind a competitor with an H T M L sitemap. F or this ex ample I’ m going to randomly use www.bizchair.com and their sitemap is http://www.b iz chair.com/site - map.html B R O W S E R P L U G I N S F O R O N - S I T E A N A L Y S I S NO 19 [2] R un the L ink Checker Click the icon for the ex tension W ait for it to find the broken links - in this case there are q uite a few. N ot only is the broken links checker B rowser plugins can greatly speed up your workflow and efficiency. I’ m going to show you some plugins for G oogle Chrome, and a little bit about how to use them in more advanced ways.
  • 52. C hrome S niffer T his plugin automatically shows you the CM S or script library a website uses. E x tremely handy if you are looking to reach out to only W ordP ress site owners, for ex ample. A s you browse the web, the icon to the far right of the UR L will change to match which CM S or library is being used. R edirect Path C hecker T his plugin will automatically alert you if you were taken to a page via any kind of redirect. Can be very useful when browsing your site, in the case that you are internally linking to outdated UR L s ( or ex ternally for that matter) F or ex ample, I j ust found on my site this link to G izmodo 3 0 2 redirects: H ow did I know? B ecause the plugin alerted me to the 3 0 2 . A nd then you can click on the icon and it will show you the redirect ( or series of redirects) that the browser took to get to a page. N ot only is the broken links checker a great plugin to find broken links q uickly on your site, but you can use it in creative ways on other people’ s sites to get ideas for linkbuilding and prospecting. R edirect Path C hecker T his plugin will automatically alert you if you were taken to a page via any kind of F or ex ample, you can see that my site is built on W ordP ress and here is a site built with D rupal A nd then you can click on the icon and it will show you the redirect ( or series ofA nd then you can click on the icon and it will show you the redirect ( or series ofA nd then you can click on the icon and it will show you the redirect ( or series of
  • 53. The S EO moz Toolbar & Plugin You can do many things with the M oz plugin. A few of the more advanced things you might use it to look for are: Q uickly finding followed vs nofollowed links O r finding the country and IP address for the website W E L L D O N E ! Y O U M A D E I T T H R O U G H C H A P T E R O N E ! A R E Y O U R E A D Y F O R C H A P T E R T W O : S I T E S P E E D & P E R F O R M A N C E T A K E M E T O CHAPTER TWO T A K E M E T O CHAPTER TWO T A K E M E T O INTRODUCTION T A K E M E T O INTRODUCTION
  • 54. T H E A D V A N C E D G U I D E T O BY NEIL PATEL AND SUJAN PATEL SEOSEOSEOSEOSEOSEOSEOSEOSEOSEOSEOSEOSEOSEOSEOSEOSEOSEOSEOSEOSEOSEOSEOSEOSEOSEOSEOSEOSEOSEOSEOSEOSEOSEOSEOSEOSEOSEOSEOSEOSEOSEOSEOSEOSEOSEOSEOSEOSEOSEOSEOSEOSEOSEOSEOSEOSEOSEOSEOSEOSEOSEOSEOSEOSEOSEOSEOSEOSEOSEOSEOSEOSEOSEOSEOSEOSEOSEOSEOSEOSEOSEOSEOSEOSEO 0202 SEOSEOSEOSEOSEOSEOSEO 02 SEOSEOSEOSEOSEOSEOSEO 020202 SEO 02 SEO 02 SEO 02 SEOSEOSEOSEO 02 SEOSEOSEO 02 SEOSEOSEO 02 SEOSEOSEOSEOSEOSEOSEOSEOSEOSEO 02 SEOSEOSEOSEOSEOSEOSEO 02 SEOSEOSEOSEOSEOSEOSEO 02 SEOSEOSEOSEOSEOSEOSEO CHAPTER 02 S I T E S P E E D & P E R F O R M A N C E T he first section covered how to make your site crawlable and accessible. T hat’ s a fantastic first step, once accomplished, to make your site better than many others on the web. N ow we’ re going to crank it up a level and help make your site faster and perform more efficiently. T his is not only great for user ex perience but search engines love it to. F ollow this section straight through for some tips to get your site up to speed. P age speed or page load time is crucial these days, not only for a possible small boost in rankings, but because u se rs wil l l ov e y ou . P roviding a fast ex perience for visitors is essential! W e’ re going to cover how you can measure your site speed through G oogle P age Speed O nline. G o to https://de v e l ope rs.googl e .com/page spe e d/ M E A S U R I N G Y O U R S I T E S P E E D NO 1 G o To G oogle PageS peed O nlineS T E P O N E S T E P T W O R un The Tool O n Your Homepage
  • 55. T his gives you an overall score, and being your homepage is a good gauge of your site as a whole. T hen you can drill down into the list of prioritized issues; You should focus on the high and medium priority items first. Click on each item to get the details. T he tools gives you detailed suggestions for each item. F ix ing many of the common issues is covered later in this document. F or now, we’ re simply running the tool to diagnose any issues. I have a page on my site, Q uickSprout, which is entirely different than most of the other pages - http://www.q u icksprou t.com/pro/ So I would also want to run the P ageSpeed tool on this page to look any differences, especially because it’ s an important sales page. Click the “ mobile” tab top right; R un the Tool O n I nner Pages ( E sp ecially T hose T hat M ight B e D ifferent F rom T he H om ep age) Test Your S ite For M O B I L E S ite S peed S T E P T W O R un The Tool O n Your Homepage S T E P T H R E E
  • 56. Click the “ mobile” tab top right; R emember to test your inner pages as well; Test Your S ite For M O B I L E S ite S peedS T E P F O U R
  • 57. You probably all know how to install the normal analytics tracking in W ordP ress, and you may even know how to install the page speed code snippet as well. W e’ re using the G oogle A nalyticator P lugin for this. A gain, this is likely very basic, but j ust a reminder. Install the tracking code here. B efore we configure the page speed part, we’ re j ust going to be sure you’ ve configured the user tracking correctly. M ight as well, since we’ re in here, right? T R AC K P A G E L O A D I N A N A L Y T I C S NO 2 You may know that you can also track page load speed within analytics. B ut you may not know of a few little ex tras you can do along with this. W e’ re going to cover doing this two ways: [1] Tracking within W ordPress [2] Tracking within a Non W ordPress site S E T T I N G U P T R A C K I N G I N W O R D P R E S S S E T T I N G U P T R A C K I N G I N W O R D P R E S S I nstall the Normal Tracking C odeS T E P O N E N E X T
  • 58. S T E P T H R E E C heck S ource C ode T o do this, follow these simple three steps; [1] S elect “ no” [2] C heck which users you do NO T want to track for traffic ( I l ike j u st admin ) [3] S elect “ R emove” - this is the easiest method T he site speed portion. Its made so easy in this analytics plugin. J ust be sure its “ enabled” . You might think that was easy, and this is an advanced guide. N ow that we have the basics setup, let’ s add some more important features. N ot many people know to do this, but you can set your sampl e rate . N ormally, G oogle A nalytics does not track a very large percentage of your site speed data ( on l y 1 % b y de fau l t) — so if you have a small site, you could potentially be missing out on a lot of important data. T his gets installed before tracker initializ ation, so be sure to put it in the correct box . H ere’ s the code snippet ( T he A sync snippet) ; _ gaq .push( [ ' _ setSiteSpeedSampleR ate' , 5 ] ) ; N otice the number ‘ 5 ’ . T his is the new sample rate — 5 % of all visits. F or a small site, that receives less than about 1 0 , 0 0 0 visits a month, feel free to crank that up to 5 0 or even 1 0 0 , but only a reasonable amount to collect the data you need. B ut please note, that if your site receives more than 1 0 K hits a day, G oogle will automatically only collect a 1 % sample. It is also recommended to keep your sample size as low as possible but large enough to collect data. You should always check your source code to be sure its rendering correctly. ( R e me mb e r, don ’ t che ck it whil e l ogge d in to W ordP re ss, b e cau se as an admin y ou wil l b e e x cl u de d from se e in g the code ) . S et S ample R ateS T E P T W O N E X T
  • 59. S T E P T H R E E C heck S ource C ode You should always check your source code to be sure its rendering correctly. ( R e me mb e r, don ’ t che ck it whil e l ogge d in to W ordP re ss, b e cau se as an admin y ou wil l b e e x cl u de d from se e in g the code ) . You should see the Sample R ate code j ust above the T rack P ageview code, as shown in the screenshot. T his is a very similar process, but we’ re going to lay it all out specifically so you can see it. T his is all pretty basic, but j ust make sure you have the page load time code added in analytics; Your analytics will look like the following, with the page load code bolded; <script type="tex t/j avascript"> var _ gaq = _ gaq | | [ ] ; A dd Page L oad Time C odeS T E P T W O 020202020202020202020202020202S E T T I N G U P T R A C K I N G I N N O N W O R D P R E S S S E T T I N G U P T R A C K I N G I N N O N W O R D P R E S S D epending on how your custom site may be set up, you might have a .php file that handles the header ( l ike in W ordP re ss) or you may have static H T M L files with the header in each file ( in which case y ou wil l hav e to u pdate e v e ry fil e ) . O ur ex ample will have a header.php file. L ocate Your G oogle A nalyticsS T E P O N E
  • 60. S T E P T H R E E A dd S ample R ate C ode N ex t, we’ ll add the same sample rate code; Your analytics will look like the following, with the page load code bolded; <script type="tex t/j avascript"> var _ gaq = _ gaq | | [ ] ; _ gaq .push( [ ' _ setAccount' , ' UA-15 89983-1' ] ) ; _ gaq .push( [ ' _ trackPageview' ] ) ; _ g a q . p u s h ( [ ' _ t r a c k P a g e Lo a d Ti m e ' ] ) ; ( function( ) { var ga = document.createElement( ' script' ) ; ga.type = ' tex t/j avascript' ; ga.async = true; ga.src = ( ' https:' == document.location.protocol ? ' https://ssl' : ' http://www' ) + ' .google-analytics.com/ga.j s' ; var s = document.getElementsB yT agN ame( ' script' ) [ 0] ; s.parentN ode.insertB efore( ga, s) ; } ) ( ) ; T he code again is; _ gaq .push( [ ' _ setSiteSpeedSampleR ate' , 5 ] ) ; A nd you use the number ( in this case 5 ) to control the percentage of the site being tracked for page speed. W H E R E T O F I N D T H E R E P O R T You will view this data by going to; Content O verview Site Speed M ost people miss this nex t step! G o to “ page timings” and click on “ technical”
  • 61. U S I N G Y A H O O ’ S Y S L O W P L U G I N NO 3 I nstall YS lowS T E P O N E G o to http://y sl ow.org/ Install the YSlow plugin in your browser ( pre tty mu ch an y thin g b e side s I n te rn e t E x pl ore r) . T his is all pretty basic, but j ust make sure you have the page load time code added in analytics; You’ ll notice there are three rulesets to choose from; [1] YS low ( V 2) - R uns the full set of 23 rules [2] C lassic ( V 1) - R uns the first 13 rules [3] S mall S ite or B log - R uns 14 rules that apply to small sites I would use small site or blog only if you’ re getting less than about 1 0 , 0 0 0 visits a month. O therwise use YS low ( V 2) if you’ re getting over 1 0 , 0 0 0 visits a month. L oad the page you want to test. H it “ R un T est” . O pen and R un YS lowS T E P T W O www.zappos.com S T E P T H R E E R eading The R esults O verall performance score - You should strive for an 8 5 ( B ) .
  • 62. A lso, note that you can filter the report of the type of result. A s a strategy of prioritization, I would focus on the F ’ s first. E ach error provides a short ex planation and a link to read more information on the Yahoo D eveloper site. N otice the first error returned in YSlow? M ake F ewer H T T P R eq uests “ T his page has 2 3 e x te rn al J av ascript scripts. T ry comb in in g the m in to on e . T his page has 7 e x te rn al sty l e she e ts. T ry comb in in g the m in to on e . T his page has 1 9 e x te rn al b ackgrou n d image s. T ry comb in in g the m with C S S sprite s.” T his is very common, and it is because the CSS and J S files are not optimized and minified. C he ck ou t the se ction ” U sin g L E S S to optimiz e C S S ” for how to improv e the se are as. L et’ s tackle one of the easiest win areas: reducing large images. name: 1 . what is seo? 2 . what is yslow? 3 . make fewer H T T P req uests? 4 . Use a content delivery newtowrk? 5 . A void SR C href 6 . Compress components with gzip? 7 . P ut CSS at top? 8 . R educe D N S lookups?
  • 63. L arge images are often the biggest culprit when it comes to slow site speed. I’ m going to show you a few ways to find the worst offenders so you can take action and reduce them. T hat’ s right! You can find large images within G oogle image search. T his is a q uick method to catch any low hanging fruit. site:q uicksprout.com shows me all the images from my site G oogle has index ed; image s.googl e .com G o To G oogle I mage S earchS T E P O N E S T E P T W OD o A S ite S earch NO 4 F I N D I N G L A R G E I M A G E S T O R E D U C E i m a g e s . g o o g l e . c o m i m a g e s . g o o g l e . c o m S T E P T H R E ES hut O ff S afe S earch 010101010101010101G O O G L E I M A G E S E A R C H G O O G L E I M A G E S E A R C H
  • 64. W e want to be sure we’ re getting all the images in results. Start with a conservative number, and filter for images larger than 6 4 0 x 4 8 0 . W hen you’ re looking at results, see if you spot any images that end up as being “ large” that you know shouldn’ t be. You know they’ re probably being resized in the CSS or H T M L and should be reduced to the actual size you want. H ere are the results. T his one image caught my attention; T his is a really q uick method to find some really obvious ones. L et’ s do some approaches that work much better at scale. A nd you can see when clicking on the photo, the actual size is much to large Filter B y S iz e L ook at R esults S T E P F O U R i m a g e s . g o o g l e . c o m S T E P T H R E ES hut O ff S afe S earch S T E P F I V E
  • 65. W e’ re going to use Screaming F rog to crawl a site and show us the largest images by file size. If you haven’ t already, crawl the site you want to check. T hen view images F ilter by those over 1 0 0 kb Sort by size E x port to .csv Use the spreadsheet as you track your progress to reducing images. You may have a lot of large images, and reducing them could take a few sessions! 020202020202020202U S E S C R E A M I N G F R O G S E O S P I D E R U S E S C R E A M I N G F R O G S E O S P I D E R C rawl The S iteS T E P O N E
  • 66. W hen you minify your J avaScript and turn it into a single file you increase the speed of your website because it’ s only one small download instead of many larger ones. T his tutorial will help you install G oogle Closure T ool and minify all of your J avaScript. [1] G o to the G oogle C ompiler closure website T he website is: http://code .googl e .com/p/cl osu re - compil e r/ [2] C lick on the download T he download is the link that says “ compiler- latest.zip” G O O G L E C L O S U R E T O O P T I M I Z E F O R S P E E DNO 5 i m a g e s . g o o g l e . c o m [3] O pen the Z I P file [5 ] O pen a command line window [4] C opy the J A R file to the folder where all your J avaS cript is located O N A M A C O N A P CD ouble click on the Z IP file. It will create a folder with the same name containing a “ J A R ” file. In this ex ample, we dragged the compiler.j ar file to the folder where our J avaScript is located. Google Drive Desktop Applications Documents Downloads inbox compiler-latest compiler-latest.zip compiler.jar COPYING README Google Drive Desktop Applications Documents Downloads inbox favicon.iso img javascripts job-ques robots.txt stylesheets application.js bootstrap.js bootstrap.min.js compiler.jar d3.min.js extensions.js jquery_spinner.js inbox Google Drive Desktop Applications Documents Downloads inbox compiler-latest compiler-latest.zip compiler.jar COPYING README
  • 67. [5 ] O pen a command line window [6 ] C hange to the folder where your J avaS cript is located O N A M A C G o to your F inder, then open A pplications > Utilities > T erminal O N A M A C T ype in “ ~ / ” then the folder where your J avaScript files are located. In this ex ample, my J avaScript was in the home directory under a folder called code, then os2 , then public, then j avascripts. O N A W I N D O W S Click on Start, type in “ command prompt” , click on “ command prompt” O N A W I N D O W S T ype in “ cd ” then the folder where your J avaScript files are located. [7 ] Type in the J ava command to create your minified J avaS cript file O N B O T H W I N D O W S A N D M A C : T ype: j ava -j ar compiler.j ar --j s j q uery.j s j q uery_ spinner.j s --j s_ output_ file output.j s” R eplace “ j q uery.j s” and “ j q uery_ spinner.j s” with the names of the J avaScript files you want to minify. If order is important, type them in the correct order they need to go in. R eplace “ output.j s” In this ex ample, we compiled j q uery.j s and a plugin called “ j q uery_ spinner.” Google Drive Desktop Applications Documents Downloads inbox TimeTracker TinkerTool TinyUmbrella Twitter Utilities Vagrant Podcast Capture RAID Utility Remote Install Mac OS X Spaces System Profiler Terminal
  • 68. [8] Add the minified JavaScript file back into your project [9] Finally, test your application to make sure everything is still running In this example, we added line 8 to add the JavaScript back into this HTML file.
  • 69. In sections two and three we covered how to evaluate the performance of your site. H ere we’ re going to cover an advanced way to optimize CSS and J S files, with “ L E SS” . L ES S is a dynamic stylesheet language that creates CSS for you. T he advantage of using L E SS is that a L E SS compiler will automatically make your CSS files smaller so they are faster to download for your users. L ess has a free application you can download to compress your CSS files F O R M A C S G o to http://in cide n t5 7 .com/l e ss/ and download L ess.A pp. S T E P T W OO pen the L ess A pplication S T E P O N E O P T I M I Z I N G C S S A N D J S F I L E S D ownload and I nstall L ess A pplications http://incident57.com F O R W I N D O W S G o to http://win l e ss.org/ and download the W inL ess application http://winless.org NO 6
  • 70. S T E P T H R E E F O R M A C S D ouble click on the download and move the L ess application to your applications folder. S T E P T W OO pen the L ess A pplication Google Drive Desktop Applications Documents Downloads inbox Less Less.zip Google Drive Desktop Applications Documents Downloads inbox index.php modernist pagelines readme.txt twentyeleven twentyten 404.php archive.php editor-style.css footer.php ie-fixes.css index.php style.css Google Drive Desktop Applications Documents Downloads inbox index.php modernist pagelines readme.txt twentyeleven twentyten 404.php archive.php editor-style.less footer.php ie-fixes.less index.php style.less In this ex ample, we took a W ordpress theme’ s CSS files and renamed them all with “ .less” . In this ex ample, we’ re dragging the folder that contains the L E SS files into the application: O pen the Folder W here your C S S Files are and R ename your C S S Files as “ .less” S T E P T H R E E D rag the folder with your L ES S files into the L ess application B E F O R E A F T E R
  • 71. T his will create new CSS files that have been minified for faster downloads. W hile the application is open, every time you change your less files, it will automatically update the minified CSS for you. Your L E SS files will look normal so you can still edit them: B ut your minified CSS files will look like this: C lick on C ompiler, then C ompile A llS T E P F O U R L ess will A utomatically M inify your L ES S Files into C S S Files W hile it’ s O pen S T E P F I V E
  • 72. B ut your minified CSS files will look like this: In this ex ample we shaved off 2 k in file size. W hile it’ s only a small difference doing many small optimization tweaks will add up and give your users a much faster download.
  • 73. I N S T A L L I N G G O O G L E ’ S M O D _ S P E E D F O R A P AC H E NO 7 [1] I nstalling G oogle’ s M O D _ S PEED for A pache [1] S S H into your server [2] D ownload the mod- pagespeed .deb package [3] I nstall the .deb package If you are running your website on an A pache server and you have control over the configuration of the server at the module level, then you can install the M O D _ P A G E SP E E D module for an easy speed boost. I F Y O U ’ R E U S I N G A D E B I A N B A S E D S E R V E R ( S U C H A S D E B I A N O R U B U N T U ) : [1] S S H into your server I F Y O U ’ R E U S I N G A R E D H A T B A S E D S E R V E R ( S U C H A S R E D H A T , F E D O R A , O R C E N T O S ) : F or additional information about M O D _ P A G E SP E E D see: https://de v e l ope rs.googl e .com/spe e d/docs/mod_ page spe e d/u sin g_ mod If your server is a 3 2 - bit machine use this command: wget https://dl-ssl.google.com/dl/linux /direct/mod-pagespeed-beta_ current_ i3 86.deb If your server is a 6 4 - bit machine use this command: wget https://dl-ssl.google.com/dl/linux /direct/mod-pagespeed-beta_ current_ am d64.deb T ype this into the command line: dpkg -i mod-pagespeed-* .deb [4] C orrect any broken dependencies in place T ype this into the command line: apt-get -f install WARNING: Although this tutorial looks very advanced, it’s relatively easy for someone with experience configuring Apache at the server level. However, doing this on your own with no experience may result in your whole website going down! You should know how to install Apache modules and configure your webserver from a command line. If you don’t know how then you should leave this up to a professional web developer or system administrator who has experience.
  • 74. [1] S S H into your server [2] D ownload the mod- pagespeed .deb package I F Y O U ’ R E U S I N G A R E D H A T B A S E D S E R V E R ( S U C H A S R E D H A T , F E D O R A , O R C E N T O S ) : [1] O pen your A pache configuration file for editing C O N F I G U R I N G M O D _ P A G E S P E E D If your server is a 3 2 - bit machine use this command: wget https://dl-ssl.google.com/dl/linux /direct/mod-pagespeed-beta_ current_ i3 86.rpm If your server is a 6 4 - bit machine use this command: wget https://dl-ssl.google.com/dl/linux /direct/mod-pagespeed-beta_ current_ x 8 6_ 64.rpm [3] I nstall “ at” using the Yum package manager T ype this into the command line: yum install at If you’ re using Ubuntu or D ebian the file will be located in: /etc/apache2/mods-available If you’ re using CentO S or F edora or R edhat, the file will be located in: /etc/httpd/conf.d [2] L ocate the pagespeed_ module directives. T hey will be wrapped inside an IfM odule directive. Enabling or disabling the module per folder A dd the following line to any .htaccess file on your website: T o turn M odP agespeed on: ModPagespeed on T o turn M odP agespeed off: ModPagespeed off [4] C orrect any broken dependencies in place T ype this into the command line: rpm -U mod-pagespeed-* .rpm
  • 75. B R O W S E R C AC H I N G ( N O N - W O R D P R E S S S I T E ) NO 8 M ost of you are likely running W ordP ress sites, and we’ re going to cover some plugins you can use with W ordP ress to speed up performance. B ut for some of you who may not be running W ordP ress, I still want to give you some technical info on optimizing for speed. H ere, we’ re going to cover some advanced things you can do within your .htaccess file to leverage browser caching. So when you see that warning within G oogle P ageSpeed O nline, you can use the following techniq ues to fix it. Use your F T P client of choice, or you can download and use F ileZ illa - http://fil e z il l a- proj e ct.org/ I am sure you are familiar with how to log in via F T P , but in case you need a q uick reminder; Host: website name Username Password Port: most cases you can leave this blank T his is located in the root directory. M ake sure you can see hidden files, otherwise you may not notice it. N ex t, we’ re going to download the .htaccess file and save a backup so we can safely edit it, but restore it if there is a mistake. In F ileZ illa you right click and download; L og I nto Your FTP S erver and B ackup Your .htaccess fileS T E P O N E N ex t, we’ re going to download the .htaccess file and save a backup so we can safely edit it, but restore it if there is a mistake. In F ileZ illa you right click and download; Find Your .htaccess FileS T E P T W O S T E P T H R E E D ownload and B ackup the .htaccess File N O T E : You should be a little comfortable editing your .htaccess file. Talk to your webmaster if you’re not sure this is something you should be editing. N O T E : In some cases your site may not have an .htaccess file, so you can just create a new file. Start a new document in your text editor and name it .htaccess
  • 76. N otice the code is basically the same, but we’ ve chosen a different length of time for the css. T his will cache your CSS for one day. A gain, this depends on how often you change your css files, and how often people return back to your site. T he code for j avascript caching is also similar, but in this case we’ ve set it to a month. [1] Turn R ewriteEngine O n this should be the first thing in the .htaccess file [2] A dd < file> wrapper tags P H O T O F I L E S C S S J A V A S C R I P T W e’ re setting the cache time for one week for photos. You should determine a reasonable time frame for your site, depending on how often the photos change and people visit. [3] A dd the file type( s) within the wrapper [4] A dd the code which creates the caching and sets the max time to one week [5 ] A dd the same code for other photo file types .png and .gif
  • 77. N otice the code is basically the same, but we’ ve chosen a different length of time for the css. T his will cache your CSS for one day. A gain, this depends on how often you change your css files, and how often people return back to your site. T he code for j avascript caching is also similar, but in this case we’ ve set it to a month. T his will depend on how heavily your site req uires J avascript and how often it changes. C S S J A V A S C R I P T T I M E C H E A T - S H E E T H ere’ s a few different time frames, since they are calculated in seconds; 5 minutes in seconds = 3 0 0 1 day in seconds = 8 6 , 4 0 0 1 week in seconds = 6 0 , 4 8 0 0 1 month in seconds = 2 , 6 2 9 , 0 0 0 6 months in seconds = 1 5 , 7 7 4 , 0 0 0 1 year in seconds = 3 1 , 5 3 6 , 0 0 0 ( basically ‘ infinite’ ) A s mentioned, you can mix and match the file types with time frames that make sense for your site. W hen in doubt, set your time frames a little shorter j ust to be safe! If you’ ve followed and implemented the tips in this section you should have one of the faster sites on the web! N ex t we’ re going to cover new and groundbreaking areas of search. You should be doing these things now to stay ahead of the competition. W E L L D O N E ! Y O U M A D E I T T H R O U G H C H A P T E R O N E ! A R E Y O U R E A D Y F O R C H A P T E R T H R E E : N E W S E A R C H ? T A K E M E T O CHAPTER THREE T A K E M E T O CHAPTER THREE T A K E M E T O CHAPTER ONE T A K E M E T O CHAPTER ONE
  • 78. T H E A D V A N C E D G U I D E T O SEOSEOSEOSEOSEOSEOSEOSEOSEOSEOSEOSEOSEOSEOSEOSEOSEOSEOSEOSEOSEOSEOSEOSEOSEOSEOSEOSEOSEOSEOSEOSEOSEOSEOSEOSEOSEOSEOSEOSEOSEOSEOSEOSEOSEOSEOSEOSEOSEOSEOSEOSEOSEOSEOSEOSEOSEOSEOSEOSEOSEOSEOSEOSEOSEOSEOSEOSEOSEOSEOSEOSEOSEOSEOSEOSEOSEOSEO 0303 SEOSEOSEOSEOSEOSEOSEO 03 SEOSEOSEOSEOSEOSEOSEO 030303 SEO 03 SEO 03 SEO 03 SEOSEOSEOSEO 03 SEOSEOSEO 03 SEOSEOSEO 03 SEOSEOSEOSEOSEOSEOSEOSEOSEOSEO 03 SEOSEOSEOSEOSEOSEOSEO 03 SEOSEOSEOSEOSEOSEOSEO 03 SEOSEOSEOSEOSEOSEOSEO CHAPTER 03 N E W S E A R C H N ow your site is crawlable, index able and lightening fast. T ime to ramp it up another notch with some new search elements. Search is moving towards a more semantic “ real to life” environment. T his means a world where engines understand the relationships between real world obj ects like people, places, movies, businesses etc. T ime to get on board now and integrate this into your website! Schema.org is a universal metadata markup introduced in 2 0 1 1 by the maj or search engines. Its used to communicate to them the intended type of content on your website. T here are still many people not taking full advantage of this! W e’ re going to cover several types of schema implementation, and how to get the correct markup into your H T M L code. T hese five elements are best described with an ex ample. I T E M S C O P E I T E M T Y P E I T E M P R O P I T E M I D I T E M R E F S C H E M A . O R G M E T A D A T A I M P L E M E N T A T I O N NO 1 010101010101010101010101B A S I C A T T R I B U T E S O F M I C R O D A T A B A S I C A T T R I B U T E S O F M I C R O D A T A BY NEIL PATEL AND SUJAN PATEL