• Уважаемый Гость! Если вы зарегистрировались на нашем форуме, значит вам нужна помощь! Мы всегда рады вам помочь, еще ни один пользователь не получил отказа! Но мы так же нуждаемся в Вашей поддержке. Проект полностью бесплатный, мы не имеем права требовать от вас денег, нам это и не нужно! Но от любой финансовой поддержки не откажемся. Проект развивается, но иногда очень тяжело его поддерживать, особенно в финансовом отношении. Если у вас есть возможность поддержать нас финансово, мы будем вам очень благодарны! С уважением, команда Оскласс Россия!
  • Изменение в правилах форума! В связи с огромным количеством вопросов поступающих в адрес технической поддержки мы решили изменить правила форума! Просим всех пользователей обратить внимание на данные изменения и четко их соблюдать!
  • Ребята, нуждаемся в программистах! Если хотите зарабатывать и есть время, пишите администраторам сайта. Есть база и инструменты, нужен опыт и знания =)
  • Уважаемые пользователи! На форуме появились разделы по работе с системой Yclas. Yclas - это скрипт доски объявлений. Нужны разработчики.

Доработка поиска в категориях

Saska19

Пользователь
Osclas 3.2.0? тема minimalist.

Кратко,
решил доработать поиск в категориях, конкретно поле город.
Решил сделать его выпадающим,
В файл function.php вставил вот этот код:

PHP:
function chosen_region_select() {
        View::newInstance()->_exportVariableToView('list_regions', Search::newInstance()->listRegions('%%%%', '>=', 'region_name ASC') ) ;
 
        if( osc_count_list_regions() > 0 ) {
            echo '<select name="sRegion" data-placeholder="' . __('Select a region...', 'twitter') . '" style="width: 100%;" class="chosen-select">' ;
            echo '<option></option>' ;
            while( osc_has_list_regions() ) {
                echo '<option value="' . osc_list_region_id() . '">' . osc_list_region_name() . '</option>' ;
            }
            echo '</select>' ;
        }
 
        View::newInstance()->_erase('list_regions') ;
    }

и вывел инфу в search.php своей темы:

PHP:
<div class="row one_input">
                                    <h6><?php _e('City', 'minimalist'); ?></h6>
                                    <?php chosen_region_select() ; ?>
                                </div>

получилось работает, выводит то что надо.
Сразу поясню, что в админке под регионами у меня города, а под городами районы города. Так как работаю на два города.

Далее решил вывести еще и районы города,
вставил в function.php:

PHP:
function chosen_city_select () {
        View::newInstance()->_exportVariableToView('cities', Search::newInstance()->listCities($region_id, ">=", "city_name ASC" ) );
 
        if( osc_has_list_regions() > 0 ) {
            echo '<select name="sCity" data-placeholder="' . __('Select a region...', 'twitter') . '" style="width: 100%;" class="chosen-select">' ;
            echo '<option></option>' ;
            while( osc_has_list_cities() ) {
                echo '<option value="' . osc_list_city_id() . '">' . osc_list_city_name() . '</option>' ;
            }
            echo '</select>' ;
        }
 
        View::newInstance()->_erase('list_cities') ;
    }

и в search.php

PHP:
div class="row one_input">
                                    <h6><?php _e('City', 'minimalist'); ?></h6>
                                    <?php chosen_city_select() ; ?>
                                </div>

вроде как работает, но нет привязки района к городу. В раонах города только районы первого города.
Так вот, как реализовать привязку района города к городу?
Думаю многим будет полезно и интересно знать как расширить фильтр.
 

Saska19

Пользователь
Хочу опять поднять эту тему! Прошу присоединяться все кому интересно!
 
Верх