njnesterov
@njnesterov
CEO EventSide LLC

Как реализовать Angular SEO, meta теги для шейринга (facebook, vk)?

Добрый день, столкнулся с такой проблемой: необходимо шейрить (как с помощью кнопки share, так и с копипаста url-а) ссылки в vk и facobook с красивыми постерами и правильными тайтлами. Обычно это реализовывается с помощью мета тегов:
...
<meta property="og:title" content="" />
<meta property="og:image" content="" />
...


Но у меня ангуляр приложение и просто так сделать не выйдет. Первое, что приходит в голову, это сделать вот как то так:
...
<meta property="{{meta.property}}" content="{{meta.content}}" />
...

И через $rootScope передавать данные. Но что-то мне подсказывает, что это плохая идея.
Есть у кого-то идеи, как можно реализовать красивый шейринг страниц сайта в facebook и vk с отображением картинок, заголовков и описания?
  • Вопрос задан
  • 721 просмотр
Пригласить эксперта
Ответы на вопрос 2
dshster
@dshster
Javascript, Frontend
На каждый метатег вешаете директиву, в директире в функции link включаете $watch (или $on) переменной из $rootscope и при обновлении заносите в аттрибут content.

Переменная в $rootscope меняется при загрузке новости (или транслируется в $broadcast), например.

Кстати,
<meta property="{{meta.property}}" content="{{meta.content}}" />
вот так делать не нужно, лучше добавить в content и property значения по-умолчанию, например общее описание сайта.

Потом всё это дело повесить на Prerender.io, чтобы при запросе от гугла с параметром _escaped_fragment_ выдавалась отрендеренная страница.
Ответ написан
Комментировать
R0dger
@R0dger
Laravel/Yii/2 AngularJs PHP RESTful API
В гугле забанили?
https://github.com/steeve/angular-seo
Ответ написан
Комментировать
Ваш ответ на вопрос

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

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