如何将数据加载到static_placeholder

时间:2018-05-29 15:59:26

标签: django-cms

运行python 3.6和Django-Cms 3.5

我在这里阅读了文档:http://docs.django-cms.org/en/latest/introduction/templates_placeholders.html

但我对如何将数据实际添加到static_placeholder

感到困惑

我有

<footer>
  {% static_placeholder "footer" %}
</footer>

这是从哪里加载的?我的页脚是html / bootstrap4,所以一切都会根据屏幕大小进行移动。我可以看到添加此内容的唯一方法是通过代码段,在此我无法在这些代码段中使用{% static ... %}调用。文本插件是不够的。

我很确定我错过了一些明显的东西。 谢谢。

1 个答案:

答案 0 :(得分:0)

您可以将默认插件加载到占位符,这可能符合您的需求,但请注意,在网站的所有网页上,静态占位符都是相同的,所以通常在您设置网站时,您需要填充带有插件的占位符。

因此,如果默认插件可以使用,您可以在CMS_PLACEHOLDER_CONF中执行以下操作;

CMS_PLACEHOLDER_CONF = {
    'content': {
        "plugins": ['TextPlugin'],
        'excluded_plugins': ['InheritPlugin'],
    },
    'footer': {
        'plugins': ['TextPlugin', 'PicturePlugin'],
        'text_only_plugins': ['LinkPlugin'],
        'name': gettext("Footer"),
        'default_plugins': [
            {
                'plugin_type': 'TextPlugin',
                'values': {
                    'body':'<p>site design / logo © 2018 My Inc</p>',
                },
            },
        ],
        'child_classes': {
            'TextPlugin': ['PicturePlugin', 'LinkPlugin'],
        },
        'parent_classes': {
            'LinkPlugin': ['TextPlugin'],
        },
    },