首页> C#> Sitecore的-以编程方式修改模板的源字段
作者:互联网
当前,我们创建的所有模板都有其路径为字符串的源字段.
例如:
“ sitecore / content / Test”
现在,如果我想将“测试”文件夹移至
sitecore/content/Shared/Tags/Test
链接断开.
如果我手动将其更改为使用GUID(使用build选项),则会得到:
datasource={62CF8494-B148-4B2E-9D36-52EC4CD75E13}&database=master
如果现在移动测试文件夹,则我的链接保持不变.
我想编写一个遍历树的例程,并更新模板的所有源字段(仅在特定文件夹中),以包含GUID和数据库名称.
这可能吗?
我尝试在从PublishItemProcessor继承的类的Process方法中执行此操作,并在web.config中添加了适当的条目.调用了此方法,但是该字段的Source属性是只读的,无法修改.
有任何想法吗?
提前致谢.
解决方法:
这里最好/最有效的选择是使用Sitecore Powershell扩展来修改项目.
您也可以在代码中执行此操作.
您需要编写一个以/ sitecore / templates / user定义或您的根文件夹为开头的例程(代码或SPE).
遍历树并获取所有具有模板的项目:“模板字段”.然后,您可以检查Source字段的值.如果要更改,请更新值并保存.
请记住在更新所有值之后发布模板树.
标签:sitecore,c 来源: https://codeday.me/bug/20191119/2033571.html