2017-04-26 109 views
1

我知道可以使用扩展管理器扩展内容类型,但可以限制默认内容类型,以便它们不适用于非管理员?Mura CMS 7 - 限制内容类型?

例如,假设我扩展'Page'并创建一个名为'Product Page'的子类型,是否有一种方法可以在创建新页面时隐藏或排除默认页面选项,以便编辑者只能选择我创建的子类型?

编辑:

这里有更多的信息: 我创建“页”的几个类扩展(或修改现有的扩展),如“家”,“信息页面”,“文章页面”。 enter image description here

圆圈型“Page”是我想要隐藏的用户。 per @ Miguel-F中,我还通过“config.xml.cfm”文件创建了一个类型为“Page”的子类型为“Default”的扩展。回到管理员端,我去了Extension Manager: enter image description here

并修改了“Page/Default”。在这里,我选择了“是”,以便用户只能使用特定的子类型,然后取消选择“默认”选项,只选择我希望我的用户可以使用的类型: enter image description here 我已经设置了测试用户不是管理员,并试用了该账户,但是当他们去添加内容时,他们会得到上面相同的“选择内容类型”屏幕图片,并带有我不想让他们拥有的“页面”选项。

+0

您是否在限制您的新类扩展或默认页面类型下的子类型?我知道你可以在类扩展下通过选择“允许用户只添加特定的子类型?”选项。当您选择“是”时,它会显示一个包含所有可用子类型的框,让您选择并选择要允许的子类型。看到这个参考 - https://groups.google.com/forum/#!topic/mura-cms-developers/nTm-O3ejyOA –

+0

不,我问的是限制(即隐藏)的默认类型。因此,当他们选择添加新内容时,我的内容编辑人员不会允许我的内容编辑人员在弹出窗口中选择“默认”页面类型,他们只能看到我的“产品页面”类型(这是默认页面类型的子类型/扩展名) 。那有意义吗? – JesseEarley

+0

我不确定您是否可以按用户执行操作,但您可能可以按站点执行操作。试试这个,在Class Extension Manager下进入Mura admin。点击“页面/默认”类扩展,然后编辑该类扩展。正如我之前提到的,“允许用户仅添加特定的子类型”部分有一个部分。如果您选择“是”,它将显示子类型。只选择你想允许的子类型。注意:如果这项工作将会限制整个网站的默认网页内容子类型。您可以对“文件夹/默认”等进行相同的操作。“默认”的子类型表示基础Mura子类型。 –

回答

1

如果您想要通过css或javascript隐藏默认页面内容类型的路线,您应该能够使用Steve Withington创建的以下要点作为示例。

https://gist.github.com/stevewithington/82028081148217ada55b

+0

我试过这个,重新加载我的网站(和Mura应用程序),并没有看到任何改变。我也没有看到源代码中的脚本。即使只是添加一个试图抛出JS警报的测试也不会产生任何结果,所以代码似乎没有运行。 – JesseEarley

+1

事实上,我明白了为什么它不起作用,在IF语句中有两个条件,一个对于Mura来说似乎不是真的。7.移除第二个条件使得这个工作成为可能。不知道这是否是最好的解决方案,但现在可行。谢谢! – JesseEarley

+0

你能指点我那行代码,所以我可以评估它的核心修复? –

0

availableSubTypes属性(名为“允许用户添加只有特定亚型?”在管理UI)定义了内容的儿童家长页面与特定类型可用的类型。这个名字有点令人困惑:availableSubTypes没有定义类型的可用子类型。

因此,如果您只使用子类型,并且想要限制各处的可用类型,则必须为所有新子类型添加可用类型的列表,而不仅仅是Page/Default(实际上,它不一定需要页面/默认,因为你不会使用它)。