diff --git a/pelican/generators.py b/pelican/generators.py index f8be3827..7726726d 100644 --- a/pelican/generators.py +++ b/pelican/generators.py @@ -64,11 +64,12 @@ class Generator(object): extensions=self.settings['JINJA_EXTENSIONS'], ) try: - theme_functions = imp.load_source('theme_functions', self._templates_path[0]+'/functions.py') + theme_functions = imp.load_source('theme_functions', + os.path.join(self.theme, '/functions.py')) except IOError: theme_functions = None - if theme_functions and '__export__' in vars(theme_functions): + if theme_functions and hasattr(theme_functions, '__export__'): for func_name in theme_functions.__export__: self.env.globals[func_name] = getattr(theme_functions, func_name) diff --git a/pelican/themes/simple/templates/functions.py b/pelican/themes/simple/functions.py similarity index 100% rename from pelican/themes/simple/templates/functions.py rename to pelican/themes/simple/functions.py