@aljo222
В процессе обучения веб-разработке

Как в Woocommerce вывести доп.информацию о категории при наведении?

Здравствуйте!

На сайте в хэдере есть выпадающее меню Категории. Код такой:
wp_nav_menu(
				array(
					'theme_location'  => 'primary',
					'container_class' => 'primary-navigation',
				)
			);


В данном меню выводятся Категории товаров. Как сделать, чтобы при наведении на пункт меню (категорию) выводился блок с Фото и Описанием категории?

Со стороны CSS я знаю как все оформить (скрыть по умолчанию и показать при ховере). Подскажите пожалуйста как в данном коде указать вывод дополнительного блока? Или где это указывать?

Заранее спасибо!
  • Вопрос задан
  • 113 просмотров
Решения вопроса 1
AntonLitvinenko
@AntonLitvinenko
HTML coder
Не уверен, что выйдет через стандартное меню. Даже не знаю, можно ли подобный волкер написать. Хотя можно и попробовать. Я вижу пару вариантов.
Плагины типа мега-меню это первый.
Второй это вывести рядом с меню скрытые блоки, в которые вытащить описания категорий с картинками, скрыть их. К нужным пунктам меню добавить классы, от которых плясать открытие блоков с описанием.

<?php 

$prod_cat_args = array(
	'taxonomy'    => 'product_cat',
	'hide_empty'  => false,
	'parent'      => 0 
);

$woo_categories = get_categories( $prod_cat_args );

?>

<?php foreach ( $woo_categories as $woo_cat ) : 
	$woo_cat_id = $woo_cat->term_id;
	$woo_cat_name = $woo_cat->name;
	$woo_cat_slug = $woo_cat->slug;
	$woo_cat_descr = $woo_cat->description;
	$category_thumbnail_id = get_term_meta($woo_cat_id, 'thumbnail_id', true);
	$thumbnail_image_url = wp_get_attachment_url($category_thumbnail_id);
	$cat_link = get_term_link( $woo_cat_id, 'product_cat' );
	?>
	<div class="product-cat-item">
		<a href="<?php echo $cat_link ?>"><?php echo $woo_cat_name ?></a>
		<?php if ($thumbnail_image_url) : ?>
			<img src="<?php echo $thumbnail_image_url ?>" alt="<?php echo $woo_cat_name ?>">
		<?php endif; ?>
		<p><?php echo $woo_cat_descr ?></p>
	</div>

<?php endforeach; ?>
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы