WHMCS
Module addon WHMCS chính thức của CaptchaLa. Thêm xác minh CAPTCHA cho khu vực khách hàng của WHMCS — đăng nhập, đăng ký, đặt lại mật khẩu, biểu mẫu liên hệ, gửi ticket và thanh toán giỏ hàng — mà không cần viết bất kỳ dòng mã nào.
Khác với một widget site-key đơn thuần, mọi thử thách đều được hậu thuẫn bởi một token dùng một lần do máy chủ phát hành (chống phát lại), và không nạp bất kỳ trình theo dõi bên thứ ba nào.
Phạm vi bảo vệ
Mỗi mục dưới đây là một toggle độc lập trong cài đặt của module — chỉ bật những điểm vào bạn muốn bảo vệ.
- Đăng nhập
- Đăng ký
- Đặt lại mật khẩu
- Biểu mẫu liên hệ
- Gửi ticket
- Thanh toán giỏ hàng
Yêu cầu
- WHMCS 8.x và 9.x (đã kiểm thử trên khu vực khách hàng 8.3 và 9.0; hoạt động với cả hai theme
sixvàtwenty-one, có hoặc không bật Friendly URLs) - PHP 8.0+ (bản thân WHMCS 9.0 yêu cầu PHP 8.2+)
- Một tài khoản CaptchaLa — lấy App Key + App Secret của bạn tại
dash.captcha.la
Cài đặt
1. Cài module
- Tải
whmcs-x.y.z.zipmới nhất từ releases. - Giải nén vào thư mục gốc WHMCS của bạn. Việc này thêm
modules/addons/captchala/. - Trong quản trị WHMCS, vào Setup → Addon Modules, tìm CaptchaLa, và nhấn Activate.
2. Cấu hình
Nhấn Configure, rồi:
- Dán App Key và App Secret của bạn.
- Chọn một Widget mode và Theme.
- Bật các biểu mẫu bạn muốn bảo vệ.
- Nhấn Save Changes.
Mở trang CaptchaLa ở thanh bên quản trị để chạy thử nghiệm kết nối trực tiếp tới bảng điều khiển.
TIP
Sau khi kích hoạt, nếu widget không xuất hiện, hãy lưu lại cài đặt module một lần — WHMCS chỉ đăng ký hooks.php của module khi module được (tái) kích hoạt/lưu.
Cấu hình
Mọi cài đặt nằm tại Setup → Addon Modules → CaptchaLa → Configure.
| Cài đặt | Kiểu | Mặc định | Mô tả |
|---|---|---|---|
| App Key | string | — | Khóa công khai từ bảng điều khiển CaptchaLa. Bắt buộc. |
| App Secret | string | — | Bí mật máy chủ, dùng để phát hành và xác thực token. Bắt buộc; không bao giờ lộ ra trình duyệt. |
| Widget mode | enum | popup | popup (thanh kích hoạt → thử thách toàn màn hình), float (bảng nội tuyến), embed (hộp kiểm nội tuyến), bind (vô hình, chặn việc gửi). |
| Theme | enum | default | Bộ màu định sẵn: default, dark, slate, emerald, amber, rose. |
| Language | string | auto | Mã BCP-47 (ví dụ en, zh, de) hoặc auto để theo trình duyệt. |
| Protect login | bool | on | Áp thử thách cho đăng nhập khu vực khách hàng. |
| Protect registration | bool | on | Áp thử thách cho đăng ký tài khoản mới. |
| Protect password reset | bool | on | Áp thử thách cho biểu mẫu đặt lại mật khẩu. |
| Protect contact form | bool | off | Áp thử thách cho biểu mẫu liên hệ. |
| Protect ticket submission | bool | off | Áp thử thách cho bước gửi ticket cuối cùng. |
| Protect cart checkout | bool | off | Áp thử thách cho thanh toán giỏ hàng. |
| Skip for logged-in users | bool | on | Không áp thử thách cho khách đã có phiên đăng nhập khách hàng. |
| Failure message | string | — | Thông báo hiển thị khi xác minh thất bại. |
Cách hoạt động
Trên mỗi trang biểu mẫu được bảo vệ, module phát hành một token máy chủ (sct_) mới từ bảng điều khiển, được giới hạn theo action của biểu mẫu đó, và hiển thị widget gắn với nó. Sau khi khách giải xong thử thách, SDK ghi một token vượt qua dùng một lần (pt_) vào biểu mẫu. Khi gửi, module xác thực pt_ đó ở phía máy chủ trước khi WHMCS xử lý biểu mẫu; các trường hợp phát lại và action không khớp đều bị từ chối.
Nếu bảng điều khiển tạm thời không truy cập được, module sẽ fail open (cho phép việc gửi đi qua) để khu vực khách hàng của bạn không bao giờ bị khóa do sự cố nhất thời ở thượng nguồn.
Câu hỏi thường gặp
Module có miễn phí không?
Có. Module là miễn phí. Gói miễn phí của CaptchaLa bao gồm 10,000 lượt xác minh mỗi tháng — gói trả phí chỉ áp dụng khi bạn cần lưu lượng cao hơn.
Nó có hoạt động trên cả WHMCS 8 và 9 không?
Có — đã kiểm thử trên khu vực khách hàng 8.3 và 9.0, với theme six và twenty-one, có hoặc không bật Friendly URLs.
Widget không hiển thị.
Hãy lưu lại cài đặt module một lần (Configure → Save Changes). WHMCS chỉ đăng ký hooks.php khi module được (tái) kích hoạt/lưu.
Mã nguồn
- Kho module:
github.com/Captcha-La/captchala-whmcs - Lỗi / yêu cầu tính năng: gửi vào kho ở trên
- Liên quan: Web SDK · PHP Máy chủ SDK · Tham chiếu API