我正在构建一个wordpress小部件,允许用户从类别列表中进行选择,在侧边栏中显示哪些类别(以及它的描述和自定义图标)。 我只收到检查过的类别时遇到了麻烦。
这是我的代码:
$categories = get_categories();
$defaults = array( 'title' => 'Categories Title','categories' => $categories);
$instance = wp_parse_args( (array) $instance, $defaults );
if (isset($instance['title'])) {
$title = $instance['title'];
}else {
$title = __('New title', 'text_domain');
}
if (isset($instance['categories'])){
$categories_list = $instance[ 'categories' ];
}else {
$categories_list = __( 'put here array', 'text_domain');
}
?>
<p>
<label for="<?php echo $this->get_field_id( 'title' ); ?>"><?php _e( 'Title:' ); ?></label>
<input class="widefat" id="<?php echo $this->get_field_id( 'title' ); ?>"
name="<?php echo $this->get_field_name( 'title' ); ?>" type="text"
value="<?php echo esc_attr( $title ); ?>"/>
</p>
<p>
<label for="<?php echo $this->get_field_id( 'categories' ); ?>"><?php _e( 'Categories List:' ); ?></label>
<?php foreach($categories as $cat) : ?>
<p>
<input type="checkbox"
id="<?php echo $this->get_field_id( 'categories' ); ?>"
name="<?php echo $this->get_field_id( 'categories' ); ?>"
value="<?php echo $cat->term_id; ?>"
/>
<label>
<?php echo $cat->name; ?>
</label>
</p>
<?php endforeach; ?>
</p>
<?php
}