The discussion revolves around SEO issues on the Reflex domain, identified using SemRush. Two main issues were raised:
27 pages (user profile pages) were found blocked from crawling. However, Firepup650 pointed out that this is intentional, as per Discourse’s settings, and provided relevant links to support this claim.
Issues with the carousel on the About page, specifically a required value for the position field and mutually exclusive item and url fields for a nested ListItem. Simon suggested that SemRush might be incorrectly analyzing the page, as Discourse doesn’t use the Carousel schema type. He also provided a link to a 2022 post on the topic and tested the page on schema.org, finding no errors or warnings.
RJG analyzed the code and identified three issues:
A misplaced url property in the ListItem element
A missing position property, which Google requires for carousel items
A broken Schema.org validator that failed to catch the first issue.
These findings suggest that the initial SemRush results might be incorrect, and further investigation is needed to resolve the SEO issues.
issues in the carousel on page reflex-dev · Discussions · GitHub the position: A value for the position field is required for a nested ListItem and item or url: The item and url fields are mutually exclusive for a nested ListItem. Please remove one of them.
Okay this makes a lot of sense about not crawling the profile pages.
For issues in the carousel on page About - Reflex the position: A value for the position field is required for a nested ListItem and item or url: The item and url fields are mutually exclusive for a nested ListItem. Please remove one of them.
I think there’s something wrong with the way SemRush is analyzing the page. Unless something has changed, Discourse doesn’t use the Carousel schema type. There’s a post from 2022 about the issue: SemRush Structured Data - #4 by Falco