eye

نمایش تعداد بازدید نوشته در وردپرس

قبلا افزونه ای به نام WP Post Views وجود دارد که آمار دفعال بازدید نوشته ها رو نمایش میدهد و حالی خود وردپرسی کدی وجود دارد که بدون افزونه آن پیاده سازی کرد.

 

۱. ایجاد جدول بازدید در دیتابیس (این کد بازدیدهای نوشته را در دیتابیس ذخیره می کند)

 

کد زیر در funcions.php قرار می دهید.

 

function set_post_view_custom_field() {
    if ( is_single() ) {
        global $post;
        $post_id = $post->ID;
        $count = 1;
        $post_view_count = get_post_meta( $post_id, 'post_view_count', true );
        if ( $post_view_count ) {
            $count = $post_view_count + 1;
        }
        update_post_meta( $post_id, 'post_view_count', $count );
    }
}
add_action( 'wp_head', 'set_post_view_custom_field' );

 

کد بالا post_view_count در جدول meta_key ایجاد و مقدار بازدید آن در meta_value ذخیره و نمایش میده که در بخش جدول wp_postmeta قرار دارد.

۲. نمایش تعداد بازدید در بخش نوشته های وردپرس در میزکار وردپرس

 

کد زیر یک ستون سفارشی به نام تعداد بازدید در بخش نوشته های وردپرس اضافه می شود.

 

function add_post_view_count_column( $columns ) {
    if( is_array( $columns ) && ! isset( $columns['post_view_count'] ) )
        $columns[ 'post_view_count' ] = 'تعداد بازدید';
    return $columns;
}
add_filter( 'manage_posts_columns', 'add_post_view_count_column' );

 

و در آخر فراخوانی ستون تعداد بازدید با تابع get_post_meta از دیتابیس است.

 

function set_post_view_count_column( $column_name, $post_ID ) {
    if ( $column_name == 'post_view_count' ) {
        $count = get_post_meta( $post_ID, 'post_view_count', true );
        echo $count ? $count : 0;
    }
}
add_action( 'manage_posts_custom_column', 'set_post_view_count_column', 10, 2);

 

عکس زیر:

eye1

 

۳. نمایش تعداد بازدیدهای نوشته در پوسته وردپرس

 

کد زیر در فایل functions.php قرار دهید:

 

function get_post_view_count( $post_id ){
    return get_post_meta( $post_id, 'post_view_count', true );
}

 

در آخر با استفاده از تابع زیر در هر جای پوسته وردپرس فراخوانی می کنیم.

 

<?php
  if ( function_exists( 'get_post_view_count' ) ) {
     echo get_post_view_count( get_the_ID() ) . ' بازدید ';
  }
?>

 

همین طور در تعداد بازدید نوشته رو مشاهده می کنید.

21/11/07 129 بازدید 0 42

, , , , ,

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

نشانی ایمیل شما منتشر نخواهد شد.