Не может переменная var_dump или echo - PullRequest
0 голосов
/ 03 мая 2018

У меня есть эта функция, которая изменяет способы доставки в зависимости от веса.

Мне нужно использовать var_dump или echo $ rate, чтобы получить доступ к определенным его свойствам (например, к стоимости, которую вы видите).

add_filter( 'woocommerce_package_rates', 'compoco_wholesale_rates', 10 );
function compoco_wholesale_rates( $rates ) {
    global $woocommerce;
    $base_cost = 0;
    $cart_weight = $woocommerce->cart->get_cart_contents_weight();

    $shipping_price = array('3' => 34, '4' => 42, '5' => 50, '6' => 58, '7' => 66, '8' => 73, '9' => 80, '10' => 88, '11' => 95, '12' => 102, '13' => 107, '14' => 117, '15' => 125, '16' => 132, '17' => 140, '18' => 146, '19' => 153, '20' => 163);
    foreach ( $shipping_price as $key => $value){

        if( round($cart_weight) == $key){
            $base_cost = $value;
        }
    }

    foreach($rates as $key => $rate ) {

        $rate->cost = $base_cost;
    }
        return $rates;
}

Ничего не происходит при попытке вывода рассматриваемой переменной.

1 Ответ

0 голосов
/ 03 мая 2018

Вы должны использовать

echo "<pre>"; print_r($rates); die;

внутри функции.

Если это бэкэнд или что-то недоступное с любого экрана, вы можете создать файл и поместить содержимое var внутри (true true в print_r).

$h = fopen('/var/www/whatever/rates.txt', 'w');
    fwrite($h, print_r($rates, true));
    fclose($h);

Имейте в виду, что вы можете использовать https://xdebug.org/ для решения подобных проблем.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...