帮助您选择自定义小工具选项!(保存复选框选项)

时间:2010-09-03 作者:Christian Benincasa

我为Wordpress创建了一个自定义Flickr小部件,并成功地为用户设置了一个选项表单来输入他们的Flickr信息,但我无法在表单中获取复选框来保存是否选中。任何帮助都将不胜感激!以下是我的widget()、form()和update()函数:

function widget($args, $instance) {
extract($args);

$title = apply_filters(\'widget_title\', $instance[\'title\']);
$displaynum = $instance[\'displaynum\'];
$flickrid = $instance[\'flickrname\'];
$num = 6;
$feed = new SimplePie($instance[\'feed\']);
$feed->handle_content_type(); 
$photostream = $instance[\'show_photostream\'];


function update($new_instance, $old_instance) {
$instance = $old_instance;

$instance[\'title\'] = strip_tags($new_instance[\'title\'] );
$instance[\'displaynum\'] = strip_tags($new_instance[\'displaynum\'] );
$instance[\'feed\'] = $new_instance[\'feed\'];
$instance[\'flickrname\'] = $new_instance[\'flickrname\'];
$instance[\'show_photostream\'] = (bool) $new_instance[\'show_photostream\'];

return $instance;
}

function form($instance) {
$defaults = array (
    \'title\' => \'My Recent Flickr Uploads\',
    \'displaynum\' => 6,
    \'feed\' => \'http://api.flickr.com/services/feeds/photos_public.gne?id=33927859@N06&lang=en-us&format=rss_200\',
    \'flickrname\' => \'rastajellyfish\',
    \'show_photostream\' => isset( $instance[\'show_photostream\'] ) ? (bool) $instance[\'show_photostream\'] : false
);
$instance = wp_parse_args( (array) $instance, $defaults); ?>
任何帮助都将不胜感激!!!

1 个回复
SO网友:sorich87

I would do:

function update($new_instance, $old_instance) {
    ...

    $instance[\'show_photostream\'] = $new_instance[\'show_photostream\'];

    return $instance;
}

function form($instance) {
    $defaults = array (
        ...
        \'show_photostream\' => !empty( $instance[\'show_photostream\'] ) ? $instance[\'show_photostream\'] : false
    );
    $instance = wp_parse_args( (array) $instance, $defaults);
结束

相关推荐