Я пытаюсь создать настраиваемую форму поля для параметра шаблона для Joomla 3, следуя инструкциям на этой странице. Создание типа поля настраиваемого типа
Вот мои коды:
class JFormFieldMy extends JFormField { protected $type = 'my'; public function getInput() { return '<select id="'.$this->id.'" name="'.$this->name.'">'. '<optgroup label="First">'. '<option value="1">One</option>'. '<option value="2">Two</option>'. '<option value="3">Three</option>'. '</optgroup>'. '<optgroup label="Second">'. '<option value="4">Four</option>'. '<option value="5">Five</option>'. '<option value="6">Six</option>'. '</optgroup>'. '</select>'; } }
Он работает хорошо, значение сохраняется, но выбранное значение не имеет выбранного значения = «выбранное», поэтому в раскрывающемся списке всегда отображается опция «Один», когда я выбираю / фактическое значение «Два»,
Я прочитал это решение: Joomla 2.5 Custom Field List не выбрано на дисплее, но это для общего типа списка, но не для сгруппированного списка, который я хотел.
Кто-нибудь может мне помочь? благодаря
Вы не устанавливаете выбранный элемент списка:
<option value="the_value" selected>....</option>
Другой подход: вместо выведения вашего класса из JFormField вы должны получить его из абстрактного класса JHtmlList (вы найдете его в libraries/cms/html/list.php
). Вы можете начать брать libraries/cms/form/field/limitbox.php
В качестве примера.