Git Product home page Git Product logo

sitecore.sharedsource.dynamicsitemap's Introduction

Sitecore DynamicSitemap

Sitecore sitemap module that tries to be as much flexible and configurable as possible.

It has two main assumptions:

  • Flexible configuration

    Gives end user as many as possible configuration options. It is easier to edit Sitecore items than edit and deploy config files.

  • Extensibility

    Code functionality should be extensible and overridable. It should be easy to extend or override functionality, without decompiling and copy-pasting a lot of code.

Module was based on the original Sitemap XML module

New features:

  • Configurations for sites controlled from Content Editor
  • Defining < changefreq > and < priority > tags for templates and specified items
  • Language fallback for configuration items
  • Overridable method ProcessItems() for specifing own low-level logic
  • Generating sitemap index file

Original Sitemap XML features

  • Multisite and multilanguage support
  • Automatically updated robots.txt file
  • Physical XML sitemaps files generation
  • Automatic sitemap submit on publish

Installation:

  • Install zip package using Sitecore Package Installer

Configuration:

  • Dynamic Sitemap XML provides Sitecore.SharedSource.DynamicSitemap.config configuration file installed in /App_Config/Include directory.

Setting that can be specified there:

  • sitemapConfigurationOutputFolder - folder where will be generated sitemap xml files
  • refreshRobotsFile (true or false) - indicates that robots.txt file will be updated with references to sitemap xml files
  • xmlnsTpl - sitemap module schema used for the XML sitemap
  • database - the database from which to pull items for generating the sitemap
  • productionEnvironment - (true or false) determines whether the sitemap should be submitted to the search engines or not

sitecore.sharedsource.dynamicsitemap's People

Contributors

reokzk avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar

sitecore.sharedsource.dynamicsitemap's Issues

Publishing error

Hello,

after entering all params in content editor

  1. included templates
  2. excluded items
  3. excluded paths
  4. Root item
  5. Sitemap filename
  6. Frequency and priority

i was trying out to regenerate the sitemap when i got this error screenshot below when publishing item

image

Wrong Sitemap-File-URLs

Hi,

I tried to use this nice module in an Sitecore 8.2 project.
But I figured out, that if a site is defined with a virtualPath (in sitedefinition) the SitemapFile-URL for the certain sitemap in sitemapindex is wrong.
Example:
<site name="Website_Germany" virtualFolder="/germany" physicalFolder="/germany" rootPath="/sitecore/content/Website Germany" startItem="/Home" ... language="de" scheme = "http" />

Result:
<?xml version="1.0" encoding="utf-8"?> <sitemapindex xmlns="http://www.sitemaps.org/schemas/sitemap/0.9"> <sitemap> <loc>http://website/germany/sitemaps/sitemap-website_germany-de.xml</loc> <lastmod>2017-06-07T04:35:29+02:00</lastmod> </sitemap> </sitemapindex>
This results in an 404-Error because a staticfile is requested and there is no germany-folder.

An good approach is maybe
to check if the site has any hostname
-> then use the hostname to build the URL
else
-> use the main-website configured in the configuration item if it has no virtual path or hostname or the first one which has no virtualpath

Option to disable module

It would be nice to have some kind of option (checkbox perhaps?) for disable the module with ease.

Select root content item

Is there a way to select the root item to start generating the sitemap from?
ie: /sitecore/content/home/mystartingpoint ?

Thanks!

Sitemap.xml is not generated on root folder

I changed the output file path to use the root folder, so I left the value as blank. I set the sitemap file name as sitemap.xml. with this configuration, the sitemap is not being generated correctly.

If I changed the sitemap file name for anything else, it works perfectly, so Im wondering if Im missing something in my configuration or is there any bug in the code?

SitemapSubmitterService is not closing WebResponse objects

First of all this is a great project and helped me alot! There are a few places in the SitemapSubmitterService which use WebResponse. They are not getting closed which leads to connection leakage. Let me know if you accept PRs and I can fix.

Publish without selected languages

In the configuration item of the Sitemap if i deselect all languages, then the publish will throw errors as sitemap can't be generated. Publish is working, but the errors are a throw off for users.

Issue while generating sitemap index over https

Hi,
I'm having an issue with the index file a Sitecore 8.2 project.
The url is prefixed with http:// as you can see below.

<sitemapindex xmlns="http://www.sitemaps.org/schemas/sitemap/0.9">
<sitemap>
<loc>
http://https://mysite:443//sitemaps/sitemap-website-en.xml
</loc>
<lastmod>2017-07-28T06:30:52-03:00</lastmod>
</sitemap>
<sitemap>
<loc>
http://https://mysite:443//sitemaps/sitemap-website-es.xml
</loc>
<lastmod>2017-07-28T06:30:52-03:00</lastmod>
</sitemap>
</sitemapindex>

The issue is generated by the following piece of code on SitemapSiteConfiguration.cs line 169

url = !url.StartsWith("http://") 
                    ? "http://" + url 
                    : url;

Thanks,
Alejandra

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.