从 django-cms 插件上下文设置 meta ogg 图像
Set meta ogg image from django-cms plugin context
我的问题:
我需要从 django-cms 站点的所有页面上都存在的轮播插件设置 ogg 图像。 <head>
标签所在的我的基础模板是 django cms 基础的父模板。
只需将 {% block meta_image %}
添加到我的基本模板并从 cms 插件模板填充它是行不通的。有什么方法可以从插件渲染方法访问全局上下文吗?
您应该能够利用 django-sekizai,它已经是 Django-CMS 的依赖项,以非重复的方式将元标记添加到父级上的任何块:
# base-template.html
{% load sekizai_tags %}
{% block meta %}
{# some default content might be here #}
{% endblock meta %}
{% render_block "meta" %}
# your-plugin-template.html
{% load sekizai_tags %}
{% block meta %}
{% addtoblock "meta" %}
<meta property="og:image" content="{{ instance.value }}" />
{% endaddtoblock %}
{% endblock meta %}
我的问题:
我需要从 django-cms 站点的所有页面上都存在的轮播插件设置 ogg 图像。 <head>
标签所在的我的基础模板是 django cms 基础的父模板。
只需将 {% block meta_image %}
添加到我的基本模板并从 cms 插件模板填充它是行不通的。有什么方法可以从插件渲染方法访问全局上下文吗?
您应该能够利用 django-sekizai,它已经是 Django-CMS 的依赖项,以非重复的方式将元标记添加到父级上的任何块:
# base-template.html
{% load sekizai_tags %}
{% block meta %}
{# some default content might be here #}
{% endblock meta %}
{% render_block "meta" %}
# your-plugin-template.html
{% load sekizai_tags %}
{% block meta %}
{% addtoblock "meta" %}
<meta property="og:image" content="{{ instance.value }}" />
{% endaddtoblock %}
{% endblock meta %}