It's hard to write a good developer documentation. Examples are easier to understand and to maintain. We will write a number of plugins, that each uses one feature of Piwik:
Then we would:
Examples of other open source project plugin documentation
* writing a plugin http://codex.wordpress.org/Writing_a_Plugin
* plugin api http://codex.wordpress.org/Plugin_API
* mediawiki plugin hooks http://www.mediawiki.org/wiki/Manual:Hooks
Ideas of simple useful plugins
* content loaded from piwik.org via highly cached proxy pages
* if piwik.org is down, should not affect loading time of dashboard
* have one widget for general purpose content (Piwik has been downloaded X times)
I added two new widgets in changeset 2958
They demonstrate simple database queries and a remote API call to demo.piwik.org (via jquery ajax request). Both widgets use templates.
greg: You forgot to check in the en.php - both widgets appear but their translations are missing.
We should also have the documentation point to ExampleUI plugin
It would be nice to document how plugins can create new sections in the config file.
Something like this (but finding a way not to call the __destruct would be better)
$config = Zend_Registry::get('config'); $config->MobileAnalytics = array("TeraWurflURL"=>"unconfigured"); $config->__destruct(); Piwik::createConfigObject(); I'm not sure why it wasn't working before, but this works great now. Result: [MobileAnalytics] TeraWurflURL = "unconfigured"
Agree. Planning a cleaner config writer should already be in #1713.
Also, while writing dev doc, I recommend going through the config.ini.php settings to find out which ones could be of interest to the Piwik plugin developer (I'm thinking eg. disable_merged_assets, track_visits_inside_piwik_ui, alwaysarchive* etc.)
The new general layout of the documentation is now in place (piwik.org/docs).
Plugin guides are part of the new organization but are yet to be written. The proposed list is :
Adding a widget
Use Smarty templates
Accessing the database
Editing the menu
Using Piwik's API
Recording new Data
Adding options in config.ini
Should include guide :
Internationalization and localization
See forum post
Mostly we have such simple plugins now. The docs are still missing but will be covered in separate plugin. For latest docs on plugin development see: http://new.piwik.org/docs/plugins/