我们需要为在Sitecore RTE中创作的单词实施工具提示。
背后的想法是用户应该能够将鼠标悬停在单词上并查看其描述/含义。
这可以在sitecore中实现吗?在市场上快速搜索但找不到任何模块。
答案 0 :(得分:2)
以下是为实现您所描述的内容而需要考虑的一些选项。
在renderField管道中注入工具提示HTML
在此选项中,您将扩展renderField
管道。首先,您需要确保处理富文本字段,如果是,请找到术语并将其替换为工具提示所需的必要标记。这可以简单到将单词包含在<abbr>
或带有CSS类的<span>
元素中。术语列表和工具提示内容可以来自Sitecore中的项目或自定义Sitecore词典。缓存这些术语非常重要,因为每次渲染一个字段时都会频繁调用此管道处理器。
使用JavaScript进行渐进增强
这种方法几乎完全基于客户端。在JQuery的帮助下,可以很容易地找到和替换术语。如果术语列表的大小合理,则可以将它们引导到JavaScript变量中。定位和增强术语后,可以在悬停或单击术语时对REST端点进行单独的异步调用。 API将接受一个术语并使用术语的定义进行回应。
RTE编辑器中的HTML代码段
Sitecore RTE编辑器可以使用其他按钮进行扩展。其中一个选项允许您插入HTML的预定义片段。 RTE编辑器还有一个设置,用于指定CSS文件以对字段内的内容进行样式设置(<setting name="WebStylesheet" value="/css/yourstylesheet.css" />
)。为了定位描述标记并使其可见以进行编辑,样式化是必要的,而在公共站点上,默认情况下通常会隐藏描述标记,直到单击该术语或将其悬停在上面。
动态链接替换