Боже я искал 500 лет ответ, пробывал всё что угодно... и оказалось все намного проще
// ajax поиск по сайту
add_action('wp_ajax_nopriv_ajax_search', 'ajax_search');
add_action('wp_ajax_ajax_search', 'ajax_search');
function ajax_search()
{
$product_cat = get_terms( $args );
$args = array(
'post_type' => 'product', // Тип записи: post, page, кастомный тип записи
'post_status' => 'publish',
'order' => 'DESC',
'orderby' => 'date',
's' => $_POST['term'],
'posts_per_page' => -1,
);
$query = new WP_Query($args);
if ($query->have_posts()) {
while ($query->have_posts()) {
$query->the_post();
$terms = get_terms(array(
'taxonomy' => 'product_cat',
'post_type' => 'product',
'hide_empty' => false,
'parent' => 0
));
$cat_link = get_category_link( $category_id );
global $post;
$terms = get_the_terms( $post->ID, 'product_cat' );
foreach ($terms as $term) {
$product_cat_id = $term->term_id;
break;
}
?>
<li class="codyshop-ajax-search">
<a href="<?php echo get_category_link( $product_cat_id ); ?>" class="ajax-search__link">
<?php echo get_the_post_thumbnail() ?>
<?php the_title(); ?></a>
</li>
<?php }
} else { ?>
<li class="ajax-search__item">
<div class="ajax-search__not-found">Not found</div>
</li>
<?php }
exit;
}
Этот код выводит товары и вместо ссылки на товар дает ссылку на подкатегорию как и надо было)