嗨我有这样的复选框:
"languages" => array("name" => "languages",
"title" => "Languages","description" => "",
"style" => "checkboxes","options" => array("1" => "option1","2" => "option2")),
它们显示正常使用:
foreach($meta_box['options'] as $radio_value) {
echo '<input type="checkbox" name="'.$meta_box['name'].'_value'.'"
value="'.$radio_value.'"'; if ($meta_box_value == $radio_value) { echo '
checked="yes"'; } echo '/> '.$radio_value. '<br/>';
现在我需要保存它们。
我使用此代码保存所有其他字段,但自然它只会保存最后一个选中的复选框:
if(get_post_meta($post_id, $meta_box['name'].'_value') == "")
add_post_meta($post_id, $meta_box['name'].'_value', $data, true);
elseif($data != get_post_meta($post_id, $meta_box['name'].'_value', true))
update_post_meta($post_id, $meta_box['name'].'_value', $data);
elseif($data == "")
delete_post_meta($post_id, $meta_box['name'].'_value', get_post_meta($post_id, $meta_box['name'].'_value', true));
如何解决此问题以保存所有选中的复选框。
提前感谢您提供任何帮助
答案 0 :(得分:3)
以下是创建元框的有用链接:http://wp.tutsplus.com/tutorials/reusable-custom-meta-boxes-part-1-intro-and-basic-fields/。
你最终可能会抛弃你现有的东西,但我在自己的博客上使用这种方法并且效果很好。