Skip to main content
Product details are displayed in English. Translations coming soon.
SEO Control – Exclude Pages from Sitemap — A build-to-order Odoo module that gives you precise control over which website pag — 1/1مثالی پیش منظر

A build-to-order Odoo module that gives you precise control over which website pages,

products, and blog posts enter your XML sitemap — with per-record exclusion, robots directives, and canonical hints.

ECOSIRE scopes, builds, installs, and supports it for your instance.

SEO Control – Exclude Pages from Sitemap کیا ہے؟

A build-to-order Odoo module that gives you precise control over which website pages, products, and blog posts enter your XML sitemap — with per-record exclusion, robots directives, and canonical hints. ECOSIRE scopes, builds, installs, and supports it for your instance. Built to order by ECOSIRE for Odoo 17, 18, 19 — indicative price from $999.00 USD; request a quote for a scoped proposal.

اہم خصوصیات

Inheriting SEO-visibility mixin adds `x_exclude_from_sitemap`, `x_robots_directive`, and `x_canonical_override` fields to any published model without duplicating logic
Override of `Website._enumerate_pages` and the `/sitemap.xml` controller so excluded records are filtered from the emitted XML while the page still renders for direct visitors
Per-record `<meta name="robots">` injection via QWeb `<head>` hook (default `noindex,follow`, selectable per record) to keep sitemap and on-page signals consistent
Optional `rel="canonical"` override field to consolidate duplicate or parameterized URLs onto a preferred canonical
Form-view checkbox plus directive selector on `website.page`, `product.template`, `blog.post`, and `slide.channel` out of the box
Batch `ir.actions.server` "Exclude from sitemap" action for multi-record list selections
Rule-based automated action (`ir.actions.server` + `base.automation`) to auto-exclude records matching patterns — draft stages, specific `website_id`, product variants, archived tags
Per-`website_id` evaluation so a URL can be indexed on one storefront and hidden on another in multi-website deployments
`ir.model.access.csv` grants plus record rules restricting visibility changes to an SEO/marketing security group
Audit trail model logging user, record, field change, and timestamp for every visibility edit
`res.config.settings` panel for global default directive and a one-click sitemap regeneration action
Stored computed fields with `@api.depends` so exclusion state is queryable and reportable, not just a runtime flag
XML-RPC/JSON-RPC exposed so external tooling can toggle exclusion or read current sitemap state programmatically
Compatible with Odoo 17.0/18.0/19.0 on Community or Enterprise, with `__manifest__.py` dependency pinning kept minimal

آرڈر پر تیار، مکمل طور پر آپ کے لیے

خود سیٹ اپ کی ضرورت نہیں — ایک کام کرنے والی ایپ جو ECOSIRE بناتا، انسٹال اور سپورٹ کرتا ہے۔

  1. 1

    آپ آرڈر دیتے ہیں

    ایک بار کی تعمیر کی قیمت سے آغاز کریں۔ آغاز پر ہم آپ کے ساتھ مل کر دائرہ کار طے کرتے ہیں۔

  2. 2

    ہم بناتے اور انسٹال کرتے ہیں

    ECOSIRE اسے آپ کے Odoo پر بناتا، ترتیب دیتا اور انسٹال کرتا ہے۔

  3. 3

    لائیو + معاونت

    آپ تقریباً ایک کاروباری ہفتے میں لائیو ہو جاتے ہیں، گو لائیو کے بعد دو ہفتوں کی معاونت کے ساتھ۔ ہمارے فراہم کردہ کوڈ کی خرابیاں مفت درست کی جاتی ہیں۔

تکنیکی تفصیلات

Odoo ہم آہنگی
Odoo 17, Odoo 18, Odoo 19
ایڈیشنز
Enterprise اور Community
لائسنس
لائسنس کی تصدیق درکار ہے
Python کی ضرورت
Python 3.10+
ڈیٹابیس
PostgreSQL 12+

اس مصنوع کے بارے میں

Odoo's website builder auto-publishes almost everything into the /sitemap.xml feed the moment a record goes live — thank-you pages, filtered eCommerce variants, staging drafts, tag archives, internal knowledge pages, duplicate parameterized URLs. For a growing catalog this quietly floods search engines with low-value and near-duplicate URLs, dilutes crawl budget, and buries the pages you actually want ranking. Odoo core only exposes a coarse website_indexed boolean on a page and offers no per-record UI to keep a URL live for humans while excluding it from the sitemap and search index. Teams end up hand-editing ir.ui.view records or bolting on external robots rules that drift out of sync with the catalog — brittle work that breaks on the next upgrade.

ECOSIRE builds a purpose-made module that adds a first-class "SEO visibility" control across every indexable model — website.page, product.template, blog.post, slide.channel, and any custom published model you nominate. We extend the relevant models with computed and stored fields (x_exclude_from_sitemap, x_robots_directive, x_canonical_override) via a clean inheriting mixin, so the flag travels with the record and survives duplication. The controller layer overrides Odoo's sitemap generation (Website._enumerate_pages / the /sitemap.xml route) so excluded records are filtered out of the emitted XML, while the page still renders normally for direct visitors. A companion QWeb hook injects the correct <meta name="robots"> (noindex,follow by default, configurable per record) and an optional rel="canonical" into the page <head>, keeping the sitemap signal and the on-page signal consistent — the single most common cause of "excluded page still indexed" support tickets.

Control is exposed where your team already works: a checkbox and directive selector on the form view of each model, a batch "Exclude from sitemap" server action for list selections, and an optional rule-based ir.actions.server automated action so URLs matching a pattern (draft stages, specific website_ids, product variants, archived tags) are excluded automatically as records are created. Everything is permissioned through ir.model.access.csv plus record rules so only your SEO or marketing role can change visibility, and a lightweight audit log records who changed what and when. Multi-website instances are respected — exclusion is evaluated per website_id, so a page can be indexed on one storefront and hidden on another. The module ships with a technical settings panel for global defaults and a "regenerate sitemap" action, and is delivered against Odoo 17.0, 18.0, or 19.0 on Community or Enterprise (Enterprise's website features are additive — nothing here depends on them).

Because this is built to order, nothing is downloaded from an app marketplace: after a short scoping call we confirm exactly which models, websites, and exclusion rules you need, then build, test on a staging copy of your database, and deliver the installable source with documentation and a training session. Typical delivery is one working week from confirmed scope. Pricing starts from $999 (indicative, single-company base scope); additional websites in a multi-company/multi-website setup, custom published models beyond the standard four, deeper localization, or migration of existing hand-maintained exclusion rules increases the quoted scope.

What you get

  • Installable module source code (your build) with a clean `__manifest__.py`, models, views, security, and controllers
  • Installation and configuration on your target instance (or staging), including security-group assignment
  • Technical documentation: model/field reference, controller override notes, and upgrade guidance
  • End-user guide plus a live training session for your SEO/marketing and admin team
  • UAT on a staging copy of your database with a documented rollback plan before production go-live
  • Post-go-live support window for defect fixes and configuration questions
  • Git repository handover with full commit history and tagged release
  • Seed configuration of your initial exclusion rules and per-model defaults

Who this is for

In-house SEO Manager

Owns organic performance for an Odoo storefront and needs to stop thin, duplicate, and utility URLs from entering the sitemap and search index — without filing a developer ticket for every page.

eCommerce Operations Lead

Runs a large `product.template` catalog with many variants and filtered category URLs; wants rule-based auto-exclusion so crawl budget stays focused on canonical product pages as new SKUs are added.

Multi-Website Marketing Director

Manages several storefronts on one Odoo instance and needs per-`website_id` control so the same page can be indexed on one brand and hidden on another, all governed by role-based permissions.

Odoo Administrator / Partner

Maintains the instance across 17/18/19 upgrades and wants a supported, documented module with a git handover instead of ad-hoc `ir.ui.view` edits that break on migration.

How SEO Control – Exclude Pages from Sitemap Compares

CriterionECOSIRECustom BuildCompetitorOdoo نیٹو
Per-record sitemap exclusionCheckbox and directive selector on every published modelPossible but built from scratch each timeUsually a single global toggle or page-only flagOnly a coarse `website_indexed` boolean on pages
Robots + sitemap consistencyQWeb `<head>` hook keeps `noindex` and sitemap in syncDepends on developer disciplineOften excludes from sitemap but leaves page indexableNo per-record robots control
Rule-based auto-exclusionAutomated actions for variants, drafts, archived tagsRequires bespoke `base.automation` workRarely offeredNot available
Multi-website scopeEvaluated per `website_id`Must be designed in deliberatelyFrequently single-website onlySitemap generated per site but no exclusion control
Permissions and auditSecurity group, record rules, and change audit logOnly if specified upfrontTypically noneAny website editor can change indexing
Upgrade pathBuilt for 17/18/19 with documented compatibility supportYou own all future maintenanceDepends on the vendor's release cadenceBehavior changes between versions
Fit to your modelsExtends the exact models you nominate, including custom onesFully bespoke but slow and costlyFixed to the models the vendor choseWebsite pages and standard models only
Support and handoverDocs, training, git repo, and a support windowVaries by contractorTicket-based, no source customizationCommunity forums only

Frequently Asked Questions about SEO Control

Is this an existing app I can download and install today?

No. This is a build-to-order module. ECOSIRE builds it to your exact requirements — the specific models, websites, and exclusion rules you need — then installs and supports it. There is no instant download.

How long does delivery take?

Typical delivery is one working week from confirmed scope. After a short scoping call we agree the models and rules, build against your Odoo version, test on a staging copy of your database, and hand over installable source plus documentation and training.

How does pricing and scoping work?

Pricing starts from $999 as an indicative single-company base-scope figure. It is not a fixed price — after the scoping call we send a firm fixed quote. Additional websites, custom published models, deeper localization, or migrating existing exclusion rules increase the quoted scope.

What about support and future Odoo updates?

Every build includes a post-go-live support window for defect fixes and configuration help. We deliver against Odoo 17.0, 18.0, or 19.0; when you plan a major version upgrade we can quote a compatibility pass so the module carries forward cleanly.

Will an excluded page still be reachable by visitors?

Yes. Exclusion only removes the URL from `/sitemap.xml` and, by default, adds a `noindex,follow` robots directive. The page continues to render normally for direct visitors and internal links — it simply stops being advertised to search engines.

Does it work with multiple websites and eCommerce variants?

Yes. Exclusion is evaluated per `website_id`, so a URL can be indexed on one storefront and hidden on another. Rule-based automated actions can auto-exclude product variants, draft stages, or archived tags as records are created.

Community or Enterprise — which do I need?

Either. The module targets Odoo's website/eCommerce stack that exists in both editions; nothing here depends on Enterprise-only features. We confirm your edition during scoping and pin `__manifest__.py` dependencies accordingly.

قیمت کا تخمینہ طلب کریں

SEO Control

A build-to-order Odoo module that gives you precise control over which website pages, products, and blog posts enter your XML sitemap — with per-record exclusion, robots directives, and canonical hints. ECOSIRE scopes, builds, installs, and supports it for your instance.

  • Inheriting SEO-visibility mixin adds `x_exclude_from_sitemap`, `x_robots_directive`, and `x_canonical_override` fields to any published model without duplicating logic
  • Override of `Website._enumerate_pages` and the `/sitemap.xml` controller so excluded records are filtered from the emitted XML while the page still renders for direct visitors
  • Per-record `<meta name="robots">` injection via QWeb `<head>` hook (default `noindex,follow`, selectable per record) to keep sitemap and on-page signals consistent
  • Optional `rel="canonical"` override field to consolidate duplicate or parameterized URLs onto a preferred canonical

قیمت کا تخمینہ طلب کریں

ہمیں SEO Control کے لیے اپنی ضروریات بتائیں اور ہم آپ کو قیمتیں، لائسنس کے اختیارات اور ایک مخصوص تجویز بھیجیں گے — عام طور پر ایک کاروباری دن میں۔

ابھی کوئی ادائیگی نہیں۔ یہ ہماری ٹیم کو قیمت کی درخواست بھیجتا ہے — ہم قیمت اور اگلے اقدامات کے ساتھ ای میل کے ذریعے رابطہ کریں گے۔