Django CMS 管理模板页面中的占位符
Django CMS manage placeholder in template pages
在两点上我希望得到你的帮助:
首先,我正在创建一些默认页面的模板,例如:
"Home.html, work-with-us.html"等
我的目标是简化网站负责人的工作。他们不必学习如何在占位符内管理插件。
因此,我创建了一些这样的占位符,例如 "workwithus.html" :
{% extends "base.html" %}
{% load cms_tags staticfiles sekizai_tags menu_tags %}
{% block content %}
<div class="container">
<div class="col-xs-12">
{% placeholder "image-full" %}
</div>
<div class="col-md-12">
{% placeholder "text-platform" %}
</div>
</div>
{% endblock content %}
我是这样管理插件的:
CMS_PLACEHOLDER_CONF = {
'image-full': {
'plugins': ['FilerImagePlugin'],
'name': gettext("Image full page"),
'default_plugins': [
{
'plugin_type': 'FilerImagePlugin',
'values': {
},
},
],
'limits': {
'global': 1,
'FilerImagePlugin': 1,
},
},
等等
问题是,我不能在同一个模板中多次使用同一个占位符。如果当我创建一个占位符 "img-full-width" 时我可以多次调用它,那就太好了。
你有什么想法吗?一种使它比创建 "img-full-2"、"img-full-3" 等
更合适的方法
第二个问题:
是否可以添加多个 default_plugins ?真的很烦我...
非常感谢你们!
您可以拥有任意数量的插件 default_plugins
You can specify the list of default plugins which will be
automagically added when the placeholder will be created (or
rendered).
如果您对必须为每个占位符重新定义 CMS_PLACEHOLDER_CONF
感到恼火,您总是可以在 CMS_PLACEHOLDER_CONF
块之前定义一个通用配置:
img_fullwidth_conf = {
'plugins': ['FilerImagePlugin', 'TextPlugin'],
'name': gettext("Image full page"),
'default_plugins': [
{
'plugin_type': 'FilerImagePlugin',
'values': {
},
},
{
'plugin_type': 'TextPlugin',
'values': {
'body': '<p>Write here...</p>'
},
},
],
}
CMS_PLACEHOLDER_CONF = {
'img-full-1': img_fullwidth_conf,
'img-full-2': img_fullwidth_conf,
'img-full-3': img_fullwidth_conf,
}
在两点上我希望得到你的帮助:
首先,我正在创建一些默认页面的模板,例如: "Home.html, work-with-us.html"等
我的目标是简化网站负责人的工作。他们不必学习如何在占位符内管理插件。
因此,我创建了一些这样的占位符,例如 "workwithus.html" :
{% extends "base.html" %}
{% load cms_tags staticfiles sekizai_tags menu_tags %}
{% block content %}
<div class="container">
<div class="col-xs-12">
{% placeholder "image-full" %}
</div>
<div class="col-md-12">
{% placeholder "text-platform" %}
</div>
</div>
{% endblock content %}
我是这样管理插件的:
CMS_PLACEHOLDER_CONF = {
'image-full': {
'plugins': ['FilerImagePlugin'],
'name': gettext("Image full page"),
'default_plugins': [
{
'plugin_type': 'FilerImagePlugin',
'values': {
},
},
],
'limits': {
'global': 1,
'FilerImagePlugin': 1,
},
},
等等
问题是,我不能在同一个模板中多次使用同一个占位符。如果当我创建一个占位符 "img-full-width" 时我可以多次调用它,那就太好了。 你有什么想法吗?一种使它比创建 "img-full-2"、"img-full-3" 等
更合适的方法第二个问题: 是否可以添加多个 default_plugins ?真的很烦我...
非常感谢你们!
您可以拥有任意数量的插件 default_plugins
You can specify the list of default plugins which will be automagically added when the placeholder will be created (or rendered).
如果您对必须为每个占位符重新定义 CMS_PLACEHOLDER_CONF
感到恼火,您总是可以在 CMS_PLACEHOLDER_CONF
块之前定义一个通用配置:
img_fullwidth_conf = {
'plugins': ['FilerImagePlugin', 'TextPlugin'],
'name': gettext("Image full page"),
'default_plugins': [
{
'plugin_type': 'FilerImagePlugin',
'values': {
},
},
{
'plugin_type': 'TextPlugin',
'values': {
'body': '<p>Write here...</p>'
},
},
],
}
CMS_PLACEHOLDER_CONF = {
'img-full-1': img_fullwidth_conf,
'img-full-2': img_fullwidth_conf,
'img-full-3': img_fullwidth_conf,
}