Skip to content

ojs-services/OJS-NavMenuSync-Plugin

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

1 Commit
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Navigation Menu Synchronizer Plugin for OJS 3.3

A utility plugin for multi-journal Open Journal Systems (OJS) installations. Designed to streamline the initial setup of new journals by replicating the complete navigation menu structure from an already-configured journal to others — preserving items, hierarchy, assignments, and all locale settings in a single operation.

Particularly useful when setting up multiple journals: once the first journal's menus are fully configured, this plugin allows you to quickly propagate the same structure to all other journals without manual recreation.

Navigation Menu Synchronizer - Preview

Important: During synchronization, existing menus and their contents in the target journal's matching areas will be removed and replaced with those from the source journal. Make sure to back up any custom menu configurations before proceeding.

Features

  • Full Menu Replication — Copies menus, menu items, parent-child hierarchy, display order, and all locale-specific settings (title, content, remote URL) across journals.
  • Built-in Type Support — Handles all OJS built-in menu item types (About, Contact, Editorial Team, Submissions, Archives, Privacy, etc.) alongside custom items.
  • Multi-locale Aware — Preserves translations in all configured languages (e.g., English, Turkish, French) during synchronization.
  • Preview Before Sync — Inspect the source journal's full menu structure with hierarchical preview before making any changes.
  • Copy Mode Selection — Choose between copying only active (assigned) menu items or all items including unassigned ones.
  • Clear & Replace — Option to clear all existing menus in the target journal before synchronization, or selectively replace menus by area.
  • Site Admin Restricted — Only site administrators can access synchronization features, preventing unauthorized cross-journal data access.

Requirements

  • OJS 3.3.x
  • PHP 7.3 or higher
  • Site administrator access

Installation

  1. Download the latest release (navMenuSync-v1.0.0.tar.gz) from the Releases page.

  2. Extract to your OJS plugins directory:

    plugins/generic/navMenuSync/
    
  3. Navigate to Settings > Website > Plugins > Generic Plugins in any journal.

  4. Enable Navigation Menu Synchronizer.

Usage

  1. Go to the target journal (the journal you want to copy menus into).
  2. Navigate to Settings > Website > Plugins > Generic Plugins.
  3. Find Navigation Menu Synchronizer and click Synchronize Menus.
  4. Select the source journal from the dropdown.
  5. Choose your options:
    • Clear existing menus — removes all current menus in the target journal before copying.
    • Copy mode — select whether to copy only active menu items or include unassigned items.
  6. Click Preview Source Menus to review the menu structure.
  7. Click Synchronize to perform the copy.
  8. Refresh the page or go to Settings > Website > Navigation to verify.

Localization

The plugin includes translations for:

  • English (en_US)
  • Turkish (tr_TR)

Additional translations can be added by creating a new locale directory under locale/.

License

This plugin is licensed under the GNU General Public License v3.0. See LICENSE for details.

Credits

Developed by OJS Services.

About

Navigation Menu Synchronizer plugin for OJS 3.3 - Copy navigation menus between journals in multi-journal installations

Topics

Resources

License

Stars

Watchers

Forks

Packages

 
 
 

Contributors