I have a Custom J4 Component that should have different types of contents. So called "items" and "packages". The items are done so far and using the default J4 categories via "com_mycomponent" and the default ACL Structure.

Now I'm on the way to implement my second model "packages" which also needs a category interface - but this should not be the same as for items (items and packages does not share the same categories). For me it looks like it does not matter if a component exists or not in the categories table for the column "extension".

As far as i can see its only a problem on ACL side here. Joomla checks by default the "access" com_mycomponent > "category" section of my access.xml file (for items) - and in this case com_mycomponent is similar to the value inside the extension column of the categories table right? So how can i create a set of ACL for my "packages" categories?

any hints someone? Or how you guys solve those cases? I don't think this is such a super special requirement and someone with more experience has certainly been confronted with it. Edit: My default access.xml:

<access component="com_mycomponent">
    <section name="category">
        <action name="core.create" title="JACTION_CREATE" />
        <action name="core.delete" title="JACTION_DELETE" />
        <action name="core.edit" title="JACTION_EDIT" />
        <action name="core.edit.state" title="JACTION_EDITSTATE" />
        <action name="core.edit.own" title="JACTION_EDITOWN" />
    <section name="component">


1 Answer 1


I think you do not need create another "group of categories", if you do, you will lose the point of bring categories to your component.

Just use the one you have. Create a different parent category for each, items and package, and will be enough. Each parent categoy with they own permissions will be enough for control what you want to acomplish.

  • thanks for your answer, yes this is how its currently implemented
    – Marco
    Nov 23, 2022 at 6:50

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.