ds-site/Configuration/TypoScript/Setup/RssFeed.typoscript
Daniel Siepmann 924a6b4863 Render newest blog posts first within rss feed
This allows friendi.ca to pick them up before reaching maximum limit.
2023-01-17 20:40:56 +01:00

88 lines
2.7 KiB
Text

plugin.tx_seo {
view {
templateRootPaths {
20 = EXT:ds_site/Resources/Private/Templates/Sitemaps/
}
}
config {
xmlSitemap {
sitemaps {
blog-posts {
provider = DanielSiepmann\DsSite\Frontend\RssFeed\SitemapDataProvider
config {
table = pages
sortField = lastUpdated
sortOrder = DESC
lastModifiedField = tstamp
additionalWhere = AND no_index = 0
pid = {$pageUids.blogPosts}
recursive = 3
template = RssFeed
}
}
}
}
}
}
page {
headerData {
10 = TEXT
10 {
wrap = <link rel="alternate" title="RSS Feed of all blog posts" type="application/rss+xml" href="|" />
typolink {
parameter = t3://page?uid=1
additionalParams = &type=1533906435&sitemap=blog-posts
returnLast = url
}
}
11 = COA
11 {
if {
isTrue.stdWrap.data = GP:topic_uid
}
1 = TEXT
1.char = 10
2 = TEXT
2 {
noTrimWrap = |<link rel="alternate" title="RSS Feed of blog posts for topic: |" type="application/rss+xml"|
data.dataWrap = DB : sys_category:{GP:topic_uid}:title
}
3 = TEXT
3.char = 32
4 = TEXT
4 {
wrap = href="|" />
typolink {
parameter = t3://page?uid=1
additionalParams.stdWrap.cObject = COA
additionalParams.stdWrap.cObject {
10 = TEXT
10.value = &type=1533906435&sitemap=blog-posts
11 = TEXT
11.value = &category_uid=
12 = TEXT
// uid is casted to int within PHP source
12.data.dataWrap = DB : sys_category:{GP:topic_uid}:uid
}
returnLast = url
}
}
}
}
}
seo_sitemap {
10 {
userFunc = DanielSiepmann\DsSite\Frontend\RssFeed\XmlSitemapRenderer->render
userFunc {
variables {
categoryId = TEXT
categoryId.data = GP:category_uid
categoryId.intval = 1
categoryTitle = TEXT
categoryTitle.data.dataWrap = DB : sys_category:{GP:category_uid}:title
}
}
}
}