ellipsis flag icon-blogicon-check icon-comments icon-email icon-error icon-facebook icon-follow-comment icon-googleicon-hamburger icon-imedia-blog icon-imediaicon-instagramicon-left-arrow icon-linked-in icon-linked icon-linkedin icon-multi-page-view icon-person icon-print icon-right-arrow icon-save icon-searchicon-share-arrow icon-single-page-view icon-tag icon-twitter icon-unfollow icon-upload icon-valid icon-video-play icon-views icon-website icon-youtubelogo-imedia-white logo-imedia logo-mediaWhite review-star thumbs_down thumbs_up

Rules for beating Google at SEO

Rules for beating Google at SEO Brandt Dainow
VIEW SINGLE PAGE


Some people believe Google has 200 rules for ranking websites. If you knew all of them you would be No. 1 for any search term you wanted, and you'd get rich really fast and buy an island somewhere and retire. We'd all like that, so over the last few months, members of the LinkedIn discussion group, SearchEngineLand, have been working to compile this "Magic 200 List." So far they're up to Rule 300, but there are duplicates, and a few silly ones (some of us doubt if Google really cares who you vote for), so here are the best 173.


I've split the list into a positive and a negative group. Positive factors will improve your rank, while negative factors will decrease it (or get your site blacklisted). Both groups are further divided into five categories: code, copy, site, links, and behavior. Code factors relate to how the site is coded, plus some aspects of server admin and ancillary files such as XML sitemaps. Copy factors are about the visible copy people read, but the most important rule is merely this: relevant content and lots of it! Site factors relate to the domain and hosting arrangements. For example, just like buying a car, do you know what people did with that domain name before you bought it? Does it come with a reputation? Link factors are for the link-building fraternity (internal link structures are in the code section). Finally, behavior is about how people react to your site (including Google staff, who are people too). Yes -- Google is watching, and how people react to your site affects your listings.


Stay informed. For more insights into the latest digital marketing opportunities and challenges, attend the iMedia Brand Summit, March 6-9. Request your invitation today.

There is no way of knowing how many of these factors really do matter, or if there are others. Personally, I think most are correct, and all of them are worth serious consideration. If you're in the SEO business, you might want to test how many of these are in your toolkit. Some of these factors are simple, such as having search terms in the tag, whereas others are really only the heading of an entire chapter of skills, such as having search terms in prominent locations in your copy. Space prevents going into detail on any factor, but you should be able to research anything that isn't self-explanatory. You are unlikely to agree with all of these, but hopefully there are a few tricks you haven't thought of. </P> <br /><P>One clear lesson emerges from this list, which has been compiled by people from all over the world in a variety of fields, not just SEO. The lesson is this: If your SEO people aren't talking to your coders or your writers (or better still, supervising them), you're in trouble.</P> <br /><P>Factors that improve search engine results:</P> <br /><P><STRONG>Code</STRONG></P> <br /><BLOCKQUOTE>1) Search terms in the <TITLE> tag<BR>2) Search terms in <B> or <STRONG><BR>3) Search term in anchor text in links to a page<BR>4) Search term in image names<BR>5) Search term in image ALTs<BR>6) Search terms the first or last words of the Title Tag<BR>7) Search terms in the page name URL (e.g. acme.co.uk/folder/searchterm.html)<BR>8) Use of hyphen ("-") or underscore ("_") in search terms in URL (for example, search-term.htm is better than searchterm.htm)<BR>9) Search terms in the page folder URL (e.g. acme.co.uk/search-term/page.html)<BR>10) Search terms in the first or last words in the H1 Tag <BR>11) Search terms in other <H> tags<BR>12) Search terms in the page's query parameters (e.g. acme.co.uk/page.html?searchterm)<BR>13) Search terms (and location) in the meta-description tag<BR>14) XML sitemap<BR>15) XML sitemap under 10k<BR>16) Accuracy of XML sitemap<BR>17) Sitemap folder geo-targeting<BR>18) Index/follow meta tags<BR>19) Robots.txt present<BR>20) URL length<BR>21) Title attribute of link<BR>22) W3C-compliant html coding<BR>23) Video header and descriptions<BR>24) Video sitemap<BR>25) Compression for size by eliminating white space, using shorthand notation, and combining multiple CSS files where appropriate. GZIP can be used<BR>26) Use CSS sprites to help consolidate decorative images<BR>27) No redirection to other URLS in the same server<BR>28) <NOSCRIPT> tags (even though I don't know anyone who doesn't have JavaScript enabled)<BR>29) Geo-meta tags if the business serves a targeted geographic area<BR>30) Relevance of <TITLE> tag to page content<BR>31) Relevance of <META DESCRIPTION> to page content<BR>32) Code-to-text ratio<BR>33) Canonical URL<BR>34) Directory depth<BR>35) Number of query-string parameters<BR>36) Link attributes -- like rel=nofollow<BR>37) Link structure<BR>38) Microformats<BR>39) Mobile accessibility<BR>40) Page size<BR>41) Page accessible<BR>42) Page internal popularity (how many internal links it has)<BR>43) ALT Image Meta Tags (this can be helpful for FLASH elements too)<BR>44) Age of prominent / 2nd level pages</BLOCKQUOTE> <br /><P><STRONG>Copy</STRONG></P> <br /><BLOCKQUOTE>45) The most important rule of all: plain old simple quality relevant content<BR>46) Keyword density<BR>47) Keyword proximity -- number of words between search terms (less is better)<BR>48) Keyword positions in page<BR>49) Keyword prominence (start/end of paragraphs or sentences)<BR>50) Words in page<BR>51) Page category (or theme)<BR>52) Relevance (to searched phrase)<BR>53) Synonyms to query terms<BR>54) Language<BR>55) Linear distribution of search terms<BR>56) Legality of content<BR>57) Frequency of updates<BR>58) Standard deviation of search terms in the population of pages containing search terms<BR>59) Semantic relevance (synonym for matching term)<BR>60) Rich snippets<BR>61) Rich snippet UGC rating<BR>62) Search term density through body copy (about 3-5 percent)<BR>63) Search terms in internal link anchor text on the page<BR>64) Search terms in external link anchor text on the page<BR>65) Search terms in the first 50-100 words in HTML on the page</BLOCKQUOTE><A href="/images/content"><IMG height=38 src="/images/content/bt-next-page.jpg" width=132 align=right></A> </section> <section data-pageid="202743" data-pagethumb="" data-pagetitle="Rules for beating Google at SEO (page 2 of 2)" class="additional-article clearfix"> <P><STRONG>Site</STRONG></P> <br /> <br /><BLOCKQUOTE>66) Length of contract for ownership of domain name<BR>67) Domain registration information hidden/anonymous<BR>68) Site top-level domain (geographical focus, e.g. .com versus co.uk)<BR>69) Site top-level domain (.com versus .info)<BR>70) Sub domain or root domain?<BR>71) Domain past records (how often it changed IP)<BR>72) Domain past owners (how often the owner was changed)<BR>73) Domain IP<BR>74) Domain external mentions (non-linked)<BR>75) Geo-targeting settings in Google Webmaster Tools<BR>76) Domain registration with Google Webmaster Tools<BR>77) Domain presence in Google News<BR>78) Domain presence in Google Blog Search<BR>79) Use of the domain in Google Analytics<BR>80) Server geographical location<BR>81) Server reliability/uptime<BR>82) PageRank of a page (the actual PageRank, not the toolbar PageRank)<BR>83) The PageRank of the entire domain<BR>84) The speed of the website<BR>85) Reputable hosting company<BR>86) Geo-located results<BR>87) Search terms in the root domain name (searchterm.com)<BR>88) An active Adsense campaign<BR>89) Domain age (older is better)<BR>90) The number of pages on the topic related to the search term<BR>91) Wikipedia listing?<BR>92) Listed in DMOZ?<BR>93) Number of pages within site (more is better)<BR>94) Website size (bigger is better)</BLOCKQUOTE> <br /> <br /><P><STRONG>Links</STRONG></P> <br /> <br /><BLOCKQUOTE>95) Page external popularity (how many external links it has relevant to other pages of this site)<BR>96) Quality of link partners<BR>97) Diversity of link partners<BR>98) Links from good directories<BR>99) Rate of new inbound links to your site<BR>100) Relevance of inbound links -- subject-specific relationship with target page<BR>101) Placement of back-links in page<BR>102) Quantity of back-links<BR>103) Quantity of linking root domains<BR>104) Quality of linking root domains<BR>105) Link distance from higher authority sites<BR>106) Outgoing followed links from back-linked pages<BR>107) Domain classification of linking domains<BR>108) Outbound links with keywords<BR>109) PageRank of outbound link targets</BLOCKQUOTE> <br /> <br /><P><STRONG>Behavior</STRONG></P> <br /> <br /><BLOCKQUOTE>110) SERP click-through rate. If your website is ranked No. 1 for "bike shoes" but 90 percent of the traffic goes to the website ranked No. 2, Google will notice and make an adjustment<BR>111) Search trend data<BR>112) Social graph fans (they like/follow you)<BR>113) Social graph fans earned impressions (they talk about you)<BR>114) Social graph fans earned impressions with links (talk about and cite your content)<BR>115) Secondary fan connection citations earned impressions<BR>116) Secondary fan connection citations earned impressions (retweets, likes of friends)<BR>117) Other citations (social media linking)<BR>118) Visits (personalization)<BR>119) Visits (scraped from Alexa)<BR>120) Number of SERP click-throughs<BR>121) Visitors' demographics<BR>122) Visitors' browsing habits (what other sites they tend to visit)<BR>123) Visiting trends and patterns (like sudden spikes in incoming traffic)<BR>124) User experience -- "human raters" -- a large number (thousands) of Google employees are there solely to check and manually tweak search results.</BLOCKQUOTE> <br /> <br /><P><STRONG>Factors that can reduce your search results:<BR></STRONG></P> <br /> <br /><P><STRONG>Code</STRONG></P> <br /><BLOCKQUOTE>125) Lack of designed 404 page<BR>126) Number of links a page is from homepage<BR>127) Server calls, images, JavaScript, database calls (affects speed of website)<BR>128) Badly done redirects<BR>129) Duplicate title/keywords <BR>130) Redirect through refresh meta tags<BR>131) Dynamic pages<BR>132) Links with "?" in them<BR>133) Use of frames<BR>134) Use of cookies<BR>135) Excessive cross linking <BR>136) Cloaking <BR>137) Excessive use of graphics <BR>138) JavaScript navigation (Googlebot can't run JavaScript)<BR>139) Comment spamming <BR>140) Use of display none within CSS<BR>141) Use of -9999px within CSS<BR>142) Use of absolute positioning<BR>143) Use of tables<BR>144) Use of the <blink>tag<BR>145) Slow site architecture. If your site build is in such a manner that the robots can't crawl it without losing too much time, some pages won't get indexed<BR>146) Deep site architecture. The further down a page is, the less chance it will get found. If it is found, it will be visited less often<BR>147) Duplicate tags on site<BR>148) Number of links on page (too many will affect adversely)<BR>149) Page file size/load time</BLOCKQUOTE> <br /><P><STRONG>Copy</STRONG></P> <br /><BLOCKQUOTE>150) Hidden content or font colors within 10 percent of background color RBG value<BR>151) Poison words<BR>152) Keyword stuffing<BR>153) Doorway pages<BR>154) Keyword saturation<BR>155) Use of words relating to porn<BR>156) Saying anything remotely negative about Google<BR>157) Duplicate content on site. Google is "understanding" about ecommerce sites that have duplicate content for multiple products -- it will pick one at random and dump the rest, but you won't be penalized</BLOCKQUOTE> <br /><P><STRONG>Site</STRONG></P> <br /><BLOCKQUOTE>158) Over-optimization. If you match what Google is looking for too well, Google will assume you did it just to get better listings and you'll be penalized. Google considers tuning your site for better listings unethical<BR>159) Linking between all the domains hosted on same IP<BR>160) Multiple redirects<BR>161) Multiple domains to the same website (different country variations are acceptable, but not multiple totally different domains, for example newcars.com, sportscars.com, and fastcars.com pointing at the same site)<BR>162) IP address (many are blacklisted for spamming)<BR>163) Whether the site has been previously de-indexed due to malpractice<BR>164) Domain IP neighbors (if they have a bad reputation)</BLOCKQUOTE> <br /><P><STRONG>Links</STRONG></P> <br /><BLOCKQUOTE>165) Participation in link schemes<BR>166) Link to a bad neighborhood<BR>167) Traffic buying <BR>168) Link buying<BR>169) Being linked to by a site Google dislikes (you'll be punished by association)</BLOCKQUOTE> <br /><P><STRONG>Behavior</STRONG></P> <br /><BLOCKQUOTE>170) Automatically playing audio or video<BR>171) Unsecured payment gateways<BR>172) Percentage of SERP click-throughs that return to SERP page in a short time (sort of bounce rate)<BR>173) Google staff finds your site doesn't match what is in the Google cache</BLOCKQUOTE> <br /><P><A href="http://www.imediaconnection.com/profiles/imedia_pc_overview.aspx?ID=3980"><EM>Brandt Dainow</EM></A><EM> is an independent web analyst with companies throughout the English-speaking world, and in the EU.</EM></P> <br /><P><EM>On Twitter? Follow iMedia Connection at </EM><A href="http://twitter.com/iMediaTweet" target=new><EM>@iMediaTweet</EM></A><EM>.</EM> </P> <br /><P><A href="/images/content"><IMG src="/images/content/bt-previous-page.jpg"></A></P> </section> <footer class="author-wrap"> <div class="author-info"> <img src="/profiles/images/profilepics/thumb2/3980.jpg?width=50&height=50&mode=crop" onerror="showAvatarPlaceHolder(this)" class="avatar"/> <a href="/get-connected/profile?id=3980" class="author-name">Brandt Dainow</a> <span class="author-title"></span> </div> <p> Brandt is an independent web analyst, researcher and academic.  As a web analyst, he specialises in building bespoke (or customised) web analytic reporting systems.  This can range from building a customised report format to creating an... <br/><br/> <a href="/get-connected/profile?id=3980" class="">View full biography</a> </p> </footer> <h2 class="category-heading"><span>Comments</span></h2> <div id="comment-holder" class="comments-wrap"> <p> <a href="#" class="login requires-login">Login</a> to leave comments. </p> <article class="comments"> <img onerror="showAvatarPlaceHolder(this);" alt="" class="avatar"/> <div> <h3>Commenter: manish baliga</h3> <p class="timestamp">2011, January 25</p> <p class="comment-text">Our old hotel website was doing really well seeing a high conversion rate of over 5% whihc is impressive for a independent hotel capturing 25% of bookings. Late Dec, 2010, we replaced it with a new website. We have hence seen a substantial decline in direct bookings. Any suggestions if we should have anticipated this and what should we be focusing on to curtial this for now.</p> </div> </article> <article class="comments"> <img onerror="showAvatarPlaceHolder(this);" alt="" class="avatar"/> <div> <h3>Commenter: Larry Truitt</h3> <p class="timestamp">2011, January 11</p> <p class="comment-text">Good info here. But what happened to "rules" 66 - 124? We have a 12,000+ product site at Clarcorp Industrial Sales. How can we "cozy up" to # 47? We have many products on a page. <br /><br />But I did learn quite a few new things. Thanks for a great article!!<br /><br />Larry<br />www.clarcorpindustrialsales.com</p> </div> </article> <article class="comments"> <img onerror="showAvatarPlaceHolder(this);" alt="" class="avatar"/> <div> <h3>Commenter: Tim Vickery</h3> <p class="timestamp">2011, January 11</p> <p class="comment-text">It is not Google that has to be beaten -- it is competition within the SERPs for any particular search term. Google is the playing field and the referee -- not the competition.<br /><br />The title of this article, again, positions within the wrong frame. Proper search optimization is NOT a gaming process where the search engine is beaten -- is it about building authority and engagement naturally.</p> </div> </article> <article class="comments"> <img onerror="showAvatarPlaceHolder(this);" alt="" class="avatar"/> <div> <h3>Commenter: Susan Rubinsky</h3> <p class="timestamp">2011, January 11</p> <p class="comment-text">Break Rule #1. Now. From a usability perspective, the more words there are in your page title, the less likely your page title will be clicked on by a user from a search results page.<br /><br />Every usability study I've read and/or conducted in the last two years bears this out. Most often a user scans the page then clicks on the shortest page title. I advise creating short, relevant page titles, not titles with "important" keyword shoehorned in. It may take longer to get to the top this way but once you're there, it will be more meaningful.</p> </div> </article> <article class="comments"> <img onerror="showAvatarPlaceHolder(this);" alt="" class="avatar"/> <div> <h3>Commenter: Issa Qandil</h3> <p class="timestamp">2011, January 11</p> <p class="comment-text">Is it me or this article is missing the page that talks about points 66 - 124?</p> </div> </article> <article class="comments"> <img onerror="showAvatarPlaceHolder(this);" alt="" class="avatar"/> <div> <h3>Commenter: Jeff Dougherty</h3> <p class="timestamp">2011, January 11</p> <p class="comment-text">This is great but is anyone else going from number 65 to 125? where are 66 through 124?</p> </div> </article> <article class="comments"> <img onerror="showAvatarPlaceHolder(this);" alt="" class="avatar"/> <div> <h3>Commenter: A K</h3> <p class="timestamp">2011, January 11</p> <p class="comment-text">Too bad you dont "beat" Google at SEO. You SEO for Google - and Bing. <br /><br />And you also fail to mention that even Google has a SEO best practice guide.</p> </div> </article> <article class="comments"> <img onerror="showAvatarPlaceHolder(this);" alt="" class="avatar"/> <div> <h3>Commenter: Frank Motola</h3> <p class="timestamp">2011, January 11</p> <p class="comment-text">This is a beautiful thing. For SEO practitioners we know most of it, for business people - they will scan the list and quickly decide that they better hire a SEO practitioner!</p> </div> </article> <article class="comments"> <img onerror="showAvatarPlaceHolder(this);" alt="" class="avatar"/> <div> <h3>Commenter: Michael Hubbard</h3> <p class="timestamp">2011, January 11</p> <p class="comment-text">Great recap - thanks! The irony to me is when I passed the page along to our designers for a quick read, the first thing I noticed was that you broke rule #7 already with a page name like http://www.imediaconnection.com/content/28301.asp :). Good recap none-the-less, thanks!</p> </div> </article> </div> <div class="moreOnThisTopic"> </div> </div><aside class="sidebar article-sidebar" data-equalizer-watch> <div class="sidebar-wrapper"> <h3 class="sidebar-heading">Upcoming Summits</h3> <article class="summits"> <section id="summits_event_1" class="summits-event"> <a href="/summits/2016/2016-september-brand-summit-how-to-evolve-with-todays-consumer/"> <img src="/media/11251139/2016-septbrand.jpg?crop=0,0.4516503216281767,0,0&cropmode=percentage&width=654&height=200&rnd=131159116690000000" alt="" class="summit-banner"/> </a> <p class="summits-event-type"> <a href="/summits/2016/2016-september-brand-summit-how-to-evolve-with-todays-consumer/">iMedia Brand Summit</a> </p> <time> Sep 11 - 14, 2016 <br/> Coronado, California </time> <header> <h3>How to Evolve with Today's Consumer</h3> </header> <a class="custom-button custom-button-green brand" href="/summits/2016/2016-september-brand-summit-how-to-evolve-with-todays-consumer/">LEARN MORE</a> </section> </article> <article class="summits"> <section id="summits_event_1" class="summits-event"> <a href="/summits/2016/2016-october-breakthrough-summit-the-future-of-content-publishing-media-buying/"> <img src="/media/11251141/2016-octbt.jpg?crop=0,0,0,0.4516503216281767&cropmode=percentage&width=654&height=200&rnd=131163429390000000" alt="" class="summit-banner"/> </a> <p class="summits-event-type"> <a href="/summits/2016/2016-october-breakthrough-summit-the-future-of-content-publishing-media-buying/">iMedia Breakthrough Summit</a> </p> <time> Oct 24 - 26, 2016 <br/> Santa Barbara, California </time> <header> <h3>The Future of Content, Publishing, & Media Buying</h3> </header> <a class="custom-button custom-button-green breakthrough" href="/summits/2016/2016-october-breakthrough-summit-the-future-of-content-publishing-media-buying/">LEARN MORE</a> </section> </article> <article class="summits"> <section id="summits_event_1" class="summits-event"> <a href="/summits/2016/2016-december-agency-summit-forging-partnerships-that-matter/"> <img src="/media/11251143/decagency2016-summitheader-split.jpg?crop=0,0.40182950191570882,0,0.049820819712467858&cropmode=percentage&width=654&height=200&rnd=131159114690000000" alt="" class="summit-banner"/> </a> <p class="summits-event-type"> <a href="/summits/2016/2016-december-agency-summit-forging-partnerships-that-matter/">iMedia Agency Summit</a> </p> <time> Dec 4 - 7, 2016 <br/> Scottsdale, Arizona </time> <header> <h3>Forging Partnerships that Matter</h3> </header> <a class="custom-button custom-button-green agency" href="/summits/2016/2016-december-agency-summit-forging-partnerships-that-matter/">LEARN MORE</a> </section> </article> <div id='div-gpt-ad-1434493808768-3' class="ad-unit ad-skyscraper"> <script type='text/javascript'> googletag.cmd.push(function () { googletag.display('div-gpt-ad-1434493808768-3'); }); </script> </div> <h3 class="sidebar-heading">Connect with Us</h3> <form class="widget form-subscribe" name="formSubscribe"> <label><input type="text" name="email" placeholder="Enter Email" /></label> <button type="submit" class="custom-button custom-button-red custom-button-rounded custom-button-large">SUBSCRIBE</button> </form> </div> </aside> </div> <div class="clearfix"></div> <div class="clearfix"></div> </div> </div> <footer id="footer"> <nav class="row" data-equalizer> <div class="small-6 medium-2 columns" data-equalizer-watch> <p class="footer-heading">Articles</p> <ul> <li> <a href="/topic/allArticles">Latest Articles</a> </li> <li> <a href="/audience/Brands">For Brands</a> </li> <li> <a href="/audience/Agencies">For Agencies</a> </li> </ul> </div> <div class="small-6 medium-2 columns" data-equalizer-watch> <p class="footer-heading">Summits</p> <ul> <li> <a href="/summits/learn-more">About Our Summits</a> </li> <li> <a href="/summits/past-summits">Past Summits</a> </li> </ul> </div> <div class="small-6 medium-2 columns" data-equalizer-watch> <p class="footer-heading">Videos</p> <ul> <li> <a href="/video/">Latest Videos</a> </li> <li> <a href="/video/industry-insider">Industry Insider</a> </li> <li> <a href="/video/summit-videos">Summit Videos</a> </li> <li> <a href="/why-imedia/">Experience iMedia</a> </li> </ul> </div> <div class="small-6 medium-2 columns" data-equalizer-watch> <p class="footer-heading">Get Connected</p> <ul> <li> <a href="/account/account-creation/">Become a Member</a> </li> <li> <a href="/get-connected/search/">Find a Member</a> </li> <li> <a href="/get-connected/job-connections/">Jobs</a> </li> <li> <a href="/get-connected/search/">Find a Company</a> </li> </ul> </div> <div class="small-6 medium-2 columns" data-equalizer-watch> <img src="/images/svgs/logo-mediaWhite.svg" alt="iMedia Connection" class="footer-logo new"/> <ul> <li> <a href="/about-us/">About Us</a> </li> <li> <a href="/contact/?cs=y">Contact Us</a> </li> <li> <a href="/contributor-guidelines/">Contributor Guidelines</a> </li> <li> <a href="/corporate-news/">Corporate News</a> </li> <li> <a href="/privacy-terms/">Privacy & Terms</a> </li> <li> <a href="/advertise-with-us/">Advertise with Us</a> </li> </ul> </div> </nav> <div id="footer_bottom"> <div class="row"> <div class="columns small-12 small-collapse"> <p>© Copyright 2016 iMedia Connection. All rights reserved.</p> </div> </div> </div> </footer> <script src="/bower_components/jquery/dist/jquery.min.js"></script> <script src="/bower_components/foundation/js/foundation.min.js"></script> <script src="/js/vendor/validate.min.js"></script> <script src="/js/app.js"></script> <script src="/js/FixedSidebar.js"></script> <script src="/js/top-navigation.js"></script> <script src="/js/hero-carousel.js"></script> <script src="/js/vendor/slick.min.js"></script> <script src="/js/jquery.form.js"></script> <script type="text/javascript"> var is_invalid_email = false; var is_pw_reset = false; var hasLinkedInUpdates = false; $(document).ready(function() { var $resetLink = $('.link-password'); var $resetModal = $('#forgotModal'); $('#login-form, #login-form-modal').ajaxForm({ success: function(data) { if (data.Success) { if (window.location.hash == data.RedirectUrl) { window.location.reload(); } else { window.location.replace(data.RedirectUrl); } } else { if (data.Error) { $('.login-invalid').hide(); $('.login-error').show(); } else { $('.login-invalid').show(); $('.login-error').hide(); } } }, error: function() { $('.login-invalid').hide(); $('.login-error').show(); } }); if (is_invalid_email) { $resetLink.trigger('click'); $resetModal.find('form').before('<p class="blurb error" style="clear:both;">The email you entered is not associated with a user.</p>'); } else if (is_pw_reset) { $resetLink.trigger('click'); $resetModal.find('form').replaceWith('<p class="blurb success" style="clear:both;">Please check your email to reset your password.</p>'); } }); </script> <script src="/js/vendor/jquery.scrollTo.min.js"></script> <script src="/js/vendor/jquery.localScroll.min.js"></script> <script src="/js/article.js"></script> <script src="/js/action-throttle.js"></script> <script src="/js/article-detail-sticky-nav.js"></script> <script> $(function() { //console.log('doc ready'); if (false) { $("[data-pcid='']").trigger('click'); } }); var paginationJSON = [{"id":202743,"title":"Rules for beating Google at SEO (page 2 of 2)","image":""}]; var currentPage = "http://www.imediaconnection.com/articles/ported-articles/red-dot-articles/2011/jan/rules-for-beating-google-at-seo/"; var commentValidator = new FormValidator('formComments', [ { name: 'comment', rules: 'required' } ], function(errors, event) { if (errors.length > 0) { for (var errCount = 0; errCount < errors.length; errCount++) { $('[name="' + errors[errCount].name + '"]').addClass('element-error').before('<label class="msg-error">You must enter a comment.</label>').parent().removeClass('form-success').addClass('form-error'); } } else { var a = $("input[name='userId']"); var articleId = $("#aId").val(); var userId = $("#uId").val(); var $comment = $("#comment"); var commentText = $comment.val(); var comment = { Id: 0, ArticleOrMediaId: articleId, PeopleConnectionId: userId, Comment: commentText, CreatedOn: "", Flagged: false, IsArticle: true }; if (ActionThrottle.isThrottled()) { event.preventDefault(); return; } $.ajax({ type: "POST", url: "/umbraco/api/commentapi/addComment", data: JSON.stringify(comment), dataType: "json", contentType: "application/json; charset=utf-8", success: function(ret) { $comment.before('<label class="blurb success">Your comment was successfully submitted.</label>'); $comment.siblings('.blurb.error').remove(); $comment.siblings('[type="submit"]').prop('disabled', true); location.reload(); }, error: function(er) { $comment.before('<label class="blurb error">An unknown error occurred. Please try again later.</label>'); //console.log(er.message); } }); $comment.removeClass('element-error').parent().addClass('form-success'); } event.preventDefault(); } ); var tagListClass = $('.article-header .tag-list'), tagListItems = $('.article-header .tag-list li'); if ($(tagListItems).length == 0) { $(tagListClass).addClass('hide'); } </script> <script src="/js/pagination.js"></script> <script> //increment page views $.ajax({ type: "GET", url: "/umbraco/surface/articlepageviews/increment", data: { id:179080 }, dataType: "json", contentType: "application/json; charset=utf-8", success: function(ret) {}, error: function(er) {} }); </script> <div class="modal-background"></div> <div class="modal-wrap"> <div id="loginModal"> <a href="#" class="link-close">Close</a> <div class="form-signin"> <h2>Sign in to People Connection</h2> <div class="login-invalid blurb" style="color: red; display: none;"> <span>Your login information is incorrect. Please try again.</span> </div> <div class="login-error blurb" style="color: red; display: none;"> <span>There was an error during login. Please try again.</span> </div> <form action="/umbraco/surface/account/pclogin" id="login-form-modal" class="form-login" name="formLogin" method="POST"> <label> <input id="email" name="email" type="text" placeholder="Email Address"/> </label> <label> <input id="password" name="password" type="password" placeholder="Password"/> </label> <button type="submit" class="custom-button custom-button-rounded custom-button-red custom-button-large">SIGN IN</button> </form> <a href="#" class="link-password">FORGOT PASSWORD?</a> </div> <div class="or-hr">or</div> <form action="/articles/ported-articles/red-dot-articles/2011/jan/rules-for-beating-google-at-seo/" enctype="multipart/form-data" method="post"> <input type="hidden" name="signup" value="false"/> <button type="submit" class="custom-button custom-button-rounded custom-button-ltblue custom-button-large linked-in return-url" data-return-url="http://www.imediaconnection.com/articles/ported-articles/red-dot-articles/2011/jan/rules-for-beating-google-at-seo/"> SIGN IN WITH LINKEDIN </button> <input name='ufprt' type='hidden' value='E2DC65866462A549EF2A9AC145142017A5B9391B0000A66848D02324B34DE413C87F0CAABBBEAA6D5FC7B3D51E514428AC181A04481D778122E63ABD811A12F6409062AC552F305EA4D92DFCAD86C933E59221C88A47A3D40BCBE299EE25402B02CF960406830BED6FA35EBE168C4A657B485B5B41C7E60567C1A516C3C44BEA78493FB38AFF6FEA7E825F01114F853F' /></form> <p class="align-right"> <a href="/account/account-creation/">Don't have an account? Create one.</a> </p> </div> <div id="interstitialAd" class="general-modal"> <a href="#" class="link-close">Close</a> <!-- /133134231/interstitial_640x480 --> <div id='div-gpt-ad-1456430415173-0' style='height:480px; width:640px;'> <script type='text/javascript'> googletag.cmd.push(function () { googletag.display('div-gpt-ad-1456430415173-0'); }); </script> </div> </div> <div id="signupModal"> <a href="#" class="link-close">Close</a> <div> <h2>Don't have an account?</h2> <form action="/articles/ported-articles/red-dot-articles/2011/jan/rules-for-beating-google-at-seo/" enctype="multipart/form-data" method="post"> <a href="/account/account-creation/" class="custom-button custom-button-rounded custom-button-default">CREATE AN ACCOUNT</a> <input type="hidden" name="signup" value="true"/> <button type="submit" class="custom-button custom-button-rounded custom-button-ltblue">SIGN UP WITH LINKEDIN</button> <input name='ufprt' type='hidden' value='D074911FF84215BBC234A129EF5EBDD905D8B32741DD01DCD2E74C0C077C73862852F1DC7C831246E0F81F71314837B17EDE144CAD7B5EB728BFCC31982D11790A70564EFA7E2B753F36DBB54DFC7AB6C7B7A513CF2ECC72C1A9E1226CD3A7D6FBA2D207B8F94FFDD2F473CC5F39D3AE154C4B60F339AF14219434E1E3F08A6C8740033C12A271DB2D04D28522FE5137' /></form> <p class="align-right"><a href="#" class="requires-login">Already have an account? Log in.</a></p> </div> </div> <div id="writeReviewModal"> <a href="#" class="link-close">Close</a> <div> <h2>Write a Review</h2> <form id="writeReviewForm"> <p class="blurb error"></p> <label><input id="review-title" type="text" name="title" placeholder="Review Title" /></label> <label><ul class="stars selectable"> <li></li> <li></li> <li></li> <li></li> <li></li> </ul> <input id="star-rating" type="hidden" name="rating" /></label> <label><textarea id="review-message" name="message" placeholder="Share your detailed experience here."></textarea></label> <button id="formSubmit" type="submit" class="custom-button custom-button-rounded custom-button-red custom-button-large">Submit</button> </form> </div> </div> <script src="/js/reviews.js"></script> <div id="forgotModal"> <a href="#" class="link-close">Close</a> <div> <h2>Forgot Password</h2> <form action="/articles/ported-articles/red-dot-articles/2011/jan/rules-for-beating-google-at-seo/" class="form-password" enctype="multipart/form-data" method="post"> <input name="email" id="forgot-email" type="text" placeholder="Email Address"/> <a href="#" class="link-cancel">Cancel</a> <button type="submit" class="custom-button custom-button-rounded custom-button-red custom-button-large">SUBMIT</button> <input name='ufprt' type='hidden' value='55B918913C2C0363598DF5E77211C71F05AD4B0725414957C7C5877A99F719588DA77633BDC4A4531E77C5F8C8035A34C1FD1F8A3FCB26B6C1DD72D0447A4024825B87F0144FAC1389601A877837C008FA9BB061093631F55960A77A0350A9B1A6569FB262A314A3124E182780193EF33453398041634EFC3D086C6114980E20B5BBC6B870A7ECFB4C3FEBEAC979411F' /></form> </div> </div> <div id="sessionTimeoutModal"> <a href="#" class="link-close">Close</a> <div> <h2>Your session is about to expire!</h2> <p id="timeout-text-holder">You will be logged out in <span id="timeout-text">60</span> seconds. Do you want to remain logged in?</p> <div class="button-holder"> <button id="session-timeout-yes" type="submit" class="custom-button custom-button-rounded custom-button-ltblue">YES</button> <button id="session-timeout-no" type="submit" class="custom-button custom-button-rounded custom-button-red">NO</button> </div> </div> </div> </div> <script> (function(i, s, o, g, r, a, m) { i['GoogleAnalyticsObject'] = r; i[r] = i[r] || function() { (i[r].q = i[r].q || []).push(arguments); }, i[r].l = 1 * new Date(); a = s.createElement(o), m = s.getElementsByTagName(o)[0]; a.async = 1; a.src = g; m.parentNode.insertBefore(a, m); })(window, document, 'script', '//www.google-analytics.com/analytics.js', 'ga'); ga('create', 'UA-4077114-8', 'auto'); ga('send', 'pageview'); </script> </body> </html>