From 88b5a27ddf9f2334108825ef3fbac44868cc5d60 Mon Sep 17 00:00:00 2001 From: "W. Trevor King" Date: Thu, 3 Jan 2013 18:10:08 -0500 Subject: [PATCH] contents: Page.url_format should expose all metadata I want to add `directory` metadata to each page in `content/pages/` to place my non-article pages by hand: PAGE_URL = '{directory}/{slug}' PAGE_SAVE_AS = '{directory}/{slug}/index.html' To do this, I need the `directory` metadata for formatting the URL. --- pelican/contents.py | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/pelican/contents.py b/pelican/contents.py index d675a2ad..b986a34e 100644 --- a/pelican/contents.py +++ b/pelican/contents.py @@ -114,14 +114,16 @@ class Page(object): @property def url_format(self): - return { + metadata = copy.copy(self.metadata) + metadata.update({ 'slug': getattr(self, 'slug', ''), 'lang': getattr(self, 'lang', 'en'), 'date': getattr(self, 'date', datetime.now()), 'author': getattr(self, 'author', ''), 'category': getattr(self, 'category', self.settings['DEFAULT_CATEGORY']), - } + }) + return metadata def _expand_settings(self, key): fq_key = ('%s_%s' % (self.__class__.__name__, key)).upper()