Wiki Macro Tutorial

Version 8.1 by Asiri Rathnayake on 2009/07/20
Warning: For security reasons, the document is displayed in restricted mode as it is not the current version. There may be differences and errors due to this.

Failed to execute the [velocity] macro. Cause: [The execution of the [velocity] script macro is not allowed in [xwiki:Documentation.DevGuide.Tutorials.WritingMacros.WikiMacroTutorial.WebHome]. Check the rights of its last author or the parameters if it's rendered from another script.]. Click on this message for details.

Wiki Macro Tutorial

Wiki macros allow macro authors to develop reusable and distributable macro modules. There is no java code involved; hence no compiling or packaging. Macro author simply needs to create a wiki page according to a particular specification and that's all!

Prerequisites

  • Wiki macros are only available on XWiki Enterprise 2.0M2 and later versions
  • Wiki macro authors need to have programming rights
  • Wiki macros can only be defined inside the main wiki, though they can be used throughout a farm

Hello World Macro

We are going to start with a very simple xwiki/2.0 wiki macro which prints a greeting message to the document content. It isn't a very useful macro but the idea is to get you familiarised with the wiki macro creation process.

The XWiki.WikiMacroClass

Wiki macros are defined using objects of type XWiki.WikiMacroClass. You define a wiki macro by creating a new wiki page and attaching it an object of type XWiki.WikiMacroClass. This class contains following fields:

  • Macro name: Name of the macro, which will be used by users to invoke your macro
  • Macro description: A short description of the macro, this description will be made available on the WYSIWYG editor (More on this later)
  • Macro content: The actual wiki content that will be evaluated when the macro is executed, can be any wiki content (should be in the same syntax as the document)
Tags:
   

Get Connected