gpt4 book ai didi

plone - 在 Plone 文件夹 View 中列出子文件夹的内容

转载 作者:行者123 更新时间:2023-12-04 15:15:19 25 4
gpt4 key购买 nike

在具有结构的 Plone 站点上

root
+-topic1
| +-page1
| +-page2
|
+-topic2
+-page3
+-page4

我想查看文件夹 root列出子文件夹的内容,例如:
[http://host/plone/root/]

TOPIC1

- page1
- page2

TOPIC2

- page3
- page4

以“TOPIC1”和“TOPIC2”作为标题,“page1”等链接到实际页面。

仅使用聚合 topic1 和 topic2 文件夹中的页面的集合是不够的,因为它不会生成副标题。

我已经在 Plone 产品存储库和网络上搜索了提供此类 View 的扩展程序,但没有成功。有消息称这可以通过自定义显示 View 来完成,但由于我是 Plone 的新手,我不愿深入研究这些。

是否有 Plone 产品/扩展可以提供这样的子文件夹内容 View ?
或者甚至有一个我不知道的内置解决方案?

最佳答案

我想到了。

基本上,您要做的是扩展 folder_summary_view模板以包含文件夹和集合项目的内容列表。

  • 创建副本。 在紫米,去portal_skins/plone_content/folder_summary_view并点击自定义。转至 portal_skins/custom/folder_summary_view 的副本并将其重命名为(例如)list_contents .
  • 将其激活为文件夹 View 。 转至 portal_types/Folder并手动添加 list_contents到可用 View 方法中的列表。
  • 确保 View 只显示文件夹和集合。 将生成条目详细信息的代码包装在 <tal:general_check condition="python: item_type in ('Folder', 'Topic')"> GENERATE ENTRY </tal:general_check>
  • 添加用于列出项目内容的代码。 你可以从 portal_skins/plone_content/folder_listing 窃取它因为这已经完成了所需的工作。复制 <metal:listingmacro> ... <metal:listingmacro>部分,但替换 folderContents <tal:foldercontents> 中的定义用这一行检索内容:

  • folderContents folderContents|nothing;
    folderContents python:item_object.queryCatalog(**contentFilter) or
    item_object.getFolderContents(contentFilter, batch=True, b_size=limit_display or 100);

    (全部在一行中)

    注: item_object是为外部列表中的项目指定的名称。

    如果您激活 list_contents现在作为文件夹 View ,它完全按照问题的要求工作。

    警告:这是 Plone 新手的复制粘贴技巧,适用于我™。使用风险自负。

    关于plone - 在 Plone 文件夹 View 中列出子文件夹的内容,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5526402/

    25 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com