We use and recommend DotNetNuke for website content management, but how well does DotNetNuke support Search Engine Optimization? is DotNetNuke Search Engine Optimization even possible?
The basics
We will look at three search optimization factors which are often said to be difficult to do in content management systems like DotNetNuke:
~ Optimized urls
~ Optimized html tags
~ Optimized internal links
Make your urls search engine friendly
DotNetNuke's default url scheme used to be "/Default.aspx?tabid=136", which is neither search engine friendly or user friendly. It was clear that DotNetNuke needed to introduce friendly urls, which were added in DotNetNuke version 3.
Using DotNetNuke's "friendly url" option, the urls are instead generated as "/TabId/136/Default.aspx", which is still not very friendly at all, despite the name! At least this url scheme removes the large number of url parameters, so it does improve the search engine friendliness.
Fortunately, there are several third party url rewriting modules available at very low prices. With a third party url rewriter, we can easily generate urls like "/search-engine-optimization.aspx", which is both search engine friendly and user friendly. This is a good step towards DotNetNuke search engine optimization - if you dont already have a third party url rewriter, go get one - href exchanger from www.inventua.com is a good choice.
Use the right html tags
Search engines look for the tags H1, H2, H3 to indicate what your page is really all about. So your main keyword for a page should be in a H1 tag.
In DotNetNuke , this is easy to do, go to the settings of the main module on your page, and change the module title from title to <h1>title</h1>. Note that the title should also match the keyword you are targeting.
However, since h1 tags usually display with really big text, you should also set the css style of H1 to be the same as the Head style (Head is the default style applied to module titles). Just copy the .Head style from skin.css and call the new style h1, like this:
.Head { font-family: Arial; font-size: 14px; }
h1 { font-family: Arial; font-size: 14px; } note that there is no "." in front of h1.
This is also very easy to implement, so there is no excuse not to do it immediately and improve your DotNetNuke search engine optimization.
Use good internal links
You do not have any control over how others link to your site (just be happy that they have linked to you!), but you can control how you link to pages within your own website. Good linking has these characteristics:
~ anchor text that matches your keyword
~ Consistent links
~ Use of named anchors where appropriate
Anchor text is the text shown for the link, and should match your keyword, eg Search Engine Optimization. When the anchor text matches the keywords, the search engine is going to view your page as being more relevant for that keyword. Setting the anchor text correctly is easy in DotNetNuke, and is a built in part of the text editor . Using your targeted keyword as the anchor text will improve your DotNetNuke search engine optimization.
Links should be consistent, and all internal links to a given page need to use exactly the same url. For example www.mywebsite.com and www.mywebsite.com/default.aspx are two different urls even though they point to the same page. A search engine will however think that these are two different physical pages, with exactly duplicated content - and lower the pages ranking.
There is no built in functionality in DotNetNuke to help make your links more consistent, so instead check your skin to make sure hard coded links are consistent, and check any text/html modules for inconsistent links. It's worth the effort - make all urls that point to a page exactly the same, to improve your DotNetNuke search engine optimization .
Finally, we can also use named anchors to improve our keyword targeting. named anchors allow us to link to the middle of a page using <a name="keyword">. When links are in the form <a href="/keyword.aspx#keyword">, then keyword relevancy is improved. to add named anchors in DotNetNuke, use the text/html module and switch to the html view.
There are many factors that can improve DotNetNuke search engine optimization - try the three factors given above to get started on the road to higher rankings.
// this blog post has also been published on www.codeproject.com //