BFF proxy architecture connecting WordPress to the WE88 gaming platform. React widgets, Gutenberg blocks, encrypted sessions, and a full REST API.
A complete gaming portal integration, deployed as a single WordPress plugin.
Backend-for-Frontend proxy. The browser never talks to the upstream API. All credentials stay server-side, encrypted with AES-256-CBC.
8 React widgets auto-discovered via data attributes. Login, games lobby, balance, profile, promotions, announcements, and more.
Every widget available as a server-side-rendered Gutenberg block. Drag, drop, configure via the block inspector panel.
Visual theme editor with live preview. Customize colors, typography, layout, and branding from the WP admin panel.
AES-256-CBC token encryption, HttpOnly session cookies, rate limiting, sensitive data stripping, CSRF nonce protection.
Full WordPress internationalization support. Ships with a Thai translation and a .pot template for additional languages.
Five one-click color schemes — Dark Gold, Royal Blue, Emerald, Crimson, Neon Purple. WordPress Style Variations re-skin the theme and every plugin widget together from a single --we88-* token contract.
Activate the companion theme and the WE88 Portal plugin installs and activates itself from a bundled copy. A one-click admin notice covers any host where auto-provisioning can't run.
Three-tier BFF pattern — the browser never touches the upstream API
Frontend widgets communicate only with the WordPress REST API via fetch + WP nonce
Session management, caching, rate limiting, token encryption. All credentials stay here.
Authentication, game catalog, wallet operations, SSO, maintenance status
Third-party gaming platform — player accounts, games, wallets, transactions
Upload the plugin ZIP via WordPress admin or clone into wp-content/plugins/
# From release ZIP WordPress Admin → Plugins → Add New → Upload # Or from source cd wp-content/plugins/ git clone <repo-url> we88-portal cd we88-portal && npm run build
Activate the plugin, then navigate to Settings → WE88 Portal
API URL https://we88-api.orbit.limited API Token we88_live_************************ Timeout 10 seconds Retries 2
Use shortcodes or Gutenberg blocks to embed gaming widgets
[we88_login] [we88_games provider="pragmatic" columns="4"] [we88_balance interval="10"] [we88_profile]
Click Test Connection in the settings page to verify API connectivity and check latency.
Drop these into any page or post. React widgets mount automatically.
| Shortcode | Description | Attributes | Example |
|---|---|---|---|
[we88_login] | Login / register / forgot-password | — | [we88_login] |
[we88_profile] | User profile information | — | [we88_profile] |
[we88_games] | Games lobby with filtering | provider, category, columns, per_page | [we88_games columns="3"] |
[we88_balance] | Account balance + wallets | interval, show_wallets | [we88_balance interval="10"] |
[we88_reviews] | User reviews with pagination | — | [we88_reviews] |
[we88_popup_menu] | Floating navigation menu | — | [we88_popup_menu] |
[we88_promotions] | Promotion cards | limit | [we88_promotions limit="3"] |
[we88_banners] | Home-page banners | limit | [we88_banners limit="3"] |
[we88_announcements] | Site announcement (sanitised HTML) | — | [we88_announcements] |
[we88_inbox] | Member inbox / messages | — | [we88_inbox] |
Five ways to drop a WE88 widget into a site. Pick the one that matches your editor or builder.
Paste the shortcode directly into the post or page body. Works on any WordPress install with the Classic Editor plugin.
[we88_login] [we88_games columns="4"]
Inside the block editor, add the core Shortcode block and paste any [we88_*] tag. Useful when you want shortcode syntax instead of the dedicated WE88 block.
Block: Shortcode [we88_balance interval="10"]
For classic (non-FSE) themes with sidebars or footer widget areas, add a Shortcode widget and paste the tag.
Appearance → Widgets Add: Shortcode [we88_popup_menu]
Embed inside header.php, page-*.php, or any template file via do_shortcode(). Useful for legacy themes or hard-coded layouts.
<?php echo do_shortcode('[we88_login]'); ?>
Elementor, Divi, Bricks, Beaver Builder — all support a "Shortcode" widget/element. Drop in the WE88 tag and the React widget mounts automatically.
Widget: Shortcode [we88_promotions limit="3"]
Avoid shortcodes inside FSE block-theme templates (templates/*.html) and patterns. Block templates don't run shortcodes by default — use the matching Gutenberg block (wp:we88/login) instead.
Base URL: /wp-json/we88-portal/v1
| Method | Endpoint | Auth | Description |
|---|---|---|---|
| POST | /auth/login | Public | User login (rate-limited: 5/min per IP) |
| POST | /auth/register | Public | User registration (auto-login on success) |
| POST | /auth/logout | Session | Destroy session |
| POST | /auth/forgot-password | Public | Password reset request |
| GET | /auth/check | Public | Pre-register availability (type=username/email/mobileno, value) |
| GET | /me | Session | Current user (id, username, affiliate code) |
| GET | /me/profile | Session | Full profile (nickname, email, mobile) |
| GET | /me/balance | Session | Account balance (cached 10s) |
| GET | /me/wallets | Session | Wallet breakdown |
| POST | /me/password | Session | Change password (current_password, new_password) |
| GET | /me/inbox | Session | Member inbox messages |
| GET | /me/inbox/unread-count | Session | Unread message count |
| GET | /games | Public | List games (filterable by provider) |
| GET | /games/providers | Public | List game providers |
| GET | /games/categories | Public | List game categories |
| POST | /games/launch | Session | Launch game (game_code, game_type, vendor) |
| GET | /maintenance | Public | Vendor maintenance status |
| GET | /sso | Session | SSO redirect URL (deposit/withdrawal/profile) |
| GET | /promotions | Public | Marketing promotions |
| GET | /banners | Public | Home-page banners |
| GET | /announcements | Public | Site announcement (HTML string) |
| GET | /reviews | Public | User reviews (paginated) |
| GET | /theme-config | Public | Theme tokens for widget styling |
| GET | /health | None | Plugin status & version |
| GET | /health/api | Admin | External API connectivity + latency |
All settings managed from Settings → WE88 Portal in wp-admin
Plugin + companion theme — install both for the full experience, or just the plugin if you're bringing your own theme.
Full WordPress plugin with BFF proxy, 8 React widgets, 8 Gutenberg blocks, encrypted sessions, REST API, and Thai translation.
Download plugin View live widget demowe88-portal.zip
Professional FSE block theme tailored for this plugin. Five built-in color schemes (Dark Gold + Royal Blue, Emerald, Crimson, Neon Purple) re-skin theme and widgets together, plus turnkey auto-install of the plugin on activation. Sora/Inter/JetBrains Mono, patterns wired to the portal's blocks.
Download theme View live theme demowe88-dark-gold.zip
Clean, airy, content-first layout — flat surfaces, hairline borders and generous whitespace. Carries all 5 color schemes and the turnkey plugin install.
Download theme View live theme demowe88-minimal.zip
Bold, high-energy and games-first — chunky cards, a dense game grid, vivid accents and playful motion. All 5 color schemes + turnkey install.
Download theme View live theme demowe88-arcade.zip
Editorial and content-forward — multi-column promotions and reviews, column rules and big display headings. All 5 color schemes + turnkey install.
Download theme View live theme demowe88-magazine.zip
Compact, member-area-first app shell — a card dashboard of balance, profile and inbox with the quick-links FAB front and center. All 5 color schemes + turnkey install.
Download theme View live theme demowe88-app.zip