本文介绍了Sitecore项目显示名称是自动编码的的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

编辑显示名称中包含HTML的Sitecore项目(例如标题)时,HTML会立即编码。再次编辑显示名称显示<em>Title</em>已转换为&lt;em&gt;Title&lt;/em&gt;

我们没有执行此操作的任何自定义代码;是否有配置参数或其他内容可以控制如何编码显示名称?

[编辑]为了清楚起见,如果我编辑项目的显示名称以添加HTML,然后再次编辑它,则显示名称中包含的HTML已被编码。"显示名称"字段中有几个较旧的项目包含HTML,并且它已正确呈现。

例如,首先我编辑项目的显示名称以添加强调标记.

.您可以在内容树中看到显示名称是如何更新的。

但是,如果我再次编辑该项目,Sitecore会按如下所示对HTML进行编码.

奇怪的是,内容树中的其他(较旧)项目的显示名称中已包含HTML,并且HTML已正确呈现(请参阅下面显示名称中带有标记的项目)。

我的问题是:什么可能导致对HTML进行编码?

要回答"您首先为什么要这样做?"这个问题,我会回答说,这是曾经有效的遗留代码,但现在突然不起作用了。我不是在构建新系统;这是我正在排除故障的现有网站。

推荐答案

您的问题有点混乱。你到底希望看到什么,而不是你实际看到的是什么?显示名称是一个简单的文本字段,它不是富文本.我不相信Sitecore在这里做任何编码。

现在,您可以通过从renderField管道中删除Sitecore.Pipelines.RenderField.GetTextFieldValue,使Sitecore跳过单行文本字段的解码步骤。然后,您将获得该字段中的所有内容,而不是&lt;em&gt;Title&lt;/em&gt

好的,我想我现在明白为什么你的问题把我弄糊涂了。您问题的输入是否已解码?

编辑:顺便说一下,此管道条目GetTextFieldValue是最近添加的.介于6.3和6.6之间的某个时间。

这篇关于Sitecore项目显示名称是自动编码的的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持!

08-23 20:12