Meine 25 besten WooCommerce-Schnipsel für WordPress Teil 2

  1. 1. Meine 25 besten WooCommerce-Snippets für WordPress
  2. 2. Derzeit lesen: Meine 25 besten WooCommerce-Schnipsel für WordPress Teil 2

Vor ein paar Tagen habe ich einen Beitrag geschrieben, in dem ich 25 der nützlichsten WooCommerce-Snippets aufgelistet habe, die ich verwende, und Sie waren viele Leute, die nach mehr fragten. Deshalb habe ich mich heute entschlossen, weitere Snippets für bereitzustellen WooCommerce! Auf geht’s!


Contents

1 – Ersetzen Sie das Standard-PayPal-Logo von WooCommerce

/ *
* Ersetzen Sie das Standard-PayPal-Symbol von WooCommerce
* /
Funktion paypal_checkout_icon () {
return 'https://www.paypalobjects.com/webstatic/mktg/logo-center/logo_betalen_met_paypal_nl.jpg'; // schreibe hier deine eigene Bild-URL
}}
add_filter ('woocommerce_paypal_icon', 'paypal_checkout_icon');

2 – Ersetzen Sie das Standard-Produktplatzhalterbild

/ *
* geht in theme functions.php oder ein benutzerdefiniertes Plugin. Ersetzen Sie den Bilddateinamen / -pfad durch Ihren eigenen  :) 
* *
** /
add_action ('init', 'custom_fix_thumbnail');

Funktion custom_fix_thumbnail () {
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 = $ uploads. '/2012/07/thumb1.jpg';

return $ src;
}}
}}

3 – Entfernen Sie “Produkte” von Paniermehl

/ *
* Verstecke "Produkte" in WooCommerce Breadcrumb
* /
Funktion woo_custom_filter_breadcrumbs_trail ($ trail) {
foreach ($ trail als $ k => $ v) {
if (strtolower (strip_tags ($ v)) == 'products') {
nicht gesetzt ($ trail [$ k]);
brechen;
}}
}}

return $ trail;
}}

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

4 – Wagen leeren

/ *
* Leerer WooCommerce-Einkaufswagen
* /
Funktion my_empty_cart () {
globaler $ woocommerce;
$ woocommerce-> cart-> empty_cart ();
}}
add_action ('init', 'my_empty_cart');

5 – Produkt bei Besuch automatisch in den Warenkorb legen

/ *
* Artikel bei Besuch in den Warenkorb legen
* /
Funktion add_product_to_cart () {
if (! is_admin ()) {
globaler $ woocommerce;
$ product_id = 64;
$ found = false;
// prüfe ob das Produkt bereits im Warenkorb ist
if (sizeof ($ woocommerce-> cart-> get_cart ())> 0) {
foreach ($ woocommerce-> cart-> get_cart () als $ cart_item_key => $ values) {
$ _product = $ values ​​['data'];
if ($ _product-> id == $ product_id)
$ found = true;
}}
// Wenn das Produkt nicht gefunden wurde, fügen Sie es hinzu
if (! $ gefunden)
$ woocommerce-> cart-> add_to_cart ($ product_id);
} else {
// Wenn sich keine Produkte im Warenkorb befinden, fügen Sie sie hinzu
$ woocommerce-> cart-> add_to_cart ($ product_id);
}}
}}
}}
add_action ('init', 'add_product_to_cart');

6 – Fügen Sie eine benutzerdefinierte Währung / ein benutzerdefiniertes Symbol hinzu

add_filter ('woocommerce_currencies', 'add_my_currency');

Funktion add_my_currency ($ currencies) {
$ currencies ['ABC'] = __ ('Währungsname', 'Woocommerce');
$ Währungen zurückgeben;
}}

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

Funktion add_my_currency_symbol ($ Währung_Symbol, $ Währung) {
Schalter ($ Währung) {
Fall 'ABC': $rency_symbol = '$'; brechen;
}}
return $rency_symbol;
}}

7 – Ändern Sie den Text der Schaltfläche zum Hinzufügen zum Warenkorb

/ **
* Ändern Sie den Text zum Hinzufügen zum Warenkorb auf einzelnen Produktseiten
* /
Funktion woo_custom_cart_button_text () {
return __ ('Mein Schaltflächentext', 'Woocommerce');
}}
add_filter ('single_add_to_cart_text', 'woo_custom_cart_button_text');



/ **
* Ändern Sie den Text zum Hinzufügen zum Warenkorb in Produktarchiven
* /
Funktion woo_archive_custom_cart_button_text () {
return __ ('Mein Schaltflächentext', 'Woocommerce');
}}
add_filter ('add_to_cart_text', 'woo_archive_custom_cart_button_text');

8 – Abonnement umleiten zum Warenkorb zur Checkout-Seite umleiten

/ **
* Abonnement umleiten zum Warenkorb zur Checkout-Seite umleiten
* *
* @param string $ url
* /
Funktion custom_add_to_cart_redirect ($ url) {

$ product_id = (int) $ _REQUEST ['zum Warenkorb hinzufügen'];
if (class_exists ('WC_Subscriptions_Product')) {
if (WC_Subscriptions_Product :: is_subscription ($ product_id)) {
return get_permalink (get_option ('woocommerce_checkout_page_id'));
} else return $ url;
} else return $ url;

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

Für dieses Snippet ist das Abonnement-Plugin erforderlich.

9 – Nach dem Hinzufügen zum Warenkorb zur Checkout-Seite umleiten

/ **
* Abonnement umleiten zum Warenkorb zur Checkout-Seite umleiten
* *
* @param keine
* /
Funktion add_to_cart_checkout_redirect () {
wp_safe_redirect (get_permalink (get_option ('woocommerce_checkout_page_id')));
sterben();
}}
add_action ('woocommerce_add_to_cart', 'add_to_cart_checkout_redirect', 11);

10 – CC alle E-Mails

 / **
* WooCommerce Extra Funktion
* * --------------------------
* *
* Fügen Sie allen WooCommerce-E-Mails einen weiteren E-Mail-Empfänger hinzu
* *
* /
Funktion woo_cc_all_emails () {
Geben Sie 'Bcc: [email protected]' zurück. "\ r \ n";
}}
add_filter ('woocommerce_email_headers', 'woo_cc_all_emails');

11 – Senden Sie eine E-Mail, wenn eine neue Bestellung mit verwendeten Gutscheinen abgeschlossen ist

/ **
* WooCommerce Extra Funktion
* * --------------------------
* *
* Senden Sie jedes Mal eine E-Mail, wenn eine Bestellung mit Gutscheinen abgeschlossen ist
* Die E-Mail enthält Gutscheine, die beim Auschecken verwendet werden
* *
* /
Funktion woo_email_order_coupons ($ order_id) {
$ order = new WC_Order ($ order_id);

if ($ order-> get_used_coupons ()) {

$ to = '[email protected]';
$ subject = 'Neue Bestellung abgeschlossen';
$ headers = 'Von: Mein Name'. "\ r \ n";

$ message = 'Eine neue Bestellung wurde abgeschlossen. \ n';
$ message. = 'Bestellnummer:'. $ order_id. '\ n';
$ message. = 'Verwendete Gutscheine: \ n';

foreach ($ order-> get_used_coupons () als $ coupon) {
$ message. = $ coupon. '\ n';
}}
@wp_mail ($ to, $ subject, $ message, $ headers);
}}
}}
add_action ('woocommerce_thankyou', 'woo_email_order_coupons');

12 – Ändern Sie die zugehörige Produktnummer

/ **
* WooCommerce Extra Funktion
* * --------------------------
* *
* Ändern Sie die Anzahl der verwandten Produkte auf der Produktseite
* Setze deinen eigenen Wert für 'posts_per_page'
* *
* /
Funktion woo_related_products_limit () {
globales $ Produkt;

$ args = array (
'post_type' => 'Produkt',
'no_found_rows' => 1,
'posts_per_page' => 6,
'ignore_sticky_posts' => 1,
'orderby' => $ orderby,
'post__in' => $ related,
'post__not_in' => Array ($ product-> id)
);
return $ args;
}}
add_filter ('woocommerce_related_products_args', 'woo_related_products_limit');

13 – Schließen Sie Produkte aus einer bestimmten Kategorie auf der Shop-Seite aus

 / **
* Entfernen Sie Produkte von der Shop-Seite nach Kategorie
* *
* /
Funktion woo_custom_pre_get_posts_query ($ q) {

if (! $ q-> is_main_query ()) return;
if (! $ q-> is_post_type_archive ()) return;

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

$ q-> set ('tax_query', array (array (
'taxonomy' => 'product_cat',
'field' => 'slug',
'Begriffe' => Array ('Schuhe'), // Keine Produkte in der Kategorie Schuhe auf der Shop-Seite anzeigen
'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 – Ändern Sie die Nummer der Shop-Spalten

/ **
* WooCommerce Extra Funktion
* * --------------------------
* *
* Ändern Sie die Nummer der Produktspalten auf den Shop-Seiten
* *
* /
Funktion woo_product_columns_frontend () {
globaler $ woocommerce;

// Standardwert wird auch für Kategorien und Unterkategorien verwendet
$ column = 4;

// Produktliste
if (is_product_category ()):
$ column = 4;
endif;

// Verwandte Produkte
if (is_product ()):
$ column = 2;
endif;

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

$ Spalten zurückgeben;
}}
add_filter ('loop_shop_columns', 'woo_product_columns_frontend');

15 – Deaktivieren Sie die WooCommerce-Registerkarten

 / **
* Entfernen Sie die Produktregisterkarten
* *
* /
Funktion woo_remove_product_tab ($ tabs) {

nicht gesetzt ($ tabs ['description']); // Entfernen Sie die Registerkarte Beschreibung
nicht gesetzt ($ tabs ['reviews']); // Entfernen Sie die Registerkarte Bewertungen
nicht gesetzt ($ tabs ['zusätzliche_information']); // Entfernen Sie die Registerkarte "Zusätzliche Informationen"

$ tabs zurückgeben;

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

16 – Paniermehl entfernen

 / **
* Entfernen Sie WooCommerce BreadCrumb
* *
* /
remove_action ('woocommerce_before_main_content', 'woocommerce_breadcrumb', 20);

17 – Liste der Versandländer einschränken

/ **
* WooCommerce Extra Funktion
* * --------------------------
* *
* Liste der Versandländer einschränken
* *
* /
Funktion woo_override_checkout_fields ($ fields) {

$ Felder ['Versand'] ['Versand_Land'] = Array (
'type' => 'select',
'label' => __ ('Meine neue Länderliste', 'Woocommerce'),
'options' => array ('AU' => 'Australia')
);

$ Felder zurückgeben;
}}
add_filter ('woocommerce_checkout_fields', 'woo_override_checkout_fields');

18 – Ersetzen Sie “Kostenlos!” Produktzeichenfolge

/ **
* WooCommerce Extra Funktion
* * --------------------------
* *
* Ersetzen Sie "Free!" durch eine benutzerdefinierte Zeichenfolge
* *
* /
Funktion woo_my_custom_free_message () {
return "Dieses Produkt ist KOSTENLOS!";
}}

add_filter ('woocommerce_free_price_html', 'woo_my_custom_free_message');

19 – Alle anderen Versandarten ausblenden, wenn kostenloser Versand verfügbar ist

// ALLE Versandoptionen ausblenden, wenn kostenloser Versand verfügbar ist
add_filter ('woocommerce_available_shipping_methods', 'hide_all_shipping_when_free_is_available', 10, 1);

/ **
* Alle Versandoptionen ausblenden, wenn kostenloser Versand verfügbar ist
* *
* @param array $ available_methods
* /
Funktion hide_all_shipping_when_free_is_available ($ available_methods) {

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

// Holen Sie sich Free Shipping Array in ein neues Array
$ freeshipping = array ();
$ freeshipping = $ available_methods ['free_shipping'];

// Leere das Array $ available_methods
unset ($ available_methods);

// Kostenlosen Versand wieder in $ avaialble_methods hinzufügen
$ available_methods = array ();
$ available_methods [] = $ freeshipping;

endif;

return $ available_methods;
}}

20 – Das Feld “Status” für die Kasse ist nicht erforderlich

/ **
* WooCommerce Extra Funktion
* * --------------------------
* *
* Stellen Sie sicher, dass das Feld "Status" beim Auschecken nicht erforderlich ist
* *
* /

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'] = false;
return $ address_fields;
}}

Funktion woo_filter_state_shipping ($ address_fields) {
$ address_fields ['Versandstatus'] ['Erforderlich'] = false;
return $ address_fields;
}}

21 – Erstellen Sie programmgesteuert einen Gutschein

$ coupon_code = 'UNIQUECODE'; // Code
$ Betrag = '10'; // Menge
$ discount_type = 'fixed_cart'; // Typ: fixed_cart, Prozent, fixed_product, Prozent_product

$ coupon = array (
'post_title' => $ coupon_code,
'post_content' => '',
'post_status' => 'veröffentlichen',
'post_author' => 1,
'post_type' => 'shop_coupon'
);

$ new_coupon_id = wp_insert_post ($ coupon);

// Meta hinzufügen
update_post_meta ($ new_coupon_id, 'discount_type', $ discount_type);
update_post_meta ($ new_coupon_id, 'coupon_amount', $ amount);
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, 'usage_limit', '');
update_post_meta ($ new_coupon_id, 'expiry_date', '');
update_post_meta ($ new_coupon_id, 'apply_before_tax', 'yes');
update_post_meta ($ new_coupon_id, 'free_shipping', 'no');

22 – Ändern Sie die Betreffzeilen der E-Mails

/ *
* Betreff-Filter:
* 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);

Funktion change_admin_email_subject ($ subject, $ order) {
globaler $ woocommerce;

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

$ subject = sprintf ('[% s] Neukundenbestellung (#% s) von Name% s% s', $ blogname, $ order-> id, $ order-> billing_first_name, $ order-> billing_last_name);

return $ subject;
}}

23 – Benutzerdefinierte Gebühr in den Warenkorb legen

/ **
* WooCommerce Extra Funktion
* * --------------------------
* *
* Fügen Sie dem Warenkorb automatisch eine benutzerdefinierte Gebühr hinzu
* *
* /
Funktion woo_add_cart_fee () {

globaler $ woocommerce;

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

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

24 – Benutzerdefiniert zur Warenkorbnachricht hinzugefügt

/ **
* Benutzerdefinierte Nachrichten zum Warenkorb
* Fügen Sie dies Ihrer Datei theme functions.php hinzu
** /
add_filter ('woocommerce_add_to_cart_message', 'custom_add_to_cart_message');
Funktion custom_add_to_cart_message () {
globaler $ woocommerce;

// Erfolgsmeldungen ausgeben
if (get_option ('woocommerce_cart_redirect_after_add') == 'yes'):

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

$ message = sprintf ('% s % s ', $ return_to, __ (' Einkauf fortsetzen → ',' Woocommerce '), __ (' Produkt erfolgreich in den Warenkorb gelegt. ',' Woocommerce '));

sonst:

$ message = sprintf ('% s % s ', get_permalink (woocommerce_get_page_id (' cart ')), __ (' Warenkorb anzeigen → ',' woocommerce '), __ (' Produkt erfolgreich in Ihren Warenkorb gelegt. ',' woocommerce '));

endif;

return $ message;
}}

25 – Zahlungsmethode zur Administrator-E-Mail hinzufügen

/ **
* WooCommerce Extra Funktion
* * --------------------------
* *
* Zahlungsmethode hinzufügen, um neue Bestell-E-Mail zu verwalten
* *
* /
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 '

Bezahlverfahren: '. $ order-> zahlungsmethode_titel. '

'; }} }}

Und boom! Das ist es! Ich hoffe, Ihnen gefallen diese Schnipsel. Wenn Sie Vorschläge haben, zögern Sie nicht, unten einen Kommentar zu hinterlassen!


Sie haben noch kein WooCommerce-fähiges Thema oder möchten ein neues? Schauen Sie sich unbedingt unser Total WordPress-Theme an!

Jeffrey Wilson Administrator
Sorry! The Author has not filled his profile.
follow me
    Like this post? Please share to your friends:
    Adblock
    detector
    map