如何在wordpress小部件中保存一系列复选框?

时间:2011-03-15 23:28:23

标签: php wordpress checkbox widget

我创建了一个小部件,我需要允许用户从一系列选项中进行选择。选项是来自数据库中另一个表的书籍。

我正在尝试使用这样的代码:

<input type="text" name="<?PHP $this->get_field_name("books[]"); ?>">

然而,在尝试保存时失败了。甚至可以传递这样的选项数组并保存它们吗?如果没有,那将是另一种解决方案。我可以传递这样的值:

book1
book2
book3

如果我这样做,我必须在更新方法中有一个循环遍历数据库中的所有书籍,以确定检查什么和不检查什么?我愿意接受建议。

2 个答案:

答案 0 :(得分:2)

我会做这样的事情:

首先,存储选项并将它们选为数组:

$options = get_option("pluginName_books");

update_option("pluginName_books",$_REQUEST['books']);

将此作为表单中的字段:

<input type="text" name="books[]" value="the_value">

或将其作为复选框:

<input type="checkbox" name="<?PHP $this->get_field_name("books[]"); ?>">

答案 1 :(得分:1)

刚刚遇到同样的问题。我通过在我的get_field_name调用之外附加我的名称标记的数组部分来解决它:

name="<?php echo $this->get_field_name( 'breakpoints' ); ?>[]"