我使用 Transloco 在 Angular 上制作了多语言网站(3 种语言)。意味着,我没有为每种语言提供不同的页面版本或子域,我只是在 Transloco json 文件中拥有所有文本内容。它只是一个文件index.html,我可以在其中设置html属性“lang”。对于一些不同的语言我该如何做?
还有一个:我翻译标签标题和描述,并为 SPA 中的每个页面设置不同的内容。这足够了还是我应该做点别的事情? 抱歉,我的问题可能很愚蠢,但这是我的第一个“SEO”。
现在看起来像这样:
<html lang="en">
所以这不行。 例如,对于更改标题,我使用 updateTitle 方法,并且我只是使用 Transloco 更改当前标题值。
我在 LocalStorage 中有当前语言的信息,意味着我可以通过 localStorage.getItem("lang") 获取“en”、“it”或“es”,但是如何将其放入
<html lang="">
?
您可以使用以下代码:
import { DOCUMENT } from '@angular/common';
...
enter code here
export class AppComponent implements OnInit {
constructor(@Inject(DOCUMENT) private document: Document) {}
ngOnInit() {
this.document.documentElement.lang = localStorage.getItem("lang");
}
...
}