我想从默认的Events portlet中只获得两位数的日期。在下面的例子中,这是“13”:
<dl class="portlet portletEvents">
<dt class="portletHeader"><a href="/mysite/events_listing">Next events</a></dt>
<dd class="portletItem">
<a title="" href="/mysite/events/my-event">Example event</a>
<span class="portletItemDetails"><span>13/04/2012 - 22/04/2012</span></span>
</dd>
<dd class="portletFooter"><a href="/mysite/events_listing">Next events…</a></dd>
</dl>
在根规则级别,我尝试了:
<replace css:theme="#event-day strong">
<xsl:template css:match="dl.portletEvents .portletItemDetails span">
<xsl:value-of select="substring(.,1,2)" />
</xsl:template>
</replace>
还有:
<replace css:theme="#event-day strong">
<xsl:value-of css:select="substring(dl.portletEvents .portletItemDetails span,1,2)" />
</replace>
其中没有一个有效。我该怎么办?
答案 0 :(得分:3)
这是可能的,但很难看:
<copy css:theme="#event-day strong">
<xsl:value-of select="substring((//dl[contains(concat(' ', normalize-space(@class), ' '), ' portletEvents ')]//span[contains(concat(' ', normalize-space(@class), ' '), ' portletItemDetails ')]/span/text()),1,2)"/>
</copy>
答案 1 :(得分:2)
通过修改底层的Events portlet,这可能是你最好的事情。但真正的重氮巫师之一可能有办法。