Journal Setup & Management
Questions for Journal Managers covering site appearance, content management, search, DOIs, and publishing models.
How can I create a unique look for my journal?
OJS separates design from content, so you have several paths to customisation:
- Choose a theme — The Plugin Gallery includes several community-developed themes beyond the default. Install a theme via Settings → Website → Plugins → Plugin Gallery, then activate it under Settings → Website → Appearance → Theme.
- Upload a custom stylesheet — In Settings → Website → Appearance, you can upload a CSS file to override colours, typography, and spacing without touching template files.
- Configure appearance settings — Upload your journal logo, cover image, and favicon, and choose a colour scheme if your theme supports it — all from the same Appearance panel.
- Develop a custom theme — If your institution has PHP/frontend development resources, a fully custom theme plugin gives complete control. The Designing Your Journal guide covers both basic customisation and custom theme development.
Start with appearance settings and a custom stylesheet before commissioning a full custom theme. Many journals achieve a distinctive look with just a logo, a custom colour palette, and a few CSS overrides.
How do I add a sidebar block?
Sidebar blocks are managed from Settings → Website → Appearance → Sidebar. OJS includes built-in blocks (such as the language toggle, information block, and browse-by-author list) that can be dragged into or out of the sidebar.
For custom content — such as an announcements snippet, a sponsor logo, or a call-to-action box — use the Custom Block Plugin:
- Enable the Custom Block Manager plugin from Settings → Website → Plugins.
- Once enabled, a "Custom Blocks" option appears in the Appearance settings.
- Create a new block with HTML content and drag it to the desired sidebar position.
Sidebar availability depends on the active theme. Some themes do not display a sidebar or display it only on certain page types. Check your theme documentation if a block is enabled but not appearing.
I uploaded a new image but the old one still shows — why?
This is almost always a browser cache issue. Your browser downloaded the old image and is serving it from local storage rather than fetching the new one. Try:
- Hard refresh:
Ctrl + Shift + R(Windows/Linux) orCmd + Shift + R(Mac) - Open in private/incognito mode — which bypasses the cache entirely
- Clear browser cache in your browser's settings
If the old image persists after clearing your cache and testing in a different browser, the problem may be server-side:
- Check that the uploaded file has correct write permissions so OJS could save it successfully.
- Confirm the file size is within PHP's
upload_max_filesizelimit (seephp.inior your hosting control panel). - Clear OJS's own caches via Administration → Clear Template Cache and Clear Data Cache.
How can I upload public files to the journal site?
Use the Publisher Library feature for files you want to make publicly accessible — such as downloadable author guidelines, templates, or supplementary documents.
- Go to Settings → Workflow → Publisher Library.
- Upload your file and give it a descriptive name.
- Once uploaded, OJS assigns it a public URL that you can copy and link to from any page, email template, or announcement.
The Publisher Library is ideal for author submission templates (Word .docx, LaTeX), copyright transfer forms, and promotional flyers. See the Publisher Library documentation for full details.
Why are search results incomplete or missing?
OJS builds a search index when articles are published, but this index can fall out of sync — particularly after bulk imports, upgrades, or plugin changes.
To rebuild the search index, run the following command from your server's command line inside the OJS root directory:
php tools/rebuildSearchIndex.php
After rebuilding, clear OJS's application caches from the Administration panel (Administration → Clear Data Cache and Clear Template Cache) to ensure the updated index is served to visitors.
On large installations with many articles, rebuilding the search index can take several minutes and may be CPU-intensive. Schedule it during off-peak hours.
How can I create a site-wide search across all journals on a multi-journal install?
Every OJS multi-journal installation automatically provides a cross-journal search at:
https://[your-domain]/index/search
This URL searches all journals hosted on the same OJS instance simultaneously. To make it accessible to users:
- Go to Settings → Website → Navigation Menus.
- Edit the primary navigation menu and add a Custom URL item pointing to
/index/search. - Label it "Search All Journals" or similar.
This approach requires no additional configuration and works out of the box on any multi-journal OJS install.
How can I use a continuous publishing model?
OJS supports continuous (or "publish-as-you-go") publishing without waiting to fill a complete issue. The typical approach:
- Create a standing rolling issue (e.g. "Vol. X — Current Issue" or "Ahead of Print") and leave it unpublished as a future issue.
- Assign accepted, production-ready articles to this issue as they complete the workflow.
- Publish each article individually by scheduling it from the Publication tab and using Schedule for Publication — articles appear online immediately while the containing issue remains open.
- At the end of the volume period, close and formally publish the issue to create a permanent, citable issue record.
Some journals use a dedicated "Online First" or "Ahead of Print" issue as a permanent home for pre-issue articles, then assign a final issue and volume once the print edition is prepared. Both models work in OJS.
How can I start using DOIs?
DOIs (Digital Object Identifiers) in OJS 3.3+ are managed through the unified DOI Plugin:
- Enable the DOI Plugin under Settings → Website → Plugins.
- Choose a registration agency — Crossref (most common for journals) or DataCite. Each requires a separate membership and depositor credentials.
- Configure your DOI prefix (assigned by your registration agency) and suffix pattern in the plugin settings.
- Assign DOIs to new articles at publication time, or batch-assign to existing content.
- Deposit DOIs with your chosen agency — either automatically on publication or manually in batches from the DOI plugin management screen.
The DOI Plugin Guide covers setup for both Crossref and DataCite in detail, including how to register, what metadata is required, and how to handle errors in deposits.
Why isn't my site being indexed by Google Scholar?
Google Scholar uses a crawler that looks for specific structured metadata (metatags) in article HTML pages. If your articles are not appearing in Scholar, check these common causes:
- Google Scholar Plugin is not enabled — Enable it from Settings → Website → Plugins. It inserts the required
<meta>tags into article pages. - Robots.txt is blocking the crawler — Check your
robots.txtfile to ensure Googlebot and other crawlers are not blocked from the/article/or/issue/paths. - Articles are too new — Scholar's crawl cycle can take weeks to months. If your journal is recently launched, allow time for initial indexing.
- Metadata quality issues — Scholar requires complete, well-formed metadata: author names in consistent format, complete abstracts, and accurate publication dates. Incomplete records may be skipped.
Review the Google Scholar Indexing Guide for a checklist of technical requirements and common issues.
Google Scholar does not provide a manual reindex request mechanism. If you believe a technical issue was previously blocking indexing and you have now fixed it, update a field on each affected article (e.g. re-save the abstract) to trigger a metadata update that Scholar will pick up on its next crawl.
Further Reading
- Learning OJS — Website Settings — Appearance, plugins, and navigation
- Designing Your Journal — Themes and CSS customisation guide
- Publisher Library — Hosting public files
- DOI Plugin Guide — Setting up DOIs with Crossref or DataCite
- Google Scholar Indexing Guide — Ensuring your journal is indexed by Scholar