У меня есть код, который я нашел в Интернете, который я немного изменил, чтобы лучше соответствовать теме, с которой я работаю. Чего я не могу понять, так это того, как связать реальный продукт.
Другими словами; название продукта должно быть интерактивным (ссылаться) на страницу продукта. Это происходит на странице корзины, но не при оформлении заказа.
Код, который я использую:
add_filter( 'woocommerce_cart_item_name', 'product_thumbnail_on_checkout_order_review', 20, 3 );
function product_thumbnail_on_checkout_order_review( $product_name, $cart_item, $cart_item_key ){
if (is_checkout()){
$thumbnail = $cart_item['data']->get_image(array( 80, 80));
$image_html = '<div class="product-item-thumbnail">'.$thumbnail.'</div> ';
$product_name = $image_html . $product_name;
}
return $product_name;
}
Я попытался исправить это, посмотрев на шаблон корзины, в котором я нашел это:
$product_permalink = apply_filters( 'woocommerce_cart_item_permalink', $_product->is_visible() ? $_product->get_permalink( $cart_item ) : '', $cart_item, $cart_item_key );
Затем я добавил это в код, превратив его в следующее:
add_filter( 'woocommerce_cart_item_name', 'product_thumbnail_on_checkout_order_review', 20, 3 );
function product_thumbnail_on_checkout_order_review( $product_name, $cart_item, $cart_item_key ){
if (is_checkout()){
$thumbnail = $cart_item['data']->get_image(array( 80, 80));
$image_html = '<div class="product-item-thumbnail">'.$thumbnail.'</div> ';
$product_name_link = $product_permalink = apply_filters( 'woocommerce_cart_item_permalink', $_product->is_visible() ? $_product->get_permalink( $cart_item ) : '', $cart_item, $cart_item_key );
$product_name = $image_html . $product_name_link;
}
return $product_name;
}
Но это дало мне ошибку, и теперь я застрял.
Notice: Undefined variable: _product