Risultati della ricerca per 'Woocommerce enqueue scripts'
-
-
Ciao a tutti spero riusciate ad aiutarmi.
Vorrei inserire un hook di codice per abilitare una spedizione gratuita per un singolo prodotto by ID.
Questo è il mio file functions.php[aggiunta hook di codice woocommerce per creare un free shipping by ID in tema child] partendo da questo file functions.php <?php // Exit if accessed directly if ( !defined( 'ABSPATH' ) ) exit; // BEGIN ENQUEUE PARENT ACTION // AUTO GENERATED - Do not modify or remove comment markers above or below: if ( !function_exists( 'chld_thm_cfg_locale_css' ) ): function chld_thm_cfg_locale_css( $uri ){ if ( empty( $uri ) && is_rtl() && file_exists( get_template_directory() . '/rtl.css' ) ) $uri = get_template_directory_uri() . '/rtl.css'; return $uri; } endif; add_filter( 'locale_stylesheet_uri', 'chld_thm_cfg_locale_css' ); if ( !function_exists( 'chld_thm_cfg_parent_css' ) ): function chld_thm_cfg_parent_css() { wp_enqueue_style( 'chld_thm_cfg_parent', trailingslashit( get_template_directory_uri() ) . 'style.css', array( 'font-awesome' ) ); } endif; add_action( 'wp_enqueue_scripts', 'chld_thm_cfg_parent_css', 10 ); // END ENQUEUE PARENT ACTION /*nascondo prezzo spediazione quando la spedizione è gratis*/ add_filter( 'woocommerce_package_rates', 'nascondi_spedizione_quando_gratis', 10, 2 ); function nascondi_spedizione_quando_gratis( $rates, $package ) { $all_free_rates = array(); foreach ( $rates as $rate_id => $rate ) { if ( 'free_shipping' === $rate->method_id ) { $all_free_rates[ $rate_id ] = $rate; break; } } if ( empty( $all_free_rates )) { return $rates; } else { return $all_free_rates; } } /* Avviso nel carrello per avere la spedizione gratuita */ add_filter( 'flexible_shipping_free_shipping_notice_text', 'wpdesk_flexible_shipping_free_shipping_notice_text', 10, 2 ); function wpdesk_flexible_shipping_free_shipping_notice_text( $notice_text, $amount ) { return sprintf( 'Ti mancano ancora %1$s per avere la spedizione gratuita! %2$sContinua gli acquisti%3$s', wc_price( $amount ), '<a class="button" target="_blank" href="' . esc_url( apply_filters( 'woocommerce_return_to_shop_redirect', wc_get_page_permalink( 'shop' ) ) ) . '">', '</a>' ); }Avrei necessità di aggiungere una spedizione gratuita attraverso ID del prodotto, ho trovato questa porzione di codice che mi sembra possa fare a caso mio…
/* spedizione gratuita by ID */ function wcs_my_free_shipping( $is_available ) { global $woocommerce; // set the product ids that are eligible $eligible = array( '360' ); // get cart contents $cart_items = $woocommerce->cart->get_cart(); // loop through the items looking for one in the eligible array foreach ( $cart_items as $key => $item ) { if( in_array( $item['product_id'], $eligible ) ) { return true; } } // nothing found return the default value return $is_available; } add_filter( 'woocommerce_shipping_free_shipping_is_available', 'wcs_my_free_shipping', 20 );ora in teoria dovrei sostituire product_id con l’ID del mio prodotto.
Questa porzione di codice dove dovrei incollarla?
Potrei avere dei problemi nel testarlo?
Grazie mille per l’aiuto!- Questo topic è stato modificato 3 anni, 7 mesi fa da .
- Questo topic è stato modificato 3 anni, 7 mesi fa da .
La pagina su cui ho bisogno di aiuto: [devi essere connesso per vedere il link]
-
Buonasera,
Sto creando un plugin personalizzato con il seguente codice, riferito al file principale della cartella includes del mio plugin:public function __construct() { if ( defined( 'PLUGIN_NAME_VERSION' ) ) { $this->version = PLUGIN_NAME_VERSION; } else { $this->version = '1.0.0'; } $this->plugin_name = 'plugin-name'; $this->load_dependencies(); $this->set_locale(); $this->define_admin_hooks(); $this->define_public_hooks(); } private function define_admin_hooks() { $plugin_admin = new Plugin_Name_Admin( $this->get_plugin_name(), $this->get_version() ); $this->loader->add_action( 'admin_enqueue_scripts', $plugin_admin, 'enqueue_styles' ); $this->loader->add_action( 'admin_enqueue_scripts', $plugin_admin, 'enqueue_scripts' ); $this->loader->add_action( 'woocommerce_single_product_summary', $plugin_admin, 'woocommerce_template_single_disponibility', 11 ); $this->loader->add_action( 'woocommerce_single_product_summary', $plugin_admin, 'woocommerce_template_single_delivery_time', 11 ); }Invece, il codice sottostante è riferito al file principale della cartella admin:
/** * Show an image based on the attribute value. * * @since 1.0.0 */ public function woocommerce_template_single_disponibility() { global $product; $disponibility = $product->get_attribute( 'disponibilita' ); switch($disponibility) { case "disponibile-online": echo "<img class='attr_img' alt='Disponibile online' src='/images/DISPONIBILE ONLINE.png'>"; break; case "disponibile-in-negozio": echo "<img class='attr_img' alt='Disponibile in negozio' src='/images/DISPONIBILE IN NEGOZIO.png'>"; break; case "disponibile-online-e-in negozio": echo "<img class='attr_img' alt='Disponibile online e in negozio' src='/images/DISPONIBILE ONLINE E IN NEGOZIO.png'>"; break; case "non-disponibile": echo "<img class='attr_img' alt='Non disponibile' src='/images/NON DISPONIBILE.png'>"; break; } } /** * Show an image based on the attribute value. * * @since 1.0.0 */ public function woocommerce_template_single_delivery_time() { global $product; $delivery_time = $product->get_attribute( 'tempi-di-spedizione' ); switch($delivery_time) { case "2-3-giorni-lavorativi": echo "<img class='attr_img' alt='Tempo di spedizione: 2/3 giorni lavorativi' src='/images/?.png'>"; break; case "5-10-giorni-lavorativi": echo "<img class='attr_img' alt='Tempo di spedizione: 5/10 giorni lavorativi' src='/images/?.png'>"; break; case "10-15-giorni-lavorativi": echo "<img class='attr_img' alt='Tempo di spedizione: 10/15 giorni lavorativi' src='/images/?.png'>"; break; } }C’è qualcuno che saprebbe aiutarmi a far funzionare questo codice facendo apparire nella pagina prodotto le immagini che ho inserito nella cartella al percorso inserito nel codice? Grazie a tutti dell’attenzione.
La pagina su cui ho bisogno di aiuto: [devi essere connesso per vedere il link]
-
Buon pomeriggio a tutti,
seguendo quanto trovato tra i topic sono riuscito a creare un tema Child, l’ho attivato ed è tutto funzionante.Il problema lo sto riscontrando quando vado a fare personalizzazioni al file function.php
Questo è il codice che incorpora al momento:
<?php add_action( 'wp_enqueue_scripts', 'enqueue_parent_theme_style' ); function enqueue_parent_theme_style() { wp_enqueue_style( 'parent-style', get_template_directory_uri().'/style.css' ); } ?>Ma quando vado ad aggiungere una qualsiasi stringa di codice, questa non funziona.
Ad esempio sto cercando di aumentare i prodotti visualizzati nella pagina categoria tramite woocommerce, quindi ho trovato il codice, ho provato ad aggiungerlo così:
add_filter( 'loop_shop_per_page', create_function( '$cols', 'return 24;' ), 20 );e così:
<?php add_filter( 'loop_shop_per_page', create_function( '$cols', 'return 24;' ), 20 ); ?>Ma nulla, non va.
Potete aiutarmi a capire.
Grazie mille.
-