2
I don't have a good solution, but I've run into the same problem. Although you can register a Smarty plugin dynamically, Xoops' "pre-compiling" of the templates bypasses that, resulting in errors.
The only remedy I've found is to locate the custom plugins in class/smarty/plugins, which isn't really desirable.
I've heard that a future version of XOOPS (2.1?) will no longer precompile the templates, so that may solve the issue.