1
我在/wp-includes/default-widgets.php下找到了自定義菜單窗口小部件的代碼。我想要做的是在菜單UL上添加一個靜態圖像。我已經在列表中垂直創建列表,並且希望在小部件標題之後和列表之前放置一個圖像,但我對PHP沒有多少了解。如何將圖像添加到Wordpress自定義菜單窗口小部件
下面是自定義菜單插件的代碼:
`/**
* Navigation Menu widget class
*
* @since 3.0.0
*/
class WP_Nav_Menu_Widget extends WP_Widget {
function __construct() {
$widget_ops = array('description' => __('Use this widget to add one of your custom menus as a widget.'));
parent::__construct('nav_menu', __('Custom Menu'), $widget_ops);
}
function widget($args, $instance) {
// Get menu
$nav_menu = ! empty($instance['nav_menu']) ? wp_get_nav_menu_object($instance['nav_menu']) : false;
if (!$nav_menu)
return;
$instance['title'] = apply_filters('widget_title', empty($instance['title']) ? '' : $instance['title'], $instance, $this->id_base);
echo $args['before_widget'];
if (!empty($instance['title']))
echo $args['before_title'] . $instance['title'] . $args['after_title'];
wp_nav_menu(array('fallback_cb' => '', 'menu' => $nav_menu));
echo $args['after_widget'];
}
function update($new_instance, $old_instance) {
$instance['title'] = strip_tags(stripslashes($new_instance['title']));
$instance['nav_menu'] = (int) $new_instance['nav_menu'];
return $instance;
}
function form($instance) {
$title = isset($instance['title']) ? $instance['title'] : '';
$nav_menu = isset($instance['nav_menu']) ? $instance['nav_menu'] : '';
// Get menus
$menus = get_terms('nav_menu', array('hide_empty' => false));
// If no menus exists, direct the user to go and create some.
if (!$menus) {
echo '<p>'. sprintf(__('No menus have been created yet. Create some.'), admin_url('nav-menus.php')) .'</p>';
return;
}
?>
<p>
<label for="<?php echo $this->get_field_id('title'); ?>"><?php _e('Title:') ?></label>
<input type="text" class="widefat" id="<?php echo $this->get_field_id('title'); ?>" name="<?php echo $this->get_field_name('title'); ?>" value="<?php echo $title; ?>" />
</p>
<p>
<label for="<?php echo $this->get_field_id('nav_menu'); ?>"><?php _e('Select Menu:'); ?></label>
<select id="<?php echo $this->get_field_id('nav_menu'); ?>" name="<?php echo $this->get_field_name('nav_menu'); ?>">
<?php
foreach ($menus as $menu) {
$selected = $nav_menu == $menu->term_id ? ' selected="selected"' : '';
echo '<option'. $selected .' value="'. $menu->term_id .'">'. $menu->name .'</option>';
}
?>
</select>
</p>
<?php
}
}
我想,我會盡你所能。謝謝! –
很高興幫助:) – Xhynk