Динамическое добавление метатегов - угловых - PullRequest
1 голос
/ 09 апреля 2019

Я интегрирую Angular Universal в свое приложение Angular 7.

1-й способ (В настоящее время в работе): мои (все отдельные) блоги публикуются в виде отдельных файлов html,загружен непосредственно в корзину S3 (для целей SEO), которая включает title, description и мета-теги.

2-й способ (фаза разработки): теперь я интегрирую Angular Universalто, что я делаю, так это то, что я обслуживаю отдельные блоги по угловым маршрутам, таким как <url>/view-blog/{id}.Я добавляю title и метатеги, используя MetaService, как показано ниже

  ngOnInit() {
    this.initialize();
  }

  initialize() {
    let blogId = this.route.snapshot.params['id'];

    if (AppUtils.isUndefinedOrNull(blogId)) {
      // Return back to main blog page
      this.router.navigate([constants.pageUrl.blogs]);
      return;
    }

    this.loading = this.blogService.getBlogById(blogId).subscribe(
      (resp: any) => {
        this.blog = resp.blog;

        this.metaService.setTitle(this.blog.title, true);
        this.metaService.setTag("keywords", this.blog.metadataKeywords);
        this.metaService.setTag("description", this.blog.name);

      }, (err) => {
        // Deal with error
      }

    )
  }

Используя приведенный выше код, мы ожидаем, что служба вернет мета-теги, будет Angular-Universalи MetaService помочь сканеру находить мета-теги?

Также является ли "2-й способ" правильным способом показа блогов (имея в виду, что заголовок, описание, ключевые слова и весь набор SEO-материалов)для гусениц)?Или просто придерживаться «1-го пути»?Какая лучшая практика?

1 Ответ

0 голосов
/ 27 апреля 2019

Я не могу рекомендовать вам использовать второй способ. Большинство сканеров не выполняют код JavaScript, поэтому они никогда не узнают, что это за заголовок. Попробуйте жестко закодировать всю важную информацию для сканеров в HTML.

...