diff --git a/incorporealcms/lib.py b/incorporealcms/lib.py new file mode 100644 index 0000000..d9280d5 --- /dev/null +++ b/incorporealcms/lib.py @@ -0,0 +1,7 @@ +"""Miscellaneous helper functions and whatnot.""" +from flask import current_app as app + + +def get_meta_str(key): + """Provide the page's metadata for the specified key, or '' if unset.""" + return " ".join(app.config['md'].Meta.get(key)) if app.config['md'].Meta.get(key) else "" diff --git a/incorporealcms/pages.py b/incorporealcms/pages.py index a850240..04215dd 100644 --- a/incorporealcms/pages.py +++ b/incorporealcms/pages.py @@ -8,6 +8,8 @@ from flask import current_app as app from flask import make_response, redirect, render_template, request from tzlocal import get_localzone +from incorporealcms.lib import get_meta_str + logger = logging.getLogger(__name__) bp = Blueprint('pages', __name__, url_prefix='/') @@ -34,8 +36,9 @@ def display_page(path): else: content = Markup(app.config['md'].convert(entry)) logger.debug("file metadata: %s", app.config['md'].Meta) - title = " ".join(app.config['md'].Meta.get('title')) if app.config['md'].Meta.get('title') else "" - return render('base.html', title=title, content=content, navs=parent_navs, + + return render('base.html', title=get_meta_str('title'), description=get_meta_str('description'), + image=get_meta_str('image'), base_url=request.base_url, content=content, navs=parent_navs, mtime=mtime.strftime('%Y-%m-%d %H:%M:%S %Z')) diff --git a/incorporealcms/templates/base.html b/incorporealcms/templates/base.html index eec4dac..4cf14f3 100644 --- a/incorporealcms/templates/base.html +++ b/incorporealcms/templates/base.html @@ -1,9 +1,15 @@