magnolia 中的自定义命令定义

Posted

技术标签:

【中文标题】magnolia 中的自定义命令定义【英文标题】:Custom command definition in magnolia 【发布时间】:2020-01-31 15:39:50 【问题描述】:

我在 magnolia 自定义模块中创建了一个自定义命令,使用:

public class ExportToGitCommand extends BaseRepositoryCommand 

我现在在 JCR 中手动配置它。

关于在自定义模块中定义自定义命令的最佳做法是什么? 应该在 JCR 结构的什么地方定义它?我问这个是为了以后可以使用它(例如,用于页面应用程序)。 另外,如何在自定义模块中以编程方式从 JCR 获取定义?

【问题讨论】:

【参考方案1】:

要获得最佳实践,最好查看documentation。通常,每个模块都会创建自己的命令目录(文件夹),以确保命令名称没有冲突,并将其定义的自定义命令存储在此类目录下。

要从其他应用中的操作中使用此类命令,您只需在所需应用中创建新操作并引用您要调用的自定义命令。

【讨论】:

谢谢@Jan。如何以编程方式将 JCR 中的命令定义从 modules/myModule/commands/myCatalog/myCommands 添加到我的模块?这是为了在我们升级 Magnolia 时以编程方式添加此定义。 您可以只导出配置并将其放入模块的mgnl-bootstrap。然后它会在安装模块时自动安装,或者您可以使用BootstrapSingleResourceBootstrapSingleModuleResource 或类似的安装任务强制安装更新模块。 感谢@Jan 的回答。

以上是关于magnolia 中的自定义命令定义的主要内容,如果未能解决你的问题,请参考以下文章

获取 magnolia cms 中执行的自定义操作的节点名称

windows 命令提示符中的自定义命令

将自定义字段从 magnolia 5 移动到 magnolia 6

Python中的自定义命令行解析

如何使用页面应用程序中的自定义页面更改默认的 404 错误页面

使用 Blossom 在 Magnolia CMS 对话框中创建自定义字段