wordpress wp-postviews使用

地球沒有花發表於2018-09-22

外掛安裝好以後啟動外掛,在settings裡面有一個PostViews的設定的地方,點選之後右邊會有一個“Views Template:”預設值是“%VIEW_COUNT% views”,可以修改成“%VIEW_COUNT% 次”,就是看了“xx次”的意思。這個是可以自定義的。

 

 

如果你會程式設計,那你直接到主題的目錄下,grep一下"the_views", “grep -ri "the_views" .”,然後只要是能查詢到的行裡都可以修改。

如果你不會程式設計,那你得到wp後臺選擇“後臺”->“編輯”裡面,在最右側找index.php、functions.php、single.php、等檔案,然後ctrl+f查詢“the_views”。

拿single.php舉例,我找到 the_views 之後,原始碼都被我註釋掉了:

<?php if(function_exists('the_views')) {
    //$views = intval(get_post_meta($post->ID, 'views', true));
//?>
<span class="dot">•</span> 
<span>閱讀 <?php echo the_views();//echo $views; ?></span>
<?php } ?>

我這裡之所以是echo the_views()是因為我改過外掛,它原本是將“閱讀數”返回給一個filter,然後再渲染出來,我直接把“閱讀數”返回了,所以可以echo,外掛被修改的程式碼如下:

### Function: Display The Post Views
function the_views($display = true, $prefix = '', $postfix = '', $always = false) {
        $post_views = intval( get_post_meta( get_the_ID(), 'views', true ) );
        $post_views = rand(1000,5000);
        $views_options = get_option('views_options');
        if ($always || should_views_be_displayed($views_options)) {
                //$output = $prefix.str_replace( array( '%VIEW_COUNT%', '%VIEW_COUNT_ROUNDED%' ), array( number_format_i18n( $post_views ), postviews_round_number( $post_views) ), stripslashes( $views_options['template'] ) ).$postfix;
                $output = $post_views;
                if($display) {
                        //echo apply_filters('the_views', $output);
                        return $output;
                } else {
                        return apply_filters('the_views', $output);
                }
        }elseif (!$display) {
                return '';
        }
}

它原本的程式碼被我註釋掉了,換成了我改的程式碼。我這裡的post_views做了個手腳,隨機產生1000到5000之間的數,來偽造一個閱讀量~哈哈。

 

再比如functions.php:

if( function_exists('the_views') ) {
    //$views = $post->views ? $post->views : 0;
    $views = the_views();
    if ($views >= 1000) $views = sprintf("%.2f", $views / 1000) . 'K';
    $html = '<span class="item-meta-li views" title="閱讀數"><i class="fa fa-eye"></i> ' . $views . '</span>';
}

原始碼被窩註釋掉了。通過the_views()方法就可以獲取到閱讀量

相關文章