WP PostViews外掛程式顯示設定時間內熱門文章

2022-09-27 11:15:11 字數 3179 閱讀 1446

不知道出於什麼原因,1.30後的wp-postviews外掛程式取消了原先存在的get_timespan_most_viewed函式,這也是最近在網上得知的,因為最近有心情修改主題、外掛程式,發現小子的部落格上面這個外掛程式提供的小工具在邊欄的顯示內容幾個月都不怎麼變,原因很簡單,設定的是瀏覽最多的文章,自然多的越來越多了,於是想修改下顯示設定,很遺憾後台沒有相關設定,雖然有最近的,但是好像還不是我要的結果。

google一陣子才知道原先這個外掛程式有這個功能的,現在沒有了,但是有人在網上共享了之前的函式,這樣就簡單多了。把以下函式複製到wp-postviews.php檔案的任意地方(當然是要合適點的任意地方,不要放其他函式中間就ok了)。

function get_timespan_most_viewed($mode = '', $limit = 20, $days = 1, $display = true) else

$most_viewed = $wpdb->get_results("select distinct $wpdb->posts.*, (meta_value+0) as views from $wpdb->posts left join $wpdb->postmeta on $wpdb->pospaskvtmeta.post_id = $wpdb->posts.id where post_date < '".current_time('mysql')."' and post_date > '".$limit_date."' and $where and post_status = 'publish' and meta_key = 'views' and post_password = '' order  by views desc limit $limit");

if($most_viewed)

} else

if($display) else

}單單的放上以上語句其實還是不行的,雖然很多部落格說可以,可能都是認為寫部落格的都懂語言吧?雖然我也能改,但小子覺得這個對於那些不懂php為何物的新手來說,真的是難上加難啊。

這裡小子為了大家方便就整理了下,為大家分享。

很簡單,開啟wp-postviews.php檔案在### function: display least viewed page/post或者其他的函式上面貼上以上函式,再次說明,函式新增位置隨意,但是盡量與其他業務函式放到一起,便於分析嘛!之後的操作就是再小工具的選項statist type中新增get_timespan_most_viewed選項,這個直接在wp-postviews.php檔案中搜尋statistics type,你可以看到

>< ?php _e('least viewed', 'wp-postviews'); ?>或者其他選項的內容,複製一行,貼上到上面或者下面(當然也可以是中間),然後將以上語句中least_viewed或者其他的你複製的語句中的值,修改為get_timespan_most_viewed,這樣就完成了後台操作,不過目前選擇這個選項後邊欄是無顯示的,因為輸出的地方還要改進,下一步同樣是在wp-postviews.php檔案中操作,搜尋class wp_widget_postviews,在function widget函式中找到switch語句,其中應該有四個轉向,形如

case 'least_viewed':

get_least_viewed($mode, $limit, $chars);

break;不用想,重新複製乙份,貼上到並列的位置,將least_viewed修改為get_timespan_most_viewed,這樣,回到首頁重新整理下,顯示效果應該是一天熱門的,因為是函式預設的(原函式是預設30天,小子設定為1天了),這裡沒有在後台新增選項,有需要可以自己需求修改函式體內資料即可。

另外,還有一點就是,上面提供的get_timespan_most_viewed函式是舊版本中的函式,不支援目前新版的輸出格式化等,這裡小子又根據新的變數定義整理了如下函式,需要的可以直接複製替換上面提供的get_timespan_most_viewed函式來使用,函式體如下

$where = "post_type = '$mode'";

} else

$most_viewed = $wpdb->get_results("select distinct $wpdb->posts.*, (meta_value+0) as views from $wpdb->posts left join $wpdb->postmeta on $wpdb->postmeta.post_id = $wpdb->posts.id where post_date < '".current_time('mysql')."' and post_date > '".$limit_date."' and $where and post_status = 'publish' and meta_key = 'views' and post_password = '' order  by views desc limit $lim程式設計客棧it");

if($most_viewed)

$post_excerpt = views_post_excerpt($post->post_excerpt, $post->post_content, $post->post_password, $chars);

$temp = stripslashes($views_options['most_viewed_template']);

$temp = str_replace("%view_count%", number_format_i18n($post_views), $temp);

$temp = str_replace("%po程式設計客棧st_title%", $post_title, $temp);

$temp = str_replace("%post_excerpt%", $post_excerpt, $temp);

$temp = str_replace("%post_content%", $post->post_content, $temp);

$temp = str_replace("%post_url%", get_permalink($post), $temp);

$output .= $temp;

}} else

if($display) else

}}如函式引數所示,設定天數的地方已經用注釋標註了,這裡仍然不再提供面板設定的選項了,需要的朋友可以自己折騰,小子在除錯的時候可能因為當日訪問量過低,設定1天不能實現預期的顯示效果,就設定回30天了,大家可以根據需要設定。

固定鏈結:

本文位址: /news/exp/44381.html

WP PostViews瀏覽次數統計外掛程式使用詳解

wp postviews是一款很受歡迎的文章瀏覽次數統計外掛程式,記錄每篇文章展示次數 根據展示次數顯示歷史最熱或最衰的文章排行 展示範圍可以是全部文章和頁面,也可以是某些目錄下的文章和頁面。本文還介紹了一些隱藏的功能,例如按照文章次數排序全站文章的功能。使用方法 啟用外掛程式後,後台會出現乙個新的...

文字內容過長顯示外掛程式

文字內容過長顯示外掛程式 滑鼠放上去的時候就會整條浮動顯示,沒有放上去的時候就縮略顯示 一行顯示 多行顯示 時間小,占用面積大 滑鼠放上去的時候就會 led屏滾動顯示,沒有放上去的時候就縮略顯示 只能一行顯示 時間長,占用面積小 param options fn.textcontentoverlen...

Eclipse安裝外掛程式不顯示

重灌eclipse 暴力有效 把eclipse安裝目錄下的configuration org.eclipse.update和runtime的目錄整個刪除,重啟eclipse。org.eclipse.update 資料夾下記錄了外掛程式的歷史更新情況,它只記憶了以前的外掛程式更新情況,而新安裝的外掛程...