本布拉科语中带有特殊字符的元描述



我在 Umbraco 的元文本和替代文本中使用特殊字符时遇到问题。

我正在使用元描述和替代文本进行测试,如下所示:测试测试 æøå

它会生成以下输出:

<meta name="description" content="Test test &#230;&#248;&#229;">
<img src="#" alt="Test test &#230;&#248;&#229;" />

如果我在标题标签和正常内容中插入相同的文本,那么输出就完美了。

生成元标记和标题标记的代码如下所示:

<!DOCTYPE html>
<html lang="da">
<head>
  <meta charset="utf-8">
  <meta name="description" content="@Umbraco.Field("pageDescription")">
  <title>@Umbraco.Field("pageTitle")</title>
</head>

这些文件使用记事本++保存为utf-8。

如果我直接在 HTML 中插入 æøå,那么它显示 æøå 没有任何问题。

我也试过这个:

<p>@Umbraco.Field("pageDescription")</p>

然后它正确显示"æøå"。

有人知道我做错了什么吗?

提前感谢!

勒内

看起来这是 Razor 的一个"功能",它将始终对属性进行 HTML 编码。请参阅: 剃刀 - @Html.Raw(( 仍在编码和在元标记属性中

因此,要解决此问题,您可以执行以下操作:

<meta name="description" @Html.Raw("content=""+ @Umbraco.Field("pageDescription") + """) />
<title>@{ var title = new HtmlString(Umbraco.Field("pageTitle").ToString());}@title</title>

它不漂亮,但它有效。

相关内容

  • 没有找到相关文章

最新更新