Доброго времени суток.
Есть форма с select, например, возраст
Выпадают варианты: 18-25 , 26-30
Как передать в функцию или эти значения сразу, чтоб их сравнить? Или сделать так: если выбран определенный select делать сравнение исходя из того, какой был выбран.
И если делаю поиск по checkbox и выбираю несколько чекбоксов сразу, поиск идёт только по одному из них.
Также наблюдается проблема с пагинацией
function go_filter() {
$args = array();
$args['meta_query'] = array('relation' => 'AND');
$query = new WP_Query( array(
'post_type' => 'people',
) );
if (@$_GET['new'] != '') {
$args['meta_query'][] = array(
'key' => 'new_profile',
'value' => $_GET['new']
);
}
if (!empty($_GET['m_age'])) { // вот в этой части нужно делать сравнение
$args['meta_query'][] = array(
'key' => 'age',
'value' => '26'
);
}
if (!empty($_GET['body'])) {
$args['meta_query'][] = array(
'key' => 'body',
'value' => array($_GET['body'])
);
}
query_posts(array_merge($args,$query->query));
}
n0wayback сказал(а)
Я же не могу в value написать 2 числа и сравнить их
конечно нет, надо получать два разных значения и сравнивать их, или вопрос задан некорректно, я не понял, что требуется.
Если надо из строки "16-25" получить два значения и произвести выборку по ним, то это другое дело. Уточните свой вопрос.
Андрей CS сказал(а)
n0wayback сказал(а)
Я же не могу в value написать 2 числа и сравнить ихконечно нет, надо получать два разных значения и сравнивать их, или вопрос задан некорректно, я не понял, что требуется.
Если надо из строки "16-25" получить два значения и произвести выборку по ним, то это другое дело. Уточните свой вопрос.
Да, именно так. Нужно получить два значения и произвести выборку по ним.
Otshelnik-Fm сказал(а)
Не вижу проблемы на пхп разделить приходящее значение
$in1 = '16-25'; $m1 = explode('-',$in1);
А с чекбоксами и пагинацией как решить проблему? С примененным фильтром пагинация вообще не работает, а в основном выводе постов работает только 2 страница, дальше 404.
<?php
$paged = get_query_var('paged') ? get_query_var('paged') : 1;
$args = array(
'post_type' => array( 'people' , 'men' ),
'publish' => true,
'paged' => $paged,
);
query_posts($args);
if ( have_posts() ) : ?>
<?php if ( is_home() && ! is_front_page() ) : ?>
<header>
<h1 class="page-title screen-reader-text"><?php single_post_title(); ?></h1>
</header>
<?php endif; ?>
<?php if ($_GET && !empty($_GET)) {
go_filter();
} ?>
<?php
// Start the loop.
while ( have_posts() ) : the_post();Вывод сделан таким образом.