【发布时间】:2020-05-29 09:39:34
【问题描述】:
我正在从我们的旧内容管理系统导入内容。我正在尝试将位于内容(新闻文章、页面控件等)中的链接更新为 Sitefinity 类型的链接,链接到 SF 页面、新闻文章等。我试图重新创建锚的结构标记,包括 sfref 属性,但 publish 不会删除 sfref 属性,并且 publish-and-sync 不会将 URL 更新到新服务器。如何使用 API 正确执行此操作?
【问题讨论】:
标签: c# sitefinity
我正在从我们的旧内容管理系统导入内容。我正在尝试将位于内容(新闻文章、页面控件等)中的链接更新为 Sitefinity 类型的链接,链接到 SF 页面、新闻文章等。我试图重新创建锚的结构标记,包括 sfref 属性,但 publish 不会删除 sfref 属性,并且 publish-and-sync 不会将 URL 更新到新服务器。如何使用 API 正确执行此操作?
【问题讨论】:
标签: c# sitefinity
您需要这样做:
假设您有以下旧系统中的 html:
Check our <a href="/about-us">About Us</a> page.
现在,假设您在 Sitefinity 中创建了“关于我们”页面。
你需要找到页面节点对象(sf_page_node表)并获取它: root_id 和 id 值。 假设它们看起来像这样:
rootId: f669d9a7-009d-4d83-ddaa-000000000002
Id: b5d84f10-3660-42e4-b2c0-b89db2d6c884
那么需要存入数据库的html sn-p应该是这样的(在v.12.2测试过)
Check our <a href="[f669d9a7-009d-4d83-ddaa-000000000002]b5d84f10-3660-42e4-b2c0-b89db2d6c884">About Us</a> page.
对于图片,假设你的 html 中有这个:
<img src="/images/image1.jpg">
我假设您已将 image1.jpg 上传到 Sitefinity,并且您知道它的 Content_Id(来自 sf_media_content 表)。
那么你需要将以下html保存到数据库中:
<img src="[images|OpenAccessDataProvider]1dd75953-b4a8-46f6-93b9-6b29f5a62a04" data-displaymode="Original" alt="image1" title="image1.jpg">
这里我假设您使用默认提供程序 - OpenAccessDataProvider 并且 LIVE 图像的 content_id 是 1dd75953-b4a8-46f6-93b9-6b29f5a62a04
【讨论】: