diff options
author | Andrew Manning <tamanning@zoho.com> | 2016-08-30 06:14:22 -0400 |
---|---|---|
committer | Andrew Manning <tamanning@zoho.com> | 2016-08-30 06:14:22 -0400 |
commit | ad5c93d6738d705b9ca196cc7481c26a3a9b9962 (patch) | |
tree | ca090d4dcb461dc46ba79d726c39cda388deeef6 /doc/Plugins.md | |
parent | b05474fc30cad393bd4fbf244d2afbbbe2e5f86e (diff) | |
parent | 202b757bc46d17b324f79751ce754e16ba737386 (diff) | |
download | volse-hubzilla-ad5c93d6738d705b9ca196cc7481c26a3a9b9962.tar.gz volse-hubzilla-ad5c93d6738d705b9ca196cc7481c26a3a9b9962.tar.bz2 volse-hubzilla-ad5c93d6738d705b9ca196cc7481c26a3a9b9962.zip |
Merge remote-tracking branch 'upstream/dev' into website-export
Diffstat (limited to 'doc/Plugins.md')
-rw-r--r-- | doc/Plugins.md | 12 |
1 files changed, 6 insertions, 6 deletions
diff --git a/doc/Plugins.md b/doc/Plugins.md index 90ff0fb7d..88b42185b 100644 --- a/doc/Plugins.md +++ b/doc/Plugins.md @@ -1,9 +1,9 @@ -Creating Plugins/Addons for the $Projectname +Creating Plugins/Addons for $Projectname ========================================== -So you want to make the $Projectname do something it doesn't already do. There are lots of ways. But let's learn how to write a plugin or addon. +So you want to make $Projectname do something it doesn't already do. There are lots of ways. But let's learn how to write a plugin or addon. In your $Projectname folder/directory, you will probably see a sub-directory called 'addon'. If you don't have one already, go ahead and create it. @@ -49,7 +49,7 @@ In our case, we'll call them randplace_load() and randplace_unload(), as that is * pluginname_uninstall() -Next we'll talk about **hooks**. Hooks are places in the $Projectname code where we allow plugins to do stuff. There are a [lot of these](help/Hooks), and they each have a name. What we normally do is use the pluginname_load() function to register a "handler function" for any hooks you are interested in. Then when any of these hooks are triggered, your code will be called. +Next we'll talk about **hooks**. Hooks are places in $Projectname code where we allow plugins to do stuff. There are a [lot of these](help/Hooks), and they each have a name. What we normally do is use the pluginname_load() function to register a "handler function" for any hooks you are interested in. Then when any of these hooks are triggered, your code will be called. We register hook handlers with the 'register_hook()' function. It takes 3 arguments. The first is the hook we wish to catch, the second is the filename of the file to find our handler function (relative to the base of your $Projectname installation), and the third is the function name of your handler function. So let's create our randplace_load() function right now. @@ -246,18 +246,18 @@ we will create an argc/argv list for use by your module functions ***Porting Friendica Plugins*** -The $Projectname uses a similar plugin architecture to the Friendica project. The authentication, identity, and permissions systems are completely different. Many Friendica can be ported reasonably easily by renaming a few functions - and then ensuring that the permissions model is adhered to. The functions which need to be renamed are: +$Projectname uses a similar plugin architecture to the Friendica project. The authentication, identity, and permissions systems are completely different. Many Friendica plugins can be ported reasonably easily by renaming a few functions - and then ensuring that the permissions model is adhered to. The functions which need to be renamed are: * Friendica's pluginname_install() is pluginname_load() * Friendica's pluginname_uninstall() is pluginname_unload() -The $Projectname has _install and _uninstall functions but these are used differently. +$Projectname has _install and _uninstall functions but these are used differently. * Friendica's "plugin_settings" hook is called "feature_settings" * Friendica's "plugin_settings_post" hook is called "feature_settings_post" -Changing these will often allow your plugin to function, but please double check all your permission and identity code because the concepts behind it are completely different in the $Projectname. Many structured data names (especially DB schema columns) are also quite different. +Changing these will often allow your plugin to function, but please double check all your permission and identity code because the concepts behind it are completely different in $Projectname. Many structured data names (especially DB schema columns) are also quite different. #include doc/macros/main_footer.bb; |