Ciao,

On 05/31/2013 09:50 AM, Yuri wrote:
Ciao!

analizzando il tema quintagroup.sunrain ho trovato nel suo rules.xml questo:

<replace css:theme="#portal-slogan">
<span id="portal-slogan"><xsl:value-of select="$slogan" /></span>
</replace>

notare "$slogan". Dal loro readme, leggo:

=======
If you need your slogan to be displayed in non-ASCII characters, go to *Site Setup -> Theming*, open *Advanced settings* tab. In *Parameter expressions* change the following field

 ``slogan = string:Type your slogan here``

 to

``slogan = python:path('context/slogan|string:').decode('utf-8', 'ignore')``

and in *Site Setup -> Zope Management Interface settings -> Properties* tab add a new property *slogan*, type ``string``, value ``your slogan`` and save.
=======


la cosa interessante non è tanto quella sulle accentate ma il fatto che si possono usare script e proprietà per riempire dei valori che vanno nel tema.

Quindi potete creare una variabile nel pannello di controllo Theming -> advanced settings -> Altri parametri (expressions).

La variabile può ritornare qualsiasi html, e può avere una qualsiasi provenienza. Quindi possiamo usare il tema di Plone come "template" e metterci dei pezzi con varia provenienza che non necessariamente stanno nella pagina. Ad esempio, si può creare una Pagina e poi inserirne il contenuto in una qualsiasi parte del tema, in base a certe condizioni, utile quando il sistema di view/portlet è complicato o troppo oneroso (buildout, riavvii, etc etc). Oppure decidere che il titolo degli oggetti plone può, in base a certe condizioni, essere differente. Posso, inoltre, anche agire su classi, id, dei vari tag usando le variabili.

Penso sia una feature di Diazo presente da tempo ma che non avevo mai considerato e che va usata con parsimonia perché credo che il tema sia cachato in qualche modo e quindi non si ha quella dinamicità che ci si aspetta.

Qualcuno ha esperienze a riguardo?

in realtá per fare queste cose penso sia meglio usare href="/@@vista-che-ti-sputa-fuori-html" (e dovrebbe funzionare anche con script e template), vedi https://pypi.python.org/pypi/plone.app.theming#advanced-modification:

<!-- Pull in extra navigation from a browser view on the Plone site root -->
<after
    css:theme-children="#leftnav"
    css:content=".navitem"
    href="/@@extra-nav"
    />

Di sicuro l'utilizzo delle variabili é molto utile per porre delle condizioni nelle regole. Ad esempio, per un nostro cliente dovevamo nascondere il link di login per il mondo, tranne che per l'istanza degli editor che gira su admin.domain.it.

Farlo é stato molto semplice con il parametro

show_login = python: 'admin' in request['URL']

e poi

<prepend if="$show_login"
      css:theme="#foo
      css:content-children="div#portal-personaltools-wrapper"
      />

Chiaramente é comodo anche per inserire piccole parti di testo, come uno slogan, e puó essere un ottimo strumento per soluzioni 'on-the-fly' da parte del siteadmin... basta non abusarne :)

_______________________________________________
Plone-IT mailing list
[email protected]
https://lists.plone.org/mailman/listinfo/plone-plone-it
http://plone-regional-forums.221720.n2.nabble.com/Plone-Italy-f221721.html

Rispondere a