我可以在不损坏资产 table 的情况下更改 Joomla 2.5 中类别的权限吗?

Can I change permissions for a category in Joomla 2.5 without corrupting asset table?

我可以更改管理控制台的工作,并直接在数据库中更改权限,而不会损坏 Joomla'a 资产 Table?

我们将 Joomla 2.5 用于一个独特的应用程序,我们必须在其中创建数千个类别。唯一的问题是我们无法使用管理控制台更改特定类别的权限,因为它会超时。我们只是想将编辑的权限从 "Inherited" 更改为 "Allowed".

我们正在更改权限的类别不是任何其他类别的父类别。

这不是一项常见的任务。

最好的方法是暂时增加 php.ini 文件中的执行时间。但是如果你想继续进行更改,除非你犯了一个错误,否则它不会破坏数据库。 如果继承了创建删除编辑等权限,那么规则字段中的值将如下所示

{"core.create":[],"core.delete":[],"core.edit":[],"core.edit.state":[],"core.edit.own":[]}

一旦您将继承的编辑为允许的,它就会变成

{"core.create":[],"core.delete":[],"core.edit":{"1":1},"core.edit.state":[],"core.edit.own":[]}

所以 core.edit 有一个包含键 1 和值 1 的数组。您可以对其他人进行类似的更改,但要小心直接更改数据库。请记住,关键一是获得 Public 权限。同样,如果您需要更改经理,它将变为

{"core.create":[],"core.delete":[],"core.edit":{"1":1,"6":1},"core.edit.state":[],"core.edit.own":[]}

可以看到在键6上加了值1,表示Manager有权限edit.Key 1和6分别是public和Manager的group id。如果转到“用户”->“组”,您可以获得组 ID。将为每个单独的组显示右侧 ID。因此,假设您想要组 ID 为 5 的发布者的编辑功能,那么规则列将像这样

 {"core.create":[],"core.delete":[],"core.edit":{"1":1,"6":1,"5":1},"core.edit.state":[],"core.edit.own":[]}