[Solved] Possible to have different themes for multiple hosted journals in a single OJS instance?


I’ve search the forums and can’t find a similar topic.

I have a new empty OJS 3.1.2-1 test site with multiple hosted journals. I would like to try out different themes for each journal.

I’m just looking at the official themes like healthSciences, classic and immersion first.

But so far, I am only able to change the theme for the main site, not for any of the hosted journals.

I can do the following:

Go to Administration > Site Settings > Site Setup tab > Theme drop-down; then select the installed theme that I want and click Save. That changes the theme for me on the main OJS site install.

However, when I try to do the same for an individual journal:

Go to Administration > Hosted Journals > Expand the journal I want > click Settings wizard > Appearance tab > the Theme drop-down only shows the ‘Default Theme’ and none of the additional ones.

Am not sure if it’s relevant but there are multiple PHP warnings in the server logs:

PHP Warning:  Parameter 1 to GridHandler::fetchRow() expected to be a reference, value given in ojs-3.1.2-1/lib/pkp/classes/core/PKPRouter.inc.php on line 390, referer: https://server.name/index.php/index/admin/settings
PHP Warning:  count(): Parameter must be an array or an object that implements Countable in ojs-3.1.2-1/cache/t_compile/65bfc3e024c2e9104f46e23b73376a9455e3df0e^51cfb9321c891ada9323e7942962579e7e4324d1_0.app.frontendpagesindexSite.tp.php on line 46, referer: https://server.name/index.php/index/admin/settings
PHP Warning:  Declaration of MastheadForm::fetch($request, $params = NULL) should be compatible with ContextSettingsForm::fetch($request, $template = NULL, $display = false, $params = NULL) in ojs-3.1.2-1/controllers/tab/settings/masthead/form/MastheadForm.inc.php on line 18, referer: https://server.name/index.php/journal2/admin/contexts?openWizard=1

Relevant versions:

Version: OJS 3.1.2-1
PHP: 7.2.19
Host: Ubuntu 18.04 with Apache 2.4.29

Any help would be appreciated. Hopefully I’ve just missed something simple.


You’ll want to enable the theme plugins for each journal, as well as at the site level.

Settings → Website → Plugins

1 Like


Thanks for the speedy reply!

Ahh I see, I didn’t even realise there was a side menu with ‘Settings’. I was only looking at the ‘Settings wizard’ link under the journal name. I wasn’t using the top-left drop-down of journals to go into each journal.

Ok that’s great, thanks for the help. I can see how to enable them now via the Settings > Website > Plugins link.