我正在为我的Jekyll网站(将在GitHub Pages上托管)构建导航。这包括3个部分:
网站页面的深度可能为3-4级。起初,我构建了一个脚本来动态构建导航,但是现在我正在尝试在yaml数据文件中定义导航。这是一个名为menu.yml的示例数据文件:
- link: fruit
menu:
- link: bananas
- link: kiwi
- link: apples
menu:
- link: red-delicious
- link: gala
- link: watermelon
- link: shapes
menu:
- link: circle
- link: square
- link: triangle
每个页面的最前面都定义了一个“链接”变量。
我的问题是:什么是检索知道给定页面的“ link”变量(例如“ apples”)的祖先和后代的最佳方法。
我目前正在遍历每个项目(以及每个项目的每个菜单)以找到匹配项。这可行,但是我担心页面的构建时间,因为我必须为每个页面至少执行3次。该站点托管的文档可能在500至1000页之间。我只是好奇地想知道这是否是最好的方法。从我的角度来看,似乎将有一个内置函数来执行此操作(通过Jekyll或Liquid)。还是有更好的方法来动态地执行此操作,而无需数据Yaml文件?任何帮助表示赞赏!