Drupal 8 网站页面层次结构

3

我在过去的一个月里建立了一个Drupal 8网站,它应该具有类似于这样的愚蠢简单的页面层次结构:

Parent Page
--Child Page
--Child Page
----Grandchild Page
----Grandchild Page
----Grandchild Page
Parent Page
--Child Page
----Grandchild Page
------Great Grandchild Page
--Child Page

我本以为Drupal会自动构建这种普通的父子页面结构层次,并在面包屑导航中适当地反映出来,但显然并没有。Drupal默认采用一种荒谬的扁平模型,每个页面都被认为是主页的直接子页面(例如,“主页>事件1”而不是更具类别和结构描述性的“主页>事件>事件1”),因此从可用性角度来看,面包屑导航实际上是非常无用的,完全无法让用户了解给定页面在站点结构中所处的位置。
我已经找到了一种能够在菜单、面包屑导航和路径名中正确反映层次结构的方法,可以在某种程度上自动完成,只需将每个创建的页面作为链接或子链接添加到主导航菜单结构中即可。然而,在某些情况下,我有70多个页面是父页面的子页面,因此将每个页面都设置为主菜单的一部分是不可能的:在某些情况下,我希望显示父页面,并使父页面作为子页面的列表。

我也听说过使用分类法,但我找不到任何有用且充分描述如何实现或准确反映分类属性的文献,以形成准确的面包屑导航或网址别名。如果我必须手动配置和维护计划站点上数百个页面的面包屑和网址别名路径及其关系,那将非常痛苦。

我还听说过使用“图书”模块。虽然我正在开发的可能类似结构,但我并没有制作一本书,其中有多个相互连接的可导航页面,包括章节、部分和子部分。在我看来,为了解决我的需求而扭曲一个功能意图用于完全不同目的的模块是不可取的。

有一个名为 "Node Hiearchy" 的模块,表面上可以实现我正在寻找的基本功能......但令我失望的是,该模块尚未更新到 Drupal 8 (当我继续学习/开发时,对有用的 Drupal 8 模块可用性的痛苦觉悟)。

简而言之:在Drupal 8中,有没有一种实现我所需的愚蠢基础层次结构的方法,并且能够使用工作面包屑和URL别名?还是我必须将过去两个月的所有工作降级到Drupal 7,才能获得Node Hierarchy模块的访问权限?
1个回答

2
对于Drupal 8,一种可能的方法是使用实体层次结构模块。您可以应用页面层次结构,但仅限于一级深度。因此,在您的示例中,您将能够在“主页”上列出“事件”,并且您将能够在“事件”上列出“事件1、2等”。但是,您将无法在“主页”上显示“事件1等”。不要忘记授予匿名角色“实体层次结构视图:访问嵌入式子视图”的权限。

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接