- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
令人难以置信的是,使用 Hugo 找到关于稍微更高级的技术的可靠信息是多么困难。
经过一段时间的搜索,我找到了 this article用一种非常好的方式为 Hugo 实现面包屑。
我稍微修改了一下,不向最后一条路径添加不必要的链接,并利用 i18n 将 URL 段转换为更易于阅读的内容。我还做了一个小的解决方法来删除一些与翻译条目不匹配的不需要的踪迹:
{{- $url := replace .Permalink ( printf "%s" ( "/" | absLangURL ) ) "" -}}
{{- $url := replace .Permalink ( printf "%s" ( "/" | absLangURL ) ) "" -}}
{{- $.Scratch.Add "path" ( "/" | absLangURL ) -}}
{{- $.Scratch.Add "breadcrumb" (slice (dict "url" ( "/" | absLangURL ) "name" "home" "position" 1 )) -}}
{{- range $index, $element := split $url "/" -}}
{{- $.Scratch.Add "path" $element -}}
{{- $.Scratch.Add "path" "/" -}}
{{- if ne $element "" -}}
{{- $.Scratch.Add "breadcrumb" (slice (dict "url" ($.Scratch.Get "path") "name" . "position" (add $index 2))) -}}
{{- end -}}
{{- end -}}
<script type="application/ld+json">
{
"@context": "http://schema.org",
"@type": "BreadcrumbList",
"itemListElement": [{{ range $.Scratch.Get "breadcrumb" }}{{ if ne .position 1 }},{{ end }}{
"@type": "ListItem",
"position": {{ .position }},
"item": {
"@id": "{{ .url }}",
"name": "{{ .name }}"
}
}{{ end }}]
}
</script>
<nav class="breadcrumb">
{{- $length := len ($.Scratch.Get "breadcrumb") -}}
{{- range $index, $.Scratch.Get "breadcrumb" -}}
<!--
Assigning a constant as default value for i18n function
if it doesn't match any entry
Then check if current Breadcrumb item matches this constant,
which means that part shouldn't be one of Breadcrumb's trail
-->
{{- $i18n := i18n ( print "breadcrumbs-" .name ) | default "__INTERNAL__" -}}
{{- if not ( eq ($i18n) "__INTERNAL__" ) -}}
{{ if eq ( (int .position) ) $length }}
<span class="breadcrumb-item active">{{ $i18n }}</span>
{{- else -}}
<a class="breadcrumb-item" href="{{ .url }}" >{{ $i18n }}</a>
{{- end -}}
{{- end -}}
{{ end }}
</nav>
最佳答案
来自 Hugo documentation并建立在 Lars's answer :
breadcrumbs.html
的文件在文件夹 layouts/partials
您的雨果项目或主题 <ol class="nav navbar-nav">
{{ template "breadcrumbnav" (dict "p1" . "p2" .) }}
</ol>
{{ define "breadcrumbnav" }}
{{ if .p1.Parent }}
{{ template "breadcrumbnav" (dict "p1" .p1.Parent "p2" .p2 ) }}
{{ else if not .p1.IsHome }}
{{ template "breadcrumbnav" (dict "p1" .p1.Site.Home "p2" .p2 ) }}
{{ end }}
<li{{ if eq .p1 .p2 }} class="active"{{ end }}>
<a href="{{ .p1.Permalink }}">{{ .p1.Title }}</a>
</li>
{{ end }}
breadcrumbs.html
您需要的地方:{{ partial "breadcrumbs.html" . }}
关于breadcrumbs - 如何为 Hugo 创建工作面包屑?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45943871/
我已经测试了 Schema.org breadcrumb使用 Google Rich Snippets 测试工具的示例。 Books > Literature & Fiction > C
我想为我的网站实现面包屑,但我不想在我的页面上为它创建任何可见的标签。我想过使用元标记,但由于它们没有 href 属性,因此它们不能包含 itemprop="url" 属性。以下是我使用的代码:
我正在使用 this面包屑包 首先,我运行了这个命令行: composer 需要 davejamesmiller/laravel-breadcrumbs:5.x 我也遵循了这些步骤: 在我的 comp
令人难以置信的是,使用 Hugo 找到关于稍微更高级的技术的可靠信息是多么困难。 经过一段时间的搜索,我找到了 this article用一种非常好的方式为 Hugo 实现面包屑。 我稍微修改了一下,
我知道 http://raphinou.github.com/jekyll-base/ 中有单级面包屑。但我正在寻找一些获得 的好方法Jekyll 站点上的面包屑,当目录达到四或五级深度时 . (是的
我正在尝试在 CMS 中构建面包屑导航。 目前,数据库设置有一个表,按行保存每个页面。 我创建了一个表,其中包含: 面包屑中每个项目/类别的项目 ID、项目文本和项目 URL。 我不完全确定从哪里开始
我在更改同一个 DIV 标签的字体颜色装饰等方面遇到了一些困难。 我想做的是在我网站的某些页面上进行面包屑式导航,我想尽量减少我使用的 Div 数量,以便于维护。 这是我已经拥有并想做的事情。
我想将文本“主页”从面包屑导航“搜索”移到左侧,使其位于边栏上方。 你可以看到它在右边in this example . 当我输入 text align: left 时,它只会向左移动几个像素。什么是
无法让这个简单的代码与 css 一起工作。此代码在我的 JSP 页面上运行良好,但我无法让悬停打开 :before 和 :after 的颜色。 Demo HTML Anterior
我是 AngularJS 新手,我使用过 ncy-breadcrumb对于我的 AngularJS 项目。有一个抽象的真实父状态和它的两个子状态。我将这些子状态用于选项卡。但我找不到一种方法来动态地在
我想知道如何使用 CSS/CSS3 和 HTML 获得它。如何做到这一点? 如您所见,我指出了 3 个导航面包屑。 最佳答案 html{ bac
我在使用 zippers 时遇到了问题和 lens .考虑以下示例: {-# LANGUAGE TemplateHaskell #-} {-# LANGUAGE TypeOperators #-} i
如何用其他文本替换 SonataAdmin 面包屑中的对象 ID? 如果我设置 __toString() 在我的文档中,它仅适用于编辑。当我尝试创建新记录时,会出现类似 MyDocument:0000
我发现了分类面包屑 (http://drupal.org/project/taxonomy_breadcrumb) 的魔力。我有两个维度,我想对我的内容进行分类: 季节 2010 年秋季 2010 年
我在使用这个插件时遇到一些重大问题 https://wordpress.org/plugins/breadcrumb-navxt/installation/ 我的网站有这样的布局。在我的functio
关闭。这个问题需要多问focused 。目前不接受答案。 想要改进此问题吗?更新问题,使其仅关注一个问题 editing this post . 已关闭 3 年前。 Improve this ques
Sphinx 配置如何在标题中设置“面包屑”?我有一个 Sphinx 项目,我看到的只是项目名称;如果我跳转到子页面,我会迷路并且看不到当前页面的路径。 野外的一些例子: https://docs.p
我设置了一个站点地图页面,并在顶部使用面包屑导航将用户带到他们寻找的直接位置,感觉它有点长。但是,当他们单击面包屑时,面包屑进入了正确的 div,但进入了很远的下方。 这是我的代码
根据列出的 Bootstrap 文档 here关于面包屑的使用,我试图指出一个活跃的面包屑元素: Home Page 但在文档示例中,该元素似乎并没有变为灰色——根本没有任何变化!这段代码有什么问
我有这个 breadCrumb。我如何删除背景。我只想显示没有任何背景的链接。
我是一名优秀的程序员,十分优秀!