类似的问题已多次发布,但实际上我搜索和发现的所有问题都是如何使下拉类别选择多个选项。
但我的问题并没有张贴在任何地方,而是如何填充多个选定的值并在选择输入时选择它们。
让我说我有wp_dropdown_categories
函数,有多个选择选项。
function dropdown_language( $language = false ) {
$args = [
'show_option_all' => '',
'show_option_none' => '',
'option_none_value' => '',
'orderby' => 'name',
'order' => 'ASC',
'hide_empty' => 0,
'child_of' => 0,
'hierarchical' => 1,
'depth' => 1,
'name' => 'language[]',
'id' => 'language',
'selected' => $language,
'class' => 'select2 form-control',
'taxonomy' => 'language',
'hide_if_empty' => false,
'value_field' => 'term_id',
'echo' => false
];
$cat_dropdown = wp_dropdown_categories( $args );
$cat_dropdown = preg_replace(
'^' . preg_quote( '<select ' ) . '^',
'<select required data-placeholder="Language" data-error="Please select Language" multiple="multiple"',
$cat_dropdown
);
echo $cat_dropdown;
}
因此,当我第一次使用此功能打开一个页面时,我有一个很好的多选下拉列表和select2插件,一切正常。
这将作为一个包含多个字段的数组保存在数据库中。
但是当我想再次使用此功能打开页面时,由于我之前保存了所选语言的列表,$language
不是false
。它是一组先前选择的语言。
现在我需要使用selected
中的值列表填充$language
arg并选择多个选定的字段。