Custom page link texts, optional post title

This commit is contained in:
Christoph Hagen
2025-01-07 10:34:36 +01:00
parent 1f7167b076
commit 2a50773e2f
16 changed files with 98 additions and 48 deletions

View File

@ -43,11 +43,10 @@ final class PostListPageGenerator {
private func makePostData(post: Post) -> FeedEntryData {
let localized: LocalizedPost = post.localized(in: language)
#warning("Add post link text to settings or to each post")
let linkUrl = post.linkedPage.map {
FeedEntryData.Link(
url: $0.absoluteUrl(in: language),
text: language == .english ? "View" : "Anzeigen")
text: localized.pageLinkText ?? post.content.settings.localized(in: language).defaultPageLinkText)
}
// Use the tags of the page if one is linked
@ -69,6 +68,7 @@ final class PostListPageGenerator {
tags: tags,
text: localized.text.components(separatedBy: "\n\n"),
images: images)
#warning("Treat post text as markdown")
}
private func createPostFeedPage(_ pageIndex: Int, pageCount: Int, posts: ArraySlice<Post>) {
@ -89,6 +89,7 @@ final class PostListPageGenerator {
totalPages: pageCount,
languageButtonUrl: languageButtonUrl,
linkPrefix: source.pageUrlPrefix(for: language))
// Includes leading slash
let filePath = pageUrl(in: language, pageNumber: pageIndex) + ".html"
guard save(fileContent, to: filePath) else {
source.results.unsavedOutput(filePath, source: .feed)