Manifest.xml overview

The root element of any manifest should be an <ajxp_plugin> element, with the id attribute set to the plugin id (id = type.name). For the sake of listing and documenting the pluging, a couple of attributes are required :

  • id: type.name of the plugin. Actually it is added automatically if not there
  • label, description: can either be simple texts (“My Plugin Name”, “A more detailed description”), but it is recommanded to enclose the text inside a CONF_MESSAGE[“your text here”] bracket. This will refer to i18n libraries, see the dedicated section.
  • mixins: refers to the /plugins/core.ajaxplorer/ajxp_mixins.xml file, where some commonly used set of XML elements are defined. You can refer to a comma-separated list of “mixins”, they will be merged automatically to this XML.

Note: Editors (editor.*) plugins have some specific attributes, their root node must be an <editor> node.

The first-level of children of the root element will be generally the following:

  • <plugin_info> Documentation like set of tags, to describe the plugin author, version, etc.
  • <class_definition> defines the PHP file and class name of your plugin. The class must extend the AJXP_Plugin core class. This is not mandatory, a plugin can be a client-side only Javascript contributor.
  • <client_settings> a set of resources used by the clients : i18n (see specific section), javascript files to load, CSS stylesheets to load.
  • <server_settings> the parameters of this plugin, either global (will apply to all instances), or to be set for each instance of this plugin.
  • <registry_contributions> All the actions, hooks and other tags that will be dynamically concatenated to create the XML registry.
  • <dependencies> Add a dependency to another active plugin, so that if it’s not active this one cannot activate, and/or trigger the load of another plugin resources (php class, or js/css resources).

The parameters described in server_settings follow a syntax that can be used in a free manner to build forms, along with a set of Javascript tools to parse them, build the forms, and send the result. See the “Pydio Forms” section.

Back to top