Given its flexible nature, with tweaks, premade or custom made extensions, I'm looking for some feedback on what I am doing, and considering doing, with it.
First, I'm using URL rewriting for articles, so instead of articles called:
/w/index.php?title=My_title it would look like /wiki/My_title
Archive versions, or system editing pages still look like /w/index.php?title=My_title&version=x&action=edit...
I don't believe this as having inherent SEO benefits, but I view it as looking nicer in the search results (might have more click troughs), and possibly easier for other sites to create links to (making it look like it doesn't have a bunch of session data, and to make it easier to recognize normal articles, rather than "behind the scenes" pages, possibly concentrating back links to the actual articles).
I don't have any concerns with this, but, for URL rewriting, I need to create a virtual directory. It's standard for /wiki/, but I could use anything else, possibly a keyword, like /widget/. I kind of like the idea of having wiki in the url, because I know I search by "keyword wiki" all the time for authoritative articles, and I imagine others do too. I'm also thinking having /widget/ would make it look kind of spammy, and would be less intuitive to my users that this is a wiki that they can help build and edit.
Next, in my robots.txt file, I'm blocking the installation directory, /w/, my search page, /wiki/Special:Search, and my random link page, /wiki/Special:Random
I'm blocking my installation directory to eliminate lots of duplicate pages, and the random page because it gives random content. I don't think I want the search page to be listed in results.
The thing is, I have rel="canonical" links on all pages, so I'm thinking I might be hurting myself by blocking this if people link to the ugly links, /w/index.php?title=My_title (including archived versions of pages), although I definitely don't want those to show up in the search results. Also, I'm interested in blocking more content, say system messages, /wiki/MediaWiki:, or all "administrative pages" /wiki/Special:
I'm placing a lot of emphasis on server optimization. I'm using a "dedicated server" on Rackspace Cloud Server. While I'm doing this so I can easily scale up or down my server based on demand, one major benefit is that I have a basic Linux installation and I can completely customize the environment however I want. I'm using nginx, apc, gzip compression, and other software and settings to make my site as lean and as fast as possible. I'm also using the asynchronous version of Google's Analytics tracking code. Right now I'm the only one using the site and I'm getting good speeds even though my server only as 256MB of RAM. I'll keep track of page generation times, and when I have more users, as these times get within a threshold, I'll scale up the server.
While primarily I'm doing this for the user's experience, I understand that a server and website's speed are ranking factors.
I'm using 301 redirects. Out of the box, when creating article redirects from one to another, MediaWiki uses 302 redirects. Azure widget =302=> Blue widget. I'm having a custom extension made to use 301 redirects instead. Also, my site is available under http:// and https://. I had made an extension that logged out users (and search engines) get the http content, while logged in users get the https content, the login page is always https, and if someone tries to access content using the wrong protocol, they get 301'ed to the correct one. (If someone creates a link on their site to an https:// article, then the search engines will be 301'ed to the http:// version).
I'm doing this to eliminate duplicate content.
Outbound links use a rel="nofollow" attribute, unless they are to white-listed domains.
This prevents me from having the search engines see me linking to bad neighborhoods by less then savory users, while associating myself with better neighborhoods.
These are things I'm considering doing:
Titles, keywords and descriptions
There are premade SEO extensions out there that allow you to have set individual article's title tag to be customized, different from "Article name – Site name", and to be able to set article specific meta descriptions and meta keywords by all editing users.
I plan on avoiding these extensions. I don't see any value at all in specifying meta keywords (am I right?), but I could see some value in maybe a custom title tag (I could see this valuable only on the homepage), and meta descriptions. I'm thinking about having a custom extension created that would allow trusted users (administrators, maybe another group of individuals) a special field to enter in a custom title or description for each article. If none are specified, then the default title is used. (There is no default description). Would this be a valuable tool, and is there anything else I should add to this? While I'm at it, should I add the ability to specify keywords, is there any value in this?
I'm considering using a sitemap generator and linking to the sitemap in the robots.txt. Is there any value in this? I plan on having pretty good internal linking, including a directory and a rotating feature on the homepage, so I'm not too concerned on the search engines not being able to find deep pages. Given the dynamic nature of a wiki, I don't see any value specifying any relative priorities or frequencies to any given pages.
Site Specific SEO Review
When I have a good head start of the site's foundation done, I plan on purchasing a professional SEO review of the site, to see what site specific (as opposed to platform specific) things I could benefit from. Good idea?
I'd also like to hire a professional copywriter to write copy on the high profile pages, such as the main page, one with experience in SEO. While I want to do this primarily for the user's experience, to set the tone and mood for the site, there could also be SEO benefits too. Having a copywriter could also write press releases when the site has news worthy information to send out, helping with back links, as well as having rights to edit article's titles or descriptions (as mentioned above).
I plan on using a flagging extension that would allow certain users (administrators) to flag certain versions of a page as stable. This would show as the default version of the page, and not show users' edits until a later version is flagged. Articles with no flags would show the latest version. That way users (and the search engines) see more professional versions of content, that is still editable by my community.
I purchased my domain a little over a year ago, but have only started using it for this project now. I like the domain very much, and I think it is very brandable. Typically I register my domains for 1 year periods, with auto-renewal enabled. However, I believe search engines look at the expiration date, and I'm wondering if I would benefit registering my domain name so it expires in ten years from now. (Max domain registration with my company is ten years).
I know it's a long post, but I'm really interested in what everyone thinks, and if there are other ideas they would recommend. I plan on a long term website, and building a site brand.
<edit>Added domain registration block</edit>
Edited by JeremyH, 05 December 2010 - 05:32 AM.