我正在寻找一种更简洁的方式(除了使用if-statement
之外)来获取wordpress小部件中已检查复选框的总数。
我的代码如下(简化):
public function widget( $args, $instance ) {
$no = count( $_GET['widget-columns'] ) ;
echo '<div class="uk-child-width-1-'.esc_attr( $no ).'">';
echo '...';
echo '</div>';
}
以下是复选框
public function form( $instance ) { ?>
<p>
<input id="..." name="column-value-1 widget-columns[]" type="checkbox" value="1" <?php checked( '1', $variable_column_one ); ?>/>
<label for="...">Show Column 1</label>
</p>
<p>
<input id="..." name="column-value-2 widget-columns[]" type="checkbox" value="1" <?php checked( '1', $variable_column_two ); ?>/>
<label for="...">Show Column 2</label>
</p>
<p>
<input id="..." name="column-value-3 widget-columns[]" type="checkbox" value="1" <?php checked( '1', $variable_column_three ); ?>/>
<label for="...">Show Column 3</label>
</p>
<?php }
这导致undefined index widget-columns
(出于显而易见的原因)。
非常感谢任何有助于我在正确的轨道上获取已选中复选框的计数的帮助。
答案 0 :(得分:0)
name
属性中不能包含两个值。将您的<input name="column-value-2 widget-columns[]">
更改为<input name="widget-columns[]">