Lineweb Restaurant Orders is a free, self-hosted QR menu and online food ordering plugin for WordPress, created by Andrew Matia / Lineweb. Restaurants, cafés, and takeaway businesses can accept delivery, pickup, and dine-in orders directly from their own website.
Version 1.1.0 adds scheduled pickup and a temporary pause for new orders. There is no Pro edition, feature gate, trial, commission, author telemetry, or upgrade prompt.
|
|
|
| Mobile menu, banners, categories, and recommendations | Variants, extras, dietary details, and notes | Delivery, pickup, dine-in, tips, and payment |
|
|
| Store, privacy, payment, and notification settings | Local QR-code generation and print preview |
Screenshots use fictional local demo data. Food photography is shown under the Unsplash License and is not bundled with the plugin.
- Food products, categories, variants, extras, dietary labels, and allergens.
- Delivery, pickup, and optional table ordering.
- Optional scheduled pickup with preparation time, store-local time slots and a pause-new-orders control.
- Server-authoritative totals with cash and optional Stripe payments.
- Order management, tracking, receipts, QR codes, aggregate reporting, and optional PWA support.
- Optional Twilio WhatsApp notifications and configurable privacy retention.
See readme.txt for installation, service disclosures, privacy behavior, and the full feature list.
![]() |
|
| Choose a store-local pickup time | Keep the accepted time with the order |
In Settings > Opening Hours, enable scheduled pickup, set preparation minutes and choose an interval. Customers can select As soon as possible or a time in the next 24 hours. Availability refreshes in checkout and is checked again on the server. Accepted times appear in token-protected customer tracking, merchant order views and printable receipts.
The schedule uses the WordPress timezone and handles overnight hours and daylight-saving changes. Accepted orders retain their stored local time and offset if the timezone changes later. This feature does not reserve capacity per time slot, schedule delivery, or accept new orders while the store is closed.
Pause new orders keeps the menu visible and rejects new submissions. Existing orders and payment confirmations remain intact. Resume manually by turning the setting off.
- WordPress 6.2 or newer.
- PHP 7.4 or newer.
- Node.js 24 and Composer 2 only when developing or rebuilding assets.
composer install
npm ci
npm run build
composer test
composer lint
npm run test:js:syntax
bash tools/test-runtime.shThe isolated WordPress integration environment uses npm run wp-env -- start, followed by npm run test:php.
Build the WordPress-ready archive with:
npm run build:releaseDevelopment and test files remain in GitHub for review. The release builder excludes them from the installable plugin ZIP.
Please do not publish exploitable security details in a public issue. Follow SECURITY.md for responsible reporting.
Use the WordPress.org support forum for the included plugin features. For tailored integrations or restaurant-specific workflows outside the included scope, visit www.lineweb.gr.
Copyright 2025-2026 Andrew Matia / Lineweb. Lineweb Restaurant Orders is licensed under GPL-2.0-or-later; see LICENSE. Third-party components retain their original copyrights and compatible licenses; see LICENSE.md.








