You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Optimizely CMS:如何修改HyperLink Editor的Open in字段及选项文本?

HyperLink Editor Image

我一直尝试寻找方法,将HyperLink Editor中的“Open in”字段修改为“Target”,额外需求为同时修改该字段的选项文本。

我曾尝试使用EditorDescriptor方案,但“Open in”并不被视为Provider。

请问有可行的解决思路吗?


可行解决思路

1. 本地化资源文件替换(推荐)

Optimizely后台UI的文本大多由本地化资源文件管控,直接自定义资源文件覆盖默认文本即可:

  • 在项目~/Resources目录下创建对应语言的资源文件,比如中文环境用EPiServer.Cms.Shell.UI.zh-CN.resx,通用环境用EPiServer.Cms.Shell.UI.resx
  • 在资源文件中添加以下键值对(根据需要修改值):
    • 键:contentediting/hyperlinkeditor/openin,值:Target
    • 键:contentediting/hyperlinkeditor/samewindow,值:当前窗口(替换原“Same window”)
    • 键:contentediting/hyperlinkeditor/newwindow,值:新窗口(替换原“New window”)
  • 确保项目配置优先加载自定义资源文件,系统会自动替换对应文本

2. 自定义编辑器客户端视图

如果本地化方式无法满足特殊布局需求,可自定义编辑器视图:

  • 复制Optimizely默认的hyperlinkeditor.html视图代码(可从官方Shell UI源码中获取)
  • 修改视图里“Open in”相关的标签和选项文本
  • 通过EditorDescriptor指定使用自定义视图:
[EditorDescriptorRegistration(TargetType = typeof(Url), UIHint = "CustomHyperLink")]
public class CustomHyperLinkEditorDescriptor : EditorDescriptor
{
    public override void ModifyMetadata(ExtendedMetadata metadata, IEnumerable<Attribute> attributes)
    {
        base.ModifyMetadata(metadata, attributes);
        metadata.CustomEditorSettings["uiView"] = "~/Views/Editors/CustomHyperLinkEditor.html";
    }
}
  • 在目标Url属性上添加[UIHint("CustomHyperLink")]标记

3. 客户端脚本动态修改DOM

若不想改动资源或视图,可通过脚本在编辑器加载后修改文本:

  • 编写JavaScript脚本监听编辑器渲染事件,修改对应DOM元素文本:
$(document).on("epi-property-rendered", function (e, args) {
    if (args.metadata.editorType === "epi-cms/contentediting/editors/HyperLinkEditor") {
        setTimeout(() => {
            // 修改字段标签
            $("label:contains('Open in')").text("Target");
            // 修改选项文本
            $("option:contains('Same window')").text("当前窗口");
            $("option:contains('New window')").text("新窗口");
        }, 100);
    }
});
  • 将该脚本注册到Optimizely后台的脚本集合中

内容的提问来源于stack exchange,提问作者Emanuel Sarbu

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.19 15:42:22