链接到另一个episerver页面上的定位点

有没有一种优雅的方式链接到EpiServer中的某些其他页面中的锚点,即使在锚点名称更改之后,这些锚点也会保持链接的相关性? 我95%肯定没有这样做的标准方式,所以对自定义实现的想法是受欢迎的。

有现有的插件,但...

我发现EpiServer的这个插件基本上会从您感兴趣的页面中删除所有锚点,并将它们呈现在TinyMCE wysiwyg编辑器的下拉列表中。 但是,由于锚点没有可以通过更改跟踪它们的唯一属性,因此这些锚点链接会及时腐烂,因为将<a name="Meeting"></a>更改为<a name="Appointment"></a>会使先前创建的链接无效。

关于如何工作的想法

我对EpiServer中如何轻松使用ContentType很不熟悉,但我认为应该可以创建某种属性HtmlAnchors ,它可以是可以在页面上使用的字符串集合。 这些在实践中将被视为常量,并且我相当肯定EpiServer中有一种检查页面属性是否正在使用的方法,因此如果其中一个字符串( HtmlAnchor )在其他页面上引用,它将会是如果不删除引用,则无法删除它。 这将使锚链始终保持一致和可参照。

可能的工作流程:编辑器打开页面属性视图并在“HtmlAnchors”属性上按下+符号。 添加字符串“详细概览”。 然后,使用代码的前端将添加类似于页面模板的内容: <h4 name=@Model.Anchors("detailed-overview")>Overview</h4> ,并在引用页面中使用(截至目前<h4 name=@Model.Anchors("detailed-overview")>Overview</h4>不存在的)url helper @Url.PageLinkWithAnchor(Model.PageLink, "detailed-overview")来创建一个指向该锚点的链接。

如果使用IAnchorPage#Anchors()编辑器,那么它可以使用IAnchorPage#Anchors()来列出现有的锚,并使用IAnchorPage#AddAnchor()来添加锚。

当然,我看到我上面所描绘的东西似乎停留在一个摇摇欲坠的基础上,因为它使用简单的字符串......这可能不会增加其他任何东西而不是开销。

链接地址: http://www.djcxy.com/p/68879.html

上一篇: Link to an anchor on another episerver page

下一篇: Render different partial templates in EpiServer