动态添加元标记-角度

时间:2019-04-09 07:18:06

标签: angular seo angular7 angular-universal

我正在Angular 7应用中集成Angular Universal。

第一种方法(正在生产中): 我的(所有个人)博客都作为单独的html文件发布,并直接上传到S3存储桶(出于SEO的目的),其中包括titledescription和元标记。

第二种方式(开发阶段): 现在,我正在集成Angular Universal,我正在做的事情是我从<url>/view-blog/{id}之类的角度路线服务单个博客。我正在使用MetaService添加title和元标记,如下所示:

  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会帮助爬网程序查找元标记吗?

“第二种方式”也是显示博客的正确方法(请牢记标题,描述,关键字以及所有为爬虫设置的SEO内容)?还是只坚持“第一方法”?最佳做法是什么?

1 个答案:

答案 0 :(得分:0)

我不建议您使用第二种方法。大多数搜寻器不会执行JavaScript代码,因此它们永远不会知道标题是什么。尝试用HTML硬编码爬虫的所有重要信息。