Create Free Custom OJS Themes for a Unique Journal Look

Welcome to this step-by-step guide on how to make custom OJS themes. OJS is a popular open-source platform used by many scholarly journals for managing their publications. While OJS offers a range of default themes, creating a custom theme can help give your journal a unique and professional look and better reflect your journal’s identity. This blog will also address the need for custom OJS themes in detail.

This guide will take you through creating custom OJS themes, starting with setting up your development environment, creating a basic theme, and customizing your theme to meet your journal’s specific needs.

By the end of this guide, you will understand the tools and techniques needed to create custom OJS themes. Moreover, you can create great OJS themes that provide a better user experience for your authors and readers.

Steps to create custom OJS themes

Creating a custom theme in Open Journal Systems can be a rewarding and worthwhile investment for any journal editor or publisher. With a little creativity and attention to detail, you can create a theme that looks great and enhances the user experience for your authors and readers. So why not see what you can create by following the below step?

Steps to create custom OJS themes

Step 1: Create a new directory for your theme

Create a new directory for your theme
  • The first step in creating custom OJS themes is to create a new directory for your theme. 
  • This directory will contain all the files and assets that make up your theme. 
  • Navigate to the plugins/themes directory of your OJS installation and create a new directory for your theme. 
  • Give your theme directory a unique and descriptive name that reflects your journal’s identity.

Step 2: Create the necessary files

Create the necessary files
  • After creating your theme directory, you need to create the necessary files that make up your theme. 
  • At a minimum, your theme should have index.php and style.css files.
  • The index.php file is the main file of your OJS themes, and it contains the HTML markup that defines the structure and layout of your journal pages. 
  • You can use HTML and OJS template tags to create your theme’s layout. 
  • OJS template tags are placeholders that get replaced with actual content when your journal pages are rendered. For example, the {$pageTitle} template tag replaces the current page’s title.
  • Here is an example index.php file that defines a simple two-column layout:
ojs index.html file
{extends file="layout.tpl"}

{block name="sidebar"}
       <div class="sidebar">{$sidebar}</div>

{block name="content"}
       <div class="content">{$content}</div>
  • In this example, we are extending the layout.tpl file, which is a default template file provided by OJS. We are defining two template blocks, “sidebar” and “content,” and using the {$sidebar} and {$content} template tags to render the sidebar and content of our journal pages.
  • The style.css file contains the CSS styles that control the appearance of your journal. CSS can change your journal’s fonts, colours, spacing, and other visual aspects. 
ojs style.css file
body {
font-family: Arial, sans-serif;
background-color: #f1f1f1;
color: #333;

Step 3: Add your theme to OJS

Add your theme to OJS

Once you have created your OJS themes directory and files, you must add your theme to OJS.

  • Login to your OJS dashboard, 
  • Navigate to the “Website” tab, and
  • Click on “Appearance.” 
  • Find the “Installed Plugins” tab, click “Install a New Plugin,” and 
  • Upload the zip file containing your theme files.

OJS will validate your plugin and extract the files to the appropriate location. Once the installation is complete, you should see your theme in the “Installed Plugins” tab.

Step 4: Activate your theme

Activate your theme
  • After installing your theme, you must activate it to use it in your journal. 
  • In the “Installed Plugins” tab, you should see your theme listed with an “Enable” button next to it. Click on the “Enable” button to activate your theme.
  • Once your theme is enabled, it will be used as the default theme for your journal. 
  • You can customize your theme further by editing the index.php and style.css files and adding new template files.

Step 5: Customize your OJS themes

Customize your OJS themes

After activating your theme, you can customize it to make it unique and better reflect your journal’s identity. Here are some tips for customizing your theme:

  • Add a custom logo and favicon: You can replace the default OJS logo and favicon with your custom logo and favicon. To do this, replace the public/favicon.ico and public/images/ojs_logo.png files with the files in your theme directory.
  • Change the colour scheme: You can change the colours used in your theme by editing the style.css file. Look for the CSS rules that set the colours for various elements, such as the background, font, link, etc. You can use a tool like Color Hunt or Adobe Color to find a colour scheme that works well for your journal.
  • Modify the layout: You can modify the layout of your theme by editing the index.php file. You can add or remove template blocks, rearrange the position of blocks, or change the HTML markup to create a custom layout that meets your journal’s needs.
  • Add custom fonts: You can add custom fonts to your theme by including the font files in your theme directory and referencing them in the style.css file using the @font-face rule. You can use Google Fonts to find free, easy-to-use web fonts that work well with your theme.
  • Add custom images and icons: You can add them to your theme to make it more visually appealing. You can use free icon sets like Font Awesome or Ionicons or create your icons using Adobe Illustrator or Inkscape.
  • Create custom templates: You can create custom templates to override the default templates provided by OJS. For example, you can create a custom template for the homepage, the article page, or the author page and customize the layout and content of these pages to better meet your journal’s needs.
  • Test your theme: After making changes to your theme, it’s important to test it to ensure everything looks and works as expected. You can use the preview feature in the OJS dashboard to preview your theme on various pages and devices or use a tool like BrowserStack to test your theme on different browsers and operating systems.

To get exciting custom ojs themes, CLick Below.

Get OJS Themes>>
OJS Themes

Why are custom OJS themes important?

Why are custom OJS themes important?

OJS offers a range of default themes, and customizing the theme can be beneficial for several reasons, as stated below.

  • Branding: Customizing the theme allows the journal to create a unique brand identity. This helps in building recognition and trust among the readers and authors.
  • User experience: Customizing the theme can significantly improve the user experience. A well-designed theme can make the website easy to navigate, reducing users’ time to find what they want.
  • Functionality: Customizing the theme can add functionalities that may not be present in the default theme. This can improve the website’s capabilities and the user experience.
  • Personalization: A custom theme can allow the journal to personalize the website’s appearance and functionality. This can help create a more user-friendly environment that caters to the users’ needs.
  • Compatibility: Customizing the theme can ensure compatibility with different devices, browsers, and operating systems. This can provide a seamless experience for users across different platforms.

Are Custom OJS themes safe?

Are Custom OJS themes safe?

Open Journal System (OJS) custom themes are generally safe if developed and installed properly. However, some potential risks associated with custom themes need to be considered, as stated below:

  • Security: Custom themes can introduce vulnerabilities that hackers could exploit, leading to security breaches. For instance, if the theme has not been developed properly, it could allow attackers to inject malicious code, leading to data breaches and other security issues.
  • Compatibility: If the custom theme has not been tested thoroughly, it could cause compatibility issues with different devices, browsers, and operating systems, leading to a poor user experience.
  • Frequent Upgrade: It is also recommended to regularly update the theme to fix any potential vulnerabilities and ensure compatibility with the latest version of the OJS platform.

Ensuring the custom theme is developed by a reputable developer who follows best practices is essential to mitigate discussed risks.


Creating a custom theme in Open Journal Systems can be a great way to give your journal a professional and unique look. By following the steps outlined in this blog, you can create a visually appealing and user-friendly theme that reflects the identity of your journal. Customizing your theme can help you stand out in a crowded field of scholarly journals and provide a more engaging experience for authors and readers.

With the customization options available in OJS, you can change everything from the colour scheme and layout to the fonts and images used in your theme. Creating custom templates can also give you greater control over the appearance and functionality of your journal. By testing your theme on various devices and browsers, you can ensure it looks and works as expected for all users.