- ہوم
- Apps
- Multichannel & PIM Tools
- Website Page Restore, Revision & History
مثالی پیش منظرA build-to-order Odoo module that captures a full revision history for every website page,
letting your team compare versions, roll back mistakes, and restore any prior state with one click.
ECOSIRE designs, builds, installs, and supports it after a scoping call — it is not an instant download.
Website Page Restore, Revision & History کیا ہے؟
A build-to-order Odoo module that captures a full revision history for every website page, letting your team compare versions, roll back mistakes, and restore any prior state with one click. ECOSIRE designs, builds, installs, and supports it after a scoping call — it is not an instant download. Built to order by ECOSIRE for Odoo 17, 18, 19 — indicative price from $999.00 USD; request a quote for a scoped proposal.
اہم خصوصیات
آرڈر پر تیار، مکمل طور پر آپ کے لیے
خود سیٹ اپ کی ضرورت نہیں — ایک کام کرنے والی ایپ جو ECOSIRE بناتا، انسٹال اور سپورٹ کرتا ہے۔
- 1
آپ آرڈر دیتے ہیں
ایک بار کی تعمیر کی قیمت سے آغاز کریں۔ آغاز پر ہم آپ کے ساتھ مل کر دائرہ کار طے کرتے ہیں۔
- 2
ہم بناتے اور انسٹال کرتے ہیں
ECOSIRE اسے آپ کے Odoo پر بناتا، ترتیب دیتا اور انسٹال کرتا ہے۔
- 3
لائیو + معاونت
آپ تقریباً ایک کاروباری ہفتے میں لائیو ہو جاتے ہیں، گو لائیو کے بعد دو ہفتوں کی معاونت کے ساتھ۔ ہمارے فراہم کردہ کوڈ کی خرابیاں مفت درست کی جاتی ہیں۔
تکنیکی تفصیلات
- Odoo ہم آہنگی
- Odoo 17, Odoo 18, Odoo 19
- ایڈیشنز
- Enterprise اور Community
- لائسنس
- لائسنس کی تصدیق درکار ہے
- Python کی ضرورت
- Python 3.10+
- ڈیٹابیس
- PostgreSQL 12+
اس مصنوع کے بارے میں
Anyone who edits Odoo website pages knows the cold-sweat moment: an editor drags a snippet into the wrong place, someone overwrites a carefully-tuned hero section, or a bulk find-and-replace mangles copy across a landing page — and the native website builder has no meaningful undo once the record is saved. Out of the box, website.page and its backing ir.ui.view store only the current arch_db; earlier states vanish the moment you save. There is no per-page timeline, no diff, no "who changed what and when," and no safe rollback. Teams end up keeping shadow copies in documents or restoring an entire database from a nightly backup just to recover one paragraph — an expensive, disruptive sledgehammer for a small mistake.
This is exactly where Odoo native runs out of road, and the gap we build to fill. ECOSIRE builds a made-to-order module that snapshots the arch_db of a website page (and, where in scope, its associated ir.ui.view records, menu entries and SEO metadata) on every save, storing each snapshot as an immutable row on a dedicated website.page.revision model. Each revision captures the author (create_uid), a timestamp, an optional change note, and a stored diff so a non-technical editor sees a human-readable before/after without reading XML. A one-click Restore action writes the chosen snapshot back into the live view inside a single transaction, and — because Restore is itself a save — the pre-restore state is snapshotted first, so a restore can always be undone.
Technically, the module hooks the write path with a write() override (and an @api.model create hook) on ir.ui.view/website.page, computing a content hash so identical saves do not create noise revisions. A @api.depends-driven compute field surfaces the current revision number and last editor on the page form. Access is governed by ir.model.access.csv plus record rules so that viewing history, and the more sensitive Restore action, can be granted to distinct groups (e.g. an editor can view but only a website manager can roll back); every restore writes to the audit trail. Optional configuration — exposed through res.config.settings — controls retention (keep last N revisions, or prune by age via a scheduled ir.cron automated action), whether snapshots also cover attachments and translations (ir.translation / field translations), and whether the timeline is reachable from the frontend editor toolbar via an OWL component or only from the backend. All read/restore operations are available over the standard XML-RPC/JSON-RPC API for integration with your release or governance tooling. It is built and tested against Odoo 17.0, 18.0 and 19.0, works on Community and Enterprise (the website app is Community-grade, so no Enterprise dependency is imposed), and ships as clean, upgrade-safe source.
Because this is build-to-order, delivery follows a short, predictable path: a scoping call to lock exactly which records and metadata are versioned and who may restore, a fixed written quotation, then build and unit testing, UAT on a staging copy of your database, and go-live with a rollback plan. Typical delivery is one working week from confirmed scope. Pricing starts from $999 (indicative, single-company base scope); wider snapshot coverage (translations, attachments, multi-website or multi-company record rules), deeper diff/rendering work, or migration of an existing edit-history dataset increases the quoted scope. You receive a firm fixed price after the scoping call — never a surprise.
What you get
- Installable, upgrade-safe source code for your version of the module (clean `__manifest__.py`, models, views, security files)
- Installation and configuration on your Odoo environment, including retention and permission setup
- Technical documentation: data model, `write()`/cron hooks, security matrix, and API reference
- End-user guide plus a live training session for editors and website managers
- UAT on a staging copy of your database with a documented sign-off checklist and rollback plan
- Post-go-live support window (bug fixes and adjustments) for the agreed period after launch
- Git repository handover with full commit history and tagged release for your version(s)
- Compatibility validation notes across the Odoo version(s) in your scope (17.0 / 18.0 / 19.0)
Who this is for
Website / Marketing Manager
Owns the public Odoo website and runs frequent landing-page and campaign edits. Needs a safety net so a bad edit or a departing contractor's mistake can be reverted in seconds instead of restoring a whole database backup.
Odoo Administrator / Internal IT
Responsible for database integrity and change governance. Wants an auditable trail of who changed which page and when, retention controls to keep the table lean, and record rules so only trusted roles can perform a restore.
Digital Agency Managing Client Odoo Sites
Edits many pages across client instances and hands work between team members. Needs per-page version history and diffs to review changes, plus one-click rollback to recover from editor errors without escalating to the client's IT.
Compliance / Operations Lead
Needs demonstrable change control over public-facing content for regulatory or brand-governance reasons. Values the immutable revision log, author attribution, and the ability to prove and reverse any published change.
How Website Page Restore, Revision & History Compares
| Criterion | ECOSIRE | Custom Build | Competitor | Odoo نیٹو |
|---|---|---|---|---|
| Page-level revision history | Full timeline per page, built to your scope | Possible but you design the model from scratch | Fixed feature set, take-it-or-leave-it | None — only the current `arch_db` is stored |
| One-click restore | Transactional restore, itself reversible | Depends entirely on your build effort | Usually present but not tailored | Absent — restore means a full DB backup restore |
| Change diff / before-after | Human-readable stored diff for editors | You implement and maintain the diff logic | May show raw XML or none at all | None |
| Permissions & audit | Separate view/restore groups + full audit log | Your responsibility to design securely | Generic, rarely group-separated | No history-specific access control |
| Retention control | Keep-N or prune-by-age via `ir.cron` | Build and test the cron yourself | Fixed or missing retention options | N/A |
| Fit to your Odoo setup | Scoped to your records, versions & workflow | Fully bespoke but slow and costly to reach | Generic; you adapt to its assumptions | N/A |
| Support & ownership | Support window + git repo handover | In-house team must own it long-term | Vendor support, no source ownership | Core Odoo support only |
| Odoo 17/18/19 + edition | Built & tested per your version, CE or EE | You port and retest across versions | Varies; may lag new releases | N/A |
Frequently Asked Questions about Website Page Restore, Revision & History
Is this an app I can download and install today?
No. This is a build-to-order module. ECOSIRE designs, builds, installs and supports it for your specific Odoo environment after a scoping call. It is not an existing apps.odoo.com download, and we never claim an instant install.
How long does delivery take?
Typical delivery is one working week from confirmed scope. The timeline starts once we have agreed in writing exactly which records and metadata are versioned, who may restore, and your target Odoo version(s). Larger scope — extra coverage, migrations, multi-company rules — can extend it, and we state the timeline in your fixed quote.
How does pricing and scoping work?
Pricing starts from $999 (indicative, single-company base scope). We hold a short scoping call to confirm requirements, then send a firm fixed-price quotation — no open-ended hourly billing. Drivers such as translation/attachment coverage, multi-website or multi-company record rules, deeper diff rendering, or migrating an existing edit-history dataset increase the quoted scope.
What Odoo versions and editions are supported?
We build and test against Odoo 17.0, 18.0 and 19.0. The module targets the website app, which is Community-grade, so it runs on both Community and Enterprise and imposes no Enterprise dependency. You tell us your version(s) at scoping and we deliver source built for them.
What happens after go-live — support and updates?
Every engagement includes a post-go-live support window for bug fixes and adjustments, agreed in the quote. You also receive the git repository so your team owns the code. Beyond the included window, we offer optional ongoing support and version-upgrade work (for example when you move to a newer Odoo release) under a separate agreement.
Will it slow down page saves or bloat the database?
Snapshots are lightweight `arch_db` rows with content-hash de-duplication, so identical saves create no revision. Retention is configurable — keep the last N revisions or prune by age via a scheduled `ir.cron` job — so the history table stays bounded. We tune both during scoping to match your edit volume.
Can a restore itself be undone if we roll back to the wrong version?
Yes. A Restore is treated as a save, so the current state is snapshotted before the chosen revision is written back. If you restore the wrong version, the immediately-prior state is still in the timeline and one click away, all inside audited transactions.
Related Modules

Website Display Packaging Options
A build-to-order Odoo eCommerce module that lets your online shoppers view, compare and select packaging options (single unit, retail case, pallet, gift-wrap, bulk) directly on the product page, with the chosen packaging flowing through cart, quotation, delivery and invoice. Scoped, built, installed and supported by ECOSIRE.

Website Helpdesk Management
A build-to-order Odoo module that lets your website visitors and portal users create helpdesk tickets directly from the frontend, while your agents keep full control from the backend. ECOSIRE scopes, builds, installs and supports it for you.

Website Show Price After Login
A made-to-order Odoo eCommerce module that hides product pricing and the Add-to-Cart flow from anonymous visitors, revealing them only to logged-in members you approve. ECOSIRE scopes, builds, installs, and supports it for your Odoo 17/18/19 site.

Website Video Upload
A build-to-order Odoo module that lets website editors upload MP4 files directly and embed them through a lightweight, self-hosted HTML5 player — no third-party video host required. ECOSIRE scopes, builds, installs, and supports it on your Odoo 17, 18, or 19 environment.
Website Page Restore, Revision & History
A build-to-order Odoo module that captures a full revision history for every website page, letting your team compare versions, roll back mistakes, and restore any prior state with one click. ECOSIRE designs, builds, installs, and supports it after a scoping call — it is not an instant download.
- Automatic `arch_db` snapshot of each website page on every save, stored as immutable `website.page.revision` rows keyed to the `ir.ui.view`
- Content-hash de-duplication so identical or no-op saves do not generate noise revisions
- Per-revision metadata: author (`create_uid`), timestamp, optional change note, and originating source (backend, frontend editor, or API)
- Human-readable stored diff (before/after) rendered so non-technical editors review changes without reading raw XML/QWeb