假设后端正常工作,并且可以检查多个字段,并且字段值确实存储为一个数组,请使用:
$exclude = get_option(\'src_excludepage\');
wp_list_pages(array(
"exclude" => implode(\',\', $exclude[\'options\']),
));
附言:你使用的教程有一种非常奇怪的处理“多重检查”的方式。一种更简单的方法是附加
[]
在复选框中输入名称。。。
Update:
在
mytheme_admin()
函数添加另一个案例:
case "page_multicheck":
option_wrapper_header($value);
$pages = get_pages(\'sort_column=post_parent,menu_order\');
$pageids = array();
foreach ($pages as $page){
$pageids[$page->ID] = $page->post_title;
$input_id = $value[\'id\'] . \'_\' . $page->ID;
$checkbox_setting = get_settings($value[\'id\']);
if (in_array($page->ID, $checkbox_setting)) $checked = "checked=\\"checked\\""; else $checked = "";
?>
<input type="checkbox" name="<?php echo $value[\'id\']; ?>[]" id="<?php echo $input_id; ?>" <?php echo $checked; ?> />
<label for="<?php echo $input_id; ?>"><?php echo $page->post_title; ?></label
><br />
<?php
}
option_wrapper_footer($value);
break;
在
$options
数组删除旧选项并添加:
array("name" => "Exclude page",
"desc" => "",
"id" => $shortname."_excludepage",
"type" => "page_multicheck",
"options" => array(),
"std" => ""),
现在,理论上我上面的代码应该可以工作了。。。