Introduction
Specifically aimed at programmers, this system plugin allows the extension and adaptation of Joomla! and 3rd party core classes.
When building websites, many times there is the need for adaptation or extension of core functionality. For instance,
when a Joomla! list model does not support filtering on a specific user id. An example:
- You are building a website where registered users can manage their own articles, keeping in mind that, since the
introduction of custom fields, articles can be almost anything you can imagine.
- In the frontend you provide a fancy article manager.
- Obviously you don't want users to modify eachother's articles, so you configure the ACL properly.
- You also don't want your users to see eachother's articles in the article manager. That presents you with a problem:
the Category List menu item type does not allow you to filter on an article's created_by
field.
- The conventional approach is to create a template override, in which you run the article list query for a second time,
but this time filtering on the id of the logged in user.
With this plugin you can prevent that second, redundant query. Joomla! core's ContentModelArticles
already has the logic
in place to filter on com_content's created_by
. So the only thing we have to do, is create an override for the getItems()
method of the ContentModelCategory
class, to which we add filtering on the id of the logged in user.
See the GitHub repository for the latest documentation (click Documentation in the panel on the right/below).
Use of this extension is soley for the brave and at your own risk. If you don't get it to work the way you want, read the documentation carefully, If you still can't get it to work, you are out of luck, because usage support is not included. Bugs can be filed as issues on GitHub. So can feature requests. Don't count on any of those to be rewarded though.
Obix Class Extender
- Version:
- 1.3.1
- Developer:
- Pieter-Jan de Vries
- Last updated:
-
Mar 14 2023
1 year ago - Date added:
- Jun 24 2021
- License:
- GPLv2 or later
- Type:
- Free download
- Includes:
- p
- Compatibility:
- J3 J4
Share