Mina 25 bästa WooCommerce-utdrag för WordPress del 2

  1. 1. Mina 25 bästa WooCommerce-utdrag för WordPress
  2. 2. Läser för tillfället: Mina 25 bästa WooCommerce-utdrag för WordPress del 2

För några dagar sedan skrev jag ett inlägg där jag listade 25 av de mest användbara WooCommerce-kodavsnitten jag använder och ni var många att be om mer, så idag bestämde jag mig för att ge några fler utdrag för WooCommerce! Nu kör vi!


1 – Ersätt WooCommerce standardlogotyp för PayPal

/ *
* Byt ut WooCommerce-standardikonen för PayPal
* /
funktion paypal_checkout_icon () {
returnera 'https://www.paypalobjects.com/webstatic/mktg/logo-center/logo_betalen_met_paypal_nl.jpg'; // skriv din egen bild-URL här
}
add_filter ('woocommerce_paypal_icon', 'paypal_checkout_icon');

2 – Ersätt standardprodukthållarbilden

/ *
* går i temafunktioner.php eller ett anpassat plugin. Byt ut bildens filnamn / sökväg med ditt eget 🙂
*
** /
add_action ('init', 'custom_fix_tattnail');

funktion anpassad_fix_humbnail () {
add_filter ('woocommerce_placeholder_img_src', 'custom_woocommerce_placeholder_img_src');

funktion custom_woocommerce_placeholder_img_src ($ src) {
$ upload_dir = wp_upload_dir ();
$ uploads = untrailingslashit ($ upload_dir ['baseurl']);
$ src = $ uppladdningar. '/2012/07/thumb1.jpg';

returnera $ src;
}
}

3 – Ta bort “Produkter” från brödsmulan

/ *
* Dölj "produkter" i WooCommerce-brödsmulor
* /
funktion woo_custom_filter_breadcrumbs_trail ($ trail) {
förhand ($ trail som $ k => $ v) {
if (strtolower (strip_tags ($ v)) == 'produkter') {
unset ($ trail [$ k]);
ha sönder;
}
}

returnera $ trail;
}

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

4 – Tom vagn

/ *
* Tom WooCommerce-vagn
* /
funktion my_empty_cart () {
global $ woocommerce;
$ Woocommerce-> cart-> empty_cart ();
}
add_action ('init', 'my_empty_cart');

5 – Lägg automatiskt till produkten i varukorgen vid besök

/ *
* Lägg till varan i varukorgen vid besök
* /
funktion add_product_to_cart () {
if (! is_admin ()) {
global $ woocommerce;
$ produkt_id = 64;
$ hittades = falsk;
// kontrollera om produkten redan finns i kundvagnen
if (sizeof ($ woocommerce-> cart-> get_cart ())> 0) {
förhand ($ woocommerce-> cart-> get_cart () som $ cart_item_key => $ -värden) {
$ _product = $ värden ['data'];
if ($ _product-> id == $ product_id)
$ hittade = sant;
}
// om produkten inte hittas, lägg till den
if (! $ hittades)
$ woocommerce-> cart-> add_to_cart ($ product_id);
} annat {
// om inga produkter i varukorgen, lägg till den
$ woocommerce-> cart-> add_to_cart ($ product_id);
}
}
}
add_action ('init', 'add_product_to_cart');

6 – Lägg till en anpassad valuta / symbol

add_filter ('woocommerce_cururrency', 'add_my_currency');

funktion add_my_currency ($ currency) {
$ currency ['ABC'] = __ ('Valuta namn', 'woocommerce');
returnera valutor $;
}

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

funktion add_my_currency_symbol ($ currency_symbol, $ currency) {
växla ($ valuta) {
fall 'ABC': $ currency_symbol = '$'; ha sönder;
}
returnera $ currency_symbol;
}

7 – Ändra lägg till i kundvagnens knapptext

/ **
* Ändra texten Lägg till i kundvagnen på enstaka produktsidor
* /
funktion woo_custom_cart_button_text () {
returnera __ ('Min knapptext', 'woocommerce');
}
add_filter ('single_add_to_cart_text', 'woo_custom_cart_button_text');



/ **
* Ändra lägg till i kundvagnens text i produktarkiv
* /
funktion woo_archive_custom_cart_button_text () {
returnera __ ('Min knapptext', 'woocommerce');
}
add_filter ('add_to_cart_text', 'woo_archive_custom_cart_button_text');

8 – Omdirigera prenumeration lägg i kundvagnen till kassasidan

/ **
* Omdirigera prenumeration lägg i kundvagnen till kassasidan
*
* @param sträng $ url
* /
funktion custom_add_to_cart_redirect ($ url) {

$ product_id = (int) $ _REQUEST ['lägg till i vagnen'];
if (class_exists ('WC_Subscrib_Product')) {
if (WC_Subscrib_Product :: is_subscription ($ product_id)) {
returnera get_permalink (get_option ('woocommerce_checkout_page_id'));
} annars returnerar $ url;
} annars returnerar $ url;

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

Det här utdraget kräver plugin-prenumerationen.

9 – Omdirigera till kassasidan efter att ha lagt till varukorgen

/ **
* Omdirigera prenumeration lägg i kundvagnen till kassasidan
*
* @param ingen
* /
funktion add_to_cart_checkout_redirect () {
wp_safe_redirect (get_permalink (get_option ('woocommerce_checkout_page_id')));
dö();
}
add_action ('woocommerce_add_to_cart', 'add_to_cart_checkout_redirect', 11);

10 – CC alla e-postmeddelanden

 / **
* WooCommerce Extra Feature
* --------------------------
*
* Lägg till en annan e-postmottagare i alla WooCommerce-e-postmeddelanden
*
* /
funktion woo_cc_all_emails () {
returnera "Bcc: [email protected]". "\ R \ n";
}
add_filter ('woocommerce_email_headers', 'woo_cc_all_emails');

11 – Skicka ett e-postmeddelande när en ny beställning är klar med kuponger som används

/ **
* WooCommerce Extra Feature
* --------------------------
*
* Skicka ett e-postmeddelande varje gång en beställning med kupong är klar
* E-postadressen innehåller kuponger som används under kassaprocessen
*
* /
funktion woo_email_order_coupons ($ order_id) {
$ order = new WC_Order ($ order_id);

if ($ order-> get_used_coupons ()) {

$ till = '[email protected]';
$ subject = 'Ny order slutförd';
$ headers = 'Från: Mitt namn'. "\ R \ n";

$ message = 'En ny order har slutförts. \ n';
$ meddelande. = 'Order-ID:'. $ order_id. '\ n';
$ meddelande. = 'Kuponger används: \ n';

förhand ($ order-> get_used_coupons () som $ kupong) {
$ meddelande. = $ kupong. '\ n';
}
@wp_mail ($ till, $ ämne, $ meddelande, $ rubriker);
}
}
add_action ('woocommerce_thankyou', 'woo_email_order_coupons');

12 – Ändra relaterade produktnummer

/ **
* WooCommerce Extra Feature
* --------------------------
*
* Ändra antalet relaterade produkter på produktsidan
* Ställ in ditt eget värde för 'posts_per_page'
*
* /
funktion woo_related_products_limit () {
global $ produkt;

$ args = array (
'post_type' => 'produkt',
'no_found_rows' => 1,
'posts_per_page' => 6,
'ign_sticky_posts' => 1,
'orderby' => $ orderby,
'post__in' => $ relaterat,
'post__not_in' => matris ($ produkt-> id)
);
returnera $ args;
}
add_filter ('woocommerce_related_products_args', 'woo_related_products_limit');

13 – Uteslut produkter från en viss kategori på butiksidan

 / **
* Ta bort produkter från butik sida efter kategori
*
* /
funktion woo_custom_pre_get_posts_query ($ q) {

om (! $ q-> is_main_query ()) returnerar;
om (! $ q-> is_post_type_archive ()) returnerar;

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

$ q-> set ('tax_query', array (array (
'taxonomy' => 'product_cat',
'field' => 'slug',
'terms' => array ('skor'), // Visa inte produkter i skorskategorin på butikssidan
'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 – Ändra butikskolumnens nummer

/ **
* WooCommerce Extra Feature
* --------------------------
*
* Ändra produktkolumnens nummer på butiksidor
*
* /
funktion woo_product_columns_frontend () {
global $ woocommerce;

// Standardvärde används också för kategorier och underkategorier
$ kolumner = 4;

// Produktlista
if (is_product_category ()):
$ kolumner = 4;
endif;

//Relaterade produkter
if (is_product ()):
$ kolumner = 2;
endif;

// Cross Sells
if (is_checkout ()):
$ kolumner = 4;
endif;

returnera $ kolumner;
}
add_filter ('loop_shop_columns', 'woo_product_columns_frontend');

15 – Inaktivera WooCommerce-flikar

 / **
* Ta bort produktflikar
*
* /
funktion woo_remove_product_tab ($ flikar) {

unset ($ tabs ['description']); // Ta bort beskrivningsfliken
unset ($ tabs ['recensioner']); // Ta bort fliken recensioner
unset ($ tabs ['extra_information']); // Ta bort fliken för ytterligare information

returnera $ flikar;

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

16 – Ta bort brödsmulan

 / **
* Ta bort WooCommerce BreadCrumb
*
* /
remove_action ('woocommerce_before_main_content', 'woocommerce_breadcrumb', 20);

17 – Begränsa leveransländerna

/ **
* WooCommerce Extra Feature
* --------------------------
*
* Begränsa leveransländerna
*
* /
funktion woo_override_checkout_fields ($ fält) {

$ field ['shipping'] ['shipping_country'] = array (
'typ' => 'välj',
'label' => __ ('Min nya landslista', 'woocommerce'),
'options' => array ('AU' => 'Australien')
);

returnera $ fält;
}
add_filter ('woocommerce_checkout_fields', 'woo_override_checkout_fields');

18 – Ersätt “Gratis!” produktsträng

/ **
* WooCommerce Extra Feature
* --------------------------
*
* Ersätt "Gratis!" av en anpassad sträng
*
* /
funktion woo_my_custom_free_message () {
returnera "Denna produkt är GRATIS!";
}

add_filter ('woocommerce_free_price_html', 'woo_my_custom_free_message');

19 – Dölj ALLA andra leveransmetoder när gratis frakt är tillgängligt

// Dölj ALLA leveransalternativ när gratis frakt är tillgängligt
add_filter ('woocommerce_available_shipping_methods', 'hide_all_shipping_when_free_is_available', 10, 1);

/ **
* Dölj ALLT fraktalternativ när gratis frakt är tillgängligt
*
* @param array $ available_methods
* /
funktionen hide_all_shipping_when_free_is_available ($ available_methods) {

if (isset ($ available_methods ['free_shipping'])):

// Få gratis fraktmatris till en ny grupp
$ freeshipping = array ();
$ freeshipping = $ available_methods ['free_shipping'];

// Töm arten $ available_methods
unset ($ available_methods);

// Lägg till gratis frakt tillbaka till $ avaialble_methods
$ available_methods = array ();
$ available_methods [] = $ freeshipping;

endif;

returnera $ tillgängliga_metoder;
}

20 – Gör kassan “status” inte obligatorisk

/ **
* WooCommerce Extra Feature
* --------------------------
*
* Gör "status" -fältet inte obligatoriskt vid kassan
*
* /

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

funktion woo_filter_state_billing ($ address_fields) {
$ address_fields ['billing_state'] ['required'] = falsk;
returnera $ adressfält;
}

funktion woo_filter_state_shipping ($ address_fields) {
$ address_fields ['shipping_state'] ['required'] = falsk;
returnera $ adressfält;
}

21 – Skapa en kupong programmatiskt

$ coupon_code = 'UNIQUECODE'; // Kod
$ belopp = '10'; // Belopp
$ discount_type = 'fixed_cart'; // Typ: fixed_cart, procent, fixed_product, procent_product

$ kupong = matris (
'post_title' => $ kupongkod,
'post_content' => '',
'post_status' => 'publicera',
'post_author' => 1,
'post_type' => 'shop_coupon'
);

$ new_coupon_id = wp_insert_post ($ kupong);

// Lägg till meta
update_post_meta ($ new_coupon_id, 'discount_type', $ discount_type);
update_post_meta ($ new_coupon_id, 'coupon_amount', $ summa);
update_post_meta ($ new_coupon_id, 'individual_use', 'no');
update_post_meta ($ new_coupon_id, 'product_ids', '');
update_post_meta ($ new_coupon_id, 'exclude_product_ids', '');
update_post_meta ($ new_coupon_id, 'use_limit', '');
update_post_meta ($ new_coupon_id, 'expiry_date', '');
update_post_meta ($ new_coupon_id, 'Apply_before_tax', 'ja');
update_post_meta ($ new_coupon_id, 'free_shipping', 'no');

22 – Ändra ämnesrader för e-post

/ *
* Ämnesfilter:
* woocommerce_email_subject_new_order
* woocommerce_email_subject_customer_procesing_order
* woocommerce_email_subject_customer_completed_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);

funktionen ändra_admin_email_subjekt ($ ämne, $ ordning) {
global $ woocommerce;

$ blogname = wp_specialchars_decode (get_option ('blogname'), ENT_QUOTES);

$ subject = sprintf ('[% s] Ny kundorder (#% s) från namn% s% s', $ blogname, $ order-> id, $ order-> billing_first_name, $ order-> billing_last_name);

returnera $ ämne;
}

23 – Lägg till egen avgift i kundvagnen

/ **
* WooCommerce Extra Feature
* --------------------------
*
* Lägg anpassad avgift i kundvagnen automatiskt
*
* /
funktion woo_add_cart_fee () {

global $ woocommerce;

if (is_cart ()) {
$ woocommerce-> cart-> add_fee (__ ('Custom', 'woocommerce'), 5);
}

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

24 – Anpassat läggs till i kundvagnmeddelandet

/ **
* Anpassad Lägg till i kundvagn Meddelanden
* Lägg till detta i din temafunktioner.php-fil
** /
add_filter ('woocommerce_add_to_cart_message', 'custom_add_to_cart_message');
funktion custom_add_to_cart_message () {
global $ woocommerce;

// Utgångsmeddelanden
if (get_option ('woocommerce_cart_redirect_after_add') == 'ja'):

$ return_to = get_permalink (woocommerce_get_page_id ('shop'));

$ meddelande = sprintf ('% s % s ', $ return_to, __ (' Fortsätt shoppa → ',' woocommerce '), __ (' Produkten har lagts till i din kundvagn. ',' woocommerce '));

annat:

$ meddelande = sprintf ('% s % s ', get_permalink (woocommerce_get_page_id (' cart ')), __ (' Visa kundvagn → ',' woocommerce '), __ (' Produkten har lagts till i din kundvagn. ',' woocommerce '));

endif;

returnera $ meddelande;
}

25 – Lägg till betalningsmetod i admin e-post

/ **
* WooCommerce Extra Feature
* --------------------------
*
* Lägg till betalningsmetod för att administrera ny order e-post
*
* /
add_action ('woocommerce_email_after_order_table', 'woo_add_payment_method_to_admin_new_order', 15, 2);

funktion woo_add_payment_method_to_admin_new_order ($ order, $ is_admin_email) {
if ($ is_admin_email) {
echo '

Betalningsmetod: '. $ order-> payment_method_title. '

'; } }

Och boom! Det är allt! Jag hoppas att du kommer att gilla dessa utdrag. Om du har några förslag, tveka inte att lämna en kommentar nedan!


Har du inte ett WooCommerce-tema eller vill du ha ett nytt? Se till att kolla in vårt totala WordPress-tema!

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