2016-07-29 67 views
1

Ich versuche, meinen Code in wc-formatting-functions.php Datei aufzunehmen, wenn ich Core-Datei in WooCommerce Plugin-Ordner ändern, und es funktioniert.WooCommerce - Überschreiben wc-Formatierung-functions.php Datei über Thema funktioniert nicht

Jetzt habe ich woocommerce Ordner in meinem Theme-Ordner erstellt und wc-formatting-functions.php Datei hinein kopiert, außer Kraft zu setzen versucht, aber es funktioniert nicht.

Ich versuche, diesen Code in wc_price() Funktion zum Einfügen:

if(is_product_category('mattress')){ 
    echo "mattress category"; 
} 
else if(is_product_category('pillows')){ 
    echo "pillows category"; 
} 
else if(is_product_category('protectors')){ 
    echo "protectors category"; 
} 
else if(is_product_category('toppers')){ 
    echo "toppers category"; 
} 
else if(is_product_category('foldable-mattress')){ 
    echo "foldable-mattress category"; 
} 

gerade nach diesen Linien in WC-Formatierung-functions.php:

$formatted_price = ($negative ? '-' : '') . sprintf($price_format, '<span class="woocommerce-Price-currencySymbol">' . get_woocommerce_currency_symbol($currency) . '</span>', $price); 
$return = '<span class="woocommerce-Price-amount amount">' . $formatted_price . '</span>'; 

Was mache ich falsch?

Antwort

2

Als wc-formatting-functions.php ist eine WooCommerce Kern Datei und keine Vorlage Datei, Sie werden nicht in der Lage sein, um es in einem Ordner woocommerce Ordner in Ihrem Thema zu arbeiten.

Ist das nicht möglich wc-formatting-functions.php Core-Datei als Vorlagendatei über ein Thema außer Kraft zu setzen.

Je nachdem, wo Sie Ihren Code verwenden, Sie könnten versuchen, es in verwandten Haken wie zu verwenden:

add_filter('woocommerce_cart_product_price', 'filter_woocommerce_cart_product_price', 10, 2); 
function filter_woocommerce_cart_product_price($wc_price, $product) { 
    // some code 
    return $wc_price; 
}; 

Als is_product_category() bedingte Zielkategorie Seiten Archive, Sie könnten WooCommerce Vorlagen außer Kraft verwendet, abhängig davon, wo Sie Ihren Code verwenden möchten.

Sie können Ihren Code sogar in die Datei function.php Ihres aktiven Themas einfügen, eingebettet in eine Funktion, die Sie wiederverwenden können.

Wenn Sie jedoch eine bestimmte Kategorie mit einer Bedingung versehen möchten, müssen Sie stattdessen stattdessen beispielsweise has_term('mattress', 'product_cat') verwenden.

Referenzen:

+0

TheAztec Ihnen sehr für schöne explanation..now danke ich versuche Haken zu erstellen, so kann ich Bilder zeigen nach category.i versuche has_term ('matratze', 'product_cat') zu benutzen, aber es zeigt nichts auf der Kategorieseite. –

+0

danke @Loic TheAztec es funktioniert gut –

+0

TheAztec können Sie bitte einen Blick auf diese Frage werfen, habe ich dieses Problem. please..http: //stackoverflow.com/questions/38567523/woocommerce-price-overriding-in-cart-dynamisch –