我使用推荐的方法在Next13.3+中使用app文件夹中的sitemap.js
文件创建站点Map,代码如下(显然,对于真实的的url,这些示例发生了变化)
export default function sitemap() {
return [
{
url: 'https://acme.com',
lastModified: new Date(),
},
{
url: 'https://acme.com/about',
lastModified: new Date(),
},
{
url: 'https://acme.com/blog',
lastModified: new Date(),
},
]
}
然而,我想Map在一个[slug]
文件夹中动态创建的页面,其中包含一个page.js
,以创建站点Map中的项目。
如何以编程方式引用sitemap.js
中的那些动态页面?
我尝试在箭头函数中使用$(slug)
,但这不起作用。
const routes = ["", "/$(slug]"].map((route) => ({
url: `${URL}${route}`,
lastModified: new Date().toISOString(),
}));
return routes
谢谢你的任何建议
2条答案
按热度按时间wtzytmuj1#
我就是这么解决的...
dgiusagp2#
这就是我在文件
sitemap.js
中的操作。请注意,我的API(strapi)返回的是带有slug和最后更新日期的帖子列表。我在函数
getPostsForSitemap
中进行数据提取。Here是使用此代码生成的站点Map。