🔥 جلوگیری از کامنت اسپم در وردپرس:
🔧 برای این تغییر، کد زیر را به فایل functions.php قالب خود اضافه کنید:
💻 کد:
🔧 برای این تغییر، کد زیر را به فایل functions.php قالب خود اضافه کنید:
💻 کد:
add_filter( 'preprocess_comment', 'tav_preprocess_comment' );
function tav_preprocess_comment( $commentdata ) {
// بررسی کنید که کامنت برای چه نوع پستی ارسال شده است
$post_id = isset( $commentdata['comment_post_ID'] ) ? (int) $commentdata['comment_post_ID'] : 0;
if ( $post_id ) {
$post_type = get_post_type( $post_id );
// فقط نظرات مربوط به محصولات و پستها بررسی شوند
if ( in_array( $post_type, array( 'product', 'post' ) ) ) {
// چک کردن محتوای کامنت برای حروف فارسی
if ( !tav_contains_persian_characters( $commentdata['comment_content'] ) ) {
wp_die( 'خطا: متن کامنت باید حاوی حروف فارسی باشد.' );
}
}
}
return $commentdata;
}
function tav_contains_persian_characters( $str ) {
return preg_match( '/\p{Arabic}/u', $str );
}
ایجاد تخفیف خودکار برای اولین سفارش مشتری میتونه یکی از دلایلی باشه که مشتری را در برهه اول آشنایی با فروشگاه ما به مشتری دائمی تبدیل کنه!
⭕️ کد با ایجاد محدودیت های خاص تر:
🌐 لینک مقاله کامل
⭕️ کد با ایجاد محدودیت های خاص تر:
// اعمال محدودیتهای خاص
// اضافه کردن شرط حداقل مبلغ خرید برای دریافت تخفیف اولین سفارش
add_action('woocommerce_cart_calculate_fees', 'tav_first_order_discount_with_minimum_cart_total');
function tav_first_order_discount_with_minimum_cart_total() {
$customer_id = get_current_user_id();
$minimum_amount = 200000; // حداقل مبلغ برای اعمال تخفیف
$discount_amount = 60000; // مبلغ تخفیف
if ($customer_id && wc_get_customer_order_count($customer_id) == 0) {
if (WC()->cart->subtotal >= $minimum_amount) {
WC()->cart->add_fee('تخفیف اولین سفارش', -$discount_amount);
} else {
wc_print_notice('برای دریافت تخفیف اولین سفارش، حداقل مبلغ خرید باید ' . wc_price($minimum_amount) . ' باشد.', 'notice');
}
}
}
🌐 لینک مقاله کامل
حوصله نداری؟ خلاصهشو بگیر! 🚀
۵۰۰ صفحه کتاب، یه مقاله ۲۰۰۰ کلمهای، یه ویدئوی ۴۵ دقیقهای... کی وقت داره اینا رو کامل ببینه؟! 😵💫
🎯 من خودم همیشه میگفتم بعداً میبینم… ولی راستشو بخوای، هیچوقت نمیبینم! 🤦♂️
💡 ولی یه راهحل دارم که همه اینا رو تو چند تا نکته خلاصه میکنه! 😏👇
🎯 https://mapify.so/
#خلاصه_سریع #هوش_مصنوعی
۵۰۰ صفحه کتاب، یه مقاله ۲۰۰۰ کلمهای، یه ویدئوی ۴۵ دقیقهای... کی وقت داره اینا رو کامل ببینه؟! 😵💫
🎯 من خودم همیشه میگفتم بعداً میبینم… ولی راستشو بخوای، هیچوقت نمیبینم! 🤦♂️
💡 ولی یه راهحل دارم که همه اینا رو تو چند تا نکته خلاصه میکنه! 😏👇
🎯 https://mapify.so/
#خلاصه_سریع #هوش_مصنوعی
Mapify
Mapify: AI Summarizer and Mind Map Generator for PDFs, Videos, and Webpages
Summarize anything into a clear, structured mind map. Simplify complexity and boost your productivity 10x.
تاوتم | پلاگین نویسی وردپرس | توسعه و پشتیبانی وبسایت pinned «حوصله نداری؟ خلاصهشو بگیر! 🚀 ۵۰۰ صفحه کتاب، یه مقاله ۲۰۰۰ کلمهای، یه ویدئوی ۴۵ دقیقهای... کی وقت داره اینا رو کامل ببینه؟! 😵💫 🎯 من خودم همیشه میگفتم بعداً میبینم… ولی راستشو بخوای، هیچوقت نمیبینم! 🤦♂️ 💡 ولی یه راهحل دارم که همه اینا رو تو چند تا…»
✅ تایمر تخفیف: یه شمارش معکوس برای پایان تخفیف که مشتریو میندازه توی فاز "اگه الان نخرم، ضرر کردم!"
✅ موجودی محدود: اگه موجودی کم باشه و اینو نشون بدی، مشتری میگه "زودتر بگیرم که تموم نشه!" و تصمیمش سریعتر میشه.
✅ نظرات کاربران: وقتی بقیه خریدن و راضی بودن، مشتری جدید اعتماد بیشتری میکنه و راحتتر خریدشو نهایی میکنه.
✅ ارسال سریع و تضمینی: مشتری وقتی ببینه خریدش بهموقع میرسه، بیشتر راغب میشه که همین الان سفارش بده.
✅ مشوقهای اضافی: مثل ارسال رایگان یا هدیه که باعث میشه حس کنه یه معامله پرسود داره انجام میده.
✅ ⭕️ بقیه محرک ها رو برو توی صفحه افزونه نگاه کن حاجی🤟🏻
⛔️پس چی شد؟
اگه صفحه محصولت اینارو نداره، مشتری ممکنه همینجوری تو فکر خرید بمونه و تهش خرید نکنه!
ولی وقتی این محرکها رو داشته باشی، همون لحظه مغزش قفل میکنه رو اینکه "دیگه نباید صبر کنم، باید بخرم!"
🔗 لینک افزونه محرک های فروش
✅ موجودی محدود: اگه موجودی کم باشه و اینو نشون بدی، مشتری میگه "زودتر بگیرم که تموم نشه!" و تصمیمش سریعتر میشه.
✅ نظرات کاربران: وقتی بقیه خریدن و راضی بودن، مشتری جدید اعتماد بیشتری میکنه و راحتتر خریدشو نهایی میکنه.
✅ ارسال سریع و تضمینی: مشتری وقتی ببینه خریدش بهموقع میرسه، بیشتر راغب میشه که همین الان سفارش بده.
✅ مشوقهای اضافی: مثل ارسال رایگان یا هدیه که باعث میشه حس کنه یه معامله پرسود داره انجام میده.
✅ ⭕️ بقیه محرک ها رو برو توی صفحه افزونه نگاه کن حاجی🤟🏻
⛔️پس چی شد؟
اگه صفحه محصولت اینارو نداره، مشتری ممکنه همینجوری تو فکر خرید بمونه و تهش خرید نکنه!
ولی وقتی این محرکها رو داشته باشی، همون لحظه مغزش قفل میکنه رو اینکه "دیگه نباید صبر کنم، باید بخرم!"
🔗 لینک افزونه محرک های فروش
فروش بیشتر با یک کلیک! 🛒💰
آیا تا حالا به این فکر کردید که مشتریها بتونن فقط با یک کلیک تعداد زیادی محصول رو به سبد خریدشون اضافه کنن؟ 🤯 با این روش، خرید سریعتر، راحتتر و بدون دردسر انجام میشه!
✅ مناسب برای:
🔹 تخفیفهای ویژه و فروشهای فوری 🎯
🔹 کمپینهای تبلیغاتی و پیشنهادات خاص 💡
🔹 افزایش نرخ تبدیل و رضایت مشتریان 🏆
🔗 مطالعه مقاله:
https://tavtheme.com/more-sale-with-one-click/
@tavtheme
❤️ TavTheme.com
#فروشگاه_اینترنتی #افزایش_فروش #تاوتم
آیا تا حالا به این فکر کردید که مشتریها بتونن فقط با یک کلیک تعداد زیادی محصول رو به سبد خریدشون اضافه کنن؟ 🤯 با این روش، خرید سریعتر، راحتتر و بدون دردسر انجام میشه!
✅ مناسب برای:
🔹 تخفیفهای ویژه و فروشهای فوری 🎯
🔹 کمپینهای تبلیغاتی و پیشنهادات خاص 💡
🔹 افزایش نرخ تبدیل و رضایت مشتریان 🏆
add_action( 'template_redirect', function() {
// فقط برای درخواستهای چندگانه Add-to-Cart
if(
! class_exists( 'WC_Form_Handler' )
|| empty( $_REQUEST['add-to-cart'] )
|| ! strpos( $_REQUEST['add-to-cart'], '-' ) // تغییر از `,` به `-`
) {
return;
}
// دریافت درخواستها
$product_ids = explode('-', urldecode($_REQUEST['add-to-cart']));
$quantities = !empty($_REQUEST['quantity']) ? explode('-', urldecode($_REQUEST['quantity'])) : [];
// تنظیم مقدار پیشفرض ۱ برای مواردی که تعداد مشخص نشده است
foreach ($product_ids as $index => $product_id) {
$quantities[$index] = isset($quantities[$index]) ? absint($quantities[$index]) : 1;
}
// متوقف کردن پردازش پیشفرض ووکامرس
remove_action( 'wp_loaded', [ 'WC_Form_Handler', 'add_to_cart_action' ], 20 );
// افزودن محصولات به سبد خرید
foreach( $product_ids as $i => $product_id ) {
$product_id = absint( $product_id );
$quantity = wc_stock_amount( absint( $quantities[$i] ) );
$added_to_cart = WC()->cart->add_to_cart( $product_id, $quantity );
if( $added_to_cart ) {
wc_add_to_cart_message( [ $product_id => $quantity ], true );
}
}
} );
//لینکی که باید به مشتری بدی یا توی دکمه بزاری:
https://example.com/?add-to-cart=500-501-502&quantity=100-200-150🔗 مطالعه مقاله:
https://tavtheme.com/more-sale-with-one-click/
@tavtheme
❤️ TavTheme.com
#فروشگاه_اینترنتی #افزایش_فروش #تاوتم
🔹 هزینههای اضافی تو ووکامرس رو چطور مدیریت میکنی؟ دستی برای هر محصول تنظیم میکنی؟ کلی زمان تلف میکنی برای چیزی که میتونه خودکار انجام بشه؟
💡 با این کد، میتونی بهصورت خودکار هزینههای بستهبندی، مالیات، یا ارسال رو به دستهبندیهای خاص اضافه کنی!🚀🔥
@tavtheme
❤️ TavTheme.com
💡 با این کد، میتونی بهصورت خودکار هزینههای بستهبندی، مالیات، یا ارسال رو به دستهبندیهای خاص اضافه کنی!🚀🔥
add_action( 'woocommerce_cart_calculate_fees', function( $cart ) {
if( is_admin() && ! defined( 'DOING_AJAX' ) ) {
return;
}
// 📌 تعریف هزینهها برای هر دستهبندی
$category_fees = array(
'عطر' => 100000,
'بدن' => 50000,
);
// 🔄 حلقه بررسی محصولات سبد خرید
foreach( $cart->get_cart() as $cart_item ) {
foreach ( $category_fees as $category => $fee_amount ) {
if( has_term( $category, 'product_cat', $cart_item['product_id'] ) ) {
$cart->add_fee(
sprintf( 'هزینه فلان چیززز ', get_term_by('slug', $category, 'product_cat')->name ),
$fee_amount * $cart_item['quantity']
);
}
}
}
});@tavtheme
❤️ TavTheme.com
✅ درج متن تبلیغاتی قبل و بعد از قیمت محصولات ووکامرس
اگر یک فروشگاه اینترنتی دارید، احتمالاً متوجه شدهاید که نمایش قیمت محصول بهتنهایی کافی نیست. برای جلب توجه مشتری و ایجاد حس ارزشمند بودن محصول، بهتر است همراه قیمت، متنی تبلیغاتی نمایش داده شود. در اینجا، یک قطعه کد حرفهای را معرفی میکنیم که با استفاده از آن، میتوانید متنهای تبلیغاتی هوشمندانهای را در بخشهای مختلف فروشگاه ووکامرس خود نمایش دهید. این روش، فروش شما را افزایش داده و نرخ تبدیل سایت را بهبود خواهد بخشید.
چرا این کد مهم است؟
✅ باعث جلب توجه بیشتر مشتری به قیمت محصول میشود.
✅ حس فوریت ایجاد کرده و مشتری را به خرید سریعتر ترغیب میکند.
✅ در بخشهای مختلف سایت (صفحه محصول، فروشگاه، دستهبندیها) متنهای تبلیغاتی متفاوتی نمایش میدهد.
✅ امکان شخصیسازی پیامها بر اساس دستهبندی محصول، میزان موجودی و وضعیت تخفیف را فراهم میکند.
@tavtheme
❤️ TavTheme.com
اگر یک فروشگاه اینترنتی دارید، احتمالاً متوجه شدهاید که نمایش قیمت محصول بهتنهایی کافی نیست. برای جلب توجه مشتری و ایجاد حس ارزشمند بودن محصول، بهتر است همراه قیمت، متنی تبلیغاتی نمایش داده شود. در اینجا، یک قطعه کد حرفهای را معرفی میکنیم که با استفاده از آن، میتوانید متنهای تبلیغاتی هوشمندانهای را در بخشهای مختلف فروشگاه ووکامرس خود نمایش دهید. این روش، فروش شما را افزایش داده و نرخ تبدیل سایت را بهبود خواهد بخشید.
چرا این کد مهم است؟
✅ باعث جلب توجه بیشتر مشتری به قیمت محصول میشود.
✅ حس فوریت ایجاد کرده و مشتری را به خرید سریعتر ترغیب میکند.
✅ در بخشهای مختلف سایت (صفحه محصول، فروشگاه، دستهبندیها) متنهای تبلیغاتی متفاوتی نمایش میدهد.
✅ امکان شخصیسازی پیامها بر اساس دستهبندی محصول، میزان موجودی و وضعیت تخفیف را فراهم میکند.
function tav_custom_text_before_and_after_price_advanced( $price, $product ) {
// ✅ دستهبندیهای خاص برای نمایش پیامهای سفارشی
$allowed_categories = array( 'special-offers', 'limited-time', 'hot-deals' );
// ✅ بررسی اینکه آیا محصول در دستهبندیهای خاص قرار دارد
$has_special_category = has_term( $allowed_categories, 'product_cat', $product->get_id() );
// ✅ بررسی اینکه آیا محصول در هیچ دستهای قرار ندارد
$product_terms = wp_get_post_terms( $product->get_id(), 'product_cat' );
$no_category = empty( $product_terms );
// ✅ بررسی تعداد موجودی محصول
$stock_quantity = $product->get_stock_quantity();
$low_stock = ( $stock_quantity > 0 && $stock_quantity <= 3 ) ? true : false;
// ✅ بررسی اینکه آیا محصول در حراج است
$on_sale = $product->is_on_sale();
// ✅ اگر در صفحه "تک محصول" باشیم
if ( is_product() ) {
if ( $on_sale ) {
return ' 🎉 تخفیف ویژه: ' . $price . ' ⚡️ فرصت محدود!';
} elseif ( $low_stock ) {
return ' ⏳ فقط ' . $stock_quantity . ' عدد باقی مانده! ' . $price . ' 🛒 همین حالا سفارش دهید!';
}
return ' ⭐️ پیشنهاد انحصاری: ' . $price . ' 🚀 فقط برای شما!';
}
// ✅ اگر در صفحه "فروشگاه" یا "آرشیو دستهبندی محصولات" باشیم
elseif ( is_shop() || is_product_category() ) {
if ( $on_sale ) {
return ' 🔥 محصول در حراج: ' . $price . ' 🎯 فرصت را از دست ندهید!';
} elseif ( $low_stock ) {
return ' ⚠️ فقط ' . $stock_quantity . ' عدد باقی مانده! ' . $price . ' 🚀 زودتر خرید کنید!';
}
return ' 🛍 پیشنهاد ویژه: ' . $price . ' 🎁 تا اتمام موجودی!';
}
// ✅ اگر محصول در یکی از "دستههای خاص" باشد
elseif ( $has_special_category ) {
return ' ⚡️ فقط امروز: ' . $price . ' ⏳ این فرصت را از دست ندهید!';
}
// ✅ اگر محصول هیچ دستهای نداشته باشد
elseif ( $no_category ) {
return ' 🎯 قیمت ویژه: ' . $price . ' 🔥 فقط این هفته!';
}
// ✅ در سایر شرایط، قیمت بدون تغییر نمایش داده شود
return $price;
}
// 🛠 افزودن فیلتر به قیمت محصولات ووکامرس
add_filter( 'woocommerce_get_price_html', 'tav_custom_text_before_and_after_price_advanced', 100, 2 );@tavtheme
❤️ TavTheme.com
مشکلاتی که بدون این کد پیش میآید:
🅰️ کدهای تخفیف منقضی شده در دیتابیس باقی میمانند
🅱️ باعث شلوغ شدن بخش مدیریت کوپنها میشود.
📌جستجو و مدیریت کوپنهای فعال دشوارتر خواهد شد.
📌کاهش کارایی سایت
📌اگر تعداد کوپنهای منقضی شده زیاد باشد، ممکن است کوئریهای اضافی و بیفایده در دیتابیس افزایش یابد و سرعت بارگذاری سایت را کاهش دهد.
📌احتمال استفاده اشتباه از کوپنهای قدیمی
📌ممکن است برخی کوپنهای منقضی شده به اشتباه دوباره فعال شوند یا در لیست پیشنهادهای سایت نمایش داده شوند.
📌نیاز به حذف دستی کوپنهای منقضی شده
📌مدیر فروشگاه باید به صورت دورهای کوپنهای قدیمی را حذف کند که وقتگیر و خستهکننده است.
هر ساعت HOUR_IN_SECONDS 3600
هر روز DAY_IN_SECONDS 86400
هر هفته WEEK_IN_SECONDS 604800
هر ماه 30 * DAY_IN_SECONDS 2592000
🅰️ کدهای تخفیف منقضی شده در دیتابیس باقی میمانند
🅱️ باعث شلوغ شدن بخش مدیریت کوپنها میشود.
📌جستجو و مدیریت کوپنهای فعال دشوارتر خواهد شد.
📌کاهش کارایی سایت
📌اگر تعداد کوپنهای منقضی شده زیاد باشد، ممکن است کوئریهای اضافی و بیفایده در دیتابیس افزایش یابد و سرعت بارگذاری سایت را کاهش دهد.
📌احتمال استفاده اشتباه از کوپنهای قدیمی
📌ممکن است برخی کوپنهای منقضی شده به اشتباه دوباره فعال شوند یا در لیست پیشنهادهای سایت نمایش داده شوند.
📌نیاز به حذف دستی کوپنهای منقضی شده
📌مدیر فروشگاه باید به صورت دورهای کوپنهای قدیمی را حذف کند که وقتگیر و خستهکننده است.
هر ساعت HOUR_IN_SECONDS 3600
هر روز DAY_IN_SECONDS 86400
هر هفته WEEK_IN_SECONDS 604800
هر ماه 30 * DAY_IN_SECONDS 2592000
// افزودن اعلان در داشبورد مدیریت برای بررسی وجود Action Scheduler
add_action( 'admin_notices', function() {
// بررسی اینکه آیا Action Scheduler در سایت فعال است یا خیر
if( ! function_exists( 'as_has_scheduled_action' ) ) {
printf(
'
<div class="notice notice-warning is-dismissible">
<p>%s</p>
</div>
', 'TAV Expired Coupons Cleaner -- Missing Action Scheduler.'
);
return;
}
// نام هوک زمانبندیشده برای حذف خودکار کوپنهای منقضی شده
$hook = 'tav_ccom_delete_expired_coupons';
// بررسی اینکه آیا این اکشن از قبل زمانبندی شده است یا خیر
if( ! as_has_scheduled_action( $hook ) ) {
// تغییر بازه زمانی از روزانه به هفتگی
as_schedule_recurring_action(
current_time( 'timestamp', 1 ), // زمان شروع: زمان فعلی سرور
WEEK_IN_SECONDS, // بازه زمانی اجرای وظیفه: هر هفته یکبار (604800 ثانیه)
$hook // نام اکشن زمانبندیشده
);
}
} );
// تابع حذف خودکار کوپنهای منقضی شده
add_action( 'tav_ccom_delete_expired_coupons', function() {
// تنظیم آرگومانهای جستجوی کوپنهای منقضی شده
$args = [
'posts_per_page' => -1, // دریافت تمام کوپنهای موجود
'post_type' => 'shop_coupon', // فقط کوپنهای ووکامرس بررسی شوند
'post_status' => 'publish', // کوپنهای منتشر شده
'meta_query' => [
'relation' => 'AND',
[
'key' => 'date_expires',
'value' => '',
'compare' => '!=' // کوپنهایی که تاریخ انقضا دارند
],
[
'key' => 'date_expires',
'value' => current_time( 'timestamp' ), // زمان فعلی
'compare' => '<=' // کوپنهایی که تاریخ انقضایشان گذشته است
]
]
];
// دریافت لیست کوپنهای منقضی شده
$coupons = get_posts( $args );
if( ! $coupons ) {
return; // اگر کوپنی یافت نشد، هیچ اقدامی انجام نشود
}
// حذف کوپنهای منقضی شده
foreach( $coupons as $coupon ) {
wp_trash_post( $coupon->ID ); // انتقال کوپن به زبالهدان
}
} );
💰 راز افزایش فروش با نمایش سود مشتری! 💰
🔥افزایش نرخ کلیک (CTR)
📊نمایش مقدار تخفیف باعث میشود کاربران توجه بیشتری به محصول داشته باشند.
🛍تحریک حس اضطرار (Urgency)
وقتی کاربران ببینند که چقدر در خریدشان صرفهجویی میکنند، احتمال خریدشان بالا میرود.
🏷تقویت احساس ارزشمندی معامله
کاربران حس میکنند که خریدشان هوشمندانهتر است، زیرا مقدار پولی که "صرفهجویی" میکنند را مشاهده میکنند.
🚀مؤثر در تبلیغات و تخفیفات ویژه
اگر یک فروشگاه کمپین تخفیف دارد (مثلاً تخفیف آخر هفته یا بلک فرایدی)، این ویژگی قدرت اثرگذاری تخفیف را افزایش میدهد.
@tavtheme
❤️ TavTheme.com
🔥افزایش نرخ کلیک (CTR)
📊نمایش مقدار تخفیف باعث میشود کاربران توجه بیشتری به محصول داشته باشند.
🛍تحریک حس اضطرار (Urgency)
وقتی کاربران ببینند که چقدر در خریدشان صرفهجویی میکنند، احتمال خریدشان بالا میرود.
🏷تقویت احساس ارزشمندی معامله
کاربران حس میکنند که خریدشان هوشمندانهتر است، زیرا مقدار پولی که "صرفهجویی" میکنند را مشاهده میکنند.
🚀مؤثر در تبلیغات و تخفیفات ویژه
اگر یک فروشگاه کمپین تخفیف دارد (مثلاً تخفیف آخر هفته یا بلک فرایدی)، این ویژگی قدرت اثرگذاری تخفیف را افزایش میدهد.
add_filter( 'woocommerce_get_price_html', function( $price_html, $product ) {
// فقط برای محصولات دارای تخفیف اعمال شود
if( ! $product->is_on_sale() ) {
return $price_html;
}
// محاسبه مقدار تخفیف
$savings = floatval( $product->get_regular_price() ) - floatval( $product->get_sale_price() );
// افزودن متن تخفیف
return $price_html . sprintf(
' <span class="tav-you-save">٪%s تخفیف (%s)</span>',
round( $savings / floatval( $product->get_regular_price() ) * 100 ),
wc_price( $savings )
);
}, 10, 2 );@tavtheme
❤️ TavTheme.com
📢 افزودن هدیه رایگان به سبد خرید در ووکامرس! 🎁
✅ ویژگیهای این کد:
✔️ امکان تعیین محصول هدیه برای هر محصول در صفحه ویرایش محصول
✔️ پشتیبانی از چندین محصول هدیه (با کاما جدا شوند)
✔️ هدایا فقط در صورتی اضافه میشوند که محصول اصلی در سبد خرید باشد
✔️ خودکار و بدون نیاز به کد تخفیف یا عملیات دستی
@tavtheme
❤️ TavTheme.com
✅ ویژگیهای این کد:
✔️ امکان تعیین محصول هدیه برای هر محصول در صفحه ویرایش محصول
✔️ پشتیبانی از چندین محصول هدیه (با کاما جدا شوند)
✔️ هدایا فقط در صورتی اضافه میشوند که محصول اصلی در سبد خرید باشد
✔️ خودکار و بدون نیاز به کد تخفیف یا عملیات دستی
// اضافه کردن متاباکس به صفحه ویرایش محصول
function tav_add_free_gift_metabox() {
add_meta_box(
'tav_free_gift_metabox',
__('هدیه رایگان محصول', 'tav'),
'tav_free_gift_metabox_callback',
'product',
'side'
);
}
add_action('add_meta_boxes', 'tav_add_free_gift_metabox');
// نمایش فیلد انتخاب محصول هدیه
// نمایش فیلد انتخاب چندین محصول هدیه
function tav_free_gift_metabox_callback($post) {
$gift_product_ids = get_post_meta($post->ID, '_tav_gift_product_ids', true);
if (!is_array($gift_product_ids)) {
$gift_product_ids = [];
}
// دریافت لیست محصولات
$args = [
'post_type' => 'product',
'posts_per_page' => -1,
'post_status' => 'publish'
];
$products = get_posts($args);
?>
<p>
<label for="tav_gift_product_ids"><?php _e('محصولات هدیه را انتخاب کنید:', 'tav'); ?></label>
<select id="tav_gift_product_ids" name="tav_gift_product_ids[]" multiple style="width: 100%;">
<?php foreach ($products as $product) : ?>
<option value="<?php echo esc_attr($product->ID); ?>" <?php echo in_array($product->ID, $gift_product_ids) ? 'selected' : ''; ?>>
<?php echo esc_html($product->post_title); ?>
</option>
<?php endforeach; ?>
</select>
</p>
<p><small><?php _e('با نگه داشتن کلید Ctrl (یا Cmd در مک)، چندین محصول را انتخاب کنید.', 'tav'); ?></small></p>
<?php
}
// ذخیره آیدیهای محصولات هدیه هنگام ذخیره محصول
function tav_save_free_gift_products($post_id) {
if (isset($_POST['tav_gift_product_ids'])) {
$gift_product_ids = array_map('sanitize_text_field', $_POST['tav_gift_product_ids']);
update_post_meta($post_id, '_tav_gift_product_ids', $gift_product_ids);
} else {
delete_post_meta($post_id, '_tav_gift_product_ids');
}
}
add_action('save_post', 'tav_save_free_gift_products');
// اضافه کردن محصولات هدیه هنگام افزودن محصول اصلی به سبد خرید
function tav_add_free_gifts_when_product_added($cart_item_key, $product_id, $quantity, $variation_id, $cart_item_data) {
$gift_product_ids = get_post_meta($product_id, '_tav_gift_product_ids', true);
if (!empty($gift_product_ids) && is_array($gift_product_ids)) {
foreach ($gift_product_ids as $gift_product_id) {
// بررسی اینکه آیا هدیه قبلاً اضافه شده است؟
$found = false;
foreach (WC()->cart->get_cart() as $cart_item) {
if ($cart_item['product_id'] == $gift_product_id) {
$found = true;
break;
}
}
// اگر هدیه در سبد نبود، اضافه شود
if (!$found) {
WC()->cart->add_to_cart($gift_product_id, 1, 0, [], ['is_gift' => true]);
}
}
}
}
add_action('woocommerce_add_to_cart', 'tav_add_free_gifts_when_product_added', 10, 5);
// حذف خودکار هدیه هنگام حذف محصول اصلی از سبد خرید
function tav_remove_gift_when_product_removed($cart_item_key, $cart) {
$removed_product_id = $cart->removed_cart_contents[$cart_item_key]['product_id'];
// بررسی اینکه آیا محصول حذفشده هدیهای دارد
$gift_product_ids = get_post_meta($removed_product_id, '_tav_gift_product_ids', true);
if (!empty($gift_product_ids) && is_array($gift_product_ids)) {
foreach ($cart->get_cart() as $cart_item_key => $cart_item) {
if (in_array($cart_item['product_id'], $gift_product_ids) && isset($cart_item['is_gift'])) {
WC()->cart->remove_cart_item($cart_item_key);
}
}
}
}
add_action('woocommerce_remove_cart_item', 'tav_remove_gift_when_product_removed', 10, 2);
@tavtheme
❤️ TavTheme.com
#آپدیت_افزونه | 16 اسفند 1403
🎯 دانلود افزونه
TavTheme | تاوتم ❤️
TavTheme.com
📣 آپدیت افزونه مدیریت لایسنس محصولات تاوتم منتشر شد.📎 موارد بروز شده در ورژن 3.3.3 :
🔥بهبود عملکرد برقراری ارتباط با سرور اصلی
🔥بهیود ظاهر و ریسپانسیو
✅ رفع چند باگ گزارش شده
🎯 دانلود افزونه
TavTheme | تاوتم ❤️
TavTheme.com
✨ افزونه تخفیف اتوماتیک سبد خرید ووکامرس ✨
🛍 افزایش فروش با تخفیفهای خودکار!
این افزونه بهصورت هوشمند و بدون نیاز به کد تخفیف، هنگام رسیدن مبلغ سبد خرید به مقدار مشخص، تخفیف ثابت یا درصدی اعمال میکند.
✅ ویژگیها:
💰 اعمال خودکار تخفیف بر اساس حداقل مبلغ سبد خرید
📊 نمایش نوار پیشرفت برای تشویق مشتریان به خرید بیشتر
🎨 شخصیسازی رنگ و پیامها برای هماهنگی با طراحی سایت
🚀 افزایش میانگین خرید و بهبود نرخ تبدیل فروش
🔗 همین حالا نصب کنید و فروش خود را افزایش دهید!
📥 دانلود افزونه
🌟 تاوتم، راهکاری هوشمند برای رشد فروشگاههای ووکامرسی! 🌟
#افزونه_ووکامرس
🛍 افزایش فروش با تخفیفهای خودکار!
این افزونه بهصورت هوشمند و بدون نیاز به کد تخفیف، هنگام رسیدن مبلغ سبد خرید به مقدار مشخص، تخفیف ثابت یا درصدی اعمال میکند.
✅ ویژگیها:
💰 اعمال خودکار تخفیف بر اساس حداقل مبلغ سبد خرید
📊 نمایش نوار پیشرفت برای تشویق مشتریان به خرید بیشتر
🎨 شخصیسازی رنگ و پیامها برای هماهنگی با طراحی سایت
🚀 افزایش میانگین خرید و بهبود نرخ تبدیل فروش
🔗 همین حالا نصب کنید و فروش خود را افزایش دهید!
📥 دانلود افزونه
🌟 تاوتم، راهکاری هوشمند برای رشد فروشگاههای ووکامرسی! 🌟
#افزونه_ووکامرس
🎯 سفارش سریع و راحت از طریق واتساپ! 📲
💬 تا حالا شده محصولی رو بخوای بخری ولی کلی مراحل ثبتنام و پرداخت اذیتت کنه؟
حالا فقط با یک کلیک، مستقیماً از طریق واتساپ سفارش بده!
🚀 ویژگیهای این سیستم:
✅ ارسال سریع سفارش به واتساپ ادمین بدون نیاز به فرمهای پیچیده
✅ دریافت اطلاعات دقیق محصول (نام، قیمت، لینک) در پیام واتساپ
✅ امکان شخصیسازی دکمه از طریق پنل مدیریت (متن، رنگ، آیکون و ...)
✅ تجربه خریدی راحت، بدون نیاز به سبد خرید و پرداخت آنلاین
⚡️ تصور کن که مشتریها بدون هیچ دردسری فقط با یک پیام محصول موردنظرشون رو سفارش بدن!
همین حالا این قابلیت رو به فروشگاه ووکامرسی خودت اضافه کن و تجربهی خرید رو برای مشتریهات متحول کن! 🚀💚
📥 دانلود افزونه
🌟 تاوتم، راهکاری هوشمند برای رشد فروشگاههای ووکامرسی! 🌟
#افزونه_ووکامرس
💬 تا حالا شده محصولی رو بخوای بخری ولی کلی مراحل ثبتنام و پرداخت اذیتت کنه؟
حالا فقط با یک کلیک، مستقیماً از طریق واتساپ سفارش بده!
🚀 ویژگیهای این سیستم:
✅ ارسال سریع سفارش به واتساپ ادمین بدون نیاز به فرمهای پیچیده
✅ دریافت اطلاعات دقیق محصول (نام، قیمت، لینک) در پیام واتساپ
✅ امکان شخصیسازی دکمه از طریق پنل مدیریت (متن، رنگ، آیکون و ...)
✅ تجربه خریدی راحت، بدون نیاز به سبد خرید و پرداخت آنلاین
⚡️ تصور کن که مشتریها بدون هیچ دردسری فقط با یک پیام محصول موردنظرشون رو سفارش بدن!
همین حالا این قابلیت رو به فروشگاه ووکامرسی خودت اضافه کن و تجربهی خرید رو برای مشتریهات متحول کن! 🚀💚
📥 دانلود افزونه
🌟 تاوتم، راهکاری هوشمند برای رشد فروشگاههای ووکامرسی! 🌟
#افزونه_ووکامرس
⛔️ حداقل محدودیت هایی که شرکت های هاستینگ باید روی هاست هایی که به شما میدهند باید داشته باشند تا بتونید از یک سایت فروشگاهی بازدهی خوبی بگیرید!
📌 این مقادیر رو میتونید از فایل php.ini بررسی کنید!
📎اگر سوالی داشتید بهمون پیام بدید!
✅هاست اقتصادی (Economy) :
max_input_vars : 3000
memory_limit : 512M
max_file_uploads : 20
max_input_time : 300
max_execution_time : 100
upload_max_filesize : 128M
post_max_size : 128M
✅هاست وردپرس حرفهای (WordPress):
max_input_vars : 10000
memory_limit : 2048M
max_file_uploads : 40
max_input_time : 600
max_execution_time : 300
upload_max_filesize : 256M
post_max_size : 256M
✅هاست ووکامرس (Woocommerce):
max_input_vars : 20000
memory_limit : 3072M
max_file_uploads : 60
max_input_time : 900
max_execution_time : 300
upload_max_filesize : 512M
post_max_size : 512M
✅سرور نیمه اختصاصی (Ecommerce):
max_input_vars : 20000
memory_limit : 4096M
max_file_uploads : 120
max_input_time : 1800
max_execution_time : 600
upload_max_filesize : 1024M
post_max_size : 1024M
📌 این مقادیر رو میتونید از فایل php.ini بررسی کنید!
📎اگر سوالی داشتید بهمون پیام بدید!
✅هاست اقتصادی (Economy) :
max_input_vars : 3000
memory_limit : 512M
max_file_uploads : 20
max_input_time : 300
max_execution_time : 100
upload_max_filesize : 128M
post_max_size : 128M
✅هاست وردپرس حرفهای (WordPress):
max_input_vars : 10000
memory_limit : 2048M
max_file_uploads : 40
max_input_time : 600
max_execution_time : 300
upload_max_filesize : 256M
post_max_size : 256M
✅هاست ووکامرس (Woocommerce):
max_input_vars : 20000
memory_limit : 3072M
max_file_uploads : 60
max_input_time : 900
max_execution_time : 300
upload_max_filesize : 512M
post_max_size : 512M
✅سرور نیمه اختصاصی (Ecommerce):
max_input_vars : 20000
memory_limit : 4096M
max_file_uploads : 120
max_input_time : 1800
max_execution_time : 600
upload_max_filesize : 1024M
post_max_size : 1024M
📌 کاربرد کد:
پس از هر خرید، یک کد تخفیف ۱۰٪ برای مشتری میسازد.
کوپن فقط برای ایمیل خریدار قابل استفاده است.
پیام تشکر + کد تخفیف در صفحه تشکر از خرید نمایش داده میشود.
✅ مفید برای: افزایش فروش با تشویق مشتریان به خرید مجدد!
اگر نیاز به تغییراتی دارید، بپرسید! 😊
پس از هر خرید، یک کد تخفیف ۱۰٪ برای مشتری میسازد.
کوپن فقط برای ایمیل خریدار قابل استفاده است.
پیام تشکر + کد تخفیف در صفحه تشکر از خرید نمایش داده میشود.
✅ مفید برای: افزایش فروش با تشویق مشتریان به خرید مجدد!
اگر نیاز به تغییراتی دارید، بپرسید! 😊
/**
* نمایش کد تخفیف بعد از خرید برای خرید بعدی 🛒✨
* پس از هر خرید، یک کوپن ۱۰٪ برای مشتری ایجاد میکند. (تابع با پیشوند tav_)
*/
add_action('woocommerce_thankyou', 'tav_show_post_purchase_coupon', 10, 1); // پیشوند tav_ اضافه شد
function tav_show_post_purchase_coupon($order_id) { // پیشوند tav_ به نام تابع
$order = wc_get_order($order_id);
$user_email = $order->get_billing_email();
$coupon_code = 'NEXT10-' . $order_id;
$coupon = new WC_Coupon();
$coupon->set_code($coupon_code);
$coupon->set_discount_type('percent');
$coupon->set_amount(10);
$coupon->set_email_restrictions([$user_email]);
$coupon->save();
echo '<div class="woocommerce-message">برای خرید بعدی خود از کد <strong>' . $coupon_code . '</strong> استفاده کنید (10% تخفیف)! 🎉</div>';
}
❤1
📌 کاربرد کد:
🔒 رفع مشکل قطعی درگاه پرداخت
🚫 هشدار به کاربران برای خاموش کردن فیلترشکن
🛒 بهبود تجربه خرید در ووکامرس
🔒 رفع مشکل قطعی درگاه پرداخت
🚫 هشدار به کاربران برای خاموش کردن فیلترشکن
🛒 بهبود تجربه خرید در ووکامرس
function tav_add_text_after_place_order_button() {
echo '<div class="tav-custom-checkout-text" style="margin-top: 15px; text-align: center; font-size: 14px; color: #666;">';
echo 'لطفا قبل از ورود به درگاه پرداخت فیلتر شکن خود را خاموش کنید';
echo '</div>';
}
add_action('woocommerce_review_order_after_submit', 'tav_add_text_after_place_order_button');🎯 افزونه TAV حداقل و حداکثر سفارش ووکامرس!
🚀 کنترل حرفهای خریدها با یک کلیک!
✅ تنظیم حداقل/حداکثر تعداد خرید برای محصولات، دستهها یا کل فروشگاه
✅ تخفیف پلکانی جذاب (مثلاً ۱۰٪ تخفیف برای خرید بالای ۵ عدد!)
✅ محدودیت بر اساس نقش کاربری (VIP، عمدهخریداران) و منطقه جغرافیایی
✅ کنترل وزن سبد خرید (ایدهآل برای محصولات سنگین یا حساس)
🛒 مناسب برای:
🔹 عمدهفروشان (حداقل ۵۰ عدد سفارش!)
🔹 خردهفروشان (محدودیت خرید در تخفیفهای ویژه)
🔹 فروشگاههای منطقهای (حداقل سفارش ۲۰۰ هزارتومان برای شهرهای مختلف)
⚡️ چرا این افزونه؟
✔️ رابط کاربری آسان
✔️ سازگار با تمام قالبهای ووکامرس
✔️ بهینهسازی شده برای افزایش فروش!
📥 دانلود افزونه
🌟 تاوتم، ابزارهای هوشمند برای فروشگاههای حرفهای! 🌟
#افزونه_ووکامرس #مدیریت_سفارشات
🚀 کنترل حرفهای خریدها با یک کلیک!
✅ تنظیم حداقل/حداکثر تعداد خرید برای محصولات، دستهها یا کل فروشگاه
✅ تخفیف پلکانی جذاب (مثلاً ۱۰٪ تخفیف برای خرید بالای ۵ عدد!)
✅ محدودیت بر اساس نقش کاربری (VIP، عمدهخریداران) و منطقه جغرافیایی
✅ کنترل وزن سبد خرید (ایدهآل برای محصولات سنگین یا حساس)
🛒 مناسب برای:
🔹 عمدهفروشان (حداقل ۵۰ عدد سفارش!)
🔹 خردهفروشان (محدودیت خرید در تخفیفهای ویژه)
🔹 فروشگاههای منطقهای (حداقل سفارش ۲۰۰ هزارتومان برای شهرهای مختلف)
⚡️ چرا این افزونه؟
✔️ رابط کاربری آسان
✔️ سازگار با تمام قالبهای ووکامرس
✔️ بهینهسازی شده برای افزایش فروش!
📥 دانلود افزونه
🌟 تاوتم، ابزارهای هوشمند برای فروشگاههای حرفهای! 🌟
#افزونه_ووکامرس #مدیریت_سفارشات
📌 کاربرد کد و ویژگی های کلیدی:
✅ افزایش فروش در آخر هفته
✅ کاملا خودکار - بدون نیاز به کوپن دستی
✅ نصب آسان در 30 ثانیه
✅ قابل تنظیم برای هر درصد تخفیفی و هر روز هفته
✅ افزایش فروش در آخر هفته
✅ کاملا خودکار - بدون نیاز به کوپن دستی
✅ نصب آسان در 30 ثانیه
✅ قابل تنظیم برای هر درصد تخفیفی و هر روز هفته
/**
* اعمال تخفیف 20% در آخر هفتهها (جمعه و شنبه)
* این کد به صورت خودکار در روزهای مشخص تخفیف اعمال میکند
*/
add_action('woocommerce_cart_calculate_fees', 'tav_weekend_mega_discount');
function tav_weekend_mega_discount($cart) {
// بررسی روزهای جمعه (5) و شنبه (6)
if (in_array(date('w'), [5, 6])) {
// محاسبه مقدار تخفیف (20% از جمع سبد خرید)
$tav_discount = $cart->subtotal * 0.20;
// اعمال تخفیف به عنوان هزینه منفی
$cart->add_fee('تخفیف ویژه آخر هفته (20%)', -$tav_discount);
}
}
📌 کاربرد کد و ویژگی های کلیدی:
✅ سادهسازی فرآیند خرید: با حذف فیلدهای غیرضروری، فرآیند خرید برای مشتری سریعتر و سادهتر میشود.
✅ تمرکز بر اطلاعات ضروری: فقط اطلاعات مورد نیاز برای تحویل سفارش در ایران جمعآوری میشود.
✅ کاهش خطاهای کاربران: با کاهش تعداد فیلدها، احتمال خطا در پر کردن فرم کاهش مییابد.
✅ بهبود نرخ تبدیل: فرم سادهتر معمولاً منجر به تکمیل بیشتر خریدها میشود.
✅ سادهسازی فرآیند خرید: با حذف فیلدهای غیرضروری، فرآیند خرید برای مشتری سریعتر و سادهتر میشود.
✅ تمرکز بر اطلاعات ضروری: فقط اطلاعات مورد نیاز برای تحویل سفارش در ایران جمعآوری میشود.
✅ کاهش خطاهای کاربران: با کاهش تعداد فیلدها، احتمال خطا در پر کردن فرم کاهش مییابد.
✅ بهبود نرخ تبدیل: فرم سادهتر معمولاً منجر به تکمیل بیشتر خریدها میشود.
/**
* سفارشیسازی فیلدهای صفحه تسویه حساب ووکامرس
* فقط فیلدهای مورد نیاز را نگه میدارد و بقیه را حذف میکند
*/
add_filter('woocommerce_checkout_fields', 'tav_customize_checkout_fields');
function tav_customize_checkout_fields($fields) {
// لیست فیلدهایی که میخواهیم نگه داریم
$tav_allowed_fields = array(
'billing_first_name', // نام
'billing_last_name', // نام خانوادگی
'billing_email', // ایمیل (اختیاری)
'billing_phone', // شماره تلفن همراه
'billing_state', // استان
'billing_city', // شهر
'billing_address_1', // آدرس محل سکونت
'billing_postcode' // کد پستی
);
// حذف تمام فیلدهای بخش billing به جز موارد مورد نظر
foreach ($fields['billing'] as $tav_field_key => $tav_field) {
if (!in_array($tav_field_key, $tav_allowed_fields)) {
unset($fields['billing'][$tav_field_key]);
}
}
// حذف کامل بخشهای دیگر که نیاز نداریم
unset($fields['shipping']);
unset($fields['order']);
unset($fields['account']);
// تنظیمات سفارشی برای فیلدهای باقیمانده
$fields['billing']['billing_email']['required'] = false; // ایمیل اختیاری
// تنظیم placeholder یا برچسبها اگر نیاز باشد
$fields['billing']['billing_email']['label'] = 'ایمیل شما (اختیاری)';
return $fields;
}