我的代码如下所示在redux
中$fields = array(
'id' => 'opt-select',
'type' => 'select',
'title' => __('Select Option', 'redux-framework-demo'),
'subtitle' => __('No validation can be done on this field type', 'redux-framework-demo'),
'desc' => __('This is the description field, again good for additional info.', 'redux-framework-demo'),
// Must provide key => value pairs for select options
'options' => array(
'1' => 'Opt 1',
'2' => 'Opt 2',
'3' => 'Opt 3'
),
'default' => '2',
);
现在,如果设置了标题变体2,我想显示第3个选项。标题变体是另一个字段,它有两个选项,如标题变体1和标题变体2。 如何编写代码来实现这个功能?
答案 0 :(得分:0)
您可以对任何给定字段使用Redux Framework的required
参数。
来自Docs:
字段可以根据/多个父项链接/要求/折叠 值(S)。这可以通过附加必需的参数来实现, 在任何给定的字段中类似于以下内容:
'required' => array('opt-header-variations','equals','2')
required
参数支持一些运算符,因此您可以做一些逻辑。
一个真实的例子:
Bellow我们设置了两个字段,两个字段都是选择字段类型,但对于任何字段类型都可以使用相同的字段。我们希望使用&#34; opt-select&#34; ID隐藏选择字段,并仅在选择字段&#34; opt-header-variations&#34; <时显示/ strong>值等于2
,在这种情况下与&#34;标题变体2&#34;相同选项。
为了做到这一点,我们需要在我们想要有条件地隐藏的选择字段上使用required
参数:
'required' => array('opt-header-variations','equals','2'),
$fields = array(
array (
'id' => 'opt-header-variations',
'type' => 'select',
'title' => __('Header Styles', 'redux-framework-demo'),
'subtitle' => __('Header Variations', 'redux-framework-demo'),
'options' => array(
'1' => 'Header variation 1',
'2' => 'Header variation 2'
),
'default' => 1,
),
array (
'id' => 'opt-select',
'type' => 'select',
'title' => __('Select Option', 'redux-framework-demo'),
'subtitle' => __('No validation can be done on this field type', 'redux-framework-demo'),
'desc' => __('This is the description field, again good for additional info.', 'redux-framework-demo'),
// Must provide key => value pairs for select options
'options' => array(
'1' => 'Opt 1',
'2' => 'Opt 2',
'3' => 'Opt 3'
),
'default' => '2',
'required' => array('opt-header-variations','equals','2')
),
);
required
参数也可以与多个“父”必需值一起使用。如果不满足所有这些条件,则此字段将不可见,并且不会使用输出CSS。一个例子是
如下:
'required' => array(
array('layout','equals','1'),
array('parent','!=','Testing')
)