وردپرس

نمایش خودکار دسته بندی ها در صفحه اصلی – برنامه نویسی داینامیک


سلام و درود

دوستان گرامی، می خوام دسته بندی هایی که دارای هستند، بصورت خودکار با استایل دلخواهم در صفحه اصلی اضافه و نمایش داده بشن. لطفا راهنمایی کنید یا اگه منبع فارسی و انگلیسی می شناسید معرفی کنید.

سپاس

قبلا از کدهای زیر استفاده می کردم ولی انگار توی ورژن جدید وردپرس جواب نمیده.

php
add_action( 'widgets_init', create_function('', 'return register_widget("hp_recent_posts");') );
class hp_recent_posts extends WP_Widget {
    public function __construct() {
    parent::WP_Widget( false, 'دسته بندی های صفحه اصلی',array('description' => __('نمایش آخرین دسته بندی های هر دسته در صفحه اصلی') ));
	}
    public function widget( $args, $instance ) {
        extract( $args );
        $headline = $instance['headline'];
        $category = $instance['category'];
        $numberposts = $instance['numberposts'];
        echo $before_widget;
        $category_id = get_cat_ID($category);
        $category_url = get_category_link($category_id);
        echo '.$category_url.'">'.$category.'';

		$the_query = new WP_Query(
		array(
			'category_name' => $category,
			'posts_per_page' => $numberposts
			)
		);
		if ( $the_query->have_posts() ) {
			$i =0 ;
			while ( $the_query->have_posts() ) {
				$the_query->the_post(); $i++;
				//echo $ads_price;
				if ($i == 1 ) {
				}
				if ($i == 2 ) {
				}
				if ($i == 3 ) {
				}
				if ($i == 4 ) {
				}
				if ($i == 5 ) {
				}
			}
		wp_reset_postdata();
		}
        echo $after_widget;
    }
    public function update( $new_instance, $old_instance ) {
        $instance = array();
        $instance['headline'] = ( $new_instance['headline'] );
        $instance['category'] = ( $new_instance['category'] );
        $instance['numberposts'] = ( $new_instance['numberposts'] );
        return $instance;
    }
    public function form( $instance ) {
        $headline = $instance[ 'headline' ];
        $category = $instance[ 'category' ];
        $numberposts = $instance[ 'numberposts' ];
		$categories = get_categories(array('type'=>'post','orderby'=> 'name','order'=> 'ASC'));
		$defaults = array( 'numberposts' => 3 );
		$instance = wp_parse_args( (array) $instance, $defaults );
        echo '

'; echo ' $this->get_field_id( 'headline' ) .'">'. _e( 'عنوان : ' ) .''; echo '. $this->get_field_id( 'headline' ) .'" name="'. $this->get_field_name( 'headline' ) .'" type="text" value="'. esc_attr( $headline ) .'" />'; echo '

'
; echo '

'; echo ' $this->get_field_id( 'category' ) .'">'. _e( 'انتخاب دسته بندی : ' ) .''; echo ''; echo '

'
; echo '

'; echo ' $this->get_field_id( 'numberposts' ) .'">'. _e( 'تعداد نوشته‌هایی که نمایش داده می‌شود:' ) .''; echo '. $this->get_field_id( 'numberposts' ) .'" name="'. $this->get_field_name( 'numberposts' ) .'" type="number" value="'. $instance['numberposts'] .'" step="1" min="1" size="3" />'; echo '

'
; } }

 



منبع: وردپرس

نوشته های مشابه

دیدگاهتان را بنویسید

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *

20 − 6 =

دکمه بازگشت به بالا