'', 'pretext' => '', 'type' => 'microdata', 'linked' => true, 'reverse' => false, 'front' => false, 'force' => false); //Default constructor function __construct() { //Filter allowed_html array to allow others to add acceptable tags $this->allowed_html = apply_filters('bcn_allowed_html', wp_kses_allowed_html('post')); //@see https://core.trac.wordpress.org/ticket/10527 if(!is_textdomain_loaded('breadcrumb-navxt')) { load_plugin_textdomain('breadcrumb-navxt', false, 'breadcrumb-navxt/languages'); } $ops = array('classname' => 'widget_breadcrumb_navxt', 'description' => __('Adds a breadcrumb trail to your sidebar', 'breadcrumb-navxt')); parent::__construct('bcn_widget', 'Breadcrumb NavXT', $ops); } function widget($args, $instance) { //Make sure we grab defaults in the case of out of date instance settings being sent $instance = wp_parse_args((array) $instance, $this->defaults); $instance['title'] = apply_filters('widget_title', $instance['title'], $instance, $this->id_base); $instance['pretext'] = apply_filters('widget_text', $instance['pretext'], $instance); $instance['pretext'] = apply_filters('bcn_widget_pretext', $instance['pretext'], $instance); $title = apply_filters('widget_title', $instance['title'], $instance, $this->id_base); //A bit of a hack but we need the DB settings to know if we should exit early $opt = get_option('bcn_options'); //If we are on the front page and don't display on the front, return early if($instance['front'] && is_front_page() && !(is_paged() && $opt['bpaged_display'])) { return; } //Manditory before widget junk echo $args['before_widget']; if(!empty($title)) { echo $args['before_title'] . $title . $args['after_title']; } //We'll want to switch between the two breadcrumb output types if($instance['type'] === 'list') { //Display the list output breadcrumb echo wp_kses($instance['pretext'], $this->allowed_html) . ''; } else if($instance['type'] === 'microdata' || $instance['type'] === 'breadcrumblist_rdfa') { echo ''; } else if($instance['type'] === 'breadcrumblist_microdata') { echo ''; } else if($instance['type'] === 'plain') { //Display the pretext echo wp_kses($instance['pretext'], $this->allowed_html); //Display the regular output breadcrumb bcn_display(false, $instance['linked'], $instance['reverse'], $instance['force']); } else { //If we recieved a type that is not of the built in displays, it must be relegated to an extension plugin do_action('bcn_widget_display_trail', $instance); } //Manditory after widget junk echo $args['after_widget']; } function update($new_instance, $old_instance) { //Filter out anything that could be invalid $old_instance['title'] = strip_tags($new_instance['title']); $old_instance['pretext'] = wp_kses($new_instance['pretext'], $this->allowed_html); $old_instance['type'] = strip_tags($new_instance['type']); $old_instance['linked'] = isset($new_instance['linked']); $old_instance['reverse'] = isset($new_instance['reverse']); $old_instance['front'] = isset($new_instance['front']); $old_instance['force'] = isset($new_instance['force']); return $old_instance; } function form($instance) { $instance = wp_parse_args((array) $instance, $this->defaults);?>

/>
/>
/>
/>