- template_post_render($templateName, &$content, array &$containerData, XenForo_Template_Abstract $template) - Called after a template is rendered.
See this screenshot for detailed description: That event is used to change HTML output. Typical add-on would just do search/replace stuff. To generate stuff for replacement its ether hardcoded (usually, but not best method) or event listener parses another template and uses its output to replace code.
- template_create(&$templateName, array &$params, XenForo_Template_Abstract $template) - Called whenever the template object constructor is called. You may use this event to modify the name of the template being called, to modify the params being passed to the template, or to pre-load additional templates as needed.
- template_hook($hookName, &$contents, array $hookParams, XenForo_Template_Abstract $template) - deprecated. Used to be event similar to template events in 3.1, but add-on developers rarely used it because it allowed to change code only in few pre-defined places. In 1.2 it still exists, but is being replaced with template modifications (see below).
Then there are template modifications: That's the most popular thing among add-on developers. Before XF 1.2 template modifications were not part of XenForo, it existed as third party add-on:
XF URL: http://xenforo.com/community/resources/ ... m-tms.293/
Source code: https://github.com/guiltar/TMS
Add-on authors can use it to replace strings in templates, do regexp replaces and callback replacements. Few screenshots of it in action (for XF 1.1 when it was separate from core):