可以说我在django cms中创建了一个类似于facebook的插件插件,它允许用户放入页面网址和其他配置来显示类似于Facebook的框。
现在用户希望在多个页面上显示相同的框,是否可以重复使用相同的插件实例,而无需在每个页面上创建插件?
class FacebookLikeBox(CMSPlugin):
page_url = models.URLField()
app_id = models.CharField(max_length=25)
width = models.CharField(max_length=25)
height = models.CharField(max_length=25)
color_scheme = models.CharField(max_length=25, choices=(('light','light'),('dark','dark')))
show_friends_faces = models.BooleanField(default=True)
show_posts = models.BooleanField(default=True)
show_header = models.BooleanField(default=True)
show_border = models.BooleanField(default=True)
答案 0 :(得分:1)
您有两种选择(可能更多)。
如果您使用的是django-cms< 3.x然后你可以安装djangocms-stacks这是一个很酷的应用程序,它允许你创建可重用的“堆栈”插件,可以像管理员一样从管理员进行管理。
只要遇到模板中的{% stack "yourstackname" %}
,堆栈就会呈现它的所有插件。
在django-cms> = 3.x中,此程序包已移至cms核心,因此无需安装。
第二个选项是使用{% show_placeholder %}
模板标记。您可以阅读有关此标记here的更多信息。