WordPress как на ладони
Очень Удобный и Быстрый Хостинг для сайтов на WordPress. Рекомендую всем своим клиентам!
функция не описана

Yoast_Form::toggle_switch() public Yoast 3.1

Create a toggle switch input field using two radio buttons.

Ищем WP-разработчика! Фулл-тайм, удаленка, хорошая зарплата, соц. пакет. Подробности.
Компания Boosta.

{} Это метод класса: Yoast_Form{}

Хуков нет.

Возвращает

null. Ничего.

Использование

$Yoast_Form = new Yoast_Form();
$Yoast_Form->toggle_switch( $var, $values, $label, $help, $attr );
$var(строка) (обязательный)
The variable within the option to create the radio buttons for.
$values(массив) (обязательный)
Associative array of on/off keys and their values to be used as the label elements text for the radio buttons. Optionally, each value can be an array of visible label text and screen reader text.
$label(строка) (обязательный)
The visual label for the radio buttons group, used as the fieldset legend.
$help(строка)
Inline Help that will be printed out before the visible toggles text.
По умолчанию: ''
$attr(массив)
Extra attributes to add to the toggle switch.
По умолчанию: []

Список изменений

С версии 3.1 Введена.

Код Yoast_Form::toggle_switch() Yoast 17.4

public function toggle_switch( $var, $values, $label, $help = '', $attr = [] ) {
	if ( ! is_array( $values ) || $values === [] ) {
		return;
	}

	$defaults = [
		'disabled' => false,
	];
	$attr     = wp_parse_args( $attr, $defaults );

	$val = $this->get_field_value( $var, false );
	if ( $val === true ) {
		$val = 'on';
	}
	if ( $val === false ) {
		$val = 'off';
	}

	$help_class = ! empty( $help ) ? ' switch-container__has-help' : '';

	$var_esc = esc_attr( $var );

	printf( '<div class="%s">', esc_attr( 'switch-container' . $help_class ) );
	echo '<fieldset id="', $var_esc, '" class="fieldset-switch-toggle"><legend>', $label, '</legend>', $help;

	echo $this->get_disabled_note( $var );
	echo '<div class="switch-toggle switch-candy switch-yoast-seo">';

	foreach ( $values as $key => $value ) {
		$screen_reader_text_html = '';

		if ( is_array( $value ) ) {
			$screen_reader_text      = $value['screen_reader_text'];
			$screen_reader_text_html = '<span class="screen-reader-text"> ' . esc_html( $screen_reader_text ) . '</span>';
			$value                   = $value['text'];
		}

		$key_esc            = esc_attr( $key );
		$for                = $var_esc . '-' . $key_esc;
		$disabled_attribute = $this->get_disabled_attribute( $var, $attr );

		// phpcs:ignore WordPress.Security.EscapeOutput -- Reason: $disabled_attribute output is hardcoded and all other output is properly escaped.
		echo '<input type="radio" id="' . $for . '" name="' . esc_attr( $this->option_name ) . '[' . $var_esc . ']" value="' . $key_esc . '" ' . checked( $val, $key_esc, false ) . $disabled_attribute . ' />',
		'<label for="', $for, '">', esc_html( $value ), $screen_reader_text_html, '</label>';
	}

	echo '<a></a></div></fieldset><div class="clear"></div></div>' . PHP_EOL . PHP_EOL;
}