我正在考虑在Umbraco中创建自定义应用程序/标签,作为当前应用程序(内容,媒体等)的补充。我正在创建的标签称为“文章”,仅列出了文章doctype的节点(我将通过登录用户进入过滤此节点的操作)。
我要对其进行设置,以便在登录时,用户仅会看到“文章”的此选项卡,而看不到其他(内容,媒体...)的选项卡。
我了解我不能简单地取消选中用户权限中的“内容”选项卡,因为这将删除用户对所有节点的访问权限,因此他们将无法在此新选项卡中浏览任何节点。
我想知道的是,有没有一种方法可以向用户隐藏此选项卡?
有点背景
我试图建立一个系统,使内容树依赖于当前用户。因此,用户1仅会看到他们的文章等。在内容中设置起始节点是不够的,因为用户应该有权访问处于不同级别的其他节点。因此,我决定创建一个自定义应用程序/选项卡,以获取当前用户的所有节点。首先,我发现我不能简单地从他们的权限中删除“内容”选项卡,而这导致我到了这里。任何帮助/指针都将非常棒!
最佳答案
我不知道您在umbraco论坛中是否有运气,但是也许您可以通过在标准内容树中进行一些过滤来避免执行完整的自定义部分?
这可以通过使用BaseContentTree类公开的事件来实现。此页面上的最后一个代码示例显示了如何仅在内容树中向管理员用户显示某些页面的示例:http://our.umbraco.org/wiki/reference/api-cheatsheet/using-applicationbase-to-register-events/event-examples
直接在此树上进行过滤的优点是,当使用某些内容选择器数据类型时,过滤也将生效,这将使用户可以选择内容树中的其他节点。
关于c# - 在Umbraco中隐藏用户的“内容”选项卡,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/11709502/