В WooCommerce плагин файл class-wc-booking-cart-manager.php
есть этот кодКак переписать функции WordPress
/**
* Constructor
*/
public function __construct() {
add_filter('woocommerce_add_cart_item', array($this, 'add_cart_item'), 10, 1);
}
/**
* Adjust the price of the booking product based on booking properties
*
* @param mixed $cart_item
* @return array cart item
*/
public function add_cart_item($cart_item) {
if (! empty($cart_item['booking']) && ! empty($cart_item['booking']['_cost'])) {
$cart_item['data']->set_price($cart_item['booking']['_cost']);
}
return $cart_item;
}
Я хочу изменить код add_cart_item
функции в в мою детской тему functions.php
файлу
Так что я сделал это:
function custom_add_cart_item($cart_item) {
if (empty($cart_item['booking']) && empty($cart_item['booking']['_cost'])) {
$cart_item['data']->set_price(2000);
}
return $cart_item;
}
function setup_add_cart_item_filter(){
remove_filter('woocommerce_add_cart_item', array('WC_Booking_Cart_Manager', 'add_cart_item'), 10, 1);
add_filter('woocommerce_add_cart_item', 'custom_add_cart_item');
}
add_action('after_setup_theme', 'setup_add_cart_item_filter');
Но это не сработает. Спасибо за вашу помощь !
Я просто редактирую свой вопрос, если вы можете проверить –
Имеет ли смысл порядок строк? –
Нет. Фильтры и действия должны оцениваться только при срабатывании соответствующих событий. – slbteam08