我正在 Plone 4 站点上创建一个辅助导航栏,用于查看子文件夹的内容。
我的网站结构如下所示:
Plone Site
|
|--Folder1
|--PageA
|--PageB
|--Folder2
|--PageC
|--PageD
我的故事如下(我很欣赏这可能不是最优雅的代码):
<tal:subsections tal:define="isDocument python:getattr(context,'portal_type','') == 'Document';
isFolder python:getattr(context,'portal_type','') == 'Folder';
subitemsDocument python:context.aq_parent.aq_inner.getFolderContents(contentFilter={'portal_type':'Document'});
subitemsFolder python:context.getFolderContents(contentFilter={'portal_type':'Document'});
root_url context/portal_url;
front_url string:${root_url}/front-page;
current_url context/absolute_url;" tal:condition="context/portal_membership/isAnonymousUser">
<ul id="subnav" tal:condition="isFolder">
<tal:subtabsfolder tal:repeat="subitem subitemsFolder">
<li tal:define="item_url subitem/getURL"
tal:attributes="class python:current_url==item_url and 'selected' or 'plain'">
<a tal:attributes="href subitem/getURL" tal:content="subitem/Title"/>
</li>
</tal:subtabsfolder>
</ul>
<ul id="subnav" tal:condition="isDocument">
<tal:subtabsdocument tal:repeat="subitem subitemsDocument">
<li tal:define="item_url subitem/getURL"
tal:attributes="class python:current_url==item_url and 'selected' or 'plain'">
<a tal:attributes="href subitem/getURL" tal:content="subitem/Title"
tal:condition="python:front_url != current_url"/>
</li>
</tal:subtabsdocument>
</ul>
</tal:subsections>
一切运行良好,我唯一的问题是我没有办法告诉模板忽略已用作容器默认视图的项目。
我可以使用 TALES 条件来完成此任务吗?
非常感谢任何帮助,谢谢。