Umbraco UFM 组件用于扩展 Umbraco 的 Markdown 渲染,通过自定义语法标记把文本转换为 HTML,例如本地化字符串、属性值或自定义 UI 元素。内置组件包括 {#key} 或 {umbLocalize:key} 本地化、{=property} 或 {umbValue:property} 属性值、{umbContentName:id} 内容名称、{umbLink:url} 带样式链接。
使用方式:先获取官方最新文档(Foundation、Extension Registry、UFM 三个链接),再按四步工作流——拉取文档、确认标记与输出与动态数据、生成 manifest 与组件文件、说明如何测试。实现上需注册 ManifestUfmComponent,type 为 'ufmComponent',meta.alias 为长格式标记名(如 {myCustom:value}),meta.marker 为可选短标记(如 {%value}),api 指向实现文件;组件继承 UmbUfmComponentBase 并实现 render(token),token.text 为标记后的文本。
关键限制:UFM 后处理清洗器只保留以 umb-、ufm-、uui- 开头的自定义元素标签名,其他前缀(如 my-hidden-label)会被移除。最佳实践包括选择易记的短标记、返回安全 HTML(转义用户输入)、保持渲染轻量、考虑可访问性。官方仓库示例位于 /Umbraco-CMS/src/Umbraco.Web.UI.Client/examples/ufm-custom-component/。涉及本地化与数据访问时可参考 umbraco-localization、umbraco-context-api 技能。除上述资料外,具体收费、版本要求与平台支持暂未提供。