2016-07-29 3 views
1

Я пытаюсь включить свой код в wc-formatting-functions.php файл, когда я меняю файл ядра в папке плагина WooCommerce, и он работает.WooCommerce - Перекрытие файл туалет форматирование-functions.php с помощью темы не работает

Теперь я создал woocommerce папку в моей папке темы и скопировать wc-formatting-functions.php файл внутри него, пытаясь переопределить, но это не работает.

Я пытаюсь вставить этот код в wc_price() функции:

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"; 
} 

только после того, как эти строки в туалет форматированием-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>'; 

Что я делаю неправильно?

ответ

2

Как wc-formatting-functions.php является WooCommerce ядра файлом, а не шаблона файла, Вы не сможете заставить его работать в папке woocommerce внутри вашей папки темы.

Не возможно переопределить wc-formatting-functions.php файл ядра в виде файла шаблона с помощью темы.

В зависимости от того, где вы хотите использовать свой код, вы можете попробовать использовать его в соответствующих крючках, как:

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; 
}; 

Как is_product_category() условных целевой категории страниц архивов, можно переопределить связанные шаблоны WooCommerce, в зависимости от того, где вы хотите использовать свой код.

Вы даже можете вставить свой код в файл functions.php вашей активной темы, встроенный в функцию, которую вы можете повторно использовать.

Но если вы хотите настроить таргетинг на определенную категорию с помощью условного кода, вместо этого вы должны использовать вместо этого has_term('mattress', 'product_cat').

Ссылки:

+0

TheAztec спасибо большое за хороший explanation..now я пытаюсь создать крючок, так что я могу показать изображения в соответствии с category.i пытаюсь использовать has_term ('mattress', 'product_cat'), но он ничего не показывает на странице категории. –

+0

спасибо @Loic TheAztec работает нормально –

+0

TheAztec вы можете взглянуть на этот вопрос, у меня возникла эта проблема. пожалуйста..http: //stackoverflow.com/questions/38567523/woocommerce-price-overriding-in-cart-dynamically –