Mở rộng tính năng cho người dùng VIP bằng Init User Engine

Plugin Init User Engine hỗ trợ hệ thống VIP mạnh mẽ, cho phép bạn tạo ra những trải nghiệm độc quyền cho người dùng cao cấp. Bài viết này sẽ hướng dẫn cách tận dụng các hàm có sẵn để kiểm tra VIP, tắt quảng cáo, thêm đặc quyền và xây dựng giao diện tùy biến.

Mở rộng tính năng cho người dùng VIP bằng Init User Engine

1. Kiểm tra người dùng có VIP hay không

Dùng hàm sau để xác định người dùng hiện tại (hoặc bất kỳ user nào) có VIP đang hoạt động không:

// Kiểm tra người dùng hiện tại
if ( init_plugin_suite_user_engine_is_vip() ) {
    // Người dùng là VIP
}

// Kiểm tra theo ID cụ thể
if ( init_plugin_suite_user_engine_is_vip( $user_id ) ) {
    // Người dùng $user_id là VIP
}

2. Ví dụ: Tắt AdSense từ Google Site Kit nếu là VIP

function disable_adsense_sitekit_for_vip() {
    if ( init_plugin_suite_user_engine_is_vip() ) {
        add_filter( 'googlesitekit_adsense_tag_blocked', '__return_true' );
    }
}
add_action( 'init', 'disable_adsense_sitekit_for_vip' );

3. Lấy thời gian hết hạn VIP

$expiry = init_plugin_suite_user_engine_get_vip_expiry();
echo wp_date( 'Y-m-d H:i', $expiry );

Thường dùng để hiển thị cho người dùng biết khi nào hết hạn VIP.

4. Mở khóa giao diện hoặc tính năng nếu là VIP

if ( init_plugin_suite_user_engine_is_vip() ) {
    // Hiển thị giao diện hoặc tính năng nâng cao
}

5. Tặng thêm ngày VIP cho người dùng

Có thể dùng cho khuyến mãi, quà tặng hoặc phần thưởng:

init_plugin_suite_user_engine_add_vip_days( $user_id, 30 ); // Tặng 30 ngày VIP

6. Lấy lịch sử mua VIP

$log = init_plugin_suite_user_engine_get_vip_log( $user_id );

foreach ( $log as $entry ) {
    echo 'Gói: ' . $entry['package'] . ' ngày – Giá: ' . $entry['coin'] . ' coin – Vào: ' . wp_date( 'Y-m-d', $entry['time'] ) . '<br>';
}

7. Mua VIP qua REST API

Endpoint: /wp-json/inituser/v1/vip/purchase (phương thức POST)

Body JSON:

{
  "package_id": 2
}

Các gói mặc định:

  • 1 – 7 ngày
  • 2 – 30 ngày
  • 3 – 90 ngày
  • 4 – 180 ngày
  • 5 – 360 ngày
  • 6 – Trọn đời (9999 ngày)

8. Hook khi người dùng mua VIP

Dùng để gửi thông báo, log hoặc hiệu ứng đặc biệt:

add_action( 'init_plugin_suite_user_engine_vip_purchased', function( $user_id, $package_id, $data ) {
    // $data['days'], $data['coin'], $data['new_expiry']
});

9. Hiển thị giao diện riêng cho người dùng VIP (HTML/CSS)

Plugin tự động thêm class iue-vip vào thẻ <body> nếu người dùng đang có VIP hợp lệ.
Điều này cho phép bạn kiểm soát giao diện chỉ bằng CSS, không cần PHP hoặc JavaScript.

body.iue-vip .vip-only {
    display: block;
}

body:not(.iue-vip) .vip-only {
    display: none;
}

Thích hợp cho các trường hợp chỉ chèn được HTML/CSS (page builder, block editor, landing page).

10. Nhắc gia hạn khi VIP sắp hết hạn

Khi VIP của người dùng sắp hết hạn (mặc định ≤ 1 ngày), plugin sẽ thêm class iue-expire-soon vào <body>. Bạn có thể dùng class này để hiển thị banner nhắc gia hạn hoặc ưu đãi đặc biệt.

body.iue-expire-soon .vip-renew-notice {
    display: block;
}

body:not(.iue-expire-soon) .vip-renew-notice {
    display: none;
}

Ngưỡng “sắp hết hạn” có thể được tùy chỉnh thông qua filter dành cho developer.

11. Upsell cho người dùng từng mua VIP nhưng đã hết hạn

Nếu người dùng từng mua VIP nhưng hiện tại đã hết hạn, plugin sẽ thêm class iue-vip-expired vào <body>. Đây là tín hiệu lý tưởng để hiển thị các nội dung upsell hoặc kêu gọi quay lại.

body.iue-vip-expired .vip-upsell {
    display: block;
}

Cách này đặc biệt hiệu quả cho marketing vì:

  • Không cần kiểm tra logic PHP.
  • Không ảnh hưởng hiệu năng.
  • Hoạt động tốt với HTML tĩnh và CSS thuần.

Kết luận

Hệ thống VIP trong Init User Engine không chỉ là một tính năng nâng cao, mà còn là công cụ mạnh để bạn xây dựng trải nghiệm cá nhân hóa cho người dùng. Bằng cách sử dụng các hàm và hook sẵn có, bạn có thể dễ dàng tích hợp VIP vào bất kỳ logic nào trong theme hoặc plugin.

Bình luận


  • Không có bình luận.

Init Toolbox

Nhấn Ctrl + \ trên máy tính, hoặc vuốt sang trái ở bất kỳ đâu trên mobile.

Đăng nhập





Đang tải...