WP Manifestindependent plugin directory

WooCommerce OMR Multi Currency

WPCS - WordPress Currency Switcher Professional

by MiladSoft · github.com/miladsoft/wpcs · website

0stars
1forks

Install

No release zip yet. The repository archive installs, but the folder name will carry the branch suffix and updates will not flow:

wp plugin install https://github.com/miladsoft/wpcs/archive/refs/heads/main.zip

Readme

WooCommerce OMR Multi Currency

WooCommerce OMR Multi Currency is a self-contained WooCommerce plugin that keeps product prices canonical in OMR and lets customers browse and purchase in a controlled set of supported currencies.

Current scope

The plugin ships with:

  • OMR as the base catalog currency.
  • Supported currencies: AED, SAR, QAR, KWD, BHD, OMR, IQD.
  • A shortcode selector: [wc_omr_currency_selector].
  • Manual rates plus an optional remote JSON provider.
  • Session, cookie, and user currency persistence.
  • Product, variation, shipping, coupon-threshold, and checkout currency conversion hooks.
  • Gateway compatibility enforcement and explicit OMR fallback behavior.
  • Order metadata for locked rates and base OMR totals.

Project layout

woocommerce-omr-multi-currency.php
uninstall.php
readme.txt
composer.json
package.json
assets/
    css/frontend.css
    js/frontend.js
src/
    Admin/
    Api/
    Checkout/
    Currency/
    ExchangeRate/
    Frontend/
    Integration/
    Order/
    Support/
tests/

Validation

This repository currently uses a lightweight PHP-based test harness so it can run without Composer.

php tests/run.php
php -l woocommerce-omr-multi-currency.php
find src -name '*.php' -print0 | xargs -0 -n1 php -l

Notes

The plugin is structured for extension, but real release hardening still requires running it in a WordPress + WooCommerce environment with the manual matrix from AGENTS.md.

Installable ZIP

Do not upload the repository ZIP directly to WordPress.

Build the installable plugin package with:

sh build-plugin.sh

Then upload:

dist/woocommerce-omr-multi-currency.zip

Read the full README on GitHub →