现在我有一个 Jekyll 站点主题,它允许用户通过选择标签来过滤帖子。如果他们在主页上,它会显示所有帖子,如果他们选择了标签,它只会显示带有该标签的帖子。
选择帖子时,帖子列表和显示帖子内容的标签列表下方会出现一个新视图。但是,当这种情况发生时,Post List 元素内的任何过滤都会消失。
TAG1 SELECTED POST FROM TAG1 SELECTED
<URL>/tag/tag1 <URL>/POST
+---------+--------------------+ +---------+--------------------+
| Home | Post List | | Home | Post List |
| - Tag1 | <FILTERED ON TAG1> | ---\ | - Tag1 | <SHOWS ALL POSTS> |
| - Tag2 | | ---/ | - Tag2 |<NO LONGER FILTERED>|
+---------+--------------------+ +---------+--------------------+
| POST CONTENT |
| |
+------------------------------+
我还能够更改代码,以便在选择标签,然后选择帖子时,Post List
只显示也包含该标签的帖子。但是,通过此更改,如果在Home
页面上(无标签)并且我单击帖子,它会中断;将Post List
根据与所选帖子关联的标签进行过滤,而不是显示所有帖子。(注意:对于我的博客,我只计划每篇文章有一个标签)
HOME SELECTED POST FROM HOME SELECTED
<URL>/ <URL>/POST
+---------+--------------------+ +---------+--------------------+
| Home | Post List | | Home | Post List |
| - Tag1 | <SHOWS ALL POSTS> | ---\ | - Tag1 | <FILTERED ON TAG1> |
| - Tag2 | | ---/ | - Tag2 | <IS NOW FILTERED> |
+---------+--------------------+ +---------+--------------------+
| POST CONTENT |
| |
+------------------------------+
我的问题是,Jekyll 有没有办法显示帖子并Post List
根据您到达帖子的方式进行更改?
例如,如果我在Home
页面上(没有过滤器),并且我从 unfiltered 中单击帖子Post List
,我想查看帖子,同时保持Post List
不变(保持未过滤显示所有帖子)。但是,除此之外,如果我单击Tag1
标签列表,然后单击现在过滤的帖子Post List
,我想在保持Post List
不变的情况下查看帖子(继续过滤所有帖子tag1
)。请参阅下面的线框以获取视觉解释。
使用 Jekyll 及其相应的工具(Front Matter、Liquid ...)是否有可能做到这一点?还是我需要某种插件?
任何帮助是极大的赞赏。