|
|
|
faber
|
Vorrei che il "mio" codice di sottonavigazione mostrasse solo gli elementi che hanno la proprietà secnav (la setto da ZMI). Mi sembra che la condizione così espressa tal:condition="exists:navbarobject/secnav"
possa andare bene. Eppure funziona solo se si inserisce nel tag <a>, verso la fine del codice. Così facendo, però, vengono creati i pallini dell'elenco puntato anche per gli elementi senza la proprietà secnav (ovviamente senza essere affiancati dall'ancora e da link)
Ove potrei piazzare la condizione affinchè non vengano creati i tag <li> per gli elementi senza la proprietà secnav? PS: ho provato a mettere la condizione in un tal:block sopra il tag <li> ma non funge. E non funge nemmeno metterà nel tag <li>, forse il posto più avvio.
Ecco il codice del sottomenu. <p class="hiddenStructure">Sottomenu principale</p>
<ul id="portal-subnavbar"
tal:define="navbardata view/contentlist;
navbarobjects python: navbardata['contents'];
navbarselected python: navbardata['selected'];"
tal:condition="python: navbardata['contents'] != []">
<li tal:repeat="navbarobject navbarobjects"
tal:attributes="class python: navbarobject == navbarselected and 'selected' or 'plain';">
<a href="#"
tal:attributes="href navbarobject/absolute_url;
title navbarobject/secnav|navbarobject/title_or_id;"
tal:content="navbarobject/secnav|navbarobject/title_or_id">Navbar</a>
</li>
</ul> -- Faber -------------------- "Life is what happens to you while you're busy making other plans" - J. Lennon _______________________________________________ Plone-IT mailing list [hidden email] http://lists.plone.org/mailman/listinfo/plone-it http://www.nabble.com/Plone---Italy-f21728.html |
||||||||||||||||
|
SauZheR at gOOgle
|
Il navigation e' costruito in maniera tale da filtrare i contenuti
gia' per stato di workflow e/o portal_type. Sicuro che non puoi rivedere le tue esigenze? Eviteresti di mettere mano al codice del navigation che e' tutt'altro che semplice. bye Il giorno 24 agosto 2009 15.56, Fabrizio Rota<[hidden email]> ha scritto: > Vorrei che il "mio" codice di sottonavigazione mostrasse solo gli elementi > che hanno la proprietà secnav (la setto da ZMI). > Mi sembra che la condizione così espressa > tal:condition="exists:navbarobject/secnav" > possa andare bene. > Eppure funziona solo se si inserisce nel tag <a>, verso la fine del codice. > Così facendo, però, vengono creati i pallini dell'elenco puntato anche per > gli elementi senza la proprietà secnav (ovviamente senza essere affiancati > dall'ancora e da link) > Ove potrei piazzare la condizione affinchè non vengano creati i tag <li> per > gli elementi senza la proprietà secnav? > PS: ho provato a mettere la condizione in un tal:block sopra il tag <li> ma > non funge. E non funge nemmeno metterà nel tag <li>, forse il posto più > avvio. > Ecco il codice del sottomenu. > > <p class="hiddenStructure">Sottomenu principale</p> <ul > id="portal-subnavbar" tal:define="navbardata view/contentlist; navbarobjects > python: navbardata['contents']; navbarselected python: > navbardata['selected'];" tal:condition="python: navbardata['contents'] != > []"> <li tal:repeat="navbarobject navbarobjects" tal:attributes="class > python: navbarobject == navbarselected and 'selected' or 'plain';"> <a > href="#" tal:attributes="href navbarobject/absolute_url; title > navbarobject/secnav|navbarobject/title_or_id;" > tal:content="navbarobject/secnav|navbarobject/title_or_id">Navbar</a> </li> > </ul> > > > > > > -- > Faber > -------------------- > "Life is what happens to you while you're busy making other plans" - J. > Lennon > > _______________________________________________ > Plone-IT mailing list > [hidden email] > http://lists.plone.org/mailman/listinfo/plone-it > http://www.nabble.com/Plone---Italy-f21728.html > -- bye SauZheR ************************************ l'iterazione è umana... la ricorsione, Divina! ************************************ reply to: sauzher AT gmail DOT com _______________________________________________ Plone-IT mailing list [hidden email] http://lists.plone.org/mailman/listinfo/plone-it http://www.nabble.com/Plone---Italy-f21728.html |
||||||||||||||||
|
faber
|
Non sto modificando la navigazione principale ma una navigazione orizzontale secondaria. La navigazione secondaria che uso (subnavbar di neteasy) fa spuntare indiscriminatamente ogni cosa ci sia al secondo livello mettendo sulla tab di sottonavigazione il nome dell'oggetto (che può essere molto lungo).Per evitare di popolare con troppi elementi bisogna nascondere l'elemento alla navigazione, ma questo non mi piace, perchè poi l'oggetto non sbuca nei portlet di navigazione laterali, nella mappa del sito ecc.
La condizione tal:condition="exists:navbarobject/secnav" doveva serviva proprio a far sbucare nella barra secondaria solo gli oggetti per i quali avevo aggiunto la proprietà "secnav" da ZMI, ignorando gli altri.
La cosa, in parte, funziona, solo che me la accetta solo se posta nella parte più annidata del ciclo, quella che definisce le ancore, per cui le ancore non vengono davvero generate ma i punti elenco si.
Nell'esempio che segue il "filtro" su secnav ha permesso la creazione del primo punto elenco con ancora, ma non ha potuto evitare la creazione dei due punti elenco successivi, seppur "vuoti".
<ul> <li> <a href....... elemento con secnav impostato> elemento 1</a> </li> <li> </ll> <li></li> </ul>
Per la questione dei nomi lunghi, ho fatto in modo che nella barra di navigazione secondaria venga mostrato il contenuto del parametro "secnav" al posto del solito "title or id", come si evince dal codice
<a href="#" tal:attributes="href navbarobject/absolute_url; title navbarobject/secnav;" tal:content="navbarobject/secnav">Navbar</a> Rileggendomi, mi rendo conto che la mia spiegazione non è un esempio luminoso di chiarezza....... Se servono delucidazioni...... faber
Il giorno 24 agosto 2009 18.52, SauZheR <[hidden email]> ha scritto: Il navigation e' costruito in maniera tale da filtrare i contenuti -- Fabrizio -------------------- "Life is what happens to you while you're busy making other plans" - J. Lennon _______________________________________________ Plone-IT mailing list [hidden email] http://lists.plone.org/mailman/listinfo/plone-it http://www.nabble.com/Plone---Italy-f21728.html |
||||||||||||||||
|
SauZheR at gOOgle
|
io non conosco il codice originario. Pero' quando dici "me la accetta
solo nella parte piu' annidata del ciclo" mi vien da pensare. A ripetersi sono i tag <li> quindi grosso modo ci sono 2 casi: 1) il tal repeat e' direttamente nel tag <li>: <li tal:repeat="item items"> <a tal:content="item/proprieta... /></li> 2) il tal repeat e' esterno <tal:block repeat="item items"> <li...><a.../></li> </tal:block> il motivo per cui non ti "accetta" la codition probabilmente e' che il ciclo e' implementato come nel primo caso e, vedi zopebook reference ZPT, c'e' un ordine preciso con cui vengono eseguite le istruzioni tal: 1. define 2. condition 3. repeat 4. content or replace 5. attributes 6. omit-tag se scrivi <li tal:repeat="item items" tal:condition="tuacondizione">... viene eseguita prima la condition e poi la repeat. Poiche' la tua condizione si basa sul contenuto del ciclo (la variabile item) non puoi porre la condizione nello stesso tag. Devi riscrivere il codice come nell'esempio 2 facendo salire di un livello il ciclo con un qualsiasi tag trasparente (<tal:ciclo repeat....> ad esempio) e poi disponendo la condizione sulla variabile ciclanda (nel mio caso item) nei tag annidati (primo <li>) Credo che cosi' risolvi. alessandro. Il giorno 24 agosto 2009 19.23, Fabrizio Rota<[hidden email]> ha scritto: > Non sto modificando la navigazione principale ma una navigazione orizzontale > secondaria. > La navigazione secondaria che uso (subnavbar di neteasy) fa spuntare > indiscriminatamente ogni cosa ci sia al secondo livello mettendo sulla tab > di sottonavigazione il nome dell'oggetto (che può essere molto lungo). > Per evitare di popolare con troppi elementi bisogna nascondere l'elemento > alla navigazione, ma questo non mi piace, perchè poi l'oggetto non sbuca nei > portlet di navigazione laterali, nella mappa del sito ecc. > La condizione > tal:condition="exists:navbarobject/secnav" > doveva serviva proprio a far sbucare nella barra secondaria solo gli > oggetti per i quali avevo aggiunto la proprietà "secnav" da ZMI, ignorando > gli altri. > La cosa, in parte, funziona, solo che me la accetta solo se posta nella > parte più annidata del ciclo, quella che definisce le ancore, per cui le > ancore non vengono davvero generate ma i punti elenco si. > Nell'esempio che segue il "filtro" su secnav ha permesso la creazione del > primo punto elenco con ancora, ma non ha potuto evitare la creazione dei due > punti elenco successivi, seppur "vuoti". > <ul> > <li> <a href....... elemento con secnav impostato> elemento 1</a> </li> > <li> </ll> > <li></li> > </ul> > > > Per la questione dei nomi lunghi, ho fatto in modo che nella barra di > navigazione secondaria venga mostrato il contenuto del parametro "secnav" al > posto del solito "title or id", come si evince dal codice > > <a href="#" tal:attributes="href navbarobject/absolute_url; > title navbarobject/secnav;" > tal:content="navbarobject/secnav">Navbar</a> > > Rileggendomi, mi rendo conto che la mia spiegazione non è un esempio > luminoso di chiarezza....... > Se servono delucidazioni...... > faber > Il giorno 24 agosto 2009 18.52, SauZheR <[hidden email]> ha scritto: >> >> Il navigation e' costruito in maniera tale da filtrare i contenuti >> gia' per stato di workflow e/o portal_type. >> >> Sicuro che non puoi rivedere le tue esigenze? Eviteresti di mettere >> mano al codice del navigation che e' tutt'altro che semplice. >> >> bye >> >> Il giorno 24 agosto 2009 15.56, Fabrizio Rota<[hidden email]> >> ha scritto: >> > Vorrei che il "mio" codice di sottonavigazione mostrasse solo gli >> > elementi >> > che hanno la proprietà secnav (la setto da ZMI). >> > Mi sembra che la condizione così espressa >> > tal:condition="exists:navbarobject/secnav" >> > possa andare bene. >> > Eppure funziona solo se si inserisce nel tag <a>, verso la fine del >> > codice. >> > Così facendo, però, vengono creati i pallini dell'elenco puntato anche >> > per >> > gli elementi senza la proprietà secnav (ovviamente senza essere >> > affiancati >> > dall'ancora e da link) >> > Ove potrei piazzare la condizione affinchè non vengano creati i tag <li> >> > per >> > gli elementi senza la proprietà secnav? >> > PS: ho provato a mettere la condizione in un tal:block sopra il tag <li> >> > ma >> > non funge. E non funge nemmeno metterà nel tag <li>, forse il posto più >> > avvio. >> > Ecco il codice del sottomenu. >> > >> > <p class="hiddenStructure">Sottomenu principale</p> <ul >> > id="portal-subnavbar" tal:define="navbardata view/contentlist; >> > navbarobjects >> > python: navbardata['contents']; navbarselected python: >> > navbardata['selected'];" tal:condition="python: navbardata['contents'] >> > != >> > []"> <li tal:repeat="navbarobject navbarobjects" tal:attributes="class >> > python: navbarobject == navbarselected and 'selected' or 'plain';"> <a >> > href="#" tal:attributes="href navbarobject/absolute_url; title >> > navbarobject/secnav|navbarobject/title_or_id;" >> > tal:content="navbarobject/secnav|navbarobject/title_or_id">Navbar</a> >> > </li> >> > </ul> >> > >> > >> > >> > >> > >> > -- >> > Faber >> > -------------------- >> > "Life is what happens to you while you're busy making other plans" - J. >> > Lennon >> > >> > _______________________________________________ >> > Plone-IT mailing list >> > [hidden email] >> > http://lists.plone.org/mailman/listinfo/plone-it >> > http://www.nabble.com/Plone---Italy-f21728.html >> > >> >> >> >> -- >> bye >> SauZheR >> ************************************ >> l'iterazione è umana... >> la ricorsione, Divina! >> ************************************ >> reply to: sauzher AT gmail DOT com >> >> _______________________________________________ >> Plone-IT mailing list >> [hidden email] >> http://lists.plone.org/mailman/listinfo/plone-it >> http://www.nabble.com/Plone---Italy-f21728.html > > > > -- > Fabrizio > -------------------- > "Life is what happens to you while you're busy making other plans" - J. > Lennon > > _______________________________________________ > Plone-IT mailing list > [hidden email] > http://lists.plone.org/mailman/listinfo/plone-it > http://www.nabble.com/Plone---Italy-f21728.html > -- bye SauZheR ************************************ l'iterazione è umana... la ricorsione, Divina! ************************************ reply to: sauzher AT gmail DOT com _______________________________________________ Plone-IT mailing list [hidden email] http://lists.plone.org/mailman/listinfo/plone-it http://www.nabble.com/Plone---Italy-f21728.html |
||||||||||||||||
|
faber
|
SIIIIII!!!!!!!!!! Grazie per i consigli meticolosi! Ora funziona molto bene: la barra di navigazione secondaria si popola SOLO con gli elementi che DICO IO!!!!
Così posso finalmente decidere che la barra di navigazione secondaria sia al servizio SOLO delle cartelle che ho deciso di mettere nella barra principale. G R A Z I E faber _______________________________________________ Plone-IT mailing list [hidden email] http://lists.plone.org/mailman/listinfo/plone-it http://www.nabble.com/Plone---Italy-f21728.html |
||||||||||||||||
| Free Embeddable Forum Powered by Nabble | Help |