Open RukawaShow opened 7 months ago
credo che il problema sia il walker standard ovvero:
class Main_Menu_Walker extends Walker_Nav_Menu { function start_el(&$output, $item, $depth=0, $args=[], $id=0) { $output .= "
// set data-element for crawler
$data_element = '';
if ($item->title == 'Amministrazione') $data_element .= 'management';
if ($item->title == 'Novità') $data_element .= 'news';
if ($item->title == 'Servizi') $data_element .= 'all-services';
if ($item->title == 'Vivere il Comune') $data_element .= 'live';
if ($item->url && $item->url != '#') {
$output .= '<a class="nav-link '.$active_class.'" href="' . $item->url . '" data-element="'.$data_element.'">';
} else {
$output .= '<span>';
}
$output .= $item->title;
if ($item->url && $item->url != '#') {
$output .= '</a>';
} else {
$output .= '</span>';
}
}
}
qualcuno di voi l ha modificato se si come?
Ciao, il menu di primo livello non supporta un sotto-menu in modo nativo
grazie per la risposta ma nella "pagina statica" è previsto come potrei risolvere questo problema?
Ciao, il menu di primo livello non supporta un sotto-menu in modo nativo
oppure quale tipo di menu dovrei usare?
questo è quello che uso adesso
ma nella "pagina statica" è previsto
In quale pagina? Nella demo online delle pagine statiche il menù primario non ha sottomenù.
Quindi non credo che ci sia un riferimento "ufficiale" per il tema Comuni. È vero che il componente di Boostrap Italia esiste, e si potrebbe usare quello per l'html. Ma:
credo che il problema sia il walker standard [...] [...] quale tipo di menu dovrei usare?
Il walker del tema, appunto, così com'è non è adatto.
Com'è, si limita a: 1) aggiungere gli attrib. data-element al link in base al titolo, 2) l'attivazione del menù in base al "gruppo" e al title, 3) una classe css al tag <li>
, e 4) a sostituire l'<a>
con uno <span>
se l'url è annullato.
Cose, tra parentesi, che forse si sarebbero potute ottenere anche solo con i filtri standard in _Walker_Nav_Menu::start_el()_. Filtri che invece sono stati eliminati (per "sicurezza"?), e non si possono più usare per altre correzioni, in un child theme ad es.
Per fargli usare l'html di BI, bisogna ridefinire in override anche i metodi _startlvl() e _endlvl(), per racchiudere la <ul/>
dentro ai <div/>
richiesti. E poi far reagire _startel() a $this->has_children
, per aggiungere classi varie, dropdown-toggle, icone, ecc.
Io, invece, ho trovato un problema anche per semplici voci di menù di primo livello.
Nella homepage tutte le voci del menù principale risultano avere la classe "active". Mentre, nelle altre pagine, nessuna ha la classe "active", nemmeno quella relativa alla pagina corrente. Sapete come mai?
Il problema, in pratica, sta qua:
if ($item->attr_title == $group) { $active_class = 'active'; }
In homepage, in pratica, le variabili _$item->attrtitle e $group sono vuote, per quello viene applicata la classe "active". Mentre, nelle altre pagine, risulta non esserci l'attributo title, di base. E se lo inserisco manualmente (da "Aspetto > Menu"), non funziona lo stesso, a meno che non lo inserisca come se fosse uno slug (tipo "vivere-il-comune").
Non capisco se succeda così a chiunque oppure se c'è un problema con la mia installazione.
Io, invece, ho trovato un problema anche per semplici voci di menù di primo livello.
Nella homepage tutte le voci del menù principale risultano avere la classe "active". Mentre, nelle altre pagine, nessuna ha la classe "active", nemmeno quella relativa alla pagina corrente. Sapete come mai?
Il problema, in pratica, sta qua:
if ($item->attr_title == $group) { $active_class = 'active'; }
In homepage, in pratica, le variabili _$item->attrtitle e $group sono vuote, per quello viene applicata la classe "active". Mentre, nelle altre pagine, risulta non esserci l'attributo title, di base. E se lo inserisco manualmente (da "Aspetto > Menu"), non funziona lo stesso, a meno che non lo inserisca come se fosse uno slug (tipo "vivere-il-comune").
Non capisco se succeda così a chiunque oppure se c'è un problema con la mia installazione.
Vedi qui: https://github.com/italia/design-comuni-wordpress-theme/issues/241#issuecomment-1498571644
Io, invece, ho trovato un problema anche per semplici voci di menù di primo livello. Nella homepage tutte le voci del menù principale risultano avere la classe "active". Mentre, nelle altre pagine, nessuna ha la classe "active", nemmeno quella relativa alla pagina corrente. Sapete come mai? Il problema, in pratica, sta qua:
if ($item->attr_title == $group) { $active_class = 'active'; }
In homepage, in pratica, le variabili _$item->attrtitle e $group sono vuote, per quello viene applicata la classe "active". Mentre, nelle altre pagine, risulta non esserci l'attributo title, di base. E se lo inserisco manualmente (da "Aspetto > Menu"), non funziona lo stesso, a meno che non lo inserisca come se fosse uno slug (tipo "vivere-il-comune"). Non capisco se succeda così a chiunque oppure se c'è un problema con la mia installazione.Vedi qui: #241 (comment)
Grazie!
Ho letto e, infatti, viene suggerito di inserire l'attributo title come se fosse uno slug (tipo "vivere-il-comune"). Mi chiedevo se, invece, fosse possibile un qualche automatismo, anche inserendo, eventualmente, l'attributo title in altro modo.
Avrei risolto, momentaneamente, cambiando il controllo che permette di inserire la classe "active" (basandomi sull'URL, anziché sull'attributo title).
Io, invece, ho trovato un problema anche per semplici voci di menù di primo livello. Nella homepage tutte le voci del menù principale risultano avere la classe "active". Mentre, nelle altre pagine, nessuna ha la classe "active", nemmeno quella relativa alla pagina corrente. Sapete come mai? Il problema, in pratica, sta qua:
if ($item->attr_title == $group) { $active_class = 'active'; }
In homepage, in pratica, le variabili _$item->attrtitle e $group sono vuote, per quello viene applicata la classe "active". Mentre, nelle altre pagine, risulta non esserci l'attributo title, di base. E se lo inserisco manualmente (da "Aspetto > Menu"), non funziona lo stesso, a meno che non lo inserisca come se fosse uno slug (tipo "vivere-il-comune"). Non capisco se succeda così a chiunque oppure se c'è un problema con la mia installazione.Vedi qui: #241 (comment)
Grazie!
Ho letto e, infatti, viene suggerito di inserire l'attributo title come se fosse uno slug (tipo "vivere-il-comune"). Mi chiedevo se, invece, fosse possibile un qualche automatismo, anche inserendo, eventualmente, l'attributo title in altro modo.
Avrei risolto, momentaneamente, cambiando il controllo che permette di inserire la classe "active" (basandomi sull'URL, anziché sull'attributo title).
Ciao, ho lo stesso problema. Puoi spiegarmi più in dettaglio come hai effettuato la modifica? Grazie
Io, invece, ho trovato un problema anche per semplici voci di menù di primo livello. Nella homepage tutte le voci del menù principale risultano avere la classe "active". Mentre, nelle altre pagine, nessuna ha la classe "active", nemmeno quella relativa alla pagina corrente. Sapete come mai? Il problema, in pratica, sta qua:
if ($item->attr_title == $group) { $active_class = 'active'; }
In homepage, in pratica, le variabili _$item->attrtitle e $group sono vuote, per quello viene applicata la classe "active". Mentre, nelle altre pagine, risulta non esserci l'attributo title, di base. E se lo inserisco manualmente (da "Aspetto > Menu"), non funziona lo stesso, a meno che non lo inserisca come se fosse uno slug (tipo "vivere-il-comune"). Non capisco se succeda così a chiunque oppure se c'è un problema con la mia installazione.Vedi qui: #241 (comment)
Grazie! Ho letto e, infatti, viene suggerito di inserire l'attributo title come se fosse uno slug (tipo "vivere-il-comune"). Mi chiedevo se, invece, fosse possibile un qualche automatismo, anche inserendo, eventualmente, l'attributo title in altro modo. Avrei risolto, momentaneamente, cambiando il controllo che permette di inserire la classe "active" (basandomi sull'URL, anziché sull'attributo title).
Ciao, ho lo stesso problema. Puoi spiegarmi più in dettaglio come hai effettuato la modifica? Grazie
Ciao, certo.
Ho modificato le righe 25-27 del file main-menu.php (nella cartella "walkers") nel seguente modo:
if (!empty($group) && str_contains($item->url, $group)) { $active_class = 'active'; }
Prerequisiti
Descrivi il problema
Salve a tutti ho appena installato il tema 1.7.5 per sviluppo di sito per comuni ma nel momento in cui voglio creare/modificare il Main menu con "sottopagine" il dropdown non funziona mi vengono messi i menu uno vicono all'altro.
Cosa dovrei fare? grazie mille a chi risponderà.
Includi link o screenshot
No response
Su quale sisitema operativo stai riscontrando il problema?
Windows
Su quale browser stai riscontrando il problema?
Qualsiasi
Che versione del tema stai utilizzando?
1.7.5