diff --git a/addons/website/__manifest__.py b/addons/website/__manifest__.py
index bb2d4fdbe32..7b9ef800dbe 100644
--- a/addons/website/__manifest__.py
+++ b/addons/website/__manifest__.py
@@ -161,10 +161,7 @@
'website/static/src/scss/website.backend.scss',
'website/static/src/scss/website_visitor_views.scss',
'website/static/src/scss/website.theme_install.scss',
- 'website/static/src/js/backend/button.js',
- 'website/static/src/js/backend/dashboard.js',
- 'website/static/src/js/backend/res_config_settings.js',
- 'website/static/src/js/backend/view_hierarchy.js',
+ 'website/static/src/js/backend/**/*',
'website/static/src/js/widget_iframe.js',
'website/static/src/js/theme_preview_kanban.js',
'website/static/src/js/theme_preview_form.js',
@@ -186,6 +183,7 @@
'web.qunit_suite_tests': [
'website/static/tests/dashboard_tests.js',
'website/static/tests/website_tests.js',
+ 'website/static/tests/redirect_field_tests.js',
],
'web.tests_assets': [
'website/static/tests/website_service_mock.js',
@@ -268,6 +266,7 @@
'website/static/src/xml/website.backend.xml',
'website/static/src/xml/website_widget.xml',
'website/static/src/xml/theme_preview.xml',
+ 'website/static/src/js/backend/**/*',
],
'website.test_bundle': [
'/web/static/lib/qweb/qweb2.js',
diff --git a/addons/website/static/src/js/backend/redirect_field.js b/addons/website/static/src/js/backend/redirect_field.js
new file mode 100644
index 00000000000..7008946cbff
--- /dev/null
+++ b/addons/website/static/src/js/backend/redirect_field.js
@@ -0,0 +1,24 @@
+/** @odoo-module **/
+
+import { registry } from "@web/core/registry";
+
+const { Component } = owl;
+
+class RedirectField extends Component {
+ get info() {
+ return this.props.value ? this.env._t("Published") : this.env._t("Unpublished");
+ }
+
+ onClick() {
+ this.env.onClickViewButton({
+ clickParams: {
+ type: "object",
+ name: "open_website_url"
+ },
+ record: this.props.record,
+ });
+ }
+}
+
+RedirectField.template = "website.RedirectField";
+registry.category("fields").add("website_redirect_button", RedirectField);
diff --git a/addons/website/static/src/js/backend/redirect_field.xml b/addons/website/static/src/js/backend/redirect_field.xml
new file mode 100644
index 00000000000..23b4e5cf1fb
--- /dev/null
+++ b/addons/website/static/src/js/backend/redirect_field.xml
@@ -0,0 +1,16 @@
+
+