SEO Module Reference
| Field | Value |
|---|---|
| Audience | public |
| Area | sg-module |
| Pillar | SG-Modules |
| Updated | 2026-05-27 |
What is this for?
Overview
The SEO module controls how SGEN generates and exposes metadata for search engines and social platforms.
It covers four surfaces: the XML sitemap, per-page and global meta tags, Open Graph and Twitter Card output, and structured data (JSON-LD) per content type.
The module does not require a plugin.
Every field is managed from the admin interface.
This page is a field-level reference.
For each surface the tables below state what the field is, what it controls, and where it outputs.
Scope
What the SEO module covers
- Sitemap — automatic generation of an XML sitemap covering published pages, posts, and custom post types.
- Meta tags —
,,, andper page.
- Open Graph + Twitter Card —
og:title,og:description,og:image,og:type,twitter:card,twitter:title,twitter:description,twitter:image.
- Structured data (JSON-LD) — schema markup output per content type (Organization, WebSite, Article, BreadcrumbList, Product, FAQPage).
of the relevant pages.What the SEO module does NOT cover
- Analytics tracking — that is the Tracking & Consent module.
- Redirect rules for crawl management — that is the Redirects module.
- Site speed or Core Web Vitals optimization — those are platform-level (Server-First Speed is architectural, not configurable).
- Ad conversion tags — those are Tracking & Consent categories.
Where to find it
Navigate to SG-Modules > SEO in the admin sidebar.
The SEO panel opens with four tabs: Sitemap, Meta & Canonical, Social, and Structured Data.
Per-page overrides are available inside the page editor under the SEO accordion, which appears below the content area on every page and post.
Fields
Sitemap fields
| Field | Location | What it controls |
|---|---|---|
| Sitemap enabled | Sitemap tab → toggle | Turns XML sitemap generation on or off. When off, the sitemap URL returns 404. |
| Content types included | Sitemap tab → Content types | Checkboxes for Pages, Posts, and any registered custom content types. Unchecked types are excluded from the sitemap. |
| Taxonomies included | Sitemap tab → Taxonomies | Checkboxes for Categories, Tags, and custom taxonomies. Controls whether taxonomy archive URLs are included. |
| Include images | Sitemap tab → Images | When on, the sitemap includes nodes linking to images attached to each entry. |
| Priority (default) | Sitemap tab → Priority | Numeric value 0.0-1.0. Applied to all auto-generated entries unless a per-page override is set. |
| Change frequency (default) | Sitemap tab → Change frequency | always / hourly / daily / weekly / monthly / yearly / never. Signal to crawlers about update cadence. |
| Manual sitemap entries | Sitemap tab → Manual entries | List of URL + priority + change frequency. Added to the sitemap alongside auto-generated entries. |
| Sitemap URL | Read-only display | The live sitemap URL for this site, formatted as https://. |
## Example: sitemap configuration statesitemap_enabled: truecontent_types: [pages, posts, products]taxonomies: [categories]include_images: truepriority_default: 0.6change_frequency_default: weeklymanual_entries:- url: https://example.com/special-landingpriority: 0.9change_frequency: monthlyMeta tag fields
| Field | Location | What it controls | Output tag | |
|---|---|---|---|---|
| Site title | Meta & Canonical tab → Global defaults → Site title | Default title suffix appended to page titles when no per-page title override is set. | | |
| Title separator | Meta & Canonical tab → Global defaults → Separator | Character between page title and site title (e.g. · | —). | |
| Meta description (global) | Meta & Canonical tab → Global defaults → Description | Fallback meta description when no per-page description is set. 155-character recommended limit displayed in-field. | | |
| Canonical URL mode | Meta & Canonical tab → Canonical | auto generates the canonical from the current URL. manual lets you specify a canonical per page. | | |
| Robots — index | Meta & Canonical tab → Robots defaults → Index | Global default for whether pages are indexed. Per-page override available. | | |
| Robots — follow | Meta & Canonical tab → Robots defaults → Follow | Global default for whether links on pages are followed. Per-page override available. | | |
| Robots — noarchive | Meta & Canonical tab → Robots defaults → No archive | Instructs search engines not to cache the page. Per-page override available. | | |
| Per-page title override | Page editor → SEO accordion → Title | Replaces the auto-generated title for this page only. | | |
| Per-page description override | Page editor → SEO accordion → Description | Replaces the fallback meta description for this page only. | | |
| Per-page robots override | Page editor → SEO accordion → Robots | Overrides global robots setting for this page only. Dropdown: Index/Noindex, Follow/Nofollow. | | |
| Per-page canonical override | Page editor → SEO accordion → Canonical URL | Sets a specific canonical URL for this page. Leave blank to use auto mode. | |
Open Graph and Twitter Card fields
| Field | Location | What it controls | Output tag |
|---|---|---|---|
| OG site name | Social tab → Open Graph → Site name | The og:site_name value applied to all pages. | |
| OG title (fallback) | Social tab → Open Graph → Default title | Used when no per-page OG title is set. Defaults to the page if left blank. | |
| OG description (fallback) | Social tab → Open Graph → Default description | Fallback OG description. Defaults to meta description if blank. | |
| OG image (fallback) | Social tab → Open Graph → Default image | Image used for social shares when no per-page image is set. Recommended: 1200×630 px. | |
| OG type | Social tab → Open Graph → Type | website for most pages, article for posts. SGEN auto-sets this per content type. | |
| Twitter card type | Social tab → Twitter Card → Card type | summary or summary_large_image. Controls the card display format on Twitter / X. | |
| Twitter site handle | Social tab → Twitter Card → Site handle | The @handle of the Twitter / X account for this site. | |
| Per-page OG title | Page editor → SEO accordion → Social → OG title | Overrides OG title for this page only. | |
| Per-page OG description | Page editor → SEO accordion → Social → OG description | Overrides OG description for this page only. | |
| Per-page OG image | Page editor → SEO accordion → Social → OG image | Overrides OG image for this page only. Upload or select from media library. | |
Structured data fields
| Schema type | Pages it applies to | Fields it outputs | Toggle location |
|---|---|---|---|
| Organization | All pages (sitewide) | name, url, logo, sameAs (social profile URLs) | Structured Data tab → Organization |
| WebSite | All pages (sitewide) | name, url, potentialAction (sitelinks search box, if enabled) | Structured Data tab → WebSite |
| Article | Blog posts and news posts | headline, datePublished, dateModified, author, image | Structured Data tab → Article → Enable |
| BreadcrumbList | All pages with a navigable hierarchy | Auto-generated from page tree / category hierarchy | Structured Data tab → Breadcrumbs → Enable |
| Product | Product pages (Ecommerce module) | name, description, image, sku, offers (price, currency, availability) | Structured Data tab → Product → Enable |
| FAQPage | Any page using the FAQ block | mainEntity items derived from FAQ block content | Structured Data tab → FAQ → Enable |
// Example: Organization JSON-LD output{"@context": "https://schema.org","@type": "Organization","name": "Your Site Name","url": "https://yoursite.com","logo": "https://yoursite.com/media/logo.png","sameAs": ["https://instagram.com/yoursite","https://twitter.com/yoursite"]}When to use this
When to use this
Use the SEO module whenever you need to control how the site appears in search results or on social platforms.
Sitemap management applies when you add a new content type and need it indexed, when you need to exclude a section of the site from crawling, or when you want to add a non-CMS URL (such as a separate landing page) to the sitemap for completeness.
Meta tag management applies when the auto-generated title or description for a high-traffic page does not match the target search intent.
Set a per-page override in the page editor's SEO accordion rather than changing the global default.
Open Graph applies when content is shared on LinkedIn, Facebook, or Slack and the preview card needs to show a specific image and copy rather than the fallback.
Per-page OG image overrides are the most common use.
Structured data applies when you want rich results in Google Search — FAQ dropdowns, breadcrumb trails, product price snippets.
Toggle on the relevant schema types and confirm the required fields are populated.
Configuration
Configuration
See subsections below for each configuration task.
Setting global defaults
- Open SG-Modules > SEO from the admin sidebar.
- Select the Meta & Canonical tab.
- Set Site title to the brand name used as the title suffix across all pages.
- Choose a separator character.
- Enter a Meta description (global) — this is the fallback when no per-page description is set.
- Set Canonical URL mode to
autounless the site has specific cross-domain canonical requirements. - Set Robots defaults to
index, followfor a public site. - Save.
Adding a per-page SEO override
- Open the page in the page editor.
- Scroll to the SEO accordion below the content area and expand it.
- Enter a Title override (60 characters or fewer recommended).
- Enter a Description override (155 characters or fewer recommended).
- Upload or select an OG image if the social share preview needs a specific visual.
- If applicable, enter a Per-page canonical URL — used when this page duplicates content on another URL and the canonical should point elsewhere.
- Leave Robots at global unless this page requires
noindex(e.g. a thank-you page or duplicate content URL). - Save the page.
Configuring the sitemap
- Open SG-Modules > SEO > Sitemap tab.
- Confirm Sitemap enabled is on.
- Check the content types that should appear in the sitemap.
- Uncheck any content type that should be excluded (e.g. internal drafts archive or staging content type).
- Set the Priority (default) — 0.6 is a reasonable starting point for most content.
- Set the Change frequency (default) — weekly is appropriate for regularly updated sites; monthly suits mostly static pages.
- Toggle Include images on if the site has image-heavy content where image search visibility matters.
- Add manual entries for any URLs not managed by the CMS that need to be discoverable.
- Copy the Sitemap URL and submit it to Google Search Console and Bing Webmaster Tools.
- Save.
Enabling structured data
- Open SG-Modules > SEO > Structured Data tab.
- Fill in the Organization fields: name, URL, logo, and any social profile URLs.
- Toggle on Article if the site publishes blog posts.
- Toggle on Breadcrumbs if the site has a multi-level page hierarchy that should surface in search results.
- Toggle on Product if the Ecommerce module is active and product schema is needed.
- Save.
Examples
Examples
Example 1 — A product launch page needs a custom social share image.
The marketing team creates a 1200×630 launch graphic.
They open the launch page in the editor, expand the SEO accordion, and upload the graphic to the OG image field.
They also write a custom OG title and description that differ from the page's standard meta description.
When the URL is shared on LinkedIn, the custom card renders.
The organic meta title and description on the page are unchanged — only the social preview is customised.
Example 2 — Removing a category archive from the sitemap.
The site has a "Legacy" category that archives old content.
The team opens SG-Modules > SEO > Sitemap, unchecks Categories from the Taxonomies list (or uses per-taxonomy scoping to exclude only the Legacy category if available), and saves.
The category archive URLs no longer appear in the sitemap submitted to search engines.
Existing pages within the Legacy category remain published — only the category archive URL is excluded from the sitemap.
Example 3 — Enabling FAQ rich results.
The FAQ page uses the SGEN FAQ block with ten question-answer pairs.
The team opens Structured Data tab, enables FAQPage, and saves.
SGEN injects a FAQPage JSON-LD block into the page .
The team validates the output in Google's Rich Results Test.
Example 4 — Setting a canonical on a duplicate landing page.
A paid-search landing page duplicates content from the main product page.
The team opens the landing page editor, expands the SEO accordion, switches Canonical URL mode to manual, and enters the URL of the canonical product page.
Search engines attribute ranking signals to the product page, not the duplicate.
Edge cases
Edge cases
Sitemap not updating after publishing a new page.
The sitemap regenerates on publish.
If the URL does not appear, confirm the page is published (not draft) and that its content type is checked in the Sitemap settings.
Cache layers on the CDN may delay the updated sitemap being served — purge the sitemap URL from the CDN cache if needed.
Robots meta showing noindex on a public page.
Check the per-page robots override first — it takes precedence over the global setting.
If no per-page override is set, check the global robots default in Meta & Canonical tab.
A common cause: the page was built on a staging environment with noindex set globally, and the setting was not changed after launch.
OG image not updating after replacing the image in the media library.
Social platforms cache OG data aggressively.
Use the platform's URL inspection tool (e.g. Facebook Sharing Debugger, LinkedIn Post Inspector) to force a re-scrape of the URL.
The image in SGEN is correct once you save the page — the platform cache is the delay.
Structured data validation errors in Google Search Console.
The most common cause is a missing required field.
For Article schema: confirm the post has a published date, an author name, and a featured image.
For Product schema: confirm the product has a price and availability status set in the Ecommerce module.
Canonical URL conflicts between two pages both claiming the same canonical.
SGEN does not validate that two pages claim the same canonical URL.
If two pages set identical manual canonicals, search engines resolve the conflict using their own signals.
Audit canonical assignments when merging or consolidating pages.
Per-page title override character count.
SGEN does not enforce a hard character limit on title overrides — it displays a character count indicator.
Titles over 60 characters are likely to be truncated in search results.
The indicator turns yellow above 55 characters and red above 65 characters.
Related features
Related
- Redirects module — use redirects alongside sitemap changes when you remove or rename a URL. A removed URL without a redirect generates 404 signals that harm crawl health.
- Tracking & Consent module — analytics and ad scripts are gated by consent categories. SEO structured data is not gated by consent (it is server-rendered, not script-injected).
- Ecommerce module — Product schema fields are sourced from the Ecommerce module's product fields. SEO and Ecommerce need to both be configured for product rich results.
- Page Builder — per-page SEO overrides are accessible from within the page editor, whether you use SG-Builder or the standard editor.
Related reading
| Topic |
|---|
| Redirects Module Reference |
| Tracking & Consent Module Reference |
| Ecommerce Module Reference |
