Blog Be Nimble

RapidWeaver SEO Basics

Many of our customers have been asking about SEO for RapidWeaver, and whether our products work fine for SEO purposes. As such I decided to make a video explaining three basic SEO techniques for RapidWeaver users, to help you understand what makes an impact on your site when you want higher search results rankings.

If you have any questions or comments, be sure to enter them below.

Update: Download the Keynote presentation slides as a PDF:
English - German* - French (courtesy of Philippe)

*This translation is via Google Translate. If you're a native speaker and it sounds weird, that's why! ;-)

I've got cruftless links. Now what?

This is the (long awaited) follow-up article to my post about how cruftless links are better for SEO. If you haven't read that post be sure to do so first, as this article will make more sense at that point.

So now that we've established how awesome cruftless links are, many of you have already switched over to them; and the next question I always get is how to make sure the old links are redirected to the new. This is something we need to address for a number of reasons:

  • Chances are that search engines have your old links saved to their index, and this allows us to make sure they see and index the new ones. It's possible your ranking on SERPs (search engine results page) could drop if this isn't done.
  • It makes the transition painless for your website visitors. Nobody wants to visit your site and see a 404 Not Found error.

For most people the best way to tackle this problem is by using a .htaccess file and specifying something called "rewrite rules". If your web hosting uses Windows and IIS, then you can do (essentially) the same thing with what's called a web.config file, but I won't be covering that in this article.

Before we get started you'll need to make sure that your hosting provider meets the requirements for what we're about to do. I have a list of compatible hosting companies that we know support this, but the list isn't exhaustive. Even if your hosting company isn't listed that doesn't mean this won't work, only that you'll need to confirm the following:

  • Your hosting uses the Apache web server (most companies do)
  • The mod_rewrite module for Apache is installed and enabled (again, most companies already do this)

Depending on the configuration your hosting company uses, you may need to enable the .htaccess file in your hosting control center. Also, be sure that you have FTP access to your hosting account, as you'll need to edit/upload the .htaccess file directly to your hosting account, in the same folder where your homepage is located. If you already have a .htaccess file in that location, don't delete or replace it. Instead, open it in a good text editor, and add your code to the end of that file. With all that said, let's get started.

Let's say your old link looked like this:

http://bigfootsupersite.com/photos.html

And you've updated that to a shiny, new cruftless link, like so:

http://bigfootsupersite.com/photos

Obviously the goal is to make sure that anyone who tries to visit the old link is redirected to the new link. We can do this in the .htaccess file using this bit of code:

RewriteEngine On
Redirect 301 /photos.html http://bigfootsupersite.com/photos

Looks fairly simple, and I'm guessing you can read this and make out what is going on. Let's walk through the code line by line.

The RewriteEngine On line does exactly what you might expect. It turns on the engine you'll be using to redirect visitors to the page you want them to see. We need to make sure this is turned on first, before starting our redirect code.

The next line is where the magic happens. The Redirect command is quite simple - you're telling the server where your website is located that you want to redirect something. But we also need to provide some additional information - more specifically, what type of redirect this is, the old page that people will be trying to access, and the new page where you want them to be redirected.

The 301 number is specific type of redirect, called a "permanent" redirect. This tells web browsers and the search engines crawling your site the old page has been permanently replaced with the new one. By using this "permanent" redirect, search engines will automatically update their indexes to use the new cruftless link.

After that we have the /photos.html portion. This is the old page that people (and search engines) will be trying to access.

Finally we have the http://bigfootsupersite.com/photos portion. You'll recognize this as our new cruftless link, and it's where people who try to access the old page will be redirected.

If you have more than one page to redirect, you can add as many Redirect lines as you need. Here is an extended example, based on the same code above:

RewriteEngine On
Redirect 301 /photos.html http://bigfootsupersite.com/photos
Redirect 301 /reported_sitings.html http://bigfootsupersite.com/sitings
Redirect 301 /contact/contact.php http://bigfootsupersite.com/contact

Note that we only need to use the RewriteEngine On line once. The last line also shows how to target sub-pages in your site. As a reminder, the .htaccess file should be placed in the same location as your homepage. If there's already a .htaccess in that location, just open the file and add your code to the end.

Of course, be sure to test our your redirects when your done, to make sure they are working correctly.

EDIT: As requested in the comments, here is how to redirect any 404 Not Found errors to the homepage. This will work anytime a visitor tries to access a page or file that can't be found on your website, and can be done in the .htaccess file like so:

ErrorDocument 404 http://bigfootsupersite.com

This is a good fallback method if you don't remember all the old URLs and want to make sure visitors can still navigate your site even if they try to access a page that doesn't exists anymore.

Before wrapping up this article I want to make sure we cover the importance of a good text editor. You don't want to be using a program like TextEdit or Notepad, as they oftentimes will add extra data to the file, or impose a certain file extension (like, .txt, .rtf, etc.). Instead, be sure you are using a text editor designed to work with code. This is easy to do, and free! For Mac users there is the free TextWrangler from Bare Bones Software. For Windows users I'd suggest the free Notepad++ (not to be confused with the regular Notepad app included with Windows by default).

Another note specifically for Mac users. By default Mac OS X hides files that start with a period, such as .htaccess files. As such I recommend that you create the file on your hosting account directly. You can then right-click on the .htaccess file in your FTP program, and from the contextual menu select to edit the file in your text editor of choice. The nice thing about this approach is that your FTP client should automatically upload the file when you save your changes. Easy!

Hope this helps you make the transition to cruftless links. Make sure to leave your feedback in the comments below.

Why Cruftless Links Are Better for SEO

A number of customers have been contacting us recently with concerns about changing the file names for their RapidWeaver pages. The reason for this is because we have two different plugins (Mobilize and RapidSearch Pro) that require PHP, and as such, require a .php file extension to be used.

These customers are worried that by changing the file extension for their pages, that they'll lose their hard-earned ranking in search results. In this post I'm going to explain why cruftless links are better for SEO, and how by using them you'll never have to worry about the effect changing file names can have on your search ranking.

The typical RW user starts making sites and often decides to change the default file name for their pages to be more descriptive. This is a good thing! The problem is that it can also cause problems down the road. Let's look at an example with a mythical RW friend we'll call "John".

John creates a new RW page in his project and decides to use the Stacks page type for a cool image gallery. He thinks it would be a good idea to change the file name to photos.html, as that looks easier to understand than the default of index.html. He makes the site, gets great rankings whenever someone searches for bigfoot photos, and is a Happy Man.

As his site grows in popularity he decides to improve things by adding some new stacks, and one of these stacks requires PHP. John's worried that by changing the file name from photos.html to photos.php, he'll lose the great ranking he has when someone looks for bigfoot photos. Here is where cruftless links have a huge advantage.

But first, you may be wondering what a "cruftless link" is to begin with. Sounds kind of nasty, like a moldy pie or something. In fact, it's pretty awesome.

In this particular situation "cruft" refers to any extra stuff that is part of a link we don't need. And as it turns out, if your page's file name is called index.html or index.php or index.something then web browsers don't need the file name at all. They'll just load page file names that are "index" automatically for you. That's why you can visit a site like Apple just by typing in "apple.com" - there's no need to also enter the file name. Here are some examples of cruftless links:

apple.com/iphone

nimblehost.com/blog

realmacsoftware.com/rapidweaver

Note how none of the links above have a file name as part of the link. Now here are some examples of links with cruft, and then with the cruft removed:

bigfootsupersite.com/photos.html *eww, crufty link*

bigfootsupersite.com/photos *awesome! no cruft!*

nimblehost.com/store/themes/atlas.html *blegh, more cruft*

nimblehost.com/store/themes/atlas*whew, better!*

So now you're probably wondering how to make cruftless links in RapidWeaver. Fortunately, it's really easy:

  1. First, you'll need to open the Page Inspector and access the General tab.
  2. Change the folder to be descriptive and match the content of the page. In our bigfoot example above, the folder would be photos. ( Edit: this was previously Step 3, but as Markus pointed out in the comments below, a better workflow is to change the folder first, before changing the file name.)
  3. Change the filename to index.html (or index.php or whatever file extension you need, just be sure the file name is "index").
  4. Repeat Steps 2 and 3 above for each page in your site.
  5. Open the Site Setup dialog box (select "Show Site Setup" from the RW "Site" menu).
  6. Select the Advanced tab, and check the "Enable cruftless links" checkbox.
  7. Re-publish your site.

That's it!

Update: As Steve in the comments mentioned, links may appear to not work if you export your site to a local folder and preview in a browser. This is not a problem, however, as the links will work when you've uploaded the pages to your website.

Once you've done this, you won't have to worry about changing the file name of your pages and how that might affect your SEO rankings. The reason for this is that search engines will store the cruftless link to your site in their search index.

The final question we get asked at this point is, "But what if my site is already listed with search engines using a blasted crufty link? What to do?" There's a solution to that as well, that won't affect your search rankings, and will make sure site visitors see the correct page every time...and we'll cover that in our next post!

Show more posts