توضیحات کد و نحوه استفاده
عملکرد کد:
این کد متن پیشفرض “ناموجود” (Out of Stock) را در ووکامرس با یک متن دلخواه جایگزین میکند. این تغییرات در بخشهای زیر اعمال میشود:
صفحات محصول (توضیحات محصول)
لیست محصولات و آرشیوها (دستهبندیها، برچسبها و فروشگاه)
پنل مدیریت ووکامرس (در بخش وضعیت موجودی)
مراحل استفاده از کد
مرحله 1: افزودن کد به فایل functions.php
این کد را در فایل functions.php قالب وردپرس خود قرار دهید. همچنین میتوانید از یک افزونه اختصاصی یا پلاگین کد سفارشی مانند “Code Snippets” برای اضافه کردن این کد استفاده کنید.
مرحله 2: بررسی عملکرد تغییرات
بعد از ذخیره تغییرات:
به یکی از محصولات ناموجود مراجعه کنید و مشاهده کنید که متن “Currently unavailable” جایگزین “ناموجود” شده است.
در صفحات آرشیو و دستهبندی، دکمه افزودن به سبد خرید برای محصولات ناموجود تغییر میکند.
در پنل مدیریت، وضعیت موجودی محصولات به جای “ناموجود” با متن جدید نمایش داده میشود.
مرحله 3: شخصیسازی متن پیام
اگر میخواهید پیام دیگری نمایش داده شود، مقدار ‘Currently unavailable’ را در بخشهای مختلف کد تغییر دهید و متن دلخواه خود را جایگزین کنید.
جمعبندی:
با این کد، میتوانید متن “ناموجود” را در تمام بخشهای ووکامرس سفارشی کنید. این کار باعث بهبود تجربه کاربری و ارائه پیام مناسبتر به مشتریان میشود.
/**
* Custom WooCommerce Out of Stock Text Modification
* Author: Sahand Motallebi
* Website: sahanndmotallebi.ir
* Description: This code changes the default "Out of stock" text in WooCommerce to a custom message
* across all pages including product pages, archive pages, and product loops.
*/
// تغییر متن موجودی در صفحات محصول
add_filter('woocommerce_get_availability_text', 'nias_custom_get_availability_text', 10, 2);
function nias_custom_get_availability_text($availability, $product) {
// بررسی اینکه آیا محصول موجود نیست
if (!$product->is_in_stock()) {
// جایگزینی متن "در حال حاضر موجود نیست" با متن دلخواه شما
$availability = __('Currently unavailable', 'woocommerce');
}
return $availability;
}
// تغییر متن وضعیت موجودی در پنل مدیریت و سایر قسمتها
add_filter('woocommerce_product_stock_status_options', 'nias_custom_stock_status_options');
function nias_custom_stock_status_options($status) {
// جایگزینی متن "ناموجود" با متن دلخواه شما
$status['outofstock'] = __('Currently unavailable', 'woocommerce');
return $status;
}
// تغییر متن "ناموجود" در لیست محصولات (صفحات دستهبندی و غیره)
add_filter('woocommerce_loop_add_to_cart_link', 'nias_custom_loop_add_to_cart_text', 10, 2);
function nias_custom_loop_add_to_cart_text($button, $product) {
// بررسی اینکه آیا محصول موجود نیست
if (!$product->is_in_stock()) {
// جایگزینی متن دکمه برای محصولات ناموجود در لیستها
$button = '' . __('Currently unavailable', 'woocommerce') . '';
}
return $button;
}