EPiGoogleSiteMaps

by: Jacob Khan

This is the new and improved EPiGoogleSitemaps for CMS 5. This module makes it easy for search engines to index your site. A sitemap is generated showing what pages the site contains and when they last were changed.

EPiGoogleSitemaps lets you specify wether a page (or a branch of pages in the page tree) in your EPiServer-site shall be enabled for the Sitemaps. It also lets you set values for Change Frequence and Priority (as specified by the Sitemaps protocol).

When the search robot asks for the SiteMap Index file, it will be dynamically generated along with one (or possibly several) SiteMap xml files created in the directory /EPiGoogleSiteMaps/SiteMaps.
 
The module also supports Enterprise configurations with multiple sites in one EPiServer. Then a sitemap is created for each site.
 
Search engines such as yahoo, google and ask need to be notified of where the sitemap is located on the server. This is done either by manually going to search engines webpage and registering the site or by stating the path in the robots.txt.
 
Here is the .zip which easily can be installed using the Manager.
 
*********** Updated ********************
 
This is the new version with fix to 260 issue
 
This is the new version compiled for R2
 
Regards Jacob
 
 

17 June 2008


Comments

  1. Hi Jacob Nice work, now I can replace our implementation with this as it is much better then what we threw together when we realised that the old one would not work with CMS 5. One question I do have is around if there is any error logging, I have installed the code, added the dynamic property and set the 'Enabled' flag on the dynamic properties at the start page level, however, the sitemap file appears to be empty still, even when I delete the file and regenerate it still stays empty, any ideas would be great.
  2. Hi Jacob. Further to my last comment I have solved the issue. The problem was that my dynamic property was called 'EPiSitemaps' as per the instructions on the admin control, however, this needs to be 'EPiGoogleSitemaps' for the code to work.
  3. Ok. Great
  4. Cool, I will try it out! By the way, your profile picture is some 2 mb (took some time to load the page on my phone :-D)
  5. Is this only limited to people using WindowsRoleProviders? Im using SQLroleprovider and all i get when i try to access the admin page is a login page.
  6. Installed this but I am experience the same problem as Nick Urry but in my case the dynamic property is named EPiGoogleSitemaps so thats not the problem. Any tips on what to check to get it to work?
  7. Give me your email Tobias and I will look into it
  8. I uploaded a new version of the EPiGoogleSitemaps with some bug fixes such as the security error and changes for enterprise edition
  9. Hey Jacob where can i find the new version the one attached to this blog still seems to be the original. Thanks
  10. Hi Minesh. The one out now is the latest one with the new changes for enterprise and with the security updates. I did it on June 30th so everything is up to date. Let me know if u have any issues with it. Regards Jacob
  11. Hi, cool that you ported the module to CMS 5. After the install we are experiencing the same issue as in some of the other comments where the sitemap file is empty. We have named the dynamic prop 'EPiGoogleSitemaps' as Nick pointed out but it still will not work... Do you have any tips?? Chers
  12. Did you enable all the pages that you want indexed with the dynamic content. Click the three boxes (green, yellow, blue) in the upper left corner of the edit mode and enable the feature. Set the pages that change the most to a higher value. Did that work
  13. I have been running EPiGoogleSitemaps on a site for about a month without any problems, but not suddenly i get an ArgumentException in EPiGoogleSitemaps.code.SiteMapIndex.OnInit. It reads: "The name can be no more than 260 characters in length" Any ideas? / David
  14. I also get the same error as David. Any ideas?
  15. It could be a number of things, please email me more information jacob (at) episerver (dot) com . What I noticed was that it mainly happend when someone started reading the file and then stoppen. Since the file is generated it does not allow multiple robots to read it at the same time. try removing the sitemap file and then putting it back up. Should solve it for now.
  16. Hi Jacob, I have just installed your componet on EPiServer CMS SP 2 (assembly version 5.1.422.256). I'm reciving error: Could not load file or assembly 'EPiServer.Configuration, Version=5.1.422.4, Culture=neutral, PublicKeyToken=8fe83dea738b45b7' or one of its dependencies. The located assembly's manifest definition does not match the assembly reference. (Exception from HRESULT: 0x80131040) From methode: EPiGoogleSitemaps.code.SiteMapIndex.OnInit Is that possible to rebuild module with less restrictivity to assembly version? Or could you give a clue how to use that component with CMS newer than 5.1.422.4 (without adding to GAC addtional references) ?
  17. Hello Jacob, I installed the module in our CMS 5 sp3 site and I have a question. We are using local domains mapped to languages on our site. This because we don't want the URL to contain the language. Our problem is that it seems that the module uses siteUrl to generate sitemap-urls, i.e http://www.myweb.com/sv/mypage instead of: http://www.myweb.se/mypage. Is there anyway to get around this so I can use this with multiple languages and domains??
  18. How do I install this component using the manager that comes with EPiServer CMS 5 ver:5.2?
  19. I've only installed the epi4 version of epigooglesitemap and back then we used an epi4 file that we imported to get the admin window. The package that you link is lacking importfiles. Is it just to copy over the content? (as its the same as epi4)or am I missing something?
  20. Hi, have there been a solution to the "260 charachters"-problem (Comment 13)? I'm experiencing the very same error.
  21. Hi Jacob, In regard to the 260 character issue this is also happening for us. My theory is as follows; if the page is hit multiple times within a short period the cache key parameter is appended to recursively and eventually exceeds 260 chars. A solution would be to update line 4 of the OnInit method to read "string cacheKey = Regex.Replace(base.Request.Url.ToString(), "E...", "") + CacheKey - and then use the local variable "cacheKey" throughout the onInit method. - Hope this helps - N
  22. Hi Jacob. It seems that its not possible to install the component with the new Installation Manager that comes with CMS 5 R2. Is it possible to install it manually? I also understand that the module requires some dynamic properties. Are there other dependencies like these?
  23. So I realize that I need to update the module with a compilation for r2 and put in the new changes. So I just did. Thanks for all the comments. For R2 you can not install it with the manager but you need to do it manually, copy in the files. At the end of the blog you can find the new updates. I will also try to get this made open source for everyone to play with.
  24. Any progress on making the code open source as the fact that it begins its traversal of the site via the PageStartId is causing us issues and I'd like to change the code so it will work for us . . . Either that or any chance you could email me the source so I can modify a local version ?! Many thanks, Chris
  25. I now added it as open source on epicode, it is also in my blog, happy coding
  26. Hi Jacob. It seems that this module includes pages that has expired in the sitemap-file. Has this been fixed in any version? Regards Andreas
  27. Check out the Open Source version on EPiCode. It shouldnt include expired pages u r right. I will add it as a bug. It is a simple fix on coderesort
Post a comment    
User verification Image for user verification  
Jacob Khan

About me

I am the rookie Researcher at EPiServer based in Stockholm. I started working in the Research department in May 2008.
I also blog on world.episerver.com
See my profile card on world

 


Syndications


Archive


Tag cloud

EPiTrace logger