私のwpウィジェットには、ライブラリ/サービスのリスト順になる$instance
という属性があります。order
各場所/サービスの ID、そのタイプ (場所またはサービスの場合)、および名前を保持する多次元連想配列を保存したいと思います。次のようにしたいと思います。
array(
[0] => ( 'id' => 1, 'type' => 'location', 'name' => 'University Library'),
[1] => ( 'id' => 7, 'type' => 'service', 'name' => 'Circulation Desk') );
以下は、wp ウィジェットの管理ペインと の HTML マークアップです$instance['order']
。
<label>
<?php _e( 'Select ordering', 'olh' ); ?>:
</label>
<select
name='select-hours-order'
class='select-hours-order'>
<!-- dynamically populated by jQuery -->
</select>
<a
class='add-location-service'>
<i>+</i>
</a>
<ul
name='<?php echo $this->get_field_name( 'order' ) ?>[]'
id='<?php echo $this->get_field_id( 'order' ) ?>'
class='location-service-order' >
<?php
foreach ($instance['order'] as $order ) : ?>
<li
class="<?php echo $order['class'] ?>"
value="<?php echo $order['value'] ?>">
<?php echo $order['name'] ?>
</li>
<?php endforeach; ?>
</ul>
ユーザーは、複数選択ドロップダウンを使用して、表示したい場所/サービスを選択できます。ユーザーがライブラリ/サービスを選択するたびに、自動的に入力されselect.select-hours-order
ます。+
ユーザーは のボタンをクリックして、a.add-location-service
に追加できますul.location-service-order
。
そこから、上で指定した属性li
で のを保存したいと思います。ul.location-service-order
ありとあらゆる情報をくれたギャル/みんなに感謝します。