ჩემი 25 საუკეთესო WooCommerce Snippets for WordPress ნაწილი 2

  1. 1. ჩემი 25 საუკეთესო WooCommerce Snippets for WordPress
  2. 2. ამჟამად კითხულობს: ჩემი 25 საუკეთესო WooCommerce Snippets for WordPress ნაწილი 2

რამდენიმე დღის წინ დავწერე პოსტი, სადაც ჩამოვთვალე 25 ყველაზე სასარგებლო WooCommerce ამონაწერი, რომელსაც მე ვიყენებ და ბევრი ადამიანი იყავით, რომ მეტს ითხოვოთ, ასე რომ, დღეს გადავწყვიტე კიდევ რამდენიმე ნაწყვეტი მიგვეწოდებინა WooCommerce! Აქ ჩვენ მივდივართ!


Contents

1 – შეცვალეთ WooCommerce ნაგულისხმევი PayPal ლოგო

/ *
* შეცვალეთ WooCommerce ნაგულისხმევი PayPal ხატი
* /
ფუნქცია paypal_checkout_icon ()
დაბრუნება 'https://www.paypalobjects.com/webstatic/mktg/logo-center/logo_betalen_met_paypal_nl.jpg'; // აქ ჩაწერეთ თქვენი საკუთარი სურათის URL
}
add_filter ('woocommerce_paypal_icon', 'paypal_checkout_icon');

2 – შეცვალეთ პროდუქტის ადგილსამყოფელის სტანდარტული სურათი

/ *
* მიდის თემის ფუნქციებში.php ან საბაჟო მოდული. შეცვალეთ სურათის სახელი / ბილიკი საკუთარი 🙂
*
** /
add_action ('init', 'custom_fix_thumbnail');

ფუნქცია custom_fix_thumbnail ()
add_filter ('woocommerce_placeholder_img_src', 'custom_woocommerce_placeholder_img_src');

ფუნქცია custom_woocommerce_placeholder_img_src ($ src) {
$ upload_dir = wp_upload_dir ();
$ ატვირთვები = დაუსრულებლად ($ upload_dir ['baseurl']);
$ src = $ ატვირთვები. '/2012/07/thumb1.jpg';

დაბრუნება $ src;
}
}

3 – ამოიღეთ “პროდუქტები” პურის საცხობიდან

/ *
* დამალეთ "პროდუქტები" WooCommerce- ის პურის ყუთში
* /
ფუნქცია woo_custom_filter_breadcrumbs_trail ($ ბილიკი) {
foreach ($ ბილიკი, როგორც $ k => $ v)
if (strtolower (strip_tags ($ v)) == 'პროდუქტები') {
უწყვეტი ($ ბილიკი [$ k]);
შესვენება;
}
}

დაბრუნდეს $ ბილიკი;
}

add_filter ('woo_breadcrumbs_trail', 'woo_custom_filter_breadcrumbs_trail', 10);

4 – ცარიელი კალათა

/ *
* ცარიელი WooCommerce კალათა
* /
ფუნქცია my_empty_cart ()
გლობალური $ woocommerce;
$ woocommerce-> კალათა-> ცარიელი_კარი ();
}
add_action ('init', 'my_empty_cart');

5 – ავტომატურად დაამატეთ პროდუქტი ვიზიტით კალათაში

/ *
* დაამატეთ ელემენტი კალათაში ვიზიტით
* /
ფუნქცია add_product_to_cart ()
თუ (! is_admin ()) {
გლობალური $ woocommerce;
$ product_id = 64;
$ ნაპოვნია = ყალბი;
// შეამოწმეთ არის თუ არა პროდუქტი კალათაში
if (sizeof ($ woocommerce-> კალათა-> get_cart ())> 0)
foreach ($ woocommerce-> კალათა-> get_cart () როგორც $ cart_item_key => $ ღირებულებები) {
$ _product = $ ღირებულებები ['მონაცემები'];
if ($ _product-> id == $ product_id)
$ ნაპოვნია = მართალია;
}
// თუ პროდუქტი ვერ მოიძებნა, დაამატეთ იგი
თუ (! $ ნაპოვნია)
$ woocommerce-> კალათა-> add_to_cart ($ product_id);
სხვაგან
// თუ პროდუქტი კალათაში არ არის, დაამატეთ იგი
$ woocommerce-> კალათა-> add_to_cart ($ product_id);
}
}
}
add_action ('init', 'add_product_to_cart');

6 – დაამატეთ საბაჟო ვალუტა / სიმბოლო

add_filter ('woocommerce_currency', 'add_my_currency');

ფუნქცია add_my_currency ($ ვალუტა) function
$ ვალუტები ['ABC'] = __ ('ვალუტის სახელი', 'ვოკომრეკა');
$ ვალუტის დაბრუნება;
}

add_filter ('woocommerce_currency_symbol', 'add_my_currency_symbol', 10, 2);

ფუნქცია add_my_currency_symbol ($ currency_symbol, $ ვალუტა) {
შეცვლა ($ ვალუტა) {
საქმე 'ABC': $ currency_symbol = '$'; შესვენება;
}
დააბრუნე $ currency_symbol;
}

7 – კალათის ღილაკის ტექსტის დამატება

/ **
* შეცვალეთ კალათის დამატება ტექსტის ერთი პროდუქტის გვერდებზე
* /
ფუნქცია woo_custom_cart_button_text ()
დაბრუნება __ ('ჩემი ღილაკის ტექსტი', 'ვოკომრეკა');
}
add_filter ('single_add_to_cart_text', 'woo_custom_cart_button_text');



/ **
* შეცვალეთ კალათის დამატება ტექსტის არქივებზე
* /
ფუნქცია woo_archive_custom_cart_button_text ()
დაბრუნება __ ('ჩემი ღილაკის ტექსტი', 'ვოკომრეკა');
}
add_filter ('add_to_cart_text', 'woo_archive_custom_cart_button_text');

8 – გადამისამართება გამოიწერეთ კალათაში გადასვლის გვერდზე

/ **
* გადამისამართება გამოიწეროთ კალათაში გადახდა გვერდზე
*
* @param სტრიქონი $ url
* /
ფუნქცია custom_add_to_cart_redirect ($ url) {

$ product_id = (int) $ _REQUEST ['კალათაში დამატება'];
if (class_exists ('WC_Subscriptions_Product')) {
if (WC_Subscriptions_Product :: is_subscription ($ product_id)) {
დაბრუნება get_permalink (get_option ('woocommerce_checkout_page_id'));
} სხვაგან დააბრუნე $ url;
} სხვაგან დააბრუნე $ url;

}
add_filter ('add_to_cart_redirect', 'custom_add_to_cart_redirect');

ამ ნაწყვეტს მოითხოვს გამოწერის მოდული.

9 – კალათაში დამატება გადასასვლელი გვერდზე

/ **
* გადამისამართება გამოიწეროთ კალათაში გადახდა გვერდზე
*
* @param არცერთი
* /
ფუნქცია add_to_cart_checkout_redirect ()
wp_safe_redirect (get_permalink (get_option ('woocommerce_checkout_page_id'))));
იღუპება ();
}
add_action ('woocommerce_add_to_cart', 'add_to_cart_checkout_redirect', 11);

10 – CC ყველა ელ.წერილი

 / **
* WooCommerce დამატებითი მახასიათებელი
* --------------------------
*
* დაამატეთ ელ.ფოსტის სხვა მიმღები ყველა WooCommerce ელ.წერილი
*
* /
ფუნქცია woo_cc_all_emails ()
დაბრუნება 'Bcc: [email protected]'. "\ r \ n";
}
add_filter ('woocommerce_email_headers', 'woo_cc_all_emails');

11 – ელ.ფოსტის გაგზავნა, როდესაც ახალი შეკვეთი დასრულებულია გამოყენებული კუპონებით

/ **
* WooCommerce დამატებითი მახასიათებელი
* --------------------------
*
* გაგზავნეთ ელ.ფოსტა ყოველ ჯერზე შეკვეთით (შეკვეთით) შეკვეთით
* ელ.ფოსტა შეიცავს კუპონ (ებ) ს, რომელიც გამოიყენება შეკვეთის პროცესში
*
* /
ფუნქცია woo_email_order_coupons ($ order_id) {
$ შეკვეთა = ახალი WC_Order ($ order_id);

if ($ მიზნით-> get_used_coupons ()) {

$ to = '[email protected]';
$ subject = 'დასრულებულია ახალი შეკვეთა';
$ headers = 'From: My Name'. "\ r \ n";

$ გაგზავნა = 'დასრულებულია ახალი შეკვეთა. \ n';
$ გაგზავნა. = 'შეკვეთის ID:'. $ order_id. '\ n';
$ გაგზავნა. = 'გამოყენებული კუპონები: \ n';

foreach ($ order-> get_used_coupons () როგორც $ კუპონი) {
$ გაგზავნა. = $ კუპონი. '\ n';
}
@wp_mail ($ to, $ საგანი, $ გაგზავნა, $ სათაური);
}
}
add_action ('woocommerce_thankyou', 'woo_email_order_coupons');

12 – პროდუქციის ნომრის შეცვლა

/ **
* WooCommerce დამატებითი მახასიათებელი
* --------------------------
*
* პროდუქციის გვერდზე დაკავშირებული პროდუქციის რაოდენობის შეცვლა
* დააყენე საკუთარი მნიშვნელობა "posts_per_page" - სთვის
*
* /
ფუნქცია woo_related_products_limit ()
გლობალური $ პროდუქტი;

$ args = მასივი (
'post_type' => 'პროდუქტი',
'no_found_rows' => 1,
'posts_per_page' => 6,
'ignore_sticky_posts' => 1,
'შეკვეთით' => $ შეკვეთით,
'post__in' => $ დაკავშირებული,
'post__not_in' => მასივი ($ პროდუქტი-> id)
);
დაბრუნება $ არგუმენტები;
}
add_filter ('woocommerce_related_products_args', 'woo_related_products_limit');

13 – მაღაზიის გვერდზე გამორიცხეთ კონკრეტული კატეგორიის პროდუქტები

 / **
* ამოიღეთ პროდუქტები მაღაზიის გვერდიდან კატეგორიის მიხედვით
*
* /
ფუნქცია woo_custom_pre_get_posts_query ($ q) function

თუ დაბრუნდება (! $ q-> is_main_query ());
თუ დაბრუნდა (! $ q-> არის_post_type_archive ());

if (! is_admin () && is_shop ()) {

$ q-> მითითებული ('tax_query', მასივი (მასივი (
'taxonomy' => 'product_cat',
'სფეროში' => 'slug',
'Terms' => მასივი ('ფეხსაცმელი'), // ნუ აჩვენებთ პროდუქციის ფეხსაცმლის კატეგორიას მაღაზიის გვერდზე
'operator' => 'NOT IN'
)));

}

remove_action ('pre_get_posts', 'custom_pre_get_posts_query');

}
add_action ('pre_get_posts', 'woo_custom_pre_get_posts_query');

14 – შეცვალეთ მაღაზიის სვეტების ნომერი

/ **
* WooCommerce დამატებითი მახასიათებელი
* --------------------------
*
* შეცვალეთ პროდუქტის სვეტების ნომერი მაღაზიის გვერდებზე
*
* /
ფუნქცია woo_product_columns_frontend ()
გლობალური $ woocommerce;

// ნაგულისხმევი მნიშვნელობა ასევე გამოიყენება კატეგორიებისა და ქვეკატეგორიებისთვის
$ სვეტები = 4;

// Პროდუქტების სია
თუ (is_product_categorija ()):
$ სვეტები = 4;
დაასრულე თუ;

//Მსგავსი პროდუქტები
თუ (is_product ()):
$ სვეტები = 2;
დაასრულე თუ;

// ჯვარი ყიდის
თუ (is_checkout ()):
$ სვეტები = 4;
დაასრულე თუ;

$ სვეტების დაბრუნება;
}
add_filter ('loop_shop_columns', 'woo_product_columns_frontend');

15 – გამორთეთ WooCommerce ჩანართები

 / **
* ამოიღეთ პროდუქტის ჩანართები
*
* /
ფუნქცია woo_remove_product_tab ($ ჩანართები) {

unset ($ ჩანართები ['აღწერა']); // ამოიღეთ აღწერილობის ჩანართი
unset ($ ჩანართები ['მიმოხილვები']); // ამოიღეთ მიმოხილვები
unset ($ ჩანართები ['დამატებითი_ინფორმაცია']); // ამოიღეთ დამატებითი ინფორმაცია tab

დააბრუნე $ ჩანართები;

}
add_filter ('woocommerce_product_tabs', 'woo_remove_product_tab', 98);

16 – ამოიღეთ პური

 / **
* ამოიღეთ WooCommerce BreadCrumb
*
* /
remove_action ('woocommerce_before_main_content', 'woocommerce_breadcrumb', 20);

17 – შეზღუდეთ გადაზიდვების ქვეყნების სია

/ **
* WooCommerce დამატებითი მახასიათებელი
* --------------------------
*
* შეზღუდეთ გადაზიდვების ქვეყნების სია
*
* /
ფუნქცია woo_override_checkout_fields ($ ველი) {

$ ველები ['გადაზიდვა'] ['shipping_country'] = მასივი (
'type' => 'აირჩიეთ',
'label' => __ ('ჩემი ახალი ქვეყნის სია', 'ვოკომრეკა'),
'პარამეტრები' => მასივი ('AU' => 'ავსტრალია')
);

$ ველების დაბრუნება;
}
add_filter ('woocommerce_checkout_fields', 'woo_override_checkout_fields');

18 – შეცვალეთ „უფასო!“ პროდუქტის სიმებიანი

/ **
* WooCommerce დამატებითი მახასიათებელი
* --------------------------
*
* შეცვალეთ "უფასო!" ჩვეულებრივი სიმებიანი საშუალებით
*
* /
ფუნქცია woo_my_custom_free_message ()
დაბრუნება "ეს პროდუქტი უფასოა!";
}

add_filter ('woocommerce_free_price_html', 'woo_my_custom_free_message');

19 – გადაიტანეთ ყველა გადაზიდვის სხვა მეთოდი, როდესაც უფასო ტრანსპორტირებაა შესაძლებელი

// დაფარეთ გადაზიდვის ყველა ვარიანტი, როდესაც უფასო ტრანსპორტირებაა შესაძლებელი
add_filter ('woocommerce_available_shipping_methods', 'დამალვა_all_shipping_when_free_is_available', 10, 1);

/ **
* დაფარეთ ყველა გადაზიდვის ვარიანტი, როდესაც უფასო ტრანსპორტირებაა შესაძლებელი
*
* @param მასივი $ ხელმისაწვდომი_მეთქი
* /
ფუნქცია დამალეთ_all_shipping_when_free_is_available ($ ხელმისაწვდომი_მომავალი) {

if (გამოიცემა ($ available_methods ['free_shipping'])):

// მიიღეთ უფასო ტრანსპორტირების მასივი ახალ მასივში
$ freeshipping = მასივი ();
$ freeshipping = $ available_methods ['free_shipping'];

// დახურეთ $ available_methods მასივი
unset ($ available_methods);

// დაამატეთ უფასო ტრანსპორტირება $ avaialble_methods– ში
$ available_methods = მასივი ();
$ available_methods [] = $ უფასო ტრანსპორტირება;

დაასრულე თუ;

დააბრუნე $ available_methods;
}

20 – გააკეთეთ გადახდა “სახელმწიფო” ველზე, არ არის საჭირო

/ **
* WooCommerce დამატებითი მახასიათებელი
* --------------------------
*
* გააკეთეთ "სახელმწიფო" ველი, რომელიც არ არის საჭირო გადახდაზე
*
* /

add_filter ('woocommerce_billing_fields', 'woo_filter_state_billing', 10, 1);
add_filter ('woocommerce_shipping_fields', 'woo_filter_state_shipping', 10, 1);

ფუნქცია woo_filter_state_billing ($ მისამართი_ფილები) {
$ მისამართი_fields ['billing_state'] ['აუცილებელია'] = ყალბი;
დააბრუნე $ მისამართი_ფილები;
}

ფუნქცია woo_filter_state_shipping ($ მისამართი_ფილები) {
$ მისამართი_fields ['shipping_state'] ['აუცილებელია'] = მცდარი;
დააბრუნე $ მისამართი_ფილები;
}

21 – პროგრამულად შექმნათ კუპონი

$ coupon_code = 'UNIQUECODE'; // კოდი
$ თანხა = '10'; // თანხა
$ discount_type = 'fixed_cart'; // ტიპი: fixed_cart, პროცენტი, fixed_product, პროცენტი_პროდუქტი

$ კუპონი = მასივი (
'post_title' => $ კუპონი_ კოდი,
'post_content' => '',
'post_status' => 'გამოქვეყნება',
'post_author' => 1,
'post_type' => 'shop_coupon'
);

$ new_coupon_id = wp_insert_post ($ კუპონი);

// მეტა დამატება
update_post_meta ($ new_coupon_id, 'discount_type', $ discount_type);
update_post_meta ($ new_coupon_id, 'coupon_amount', $ თანხა);
update_post_meta ($ new_coupon_id, 'individual_use', 'არა');
update_post_meta ($ new_coupon_id, 'product_ids', '');
განახლება_პოსტ_მეტა ($ new_coupon_id, 'გამორიცხეთ_პროდუქტი_ids', '');
update_post_meta ($ new_coupon_id, 'use_limit', '');
update_post_meta ($ new_coupon_id, 'expiry_date', '');
update_post_meta ($ new_coupon_id, 'ვრცელდება_ბედო_ტაქსი', 'დიახ');
update_post_meta ($ new_coupon_id, 'free_shipping', 'არა');

22 – ელ.ფოსტის საგნების ხაზების შეცვლა

/ *
* საგნების ფილტრები:
* woocommerce_email_subject_new_order
* woocommerce_email_subject_customer_procesing_order
* woocommerce_email_subject_customer_complected_order
* woocommerce_email_subject_customer_invoice
* woocommerce_email_subject_customer_note
* woocommerce_email_subject_low_stock
* woocommerce_email_subject_no_stock
* woocommerce_email_subject_backorder
* woocommerce_email_subject_customer_new_account
* woocommerce_email_subject_customer_invoice_paid
** /
add_filter ('woocommerce_email_subject_new_order', 'change_admin_email_subject', 1, 2);

ფუნქციის შეცვლა_admin_email_subject ($ საგანი, $ ბრძანება) {
გლობალური $ woocommerce;

$ blogname = wp_ Specialchars_decode (get_option ('blogname'), ENT_QUOTES);

$ subject = sprintf ('[[% s] მომხმარებელთა ახალი შეკვეთა (#% s) სახელიდან% s% s', $ blogname, $ ბრძანება -> id, $ შეკვეთი -> ბილინგი_ფრინდა_ნომარი, $ შეკვეთა -> ბილინგი_ანთქმული სახელი);

დაბრუნება $ საგანი;
}

23 – დაამატეთ საბაჟო გადასახადი კალათაში

/ **
* WooCommerce დამატებითი მახასიათებელი
* --------------------------
*
* დაამატეთ საბაჟო გადასახადი ავტომატურად კალათაში
*
* /
ფუნქცია woo_add_cart_fee ()

გლობალური $ woocommerce;

თუ (is_cart ()) {
$ woocommerce-> კალათა-> add_fee (__ ('Custom', 'woocommerce'), 5);
}

}
add_action ('woocommerce_before_cart_table', 'woo_add_cart_fee');

24 – საბაჟო შეტყობინებაში დამატება

/ **
* პირადი კალათის შეტყობინებები
* დაამატეთ ეს თქვენს თემებზე ფუნქციების.ფე ფაილზე
** /
add_filter ('woocommerce_add_to_cart_message', 'custom_add_to_cart_message');
ფუნქცია custom_add_to_cart_message ()
გლობალური $ woocommerce;

// გამოყვანის წარმატებული შეტყობინებები
if (get_option ('woocommerce_cart_redirect_after_add') == 'დიახ'):

$ Return_to = get_permalink (woocommerce_get_page_id ('მაღაზია'));

$ გაგზავნა = sprintf ('% s % s ', $ Return_to, __ (' განაგრძეთ ვაჭრობა → ',' woocommerce '), __ (' პროდუქტი წარმატებით დაემატა თქვენს კალათაში. ',' woocommerce '));

სხვა:

$ გაგზავნა = sprintf ('% s % s ', get_permalink (woocommerce_get_page_id (' კალათა ')), __ (' კალათის ნახვა → ',' woocommerce '), __ (' პროდუქტი წარმატებით დაემატა თქვენს კალათაში. ',' woocommerce ');

დაასრულე თუ;

დააბრუნე $ გაგზავნა;
}

25 – დაამატეთ გადახდის მეთოდი ადმინისტრაციული ფოსტით

/ **
* WooCommerce დამატებითი მახასიათებელი
* --------------------------
*
* დაამატეთ გადახდის მეთოდი ახალი შეკვეთის ელ.ფოსტის ადმინისტრირებისთვის
*
* /
add_action ('woocommerce_email_after_order_table', 'woo_add_payment_method_to_admin_new_order', 15, 2);

ფუნქცია woo_add_payment_method_to_admin_new_order ($ შეკვეთა, $ არის_admin_email) {
თუ ($ is_admin_email) {
ექო '

Გადახდის საშუალება: ”. $ შეკვეთა-> Payment_method_title. '

'; } }

და ბუმი! Ის არის! იმედი მაქვს მოგეწონებათ ეს ნახვრეტები. თუ რაიმე შემოთავაზება გაქვთ, ნუ დააყოვნებთ კომენტარს დატოვებთ ქვემოთ!


არ გაქვთ WooCommerce მზა თემა, ან გსურთ ახალი? დარწმუნდით, რომ გადაამოწმეთ WordPress- ის სულ თემა!

Jeffrey Wilson Administrator
Sorry! The Author has not filled his profile.
follow me