Как можно вывести товары из определенной категории в выпадающем меню, если сейчас выводятся все товары, доступные на сайте? Вот код существующего скрипта:
Для добавления только товаров из определенной категории в выпадающее меню, вам нужно изменить ваш скрипт так, чтобы он фильтровал товары по категории перед выводом. Ниже приведен пример кода на PHP, который показывает, как это можно сделать:
```php
// Получение всех товаров
$products = getAllProducts();
// Фильтрация товаров по категории
$category = 'Женская одежда'; // Замените на нужное название категории
$categoryProducts = array_filter($products, function($product) use ($category) {
return in_array($category, $product['categories']);
});
// Вывод товаров в выпадающем меню
echo '<select>';
foreach($categoryProducts as $product) {
echo '<option value="'. $product['id'] .'">'. $product['name'] .'</option>';
}
echo '</select>';
```
В этом примере `getAllProducts()` - функция, которая возвращает все товары. Замените ее на свою функцию получения товаров. Предполагается, что у каждого товара есть список категорий, в которые он входит. Фильтрация товаров происходит по заданной категории, в данном случае "Женская одежда".
Поместите этот код в нужное место на вашем сайте, где должно отображаться выпадающее меню с товарами определенной категории. Данный код поможет выводить только товары из указанной категории в меню.
<pre><code><li class="menu__list">
<button type="button" class="menu__button _icon-arrow-2" data-spoller>
<a href='#'><?php echo get_field('menu-3', 'options'); ?></a>
</button>
<div class="menu__items">
<ul data-spollers="767.98, max" class="menu__product">
<?php
// ID или slug категории, из которой нужно получить товары
$category_id = 'категория-id-или-слуг';
// Аргументы для запроса
$args = array(
'post_type' => 'product',
'posts_per_page' => -1, // Вывести все товары
'tax_query' => array(
array(
'taxonomy' => 'product_cat',
'field' => 'term_id', // Можно использовать 'slug' вместо 'term_id', если используете slug категории
'terms' => $category_id,
'operator' => 'IN',
),
),
);
$catalog_products_query = new WP_Query($args);
if ($catalog_products_query->have_posts()) :
while ($catalog_products_query->have_posts()) : $catalog_products_query->the_post(); ?>
<li class="menu__item">
<a href="<?php echo get_permalink(); ?>">
<?php the_title(); ?>
</a>
</li>
<?php endwhile;
wp_reset_postdata();
endif;
?>
</ul>
</div>
</li></code></pre>