На прошлой неделе, готовя нашего игрового компаньона — Dungeon Quest Reborn Guide — к запуску с использованием Next.js 16 (выходные данные: «экспорт»), Ahrefs и Google Search Console отметили два критических, скрытых сбоя: На каждой внутренней странице было...
На прошлой неделе, готовя нашего игрового компаньона — Dungeon Quest Reborn Guide — к запуску с использованием Next.js 16 (выходные данные: «экспорт»), Ahrefs и Google Search Console отметили два критических, скрытых сбоя:
На каждой внутренней странице был URL-адрес og:url, указывающий на корень нашей домашней страницы (/).
Девять вновь созданных страниц с динамическими подробными сведениями имели 0 внутренних ссылок и были классифицированы как «абсолютно потерянные», несмотря на то, что они были отправлены в sitemap.xml.
Во время следующей сборки ничего не выдало ошибку. TypeScript пройден. ESLint был зеленым. Сайт экспортирован в HTML.
Тем не менее, наши социальные метаданные были повреждены, наши теги Title превышали 90+ символов, а у сканеров не было физического пути ссылки для сканирования наших динамических страниц с подробными сведениями.
Вот подробное описание того, почему это происходит в Next.js App Router, как наследование метаданных платформы незаметно кусает разработчиков, а также автоматизированный шлюз постсборки Node.js, который мы написали, чтобы гарантировать, что эти ошибки никогда больше не попадут в рабочую среду.
1. Фатальная ловушка отката открытого графа
Если вы используете Next.js 13, 14, 15 или 16 с App Router, вы, вероятно, определили глобальные метаданные внутри корневого файла src/app/layout.tsx:
// src/lib/layout.tsx или src/app/layout.tsx
экспортировать константные метаданные: Met