Создаем селектор с дополнительных полей
Сегодня мы обсудим небольшое решение о том, как создать селектор с стандартных ( 5 ) и дополнительных доп-полей в модулях:
- Блог;
- Новости;
- Каталог файлов;
- Каталог статей;
- Каталог сайтов;
- Доска объявлений;
- Онлайн игры.
Селекторы многим могут пригодиться так как каждый их может использовать под свою конкретную задумку, например я в блоге создал селектор для выбора источника новостей, удобно так как процесс автоматизирован и нет необходимости вручную прописывать ссылку. Заранее настроенный селектор, автоматизирует многие задачи в модулях.
Что нужно знать перед тем как приступить к настройке селектора?
Нужно знать айди доп полей в модулях, так как айди далее будут использоваться в скрипте.
Айди доп-полей в модуля Блог
- поле - #blF13
- поле - #blF14
- поле - #blF15
- поле - #blF16
- поле - #blF17
Айди доп-полей в модуле Новости
- поле - #nwF13
- поле - #nwF14
- поле - #nwF15
- поле - #nwF16
- поле - #nwF17
Экстра поля для Блога и Новостей
- поле - #input_extrafl6
- поле - #input_extrafl7
- поле - #input_extrafl8
- поле - #input_extrafl9
- поле - #input_extraf20
- поле - #input_extraf21
- поле - #input_extraf22
- поле - #input_extraf23
- поле - #input_extraf24
- поле - #input_extraf25
Айди доп-полей в модуле Каталог сайтов
- поле - #drF10
- поле - #drF11
- поле - #drF12
- поле - #drF13
- поле - #drF14
Айди доп-полей в модуле Доска объявлений
- поле - #bdF15
- поле - #bdF16
- поле - #bdF17
- поле - #bdF18
- поле - #bdF19
Айди доп-полей в модуле Онлайн игры
- поле - #sfF13
- поле - #sfF14
- поле - #sfF15
- поле - #sfF16
- поле - #sfF17
Экстра поля в модулях каталог ( статей / файлов / объявлений / сайтов и игр)
- поле - #input_extrafl1
- поле - #input_extrafl2
- поле - #input_extrafl3
- поле - #input_extrafl4
- поле - #input_extrafl5
- поле - #input_extrafl6
- поле - #input_extrafl7
- поле - #input_extrafl8
- поле - #input_extrafl9
- поле - #input_extrafl10
В зависимости от выбранного вами модуля и подключенного поля, смотрите его айди и далее используйте в коде селектора.
Как создать селектор с дополнительного поля?
Поле вы выбрали, далее идем в разделе Управление дизайном в конкретном модуле в шаблон форма - Форма добавления/редактирования материала. Например вы в блоге активировали "Дополнительное поле 1", в форме добавления и редактирования ищем код:
<?if($OTHER1_FL$)?> <li><label for="other1">$OTHER1_SIGN$:</label> <li>$OTHER1_FL$<?endif?>
который нам нужно заменить на следующий:
<!--selector for other1-->
<?if($OTHER1_FL$)?>
<li><label for="other1">$OTHER1_SIGN$:</label></li>
<script>$(function() {
$('.select').on('change', function() {
result = $('.select :selected').text();
$('#blF13').val(result);
});
});
</script>
<li><select class="select" name="myselect">
<option>-Выбрать-</option>
<option value="0" <?if($OTHER1_VAL$ = 'значение1')?>selected<?endif?>>значение1</option>
<option value="1" <?if($OTHER1_VAL$ = 'значение2')?>selected<?endif?>>значение2</option>
<option value="2" <?if($OTHER1_VAL$ = 'значение3')?>selected<?endif?>>значение3</option>
<option value="3" <?if($OTHER1_VAL$ = 'значение4')?>selected<?endif?>>значение4</option>
</select></li>
<span style="display:none;">$OTHER1_FL$</span><?endif?>
<!---end-->
В зависимости от того сколько вам значений нужно, столькими строками option:
<option value="N" <?if($OTHER1_VAL$ = 'значение')?>selected<?endif?>>значение</option>
дополняем код, вместо символа "N" не забываем писать порядковый номер value и заполнять поле нужными значениями для выбора в селекторе.
Не забывайте, что в данном примере мы в блоге использовали поле $OTHER1$ для нашего селектора, при выборе другого поля порядковый номер поля будет отличаться:
- $OTHER1_FL$ - $OTHER1_SIGN$ - $OTHER1_FL$
- $OTHER2_FL$ - $OTHER2_SIGN$ - $OTHER2_FL$
- $OTHER3_FL$ - $OTHER3_SIGN$ - $OTHER3_FL$
- $OTHER4_FL$ - $OTHER4_SIGN$ - $OTHER4_FL$
- $OTHER5_FL$ - $OTHER5_SIGN$ - $OTHER5_FL$
- $OTHER6_FL$ - $OTHER6_SIGN$ - $OTHER6_FL$
- $OTHER7_FL$ - $OTHER7_SIGN$ - $OTHER7_FL$
- $OTHER8_FL$ - $OTHER8_SIGN$ - $OTHER8_FL$
- $OTHER9_FL$ - $OTHER9_SIGN$ - $OTHER9_FL$
- $OTHER10_FL$ - $OTHER10_SIGN$ - $OTHER10_FL$
будьте внимательны и соблюдайте и порядковый номер поля и айди полей в селекторе.
На странице материала и комментариев модуля где нужно вывести значение которое выбираете в поле выводите выбранным вами дополнительным полем:
<?if($OTHER1$)?>Название поля: $OTHER1$<?endif?> <?if($OTHER2$)?>Название поля: $OTHER2$<?endif?> <?if($OTHER3$)?>Название поля: $OTHER3$<?endif?> <?if($OTHER4$)?>Название поля: $OTHER4$<?endif?> <?if($OTHER5$)?>Название поля: $OTHER5$<?endif?> <?if($OTHER6$)?>Название поля: $OTHER6$<?endif?> <?if($OTHER7$)?>Название поля: $OTHER7$<?endif?> <?if($OTHER8$)?>Название поля: $OTHER8$<?endif?> <?if($OTHER9$)?>Название поля: $OTHER9$<?endif?> <?if($OTHER10$)?>Название поля: $OTHER10$<?endif?>
Если у вас будет непонимание или путаница в полях и их айди, спрашивайте в комментариях к материалу.
Оцените полезность материала!
Лицензия: CC BY-SA 4.0
Автор: Юрий Герук
Комментарии