2017-03-04 1 views
2

J'ai créé un thème et copié le navigation.ftl à partir de Liferay Classic Theme mais dans mon thème, le titre de navigation s'affiche comme indiqué dans la capture d'écran ci-dessous.Comment supprimer le titre du menu de navigation dans le thème liferay?

enter image description here

Si je suis connecté en tant qu'administrateur, je suis en mesure de modifier le texte et le rendre blanc et Save et va. Mais quand je rafraîchis la page, ça revient, ce que je pense être un bug. Mais ma question est, Qu'est-ce que je fais dans le thème de sorte que le titre n'apparaisse pas du tout partout.

L'extrait de code de navigation.ftl

<#assign VOID = freeMarkerPortletPreferences.setValue("portletSetupPortletDecoratorId",  "barebone") /> 

<div aria-expanded="false" class="collapse navbar-collapse" id="navigationCollapse"> 
<#if has_navigation && is_setup_complete> 
    <nav class="${nav_css_class} site-navigation" id="navigation" role="navigation"> 
     <div class="navbar-right"> 
      <@liferay.navigation_menu default_preferences="${freeMarkerPortletPreferences}" /> 
     </div> 
    </nav> 
</#if> 
</div> 

<#assign VOID = freeMarkerPortletPreferences.reset() /> 

Répondre

1

J'ai eu le même problème et a constaté que dans mon thème personnalisé (à partir du thème Styled en utilisant le générateur de thème) le fichier portlet.ftl a la ligne:

<h2 class="portlet-title-text">${portlet_title}</h2> 

le portlet.ftl dans le thème classique a:

<#if portlet_display.getPortletDecoratorId() != "barebone"> 
     <h2 class="portlet-title-text">${portlet_title}</h2> 
    </#if> 

J'ai ajouté cette instruction #if autour du h2 à mon portlet.ftl et maintenant le titre n'est pas affiché si Barebone est le décorateur choisi pour un portlet. Cela fonctionne si Barebone est défini via un modèle ou via le menu Look and Feel dans l'admin.

+0

Mucho gracias! Mettra à jour mon code à cette approche simple! –

0

j'ai pu cacher le titre (de menu de navigation portlet) en utilisant le CSS suivant dans mon thème personnalisé

.portlet-static.portlet-static-end.portlet-barebone.portlet-navigation .portlet-content.portlet-content-editable .portlet-title-text { display:none !important; }

Edition: La solution ci-dessus a fonctionné quand je me suis connecté en tant qu'administrateur seulement.

Je l'ai remplacé par ce qui suit pour le cacher pour les utilisateurs réguliers ainsi:

section#portlet_com_liferay_site_navigation_menu_web_portlet_SiteNavigationMenuPortlet.portlet h2.portlet-title-text { display:none !important; }

+0

Alors un peu de chance avec la mise à jour de la source, où ces classes ont été appliquées dans des fichiers de modèle? –