X-Git-Url: https://git.immae.eu/?a=blobdiff_plain;f=doc%2Fmd%2FPlugin-System.md;h=7a5ba23d2b3888f68280ce3d86af865e6d825e8f;hb=8f6202deb0cbf58dd18bf0523c81fd24851e3b6c;hp=9b0d3a7db5acf08a6caeb0bf1cff1a4b9af759bd;hpb=cf01113cad2fc772113b5d1b7cd5be5e712ae0eb;p=github%2Fshaarli%2FShaarli.git diff --git a/doc/md/Plugin-System.md b/doc/md/Plugin-System.md index 9b0d3a7d..7a5ba23d 100644 --- a/doc/md/Plugin-System.md +++ b/doc/md/Plugin-System.md @@ -18,7 +18,7 @@ The plugin system let you: First, chose a plugin name, such as `demo_plugin`. -Under `plugin` folder, create a folder named with your plugin name. Then create a .php file in that folder. +Under `plugin` folder, create a folder named with your plugin name. Then create a .meta file and a .php file in that folder. You should have the following tree view: @@ -26,17 +26,20 @@ You should have the following tree view: | index.php | plugins/ |---| demo_plugin/ +| |---| demo_plugin.meta | |---| demo_plugin.php ``` ### Plugin initialization -At the beginning of Shaarli execution, all enabled plugins are loaded. At this point, the plugin system looks for an `init()` function to execute and run it if it exists. This function must be named this way, and takes the `ConfigManager` as parameter. +At the beginning of Shaarli execution, all enabled plugins are loaded. At this point, the plugin system looks for an `init()` function in the .php to execute and run it if it exists. This function must be named this way, and takes the `ConfigManager` as parameter. _init($conf) This function can be used to create initial data, load default settings, etc. But also to set *plugin errors*. If the initialization function returns an array of strings, they will be understand as errors, and displayed in the header to logged in users. +The plugin system also looks for a `description` variable in the .meta file, to be displayed in the plugin administration page. + ### Understanding hooks A plugin is a set of functions. Each function will be triggered by the plugin system at certain point in Shaarli execution.