Здравствуйте. Создал поиск с типом поля "число". Если точное вхождение в поиск то число входит. Мне же было необходимо чтоб искал меньше или равно заданного значения. Я добавил в функцию usf_edit_users_query следующий код
if ( $field['type'] == 'number' && count( $_REQUEST[$field['slug']] ) == 1 && ! $_REQUEST[$field['slug']][0] ) continue; $tableAs = 'metas_' . $field['slug']; $compareValues = "<= '" . $_REQUEST[$field['slug']] . "'";
Поиск заработал. Если в поле вбито число 5, то когда в поиск вбиваем 7, он спокойно ищет всё что меньше или равно 7, и находит. Если же значение больше 10, то начинаются проблемы, т.к. тип переменной как я понял- строка, а не numeric. То есть для поиска что 10, что 1 = одно и тоже, нули он не воспринимает. Но как же выводить тогда поиск правильно) Может нужно изменить тип строки на число, тогда он будет учитывать нули. Но только как это сделать? Или может вы видите проблему в другом?
Вобщем порылся. Пришёл к тому что нужно чтоб в массиве query был type => 'numeric'. Но вот как его прикрутить к моему значению поля не знаю. Уже и так и так пробовал. Там же в этом дополнении не напрямую массив создаётся, а откуда то что то подтягивается, много рцл функций подтигивается и вот пока что не могу понять как мне к моему полю
if ( $field['type'] == 'number' && count( $_REQUEST[$field['slug']] ) == 1 && ! $_REQUEST[$field['slug']][0] ) continue; $tableAs = 'metas_' . $field['slug']; $compareValues = "<= '" . $_REQUEST[$field['slug']] . "'";
Приделать этот type => 'numeric' чтоб он как числа распознавал и нули не сбрасывал(
И так же к этой теме ещё скажите пожалуйста, можно ли как то прикрутить конкретный мета кей к такому выводу. Чтоб только поле с определённым метакеем, выводилось вот так. Опять же наверное где то тут правки надо делать?
if ( $field['type'] == 'number' && count( $_REQUEST[$field['slug']] ) == 1 && ! $_REQUEST[$field['slug']][0] ) continue; $tableAs = 'metas_' . $field['slug']; $compareValues = "<= '" . $_REQUEST[$field['slug']] . "'";