web-dev-qa-db-ja.com

ウィジェットにドロップダウンメニューを作成する方法

ウィジェットに3つのオプションを含む単純なドロップダウンメニューを作成する方法を教えてください。私は$ instanceを使っています。それは裸のウィジェットでどのように見えるでしょうか?

2
SloBros

これが私がすることです:

静的オプション

<select id="<?php echo $this->get_field_id('posttype'); ?>" name="<?php echo $this->get_field_name('posttype'); ?>" class="widefat" style="width:100%;">
    <option <?php selected( $instance['posttype'], 'Option 1'); ?> value="Option 1">Option 1</option>
    <option <?php selected( $instance['posttype'], 'Option 2'); ?> value="Option 2">Option 2</option> 
    <option <?php selected( $instance['posttype'], 'Option 3'); ?> value="Option 3">Option 3</option>   
</select>

PHPを付けてオプションで生成する(例)

<select id="<?php echo $this->get_field_id('posttype'); ?>" name="<?php echo $this->get_field_name('posttype'); ?>" class="widefat" style="width:100%;">
    <?php foreach(get_post_types($getposttype_args,'names') as $post_type) { ?>
        <option <?php selected( $instance['posttype'], $post_type ); ?> value="<?php echo $post_type; ?>"><?php echo $post_type; ?></option>
    <?php } ?>      
</select>

あなたはposttypeのすべてのインスタンスをあなたが使いたいfield_idに変更したいのです。

6
Evan Yeung