JAWEL_
Aangemaakte reacties
2 reacties aan het bekijken - 1 tot 2 (van in totaal 2)
-
Forum: Code oplossingen gezocht
In antwoord op: Sorteer volgorde van de koppelingen widget instellenDe plugin lijkt te werken.
Je kan nog niet kiezen waarop je wilt sorteren. Dat is nu fixed op rating.
Hier is de code. Zal kijken waar ik deze plugin kan uploaden voor andere liefhebbers.
WHOOP-WHOOP! Created my first usable WordPress plugin!<?php /* Plugin Name: Links by rating Widget Description: Links ordered by rating in Widget Author: Jan-Willem van Veelen Version: 1.0 Beta tester: Michael Hastrich */ class WP_Widget_Links_By_Rating extends WP_Widget { function WP_Widget_Links_By_Rating() { $widget_ops = array( 'classname' => 'widget_Links_By_Rating', 'description' => __( "Show links in order of rating" ) ); $this->WP_Widget('linksByRating', __('Links By Rating 1.0'), $widget_ops); } function widget( $args, $instance ) { extract($args, EXTR_SKIP); $show_description = isset($instance['description']) ? $instance['description'] : false; $show_name = isset($instance['name']) ? $instance['name'] : false; $show_rating = isset($instance['rating']) ? $instance['rating'] : false; $show_images = isset($instance['images']) ? $instance['images'] : true; $category = isset($instance['category']) ? $instance['category'] : false; if ( is_admin() && !$category ) { // Display All Links widget as such in the widgets screen echo $before_widget . $before_title. __('All Links') . $after_title . $after_widget; return; } wp_list_bookmarks(array( 'title_before' => $before_title, 'title_after' => $after_title, 'category_before' => $before_widget, 'category_after' => $after_widget, 'show_images' => $show_images, 'show_description' => $show_description, 'show_name' => $show_name, 'show_rating' => $show_rating, 'category' => $category, 'class' => 'linkcat widget', 'orderby' => 'rating' )); } function update( $new_instance, $old_instance ) { $new_instance = (array) $new_instance; $instance = array( 'images' => 0, 'name' => 0, 'description' => 0, 'rating' => 0); foreach ( $instance as $field => $val ) { if ( isset($new_instance[$field]) ) $instance[$field] = 1; } $instance['category'] = intval($new_instance['category']); return $instance; } function form( $instance ) { //Defaults $instance = wp_parse_args( (array) $instance, array( 'images' => false, 'name' => true, 'description' => false, 'rating' => false, 'category' => false ) ); $link_cats = get_terms( 'link_category'); ?> <p> <label for="<?php echo $this->get_field_id('category'); ?>" class="screen-reader-text"><?php _e('Select Link Category'); ?></label> <select class="widefat" id="<?php echo $this->get_field_id('category'); ?>" name="<?php echo $this->get_field_name('category'); ?>"> <option value=""><?php _e('All Links'); ?></option> <?php foreach ( $link_cats as $link_cat ) { echo '<option value="' . intval($link_cat->term_id) . '"' . ( $link_cat->term_id == $instance['category'] ? ' selected="selected"' : '' ) . '>' . $link_cat->name . "</option>\n"; } ?> </select></p> <p> <input class="checkbox" type="checkbox" <?php checked($instance['images'], true) ?> id="<?php echo $this->get_field_id('images'); ?>" name="<?php echo $this->get_field_name('images'); ?>" /> <label for="<?php echo $this->get_field_id('images'); ?>"><?php _e('Show Link Image'); ?></label><br /> <input class="checkbox" type="checkbox" <?php checked($instance['name'], true) ?> id="<?php echo $this->get_field_id('name'); ?>" name="<?php echo $this->get_field_name('name'); ?>" /> <label for="<?php echo $this->get_field_id('name'); ?>"><?php _e('Show Link Name'); ?></label><br /> <input class="checkbox" type="checkbox" <?php checked($instance['description'], true) ?> id="<?php echo $this->get_field_id('description'); ?>" name="<?php echo $this->get_field_name('description'); ?>" /> <label for="<?php echo $this->get_field_id('description'); ?>"><?php _e('Show Link Description'); ?></label><br /> <input class="checkbox" type="checkbox" <?php checked($instance['rating'], true) ?> id="<?php echo $this->get_field_id('rating'); ?>" name="<?php echo $this->get_field_name('rating'); ?>" /> <label for="<?php echo $this->get_field_id('rating'); ?>"><?php _e('Show Link Rating'); ?></label> </p> <?php } } // Register the widget. add_action('widgets_init', create_function('', 'return register_widget("WP_Widget_Links_By_Rating");')); ?>
Forum: Code oplossingen gezocht
In antwoord op: Sorteer volgorde van de koppelingen widget instellenIk ben een plugin aan het schrijven die deze widget toevoegt.
Ik zal kijken of de links niet alleen op ‘rating’ gesorteerd kan worden in de Widget
2 reacties aan het bekijken - 1 tot 2 (van in totaal 2)