Данные, связанные с флажками, берутся из метаданных пользователя.
У меня флажок работает следующим образом.
В контактной форме у меня есть:
Код: Выделить всё
[checkbox* checkbox_options]
Код: Выделить всё
add_action( 'wpcf7_init', function(){ remove_action( 'wpcf7_swv_create_schema', 'wpcf7_swv_add_checkbox_enum_rules', 20, 2 ); });
function dynamic_options($tag){
if ( $tag['name'] != 'checkbox_options' )
return $tag;
$current_user = wp_get_current_user();
$s = get_user_meta( $current_user->ID, 'my_user_data', true );
$f1 = $s['my_user_data']['f1'];
$f2 = $s['my_user_data']['f2'];
// hard coded 1 for testing purposes
for ($i=0; $iфлажок преобразуется в скрытое поле с тем же идентификатором и именем;
[*]флажок виден, но он установлен и не отмечен;
Я попробовал первый вариант, переопределив тип и базовый тип, но это сработало наполовину: сгенерированный HTML по-прежнему совместим со списком флажков, даже если скрытое поле в итоге создан. Это решение, по крайней мере, то, как я пытался его реализовать, неосуществимо, поскольку в конечном итоге оно приводит к добавлению нежелательного, очевидно, неустранимого HTML-кода (например, вы все еще видите напечатанное значение).
Есть ли способ реализовать первое или второе решение?
Спасибо за внимание, любая помощь приветствуется
Подробнее здесь: [url]https://stackoverflow.com/questions/79141913/converting-dynamic-contact-form-7-checkbox-to-hidden-field-or-to-uncheckable-che[/url]