程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> 網頁編程 >> PHP編程 >> 關於PHP編程 >> 調用WordPress函數統計文章訪問量及PHP原生計數器的實現,

調用WordPress函數統計文章訪問量及PHP原生計數器的實現,

編輯:關於PHP編程

調用WordPress函數統計文章訪問量及PHP原生計數器的實現,


1.首先介紹WordPress的兩款功能強大的插件:

(1)Count per Day 是一個非常強大的訪客數量統計插件,可以統計每天、昨天、每周、每月等等的訪客數量(根據IP進行統計),統計在線訪客數、浏覽器、搜索詞等等,自帶多種調用簡碼、模板標簽以及小工具,方便你自行調用和集成。
(2)StatPressCN,實時顯示blog的訪問統計,完美支持中文(如搜索關鍵字等)。它可以集中顯示來訪者、爬蟲、搜索關鍵字、訂閱統計、浏覽器、操 作系統等信息,方便您及時把握blog的訪問情況,同時還提供了定制輸出、統計權限、信息存儲期等個性化設置選項。另外,您可以隨時掌握blog被訂閱的 情況並把它放在側欄中顯示,還可以獲得所有頁面(包括post、page、archive以及homepage)被訪問的情況,還可以在側欄中顯示 blog中被訪問最多的熱門文章等。 增加了對中國大陸和港台地區的本地化語言支持(目前支持wp-config.php中設置為zh_CN、zh_HK和zh_TW)。
安裝插件的方式固然功能很強大,但是弊端也是顯而易見的——容易影響網頁加載速度,所以我放棄了這種方式。

2.其次,是簡單的幾條代碼,通過統計網頁刷新的次數來記錄訪客數的,把以下代碼放到function.php中:

/* 訪問計數 */
function record_visitors()
{
 if (is_singular())
 {
 global $post;
 $post_ID = $post->ID;
 if($post_ID)
 {
 $post_views = (int)get_post_meta($post_ID, 'views', true);
 if(!update_post_meta($post_ID, 'views', ($post_views+1)))
 {
 add_post_meta($post_ID, 'views', 1, true);
 }
 }
 }
}
add_action('wp_head', 'record_visitors');
 
/// 函數名稱:post_views
/// 函數作用:取得文章的閱讀次數
function post_views($before = '(點擊 ', $after = ' 次)', $echo = 1)
{
 global $post;
 $post_ID = $post->ID;
 $views = (int)get_post_meta($post_ID, 'views', true);
 if ($echo) echo $before, number_format($views), $after;
 else return $views;
}

然後在需要顯示的界面,比如footer.php或header.php等頁面調用:

<?php post_views(' ', ' 次'); ?>

3.PHP原生實現訪問計數器示例:
index.php

<?php
 include("counter.php")
?>

<html>
 <head>
 <title>訪問計數器</title>
 </head>

 <body>
  <center>
  <h1>訪問者計數器</h1>
  <U>                 <!--下劃線-->
  <font size="6" face="隸書" >你是第</font>
  <B>
   <font size="9" face="Verdana" color="#ffcc00">
   <?php Counter() ?>             <!--調用函數-->
   </font>
  </B>
  <font size="6" face="隸書" >個訪問者</font>
  </U>
  </center>
 </body>
</html>

counter.php

<?php
 //$five,$four 等變量表示零的個數,放在數字前邊構成6位
 function Counter()
 {         //定義函數
  $five = "00000";          //聲明變量
  $four = "0000";
  $three = "000";
  $two = "00";
  $one = "0";
  $counter = "record.dat";      //存放訪問數的目的文件,.dat格式
  if(!file_exists($counter))     //判斷文件是否存在
  {
   $counter = fopen($counter,"w");
   fputs($counter,"0");      //寫入文件
   fclose($counter);
  }
  else
  {
   $fp = fopen($counter,"r+");
   $num = fgets($fp,"1024");    //如果文件存在則讀出文件,並加 1
   $num = $num + 1;
   if($num < 10)
    print "$five"."$num";
   elseif($num < 100)
    print "$four"."$num";
   elseif($num < 1000)
    print "$three"."$num";
   elseif($num < 10000)
    print "$two"."$num";
   elseif($num < 100000)
    print "$one"."$num";
   else
    print "$num";
  }
  $fp = fopen($counter,"w");
  fputs($fp,"$num");
  fclose($fp);
 }
?>

2016321150924969.png (622×179)

您可能感興趣的文章:

  • PHP基於cookie與session統計網站訪問量並輸出顯示的方法
  • php實現計數器方法小結
  • 一個自定義位數的php多用戶計數器代碼
  • 一個用php3編寫的簡單計數器
  • php的計數器程序
  • php計數器的設計與實現

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved