designcity / silverstripe-sitemap3
一个基于您的Silverstripe SiteTree创建网站地图的包。包括可选的主题、过滤选项和可访问性标记。
Requires
- silverstripe/cms: ~3.1
- silverstripe/framework: ~3.1
This package is not auto-updated.
Last update: 2024-09-28 16:20:36 UTC
README
#为Silverstripe 3.1设计的网站地图模块
##描述 动态生成Silverstripe网站的网站地图树。提供可选的显示主题、页面过滤选项和可访问性标记。
##要求
- Silverstripe ~3.1
##主题 网站地图有多个主题。默认主题侧重于生成一个可访问的、简单的网站地图。另一个包含的主题Slickmap基于Astuteo的Slickmap CSS(https://www.astuteo.com/slickmap/),提供了更直观的网站布局表示。分别,您可以通过更改config.yml来使用每个主题
SiteMapPage: #Default theme theme: default #Slickmap-based theme theme: slickmap
##示例用法
在项目根目录中的示例config.yml文件
--- Name: {projectconfig} --- SiteMapPage: #Determines what Pages to not display hidefrommap: #Checks each value against a Page's ClassName and does not display if it matches ClassName: - Terms&CondsPage - SecretPage #Hides everything that isn't shown in the menu ShowInMenus: false #Hide any Page with this particular title Title: The Unmappable Page
示例SiteMapPage内容
This is the site's sitemap.
This and the line above are just flavour text
[SiteMap]
This line will appear after the generated SiteMap tree
##显示页面 默认情况下,页面通过修改SiteMapPage的config.yml值被隐藏。任何在'hidefrommap'键下的内容都会与页面的属性进行对比,如果属性值匹配或包含在配置集合的值中,则不会显示。
对隐藏的内容要具体;隐藏父页面仍会导致其子页面显示。它们将插入到父页面原本所在的树深度。
##扩展 模块提供了一个可以在每个页面类型中重写的函数canSiteMap($member)。您可以通过这种方式隐藏页面或为页面添加自己的显示功能。
另一种方法,如果您希望直接后代保留canSiteMap()的默认功能,您可以覆盖结果,通过扩展页面并实现updateCanSiteMap($member)函数。这会覆盖canSiteMap(),并允许在选定页面上实现特定功能。
##使用Composer安装 在项目根目录下运行
composer require "designcity/silverstripe-sitemap3" "dev-master"
##添加主题 如果您认为您有一个非常棒的顶级主题,请提交一个pull request,我们将考虑将其集成到项目中。