在网站的运营过程中,备案号和版权信息是不可或缺的元素,它们不仅关乎网站的合法性,也体现了网站的专业度。对于使用安企CMS搭建的网站来说,在模板中灵活地调用并格式化显示这些信息,是一个非常基础但重要的技能。
幸运的是,安企CMS提供了一套简洁而强大的模板标签系统,让网站备案号和版权信息的调用变得异常轻松。接下来,我们就一起看看如何在安企CMS的模板中实现这一目标。
首先,在后台设置好备案号和版权信息
在开始模板操作之前,你需要确保这些信息已经在安企CMS的后台进行了正确的录入。通常,这些全局性的网站信息都可以在“后台设置”下的“全局功能设置”中找到。
你会在设置页面看到“备案号码”和“版权信息”的输入框。在这里,只需按照要求填入你的网站备案号(例如“京ICP备12345678号”)和版权声明(例如“© 2023 你的公司名称. All Rights Reserved.”)。安企CMS会妥善保存这些数据,并为前端模板调用做好准备。
模板中调用网站备案号
安企CMS的模板遵循类似Django模板引擎的语法,使用双花括号 {{变量}} 来输出变量,使用 {% 标签 %} 来执行逻辑操作。对于网站的系统级配置信息,我们主要依赖 system 标签。
要调用备案号,你可以使用 system 标签并指定 name 参数为 SiteIcp。最直接的调用方式是:
{% system with name="SiteIcp" %}
这样,页面上就会直接显示你在后台填写的备案号。
但通常,备案号需要链接到工信部备案管理系统的查询页面,以方便用户核实。这时候,我们可以在 <a> 标签中嵌入这个标签,并设置相应的链接和属性:
<a href="https://beian.miit.gov.cn/" rel="nofollow" target="_blank">{% system with name="SiteIcp" %}</a>
这里我们给链接添加了 rel="nofollow" 属性,这是一种常见的SEO做法,告诉搜索引擎不要追踪此链接,因为它通常不涉及内容推荐;同时加上 target="_blank",确保用户点击后在新标签页打开,提升用户体验。
模板中调用并格式化显示版权信息
版权信息通常包含当前的年份、网站名称以及具体声明。使用 system 标签同样可以轻松获取后台设置的版权内容。SiteCopyright 字段便是用来存储这些信息的:
{% system with name="SiteCopyright" %}
如果你的版权信息中不包含年份,或者你希望年份能动态显示为当前年份,那么可以结合 now 标签来实现。now 标签可以帮助我们获取当前日期时间,通过指定格式字符串,就能提取出年份。例如,要获取四位数的年份,可以使用 "2006" 这个格式字符串(这是Go语言中一个特殊的参考时间,代表固定日期)。
因此,一个常见的版权声明组合可能是这样的:
<p>
© {% now "2006" %}
{% system with name="SiteName" %}
{% system with name="SiteCopyright" %}
</p>
这里,{% now "2006" %} 会自动输出当前的年份,{% system with name="SiteName" %} 会调用你在后台设置的网站名称。
需要注意的是,如果你在后台的“版权信息”中填入了HTML代码,例如包含了一个链接或者其他样式标签,为了确保这些HTML代码能够正确解析而不是被转义成纯文本显示,你需要将调用它的变量通过 |safe 过滤器进行处理。例如,如果我们给 SiteCopyright 定义了一个变量 siteCopyright:
{% system siteCopyright with name="SiteCopyright" %}{{siteCopyright|safe}}
通过 |safe 过滤器,安企CMS的模板引擎就会认为 siteCopyright 中的内容是安全的HTML,并直接将其渲染到页面上。
综合示例:网站页脚的备案号和版权信息
将备案号和版权信息的调用方式结合起来,我们可以很容易地构建一个完整的网站页脚信息块:
<footer>
<div class="container">
<p class="icp-info">
<a href="https://beian.miit.gov.cn/" rel="nofollow" target="_blank">
{% system with name="SiteIcp" %}
</a>
</p>
<p class="copyright-info">
© {% now "2006" %} {% system with name="SiteName" %}.
{% system siteCopyright with name="SiteCopyright" %}{{siteCopyright|safe}}
</p>
</div>
</footer>
将这段代码放置在你的模板文件的页脚部分(例如 partial/footer.html 或直接在 bash.html 中),网站备案号和版权信息就会以整洁、规范的方式显示出来,并且年份会随时间自动更新。
安企CMS的模板系统以其直观和灵活性,大大简化了网站内容的管理和展示。通过简单的标签调用,你就能轻松掌控网站的关键信息,让内容运营更加高效。
常见问题 (FAQ)
问:为什么我设置了备案号/版权信息,但在网站前端却没有显示?
- 答: 出现这种情况,首先请检查你的模板文件中是否正确使用了
{% system with name="SiteIcp" %}和{% system with name="SiteCopyright" %}这样的标签。如果标签使用无误,请尝试在安企CMS后台点击“更新缓存”按钮,清理系统缓存后刷新页面。有时候浏览器缓存也可能导致显示延迟,可以尝试清空浏览器缓存或使用无痕模式访问。
- 答: 出现这种情况,首先请检查你的模板文件中是否正确使用了
问:如果我的版权信息中包含了HTML代码(例如一个链接),应该如何确保它们能够被正确渲染而不是直接显示文本?
- 答: 如果后台设置的“版权信息”中包含HTML代码,为了让这些代码在前端被浏览器解析并渲染,你需要在使用
system标签调用后,再额外添加|safe过滤器。例如,你可以先将版权内容赋值给一个变量{% system siteCopyright with name="SiteCopyright" %},然后在输出时使用{{ siteCopyright|safe }}。这样,HTML内容就不会被转义,而是按预期显示。
- 答: 如果后台设置的“版权信息”中包含HTML代码,为了让这些代码在前端被浏览器解析并渲染,你需要在使用
问:除了显示当前年份,我还可以用
now标签格式化显示其他日期或时间信息吗?- 答: 当然可以。
now标签支持Go语言的时间格式化规则,你可以根据需要使用不同的格式字符串来显示日期和时间。例如,{% now "2006-01-02" %}会显示完整的年月日,{% now "15:04" %}则会显示当前的时分。这为你提供了极大的灵活性,来满足各种日期时间显示需求。
- 答: 当然可以。