Я использую woocommerce, и я хотел бы удалить гиперссылки на страницы одного продукта, поскольку вместо этого я использую функцию быстрого просмотра, чтобы контент отображался в лайтбокс и не делал страницы одного продукта ненужными.Woocommerce - Удаление гиперссылок на отдельные страницы продуктов
Однако ссылки, созданные в тележке и мини-тележке, ссылаются на страницу продукта по умолчанию, поэтому я хотел бы удалить их.
То, что я хочу сделать для страницы корзины: Удалить гиперссылку на одной странице с миниатюрой продукта Я не эксперт PHP сам по себе, но сделал некоторый прогресс следующий this post. Он работал над моим названием продукта, но он не работал на моем продукте thumbnail на странице корзины.
Вот отрывок из моего cart.php:
<td class="product-thumbnail">
<?php
$thumbnail = apply_filters('woocommerce_cart_item_thumbnail', $_product->get_image(), $cart_item, $cart_item_key);
if (! $product_permalink) {
echo $thumbnail;
} else {
printf('%s', $thumbnail);
}
?>
</td>
<td class="product-name" data-title="<?php _e('Product', 'woocommerce'); ?>">
<?php
if (! $product_permalink) {
echo apply_filters('woocommerce_cart_item_name', $_product->get_title(), $cart_item, $cart_item_key) . ' ';
} else {
echo apply_filters('woocommerce_cart_item_name', sprintf('%s', $_product->get_title()));
}
// Meta data
echo WC()->cart->get_item_data($cart_item);
// Backorder notification
if ($_product->backorders_require_notification() && $_product->is_on_backorder($cart_item['quantity'])) {
echo '<p class="backorder_notification">' . esc_html__('Available on backorder', 'woocommerce') . '</p>';
}
?>
</td>
То, что я хочу сделать для мини-корзина Удалить гиперссылку на одной странице с миниатюрами продукта и продукта заголовка
и отрывок из моего мини-cart.php: (Полный мини-cart.php код here)
<?php
foreach (WC()->cart->get_cart() as $cart_item_key => $cart_item) {
$_product = apply_filters('woocommerce_cart_item_product', $cart_item['data'], $cart_item, $cart_item_key);
$product_id = apply_filters('woocommerce_cart_item_product_id', $cart_item['product_id'], $cart_item, $cart_item_key);
if ($_product && $_product->exists() && $cart_item['quantity'] > 0 && apply_filters('woocommerce_widget_cart_item_visible', true, $cart_item, $cart_item_key)) {
$product_name = apply_filters('woocommerce_cart_item_name', $_product->get_title(), $cart_item, $cart_item_key);
$thumbnail = apply_filters('woocommerce_cart_item_thumbnail', $_product->get_image(), $cart_item, $cart_item_key);
$product_price = apply_filters('woocommerce_cart_item_price', WC()->cart->get_product_price($_product), $cart_item, $cart_item_key);
?>
<li class="<?php echo esc_attr(apply_filters('woocommerce_mini_cart_item_class', 'mini_cart_item', $cart_item, $cart_item_key)); ?>">
<?php
echo apply_filters('woocommerce_cart_item_remove_link', sprintf(
'<a href="%s" class="remove" title="%s" data-product_id="%s" data-product_sku="%s">×</a>',
esc_url(WC()->cart->get_remove_url($cart_item_key)),
__('Remove this item', 'woocommerce'),
esc_attr($product_id),
esc_attr($_product->get_sku())
), $cart_item_key);
?>
<?php if (! $_product->is_visible()) : ?>
<?php echo str_replace(array('http:', 'https:'), '', $thumbnail) . $product_name . ' '; ?>
<?php else : ?>
<?php echo str_replace(array('http:', 'https:'), '', $thumbnail) . $product_name . ' '; ?>
</a>
<?php endif; ?>
<?php echo WC()->cart->get_item_data($cart_item); ?>
<?php echo apply_filters('woocommerce_widget_cart_item_quantity', '<span class="quantity">' . sprintf('%s × %s', $cart_item['quantity'], $product_price) . '</span>', $cart_item, $cart_item_key); ?>
</li>
<?php
}
}
?>
Как миниатюра продукта, так и название продукта по-прежнему гиперссылки, несмотря на удаление тега <a href>
.
Пожалуйста, помогите!
скриншот гиперссылкой название продукта и миниатюру
Можете ли вы разместить ссылку на свои страницы? –