Vue SPA SEO

0

Mam mały problem. Zacząłem robić już apkę w vue. I właśnie się zorientowałem, że google i inne serwisy, które wyświetlają tytuł oraz opis wklejonego linku wyświetlają tylko główny tytuł oraz opis z pliku index.html. Chciałbym mieć na każdej stronie inny tytuł oraz opis. Próbowałem użyć vue meta, vue headful. No i to działa, ale google i inne serwisy tego nie respektują. Co mam zrobić w takiej sytuacji? I po co w ogóle są te pluginy do zmiany danych skoro nic realnie nie dają?

2

I po co w ogóle są te pluginy do zmiany danych skoro nic realnie nie dają?

Dają, tylko trzeba przeczytać instrukcję:

https://github.com/troxler/headful

(...) you should either prerender your pages before the deployment or use server-side rendering.

0

Próbowałem użyć vue meta, vue headful. No i to działa, ale google i inne serwisy tego nie respektują

Respektują i to działa tylko najpewniej robisz to źle. Zacznijmy od tego jak działa robot google.
Robot nie wchodzi na twoją stronę i ale nie współgra dobrze ze zmianami DOM robionymi przez JS(w zasadzie to tylko tyle, żeby wyrenderowała się treść). On zaciąga plik z URL, po czym skanuje twoją stronę w poszukiwaniu:

  1. Oznaczeń meta og:*
  2. <title>
  3. Treści : <article>, <h1,2,3,4,5>, <\p>
    Cała reszta treści jest skanowana byle jak bo w sumie jak masz same
    i inne nic niemówiące robotowi bloki HTML to ciężko powiedzieć jak on to zaindeksuje.

Zanim twój widok zostanie w pełni wyrenderowany, to robot już dawno zaciągnął stronę i nie interesują go zmiany, które dzieją się potem. Dlatego **musisz **mu dać stronę, która już ma wyrenderowane meta tagi, tytuł itd. Do tego wystarczy prerendering dzięki prerender-spa-plugin lub jakiś SSR.

1 użytkowników online, w tym zalogowanych: 0, gości: 1