Вопрос конечно давний, но у меня схожая проблема, как отключить переход на товар (но на какие то категории оно все таки должно переходить) было реализовано в файле content-product.php как
<div class="category-block">
<a href="
<?php
$cate = get_queried_object();
$cateID = $cate->term_id;
$categoryID = $cateID;
if ($cateID == 599 || $cateID == 598 || $cateID == 588 || $cateID == 497 || $cateID == 966 || $cateID == 763 || $cateID == 598 || $cateID == 592 || $cateID == 593 || $cateID == 498 || $cateID == 598 || $cateID == 965 || $cateID == 732 || $cateID == 610 || $cateID == 500 || $cateID == 1061 || $cateID == 611 || $cateID == 637 || $cateID == 754 || $cateID == 638 || $cateID == 647 || $cateID == 757 || $cateID == 615 || $cateID == 622 || $cateID == 611 || $cateID == 641 || $cateID == 642 || $cateID == 645 || $cateID == 644 || $cateID == 639 || $cateID == 635 || $cateID == 648 || $cateID == 618 || $cateID == 643 || $cateID == 619 || $cateID == 612 || $cateID == 646 || $cateID == 613 || $cateID == 636 || $cateID == 500 || $cateID == 611 || $cateID == 501 || $cateID == 587 || $cateID == 504 || $cateID == 505 || $cateID == 503 || $cateID == 1094 || $cateID == 575 || $cateID == 584 || $cateID == 584 || $cateID == 648) {
echo the_permalink();
} else {
echo '#';
} ?>
">
<?php
$product_title = get_the_title();
$stext=(mb_strlen($product_title,'UTF-8')>56) ? trim(mb_substr($product_title,0,56,'UTF-8')).'...':mb_substr($product_title,0,56,'UTF-8')
?>
<span class="title" data-full="<?php echo $product_title; ?>" data-short="<?php echo $stext; ?>">
<?php echo $stext; ?>
</span>
<!-- <span class="title" data-full="<?php echo get_the_title(); ?>" data-short="<?php echo substr(get_the_title(), 0, 56); ?>">
<?php echo substr(get_the_title(), 0, 56); ?></span> -->
</div>
но вопрос в другом это не работает в похожих товарах в этой карточке и блин понятия не имею где искать, может кто то подскаже либо алтернативу, либо решение.
Заранее благодарен