gpt4 book ai didi

sitecore - 在 Sitecore 中,如何基于现有项目创建新项目

转载 作者:行者123 更新时间:2023-12-04 03:20:49 25 4
gpt4 key购买 nike

我是 Sitecore 的新手。

在 Sitecore 中,我需要让用户能够基于现有项目创建新项目。我正在设想这样的事情:

  • 用户在上下文菜单中单击“插入”
  • 提示用户在树的某处输入另一个项目(它必须基于特定模板)
  • 创建了一个新项目,其中一些字段预先填充了原始项目
  • 中的值
  • 用户现在可以填写其他未预先填写的字段 - 或更改预先填写的值

  • (请注意,新项目基于不同于原始模板的另一个模板)。我不担心对原始项目的更改——它们不需要传播到新项目。

    作为一个初学者,我不知道如何做到这一点。我查看了各种选项:

    一种。克隆。克隆似乎接近我想要的,但我不能在新项目上拥有额外的字段,并且它们不能基于不同的模板。所以我想它不是我真正追求的克隆。 (此外,它们对 Sitecore 来说还很新)

    湾。事件。我想我应该能够拦截“新项目”事件,但我不知道我会如何抛出一个对话框并要求用户选择一个原始项目。

    C。引用原始项目。我已经弄清楚如何创建一个可以包含对原始项目的引用的字段。但是,当用户设置字段时,我如何填充字段 - 以及如何确保用户在执行其他任何操作之前从该字段开始?

    我还研究了命令、钩子(Hook)等...

    所以?有任何想法吗?

    最佳答案

    这将是一项特别重要的任务,如果您是 Sitecore 的新手,这可能会非常困难。

    我建议考虑自定义客户端(这可以通过从内容编辑器编辑 Core 数据库以及在代码中实现一些东西来完成)

    如果您可以访问 Sitecore 开发者网络,这将很有帮助:http://sdn.sitecore.net/Reference/Sitecore%206/Client%20Configuration%20Cookbook.aspx

    这些文章可能会给你一些关于实现的额外想法:

  • http://www.sitecore.net/Community/Technical-Blogs/John-West-Sitecore-Blog/Posts/2010/11/Add-a-Command-to-the-Sitecore-Item-Context-Menu.aspx
  • http://learnsitecore.cmsuniverse.net/en/Developers/Articles/2009/10/My-First-Sitecore-XAML-Application.aspx
  • http://www.markvanaalst.com/sitecore/creating-a-item-editor/
  • http://sdn.sitecore.net/Articles/XML%20Sheer%20UI/My%20first%20XML%20application.aspx
  • http://sdn.sitecore.net/Articles/Customizing%20Sitecore%20Client/Creating%20XML%20Application.aspx

  • 第一篇文章可能是添加上下文菜单项的最佳选择。您可以通过执行以下操作在编译的代码中执行命令:
  • 在您的 Commands.config文件,添加一个项目,例如 <command name="button:copycreateditem" type="Your.Namespace.And.Classname,Your.Assembly" />
  • 在您指定的程序集和命名空间中使用正确的类名
  • 创建一个类
  • 继承自 `Sitecore.Shell.Framework.Commands.Command
  • 实现方法Execute(CommandContext context)
  • 构建
  • CommandContext将提供您进行更改所需的大量必要信息(例如当前选择的项目)。

    希望这将使您走上正确的道路。祝你好运!

    关于sitecore - 在 Sitecore 中,如何基于现有项目创建新项目,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7710949/

    25 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com