1. Cesar D. Rodas
www.cesarodas.com
Centro Nacional de Computacion
Campus UNA – 2160
San Lorenzo - Paraguay
Extending Wordpress
CONAPHP 2008
` São Paulo - Brazil
2. Milestone
Who am I?
Why Wordpress?
Extending it.
Writing a Plugin.
Talk is cheap!... show me the code
Which license should you use?
`
2
3. Who am I?
PHP coder!
I am from Paraguay.
Lucky man
Google Summer of Code 2008
PHP Innovation Award 2007 winner
More info available at www.cesarodas.com
`
3
4. Why Wordpress?
IMHO the most popular open source blog system.
Interesting for developers:
Simple but powerful design.
Easy to extend.
Can be used as a framework.
“Themes” are separated.
`
4
5. Extending it
Work directly with the core.
Fix bugs
Improved core (better cache support, improved search
engine,an so on).
Writing plug-ins
Anything you can figure out.
Create Themes.
Raw HTML
Smarty Template
`
5
6. Writing a Plugin
Get a good Idea
Providing information to WP.
Understanding hooking.
What License it sould be used?
`
6
7. Providing Information to WP.
<?php
/*
Plugin Name: Foo bar Plug in
Plugin URI: http://foobar.org/
Description: Does some foo bar on your blog
Version: 1.0
Author: Cesar Rodas
Author URI: http://cesar.la/
*/
?>
`
7
9. Live example
WP-Storage: Simple plug-in to upload files to third parties file
servers such as YouTube and Amazon S3. The plug-in its
self have plugins to support in a near future more “file
servers”.
It was my Google Summer of Code 2008 Project.
Lets see it.
`
9
10. What License it should be?
IHMO if the plugin is not a derivated work, and doesn't
modify anything in the WP core, it could have any license.
You can use WP as framework, and “sell” it, and it will still
will be software if you give “freedom” to your customer.
`
10
11. Conclusions
Wordpress is much more than a simple blog
system. This talk attempts to show some
sides not very exploited (sometimes) by the
developers.
By the same to encourage people to
contritube to the WP project (and GSOC
2009 is your oportunity)
`
11
12. More information
Wordpress API http://codex.wordpress.org/Plugin_API
List of WP Actions
http://codex.wordpress.org/Plugin_API/Action_Reference
List of WP Filters
http://codex.wordpress.org/Plugin_API/Filter_Reference
`
12