Как через prerender-spa-plugin для VUE сделать разные СЕО мета-теги для разных страниц?

Сделано SPA приложение на VUE, потом столкнулся с необходимостью СЕО продвижения.
Установил плаги prerender-spa-plugin и настроил webpack что страницы теперь отлично пререндерятся, НО
точка входа одна и мета-теги типа title и description на каждой странице остаются одни и теже.
Настройка вебпака с плагинами
5d41aa6cbcec8104937905.png

Страниц получается 4 - routes: ['/', '/sale', '/delivery', '/contacts']
Есть ли возможность задать им разные title и мета-теги для СЕО?
  • Вопрос задан
  • 1515 просмотров
Решения вопроса 1
@plue Автор вопроса
Сам напишу ответ, может кому пригодится тоже:
на GitHub разделе Advanced Usage пример с postProcess.
Там можно html разметку исправить динамически. Пример с тегом title есть в разделе v2.x Compability (return context.html.replace(
/)

postProcessHtml: function (context) {
          var titles = {
            '/': 'Home',
            '/about': 'Our Story',
            '/contact': 'Contact Us'
          }
          return context.html.replace(
            /<title>[^<]*<\/title>/i,
            '<title>' + titles[context.route] + '</title>'
          )
        }
Ответ написан
Комментировать
Пригласить эксперта
Ответы на вопрос 2
@AleksRap
Попробуйте на каждой странице в хуке жизненного цикла mounted() сделать так document.head.querySelector('...') вместо ... селектор мета тега по какому либо атрибуту и далее меняем значения у атрибутов нужного тега
Ответ написан
Комментировать
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы