怎样在模板中获取并显示网站的全局设置信息,如网站名称、Logo和备案号?

📅 👁️ 57

在AnQiCMS中构建网站模板时,我们常常需要显示一些网站级的通用信息,例如网站的名称、Logo图像以及法律要求的备案号等。这些信息通常在后台全局设置中统一管理,以确保全站内容的一致性和便于维护。AnQiCMS强大的模板标签体系,特别是system标签,让在模板中获取并展示这些全局设置变得非常直观和高效。

理解全局设置与 system 标签

AnQiCMS将网站的一些核心配置归类为“全局设置”,这些设置一旦修改,会立即影响到网站的各个页面。为了在模板中灵活地调用这些信息,系统提供了一个专门的system标签。

system标签的基本用法是:{% system 变量名称 with name="字段名称" %}

这里的变量名称是一个可选的参数,你可以用它来临时存储获取到的设置值,以便在模板中重复使用或进行更复杂的处理。而name参数则指定了你想要获取的具体全局设置项的字段名称,例如SiteName用于网站名称,SiteLogo用于网站Logo等。

获取并显示网站名称 (SiteName)

网站名称是网站的门面,通常会出现在页面的<title>标签中、页眉或页脚等关键位置。在AnQiCMS后台的“全局设置”中配置好“网站名称”后,你可以在模板中使用以下方式获取:

<title>{% tdk with name="Title" siteName=true %}</title>
{# 或者,如果你只想获取网站名称本身,不带页面标题和分隔符 #}
<h1>{% system with name="SiteName" %}</h1>

上述示例中,{% tdk with name="Title" siteName=true %}是获取页面标题的更佳实践,它会自动拼接当前页面的标题和网站名称,并提供分隔符选项。如果你的网站名称包含在HTML内容中(例如带有强调标签),你可能还需要考虑使用|safe过滤器来避免HTML实体转义。

获取并显示网站Logo (SiteLogo)

网站Logo是品牌的视觉标识,几乎所有网站都会在页眉部分展示。假设你已在后台“全局设置”中上传了网站Logo图片,那么在模板中显示它会很简单:

<div class="header-logo">
    <a href="{% system with name="BaseUrl" %}">
        <img src="{% system with name="SiteLogo" %}" alt="{% system with name="SiteName" %}" />
    </a>
</div>

在这个例子中,我们不仅获取了Logo的图片路径(SiteLogo),还将其包裹在一个链接中,指向网站首页(BaseUrl)。同时,为了SEO友好性和可访问性,我们使用SiteName作为alt属性的值。

获取并显示备案号 (SiteIcp)

对于在中国大陆运营的网站,备案号是法律要求必须展示的信息,通常放置在网站页脚。在AnQiCMS后台“全局设置”中填写“备案号码”后,你可以这样在模板中显示它:

<p class="footer-icp">
    <a href="https://beian.miit.gov.cn/" rel="nofollow" target="_blank">
        {% system with name="SiteIcp" %}
    </a>
</p>

这里,备案号被放置在一个链接中,指向工信部备案查询网站,并加上了rel="nofollow"target="_blank"属性,这都是常见的Web开发实践。

获取并显示版权信息 (SiteCopyright)

版权信息也是网站页脚的常见元素,它保障了内容的合法权益。在后台“全局设置”中填写“版权内容”后,可以在模板中这样显示:

<div class="footer-copyright">
    {% system siteCopyright with name="SiteCopyright" %}
    {{ siteCopyright|safe }}
</div>

值得注意的是,如果你在后台填写的版权信息可能包含HTML标签(例如&copy;符号、链接等),那么在使用{% system siteCopyright ... %}{{ siteCopyright }}时,需要额外加上|safe过滤器。这是因为AnQiCMS的模板引擎默认会对输出的变量进行HTML实体转义,以防止XSS攻击。|safe过滤器会告诉模板引擎,这段内容是安全的,无需转义,从而确保HTML内容能正确渲染。

获取其他常用全局设置与自定义参数

除了上述几个核心设置外,system标签还能获取更多预设的全局信息,例如:

  • 网站首页地址 (BaseUrl): {% system with name="BaseUrl" %},通常用于构建绝对路径链接。
  • 模板静态文件地址 (TemplateUrl): {% system with name="TemplateUrl" %},方便引用模板目录下的CSS、JS等静态资源。
  • 站点语言 (Language): {% system with name="Language" %},可以用于设置HTML的lang属性,例如<html lang="{% system with name='Language' %}">

AnQiCMS的强大之处还在于它允许你在后台的“全局设置”中添加自定义参数。如果你的网站需要展示一些没有预设字段的全局信息(例如“客服电话”、“公司邮箱”等),你可以在后台添加一个自定义参数,比如参数名为CustomerPhone。然后在模板中,你就可以通过{% system with name="CustomerPhone" %}来获取它的值。这为模板的灵活性和可扩展性提供了极大的便利。

总结

通过灵活运用system标签,AnQiCMS让网站全局设置的调用变得异常简单和高效。它不仅简化了模板开发过程,更重要的是,确保了网站信息的一致性,便于未来的内容更新和多站点管理,从而构建出更加健壮和易于维护的网站。


常见问题 (FAQ)

  1. 问:为什么我的网站Logo或备案号没有显示,或者显示不正确? 答:首先,请确保你已经在AnQiCMS后台的“全局设置”中正确填写了“网站Logo”和“备案号码”等信息。对于Logo,还需要检查你上传的图片路径是否有效。如果图片路径正确但仍然不显示,可能是浏览器缓存问题,尝试清空浏览器缓存后刷新页面。另外,如果你是多站点用户,请确认模板中是否需要通过siteId参数指定特定站点的设置。

  2. 问:除了预设的网站名称、Logo等,我还能获取其他自定义的全局信息吗? 答:当然可以。AnQiCMS允许你在后台的“全局设置”页面添加自定义参数。例如,你可以添加一个名为“客服电话”的参数,其字段名称(供模板调用)为CustomerServicePhone。在模板中,你就可以使用{% system with name="CustomerServicePhone" %}来获取并显示这个自定义信息了。这极大地增加了模板的灵活性。

  3. 问:如果我管理多个站点,如何在模板中获取不同站点的全局设置? 答:AnQiCMS的system标签支持siteId参数。如果你想获取特定站点(非当前站点)的全局设置,可以在system标签中明确指定siteId。例如,{% system with name="SiteName" siteId="2" %}会获取ID为2的站点的网站名称。这对于构建多站点管理下的共享模块或交叉引用信息非常有用。

相关文章

在文章详情页,如何获取并展示与当前文章相关的推荐文章列表?

在网站内容运营中,提升用户停留时间、降低跳出率是每个运营者追求的目标。当用户阅读完一篇文章后,如果能立即看到其他感兴趣的内容,无疑会大大增强他们的参与感,从而提升网站的整体互动性和用户体验。而安企CMS(AnQiCMS)作为一个功能强大的内容管理系统,为我们提供了便捷的工具来实现文章详情页的智能推荐,无需复杂的开发工作。 推荐文章列表不仅能为用户提供更深度的阅读体验,引导他们浏览更多网站内容

2025-11-08

如何控制文章列表只显示当前分类下的文档,而不包括其子分类内容?

在安企CMS中管理网站内容时,我们通常会将文章按照不同的分类进行组织,形成清晰的分类层级结构。这种结构在后台管理内容时提供了极大的便利。然而,在前端页面展示文章列表时,我们有时需要更精确地控制内容的显示范围,例如,只希望展示当前分类下直接发布的文章,而不包含其子分类中的内容。 幸运的是,安企CMS为此提供了一个简单而强大的解决方案:利用 `archiveList` 模板标签的 `child`

2025-11-08

如何在自定义内容模型中定义新字段,并在前端页面中灵活调用和显示这些字段?

在安企CMS中,利用自定义内容模型来管理和展示个性化内容是其核心优势之一。这让我们可以根据具体的业务需求,灵活地为不同类型的内容创建专属的数据结构。本文将详细探讨如何在后台定义这些自定义字段,以及如何在前端页面中巧妙地调用和显示它们。 ### 在后台内容模型中定义新字段 内容模型就像是内容的“蓝图”,它决定了每种类型内容(例如文章、产品、案例等)应该包含哪些信息。要定义新的字段

2025-11-08

安企CMS如何通过前端显示图片水印或防采集干扰码来保护原创内容?

在当前信息爆炸的互联网环境中,原创内容的价值日益凸显。然而,内容抄袭和恶意采集也成了许多网站运营者的心头大患,不仅损害了创作者的劳动成果,更可能对网站的搜索引擎排名和品牌声誉造成负面影响。面对这一挑战,安企CMS(AnQiCMS)深知内容保护的重要性,内置了前端图片水印和防采集干扰码等功能,旨在为您的原创内容提供一道坚实的防线。 ### 了解内容保护的必要性 在探讨具体功能之前

2025-11-08

如何获取并展示后台配置的联系方式,如电话、邮箱、微信二维码等多元化信息?

安企CMS(AnQiCMS)作为一个高效、灵活的内容管理系统,在帮助企业展示品牌形象和提供便捷沟通渠道方面表现出色。对于任何网站而言,清晰可寻的联系方式是与用户建立信任、促成合作的关键。安企CMS深谙此道,提供了一套直观而强大的功能,让您能够轻松管理和展示电话、邮箱、微信二维码等多元化的联系信息。 ### 后台配置:联系方式的集中管理中心 在安企CMS中

2025-11-08

如何利用文章的`flag`属性(如“头条”、“推荐”)筛选并突出显示特定内容?

在安企CMS中,高效地管理和突出特定内容是网站运营成功的关键。当网站内容日益丰富时,如何确保重要信息能够迅速抓住访问者的眼球,引导他们浏览核心内容,这成为每个运营者都需要深思的问题。安企CMS提供了强大的“推荐属性”(`flag`)功能,让您能够轻松地筛选并以醒目的方式展示特定内容,从而提升用户体验和网站的运营效果。 ### 理解安企CMS的`flag`属性 `flag`属性,顾名思义

2025-11-08

如何在前端留言表单中接收并显示后台自定义的表单字段?

在网站运营中,留言表单是与用户互动、收集反馈和线索的重要渠道。安企CMS(AnQiCMS)提供了灵活的留言功能,其中一项非常实用的能力就是允许我们在后台自定义表单字段,并将其无缝地呈现在前端的留言表单中,以满足不同业务场景下的个性化信息收集需求。 接下来,我们将详细探讨如何在安企CMS中实现这一功能。 ### 一、在后台定义自定义留言字段 首先,我们需要进入安企CMS的后台管理界面

2025-11-08

如何将文章发布时间戳格式化为用户友好的日期时间格式,如“2023年01月01日 14:30”?

用户友好的日期时间显示对于网站内容至关重要。一个清晰、易读的时间格式不仅能提升访客的阅读体验,还能帮助他们快速了解内容的发布或更新时效。在AnQiCMS中,将文章的发布时间戳格式化为诸如“2023年01月01日 14:30”这样的格式,实现起来既灵活又高效。 ### 理解时间戳在AnQiCMS中的运用 在AnQiCMS管理的内容中,无论是文章、产品还是其他自定义模型

2025-11-08