@Magnet19

Как вывести записи по произвольному полю используя select и option в Wordpress?

Есть такой html код:
<div class="filter">
				<select class="color">
					<option value="0">Выберите цвет</option>
					<option value="1">Чёрный</option>
					<option value="2">Белый</option>
					<option value="3">Красный</option>
				</select>
				<select class="size">
					<option value="0">Выберите размер</option>
					<option value="1">S</option>
					<option value="2">M</option>
					<option value="3">XL</option>
				</select>
			</div>

Есть вывод записей:
<?php 
		$args = array(
			'category_name' => 'shirts',
			'numberposts' => 0,
			'order' => 'DSC',
			'post_type' => 'post',
			'suppress_filters' => true,
		);

		$posts = get_posts($args);
		foreach ($posts as $post) {
			setup_postdata($post);
			?>
			<div class="shirt">
				Контент...
<span class="color"><?php if ($value = get_field('color')):?><?php echo $value;?><?php endif;?></span>
<span class="size"><?php if ($value = get_field('size')):?><?php echo $value;?><?php endif;?></span>
			</div>
		<?php
		}
		wp_reset_postdata();
		?>

Как сделать, чтобы при выборе option в select выводились только нужные посты. Например, выбираем Цвет: черный, Размер: M, выводится пост именно с этими произвольным полями.
  • Вопрос задан
  • 123 просмотра
Решения вопроса 1
crashxd
@crashxd
Backend разработчик
Нужно добавить параметры мета-данных в $args. В документации WP_Query раздел по postmeta.

Для самого select в js повешать обработчики, чтобы передавать выбранные значения/параметры на эту же страницу или если делаете ajax вывод, то в нужный action.
Ответ написан
Комментировать
Пригласить эксперта
Ваш ответ на вопрос

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

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