diff --git a/assets/sass/_theme/blocks/pages.sass b/assets/sass/_theme/blocks/pages.sass
index 7de51eb6b..be43cd240 100644
--- a/assets/sass/_theme/blocks/pages.sass
+++ b/assets/sass/_theme/blocks/pages.sass
@@ -57,7 +57,8 @@
> li
border-bottom: none
padding: 0
- .page-title
+ .page-title,
+ .page-subtitle
@include h3
+ li
margin-top: $spacing-4
@@ -149,7 +150,8 @@
&--alternate
.pages
@include layout-alternate
- .page-title
+ hgroup,
+ > .page-title
+ p
margin-top: $spacing-1
&--large
diff --git a/assets/sass/_theme/design-system/article.sass b/assets/sass/_theme/design-system/article.sass
index 943ef633d..126957231 100644
--- a/assets/sass/_theme/design-system/article.sass
+++ b/assets/sass/_theme/design-system/article.sass
@@ -4,6 +4,8 @@
position: relative
display: flex
flex-direction: column
+ *:where([class$="-subtitle"])
+ color: var(--color-text-alt)
.media
margin-bottom: $spacing-3
order: -1
@@ -33,3 +35,5 @@
@include stretched-link(before)
display: block
text-decoration: none
+ + *:where([class$="-subtitle"])
+ @include h3
\ No newline at end of file
diff --git a/assets/sass/_theme/design-system/layouts/cards.sass b/assets/sass/_theme/design-system/layouts/cards.sass
index a99d66c22..64636860a 100644
--- a/assets/sass/_theme/design-system/layouts/cards.sass
+++ b/assets/sass/_theme/design-system/layouts/cards.sass
@@ -8,9 +8,9 @@
color: $color
padding: $spacing-3
position: relative
- transition: background $background-duration, color $background-duration
- [class$="-title"]
- @include h3
+ transition: background $background-duration
+ *:where([class$="-title"])
+ @include article-title
a
color: inherit
[class$="-content"]
@@ -29,7 +29,7 @@
padding-top: $spacing-4
margin-top: auto
a, p
- transition: text-decoration-color .3s ease, color .3s ease
+ transition: text-decoration-color $background-duration ease, color $background-duration ease
&:hover
background-color: $background-hover
&, a, p
diff --git a/assets/sass/_theme/design-system/layouts/grid.sass b/assets/sass/_theme/design-system/layouts/grid.sass
index 72bd25b32..4d72a7bd8 100644
--- a/assets/sass/_theme/design-system/layouts/grid.sass
+++ b/assets/sass/_theme/design-system/layouts/grid.sass
@@ -5,7 +5,7 @@
@include layout-item
@include small-arrow-right-hover('.more')
*:where([class$="-title"])
- @include h2
+ @include article-title
&:not(:has(.more))
[class$="-title"]
a
diff --git a/assets/sass/_theme/design-system/layouts/large.sass b/assets/sass/_theme/design-system/layouts/large.sass
index fb8e8f6c8..5c6a567b2 100644
--- a/assets/sass/_theme/design-system/layouts/large.sass
+++ b/assets/sass/_theme/design-system/layouts/large.sass
@@ -6,7 +6,8 @@
@include article
@include layout-item
@include small-arrow-right-hover('.more')
- [class$="-title"]
+ [class$="-title"],
+ [class$="-subtitle"]
@include h2
@include media-breakpoint-down(desktop)
.media
@@ -26,7 +27,8 @@
@include in-page-without-sidebar
article
align-items: center
- [class$="-title"]
+ [class$="-title"],
+ [class$="-subtitle"]
@include lead
[class$="-content"]
width: columns(6)
diff --git a/assets/sass/_theme/sections/categories.sass b/assets/sass/_theme/sections/categories.sass
index bade98708..4850184bb 100644
--- a/assets/sass/_theme/sections/categories.sass
+++ b/assets/sass/_theme/sections/categories.sass
@@ -19,14 +19,7 @@ body:where([class*="_categories__term"])
margin-bottom: var(--grid-gutter)
margin-top: var(--grid-gutter)
-.categories
- &--alternate
- @include layout-alternate
- &--cards
- @include layout-cards
- &--grid
- @include layout-grid
- &--large
- @include layout-large
- &--list
- @include layout-list
+@include layout-defaults(".categories")
+
+.categories--cards
+ @include layout-cards
diff --git a/assets/sass/_theme/sections/events/item.sass b/assets/sass/_theme/sections/events/item.sass
index cffb38693..39817a73a 100644
--- a/assets/sass/_theme/sections/events/item.sass
+++ b/assets/sass/_theme/sections/events/item.sass
@@ -5,7 +5,6 @@
@include stretched-link
text-decoration: none
&-subtitle
- @include h3
color: var(--color-text-alt)
&-categories
@include item-categories-list
diff --git a/assets/sass/_theme/sections/events/layouts.sass b/assets/sass/_theme/sections/events/layouts.sass
index 8b267cc63..77ac94164 100644
--- a/assets/sass/_theme/sections/events/layouts.sass
+++ b/assets/sass/_theme/sections/events/layouts.sass
@@ -95,9 +95,6 @@
&-schedule
@include meta
margin-top: $spacing-2
- &-content
- .event-title, hgroup
- @include h3
&-description
margin-top: $spacing-2
.media
diff --git a/assets/sass/_theme/sections/exhibitions/layouts.sass b/assets/sass/_theme/sections/exhibitions/layouts.sass
index 1eb8a8f03..4cdc36f41 100644
--- a/assets/sass/_theme/sections/exhibitions/layouts.sass
+++ b/assets/sass/_theme/sections/exhibitions/layouts.sass
@@ -4,10 +4,6 @@
@include layout-list
&--grid
@include layout-grid(2)
- .exhibition
- &-title,
- &-subtitle
- @include h3
&--cards
@include layout-cards
&--large
diff --git a/assets/sass/_theme/sections/locations.sass b/assets/sass/_theme/sections/locations.sass
index ab6e9146f..af74cc4cc 100644
--- a/assets/sass/_theme/sections/locations.sass
+++ b/assets/sass/_theme/sections/locations.sass
@@ -72,8 +72,6 @@
@include in-page-without-sidebar
@include grid(3)
.location
- .location-title
- @include h3
address + .location-description
margin-top: $spacing-2
diff --git a/assets/sass/_theme/sections/pages.sass b/assets/sass/_theme/sections/pages.sass
index 24846162a..61e70b1c3 100644
--- a/assets/sass/_theme/sections/pages.sass
+++ b/assets/sass/_theme/sections/pages.sass
@@ -1,7 +1,5 @@
.page
@include article($aspect-ratio: $page-media-aspect-ratio)
- .page-title
- @include h4
.more
@include icon(arrow-right-line, after, true)
@include hover-translate-icon(after)
@@ -23,10 +21,7 @@
&--grid
@include layout-grid
.page
- .page-title
- @include h3
- a
- @include icon(arrow-right-line, after, true)
- @include hover-translate-icon(after)
+ hgroup,
+ > .page-title
+ p
margin-top: $spacing-1
diff --git a/assets/sass/_theme/sections/posts.sass b/assets/sass/_theme/sections/posts.sass
index 28238282e..78a525bab 100644
--- a/assets/sass/_theme/sections/posts.sass
+++ b/assets/sass/_theme/sections/posts.sass
@@ -1,14 +1,8 @@
.post
@include article
.post-title
- @include h3
- a
- @include stretched-link
- display: block
- text-decoration: none
- .post-subtitle
- @include h3
- color: var(--color-text-alt)
+ @include article-title
+
.federated
order: -1
.post-meta,
diff --git a/assets/sass/_theme/sections/projects.sass b/assets/sass/_theme/sections/projects.sass
index e4eed974c..aa84a08d9 100644
--- a/assets/sass/_theme/sections/projects.sass
+++ b/assets/sass/_theme/sections/projects.sass
@@ -11,8 +11,6 @@
.project-title,
.project-subtitle
@include article-title
- .project-subtitle
- color: var(--color-text-alt)
.project-summary
margin-top: $spacing-2
.project-categories
@@ -29,8 +27,6 @@
.project
&-content
align-items: baseline
- &-subtitle
- @include h3
@include media-breakpoint-down(md)
> li + li
margin-top: $spacing-4
diff --git a/hugo.yaml b/hugo.yaml
index 6186c212a..1c7aecb2f 100644
--- a/hugo.yaml
+++ b/hugo.yaml
@@ -291,6 +291,7 @@ params:
image: true
main_summary: false
summary: true
+ subtitle: true
truncate_description: 200 # Set to 0 to disable truncate
single:
taxonomies:
diff --git a/layouts/partials/pages/partials/layouts/alternate/alternate.html b/layouts/partials/pages/partials/layouts/alternate/alternate.html
index 92de79d70..294399531 100644
--- a/layouts/partials/pages/partials/layouts/alternate/alternate.html
+++ b/layouts/partials/pages/partials/layouts/alternate/alternate.html
@@ -1,8 +1,5 @@
{{ $options := .options }}
-{{ $heading_tag := partial "GetHeadingTag" (dict
- "level" ( .heading_level | default 3 )
- "attributes" "class='page-title'"
-) }}
+{{ $heading_level := .heading_level }}
{{ range .pages }}
@@ -14,11 +11,11 @@
{{ end }}
-
- {{ $heading_tag.open }}
-
- {{- partial "PrepareHTML" .Title -}}
-
- {{ $heading_tag.close }}
+ {{ partial "pages/partials/page/heading.html" (dict
+ "item" .
+ "level" $heading_level
+ "options" $options
+ ) }}
{{- partial "pages/partials/page/hook-after-title.html" . -}}
diff --git a/layouts/partials/pages/partials/layouts/cards/cards.html b/layouts/partials/pages/partials/layouts/cards/cards.html
index 3225c18d3..c9dffe7c9 100644
--- a/layouts/partials/pages/partials/layouts/cards/cards.html
+++ b/layouts/partials/pages/partials/layouts/cards/cards.html
@@ -1,8 +1,5 @@
{{ $options := .options }}
-{{ $heading_tag := partial "GetHeadingTag" (dict
- "level" ( .heading_level | default 3 )
- "attributes" "class='page-title'"
-) }}
+{{ $heading_level := .heading_level }}
{{ range .pages }}
@@ -11,11 +8,11 @@
-
- {{ $heading_tag.open }}
-
- {{- partial "PrepareHTML" .Title -}}
-
- {{ $heading_tag.close }}
+ {{ partial "pages/partials/page/heading.html" (dict
+ "item" .
+ "level" $heading_level
+ "options" $options
+ ) }}
{{- partial "pages/partials/page/hook-after-title.html" . -}}
diff --git a/layouts/partials/pages/partials/layouts/grid/grid.html b/layouts/partials/pages/partials/layouts/grid/grid.html
index 1bff7962d..6b74b1393 100644
--- a/layouts/partials/pages/partials/layouts/grid/grid.html
+++ b/layouts/partials/pages/partials/layouts/grid/grid.html
@@ -1,8 +1,5 @@
{{ $options := .options }}
-{{ $heading_tag := partial "GetHeadingTag" (dict
- "level" ( .heading_level | default 3 )
- "attributes" "class='page-title'"
-) }}
+{{ $heading_level := .heading_level }}
{{ with .pages }}
@@ -19,11 +16,11 @@
{{ with $page }}
-
- {{ $heading_tag.open }}
-
- {{- partial "PrepareHTML" .Title -}}
-
- {{ $heading_tag.close }}
+ {{ partial "pages/partials/page/heading.html" (dict
+ "item" .
+ "level" $heading_level
+ "options" $options
+ ) }}
{{- partial "pages/partials/page/hook-after-title.html" . -}}
diff --git a/layouts/partials/pages/partials/layouts/large/large.html b/layouts/partials/pages/partials/layouts/large/large.html
index 5b93abba2..9dce57d64 100644
--- a/layouts/partials/pages/partials/layouts/large/large.html
+++ b/layouts/partials/pages/partials/layouts/large/large.html
@@ -1,8 +1,5 @@
{{ $options := .options }}
-{{ $heading_tag := partial "GetHeadingTag" (dict
- "level" ( .heading_level | default 3 )
- "attributes" "class='page-title'"
-) }}
+{{ $heading_level := .heading_level }}
{{ range .pages }}
@@ -11,11 +8,11 @@
-
- {{ $heading_tag.open }}
-
- {{- partial "PrepareHTML" .Title -}}
-
- {{ $heading_tag.close }}
+ {{ partial "pages/partials/page/heading.html" (dict
+ "item" .
+ "level" $heading_level
+ "options" $options
+ ) }}
{{- partial "pages/partials/page/hook-after-title.html" . -}}
diff --git a/layouts/partials/pages/partials/layouts/list/list.html b/layouts/partials/pages/partials/layouts/list/list.html
index db665d454..35ee99eef 100644
--- a/layouts/partials/pages/partials/layouts/list/list.html
+++ b/layouts/partials/pages/partials/layouts/list/list.html
@@ -1,8 +1,5 @@
{{ $options := .options }}
-{{ $heading_tag := partial "GetHeadingTag" (dict
- "level" ( .heading_level | default 3 )
- "attributes" "class='page-title'"
-) }}
+{{ $heading_level := .heading_level }}
{{ range .pages }}
@@ -20,11 +17,11 @@
-
- {{ $heading_tag.open }}
-
- {{- partial "PrepareHTML" .Title -}}
-
- {{ $heading_tag.close }}
+ {{ partial "pages/partials/page/heading.html" (dict
+ "item" .
+ "level" $heading_level
+ "options" $options
+ ) }}
{{- partial "pages/partials/page/hook-after-title.html" . -}}
diff --git a/layouts/partials/pages/partials/page/heading.html b/layouts/partials/pages/partials/page/heading.html
new file mode 100644
index 000000000..e442a2f2b
--- /dev/null
+++ b/layouts/partials/pages/partials/page/heading.html
@@ -0,0 +1 @@
+{{ partial "commons/item/heading.html" . }}
\ No newline at end of file