西西軟件園多重安全檢測(cè)下載網(wǎng)站、值得信賴的軟件下載站!
西西首頁 電腦軟件 安卓軟件 電腦游戲 安卓游戲 排行榜 專題合集

Piwik網(wǎng)站統(tǒng)計(jì)平臺(tái)

V2.15.0免費(fèi)版
  • Piwik網(wǎng)站統(tǒng)計(jì)平臺(tái)V2.15.0免費(fèi)版
  • 軟件大小:15.6M
  • 更新時(shí)間:2015-10-26 10:26
  • 軟件語言:英文
  • 軟件廠商:
  • 軟件類別:國(guó)外軟件 / 免費(fèi)軟件 / 源碼相關(guān)
  • 軟件等級(jí):4級(jí)
  • 應(yīng)用平臺(tái):WinAll
  • 官方網(wǎng)站:http://piwik.org/
  • 應(yīng)用備案:
好評(píng):50%
壞評(píng):50%

本類精品

軟件介紹

Piwik網(wǎng)站統(tǒng)計(jì)平臺(tái)是一套基于PHP5+MySQL技術(shù)構(gòu)建的開源網(wǎng)站訪問統(tǒng)計(jì)系統(tǒng),前身是phpMyVisites。Piwik可以給你詳細(xì)的統(tǒng)計(jì)信息,比如網(wǎng)頁瀏覽人數(shù),訪問最多的頁面,搜索引擎關(guān)鍵詞等等流量分析功能。此外,它還采用了插件擴(kuò)展及開放API架構(gòu),可以讓用戶根據(jù) 自已的實(shí)際需求創(chuàng)建更多的功能。

軟件說明

最近為了給自己的web系統(tǒng)添加一個(gè)運(yùn)營(yíng)數(shù)據(jù)分析和展示的功能,本打算自己純手工打造,但是發(fā)現(xiàn)成本太高,時(shí)間和精力方面不允許。在網(wǎng)上查閱了一些資料,發(fā)現(xiàn)目前有許多開源的web數(shù)據(jù)分析系統(tǒng),所以拿來主意,決定找一個(gè)合適的開源web分析工具。最終選擇了piwik,理由如下:

Piwik采用LAMP開發(fā),我的系統(tǒng)也是,所以可以復(fù)用運(yùn)營(yíng)環(huán)境。

Piwik的架構(gòu)設(shè)計(jì)比較通用,可以開發(fā)插件進(jìn)行擴(kuò)展。

Piwik的數(shù)據(jù)顯示比較強(qiáng)大,至少看上去如此。例如有曲線圖,直方圖,餅圖,標(biāo)簽云等等。插件可以通過拖拽的方式任意布置。

開源,免費(fèi),并且有相對(duì)完整的文檔。

經(jīng)過了一段時(shí)間的摸索,我終于將開發(fā)插件的流程梳理清楚了,記錄于此,作為備忘。目前使用的Piwik是當(dāng)前最新版本,這點(diǎn)很重要。Piwik的部分接口不向前兼容,以至于很多基于早期版本開發(fā)的插件在當(dāng)前版本無法使用。本文的主要內(nèi)容如下:

Piwik工作原理

安裝部署Piwik

安裝Piwik插件

Piwik插件結(jié)構(gòu)

Hello World,你懂的!

Piwik模版

Piwik圖形視圖

待了解的地方 ……

工作原理

Piwik是一個(gè)web系統(tǒng),主要用于web運(yùn)營(yíng)分析。它會(huì)部署在你自己的apache和mysql中,這樣運(yùn)營(yíng)數(shù)據(jù)都在你自己的服務(wù)器里!安裝好Piwik后,它會(huì)提供一段js代碼,你只需要將這些代碼嵌入到你web中的每個(gè)網(wǎng)頁中(如果你的系統(tǒng)是用模版開發(fā)的,具有相同的footer模版,那么這里最適合放入這段代碼),那么每當(dāng)這些網(wǎng)頁被訪問時(shí),這些數(shù)據(jù)就會(huì)傳回給Piwik服務(wù)器。這里會(huì)有個(gè)問題,由于數(shù)據(jù)收集代碼放在html中,那么異步請(qǐng)求無法被統(tǒng)計(jì)到,因?yàn)檫@些請(qǐng)求不會(huì)返回完整的頁面,而是部分頁面或數(shù)據(jù)。不要緊,piwik提供web日志分析的功能(具體配置見這里),這樣就可以統(tǒng)計(jì)出所有的訪問數(shù)據(jù)。

使用說明

安裝部署Piwik

安裝Piwik的確很簡(jiǎn)單:下載開發(fā)包,解壓到apahce服務(wù)器web根目錄,配置piwik。Piwik在第一次訪問時(shí),提供了一個(gè)非常簡(jiǎn)介的安裝向?qū),指?dǎo)你一步一步的配置好piwik,具體步驟見這里。

安裝Piwik插件

插件的安裝也很簡(jiǎn)單,只需要將插件拷貝到piwik_src/plugins目錄下面,然后去piwik配置頁面啟用插件。具體步驟,參見這里。

Piwik插件結(jié)構(gòu)

Piwik源代碼目錄下的plugins目錄中是Piwik官方插件,其實(shí)官方插件是最好的學(xué)習(xí)參考。要?jiǎng)?chuàng)建你自己的第一個(gè)插件,首先需要給插件取一個(gè)響亮的名稱,這里就姑且稱之為“BourneliPlugin”吧!然后創(chuàng)建目錄piwik_src/plugins/BourneliPlugin。接下來,需要在此目錄下,創(chuàng)建兩個(gè)比較重要的文件:

BourneliPlugin.php:定義插件的基本信息、插件的位置

Controller.php:插件的CGI方法,可以理解為Web MVC模式中的Controller,Piwik框架會(huì)將插件相關(guān)的Url映射到Controller.php中的方法。

Hello World,你懂的!

按照上面的目錄結(jié)構(gòu),你的第一個(gè)插件的基本骨架就搭建成功了,現(xiàn)在我們來寫點(diǎn)什么,實(shí)現(xiàn)我們的第一個(gè)“Hello World”吧。先看看BourneliPlugin.php代碼,如下:

上面的代碼主要定義的插件的基本信息和插件掛接的位置,需要注意一下幾點(diǎn):

類的名稱必須是Piwik_BourneliPlugin并且繼承類Piwik_Plugin。聰明的你可能已經(jīng)發(fā)現(xiàn)類名的規(guī)律:Piwik_<YourPluginName>(大小寫不敏感)。確實(shí),<YourPluginName>代表插件目錄和插件文件的名稱。如果不按照這個(gè)約定,piwik是無法找到插件。

需要實(shí)現(xiàn)getInformation函數(shù),此函數(shù)返回插件描述信息,方便在Piwik的插件管理器中找到我們的插件。

實(shí)現(xiàn)postLoad方法,在此方法中掛接插件。此方法有四個(gè)參數(shù),分別是,widgetCategory,widgetName,ControllerName和ControllerAction,前面兩個(gè)主要是顯示作用,用于在主界面的widget管理器中找到你的插件。第三個(gè)方法是控制器方法,對(duì)應(yīng)Controller.php中的類,第四個(gè)參數(shù)是第三個(gè)參數(shù)對(duì)應(yīng)類中的具體方法,用于響應(yīng)用戶的請(qǐng)求。

接下來看看Controller.php中的代碼:

對(duì),你沒有看錯(cuò),Controller.php中的代碼就是這么簡(jiǎn)單!需要注意一下幾點(diǎn)

類的名稱遵循這個(gè)規(guī)律:Piwik_<YourPluginName>_Controller,否則Piwik_AddWidget的第三個(gè)參數(shù)無法找到對(duì)應(yīng)類。

類繼承Piwik_Controller類

helloWorld方法對(duì)應(yīng)Piwik_AddWidget函數(shù)的第四個(gè)參數(shù),輸出將直接顯示在widget的面板中。

OK,寫完了代碼,現(xiàn)在可以將BourneliPlugin整個(gè)目錄拷貝到piwik_src/plugins目錄下,看看效果了。

首先,進(jìn)入插件管理頁面,如下圖:

對(duì)應(yīng)導(dǎo)航:setting à Plugings à BourneliPlugin。可以看到description這一欄中顯示的文本就是在getInformation函數(shù)中對(duì)應(yīng)的字段輸出的信息。點(diǎn)擊最右邊的“Active”,啟用插件(否則不會(huì)出現(xiàn)在widget面板中)。

接下來,去widget面板中打開我們的“hello world”插件。如下圖:

可以看到Piwik_AddWidget函數(shù)中的第一個(gè)和第二個(gè)參數(shù)出現(xiàn)在哪里?最后點(diǎn)擊“hello world”,可以到我們的插件出現(xiàn)在Dashboard中,如下圖:

Piwik模版

使用PHP開發(fā)web,一般都會(huì)使用模版機(jī)制,這樣可以將view和model分開。Piwik也提供模版功能,Piwik沒有自己造車,而是直接使用了smarty模版庫,所以使用過smarty的同學(xué)一定不會(huì)陌生。即時(shí)沒有使用過,smarty的官方文檔比較完備,可以網(wǎng)上搜索查閱。接下來演示一個(gè)例子,看看如何在插件中使用模版。首先,在BournliPlugin目錄下添加一個(gè)templates目錄,并且在templates目錄中添加文件myTpl.tpl,內(nèi)容如下:

(寫這篇文章的時(shí)候天氣真的很糟。

然后在Controller.php中添加下面的代碼(前面例子中出現(xiàn)的代碼備省略了):

添加的函數(shù)是一個(gè)新的插件函數(shù),用于模版調(diào)用,可以看到第一行使用Piwik的視圖工廠,加載一個(gè)視圖對(duì)象,并將此對(duì)象與模版綁定。然后直接將字符串“okkkkkkkkkkkkkk”賦值給模版中的變量myString,最后渲染并輸出。

還沒完,雖然寫了這個(gè)函數(shù),但是沒有將其掛接到Piwik的widget面板中(即時(shí)不掛接面板,也可以訪問,有興趣的讀者可以通過抓包看看如何訪問),在BourneliPlugin.php中添加下面的代碼:

為了突出重點(diǎn),前面相同的代碼已經(jīng)省略。我們來看看效果,如下:

Piwik圖形視圖

Piwik內(nèi)置了一些圖形視圖,比如趨勢(shì)圖,直方圖,餅圖,云圖等。并且提供了十分簡(jiǎn)單的API供我們調(diào)用,我們所做的只是提供數(shù)據(jù)。先來看看幾種圖形:

感覺是不是很拉風(fēng)!使用上面的功能很簡(jiǎn)單,可以通過Piwik_src/plugins/ExampleUI這個(gè)插件來了解具體的使用,此插件專門用作demo。我在這里簡(jiǎn)要說名一下步驟:

首先在BourneliPlugin目錄下創(chuàng)建名為API.php的文件,在此文件中創(chuàng)建名為Piwik_BourneliPlugin_API的類,命名規(guī)則為Piwik_YourPluginName_API。需要注意,此類必須實(shí)現(xiàn)單一模式。

Piwik_BourneliPlugin_API中的方法主要是用于獲取數(shù)據(jù)并將你的數(shù)據(jù)填充到名為Piwik_DataTable的容器中,該類是Piwik自定義類,用于統(tǒng)一數(shù)據(jù)格式。

最后在Controller中的CGI方法中將對(duì)應(yīng)視圖與API中的數(shù)據(jù)提供方法鏈接起來,就可以完成數(shù)據(jù)展示了。

這里提供實(shí)驗(yàn)的完整例子,讀者也可以查看Piwik官方提供的ExampleUI這個(gè)例子中的源代碼,相信會(huì)更好,因?yàn)楸救艘彩菂⒄者@個(gè)例子完成實(shí)驗(yàn)的。同時(shí),不要忘記直接查看Piwik的源代碼,這樣會(huì)更直接。

運(yùn)行環(huán)境:PHP


其他版本下載

發(fā)表評(píng)論

昵稱:
表情: 高興 可 汗 我不要 害羞 好 下下下 送花 屎 親親
查看所有(0)條評(píng)論 > 字?jǐn)?shù): 0/500

TOP
軟件下載