Google Search Console 設定と Sitemap.xml 設置
投稿日: 2025-05-31
カテゴリ: tech

Google Search Console 設定
- https://search.google.com/search-console にアクセス
- 「URL プレフィックス」を選択
- 「ドメイン」より、Vercel での robots.txt や sitemap.xml をカスタムしやすいらしい
- GTM 設定しているので何もしなくても、所有権の確認が完了
sitemap.xml 設置
- Next.js(App Router)+ microCMS でブログを構築している場合、sitemap.xml は 動的に生成するルートを追加する形で対応するのがスマート、らしい
- /app/sitemap.xml/route.ts を作成
- priority はトップを 1.0 に、記事詳細を 0.6 に
- 頻度は weekly にした
// app/sitemap.xml/route.ts
import { client, Blog } from "@/lib/microcms";
import { type NextRequest } from "next/server";
export async function GET(_req: NextRequest) {
const baseUrl = "https://yosuke.ai"; // ←あなたのドメイン
// microCMS からブログ一覧を取得
const { contents } = await client.getList<Blog>({
endpoint: "blogs",
});
// 各記事のURL要素を作成(priority: 0.6, changefreq: weekly)
const blogUrls = contents.map((post) => {
return `
<url>
<loc>${baseUrl}/blog/${post.id}</loc>
<lastmod>${new Date(post.publishedAt).toISOString()}</lastmod>
<changefreq>weekly</changefreq>
<priority>0.6</priority>
</url>`;
});
// トップページ(priority: 1.0, changefreq: weekly)
const topPageUrl = `
<url>
<loc>${baseUrl}/</loc>
<lastmod>${new Date().toISOString()}</lastmod>
<changefreq>weekly</changefreq>
<priority>1.0</priority>
</url>
`;
// 最終XML生成
const sitemap = `<?xml version="1.0" encoding="UTF-8"?>
<urlset xmlns="http://www.sitemaps.org/schemas/sitemap/0.9">
${topPageUrl}
${blogUrls.join("")}
</urlset>`;
return new Response(sitemap, {
headers: {
"Content-Type": "application/xml",
},
});
}
- $git add . && git commit -m "Add sitemap.xml" && git push して反映
- ちゃんと読み込まれた
