- standardize page names, rework documentation structure, update TOC - use same example paths everywhere - level 1 titles on all pages - fix broken links - .md suffix on all page links (works both from readthedocs and github repository views) **Server:** A full and concise installation guide with examples is a frequent request. The documentation should provide such a guide for basic installation needs, while explaining alternative/advanced configuration at the end. Links to reference guides and documentation should be used more frequently to avoid recommending an outdated or excessively complex configuration. - server: move most server-related info to server-configuration.md, cleanup/shorten - server: update list of php dependencies/libraries, link to composer.json - server: installation: support 3 install methods (from release zip, from sources, using docker) - server: installation: use rsync instead of mv as mv results will change depending of taget directory already existing or not - server: add example/basic usage of certbot - server, upgrade, installation: update file permissions setup, use sudo for upgrade operations in webserver document root - server: apache: add comments to configuration, fix and factorize file permissions setup, set cache-control header, deny access to dotfiles, add missing apache config steps, add http->https redirect example - server: nginx: refactor nginx configuration, add comments, DO log access to denied/protected files - server: add links to MDN for x-forwarded-* http headers explanation, cleanup/clarify robots.txt and crawlers section - server: bump file upload size limit to 100MB we have reports of bookmark exports weighing +40MB - i have a 13MB one here - server: simplify phpinfo documentation - server: move backup and restore information to dedicated page - docker: move all docker docs to Docker.md, simplify/ docker setup, add docker-compose.yml example, replace docker-101 with docker cheatsheet - troubleshooting: move all troubleshooting documentation to troubleshooting.md **Usage:** - index: add getting started section on index page - features/usage: move all usage-related documentation to usage.md, add links from the main feature list to corresponding usage docs, clarify/reword features list - shaarli configuration: add note about configuring from web interface **Removed:** - remove obsolete/orphan images - remove obsolete shaarchiver example - remove outdated "decode datastore content" snippet **Development:** - development: move development-related docs (static analysis, CI, unit tests, 3rd party libs, link structure/directory, guidelines, security....) to dev/ directory - development: Merge several pages to development.md - **Breaking change?:** remove mentions of 'stable' branch, switch to new branch/release model (master=latest commit, release=latest tag) - **Breaking change?:** refer to base sharing unit as "Shaare" everywhere (TODO: reflect changes in the code?) doc: update featues list/link to usage.md for details - development: directory structure: add note about required file permissions - .travis-ci.yml: add comments - .htaccess: add comment
2.7 KiB
Plugins
Installation
For plugins shipped with Shaarli, no installation is required.
If you want to install a third party plugin, download it to the plugins
directory in Shaarli's installation folder:
# example directory structure
| index.php
| plugins/
|---| custom_plugin/
| |---| custom_plugin.php
| |---| ...
Make sure your webserver can read and write the files in your plugin folder.
Configuration
From Shaarli's administration page (Tools
link), go to Plugin administration
. Here you can enable and disable all plugins available, and configure them.
Order
In the plugin administration page, you can move enabled plugins to the top or bottom of the list. The first plugins in the list will be processed first.
This is important in case plugins depend on each other. Read plugins READMEs for more information.
Use case: The (non existent) plugin shaares_footer
adds a footer to every shaare in Markdown syntax. It needs to be processed before (higher in the list) the Markdown plugin. Otherwise its syntax won't be translated in HTML.
Configuration file
Enabled plugins are stored in your Configuration file, under the array:
$GLOBALS['config']['ENABLED_PLUGINS']
You can edit them manually here. For example:
$GLOBALS['config']['ENABLED_PLUGINS'] = array(
'qrcode',
'archiveorg',
'wallabag',
'markdown',
);
Usage
Official plugins
Usage of each plugin is documented in it's README file:
addlink-toolbar
: Adds the addlink input on the Shaares list pagearchiveorg
: For each Shaare, add a link to the archived page on Archive.orgdefault_colors
: Override default theme colors.isso
: Let visitor comment your shaares on permalinks with Isso.markdown
: Render shaare description with Markdown syntax.piwik
: A plugin that adds Piwik tracking code to Shaarli pages.playvideos
: Add a button in the toolbar allowing to watch all videos.pubsubhubbub
: Enable PubSubHubbub feed publishingqrcode
: For each Shaare, add a QRCode icon.wallabag
: For each Shaare, add a Wallabag icon to save it in your instance.