保存后未显示“已选择”的选项

时间:2014-05-17 17:33:38

标签: php html wordpress select

问题:

保存有效,但保存后只存储数据库中的一个选项。

保存后选项未显示为已选中。

选择字段:

<select id="exclude_page_from_cookies" name="exclude_page_from_cookies[]" multiple="multiple">
        <?php

        $pages = get_pages();
        foreach ( $pages as $page ) {
            $title = $page->post_title;
            $id    = $page->id;
            ?>

            <option id="<?php echo $id; ?>" value="<?php echo $title ?>" <?php selected( $title ); ?> >
                <?php echo $title;?>
            </option>
        <?php
        }
        ?>
    </select>

保存功能:

if ( isset( $_POST['exclude_page_from_cookies'] ) ) {
    foreach( $_POST['exclude_page_from_cookies'] as $exclude_page ) {
         echo $exclude_page;
         update_option( 'exclude_page_from_cookies', $exclude_page ) ;
    }
}

1 个答案:

答案 0 :(得分:1)

我假设selected()是一个wordpress函数?

我猜你的行应该是这样的:

 <option <?php selected( $title ); ?> value="<?php echo $title ?>">

selected以外的value=""

修改

根据@comfreak:

foreach($_POST['exclude_page_from_cookies'] as $exclude_page ){
 update_option('exclude_page_from_cookies',$exclude_page);
}