Вам необходимо отфильтровать строки, отображающие цену и промежуточный итог в корзине. Ссылка, о которой вы говорили, касалась изменения фактической цены. В вашем случае цена равна $ 0, пока вы не установите фактическую цену позже. Есть, вероятно, фильтры для телеги составляет тоже, но это должно быть начало:
add_filter('woocommerce_cart_item_price', 'so_38057349_cart_item_price', 10, 3);
function so_38057349_cart_item_price($price, $cart_item, $cart_item_key) {
if ($cart_item[ 'data' ]->price == 0) {
$price = __('Special Order', 'yourtheme');
}
return $price;
}
add_filter('woocommerce_cart_item_subtotal', 'so_38057349_cart_item_subtotal', 10, 3);
function so_38057349_cart_item_subtotal($subtotal, $cart_item, $cart_item_key) {
if ($cart_item[ 'data' ]->price == 0) {
$subtotal = __('To be determined', 'yourtheme');
}
return $subtotal;
}
add_filter('woocommerce_order_formatted_line_subtotal', 'so_38057349_order_item_subtotal', 10, 3);
function so_38057349_order_item_subtotal($subtotal, $item, $order) {
if (isset($item[ 'line_subtotal' ]) && $item[ 'line_subtotal' ] == 0) {
$subtotal = __('To be determined', 'yourtheme');
}
return $subtotal;
}
Конечно, это будет также применяться к любому продукту с 0 ценой и, возможно, не только те, которые вы настроили, чтобы быть на заказ поэтому вам может потребоваться больше условной логики, чем я здесь.
Чтобы следить за вашим комментарием .... woocommerce_order_amount_total
- это числовое число, а не отображаемый html. Вы можете увидеть функции, вызываемые в шаблоне cart-totals.php
.
function so_38057349_woocommerce_cart_subtotal($cart_subtotal, $compound, $cart) {
if($cart->subtotal == 0){
$cart_subtotal = __('Order subtotal to be determined', 'yourtheme');
}
return $cart_subtotal;
};
add_filter('woocommerce_cart_subtotal', 'so_38057349_woocommerce_cart_subtotal', 10, 3);
// define the woocommerce_order_amount_total callback
function so_38057349_woocommerce_order_amount_total($order_total) {
if(WC()->cart->get_total() == 0){
$order_total = __('Order total to be determined', 'yourtheme');
}
return $order_total;
};
add_filter('woocommerce_cart_totals_order_total_html', 'so_38057349_woocommerce_order_amount_total');
Обновленный скриншот: 
Большое вам спасибо, Helga, это именно то, что было необходимо. Расширенные на вашем примере, чтобы охватить страницы по тележке и проверке! – radug
Проверьте мои изменения. Подобно ошибке в вашем вопросе 'woocommerce_order_amount_total' не должна быть html-строкой. – helgatheviking