多种语言的网页元描述

问题描述 投票:0回答:1

是否可以为多种语言添加<meta name="description" content="..." />

我知道这个问题已经被问到并在堆栈上回答,但答案并没有解决我的问题。

诀窍是我的网站内容来自资源文件,这些文件是PL和EN版本。该应用程序使用ASP.Net Core中间件(UseRequestLocalization())根据浏览器设置或用户手动更改语言时创建的cookie值来决定使用哪个资源文件,因此有可能永远不会创建它。

正如您所看到的,没有直接指示网站当前显示的语言,因为我不会将该信息推送到URL,也不会将其存储在HTML标记中。

能够做到这样的事情我会非常高兴:

<meta name="description" content="some polish content" />
<meta name="description" content="some english content" />

并根据浏览器语言设置,使用浏览器决定使用哪一个。在ASP.Net Core应用程序中甚至可以这样吗?

编辑,因为人们投票关闭重复的问题而不读我的...

是的,我读过HTML: Multiple language meta descriptions?。它对这个主题有所了解,但首先它对我的情况并没有多大帮助,其次,它是在ASP.Net Core 1.0被引入之前编写的,所以我问是否可能是ASP.Net Core有办法解决这个问题。有一个原因我用我做过的方式标记了我的问题...在投票之前,请阅读更多内容而不仅仅是标题

html asp.net asp.net-core
1个回答
0
投票

您不能发布元描述的多个版本。但是,如果您的网站宣传本地化版本,则可以确保元描述本身使用正确的语言进行本地化。换句话说,你不能只有英文和波兰语的元描述的英文页面,但你可以有一个英文版的页面与英文元描述和波兰版本的页面与波兰元描述。

有关如何设置所有内容的更多信息,请参阅documentation on localization。一旦为项目设置了本地化并建立了资源,就可以将IViewLocalizer注入到您的视图中:

@inject IViewLocalizer Localizer

...

<meta name="description" content="@Localizer["This is my meta description"]" />
© www.soinside.com 2019 - 2024. All rights reserved.