knplabs / knp-piwik-client-bundle
此包已被废弃,不再维护。未建议替代包。
Symfony2的Piwik API客户端包。
dev-master
2014-02-28 12:16 UTC
Requires
- php: >=5.3.2
- knplabs/knp-piwik-client: *
- symfony/framework-bundle: >=2.0.0
This package is auto-updated.
Last update: 2022-09-23 13:37:25 UTC
README
此项目不是由KnpLabs积极维护。如果您想接管,请联系我们。
为您的Symfony2项目提供Piwik API支持。
安装
将Knp\PiwikClient添加到vendors
git submodule add git://github.com/KnpLabs/KnpPiwikClient.git vendor/PiwikClient
在autoload.php中指定Knp\PiwikClient
// app/autoload.php
$loader->registerNamespaces(array(
// ...
'Knp\PiwikClient' => __DIR__.'/../vendor/PiwikClient/src',
// ...
));
将Knp\PiwikBundle添加到您的src/Bundle目录
git submodule add git://github.com/KnpLabs/PiwikBundle.git vendor/bundles/Knp/Bundle/PiwikBundle
将KnpPiwikBundle添加到您的应用内核
// app/AppKernel.php
public function registerBundles()
{
$bundles = array(
// ...
new Knp\Bundle\PiwikBundle\KnpPiwikBundle(),
// ...
);
}
配置
HTTP客户端(远程服务器上的Piwik)
# app/config/config.yml
knp_piwik:
connection: piwik.connection.http
url: http://piwik.example.com
token: PIWIK_API_TOKEN
别忘了将Buzz库添加到vendors中用于HTTP请求
git submodule add https://github.com/kriswallsmith/Buzz.git src/vendor/Buzz
并在autoload.php中
// src/autoload.php
$loader->registerNamespaces(array(
// ...
'Buzz' => $vendorDir.'/Buzz/lib',
// ...
));
本地PHP客户端(本地服务器上的Piwik)
# app/config/config_dev.yml
knp_piwik:
connection: piwik.connection.piwik
token: PIWIK_API_TOKEN
您需要在autoload.php中引入Piwik库
// src/autoload.php
// ...
define('PIWIK_ENABLE_DISPATCH', false);
define('PIWIK_ENABLE_ERROR_HANDLER', false);
define('PIWIK_ENABLE_SESSION_START', false);
require_once PIWIK_INCLUDE_PATH . "/index.php";
require_once PIWIK_INCLUDE_PATH . "/core/API/Request.php";
Piwik_FrontController::getInstance()->init();
测试
还有一个名为stub的连接,用于测试
# app/config/config_test.yml
knp_piwik:
connection: piwik.connection.stub
用法
在您的控制器中
$dataArray = $this->get('piwik.client')->
call('API.getReportMetadata', array('idSites' => array(2, 3)));
无处不在
$dataArray = $container->get('piwik.client')->
call('API.getReportMetadata', array('idSites' => array(2, 3)));
API调用
要查看所有可用方法及其参数,请访问Piwik API参考。
版权
PiwikClient版权(c)2011 KnpLabs http://KnpLabs.com。有关详细信息,请参阅LICENSE。