Skip to content. | Skip to navigation

Personal tools

Navigation

You are here: Home / Tips / Diazo Practice

Diazo Practice

Logo

<copy attributes="href"
 theme="/html/body/div[2]/div[1]/div/div[1]/a"
 content="//*[@id='portal-logo']" />

Toolbar

<replace css:theme="#portal-toolbar"
         css:content-children="#edit-bar"
         css:if-not-content=".ajax_load"
         css:if-content=".userrole-authenticated" />

diazotheme.plonecom: Products.Carousel (might need plone.com branch) browser/configure.zcml ContentActionsViewlet -> ContentViewsViewlet, viewlets.interfaces.IContentViews -> IToolbar, setuphandlers.py IContentViews -> IToolbar, zope.app.publisher, zope.app.component, zope.app.pagetemplate, zope.app.container, zope.hookable, zope.copypastemove 編輯介面在 Plone5 還要修訂

plonetheme.diazo_sunburst publisher theme quintagroup.theme.publishers

Identifying ControlPanel

grabs each list item from Plone, and inserts a list item as a divider between each one. Note that the css: prefix can also be added to the XSLT within Diazo rules to use CSS style selectors.

<replace css:theme-children=".mainNav">
 <xsl:for-each css:select="#portal-globalnav > li">
   <li class="divider"></li>
   <xsl:apply-templates css:select="li.plain, li.selected"/>
 </xsl:for-each>
 <li class="divider"></li>
</replace>

pulls all links from the user dropdown and puts them into a list, instead of having them in a definition list.

<xsl:for-each css:select="#portal-personaltools a">
 <li>
   <xsl:copy-of select="current()"/>
 </li>
</xsl:for-each>

Managing Resources

Firebase

mysite.com/service1 vs service1.com

if-path works for mysite.com/service1 but not for service1.com (using web server rewrite), maybe template-some_view is worth trying.

Parent vs Children Themes

Turbo XDV Diazo

favicon customization