title: TYPO3 menu also shows non translated pages
body: <p>I’ve got a new TYPO3 installation with 4 languages and as we were working on the nav something strange happened: the non translated pages already showed up the nav when switching the language, although we didn't ask explicitly for it.</p>
  
  <p>System is TYPO3 7.6 on PHP 5.5.</p>
  
  <p>Here's how we build the HMENU:</p>
  
  <pre><code># the main menu boostrap like
  lib.navBarMenu = HMENU
  lib.navBarMenu {
      1 = TMENU
      1 {
          # accessibility - add title for main navigation
          wrap (
              &lt;h2 class="sr-only"&gt;{$TEXT.titleMainnav}&lt;/h2&gt;
              &lt;ul class="nav navbar-nav" id="nav"&gt;|&lt;/ul&gt;
          )
  
          # Always unfold all sub-levels of the menu
          expAll = 1
  
          # Remove the (old) default behaviour which adds onfocus="blurLink(this);" to all links
          noBlur = 1
  
          # Define the normal state (not active, not selected) of menu items
          # Using NO=1 to activate normal state is not necessary, but useful when copying
          NO = 1
          NO {
              # Use the page title field as title property in the A-tag, and if the navigation title is set, take the value of this field
              ATagTitle {
                  field = title
                  stdWrap.override.cObject = TEXT
                  stdWrap.override.cObject.field = nav_title
                  stdWrap.override.if.isTrue.field = nav_title
              }
  
              # Use the option-split feature to generate a different wrap for the last item on a level of the menu
              # The last item on each level gets class="last" added for CSS styling purposes.
              #
              # See the TSref documentation for details about option split and other features:
              # http://typo3.org/documentation/document-library/references/doc_core_tsref/current/
              #wrapItemAndSub = &lt;li class="first"&gt;|&lt;/li&gt; |*| &lt;li&gt;|&lt;/li&gt; |*| &lt;li class="last"&gt;|&lt;/li&gt;
              wrapItemAndSub = &lt;li&gt;|&lt;/li&gt;
  
              # HTML-encode special characters according to the PHP-function htmlSpecialChars
              stdWrap.htmlSpecialChars = 1
          }
  
          IFSUB = 1
          IFSUB &lt; .NO
          IFSUB {
              wrapItemAndSub = &lt;li class="dropdown"&gt;|&lt;/li&gt;                 
              ATagBeforeWrap = 1
              ATagParams = class="dropdown-toggle" data-toggle="dropdown"
              stdWrap.wrap = |&lt;b class="caret"&gt;&lt;/b&gt;
          }
  
          # Copy properties of normal to active state, and then add a CSS class for styling
          ACTIFSUB = 1
          ACTIFSUB &lt; .IFSUB
          ACTIFSUB {
              wrapItemAndSub = &lt;li class="dropdown active"&gt;|&lt;/li&gt;
          }
  
          CURIFSUB = 1
          CURIFSUB &lt; .IFSUB
          CURIFSUB {
              wrapItemAndSub = &lt;li class="dropdown active"&gt;|&lt;/li&gt;
          }
  
          # Copy properties of normal to active state, and then add a CSS class for styling
          ACT = 1
          ACT &lt; .NO
          ACT {
              wrapItemAndSub = &lt;li class="active"&gt;|&lt;/li&gt;
          }
  
          # Copy properties of normal to current state, and then add a CSS class for styling
          CUR = 1
          CUR &lt; .NO
          CUR {
              wrapItemAndSub = &lt;li class="active"&gt;|&lt;/li&gt;
          }
      }
      2 &lt; .1
      2 {
          wrap = &lt;ul class="dropdown-menu"&gt;|&lt;/ul&gt;
          IFSUB {
              wrapItemAndSub = &lt;li class="dropdown-submenu"&gt;|&lt;/li&gt;
              ATagParams &gt;
              stdWrap.wrap &gt;
          }
  
          ACTIFSUB {
              wrapItemAndSub = &lt;li class="dropdown-submenu"&gt;|&lt;/li&gt;
              ATagParams &gt;
              stdWrap.wrap &gt;
          }
  
          CURIFSUB {
              wrapItemAndSub = &lt;li class="dropdown-submenu"&gt;|&lt;/li&gt;
              ATagParams &gt;
              stdWrap.wrap &gt;
          }
      }
      3 &lt; .2
      4 &lt; .2
      5 &lt; .2
      6 &lt; .2
      7 &lt; .2
  }
  </code></pre>
  
  <p>The config looks like this:</p>
  
  <pre><code>config {
      # use html5 doctype
      doctype = html5
  
      # meta tag with charset
      metaCharset = utf-8
  
      # render with this charset
      renderCharset = utf-8
  
      # clean up HTML code
      disablePrefixComment  = 1
  
      # send additional headers
      #additionalHeaders = X-UA-Compatible: IE=Edge
  
      # do not put _INT-JS into external files
      removeDefaultJS = external
  
      # concatenate js files together
      concatenateJs = {$config.compression}
  
      # compress javascript files
      compressJs = {$config.compression}
  
      # move inline CSS to external files
      inlineStyle2TempFile = 1
  
      # concatenate css files together
      concatenateCss = {$config.compression}
  
      # compress CSS files
      compressCss = {$config.compression}
  
      # default target for external links
      extTarget = _blank
  
      # enable spam protect for email addresses and define the character offset
      spamProtectEmailAddresses = -4
  
      # in spam protected email link replace the at-sign with this html
      spamProtectEmailAddresses_atSubst = &lt;span style="display:none"&gt;not shown&lt;/span&gt;&amp;#64;
  
      # in spam protected email link replace the last dot with this html
      spamProtectEmailAddresses_lastDotSubst = &lt;span style="display:none"&gt;to make life hard for spam bots&lt;/span&gt;.
  
      # use L parameter for the language and pass through page type parameter
      linkVars = L,type,noCompress
  
      # language key to use for xlf translations (default/de/fr/etc.)
      language = {$lang.current_key}
  
      # set the locale (eg. de_CH.UTF-8)
      locale_all = {$lang.current_locale}
  
      # reference the sys_language record
      sys_language_uid = {$lang.current_uid}
  
      # language key to use for the &lt;html lang=""&gt; attribute
      htmlTag_langKey = {$lang.current_key}
  
      # if a page is not available in the current language, fall back to language 0 (default)
      sys_language_mode = content_fallback ; 0
  
      # hide content records, which do not exist in the current language, set to 1 if the default language of the record should be shown
      sys_language_overlay = hideNonTranslated
  
      # show images of default language content in overlay record (commaseparated list)
      sys_language_softMergeIfNotBlank = tt_news:image
  
      # default date format (overwrite for other languages)
      dateFormat = %A %e. %B %Y
  
      # default time format (overwrite for other languages)
      timeFormat = Uhr %H:%M Sek %S
  
      # enable the admin panel
      admPanel = 1
  
      # clear cache once a day
      cache_clearAtMidnight = 1
  
      # default caching period for a page
      cache_period = 172800
  
      # prefix #hash-links with the current path (needed for realurl)
      prefixLocalAnchors = all
  
      # enable real url if present
      tx_realurl_enable = 1
  
      # allow links to be made across different domains
      typolinkEnableLinksAcrossDomains = 1
  
      # force extbase to select all fe_users
      tx_extbase.persistence.classes.Tx_Extbase_Domain_Model_FrontendUser.mapping.recordType &gt;
  
      # force extbase to select all fe_groups
      tx_extbase.persistence.classes.Tx_Extbase_Domain_Model_FrontendUserGroup.mapping.recordType &gt;
  
  
  }
  </code></pre>
  
  <p>Thank you for any support!</p>
  
  <p>Regards
  Tizian</p>