![]() |
Web Development »
ASP.NET »
General
Intermediate
DotNetNuke Search Engine OptimizationBy Jay KayA starter guide to DotNetNuke Search Engine Optimization |
Windows, .NET, ASP.NET, Visual Studio, WebForms, Dev, Design
|
|
Advanced Search Add to IE Search |
|
|
|
||||||||||||||||
Content Management Systems like DotNetNuke have a reputation for being difficult to optimize for search engine keywords and phrases. This article will show that with a little thought, it is possible to implement Search Engine Optimization on DotNetNuke websites. There are three things that are often quoted as being difficult to achieve in a Content Management System:
Some CSS will be used in this article to demonstrate how to use Search Engine Optimization and still retain your website's existing look and feel. This CSS can be inserted into your skin's CSS file, which is usually found in /Portals/_default/YourSkinName/skin.css
www.mywebsite.com/Default.aspx?tabid=137 This is not a search engine friendly url, or even a user friendly url. DotNetNuke does have a friendly urls feature, so let us turn it on and see what happens: www.mywebsite.com/tabid/137/Default.aspx This is still not a search engine friendly url. So we will need to look further ahead. The DotNetNuke framework itself does not provide a built-in method for generating the urls we need, so we need to take a look at third party modules. The module we will look at is Inventua.com's HrefExchanger. With this module we can add a setting to our web.config that specifies how to rewrite urls in a search engine friendly format.
<hrefExchanger extension=".aspx" w3c-output="transitional"
check-language= "false" replace-spaces-with="-" />
The key setting here is to use replace-spaces-with="-". A search engine friendly url needs a spacer between words, so that the search engine can tell where one word starts and another ends. A search engine cannot identify redwidgets.aspx as two words, but it can identify red-widgets as two words. This is a very important distinction! So, by using the hrefexchanger module we can generate the url:www.mywebsite.com/red-widgets.aspx We have proved our first point - that search engine friendly urls are possible in DotNetNuke. This url is also very user friendly.
.Head class details into the h1 details so that your css will now look like:
.Head { font-family: Tahoma, Arial, Helvetica;
font-size: 18px; font-weight: normal; color: #333333; }
h1 { font-family: Tahoma, Arial, Helvetica;
font-size: 18px; font-weight: normal; color: #333333; }
Now we can use a h1 tag on our page. Just choose the page's main module and edit it's title to add the h1 tag in front of and after the title. Choose only one module per page to have the h1 tag. You can optionally add the h2 tag to the titles of other modules - if they are relevant to your keywords. Add h3 tags to subheaders inside your content, again, only if they are relevant to your keywords. Problem solved, and point two proved - we can use the correct html tags that are required by search engines: H1, H2 and H3
If we link internally to our own pages, and especially if we link internally to the middle of a page using a url with a #anchor, the search engine will view our page as being more relevant. The link to: www.mywebsite.com/red-widgets.aspx#red-widgets will definitely be relevant when doing a search for "red widgets". The problem is that many Content Management Systems including DotNetNuke do not have easy tools for creating named anchors. However DotNetNuke's text editor does have a html view, and by switching to this when editing content we can easily add named anchors to our content.
<a name="red-widgets">Red Widgets</a>
Once this named anchor has been created, we can now link to it from another page, and our relevancy for the search term "red widgets" is improved. Point three is also proved - we can create internal links to our own pages using named anchors.
We have seen that although there are arguments against using a Content Management System like DotNetNuke for websites that need to rank highly in search engines, these arguments can be disproved. The technical search engine optimization techniques demonstrated in this article are just a small part of Search Engine Optimization, but we have shown that you can get underway with minimal coding or difficulty.
This article submission came about after writing a short blog post which I wanted to expand upon and fully explain the ideas and techniques behind. The original blog post "DotNetNuke Search Engine Optimization" can be seen at my website www.bestwebsites.co.nz
| You must Sign In to use this message board. | |||||||||||||||||||||||||||||||||||||||||||
|
|||||||||||||||||||||||||||||||||||||||||||
|
|||||||||||||||||||||||||||||||||||||||||||
|
|||||||||||||||||||||||||||||||||||||||||||
|
|||||||||||||||||||||||||||||||||||||||||||
General
News
Question
Answer
Joke
Rant
Admin
|
PermaLink |
Privacy |
Terms of Use
Last Updated: 3 Apr 2007 Editor: Sean Ewington |
Copyright 2007 by Jay Kay Everything else Copyright © CodeProject, 1999-2009 Web22 | Advertise on the Code Project |