0

カテゴリ ウィジェットを作成しているので、必要なページにのみブログ カテゴリを配置できるため、テーマにより適しています :)

とにかく、ここにウィジェットのコーディングがあります。問題ないと思いますが、どの列を呼び出すか、リンクを呼び出す方法がわからないため、テストできませんでした。

class ubl_blog_cats extends WP_Widget {

    public function __construct() {
        parent::__construct(
          'ubl_blog_cats',
          'UBL Blog Categories',
          array( 'description' => __( 'Displays The Bog Categories'))
        );
    }

    public function form( $instance ) { 

        $title = (isset( $instance[ 'title' ])) ? $instance['title' ] : 'Blog Categories'; ?> 

        <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>

<?php }

    public function update( $new_instance, $old_instance ) {
        $instance = array();
        $instance['title'] = strip_tags( $new_instance['title'] );
        return $instance;
    }

    public function widget( $args, $instance ) {

        global $wpdb;

        extract( $args );

        $title = apply_filters( 'widget_title', $instance['title'] );

        if ( ! empty( $title ) ) echo '<div class="widget_title" id="widget">' . $title . '</div>';

        $ublmostpop = new $wpdb->get_results("
        SELECT * 
        FROM wp_term_relationships 
        LEFT JOIN wp_term_taxonomy 
        ON (wp_term_relationships.term_taxonomy_id = wp_term_taxonomy.term_taxonomy_id) 
        LEFT JOIN wp_terms on wp_term_taxonomy.term_taxonomy_id = wp_terms.term_id 
        WHERE wp_term_taxonomy.taxonomy = 'category' 
        GROUP BY wp_term_taxonomy.term_id");

        echo '<div class="navcat"><ul>';

        foreach($ublmostpop as $ublmp){ ?>

                <li><a href="" title=""></a></li>

        <?php } ?>

        </ul></div>

<?php 
        wp_reset_postdata();
        echo $after_widget;

    }

}

register_widget( 'ubl_blog_cats' );

?>

また、このウィジェットが機能しない場合はお知らせください:)

4

0 に答える 0