This site uses cookies. By continuing to browse the site, you agree to our use of cookies. Find out more about cookies.
Skip to main content
Metadecidim's official logo
  • English Triar la llengua Elegir el idioma Choose language
    • Català
    • Castellano
Sign Up Sign In
  • Home
  • Processes
  • Assemblies
  • Initiatives
  • Consultations
  • Conferences
  • Help

Propose new functionalities for Decidim software

#DecidimRoadmap Designing Decidim together

Phase 1 of 1
Open 2019-01-01 - 2030-12-31
Process phases Submit a proposal
  • The process
  • Debates
  • Propose new features
  • News
chevron-left Back to list

Add .xml sitemap config flag to /system

Avatar: Virgile Deville Virgile Deville
15/02/2021 12:24  
Finished

Is your feature request related to a problem? A clear and concise description of what the problem is.

Client get frustrated that we don't have a simple way to generate an .xml sitemap for Decidim websites. It's recommended for SEO.

Describe the solution you'd like

On a multi-tenant Decidim instance I may not want to generate a sitemap for all orgs as some maybe used for private purposes (ex: "Force users to authenticate before access organization")

As a system admin, I'd like to have a config flag in /system in the org edit form to choose to generate an .xml sitemap for the org I'm editing.

We could use an existing gem like https://www.ruby-toolbox.com/projects/sitemap_generator to generate the site map.

The sitemap generator would need to exclude :

  • /admin and /system links
  • Private spaces links

The sitemap needs to be be

  • frequently updated → a cron job can run periodically
  • and sent to search engines → We need to decide if we leave the responsibility to the admin of the org or if we try to ease up the process a little bit for them. We could use this gem https://www.ruby-toolbox.com/projects/pingr so that the pinging to search engine is automated

Describe alternatives you've considered

At this stage I'm wondering :

  • if this feature could be of interest to the rest of the community. If not we can always make a module;
  • what's the best way to generate a xml sitemap for a Decidim site;

Additional context

Add any other context or screenshots about the feature request here.

Does this issue could impact on users private data?

No

Funded by

Possible funding by Lausanne

  • Filter results for category: Installation and configuration Installation and configuration

The development of this proposal has finished

  • Reviewed by @product and accepted to be developed as a module
  • It is funded by European Commission
  • Developed by Tremend
  • Available at https://git.fpfis.eu/future-of-europe/digit-cofe-libraries/digit-cofe-sitemap

List of Endorsements

Avatar: Tremend Tremend verified-badge
Avatar: Antti Hukkanen Antti Hukkanen
Avatar: Alexandru Emil Lupu Alexandru Emil Lupu
Avatar: Nadja von Ballmoos Nadja von Ballmoos
Avatar: Òscar Pérez Òscar Pérez
and 2 more people (see more) (see less)
Endorsements count5
Add .xml sitemap config flag to /system Comments 10

Reference: MDC-PROP-2021-02-16237
Version number 2 (of 2) see other versions
Check fingerprint

Fingerprint

The piece of text below is a shortened, hashed representation of this content. It's useful to ensure the content hasn't been tampered with, as a single modification would result in a totally different value.

Value: 56361bb5e220fc8a7fc04c9cf8630346ac87f63493d0e27572d9db1476c3a339

Source: {"body":{"en":"<p><strong>Is your feature request related to a problem? A clear and concise description of what the problem is.</strong></p><p>Client get frustrated that we don't have a simple way to generate an .xml sitemap for Decidim websites. It's recommended for SEO.</p><p><strong>Describe the solution you'd like</strong></p><p>On a multi-tenant Decidim instance I may not want to generate a sitemap for all orgs as some maybe used for private purposes (ex: \"Force users to authenticate before access organization\")</p><p>As a system admin, I'd like to have a config flag in /system in the org edit form to choose to generate an .xml sitemap for the org I'm editing.</p><p>We could use an existing gem like <a href=\"https://www.ruby-toolbox.com/projects/sitemap_generator\" target=\"_blank\">https://www.ruby-toolbox.com/projects/sitemap_generator</a> to generate the site map.</p><p>The sitemap generator would need to exclude :</p><ul><li>/admin and /system links</li><li>Private spaces links</li></ul><p>The sitemap needs to be be</p><ul><li>frequently updated → a cron job can run periodically</li><li>and sent to search engines → We need to decide if we leave the responsibility to the admin of the org or if we try to ease up the process a little bit for them. We could use this gem <a href=\"https://www.ruby-toolbox.com/projects/pingr\" target=\"_blank\">https://www.ruby-toolbox.com/projects/pingr</a> so that the pinging to search engine is automated</li></ul><p><strong>Describe alternatives you've considered</strong></p><p>At this stage I'm wondering :</p><ul><li>if this feature could be of interest to the rest of the community. If not we can always make a module;</li><li>what's the best way to generate a xml sitemap for a Decidim site;</li></ul><p><strong>Additional context</strong></p><p>Add any other context or screenshots about the feature request here.</p><p><strong>Does this issue could impact on users private data?</strong></p><p>No</p><p><strong>Funded by</strong></p><p>Possible funding by Lausanne</p>"},"title":{"en":"Add .xml sitemap config flag to /system"}}

This fingerprint is calculated using a SHA256 hashing algorithm. In order to replicate it yourself, you can use an MD5 calculator online and copy-paste the source data.

Share:

link-intact Share link

Share link:

Please paste this code in your page:

<script src="https://meta.decidim.org/processes/roadmap/f/122/proposals/16237/embed.js"></script>
<noscript><iframe src="https://meta.decidim.org/processes/roadmap/f/122/proposals/16237/embed.html" frameborder="0" scrolling="vertical"></iframe></noscript>

Report inappropriate content

Is this content inappropriate?

Reason

10 comments

Order by:
  • Older
    • Best rated
    • Recent
    • Older
    • Most discussed
Avatar: Antti Hukkanen Antti Hukkanen
17/02/2021 14:14
  • Get link Get link
In favor  

I would see this useful feature to have in Decidim.

Regarding the questions, right now I believe there is no simple way to generate the sitemap automatically as Decidim does not centrally store anywhere the records that can be referred to in public URLs. Probably each component and each participatory space would have to implement the sitemap link generation specifically to that component/space + all static pages, so it would require changes in all components. You could potentially parse through all the URLs available in Decidim but you wouldn't cover individual resources (e.g. all proposal IDs) doing it like that.

Also instances that do not allow public access can have publicly available pages which could be included in the Sitemap. Of course, most of the resources should not be added to the sitemap.xml on those sites.

Conversation with Armand
Avatar: Armand Armand
17/02/2021 19:44
  • Get link Get link

Hi, please a naive implementation here:
https://github.com/armandfardeau/sitemap_generator
(Tests are needed, no TDD on this one, it was a late coding night)

Demo can be found:
https://dcd-develop.osp.dev/sitemap.xml

Avatar: Armand Armand
17/02/2021 21:35
  • Get link Get link

Obviously this is not the final version of the tool, I think it is better to use a module approach with a register system like for metrics or components. I would be happy to help on the implementation if possible.

Avatar: Armand Armand
17/02/2021 21:36
  • Get link Get link

Also, the controller is hideous, it was just a quick bypass.

Avatar: Andrés Andrés verified-badge
05/03/2021 09:31
  • Get link Get link

I would love to hear more feedback about other developers and installations. Do anyone have issues regarding SEO/search crawlers or is that it'd be nice to have?
An user story that starts with "Client get frustrated..." makes me wonder why it's useful... this should be "as an user I get frustrated that I can't find some pages in search engines like Google" but I didn't hear that one yet.

From Wikipedia article [0]

Some areas of the website are not available through the browsable interface
Webmasters use rich Ajax, Silverlight, or Flash content that is not normally processed by search engines.
The site is very large and there is a chance for the web crawlers to overlook some of the new or recently updated content
When websites have a huge number of pages that are isolated or not well linked together, or
When a website has few external links

I'd said that this are not our case most of the times (some installations may be "very large" tough).

We could use this gem https://www.ruby-toolbox.com/projects/pingr so that the pinging to search engine is automated

I'd prefer an alternative that has more traction/community. Also I don't like that only Google and Bing are supported. Instead of sending ourselves the the sitemap to search engines (aka "push") I'd prefer to have it configured in the public/robots.txt file and that search engines "pull" from us where to find the sitemap.

SEO wise I think it'd be much more interesting to have unique HTML titles in all the public pages at least. For instance Initiatives [1] or Consultations [2] index list have the default one; this is just a quick search, if you look for it methodically you'll find lots of this missing titles and this have SEO, usability and accessibility implications.

[0] https://en.wikipedia.org/wiki/Sitemaps
[1] https://meta.decidim.org/initiatives
[2] https://meta.decidim.org/consultations

Avatar: Carol Romero Carol Romero verified-badge
10/06/2021 13:39
  • Get link Get link

Hey @virgile_deville, do you have any feedback from @andres comment? (As you can see we are finally doing a bit of spring cleaning 😜)

Conversation with Alexandru Emil Lupu
Avatar: Alexandru Emil Lupu Alexandru Emil Lupu
10/06/2021 16:39
  • Get link Get link

I am actually working on having that as a stand alone module. Currently it only lists all the resources, without any participatory space pages.

I i am thinking more and more to create it as a “seo” module, since we have some requests to improve the meta tags and other items.

Avatar: Virgile Deville Virgile Deville
25/06/2021 12:31
  • Get link Get link

Hey @alecslupu
Could you share a link to your module ? What do you mean by "without any participatory space pages" ? What pages do you list ?
I'll be working of making a meta proposal to share the SEO improvements made by the EU experts.
Maybe we can make PR to the core if it's accepted.

Avatar: Blocked user Blocked user
25/06/2021 12:50
  • Get link Get link

Agréable

Avatar: Alexandru Emil Lupu Alexandru Emil Lupu
19/11/2021 09:02
  • Get link Get link

Here is the module : https://git.fpfis.eu/future-of-europe/digit-cofe-libraries/digit-cofe-sitemap

Thanks @Armand-OSP for the great inspiration source

Add your comment

Sign in with your account or sign up to add your comment.

Loading comments ...

  • Terms and conditions of use
  • About the community
  • Download Open Data files
  • Metadecidim at Twitter Twitter
  • Metadecidim at Instagram Instagram
  • Metadecidim at YouTube YouTube
  • Metadecidim at GitHub GitHub
Creative Commons License Website made with free software.
Decidim Logo

Confirm

OK Cancel

Please sign in

decidim Sign in with Decidim
Or

Sign up

Forgot your password?