مقدمه
۱ : راهنمای استفاده از کدها
۲ : کدهای سفارشی کردن ووکامرس
نتیجه گیری
مقدمه : سلام ، با ادامه مقاله کد های سفارشی کردن ووکامرس قسمت اول در خدمتتون هستم و چند قطعه کد کاربردی دیگه برای سفارشی سازی ووکامرس معرفی می کنم که می تونید بدون استفاده از افزونه با همین قطعه کد ها سفارشی سازی های لازم را انجام دهید . با کتابخانه فناوری اطلاعات همراه باشید…
قسمت اول = کد های سفارشی کردن ووکامرس
قسمت سوم = کد های سفارشی کردن ووکامرس
قسمت چهارم = کد های سفارشی کردن ووکامرس
تمامی قطعه کد هایی که در ادامه معرفی می شوند در فایل Functions.php پوشه قالب سایت وردپرسی تان باید اضافه گردد در صورتی که قالب وردپرسی شما این فایل را ندارد میتوانید یک فایل متنی بسازید و عنوان ، فرمت آن را Functions.php قرار دهید .
نکته : تمامی کد ها فقط در فایل Functions.php کار می کنند .
۲ - ۱ حذف تنظیمات پیش فرض ووکامرس
۱ ۲ ۳ ۴ ۵ ۶ ۷ ۸ ۹ ۱۰ ۱۱ ۱۲ ۱۳ |
add_filter( 'woocommerce_catalog_settings', 'woo_remove_catalog_options' ); function woo_remove_catalog_options( $catalog ) { unset($catalog[۲۲]); //۲ اعشار unset($catalog[۲۱]); //علامت اعشار ( . ) unset($catalog[۲۰]); //علامت اعشار ( , ) unset($catalog[۱۹]); //موقعیت واحد پول ( چپ ) unset($catalog[۱۸]); //موقعیت واحد پول ( چپ ) unset($catalog[۵]); // اضافه کردن به سبد خرید ایجکسی ( غیر فعال ) return $catalog; } |
۲ - ۲ اضافه کردن فیلد سفارشی به صفحه ویرایش آدرس ووکامرس
۱ ۲ ۳ ۴ ۵ ۶ ۷ ۸ ۹ ۱۰ ۱۱ ۱۲ ۱۳ |
function woo_add_edit_address_fields( $fields ) { $new_fields = array( 'date_of_birth' => array( 'label' => __( 'تاریخ تولد', 'woocommerce' ), 'required' => false, 'class' => array( 'form-row' ), ), ); $fields = array_merge( $fields, $new_fields ); return $fields; } add_filter( 'woocommerce_default_address_fields', 'woo_add_edit_address_fields' ); |
۲ - ۳ تنظیم حداقل مقدار سفارش مشتری
۱ ۲ ۳ ۴ ۵ ۶ ۷ ۸ |
add_action( 'woocommerce_checkout_process', 'wc_minimum_order_amount' ); function wc_minimum_order_amount() { global $woocommerce; $minimum = ۱۰; if ( $woocommerce->cart->get_cart_total(); < $minimum ) { $woocommerce->add_error( sprintf( 'سفارش شما نمی تواند کمتر از %s عدد باشد .' , $minimum ) ); } } |
۲ - ۴ ریدایرکت کردن ( تغییر مسیر ) کاربر به صفحه پرداخت پس از اضافه کردن محصول
۱ ۲ ۳ ۴ ۵ ۶ ۷ |
add_filter ('add_to_cart_redirect', 'redirect_to_checkout'); function redirect_to_checkout() { global $woocommerce; $checkout_url = $woocommerce->cart->get_checkout_url(); return $checkout_url; } |
۲ - ۵ تغییر لوگو پیش فرض پی پال در ووکامرس
۱ ۲ ۳ ۴ |
function paypal_checkout_icon() { return 'https://www.paypalobjects.com/webstatic/mktg/logo-center/logo_betalen_met_paypal_nl.jpg'; // آدرس لوگوی موردنظر خود را جایگزین کنید } add_filter( 'woocommerce_paypal_icon', 'paypal_checkout_icon' ); |
۲ - ۶ حذف عنوان محصولات از breadcrumb ( مسیر کاربر )
۱ ۲ ۳ ۴ ۵ ۶ ۷ ۸ ۹ ۱۰ ۱۱ |
function woo_custom_filter_breadcrumbs_trail ( $trail ) { foreach ( $trail as $k => $v ) { if ( strtolower( strip_tags( $v ) ) == 'products' ) { unset( $trail[$k] ); break; } } return $trail; } add_filter( 'woo_breadcrumbs_trail', 'woo_custom_filter_breadcrumbs_trail', ۱۰ ); |
۲ - ۷ اضافه کردن خودکار محصول مورد نظر به سبد خرید
۱ ۲ ۳ ۴ ۵ ۶ ۷ ۸ ۹ ۱۰ ۱۱ ۱۲ ۱۳ ۱۴ ۱۵ ۱۶ ۱۷ ۱۸ ۱۹ ۲۰ ۲۱ ۲۲ |
function add_product_to_cart() { if ( ! is_admin() ) { global $woocommerce; $product_id = ۶۴; $found = false; //چک می کند اگر محصولی در سبد خرید موجود باشد if ( sizeof( $woocommerce->cart->get_cart() ) > ۰ ) { foreach ( $woocommerce->cart->get_cart() as $cart_item_key => $values ) { $_product = $values['data']; if ( $_product->id == $product_id ) $found = true; } // چک می کند اگر محصولی پیدا نشد محصول موردنظر را اضافه می کند if ( ! $found ) $woocommerce->cart->add_to_cart( $product_id ); } else { // چک می کند اگر سبد خرید خالی است محصول را اضافه می کند $woocommerce->cart->add_to_cart( $product_id ); } } } add_action( 'init', 'add_product_to_cart' ); |
نتیجه گیری : همه این کد ها تست شده اند و امیدوارم که براتون مفید واقع شده باشه ، اما اگر مشکلی در کدها داشتید خوشحال میشیم که در قسمت نظرات بیان کنید تا در اسرع وقت به آن رسیدگی کنیم موفق باشید
سلام…
بنده ۲ تا درخواست داشتم :
۱- میخام در هنگام ثبت سفارش خرید در ووکامرس ….این فیلد ها رو اضافه کنم.. نوع شخص : حقیقی یا حقوقی که میتونه از نوع radio باشه…
اگر حقیقی رو انتخاب کرد یه فیلد اضافه بشه بنام کد ملی شخص که اجباری باشه..
اگر حقوقی رو انتخاب کرد ۳ تا فیلد باز بشه بنام های : شناسه ملی و کد اقتصادی و نام شرکت که یکی از این دو فیلدهای شناسه ملی و کد اقتصادی رو باید پُر کنه…یا هر دو…. چون ممکنه یکی یا هر دو رو داشته باشه…
۲- هنگام اضافه کردن به سبد خرید …حذف و…. صفحات رفرش میشه…یا هنگامی که میرم تو قسمت مشاهده ….. میخام وقتی کسی علامت + یا – رو زد خود به خود به صورت ایجکس قیمت ها تغییر کنه بدون اینکه صفحه رفرش بشه…..
لطفا راهنمایی کنید..با تشکر…
سلام
۱ : به علت زیاد بودن کد در آینده یک پست اختصاصی در همین موضوع انتشار می کنم .
۲ : کد زیر را درون فایل Functions.php قرار دهید .
و یا میتونید از این پلاگین استفاده کنید .
https://wordpress.org/plugins/woocommerce-ajax-cart/
سلام..وقت بخیر…
چرا نمیشه تو همونجایی که شما جواب سوال رو میدین…پاسخ داد؟؟؟
دوست گرامی…بنده این فیلد ها رو میخام..میشه لطف کنید و سریعا در سایت قرار دهید..
۱- میخام در هنگام ثبت سفارش خرید در ووکامرس ….این فیلد ها رو اضافه کنم.. نوع شخص : حقیقی یا حقوقی که میتونه از نوع radio باشه…
اگر حقیقی رو انتخاب کرد یه فیلد اضافه بشه بنام کد ملی شخص که اجباری باشه..
اگر حقوقی رو انتخاب کرد ۳ تا فیلد باز بشه بنام های : شناسه ملی و کد اقتصادی و نام شرکت که یکی از این دو فیلدهای شناسه ملی و کد اقتصادی رو باید پُر کنه…یا هر دو…. چون ممکنه یکی یا هر دو رو داشته باشه…
۲- هنگام اضافه کردن به سبد خرید …حذف و…. صفحات رفرش میشه…یا هنگامی که میرم تو قسمت مشاهده ….. میخام وقتی کسی علامت + یا – رو زد خود به خود به صورت ایجکس قیمت ها تغییر کنه بدون اینکه صفحه رفرش بشه…..
این کد :
هیچ کار خاصی نکرد! و نه اون افزونه !!!!! باز صفحه رو رفرش میکنه!!!!!!!!
لطفا کمکم کنید!!
سلام ممنون
قسمت نظر دهی سایت یک مشکل کوچیک داره بزودی حلش می کنیم .
۱ : بعلت این که داخل اینترنت کد مد نظر شما موجود نیست خودم باید بنویسم بخاطر همین یکم زمان میبره ولی در طول همین هفته در سایت قرار میدم.
۲ : کد رو بنده تست کردم جواب داده اگر برای شما جواب نداده پس احتمالا قالب وردپرس شما قسمت فروشگاهش کد هاش رو تغییراتی دادن . اگر مایل بودید از طریق ایمیل سایت در تماس باشید تا با دریافت هزینه مشکل قالب رو رفع کنیم .
سلام
می خوام وقتی خریدار محصولی رو خرید کرد …بصورت اتوماتیک محصول برچسپ فروخته شد بخودش بگیره ..
شما کدش رو دارین ؟
ممنون
سلام
آیا منظور شما این است که اگر خریداری محصول رو خرید و محصول تمام شد برچسب فروخته شد به محصول بخورد که بقیه ی مشتریان مشاهده کنند؟
سلام دوست عزیز خسته نباشید بنده صفحه محصولات ایجاد کردم و همین طور سبد خرید ولی وقتی در سبد خرید اقدام به پرداخت میکنیم باز به صفحه اول برمیگرده و فرم ثبت خرید رو نمایش نمیده اگر میشه بنده رو راهنمایی کنید
سلام سلامت باشید .
قالب رو خودتون نوشتید ؟
آیا به صورت لینک ( urlsite.com/checkout ) به صفحه پرداخت می تونید برید ؟