WP Page Options Array

时间:2016-02-24 作者:mmarquez

我正在创建一个页面选项,其中包含一些带有特定值的多个复选框。以下是我的复选框表单代码片段:

   <label>Global Checkboxes</label>
   <input style="width:0;" type="checkbox" name="page_options[check_list_global][0]" value=“check1" <?php checked( $options[\'check_list_global’][0], ‘check1\'); ?> />
   <label>Check 1</label>
   <input style="width:0;" type="checkbox" name="page_options[check_list_global][1]" value=“check2" <?php checked( $options[\'check_list_global\'][1], ‘check2\'); ?> />
   <label>Check 2</label>
   <input style="width:0;" type="checkbox" name="page_options[check_list_global][2]" value=“check3" <?php checked( $options[\'check_list_global\'][2], ‘check3\'); ?> />
然后,我可以使用常规for循环获取值,并对$输出执行字符串操作。这可以满足我的需要。

for ($i = 0; $i < 3; ++$i) {
   print $options[\'check_list_global’] [$i];
}
但我觉得必须有更好的方法。理想情况下,我希望将所有复选框的值存储在一个page_options[\'check_list_global\'] 格式为key : value 或者类似的。摆脱[$number] 在选项之后。这样,我就不必对所有字段进行硬编码,更加干净、高效,当然,如果需要添加更多字段,还需要动态。

所以我想我的问题可以总结如下:

如何将清单的所有值存储为一个数组,并避免指定[$number] 在我的每个领域?

我希望我足够清楚,谢谢!

1 个回复
SO网友:mmarquez

经过多次实验,我解决了自己的问题,这个答案可能会对某些人有所帮助。

    function mmm_select_field(  ) {

    $options = get_option( \'mmm_settings\' );

    $buttons = array(
        \'Bold\' => \'bold\',
        \'Italic\' => \'italic\',
        \'Underline\' => \'underline\',
        \'Superscript\' => \'superscript\',
        \'Align Left\' => \'alignleft\',
        \'Align Center\' => \'aligncenter\',
        \'Align Right\' => \'alignright\',
        \'Bullet List\' => \'bulletlist\',
        \'Number List\' => \'numberlist\',
        \'Link\' => \'link\',
        \'Unlink\' => \'unlink\'
    );

    foreach ($buttons as $key => $value) { ?>
        <input name="mmm_settings[mmm_select_field][]" type="checkbox" value=\'<?php echo $value; ?>\' <?php if((!empty($options[\'mmm_select_field\']) && in_array($value, $options[\'mmm_select_field\']))) { echo "checked"; } ?>/>
        <label for="<?php echo $value ?>"><?php echo $key; ?></label>
    <?php }

    }
基本上,这是将数组分配给选项/设置的方式:

mmm_settings[mmm_select_field][]

相关推荐

input data and output table

我需要一个解决方案,这样做与WP。在管理方面:我需要将数据输入数据库(名称、姓氏、证书、级别、发布日期)。在前端:客户端可以使用特定的搜索字段在插入的数据中进行搜索,并获得包含结果的表。(姓名、认证、级别、颁发日期)。任何模块都可以做到这一点。