Опытный - Репутация: 785
- Webmoney BL: ?
| Всем здравствуйте. Битый час сижу, и не получается сделать в wp одну вещь. Рассчитываю на то, что кто-нибудь поможет :) Если таких будет мало, работу оплачу. Суть проблемы. Есть форма, в ней у нас параметры: Категория: (выбор из списка); цена: от и до количество: от и до по сути работает 4 доп. поля (на самом деле их чуть больше, но по аналогии разберусь). На основе этого, при нажатии найти нам выдаются варианты. По сути - это поиск по доп. полям. Да, я гуглил, однако решения работающие, либо не работали, либо не тот случай. Версия wordpress - последняя. Последний вариант, который я сделал - был таким:
/* Template Name: poisk po dop poljam */ $cat = $_POST[cat]; $price1 = $_POST[price1]; $price2 = $_POST[price2]; $kolvo1 = $_POST[kolvo1]; $kolvo2 = $_POST[kolvo2]; $args = array( 'meta_query' => array( array( 'key' => 'price', 'value' => array( $price1, $price2 ), 'type' => 'numeric', 'compare' => 'BETWEEN' ) array( 'key' => 'etag', 'value' => array( $kolvo, $kolvo), 'type' => 'numeric', 'compare' => 'BETWEEN' ) ) ); $query = new WP_Query( $args ); ?> <?php if ( have_posts() ) : while ( $the_query->have_posts() ) : $the_query->the_post(); ?> <? the_title(); ?> <?php endwhile; else: ?> <p><?php _e('Извините, вариантов не найдено. <br/>Попробуйте снова!'); ?></p> <?php endif; ?> <?php get_footer(); ?> Это файл, потом создаем стр. и выбираем его шаблон. Поиск выводится таким образом:
<form action="<?php bloginfo('home'); ?>naiti" class="search-form" method="POST"> <div class="form-line"> <span>Рубрика:</span> <select name="cat"> <option>1</option> <option>2</option> <option>3</option> <option>4</option> <option>5</option> </select> </div> <div class="form-line"> <span>Цена:</span> <input type="text" value="от" name="price1" onblur="if(this.value=='') this.value='от';" onfocus="if(this.value=='от') this.value='';" /> <p>и</p> <input type="text" value="до" name="price1" onblur="if(this.value=='') this.value='до';" onfocus="if(this.value=='до') this.value='';" /> </div> <div class="form-line"> <span>Количество:</span> <input type="text" value="от" name="kolvo1" onblur="if(this.value=='') this.value='от';" onfocus="if(this.value=='от') this.value='';" /> <p>и</p> <input type="text" value="до" name="kolvo1" onblur="if(this.value=='') this.value='до';" onfocus="if(this.value=='до') this.value='';" /> </div> <input type="submit" value="" class="search-bt" /> Когда вводим параметры(или не вводим), при нажатии на кнопку - появляется ошибка: Ошибка сервера. Ошибка при загрузке http://*******/naiti. Возможно, на сайте ведутся работы или он настроен неправильно. |