diff --git a/core/Controller/Site/NavigationAdminController.php b/core/Controller/Site/NavigationAdminController.php
index ca7af07..b1676d8 100644
--- a/core/Controller/Site/NavigationAdminController.php
+++ b/core/Controller/Site/NavigationAdminController.php
@@ -107,6 +107,7 @@ class NavigationAdminController extends CrudController
->setPageRoute('sort', 'admin_site_navigation_sort')
->setPageRoute('delete', 'admin_site_navigation_delete')
->setPageRoute('filter', 'admin_site_navigation_filter')
+ ->setPageRoute('redirects', 'admin_redirect_index')
->setForm('edit', Type::class, [])
->setForm('new', Type::class)
diff --git a/core/Entity/NavigationSetting.php b/core/Entity/NavigationSetting.php
index cee3540..21d37d7 100644
--- a/core/Entity/NavigationSetting.php
+++ b/core/Entity/NavigationSetting.php
@@ -16,33 +16,33 @@ class NavigationSetting implements EntityInterface
* @ORM\GeneratedValue
* @ORM\Column(type="integer")
*/
- private $id;
+ protected $id;
/**
* @ORM\Column(type="string", length=255)
*/
- private $section;
+ protected $section;
/**
* @ORM\Column(type="string", length=255)
*/
- private $label;
+ protected $label;
/**
* @ORM\Column(type="string", length=255)
*/
- private $code;
+ protected $code;
/**
* @ORM\Column(type="text", nullable=true)
*/
- private $value;
+ protected $value;
/**
* @ORM\ManyToOne(targetEntity=Navigation::class, inversedBy="navigationSettings")
* @ORM\JoinColumn(nullable=false, onDelete="CASCADE")
*/
- private $navigation;
+ protected $navigation;
public function getId(): ?int
{
diff --git a/core/Entity/Setting.php b/core/Entity/Setting.php
index 92f9cd3..2e3a9a0 100644
--- a/core/Entity/Setting.php
+++ b/core/Entity/Setting.php
@@ -15,27 +15,27 @@ class Setting implements EntityInterface
* @ORM\GeneratedValue
* @ORM\Column(type="integer")
*/
- private $id;
+ protected $id;
/**
* @ORM\Column(type="string", length=255)
*/
- private $section;
+ protected $section;
/**
* @ORM\Column(type="string", length=255)
*/
- private $label;
+ protected $label;
/**
* @ORM\Column(type="string", length=255)
*/
- private $code;
+ protected $code;
/**
* @ORM\Column(type="text", nullable=true)
*/
- private $value;
+ protected $value;
public function getId(): ?int
{
diff --git a/core/Entity/Site/Navigation.php b/core/Entity/Site/Navigation.php
index 22f5a88..084f357 100644
--- a/core/Entity/Site/Navigation.php
+++ b/core/Entity/Site/Navigation.php
@@ -63,12 +63,12 @@ class Navigation implements EntityInterface
/**
* @ORM\Column(type="integer", nullable=true)
*/
- private $sortOrder;
+ protected $sortOrder;
/**
* @ORM\OneToMany(targetEntity=NavigationSetting::class, mappedBy="navigation", orphanRemoval=true)
*/
- private $navigationSettings;
+ protected $navigationSettings;
public function __construct()
{
diff --git a/core/Entity/Site/Node.php b/core/Entity/Site/Node.php
index 6e530ef..ab7d6ef 100644
--- a/core/Entity/Site/Node.php
+++ b/core/Entity/Site/Node.php
@@ -137,7 +137,7 @@ class Node implements EntityInterface
/**
* @ORM\Column(type="string", length=255, nullable=true)
*/
- private $contentType;
+ protected $contentType;
public function __construct()
{
diff --git a/core/Resources/translations/messages.fr.yaml b/core/Resources/translations/messages.fr.yaml
index 6a23fc8..0204b3e 100644
--- a/core/Resources/translations/messages.fr.yaml
+++ b/core/Resources/translations/messages.fr.yaml
@@ -193,3 +193,15 @@
"Choose": "Choisir"
"Associated": "Associé(e)"
"Directory": "Répertoire"
+"Redirects": "Redirections"
+"New redirect": "Nouvelle redirection"
+"Scheme": "Schéma"
+"Rule": "Règle"
+"Path": "Chemin"
+"Location": "Emplacement"
+"301 - Moved Permanently": "301 - Redirection permanante"
+"307 - Temporary Redirect": "307 - Redirection temporaire"
+"Enabled": "Activé(e)"
+"Enable": "Activer"
+"Disable": "Désactiver"
+"Reuse the query string": "Réutiliser la chaîne de requête"
diff --git a/core/Resources/views/admin/crud/field/button.html.twig b/core/Resources/views/admin/crud/field/button.html.twig
index f832707..969ccf7 100644
--- a/core/Resources/views/admin/crud/field/button.html.twig
+++ b/core/Resources/views/admin/crud/field/button.html.twig
@@ -1 +1 @@
-<{{ options.button_tag }} {% for k, v in options.button_attr %}{{ k }}="{{ v }}"{% endfor %}>{% if options.raw %}{{ value|raw }}{% else %}{{ value }}{% endif %}{{ options.button_tag }}>
+<{{ options.button_tag }} {% for k, v in options.button_attr %}{{ k }}="{{ v }}"{% endfor %}>{% if options.raw %}{{ value|raw }}{% else %}{{ value|trans }}{% endif %}{{ options.button_tag }}>
diff --git a/core/Resources/views/admin/crud/field/text.html.twig b/core/Resources/views/admin/crud/field/text.html.twig
index a274c49..e9cf8ac 100644
--- a/core/Resources/views/admin/crud/field/text.html.twig
+++ b/core/Resources/views/admin/crud/field/text.html.twig
@@ -1,2 +1,2 @@
-{% if options.raw %}{{ value|raw }}{% else %}{{ value }}{% endif %}
+{% if options.raw %}{{ value|raw }}{% else %}{{ value|trans }}{% endif %}
diff --git a/core/Resources/views/site/navigation_admin/index.html.twig b/core/Resources/views/site/navigation_admin/index.html.twig
index 29fb1be..decc41a 100644
--- a/core/Resources/views/site/navigation_admin/index.html.twig
+++ b/core/Resources/views/site/navigation_admin/index.html.twig
@@ -1,5 +1,12 @@
{% extends '@Core/admin/crud/index.html.twig' %}
+{% block header_actions_before %}
+
+
+ {{ configuration.actionTitle(context, 'redirects', 'Redirects')|trans }}
+
+{% endblock %}
+
{% block list_item_actions_before %}