多维数组上的Checked()函数

时间:2015-04-02 作者:luqo33

我正在其中一个选项页面上动态生成复选框。这是我用来创建多个复选框的代码:

<?php foreach($shopCategories as $shopCategory) { ?>
<input type="checkbox" value="<?php echo $shopCategory->term_id; ?>" 
       name="term_meta[ss_aff_categories][]"
       <?php checked($term_meta[\'ss_aff_categories\'], $shopCategory->term_id, true) ?>>
           <?php echo $shopCategory->name; ?><br/>
<?php } ?>
问题是checked() 功能到位我收到通知:

注意:数组到字符串的转换。。。在wp includes/general模板中。php在线3099

该函数不检查所选字段。

我认为它无法处理多个阵列(name="term_meta[ss_aff_categories][]") 在此设置中。

如何应用checked() 函数检查多维数组中的值-类似于上面的一个?

1 个回复
SO网友:webtoure

这个问题是很久以前提出来的,但仅供参考,在这种情况下,如果有人只是想使用checked 与似乎是array (而不是当场进行测试和输出‘检查’)这里有一个简单的解决方案:

checked( in_array( $shopCategory->term_id, $term_meta[\'ss_aff_categories\'] ) )
这是因为checked 只能接受一个参数,并将其值与设置为的默认第二个参数进行比较boolean true. 所以在这种情况下,如果$shopCategory->term_id 值位于$term_meta[\'ss_aff_categories\'] 阵列in_array 函数将返回布尔值true. 最终,我们传递给checked, 以及默认的第二个参数checked, 转换为字符串并进行比较。

结束

相关推荐

Color Picker - Theme options

我一直在自己创造一个主题,只是教自己wordpress API的输入和输出。首先,这个地方对我很有用!现在来回答这个问题,最近刚刚将WordPress颜色选择器合并到我的主题选项中,我想知道是否有办法操纵颜色输出来影响CSS的某些部分。例如我使用主题选项中的颜色选择器选项来更改网站标题的颜色。我只想知道颜色输出的确切位置,以及它如何影响特定的CSS。