我的personal site是在杰基尔身上发展起来的。另外,我已经实现了active
导航逻辑。因此,如果我点击“日记”,它会将我带到列表页面,您可以在其中找到所有帖子。
导航项目:
现在我正在寻找一个解决方案,当我在一个帖子页面或阅读帖子时,我可以将活动课程提供给“期刊”。
您可以在WordPress中考虑current-post-ancestor
,current-menu-parent
或current-post-parent
个帖子类,以便更好地理解这个问题。
提前致谢。
答案 0 :(得分:1)
如果'Journal'是页面'mysite.com/journal'并且您的帖子位于'mysite.com/journal/postdate/postname',您可以检查URL的第一部分是否等于菜单项,如下所示:
{% assign url_parts = page.url | split: '/' %}
<li {% if url_parts[1] == 'journal' %}class="active"{% endif %}> ... </li>
来源:http://jekyllcodex.org/basics/
这可能需要自定义永久链接。有关自定义固定链接的信息,请参阅same page。
答案 1 :(得分:1)
每个帖子都有一个page.path
变量,如_posts/postName.md
。因此,使用您的代码,您可以使用page.path contains "_posts/"
,如下所示:
<li {% if page.url == '/journal/' or page.url == '/post.html/' or page.path contains "_posts/" %} class="active"{% endif %}>
<a href="{{ site.baseurl }}/journal">Journal</a>
</li>
注意:似乎{% if page.url == '/journal/' || page.url == '/post.html/' || page.path contains "_posts/" %}
无效。