25 Cuplikan WooCommerce Terbaik Untuk WordPress Bagian 2

  1. 1. 25 Cuplikan WooCommerce Terbaik Untuk WordPress
  2. 2. Sedang membaca: 25 Cuplikan WooCommerce Terbaik Untuk WordPress Bagian 2

Beberapa hari yang lalu saya menulis posting di mana saya mencantumkan 25 snippet WooCommerce paling berguna yang saya gunakan dan Anda banyak orang yang meminta lebih, jadi hari ini saya memutuskan untuk memberikan beberapa snippet lagi untuk WooCommerce! Kita mulai!


1 – Ganti logo PayPal default WooCommerce

/ *
* Ganti ikon PayPal default WooCommerce
* /
function paypal_checkout_icon () {
return 'https://www.paypalobjects.com/webstatic/mktg/logo-center/logo_betalen_met_paypal_nl.jpg'; // tulis URL gambar Anda sendiri di sini
}
add_filter ('woocommerce_paypal_icon', 'paypal_checkout_icon');

2 – Ganti gambar placeholder produk default

/ *
* masuk dalam theme functions.php atau plugin khusus. Ganti nama file gambar / path dengan Anda sendiri  :) 
*
** /
add_action ('init', 'custom_fix_thumbnail');

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

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

mengembalikan $ src;
}
}

3 – Hapus “Produk” dari remah roti

/ *
* Sembunyikan "Produk" dalam remah roti WooCommerce
* /
function woo_custom_filter_breadcrumbs_trail ($ trail) {
foreach ($ trail as $ k => $ v) {
if (strtolower (strip_tags ($ v)) == 'produk') {
tidak disetel ($ trail [$ k]);
istirahat;
}
}

mengembalikan $ trail;
}

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

4 – Keranjang kosong

/ *
* Keranjang WooCommerce kosong
* /
function my_empty_cart () {
global $ woocommerce;
$ woocommerce-> cart-> empty_cart ();
}
add_action ('init', 'my_empty_cart');

5 – Secara otomatis menambahkan produk ke troli saat dikunjungi

/ *
* Tambahkan item ke troli saat dikunjungi
* /
function add_product_to_cart () {
if (! is_admin ()) {
global $ woocommerce;
$ product_id = 64;
$ found = false;
// periksa apakah produk sudah dalam keranjang
if (sizeof ($ woocommerce-> cart-> get_cart ())> 0) {
foreach ($ woocommerce-> cart-> get_cart () sebagai $ cart_item_key => $ values) {
$ _product = $ values ​​['data'];
if ($ _product-> id == $ product_id)
$ found = true;
}
// jika produk tidak ditemukan, tambahkan
if (! $ ditemukan)
$ woocommerce-> cart-> add_to_cart ($ product_id);
} lain {
// jika tidak ada produk dalam keranjang, tambahkan
$ woocommerce-> cart-> add_to_cart ($ product_id);
}
}
}
add_action ('init', 'add_product_to_cart');

6 – Tambahkan mata uang / simbol khusus

add_filter ('woocommerce_currencies', 'add_my_currency');

function add_my_currency ($ currency) {
$ currency ['ABC'] = __ ('Nama mata uang', 'woocommerce');
mengembalikan $ mata uang;
}

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

function add_my_currency_symbol ($ currency_symbol, $ currency) {
switch ($ currency) {
huruf 'ABC': $ currency_symbol = '$'; istirahat;
}
mengembalikan $ currency_symbol;
}

7 – Ubah teks tombol tambah ke keranjang

/ **
* Ubah teks tambah ke keranjang pada halaman produk tunggal
* /
function woo_custom_cart_button_text () {
return __ ('My Button Text', 'woocommerce');
}
add_filter ('single_add_to_cart_text', 'woo_custom_cart_button_text');



/ **
* Ubah teks tambah ke keranjang pada arsip produk
* /
function woo_archive_custom_cart_button_text () {
return __ ('My Button Text', 'woocommerce');
}
add_filter ('add_to_cart_text', 'woo_archive_custom_cart_button_text');

8 – Redirect berlangganan menambah ke keranjang ke halaman checkout

/ **
* Redirect berlangganan menambah ke keranjang ke halaman checkout
*
* @param string $ url
* /
function custom_add_to_cart_redirect ($ url) {

$ product_id = (int) $ _REQUEST ['add-to-cart'];
if (class_exists ('WC_Subscriptions_Product')) {
if (WC_Subscription_Product :: is_subscription ($ product_id)) {
kembalikan get_permalink (get_option ('woocommerce_checkout_page_id'));
} lain mengembalikan $ url;
} lain mengembalikan $ url;

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

Cuplikan ini membutuhkan plugin Langganan.

9 – Redirect ke halaman checkout setelah ditambahkan ke troli

/ **
* Redirect berlangganan menambah ke keranjang ke halaman checkout
*
* @param tidak ada
* /
function add_to_cart_checkout_redirect () {
wp_safe_redirect (get_permalink (get_option ('woocommerce_checkout_page_id')));
mati();
}
add_action ('woocommerce_add_to_cart', 'add_to_cart_checkout_redirect', 11);

10 – CC semua email

 / **
* Fitur Ekstra WooCommerce
* --------------------------
*
* Tambahkan penerima email lain ke semua email WooCommerce
*
* /
function woo_cc_all_emails () {
return 'Bcc: [email protected]'. "\ r \ n";
}
add_filter ('woocommerce_email_headers', 'woo_cc_all_emails');

11 – Kirim email saat pesanan baru selesai dengan kupon yang digunakan

/ **
* Fitur Ekstra WooCommerce
* --------------------------
*
* Kirim email setiap kali pesanan dengan kupon selesai
* Email berisi kupon yang digunakan selama proses checkout
*
* /
function woo_email_order_coupons ($ order_id) {
$ order = WC_Order baru ($ order_id);

if ($ order-> get_used_coupons ()) {

$ to = '[email protected]';
$ subject = 'Pesanan Baru Selesai';
$ header = 'Dari: Nama Saya'. "\ r \ n";

$ message = 'Pesanan baru telah selesai. \ n';
$ message. = 'ID Pesanan:'. $ order_id. '\ n';
$ message. = 'Kupon yang digunakan: \ n';

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

12 – Ubah nomor produk terkait

/ **
* Fitur Ekstra WooCommerce
* --------------------------
*
* Ubah jumlah produk terkait pada halaman produk
* Tetapkan nilai Anda sendiri untuk 'posts_per_page'
*
* /
function woo_related_products_limit () {
$ produk global;

$ args = array (
'post_type' => 'produk',
'no_found_rows' => 1,
'posts_per_page' => 6,
'ign_sticky_posts' => 1,
'orderby' => $ orderby,
'post__in' => $ related,
'post__not_in' => array ($ product-> id)
);
mengembalikan $ args;
}
add_filter ('woocommerce_related_products_args', 'woo_related_products_limit');

13 – Kecualikan produk dari kategori tertentu di halaman toko

 / **
* Hapus produk dari halaman toko berdasarkan kategori
*
* /
function woo_custom_pre_get_posts_query ($ q) {

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

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

$ q-> set ('tax_query', array (array (
'taxonomy' => 'product_cat',
'bidang' => 'siput',
'terms' => array ('shoes'), // Jangan tampilkan produk dalam kategori sepatu di halaman toko
'operator' => 'TIDAK DI DALAM'
)));

}

remove_action ('pre_get_posts', 'custom_pre_get_posts_query');

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

14 – Ubah nomor kolom toko

/ **
* Fitur Ekstra WooCommerce
* --------------------------
*
* Ubah nomor kolom produk pada halaman toko
*
* /
function woo_product_columns_frontend () {
global $ woocommerce;

// Nilai Default juga digunakan untuk kategori dan sub_kategori
$ kolom = 4;

// Daftar Produk
if (is_product_category ()):
$ kolom = 4;
berakhir jika;

//Produk-produk terkait
if (is_product ()):
$ kolom = 2;
berakhir jika;

// Cross Sells
if (is_checkout ()):
$ kolom = 4;
berakhir jika;

mengembalikan $ kolom;
}
add_filter ('loop_shop_columns', 'woo_product_columns_frontend');

15 – Nonaktifkan tab WooCommerce

 / **
* Hapus tab produk
*
* /
function woo_remove_product_tab ($ tabs) {

tidak disetel ($ tab ['deskripsi']); // Hapus tab deskripsi
tidak disetel ($ tab ['ulasan']); // Hapus tab ulasan
tidak disetel ($ tab ['additional_information']); // Hapus tab informasi tambahan

mengembalikan $ tab;

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

16 – Hapus remah roti

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

17 – Batasi daftar negara pengiriman

/ **
* Fitur Ekstra WooCommerce
* --------------------------
*
* Batasi daftar negara pengiriman
*
* /
function woo_override_checkout_fields ($ bidang) {

$ fields ['shipping'] ['shipping_country'] = array (
'ketik' => 'pilih',
'label' => __ ('Daftar Negara Baru Saya', 'woocommerce'),
'options' => array ('AU' => 'Australia')
);

mengembalikan $ bidang;
}
add_filter ('woocommerce_checkout_fields', 'woo_override_checkout_fields');

18 – Ganti “Gratis!” string produk

/ **
* Fitur Ekstra WooCommerce
* --------------------------
*
* Ganti "Gratis!" oleh string khusus
*
* /
function woo_my_custom_free_message () {
return "Produk ini GRATIS!";
}

add_filter ('woocommerce_free_price_html', 'woo_my_custom_free_message');

19 – Sembunyikan SEMUA metode pengiriman lainnya saat Pengiriman Gratis tersedia

// Sembunyikan SEMUA opsi pengiriman saat pengiriman gratis tersedia
add_filter ('woocommerce_available_shipping_methods', 'hide_all_shipping_when_free_is_available', 10, 1);

/ **
* Sembunyikan SEMUA opsi Pengiriman saat pengiriman gratis tersedia
*
* @param array $ available_methods
* /
fungsi hide_all_shipping_when_free_is_available ($ available_methods) {

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

// Dapatkan array Pengiriman Gratis ke array baru
$ freeshipping = array ();
$ freeshipping = $ available_methods ['free_shipping'];

// Kosongkan array $ available_methods
tidak disetel ($ available_methods);

// Tambahkan Pengiriman Gratis kembali ke $ avaialble_methods
$ available_methods = array ();
$ available_methods [] = $ freeshipping;

berakhir jika;

mengembalikan $ available_methods;
}

20 – Membuat checkout “state” field tidak diperlukan

/ **
* Fitur Ekstra WooCommerce
* --------------------------
*
* Buat bidang "status" tidak diperlukan saat checkout
*
* /

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

function woo_filter_state_billing ($ address_fields) {
$ address_fields ['billing_state'] ['required'] = false;
kembalikan $ address_fields;
}

function woo_filter_state_shipping ($ address_fields) {
$ address_fields ['shipping_state'] ['required'] = false;
kembalikan $ address_fields;
}

21 – Buat kupon secara programatik

$ coupon_code = 'UNIQUECODE'; // Kode
$ jumlah = '10'; // Jumlah
$ discount_type = 'fixed_cart'; // Ketik: fixed_cart, persen, fixed_product, persen_product

$ kupon = array (
'post_title' => $ coupon_code,
'post_content' => '',
'post_status' => 'publikasikan',
'post_author' => 1,
'post_type' => 'shop_coupon'
);

$ new_coupon_id = wp_insert_post ($ kupon);

// Tambahkan meta
update_post_meta ($ new_coupon_id, 'discount_type', $ discount_type);
update_post_meta ($ new_coupon_id, 'coupon_amount', $ jumlah);
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 – Ubah baris subjek email

/ *
* Filter subjek:
* 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 ($ subject, $ order) {
global $ woocommerce;

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

$ subject = sprintf ('[% s] Pesanan Pelanggan Baru (#% s) dari Nama% s% s', $ blogname, $ order-> id, $ order-> billing_first_name, $ order-> billing_last_name);

mengembalikan $ subjek;
}

23 – Tambahkan biaya khusus ke troli

/ **
* Fitur Ekstra WooCommerce
* --------------------------
*
* Tambahkan biaya kustom ke troli secara otomatis
*
* /
function 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 – Kustom ditambahkan ke pesan keranjang

/ **
* Kustom Tambahkan Ke Keranjang Pesan
* Tambahkan ini ke file functions.php tema Anda
** /
add_filter ('woocommerce_add_to_cart_message', 'custom_add_to_cart_message');
fungsi custom_add_to_cart_message () {
global $ woocommerce;

// Keluarkan pesan sukses
if (get_option ('woocommerce_cart_redirect_after_add') == 'yes'):

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

$ message = sprintf ('% s % s ', $ return_to, __ (' Lanjutkan Belanja → ',' woocommerce '), __ (' Produk berhasil ditambahkan ke keranjang Anda. ',' woocommerce '));

lain :

$ message = sprintf ('% s % s ', get_permalink (woocommerce_get_page_id (' keranjang ')), __ (' Lihat Keranjang → ',' woocommerce '), __ (' Produk berhasil ditambahkan ke keranjang Anda. ',' woocommerce '));

berakhir jika;

mengembalikan $ message;
}

25 – Tambahkan metode pembayaran ke email admin

/ **
* Fitur Ekstra WooCommerce
* --------------------------
*
* Tambahkan metode pembayaran ke admin email pesanan baru
*
* /
add_action ('woocommerce_email_after_order_table', 'woo_add_payment_method_to_admin_new_order', 15, 2);

function woo_add_payment_method_to_admin_new_order ($ order, $ is_admin_email) {
if ($ is_admin_email) {
gaung

Cara Pembayaran: ' $ order-> payment_method_title. '

'; } }

Dan boom! Itu dia! Saya harap Anda menyukai cuplikan ini. Jika Anda memiliki saran, jangan ragu untuk meninggalkan komentar di bawah ini!


Tidak memiliki tema siap-pakai WooCommerce, atau menginginkan yang baru? Pastikan untuk memeriksa tema Total WordPress kami!

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