diff --git a/docs/plugins.rst b/docs/plugins.rst index 5135e315..428ddfa6 100644 --- a/docs/plugins.rst +++ b/docs/plugins.rst @@ -108,6 +108,8 @@ page_generator_preread page_generator invoked befor use if code needs to do something before every page is parsed. page_generator_init page_generator invoked in the PagesGenerator.__init__ page_generator_finalized page_generator invoked at the end of PagesGenerator.generate_context +page_writer_finalized page_generator, writer invoked after all pages have been written, but before the page generator + is closed. static_generator_context static_generator, metadata static_generator_preread static_generator invoked before a static file is read in StaticGenerator.generate_context; use if code needs to do something before every static file is added to the diff --git a/pelican/generators.py b/pelican/generators.py index 63390904..c2435e72 100644 --- a/pelican/generators.py +++ b/pelican/generators.py @@ -670,6 +670,7 @@ class PagesGenerator(CachingGenerator): self.context, page=page, relative_urls=self.settings['RELATIVE_URLS'], override_output=hasattr(page, 'override_save_as')) + signals.page_writer_finalized.send(self, writer=writer) class StaticGenerator(Generator): diff --git a/pelican/signals.py b/pelican/signals.py index a4d99688..65c98df7 100644 --- a/pelican/signals.py +++ b/pelican/signals.py @@ -26,6 +26,7 @@ article_writer_finalized = signal('article_writer_finalized') page_generator_init = signal('page_generator_init') page_generator_finalized = signal('page_generator_finalized') +page_writer_finalized = signal('page_writer_finalized') static_generator_init = signal('static_generator_init') static_generator_finalized = signal('static_generator_finalized')