首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何使用sys_category生成多个新闻XML站点地图

如何使用sys_category生成多个新闻XML站点地图
EN

Stack Overflow用户
提问于 2021-07-23 09:29:21
回答 1查看 378关注 0票数 0

版本:

TYPO3 10.4.18,新闻8.5.2

问题:

我需要生成多个XML站点地图,其中所有新闻都来自一个文件夹ID,它们需要根据不同的类别链接到不同的新闻细节页面。

根据文档,我需要使用扩展的sitemap GeorgRinger\News\Seo\NewsXmlSitemapDataProvider,它还声明如下:

您需要使用自定义提供程序来获取来自此类别sys_category的新闻的单视图页面。

它还指出:

若要启用类别详细信息页处理,请在以下完整示例中签出设置useCategorySinglePid = 1

代码语言:javascript
复制
plugin.tx_seo {
    config {
        xmlSitemap {
            sitemaps {
                news {
                    provider = GeorgRinger\News\Seo\NewsXmlSitemapDataProvider
                    config {
                        excludedTypes = 1,2
                        additionalWhere =
                        ## enable these two lines to generate a Google News sitemap
                        # template = EXT:news/Resources/Private/Templates/News/GoogleNews.xml
                        # googleNews = 1

                        sortField = datetime
                        lastModifiedField = tstamp
                        pid = 84
                        recursive = 2
                        url {
                            pageId = 116
                            useCategorySinglePid = 1

                            hrDate = 0
                            hrDate {
                                day = j
                                month = n
                                year = Y
                            }

                            fieldToParameterMap {
                                uid = tx_news_pi1[news]
                            }

                            additionalGetParameters {
                                tx_news_pi1.controller = News
                                tx_news_pi1.action = detail
                            }

                            useCacheHash = 1
                        }
                    }
                }
            }
        }
    }
}

在上面的代码中,我可以看到,在pid中,pageId是存储详细页面的地方。useCategorySinglePid启用类别详细信息页处理。那么,我应该如何以及在哪里定义应该在站点地图中显示的特定类别呢?我必须使用additionalWhere来定义它吗?文档试图解释需要做什么的方式是相当混乱的。任何帮助都是非常感谢的。

EN

回答 1

Stack Overflow用户

发布于 2022-03-24 13:41:47

我也有同样的问题。我试图找到解决办法,但没有成功。

最后,我有这样的事情:

代码语言:javascript
复制
additionalWhere = uid IN (SELECT uid_foreign FROM sys_category_record_mm WHERE uid_local=14)

其中uid_local是范畴的uid。在库尔特的帮助下解决了,谢谢。

代码语言:javascript
复制
plugin.tx_seo.config {
xmlSitemap {
    sitemaps {
        innovationen {
            provider = GeorgRinger\News\Seo\NewsXmlSitemapDataProvider
            config {
                additionalWhere = uid IN (SELECT uid_foreign FROM sys_category_record_mm WHERE uid_local=11)
                sortField = sorting
                lastModifiedField = tstamp

                pid = 156

                recursive = 2
                url {
                    pageId = 157
                    useCategorySinglePid = 1

                    fieldToParameterMap {
                        uid = tx_news_pi1[news]
                    }
                    additionalGetParameters {
                        tx_news_pi1.controller = News
                        tx_news_pi1.action = detail
                    }
                    useCacheHash = 0
                }
            }
        }
        trends {
            provider = GeorgRinger\News\Seo\NewsXmlSitemapDataProvider
            config {
                additionalWhere = uid IN (SELECT uid_foreign FROM sys_category_record_mm WHERE uid_local=12)
                sortField = sorting
                lastModifiedField = tstamp

                pid = 156

                recursive = 2
                url {
                    pageId = 160
                    useCategorySinglePid = 1

                    fieldToParameterMap {
                        uid = tx_news_pi1[news]
                    }
                    additionalGetParameters {
                        tx_news_pi1.controller = News
                        tx_news_pi1.action = detail
                    }
                    useCacheHash = 0
                }
            }
        }
    }
}
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/68497052

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档