diff --git a/VERSIONS_HOTLINE/182717 b/VERSIONS_HOTLINE/182717
new file mode 100644
index 0000000000000000000000000000000000000000..83a74fcc57f5c469510f24b1dc8b94fc9a65dfa4
--- /dev/null
+++ b/VERSIONS_HOTLINE/182717
@@ -0,0 +1 @@
+ - correctif #182717 : PHP 8.1 : Souci affichage Menu Vertical - Problèmes redirection sur la page d'accueil
\ No newline at end of file
diff --git a/library/Class/Systeme/ModulesMenu/News.php b/library/Class/Systeme/ModulesMenu/News.php
index 8c76ffd0a72749dbf0ed81cba0c0194def051d4e..d6b5eddff783001e71acb8739826012d837d03f9 100644
--- a/library/Class/Systeme/ModulesMenu/News.php
+++ b/library/Class/Systeme/ModulesMenu/News.php
@@ -54,7 +54,7 @@ class Class_Systeme_ModulesMenu_News extends Class_Systeme_ModulesMenu_Null {
   }
 
 
-  public function renderOn($view, $menu_item) {
+  public function renderOn(ZendAfi_View_Helper_Accueil_Base $view, array $menu_item)  {
     if (!$menu_item)
       return;
 
diff --git a/library/ZendAfi/View/Helper/Accueil/MenuVertical.php b/library/ZendAfi/View/Helper/Accueil/MenuVertical.php
index ebcb0eff36bb63d3f5a0a727cd75875eb7ac333b..9e2e83caf0b73a6b23ca200921851ce7ff0e43f1 100644
--- a/library/ZendAfi/View/Helper/Accueil/MenuVertical.php
+++ b/library/ZendAfi/View/Helper/Accueil/MenuVertical.php
@@ -161,14 +161,16 @@ class ZendAfi_View_Helper_Accueil_MenuVertical extends ZendAfi_View_Helper_Accue
    * @param array $items
    * @return string
    */
-  private function _renderItems($controller, $action, $menu, $items) {
+  private function _renderItems($controller, $action, $menu, $items) :string {
     if (1 == count($items)) {
       $item = reset($items);
       $id = $item->getId();
       return $this->_renderListItem($menu,
                                     $this->view->url(['controller' => $controller,
                                                       'action' => $action,
-                                                      'id' => $id], null, true));
+                                                      'id' => $id],
+                                                     null,
+                                                     true));
     }
 
     $sub_content = '';
@@ -186,13 +188,13 @@ class ZendAfi_View_Helper_Accueil_MenuVertical extends ZendAfi_View_Helper_Accue
   }
 
 
-  public function visitListItem($menuitem, $url = '#', $target = null) {
+  public function visitListItem($menuitem, $url = '#', $target = null) :self{
     $this->_visit_html .= $this->_renderListItem($menuitem, $url, $target);
     return $this;
   }
 
 
-  public function visitListChildsOf($menu_item, $items, $url_provider) {
+  public function visitListChildsOf(array $menu_item, array $items, closure $url_provider) :void {
     if (1 == count($items)) {
       $item = reset($items);
       $this->_visit_html .= $this->_renderListItem($menu_item, $url_provider($item));
@@ -211,7 +213,7 @@ class ZendAfi_View_Helper_Accueil_MenuVertical extends ZendAfi_View_Helper_Accue
 
 
 
-  public function _renderLIAnchor($url, $content) {
+  public function _renderLIAnchor(string $url, string $content) :string {
     return $this->_tag('li',
                        $this->_tag('a', htmlspecialchars($content),
                                    ['href' => htmlspecialchars($url)]),
@@ -223,7 +225,7 @@ class ZendAfi_View_Helper_Accueil_MenuVertical extends ZendAfi_View_Helper_Accue
    * @param array $menuitem
    * @return string
    */
-  private function _menuRSSBuilder($menuitem) {
+  private function _menuRSSBuilder(array $menuitem) :string {
     $id_items     = $menuitem['preferences']['id_items'];
     $id_categorie = $menuitem['preferences']['id_categorie'];
     $nb           = $menuitem['preferences']['nb'];
@@ -243,7 +245,7 @@ class ZendAfi_View_Helper_Accueil_MenuVertical extends ZendAfi_View_Helper_Accue
    * @param array $menuitem
    * @return string
    */
-  private function _menuPROFILBuilder($menuitem) {
+  private function _menuPROFILBuilder(array $menuitem) :string {
     $preferences = isset($menuitem['preferences'])
       ? $menuitem['preferences'] : null;
 
@@ -264,7 +266,7 @@ class ZendAfi_View_Helper_Accueil_MenuVertical extends ZendAfi_View_Helper_Accue
   }
 
 
-  protected function _getMenuEntry($url, $target, $item, $sub_menu = false) {
+  protected function _getMenuEntry(string $url, array $target, $item, bool $sub_menu = false) :string {
     if (Class_Systeme_ModulesMenu::isModuleAccueil($item)) {
       $item['type_module'] = Class_Systeme_ModulesMenu::moduleAccueilType($item);
       $helper = ZendAfi_View_Helper_Accueil_Base::getModuleHelperFromParams($item['id_module'],
@@ -292,7 +294,7 @@ class ZendAfi_View_Helper_Accueil_MenuVertical extends ZendAfi_View_Helper_Accue
    * @param array $menuitem
    * @return string
    */
-  private function _menuSITOBuilder($menuitem) {
+  private function _menuSITOBuilder(array $menuitem) :string {
     $id_items     = $menuitem['preferences']['id_items'];
     $id_categorie = $menuitem['preferences']["id_categorie"];
     $nb           = $menuitem['preferences']["nb"];
@@ -310,7 +312,7 @@ class ZendAfi_View_Helper_Accueil_MenuVertical extends ZendAfi_View_Helper_Accue
    * @param array $menuitem
    * @return string
    */
-  private function _menuNEWSBuilder($menuitem) {
+  private function _menuNEWSBuilder(array $menuitem) :string {
     $module_menu = new Class_Systeme_ModulesMenu_News();
 
     $this->_visit_html = '';
@@ -324,7 +326,7 @@ class ZendAfi_View_Helper_Accueil_MenuVertical extends ZendAfi_View_Helper_Accue
    * @param array $menuitem
    * @return string
    */
-  protected function _menuBIBNUMBuilder($menuitem) {
+  protected function _menuBIBNUMBuilder(array $menuitem) :string {
     if (!$album = Class_Album::find($menuitem["preferences"]['album_id']))
       return '';
 
@@ -351,12 +353,13 @@ class ZendAfi_View_Helper_Accueil_MenuVertical extends ZendAfi_View_Helper_Accue
    * @param string $target
    * @return string
    */
-  private function _renderListItem($menuitem, $url = '#', $target = null) {
+  private function _renderListItem(array $menuitem, string $url = '#', string $target = null) :string {
     $a_target = $target ? ['target' => $target] : [];
 
     $content = $this->_getMenuEntry($url, $a_target, $menuitem, true);
-
-    if ( ($this->preferences['new_html']=='1') && (isset($menuitem['sous_menus'])))
+    if ( ($this->preferences['new_html']=='1')
+         && (isset($menuitem['sous_menus'])
+             && is_array($menuitem['sous_menus'])))
       $content .= $this->_getSubItemsHtml($menuitem['sous_menus']);
 
     $profil_key = isset($menuitem["preferences"]["clef_profil"])
@@ -372,12 +375,12 @@ class ZendAfi_View_Helper_Accueil_MenuVertical extends ZendAfi_View_Helper_Accue
   }
 
 
-  protected function afficherSousMenu($href) {
+  protected function afficherSousMenu($href) :array {
     return  $href == '#' ? ['onclick' => 'afficher_sous_menu(this);return false'] : [];
   }
 
 
-  protected function getMenuPicto($menu_item) {
+  protected function getMenuPicto($menu_item) :string {
     if ($menu_item["picto"] > '' and $menu_item["picto"] != "vide.gif")
       return $this->view->tagImgHover($this->path_ico . $menu_item["picto"],
                                       ['alt' => $this->view->_('pictogramme pour ') . $menu_item["libelle"]]);
@@ -400,19 +403,19 @@ class ZendAfi_View_Helper_Accueil_MenuVertical extends ZendAfi_View_Helper_Accue
   }
 
 
-  protected function _getContextClass($id_profil) {
+  protected function _getContextClass(int $id_profil) :string {
     return (Class_Profil::getCurrentProfil()->getId() == $id_profil)
       ? 'menuGauche selected_profil'
       : 'menuGauche';
   }
 
 
-  protected function _getContextClassByUrl($url) {
+  protected function _getContextClassByUrl(string $url) :string {
     return (new Class_CompareUrl)->isInRequestUrl($url) ? 'selected_action' : '';
   }
 
 
-  protected function _getContentAsOldHtml($entries) {
+  protected function _getContentAsOldHtml(array $entries) :string {
     $content = [];
 
     foreach($entries as $id => $entry)
@@ -426,7 +429,7 @@ class ZendAfi_View_Helper_Accueil_MenuVertical extends ZendAfi_View_Helper_Accue
   }
 
 
-  protected function _getEntryContent($id, $entry) {
+  protected function _getEntryContent($id, $entry) :string {
     $entry['id_module'] = $id;
     $content = [$this->_getLigne($entry)];
 
@@ -442,7 +445,7 @@ class ZendAfi_View_Helper_Accueil_MenuVertical extends ZendAfi_View_Helper_Accue
   }
 
 
-  protected function _getContentHtml($menus) {
+  protected function _getContentHtml(array $menus) :string {
     $menus_li = '';
 
     foreach($menus as $key => $item) {
@@ -456,7 +459,7 @@ class ZendAfi_View_Helper_Accueil_MenuVertical extends ZendAfi_View_Helper_Accue
   }
 
 
-  protected function _getSubItemsHtml($sub_items) {
+  protected function _getSubItemsHtml(array $sub_items) :string {
     $sub_items = array_filter($sub_items);
     if(1 > count($sub_items))
       return '';
@@ -469,7 +472,7 @@ class ZendAfi_View_Helper_Accueil_MenuVertical extends ZendAfi_View_Helper_Accue
   }
 
 
-  protected function _subMenuLi($sub_content) {
+  protected function _subMenuLi(?string $sub_content) :string {
     if(!$sub_content)
       return '';
 
@@ -486,7 +489,7 @@ class ZendAfi_View_Helper_Accueil_MenuVertical extends ZendAfi_View_Helper_Accue
   }
 
 
-  protected function _isCollapsedMenu() {
+  protected function _isCollapsedMenu() :bool {
     if(!isset($this->preferences['menu_deplie']))
       return true;
 
diff --git a/tests/library/ZendAfi/View/Helper/Accueil/MenuVerticalTest.php b/tests/library/ZendAfi/View/Helper/Accueil/MenuVerticalTest.php
index d24592aec46d5d2cb82f88d128a655da04ba6800..f642979d2f35e9aaa67315239ede675e9d4b049b 100644
--- a/tests/library/ZendAfi/View/Helper/Accueil/MenuVerticalTest.php
+++ b/tests/library/ZendAfi/View/Helper/Accueil/MenuVerticalTest.php
@@ -34,12 +34,7 @@ abstract class MenuVerticalTestCase extends ViewHelperTestCase {
 
     $this->_menuConfigTrigger();
 
-    $prefs = ['division' => '1',
-              'type_module' => 'MENU_VERTICAL',
-              'preferences' => ['boite'         => '',
-                                'afficher_titre'=> '1',
-                                'menu'          => '7',
-                                'menu_deplie' => 0]];
+    $prefs = $this->_setPrefs();
 
     $this->helper = new ZendAfi_View_Helper_Accueil_MenuVertical(12, $prefs);
     $this->helper->setView(new ZendAfi_Controller_Action_Helper_View());
@@ -48,6 +43,17 @@ abstract class MenuVerticalTestCase extends ViewHelperTestCase {
 
 
   protected function _menuConfigTrigger() {}
+
+
+  protected function _setPrefs() : array {
+    return  ['division' => '1',
+             'type_module' => 'MENU_VERTICAL',
+             'preferences' => ['boite'         => '',
+                               'afficher_titre'=> '1',
+                               'menu'          => '7',
+                               'menu_deplie' => 0]];
+
+  }
 }
 
 
@@ -74,6 +80,8 @@ abstract class MenuVerticalWithOnlyOneItemTestCase extends MenuVerticalTestCase
 
 
 class MenuVerticalRssWithOnlyOneItemTest extends MenuVerticalWithOnlyOneItemTestCase {
+  protected $_itemLabel = 'inscrire';
+
   protected function _menuConfigTrigger() {
     Class_Profil::getCurrentProfil()
       ->setCfgMenus([7 => ['libelle' => 'Sciences et Technologies',
@@ -732,7 +740,7 @@ class MenuVerticalNewsItemAsSummaryTest extends MenuVerticalTestCase {
   protected function _menuConfigTrigger() {
     $this->onLoaderOfModel('Class_Article')
          ->whenCalled('getArticlesByPreferences')
-         ->answers([$this->fixture('Class_Article',
+         ->answers([$this->fixture(Class_Article::class,
                                    ['id' => 55,
                                     'titre' => 'My Article',
                                     'contenu' => 'My content'])]);
@@ -768,3 +776,67 @@ class MenuVerticalNewsItemAsSummaryTest extends MenuVerticalTestCase {
                                       $this->_html);
   }
 }
+
+
+
+
+class MenuVerticalNewsWithEmptySousMenuTest extends MenuVerticalWithOnlyOneItemTestCase {
+  protected $_itemLabel = 'inscrire';
+
+  protected function _menuConfigTrigger() {
+
+    $this->onLoaderOfModel('Class_Article')
+         ->whenCalled('getArticlesByPreferences')
+         ->answers([$this->fixture(Class_Article::class,
+                                   ['id' => 12,
+                                    'titre' => 'My Article',
+                                    'contenu' => 'My content'])]);
+
+    $prefs = ['type_module' => 'NEWS',
+              'id_module' => 7,
+              'type_menu' => 'NEWS',
+              'new_html' => 1,
+              'libelle' => 'S\'inscrire',
+              'picto' => 'vide.gif',
+              'id_items' => 12,
+              'nb_aff' => 5,
+              'nb_analyse' => 10,
+              'display_order' => 'Selection',
+              'display_mode' => 'Submenu',
+              'summary_content' => 'Summary',
+              'sous_menus' =>''
+    ];
+    Class_Profil::getCurrentProfil()
+      ->setCfgMenus([7 => ['libelle' => 'Actus',
+                           'menus' => ['preferences'=>
+                                       array_merge($prefs,
+                                                   ['preferences'=> $prefs])]
+                             ]
+                     ]
+
+      )->save();
+
+  }
+
+
+  protected function _setPrefs() : array {
+    return  ['division' => '1',
+             'type_module' => 'MENU_VERTICAL',
+             'preferences' => ['boite'         => '',
+                               'afficher_titre'=> '1',
+                               'menu'          => '7',
+                               'new_html'      => '1',
+                               'menu_deplie' => 0]];
+
+  }
+
+
+  /** @test */
+  function withNewHtmlOnShouldDisplayPage() {
+    $this->helper->setPreference('new_html', '1');
+    $this->_html = $this->helper->getBoite();
+    $this->assertXPath($this->_html,
+                       '//div[@class="titre"]//h1[text()="Actus"]',
+                       $this->_html);
+  }
+}