Lior Jewellery — Site Toolkit WP Registry grade A. No security issues foundWP RegistryNo security issues foundOpen the reportA
Custom WordPress/WooCommerce functionality for lior-jewellery.com — one plugin, one module per feature
Install
This is the repository archive. It installs, but the folder name will carry the branch suffix and updates will not flow.
Install straight from GitHub with WP-CLI:
wp plugin install https://github.com/mohammad78sd/lior-toolkit/archive/refs/heads/master.zipOne plugin, one module per feature. This is where all custom lior-jewellery.com functionality lives from now on, instead of a new standalone plugin per feature.
How it works
lior-toolkit.phpis the only file WordPress needs to know about. It just auto-loads everything inincludes/modules/.- Each feature is its own file in
includes/modules/, named after what it does. A module is a normal PHP file with hooks/functions in it — no class or registration boilerplate required.
Adding a new feature
- Create a new file in
includes/modules/, e.g.includes/modules/auto-print.php. - Start it with
defined( 'ABSPATH' ) || exit;(same as the existing module). - Write the hooks/functions for that feature in that file.
- Prefix function names with
lior_to avoid collisions with WordPress core, WooCommerce, or other plugins. - Ship it by cutting a new Release (see "Releasing a new version" below) — no activation step needed for a new module file, it's picked up automatically.
Turning a module off without deleting it
Rename the file so it doesn't end in .php, e.g.:
admin-order-email-link.php → admin-order-email-link.php.off
Installing on the site (first time)
- Download the plugin zip: on the GitHub repo, Code → Download ZIP, or grab the zip from the latest Release.
- WP Admin → Plugins → Add New → Upload Plugin → pick the zip → Install → Activate.
- The folder must end up named
lior-toolkitinwp-content/plugins/. If a GitHub download unzips aslior-toolkit-masterorlior-toolkit-1.1.0, rename it tolior-toolkitbefore/after upload.
Updating the site (after install)
Updates come from GitHub Releases, shown like any other plugin update:
- Publish a new Release (see below) → within ~12h, or immediately after clicking Check again on WP Admin → Dashboard → Updates, the site shows "Lior Jewellery — Site Toolkit … update available".
- Click Update now. Nothing installs itself — it's always a manual click.
This is wired up by the bundled plugin-update-checker library in
includes/lib/. The repo it points at is set in lior-toolkit.php
(Update URI header + the buildUpdateChecker call).
Releasing a new version
-
Bump the version in two places in
lior-toolkit.php: theVersion:header and theLIOR_TOOLKIT_VERSIONconstant. Use semver (e.g.1.2.0). -
Commit and merge to
master. -
Tag and publish a GitHub Release whose tag matches the version, with or without a leading
v:git tag v1.2.0 git push origin master --tags gh release create v1.2.0 --title "v1.2.0" --notes "What changed"The update checker compares the release tag (minus any
v) against the installedVersion:header, so the tag and the header must agree.
Manual deploy (fallback)
Still possible if GitHub is unreachable: zip this folder (named
lior-toolkit) and upload via WP Admin → Plugins → Add New → Upload Plugin
(replacing the previous version), or copy it over SFTP into
wp-content/plugins/lior-toolkit/.
Current modules
admin-order-email-link.php— adds a "view/edit this order" admin-panel link to the admin-facing WooCommerce emails (New order, Cancelled order, Failed order).auto-print-orders.php— auto-prints each new paid order (status → processing) on the office Mac. The module exposes a small key-authed REST queue; a polling agent on the Mac (mac-agent/, not loaded by WordPress) fetches queued orders, renders each to an A4 PDF and sends it to the printer, then marks it printed. Config + API key: WP Admin → Tools → Lior Auto-Print. Mac setup: hand the clientmac-agent/and have them double-clickinstall.command(seemac-agent/README.md).
Releases
8 releases.
These releases are tags only. The author does not attach a packaged zip, so there are no download counts to report.