=>
developing dynamic documentation for WordPress plugins, APIs and hooks.
With some live demonstration and using real examples drawn from my experiences this talk will attempt to explain how I’ve gone about developing, documenting, delivering and supporting the [loik] suite of [wp] plugins.
Also, if you ever want to provide some PHP code for others to cut and paste then take a look at var_export().
GeSHI – Generic Syntax Highlighting is nice to have… but WIBNI you had a little more.
About me
Owner of Bobbing Wide and the creator of oik-plugins – lazy smart shortcodes and NOW, WordPress themes.
This page was built almost entirely from oik shortcodes.
@herb_miller @bobbingwide @oik-plugins
custom post types and custom fields
About WordPress
Size of the problem
If I remember I’ll tell you what each of the balls represents later on.
For more Animusic see http://www.youtube.com/watch?v=vfQijIjXHN8
- name
- noderef to plugin
- sourcefile
- calls – noderef to APIs that it calls – multiple links
- hooks – noderef to action & filter hooks – multiple links
My development environment
I only used a tiny subset of the phpDocumentor2 code. And I had to make it work on PHP 5.2. So I needed to de-namespace it.
My code doesn’t detect callbacks, can’t handle dynamically generated hook names or dynamically generated API names.
Nor does it handle OO or “immediately executed” code.
The problems I am trying to solve
Performance: so what bothers you?
I’ve been developing the i18n, l18n versions of my oik-plugins and have counted the number of translations performed to display the [wp] login page.
So in the video each ball represented a string being translated?
http://en.wikipedia.org/wiki/PHPDoc
Doing it wrong alert – hyphens being converted to HTML entity Also note that I have slightly altered the “long description” so it fits on one line. 🙂
Targets achieved?
I have found x instances of doing it wrong, fixed y problems and found z things to add to my TODO list.
WordPress provides some amazingly powerful APIs, e.g. get_posts(). I expose the parameters to some seemingly innocent looking shortcodes.
Questions?
Asking questions is good. The answer might not be the one you want to hear. But it may help you determine what the right answer should be.
Performance – conclusion
If you think the terminology is confusing then, don’t worry, you’re not alone. If it hasn’t helped you then that’s a shame; it’s helped me!
Another DIW – I really should look into [bw_plug name=footables]
Summary