راهنمای کار با افزونه
مستندات قلابها
اکشن بعد از ثبت تراکنش
شروع کار با قلاب ها
فیلتر تغییر درصد پورسانت
فیلتر تغییر مبلغ نهایی پورسانت
اکشن قبل از ثبت درخواست وجه
اکشن بعد از تغییر وضعیت درخواست
فرم اطلاعات مهمان در چت بات
علاقه مندی ها
دیدگاه های پیشرفته
اکشنهای داشبورد همکاری
تاریخچه آپدیت ها
ماژول هوش مصنوعی
فیلتر تغییر درصد پورسانت
- نام: hmyt_affiliate_commission_rate
- این قلاب به شما اجازه میدهد تا درصد پورسانت را به صورت داینامیک و قبل از محاسبه مبلغ نهایی تغییر دهید. این قلاب روی درصد پورسانت (مثلاً ۷٪) که برای یک آیتم خاص در سبد خرید اعمال میشود، اجرا میگردد.
پارامترها:
/**
* فیلتر برای تغییر درصد پورسانت یک آیتم خاص در سفارش.
*
* @param float $commission_rate درصد پورسانت فعلی (مثلاً 7 برای ۷٪).
* @param int $ref_id شناسه کاربر بازاریاب.
* @param object $item آبجکت آیتم سفارش ووکامرس.
* @param object $order آبجکت سفارش ووکامرس.
*/
مثال۱: پورسانت پلکانی
add_filter('hmyt_affiliate_commission_rate', function($commission_rate, $ref_id, $item, $order) {
$transactions = get_user_meta($ref_id, 'hmyt_affiliate_transactions', true);
$total_sales = is_array($transactions) ? count($transactions) : 0;
// مهم: شرطها را از بزرگ به کوچک بنویسید
if ($total_sales > 10) {
// اگر بیش از 10 فروش داشته، 5% اضافه کن
$commission_rate += 5; // مثلا از 7% به 12%
} elseif ($total_sales > 5) {
// در غیر این صورت، اگر بیش از 5 فروش داشته، 2% اضافه کن
$commission_rate += 2; // مثلا از 7% به 9%
}
return $commission_rate;
}, 10, 4);
مثال۲: افزایش پورسانت برای محصولات یک دسته خاص
add_filter('hmyt_affiliate_commission_rate', function($commission_rate, $ref_id, $item, $order) {
$product_id = $item->get_product_id();
$special_category = 'ebooks'; // اسلاگ دسته
if (has_term($special_category, 'product_cat', $product_id)) {
// برای محصولات این دسته، پورسانت را 2 برابر کن
return $commission_rate * 2;
}
return $commission_rate;
}, 10, 4);
مثال۳: پورسانت ویژه برای بازاریابان خاص
توجه داریم علاوه بر قلاب زیر، میتونید در صفحه ویرایش هرکاربر هم پورسانت سفارشی تعیین کنید.
add_filter('hmyt_affiliate_commission_rate', function($commission_rate, $ref_id, $item, $order) {
// لیست شناسههای کاربری بازاریابان خاص
$vip_marketers = [10, 25, 150];
if (in_array($ref_id, $vip_marketers)) {
// به این بازاریابان همیشه 5% پورسانت بیشتر بده
return $commission_rate + 5;
}
return $commission_rate;
}, 10, 4);
مثال۴: دو برابر شدن پورسانت برای دستهبندی خاص در کمپین
add_filter('hmyt_affiliate_commission_rate', function($commission_rate, $ref_id, $item, $order) {
$product_id = $item->get_product_id();
$special_category = 'digital'; // اسلاگ دستهبندی مورد نظر
// تاریخ شروع و پایان کمپین به میلادی
$campaign_start = '2025-12-20';
$campaign_end = '2025-12-27';
$today = time();
if ($today >= strtotime($campaign_start) && $today <= strtotime($campaign_end)) {
if (has_term($special_category, 'product_cat', $product_id)) {
return $commission_rate * 2;
}
}
return $commission_rate;
}, 10, 4);
مثال۵: پاداش برای بازاریابان با نقش کاربری خاص
add_filter('hmyt_affiliate_commission_rate', function($commission_rate, $ref_id, $item, $order) {
$user = get_userdata($ref_id);
$vip_roles = ['editor', 'vip_marketer']; // نقشهای کاربری خاص
if ($user && !empty(array_intersect($vip_roles, $user->roles))) {
return $commission_rate + 5; // 5% پورسانت بیشتر
}
return $commission_rate;
}, 10, 4);
مثال۶: افزایش پورسانت برای محصولات جدید (منتشر شده در ۳۰ روز اخیر)
add_filter('hmyt_affiliate_commission_rate', function($commission_rate, $ref_id, $item, $order) {
$product_id = $item->get_product_id();
$product_post_date_ts = get_post_time('U', true, $product_id);
$thirty_days_ago_ts = strtotime('-30 days');
if ($product_post_date_ts > $thirty_days_ago_ts) {
return $commission_rate * 1.5; // ۵۰٪ پورسانت بیشتر
}
return $commission_rate;
}, 10, 4);
مثال۷: پاداش برای بازاریابان حرفهای (بر اساس درآمد کل)
- افزایش ۵٪ به درصد پورسانت
add_filter('hmyt_affiliate_commission_rate', function($commission_rate, $ref_id, $item, $order) {
$total_income = (float) get_user_meta($ref_id, 'hmyt_affiliate_total_income', true);
if ($total_income > 1000000) { // ۱ میلیون تومان
return $commission_rate + 5;
}
return $commission_rate;
}, 10, 4);
مثال۸: پورسانت ویژه برای جذب مشتریان جدید
به ازای سفارش مشتریان جدیدی که برای اولین بار از سایت محصول خریداری میکنند، پورسانت ویژه ای به بازاریاب درنظر بگیرید:
- حالت اول: دو برابر شدن درصد پورسانت
add_filter('hmyt_affiliate_commission_rate', function($commission_rate, $ref_id, $item, $order) {
$customer_id = $order->get_customer_id();
if ($customer_id > 0 && wc_get_customer_order_count($customer_id) === 1) {
return $commission_rate * 2;
}
return $commission_rate;
}, 10, 4);
- حالت دوم: ۵ درصد بیشتر
// کافیست در کد بالا، خط `return $commission_rate * 2;` را به `return $commission_rate + 5;` تغییر دهید.
مثال۹: حفظ حاشیه سود در تخفیفات بالا
add_filter('hmyt_affiliate_commission_rate', function($commission_rate, $ref_id, $item, $order) {
$product = $item->get_product();
if ($product && $product->is_on_sale()) {
$regular_price = (float) $product->get_regular_price();
$sale_price = (float) $product->get_sale_price();
if ($regular_price > 0) {
$discount_percentage = (($regular_price - $sale_price) / $regular_price) * 100;
if ($discount_percentage > 50) { // اگر تخفیف بیشتر از ۵۰٪ باشه
return $commission_rate / 2; // پورسانت نصف میشه
}
}
}
return $commission_rate;
}, 10, 4);