Cú pháp cơ bản
// Gửi thông báo đến người dùng cụ thể
init_plugin_suite_user_engine_send_inbox(
$user_id, // ID người dùng nhận
$title, // Tiêu đề thông báo
$content, // Nội dung thông báo (có thể dùng HTML đơn giản)
$type, // Loại thông báo (ví dụ: 'system', 'gift', 'woo_reward'...)
$metadata, // Dữ liệu phụ kèm theo (array), dùng để phân tích hoặc link
$expire_at, // Thời điểm hết hạn (timestamp hoặc null)
$priority, // Mức độ ưu tiên: 'high', 'normal', 'low'
$link, // Link khi click vào thông báo (nếu có)
$pinned // Có ghim thông báo không (0 hoặc 1)
);
Ví dụ đơn giản: Gửi thông báo chào mừng
// Gửi thông báo khi người dùng đăng ký tài khoản
add_action( 'user_register', function( $user_id ) {
init_plugin_suite_user_engine_send_inbox(
$user_id,
__( 'Chào mừng bạn đến với cộng đồng!', 'init-user-engine' ),
__( 'Chúc bạn có một hành trình tuyệt vời cùng chúng tôi.', 'init-user-engine' ),
'welcome'
);
});
Gửi thông báo kèm metadata
// Gửi thông báo khi người dùng nhận được phần thưởng từ đơn hàng WooCommerce
init_plugin_suite_user_engine_send_inbox(
$user_id,
__( 'Cảm ơn bạn đã mua hàng!', 'init-user-engine' ),
sprintf( __( 'Bạn nhận được +%d EXP và +%d coin cho đơn hàng của mình.', 'init-user-engine' ), $exp, $coin ),
'woo_reward',
[ 'order_id' => $order_id ], // metadata kèm theo
null,
'normal',
$order->get_view_order_url()
);
Gửi thông báo có thời gian hết hạn
// Thông báo khuyến mãi hết hạn sau 24h
$expire = time() + DAY_IN_SECONDS;
init_plugin_suite_user_engine_send_inbox(
$user_id,
__( 'Ưu đãi đặc biệt chỉ trong hôm nay!', 'init-user-engine' ),
__( 'Nhanh tay nhận ưu đãi trước khi hết hạn.', 'init-user-engine' ),
'promo',
[],
$expire
);
Gửi thông báo ghim (pinned)
// Gửi thông báo quan trọng và ghim lên đầu
init_plugin_suite_user_engine_send_inbox(
$user_id,
__( 'Thông báo quan trọng', 'init-user-engine' ),
__( 'Vui lòng cập nhật thông tin tài khoản của bạn.', 'init-user-engine' ),
'alert',
[],
null,
'high',
home_url( '/tai-khoan' ),
1 // Pinned
);
Gửi đến nhiều người dùng
// Gửi broadcast đến nhiều người dùng bằng hàm tiện ích có sẵn
$user_ids = [2, 3, 4]; // Mảng ID người dùng
init_plugin_suite_user_engine_send_inbox_to_users(
$user_ids,
__( 'Sự kiện sắp tới!', 'init-user-engine' ),
__( 'Chúng tôi sắp ra mắt một tính năng mới, đừng bỏ lỡ nhé.', 'init-user-engine' ),
'event'
);
Kết luận
Hàm init_plugin_suite_user_engine_send_inbox() là công cụ mạnh mẽ và linh hoạt để bạn chủ động tương tác với người dùng qua hệ thống hộp thư đến của Init User Engine. Việc gửi thông báo không chỉ giúp tăng mức độ gắn kết mà còn mở ra nhiều kịch bản tự động hóa như thưởng điểm, nhắc nhở, cảnh báo, marketing, v.v.
Nếu bạn đang xây dựng hệ thống hành vi hoặc phần thưởng, hãy sử dụng Inbox để thông tin luôn đến tay người dùng một cách rõ ràng và chuyên nghiệp.
Bình luận