Generate open graph meta tags

This commit is contained in:
Christoph Hagen
2025-01-15 22:04:48 +01:00
parent 4b448f3415
commit f6b868502d
21 changed files with 324 additions and 109 deletions

View File

@@ -24,9 +24,11 @@ final class FeedPageGenerator {
func generatePage(language: ContentLanguage,
posts: [FeedEntryData],
title: String,
title: String?,
description: String?,
showTitle: Bool,
image: FileResource?,
pageUrl: String,
pageTitle: String?,
pageNumber: Int,
totalPages: Int,
languageButtonUrl: String,
@@ -44,10 +46,14 @@ final class FeedPageGenerator {
text: language.next.rawValue,
url: languageButtonUrl)
let imageUrl = image?.linkPreviewImage(results: results)
let pageHeader = PageHeader(
language: language,
title: title,
title: title ?? pageTitle,
description: description,
image: imageUrl,
pageUrl: pageUrl,
iconUrl: iconUrl,
languageButton: languageButton,
links: content.navigationBar(in: language),
@@ -57,8 +63,8 @@ final class FeedPageGenerator {
let page = GenericPage(
header: pageHeader,
additionalFooter: footer) { content in
if showTitle {
content += "<h1 class='separated-headline'>\(title)</h1>"
if let pageTitle {
content += "<h1 class='separated-headline'>\(pageTitle)</h1>"
}
for post in posts {
content += FeedEntry(data: post).content