Автоматически генерировать динамический файл Sitemap.xml для приложения Nuxt VueJs Firestore - PullRequest
0 голосов
/ 14 декабря 2018

У меня есть сайт, похожий на Stackoverflow, где пользователи могут создать пост (или вопрос), который получает собственный URL и должен быть оптимизирован для SEO.Поэтому мне нужно включить эти динамические страницы в мой SiteMap.xml.Я хотел бы найти автоматический способ вставки каждого динамического URL в мой файл Sitemap при его первоначальном создании.

В надежде не изобретать колесо я нашел sitemap-module для nuxt, однако примерони используются для динамических страниц, они написаны статически, поэтому не уверен, что хорошего в этом нет.

Мне трудно даже представить, как это настроить и что возможно с существующей инфраструктурой.Могут ли функции Firestore обновлять исходный код и повторно развертывать, или есть какие-либо функции хостинга FireStore, чтобы помочь?Могу ли я настроить задание cron, которое будет запускаться каждую ночь, чтобы сначала запустить скрипт для запроса к firestore и обновить файл карты сайта на локальном компьютере, а затем автоматически развернуть его в firestore из командной строки?Какие-нибудь примеры сценариев?

Используемые технологии: VueJS, Node.js, Nuxt / SSR, Firestore (db и хостинг) и Express

1 Ответ

0 голосов
/ 07 марта 2019

Вот как я это сделал.Надеюсь это поможет.Пожалуйста, поделитесь, если вам удалось получить другое решение.Я использовал npm i @ nuxtjs / sitemap В nuxt.config.js

`var routes = []
var allUsers = [{'username': 'username'}] // Getting users as an Array
for (var i = 0; i < allUsers.length; i++) {
  routeObject = {
    'url': '/profile/' + allUsers[i].username
  }
  routes.push(routeObject);
}
module.exports = {
  sitemap: {
    path: '/sitemap.xml',
    hostname: 'Your hostname here',
    cacheTime: 1000 * 60 * 15,
    gzip: true,
    generate: false, 
    routes: routes
  }
}`
...