A WordPress 2. részének 25 legjobb WooCommerce fragmentuma

  1. 1. A WordPress 25 legjobb WooCommerce-kivonatom
  2. 2. Jelenleg olvas: A WordPress 2. részének 25 legjobb WooCommerce fragmentuma

Néhány nappal ezelőtt írtam egy bejegyzést, ahol felsoroltam a 25 leghasznosabb WooCommerce-kódrészletet, és sokan voltak, akik még többet kértek, ezért ma úgy döntöttem, hogy adok még néhány kivonatot a WooCommerce! Essünk neki!


1 – Cserélje ki a WooCommerce alapértelmezett PayPal logóját

/ *
* Cserélje ki a WooCommerce alapértelmezett PayPal ikonját
* /
paypal_checkout_icon () funkció
visszatérés a „https://www.paypalobjects.com/webstatic/mktg/logo-center/logo_betalen_met_paypal_nl.jpg” címre; // írja ide saját kép URL-jét
}
add_filter ('woocommerce_paypal_icon', 'paypal_checkout_icon');

2 – Cserélje ki az alapértelmezett termék helyőrző képét

/ *
* a theme function.php vagy egy egyedi plugin témakörébe tartozik. Cserélje le a képfájl nevét / elérési útját a sajátjára  :) 
*
** /
add_action ('init', 'custom_fix_thumbnail');

function custom_fix_thumbnail () {
add_filter ('woocommerce_placeholder_img_src', 'custom_woocommerce_placeholder_img_src');

custom_woocommerce_placeholder_img_src ($ src) funkció {
$ upload_dir = wp_upload_dir ();
$ uploads = untrailingslashit ($ upload_dir ['baseurl']);
$ src = $ feltöltések. '/2012/07/thumb1.jpg';

return $ src;
}
}

3 – Távolítsa el a „Termékeket” a zsemléből

/ *
* A "Termékek" elrejtése a WooCommerce kenyércukorjában
* /
funkció woo_custom_filter_breadcrumbs_trail ($ trail) {
foreach ($ nyomvonal mint $ k => $ v) {
if (strtolower (strip_tags ($ v)) == 'termékek') {
unset ($ nyomvonal [$ k]);
szünet;
}
}

visszatérési útvonal;
}

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

4 – Üres kocsi

/ *
* Üres a WooCommerce kosár
* /
funkció my_empty_cart () {
globális dolláros kereskedelem;
$ Woocommerce-> kazettamentes> empty_cart ();
}
add_action ('init', 'my_empty_cart');

5 – A termék automatikus hozzáadása a kosárba látogatáskor

/ *
* Adjon tételt a kosárba látogatáskor
* /
add_product_to_cart () függvény () {
if (! is_admin ()) {
globális dolláros kereskedelem;
$ termék_id = 64;
$ talált = hamis;
// ellenőrizze, hogy a termék már van-e a kosárban
if (sizeof ($ woocommerce-> cart-> get_cart ())> 0) {
foreach ($ woocommerce-> cart-> get_cart () mint $ cart_item_key => $ értékek) {
$ _product = $ értékek ['adatok'];
if ($ _product-> id == $ product_id)
$ talált = igaz;
}
// Ha a terméket nem találták, akkor adjuk hozzá
if (! $ található)
$ woocommerce-> cart-> add_to_cart ($ product_id);
} más {
// Ha nincs termék a kosárban, akkor tegye be
$ woocommerce-> cart-> add_to_cart ($ product_id);
}
}
}
add_action ('init', 'add_product_to_cart');

6 – Egyéni pénznem / szimbólum hozzáadása

add_filter ('woocommerce_currencies', 'add_my_currency');

függvény add_my_currency ($ valuták) {
$ valuták ['ABC'] = __ ('Pénznem neve', 'woocommerce');
visszaküld dollár valutákat;
}

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

függvény add_my_currency_symbol ($ currency_symbol, $ currency) {
váltás (dollár pénznem) {
'ABC' eset: $ currency_symbol = '$'; szünet;
}
return dollár_szimbólum;
}

7 – A kosárba helyezés gomb módosítása

/ **
* Módosítsa az egyes termékek oldalain a kosárba való beillesztés szövegét
* /
funkció woo_custom_cart_button_text () {
return __ ('Saját gomb szöveg', 'woocommerce');
}
add_filter ('single_add_to_cart_text', 'woo_custom_cart_button_text');



/ **
* Módosítsa a termék-archívumok kosárba való beillesztésének szövegét
* /
funkció woo_archive_custom_cart_button_text () {
return __ ('Saját gomb szöveg', 'woocommerce');
}
add_filter ('add_to_cart_text', 'woo_archive_custom_cart_button_text');

8 – Az előfizetés átirányítása a kosárba a fizetési oldalhoz

/ **
* Az előfizetés átirányítása a kosárba a fizetési oldalhoz
*
* @param string $ url
* /
custom_add_to_cart_redirect ($ url) funkció {

$ product_id = (int) $ _REQUEST ['kosár kiegészítő'];
if (osztály_existe ('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');

Ehhez a kódrészlethez szükség van az előfizetések beépülő moduljára.

9 – átirányítás a pénztár oldalra a kosárba való felvétel után

/ **
* Az előfizetés átirányítása a kosárba a fizetési oldalhoz
*
* @param nincs
* /
add_to_cart_checkout_redirect () funkció
wp_safe_redirect (get_permalink (get_option ('woocommerce_checkout_page_id'))));
meghal();
}
add_action ('woocommerce_add_to_cart', 'add_to_cart_checkout_redirect', 11);

10 – CC minden e-mailt

 / **
* WooCommerce kiegészítő szolgáltatás
* --------------------------
*
* Adjon hozzá további e-mail címzettet az összes WooCommerce e-mailhez
*
* /
funkció woo_cc_all_emails () {
vissza a "Bcc: [email protected] domain.com". "\ R \ n";
}
add_filter ('woocommerce_email_headers', 'woo_cc_all_emails');

11 – Küldjön e-mailt, ha új megrendelés befejeződik a használt kuponokkal

/ **
* WooCommerce kiegészítő szolgáltatás
* --------------------------
*
* Küldjön e-mailt minden alkalommal, amikor a megrendelés kupon (ok) mal teljesül
* Az e-mail kupon (oka) t tartalmaz, amelyeket a pénztárnál használtak
*
* /
funkció woo_email_order_coupons ($ order_id) {
$ order = új WC_Order ($ order_id);

if ($ order-> get_used_coupons ()) {

$ to = '[email protected]';
$ subjekt = 'Új rendelés befejeződött';
$ headers = 'Feladó: nevem'. "\ R \ n";

$ message = 'Új rendelés befejeződött. \ n';
$ message. = 'Megrendelés azonosítója:'. $ order_id. '\ n';
$ message. = 'Használt kuponok: \ n';

foreach ($ order-> get_used_coupons () $ couponként) {
$ üzenet. = $ kupon. '\ n';
}
@wp_mail ($ to, $ tárgy, $ üzenet, $ fejlécek);
}
}
add_action ('woocommerce_thankyou', 'woo_email_order_coupons');

12 – Cserélje ki a kapcsolódó termékek számát

/ **
* WooCommerce kiegészítő szolgáltatás
* --------------------------
*
* Módosítsa a kapcsolódó termékek számát a termékoldalon
* Állítsa be saját értékét a 'posts_per_page'
*
* /
funkció woo_related_products_limit () {
globális $ termék;

$ args = tömb (
'post_type' => 'termék',
'no_found_rows' => 1,
'posts_per_page' => 6,
'ignore_sticky_posts' => 1,
'orderby' => $ orderby,
'post__in' => $ kapcsolatos,
'post__not_in' => tömb ($ termék-> azonosító)
);
visszaküldés $ args;
}
add_filter ('woocommerce_related_products_args', 'woo_related_products_limit');

13 – Zárja ki az adott kategóriába tartozó termékeket az üzlet oldalon

 / **
* Kategóriák szerint távolítsa el a termékeket az üzlet oldaláról
*
* /
funkció woo_custom_pre_get_posts_query ($ q) {

if (! $ q-> is_main_query ()) visszatérés;
if (! $ q-> is_post_type_archive ()) return;

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

$ q-> set ('tax_query', tömb (tömb (
'taxonómia' => 'termék_maga',
'mező' => 'meztelencsiga',
'terms' => array ('cipő'), // Ne jelenítsen meg termékeket a cipőkategóriában az üzlet oldalon
'operátor' => 'NEM IN'
)));

}

remove_action ('pre_get_posts', 'custom_pre_get_posts_query');

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

14 – Az üzlet oszlopok számának módosítása

/ **
* WooCommerce kiegészítő szolgáltatás
* --------------------------
*
* Változtassa meg a termék oszlopok számát az üzletoldalakon
*
* /
funkció woo_product_columns_frontend () {
globális dolláros kereskedelem;

// Alapértelmezett érték a kategóriákhoz és az alkategóriákhoz is használható
$ oszlopok = 4;

// Terméklista
if (is_product_category ()):
$ oszlopok = 4;
endif;

//Kapcsolódó termékek
if (is_product ()):
$ oszlopok = 2;
endif;

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

visszatér $ oszlopok;
}
add_filter ('loop_shop_columns', 'woo_product_columns_frontend');

15 – Tiltsa le a WooCommerce fülöket

 / **
* Távolítsa el a termék füleit
*
* /
funkció woo_remove_product_tab ($ tabs) {

unset ($ tabs ['description']); // Távolítsa el a leírás fület
unset ($ tabs ['áttekintés']); // Távolítsa el az áttekintés lapot
unset ($ tabs ['papildu_információ']); // Távolítsa el a kiegészítő információk fület

visszatér $ lapok;

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

16 – Távolítsa el a zsemlemorzsát

 / **
* Távolítsa el a WooCommerce BreadCrumb fájlt
*
* /
remove_action ('woocommerce_before_main_content', 'woocommerce_breadcrumb', 20);

17 – Korlátozza a szállítási országok listáját

/ **
* WooCommerce kiegészítő szolgáltatás
* --------------------------
*
* A szállító országok listájának korlátozása
*
* /
funkció woo_override_checkout_fields ($ mezők) {

$ mezők ['shipping'] ['shipping_country'] = tömb (
'type' => 'select',
'label' => __ ('Saját új országlistám', 'woocommerce'),
'options' => array ('AU' => 'Australia')
);

visszaküld $ mezőket;
}
add_filter ('woocommerce_checkout_fields', 'woo_override_checkout_fields');

18 – Cserélje ki a „Ingyenes!” termék karakterlánc

/ **
* WooCommerce kiegészítő szolgáltatás
* --------------------------
*
* Cserélje ki a "Ingyenes!" egy egyedi húr segítségével
*
* /
funkció woo_my_custom_free_message () {
vissza: "Ez a termék INGYENES!";
}

add_filter ('woocommerce_free_price_html', 'woo_my_custom_free_message');

19 – Az összes többi szállítási módszer elrejtése, ha ingyenes szállítás elérhető

// ÖSSZES szállítási lehetőségek elrejtése, ha ingyenes szállítás érhető el
add_filter ('woocommerce_avable_shipping_methods', 'hide_all_shipping_when_free_is_avable', 10, 1);

/ **
* ÖSSZES szállítási lehetőség elrejtése, ha ingyenes szállítás érhető el
*
* @param tömb $ available_methods
* /
hide_all_shipping_when_free_is_avable funkció ($ available_methods) {

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

// Ingyenes szállítási tömb beszerzése új tömbbe
$ freeshipping = array ();
$ freeshipping = $ available_methods ['free_shipping'];

// Ürítse ki a $ available_methods tömböt
unset ($ available_methods);

// Ingyenes szállítás hozzáadása a $ avaialble_methods elemhez
$ available_methods = array ();
$ available_methods [] = $ freeshipping;

endif;

return $ available_methods;
}

20 – A pénztár “állapot” mezőjét nem kell kitölteni

/ **
* WooCommerce kiegészítő szolgáltatás
* --------------------------
*
* A "State" mezőt nem kell kitölteni a pénztárnál
*
* /

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

függvény woo_filter_state_billing ($ cím_mezők) {
$ address_fields ['billing_state'] ['required'] = false;
return $ cím_mezők;
}

funkció woo_filter_state_shipping ($ address_fields) {
$ address_fields ['shipping_state'] ['required'] = false;
return $ cím_mezők;
}

21 – Hozzon létre egy kupont programozottan

$ coupon_code = 'UNIQUECODE'; // Kód
$ összeg = '10'; // Összeg
$ discount_type = 'rögzített_kocsi'; // Típus: rögzített_kocsi, százalék, rögzített_termék, százaléktermék

$ coupon = tömb (
'post_title' => $ kupon_kód,
'post_content' => '',
'post_status' => 'közzétenni',
'post_author' => 1,
'post_type' => 'shop_coupon'
);

$ new_coupon_id = wp_insert_post ($ kupon);

// Meta hozzáadása
update_post_meta ($ new_coupon_id, 'kedvezménytípus', $ kedvezménytípus);
update_post_meta ($ new_coupon_id, 'coupon_amount', $ összeg);
update_post_meta ($ new_coupon_id, 'individual_use', 'nem');
update_post_meta ($ new_coupon_id, 'product_ids', '');
update_post_meta ($ new_coupon_id, 'kizárás_termék_id', '');
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', 'igen');
update_post_meta ($ new_coupon_id, 'free_shipping', 'nem');

22 – Az e-mail tárgysorának módosítása

/ *
* Tárgyszűrők:
* 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);

function change_admin_email_subject ($ tárgy, $ megrendelés) {
globális dolláros kereskedelem;

$ blognév = wp_specialchars_decode (get_option ('blognév'), ENT_QUOTES);

$ alany = sprintf ('[% s] Új vevői megrendelés (#% s) a% s% s névből', $ blognév, $ megrendelés-> id, $ megrendelés-> számlázási_neve, $ megrendelés-> számlázási_last_neve);

visszatér $ alany;
}

23 – Adjon egyéni díjat a kosárba

/ **
* WooCommerce kiegészítő szolgáltatás
* --------------------------
*
* Adjon hozzá egyedi díjat a kosárhoz automatikusan
*
* /
funkció woo_add_cart_fee () {

globális dolláros kereskedelem;

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

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

24 – Egyéni hozzáadva a kosárhoz

/ **
* Egyedi Kosárba üzenet
* Adja hozzá ezt a téma.php fájlhoz
** /
add_filter ('woocommerce_add_to_cart_message', 'custom_add_to_cart_message');
custom_add_to_cart_message () funkció
globális dolláros kereskedelem;

// Sikeres üzenetek kiadása
if (get_option ('woocommerce_cart_redirect_after_add') == 'igen'):

$ return_to = get_permalink (woocommerce_get_page_id ('üzlet'));

$ üzenet = sprintf ('% s % s ', $ return_to, __ (' Vásárlás folytatása → ',' woocommerce '), __ (' A termék sikeresen bekerült a kosárba. ',' woocommerce '));

más :

$ üzenet = sprintf ('% s % s ', get_permalink (woocommerce_get_page_id (' cart ')), __ (' Kosár megtekintése → ',' woocommerce '), __ (' Termék sikeresen bekerült a kosárba. ',' woocommerce '));

endif;

visszaküld $ üzenetet;
}

25 – Fizetési módszer hozzáadása az admin e-mailhez

/ **
* WooCommerce kiegészítő szolgáltatás
* --------------------------
*
* Adjon hozzá fizetési módot az új rendelési e-mail adminisztrációhoz
*
* /
add_action ('woocommerce_email_after_order_table', 'woo_add_payment_method_to_admin_new_order', 15, 2);

funkció woo_add_payment_method_to_admin_new_order ($ order, $ is_admin_email) {
if ($ is_admin_email) {
visszhang ”

Fizetési mód: ” $ order-> payment_method_title. '

„ } }

És fellendülés! Ez az! Remélem tetszeni fognak ezek a részletek. Ha bármilyen javaslata van, ne habozzon, írjon megjegyzést alább!


Nincs még kész WooCommerce témája, vagy szeretne egy újat? Feltétlenül nézd meg a Teljes WordPress témát!

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