夹层网站的网站公告
mezzanine-announcements的Python项目详细描述
夹层公告
一个夹层应用程序,用于创建和显示整个站点的公告。在
特点
- 可安排的通知(开始和结束日期时间)
- 在“设置”中定义尽可能多的公告类型
- 发布可由用户选择性解除的公告
- 在用户解除通知后,通知不会打扰用户
- 可以选择让公告在设定的天数后重新显示
- 在页面加载后,在显示公告之前添加可选的时间延迟
安装
- 在
通过pip安装:
在pip install mezzanine-announcements
- 在
添加到
在"announcements"
到INSTALLED_APPS
。在 - 在
运行迁移。在
在 - 在
将
在"announcements.context_processors.announcements"
添加到上下文处理器。在 - 在
定义可供管理员用户使用的公告模板列表。这是在
settings.ANNOUNCEMENTS_TEMPLATES
中定义的由两个值元组组成的元组,其中第一个元素是指向要使用的Django模板的路径,第二个元素是在管理中为所述模板显示的友好名称。例如:ANNOUNCEMENTS_TEMPLATES=(("announcements/modal.html","Modal"),("announcements/top_bar.html","Top bar"),)
你需要自己创建这个模板。下面提供了一个示例。在
在 - 在
在管理员的新“公告”部分添加一些通知。在
在
然后在模板中显示公告:
- 在
将Cookie和公告脚本添加到要使用公告的模板中
^{pr2}$ 在 - 在
在
{% nevercache %}
块中包含包含所有通知的模板:{%nevercache%}{%include"announcements/announcements.html"%}{%endnevercache%}
在
模板
您可以在公告模板中使用所需的任何标记和样式
在settings.ANNOUNCEMENTS_TEMPLATES
中定义。你可以使用引导模式,
或者页面顶部的简单水平条。唯一的条件是你
需要记住的是:
- 模板必须包含类
announcement
的单个元素。在 - 公告ID、延迟和过期必须作为数据属性出现
在
.announcement
元素上。在 - 如果通知是可解除的,则必须包含一个可单击的元素
类
close-announcement
作为.announcement
的子类。在
{%loadmezzanine_tags%}<div class="announcement" data-appearance-delay="{{announcement.appearance_delay}}" data-announcement-id="{{announcement.id}}" data-expire-days="{{announcement.expire_days}}">{{announcement.content|richtext_filters|safe}}{%ifannouncement.can_dismiss%} <button class="close-announcement">Close</button>{%endif%}</div>
设置
Name | Default value | Description |
---|---|---|
ANNOUNCEMENTS_TEMPLATES | None | List of templates available for announcements. See Templates section above |
ANNOUNCEMENTS_EXTRA_FIELDS | None | List of additional fields to display in the announcement admin: ["extra_content", "video_link", "form"] |
贡献
{a6评论指南。在
- 项目
标签: