Hallo,
ich möchte gern der aktiven site_action eine css-klasse geben, um den punkt hervorheben zu können. das funktioniert mit folgendem zpt-code schon ganz gut, allerdings nicht für die startseite:
Code
<ul id="portal-siteactions" class="portal-siteactions"
tal:define="accesskeys python: {'sitemap' : '3', 'accessibility' : '0', 'contact' : '9'};"
tal:condition="view/site_actions"
i18n:domain="plonetheme.begtheme">
<tal:loop tal:repeat="saction view/site_actions">
<li tal:define="first python: repeat['saction'].start and 'first-action' or '';
last python: repeat['saction'].end and 'last-action' or '';
here_url request/URL;
saction_url saction/url;
is_current python: here_url == saction_url and ' current' or '';
position python: first or last or 'plain';"
tal:attributes="id string:siteaction-${saction/id};class string:${position}${is_current}"><a
href=""
tal:define="title saction/title;
id saction/id;
accesskey python: accesskeys.get(id, '');"
i18n:attributes="title"
i18n:translate=""
tal:content="title"
tal:attributes="href saction/url;
title title;
accesskey accesskey;"
>Site action</a></li>
</tal:loop>
</ul>
Alles anzeigen
das problem liegt wohl bei "here_url request/URL;". bei der startseite hat here_url den wert "http://.../front-page/document_view" und saction_url aber "http://.../". Kann ich das ganze anders lösen? Ich bin noch relativ neu auf dem gebiet (komme eher aus der php-ecke) und finde auch nirgendwo eine referenz, welche objekte dem template zur verfügung stehen und welche methoden/eigenschaften diese haben (z.B. request etc.)
Danke