Creating Plug-Ins for the Administrator

There is decent amount of information of how to make plug-ins for OJS3, particularly themes. However, there isn’t much on how plug-ins can be made for administrators. Is there any documentation on this? I am with this issue from the perspective of hosting multiple journals, so having a few centralised controls would be of great help. :slight_smile:

1 Like

Hi @Srivats_Shankar

Currently we have a hard distinction between “Site Plugins” and “not Site Plugins” via Plugin::isSitePlugin() i.e. <sitewide>1</sitewide> definition in the plugin version.xml file. Those plugins can be managed only by administrators.
Depending on the functionality that you need, it can or cannot be (easily) made with the current plugin tools set/infrastructure, e.g. using the existing hooks.
There is also a lot of improvement possibilities of the current plugin tool set, e.g. see this issue: Clarify the implementation of "Site" plugins · Issue #1923 · pkp/pkp-lib · GitHub
So if you would give us some example, we could think about it, if that could be made with the current plugin tool set or not…

Best,
Bozana

Thanks @bozana . So maybe a few things I was thinking about, could include centrally managing the themes, including plug-ins to handle specific forms of data need to be seen across multiple journals, add entries to the of all pages across the site (to have centralised tracking) and centralised searching of all journals.

These were a few things I was thinking of, I will add more if I can remember them. Essentially, the site aims to be a place for law journals to host their articles and make them available for open access. While each journal can have some minimum amount of customisation, generally they need to have some consistency. Which is why the question.

Although, seems really useful, it isn’t exactly what I’m looking for in this context, but thanks a lot for that information because I would like some controls to be managed individually by the administrator. However, I am focusing on having certain plug-ins that can be activated by the administrator, without having to go into any specific journal to modify the settings. Is there anything like that the moment? Say like being able to create static pages for the main page (not journal specific)

See this issue in GitHub, especially the initial feature requests / requirements:
https://github.com/pkp/pkp-lib/issues/1923

This is in development. I’d welcome your thoughts on whether this will cover your needs, or if you see any gaps.

1 Like

Thanks @ctgraham. I saw that @bozana also, pointed towards this issue. At the moment, there is no way to create such a plug-in using the existing tools? Although, it seems really interesting to mark the administrative page as Journal 0, to manage these functions.

I look forward to seeing it officially implemented in 3.1. :slight_smile:

1 Like