在Elementor中,add_control方法用于向控制区块(Control Section)中添加一个控制选项(Control)。
add_control方法接受两个参数:
$id(必填):控制选项的唯一标识符。可以在其他方法中使用此标识符引用该控制选项。
$args(可选):控制选项的参数设置。这是一个关联数组,可以包含以下键值对:
label:控制选项的标签(标题)。
type:控制选项的类型。可以是预定义的类型,如text、textarea、select、checkbox、image等,也可以是自定义的控制类型。
default:控制选项的默认值。
options:如果控制选项的类型是select或radio,可以使用此选项指定选项的键值对。
condition:一个条件数组,用于根据其他控制选项的值来显示或隐藏该控制选项。
description:控制选项的描述文本。
placeholder:如果控制选项的类型支持占位符,则可以使用此选项指定占位符文本。
以下是一个使用add_control方法的示例:
$this->add_control( 'control_id', [ 'label' => __( 'Control Label', 'elementor' ), 'type' => \Elementor\Controls_Manager::SELECT, 'default' => 'Default Value', 'options' => [ 'option1' => 'Option 1', 'option2' => 'Option 2', 'option3' => 'Option 3', ], 'condition' => [ 'some_other_control' => 'value', ], 'description' => 'Control description', 'placeholder' => 'Enter a value', ] );
在上述示例中,我们向控制区块添加了一个控制选项。该控制选项的唯一标识符为control_id,标签为Control Label,类型为TEXT,
默认值为Default Value。如果控制选项的类型是select或radio,我们可以使用options选项指定选项的键值对。我们还为该控制选项设置了一个条件,
即当名为some_other_control的控制选项的值为value时才显示该控制选项。此外,我们还指定了控制选项的描述文本和占位符文本。
通过使用add_control方法,你可以根据需要向Elementor小部件添加各种类型的控制选项,并根据条件来动态显示或隐藏这些选项。