Skip to content

Commit 7058110

Browse files
committed
Add related content
1 parent 2e6e32f commit 7058110

File tree

2 files changed

+93
-9
lines changed

2 files changed

+93
-9
lines changed

_layouts/guides.html

+52-8
Original file line numberDiff line numberDiff line change
@@ -7,9 +7,10 @@
77
{% else %}
88
{% assign docversion = 'latest' %}
99
{% endif %}
10+
{% assign docversion_index = docversion | replace: '.', '-' %}
11+
{% assign relations = site.data.versioned[docversion_index].index.relations %}
1012
{% assign guide_url = page.url | replace_regex: '^/version/[^/]+(/.*)', '\1' %}
1113

12-
1314
<section class="full-width-version-bg flexfilterbar guides">
1415
<div class="guideflexcontainer">
1516
<div class="docslink">
@@ -47,12 +48,55 @@
4748
</div>
4849
</section>
4950

50-
<div class="grid-wrapper guide">
51-
<div class="grid__item width-8-12 width-12-12-m">
52-
<h1 class="text-caps">{{page.title}} {{page.docversion}}</h1>
53-
{{ content }}
51+
<div class="guide">
52+
<div class="grid-wrapper">
53+
<div class="grid__item width-8-12 width-12-12-m">
54+
<h1 class="text-caps">{{page.title}} {{page.docversion}}</h1>
55+
{{ content }}
56+
</div>
57+
<div class="grid__item width-4-12 width-12-12-m tocwrapper">
58+
<div class="hide-mobile toc">{{ page.document | tocify_asciidoc: 2 }}</div>
59+
</div>
5460
</div>
55-
<div class="grid__item width-4-12 width-12-12-m tocwrapper">
56-
<div class="hide-mobile toc">{{ page.document | tocify_asciidoc: 2 }}</div>
61+
{% if relations and relations[guide_url] -%}
62+
<h2>Related content</h2>
63+
<div class="grid-wrapper relations">
64+
{% if relations[guide_url].sameExtensions -%}
65+
<div class="grid__item width-6-12 width-12-12-m">
66+
<h3>On the same extensions</h3>
67+
<ul class="related-content">
68+
{% for guide in relations[guide_url].sameExtensions -%}
69+
{% assign is_external_guide = guide.url | startswith: 'http' %}
70+
{% if is_external_guide %}
71+
{% assign related_guide_url = include.url %}
72+
{% elsif docversion == 'latest' %}
73+
{% assign related_guide_url = site.baseurl | append: guide.url %}
74+
{% else %}
75+
{% assign related_guide_url = site.baseurl | append: '/version/' | append: docversion | append: guide.url %}
76+
{% endif %}
77+
<li class="{{ guide.type }}"><a href="{{ related_guide_url }}">{{ guide.title }}</a></li>
78+
{% endfor -%}
79+
</ul>
80+
</div>
81+
{% endif -%}
82+
{% if relations[guide_url].sameTopics -%}
83+
<div class="grid__item width-6-12 width-12-12-m">
84+
<h3>On the same topics</h3>
85+
<ul class="related-content">
86+
{% for guide in relations[guide_url].sameTopics limit:10 -%}
87+
{% assign is_external_guide = guide.url | startswith: 'http' %}
88+
{% if is_external_guide %}
89+
{% assign related_guide_url = include.url %}
90+
{% elsif docversion == 'latest' %}
91+
{% assign related_guide_url = site.baseurl | append: guide.url %}
92+
{% else %}
93+
{% assign related_guide_url = site.baseurl | append: '/version/' | append: docversion | append: guide.url %}
94+
{% endif %}
95+
<li class="{{ guide.type }}"><a href="{{ related_guide_url }}">{{ guide.title }}</a></li>
96+
{% endfor -%}
97+
</ul>
98+
</div>
99+
{% endif -%}
57100
</div>
58-
</div>
101+
{% endif -%}
102+
</div>

_sass/layouts/guide.scss

+41-1
Original file line numberDiff line numberDiff line change
@@ -23,7 +23,7 @@ body.guides-configuration-reference div.guides-configuration-reference {
2323
.tocwrapper {
2424
display: flex;
2525
}
26-
26+
2727
.toc {
2828
position: sticky;
2929
top: 1rem;
@@ -55,4 +55,44 @@ body.guides-configuration-reference div.guides-configuration-reference {
5555
hr {
5656
border:solid $grey-2;border-width:1px 0 0;clear:both;margin:1.25em 0 1.1875em;height:0
5757
}
58+
59+
.relations {
60+
h3 {
61+
margin-top: 0.5rem;
62+
}
63+
}
64+
65+
ul.related-content li {
66+
list-style-type: none;
67+
68+
&:before {
69+
content: '';
70+
display: inline-block;
71+
position: absolute;
72+
height: 25px;
73+
width: 25px;
74+
margin-left: -35px;
75+
margin-right: 0.7rem;
76+
77+
&.tutorial {
78+
background: url($baseurl + '/assets/images/documentation/docsicon-tutorials.svg') no-repeat;
79+
}
80+
81+
&.guide {
82+
background: url($baseurl + '/assets/images/documentation/docsicon-guides.svg') no-repeat;
83+
}
84+
85+
&.concept {
86+
background: url($baseurl + '/assets/images/documentation/docsicon-concepts.svg') no-repeat;
87+
}
88+
89+
&.pdf {
90+
background: url($baseurl + '/assets/images/documentation/docsicon-pdf.svg') no-repeat;
91+
}
92+
93+
&.reference {
94+
background: url($baseurl + '/assets/images/documentation/docsicon-referencedocs.svg') no-repeat;
95+
}
96+
}
97+
}
5898
}

0 commit comments

Comments
 (0)