Issues on upgrading from OJS 2.4 to 3.0.2


I have recently upgraded from ojs from 2.4.8 to 3.0.2. Can someone help me how to retain the css of previous version in the updated one?
I am new to OJS system.

Hi @sreeragm,

The OJS 3.x line of releases have a newly written front end that’s substantially different from the OJS 2.x line (e.g. to support more modern designs, responsiveness, etc). You won’t be able to reuse your old CSS without significant adaptation.

Alec Smecher
Public Knowledge Project Team

Thanks for the response Alec. I am just trying to change a minor part of the stylesheet.css. But I am unable to locate the code in the server. The CSS URL for the same is …/index.php/$$call$$/page/pages/stylesheet.css. Can you please help me the location where I can find it.

Thanks again!

In 3.x, you’ll upload your custom stylesheet via:
Administration → Settings → Website → Appearance → Stylesheet

Thanks ctgraham.I will try that out.
Is it possible to edit the HTML code of the index.php? I am trying to add an Id to an existing div so that I can apply my css to it. I tried ‘vim index.php’ but it only shows me the imports and doesn’t display the HTML content of it.

OJS 3.x is structured as an MVC application. URLs are mapped against the controllers under the “pages” folders, and these controllers load different Smarty .tpl files from under the “templates” folders.

Some of the HTML for the site index, for example, can be found here:

What specific div are you wanting to style? We’ve tried to add ids and classes which cover most of the semantics of the structure, but we could be missing some.

Thanks a lot ctgraham, I have found the HTML and even tried uploading the CSS as suggested by you. But this has created a new ambiguity. I have uploaded an external custom css with a minor div styling. But even after uploading it, the changes are not getting reflected possibly due to default theme which overrides my changes. Is there any way I can upload my css which takes my changes and doesn’t get overridden by the default?


The custom stylesheet should be the last stylesheet loaded, allowing any custom rules you specify to override any former rules.

One common trick is that your browser may be aggressively caching the CSS. Force refresh the page to get the latest content.

Use the browser’s web inspector tool to verify that your journalStylesheet.css is loaded last and to confirm what, if any, CSS rules are affecting your content in undesirable ways.

Hi @sreeragm,

If the uploaded stylesheet is not the last one loaded, you may need to patch issue #2268.

Alec Smecher
Public Knowledge Project Team