wp_nav_menu (), come cambiare la classe <li>?
-
-
Quipuoi aggiungere una classe diversain ul> li> a https://sdtuts.com/wordpress-add-custom-class-in-wp_nav_menu-links/Here you can add different class in ul > li >a https://sdtuts.com/wordpress-add-custom-class-in-wp_nav_menu-links/
- 0
- 2018-06-09
- Rameez SOOMRO
-
4 risposta
- voti
-
- 2011-12-26
Utilizza un deambulatorepersonalizzato ,rimuovitutto ciò chenonti serveeaggiungi letue classi.Ecco un deambulatore che utilizzoper ottenere unelenco con unmarkuppulito: T5_Nav_Menu_Walker_Simple .
Puoi anchefiltrare
'nav_menu_css_class'
o'wp_nav_menu_items'
.Ma una classe di camminatori èpiùfacile da capiree da controllare secondome.Use a custom walker, remove anything you don’t need and add your classes. Here is a walker I use to get a list with clean markup: T5_Nav_Menu_Walker_Simple.
Your could also filter
'nav_menu_css_class'
or'wp_nav_menu_items'
. But a walker class is easier to understand and to control in my opinion.-
Grazie Toscho,ho scoperto chenellanuova versione di Wordpress (3.3)possiamo aggiungere una classepersonalizzataper ogni voce dimenu che risolveilmioproblema.Hoprovato lo script chemi hai suggerito (T5_Nav_Menu_Walker_Simple) che rimuovetutto da "
- ",comepossiamo controllare qualielementi vogliamomantenere?
Thanks Toscho, I just find that in the new version of Wordpress (3.3) we can add custom class fir each menu items wich kind of solve my problem. I tried the script you suggested to me (T5_Nav_Menu_Walker_Simple) which does strip everything from the `- `, how can we control which elements we want to keep?
- 0
- 2011-12-26
- Christian
-
@Christian Puoi cambiareil deambulatore di cui haibisogno,è solo unesempiomolto semplice.Per vedere qualiinformazioni sono disponibili,aggiungi un `print_r ($item,TRUE)` a ogni `li`.Quindi decidi cosafarne.:)@Christian You can change the walker as you need, it is just a very basic example. To see which information is available, add a `print_r( $item, TRUE )` to each `li`. Then decide what to do with it. :)
- 1
- 2011-12-26
- fuxia
-
Questomi haindirizzatonellagiusta direzione,ciò di cui avevobisognoerail ** wp_nav_menu **,**ma ** avevobisogno di cambiareilparametro 'container_class',per lavorareperilmio caso d'usoparticolare,in cuiin alcune condizioni ho scambiatoilmainmenuper un altro,manecessitava che le classifossero coerentiper css.This pointed me in the right direction, what I needed was the **wp_nav_menu**, **but** I needed to change the 'container_class' parameter, to work for my particular use case, where I on some condition swapped the main menu for another one, but needed the classes to be consistent for css.
- 0
- 2018-01-25
- D. Dan
-
- 2012-09-22
vai aimenu aspetto> - selezionailmenu desiderato - vai a "opzioni schermo"in alto a destra,seleziona "classi css" - aggiungi una classe a ciascuna voce dimenu ..
go to appearance > menus - select the menu you want - go to "screen options" at the top right, select "css classes" - add a class to each menu item..
-
- 2019-04-22
Impostazione della classe
<li>
sunav-link
,come richiesto dabootstrap 4.3:function add_menu_link_class($atts, $item, $args) { $atts['class'] = 'nav-link'; return $atts; } add_filter('nav_menu_link_attributes', 'add_menu_link_class', 1, 3);
Puoi anche annullare l'impostazione dell'attributo
id
in quell'array.Setting the
<li>
class tonav-link
, as bootstrap 4.3 needs it:function add_menu_link_class($atts, $item, $args) { $atts['class'] = 'nav-link'; return $atts; } add_filter('nav_menu_link_attributes', 'add_menu_link_class', 1, 3);
You can also unset the
id
attribute in that array. -
- 2013-06-13
Comeindicatonell'ultimoposter,puoi aggiungere letue classitramitei menu aspetto> con le classi CSS spuntatenelle opzioni dello schermo.Nel deambulatore,puoi accedere a ciò a cuientritramite:
$item_output .= '<a'. $attributes .' class="'. $item->classes[0].'">';
L'hopersino usatoper aggiungereimmaginipre-nominatenelmenu: unpo 'complicato,mafunziona.
<img src="theme/images/navigation/'.$item->classes[0].'" width="48" height="48">
As the last poster mentioned, you can add your own classes via appearance > menus with CSS classes ticked in the screen options. In the walker, you can access what you enter there via:
$item_output .= '<a'. $attributes .' class="'. $item->classes[0].'">';
I have even used this to add pre-named images in the menu - a little flakey, but it works.
<img src="theme/images/navigation/'.$item->classes[0].'" width="48" height="48">
Sto creando unmenuperilmio sito web. La statica ha questo aspetto:
Sono riuscito a capire comepersonalizzareiltag
<ul>
,pereliminareiltag<div>
automatico. Ma ora,vogliopersonalizzareiltag<li>
perpoter assegnare diversinomi diclass
per controllare un comportamento specificotramite CSS. Quando usowp_nav_menu()
l'output èil seguente:Desideroeliminare l '
id
nei tag<li>
e modificare laclass
per riflettereilnome dellapagina Voglio collegarmi a. Fondamentalmente voglio restituire la stessa cosa delprimoframmento di codicein questopost.Ilmotivoper cui lofaccio è che utilizzoimmaginipersonalizzate controllate dalmio CSSinvece ditestonormale.
Èpossibile? Quale strategia dovrei usareper superare questoproblema?