我们有一个应用程序,管理员可以动态添加事件。
假设我们的活动有一个 URL:
abc.com/100/Rishikesh-Retreat
或 abc.com/100/Mumbai-Retreat
现在,我的疑问是谷歌将如何索引这些动态页面。我是否应该使用 cron 作业每 24 小时更新一次 sitemap.xml,然后让 Google 手动抓取该网站?一旦站点地图更新,我们可以自动化要求 Google 抓取我们网站的部分吗?
我们正在使用 React 并有一个简单的节点服务器来为站点提供服务并更新元数据标签。
如果它有助于动态页面的 SEO,我们计划转向 Next JS。
我们的目标是动态页面应该被索引,当我们搜索它们时,结果应该出现在第一页上。
很高兴知道:sitemap.js 是一个特殊的路由处理程序,由 默认值,除非它使用动态函数或动态配置选项。
这意味着当您访问站点地图网址时
http://localhost:3000/sitemap.xml
站点地图特殊路由处理程序将被调用。您可能已经见过创建动态站点地图代码。例如从这里
// app/sitemap.js
import { getSortedPostsData } from "../lib/posts";
const URL = "https://claritydev.net";
export default async function sitemap() {
const posts = getSortedPostsData.map(({ id, date }) => ({
url: `${URL}/blog/${id}`,
lastModified: date,
}));
const routes = ["", "/portfolio", "/blog"].map((route) => ({
url: `${URL}${route}`,
lastModified: new Date().toISOString(),
}));
return [...routes, ...posts];
}
令人难过的是,每次调用站点地图网址时,您都必须确保
sitemap()
缓存失效,然后重新进行 sitemap()
调用。我没有测试这个,但如果你尝试将其添加到“app/sitemap.js”之上
const dynamic = 'force-dynamic'
此路由处理程序应被视为动态