如何在AnQiCMS模板中获取系统全局配置信息,例如网站名称和LOGO?

📅 👁️ 68

在AnQiCMS模板中巧妙获取网站全局配置,让您的网站更灵活

当我们设计或维护AnQiCMS网站模板时,经常会遇到一个需求:需要在网站的各个页面显示统一的全局信息,比如网站的名称、LOGO、备案号,或是自定义的联系方式等。手动在每个页面重复添加这些信息不仅效率低下,而且一旦需要修改,更新起来更是耗时费力。幸运的是,AnQiCMS提供了一个强大而便捷的system标签,让您能够轻松地在模板中获取这些系统全局配置,从而构建更具灵活性和易于维护的网站。

核心方法:系统标签(system Tag)

AnQiCMS的模板采用类似Django模板引擎的语法,对于全局配置信息的获取,system标签是您的核心工具。它能够直接访问您在后台“全局功能设置”中配置的各项数据。

system标签的基本用法

system标签的通用语法非常直观:您可以通过指定name参数来获取特定的配置项。

{% system 变量名称 with name="字段名称" %}

这里,变量名称是可选的,如果您想直接在标签内部输出结果,可以省略它;如果您希望将获取到的值赋值给一个变量以便后续使用,则可以定义一个变量名称字段名称则是您希望获取的具体配置项的英文标识。

下面,我们通过一些常用的例子来具体看看如何使用这个标签:

获取网站名称(SiteName

网站名称是每个网站不可或缺的标识。在AnQiCMS后台的“全局功能设置”中,您设置的“网站名称”可以通过SiteName这个字段名来获取。

{# 直接输出网站名称 #}
<h1>{% system with name="SiteName" %}</h1>

{# 将网站名称赋值给一个变量,然后使用 #}
{% system siteName with name="SiteName" %}
<p>欢迎来到 {{ siteName }}!</p>

获取网站LOGO(SiteLogo

网站LOGO同样是网站品牌形象的关键元素。在“全局功能设置”中上传的网站LOGO图片地址,可以通过SiteLogo字段获取。

{# 直接输出网站LOGO,同时利用网站名称作为图片的alt属性,有利于SEO #}
<img src="{% system with name="SiteLogo" %}" alt="{% system with name="SiteName" %}" />

{# 将LOGO图片地址赋值给变量,并结合网站名称 #}
{% system siteLogo with name="SiteLogo" %}
{% system siteName with name="SiteName" %}
<a href="/">
    <img src="{{ siteLogo }}" alt="{{ siteName }} Logo" />
</a>

其他常用全局信息

除了网站名称和LOGO,system标签还能获取许多其他有用的全局配置:

  • 网站备案号 (SiteIcp)
    
    <p><a href="https://beian.miit.gov.cn/" rel="nofollow" target="_blank">{% system with name="SiteIcp" %}</a></p>
    
  • 版权内容 (SiteCopyright):这通常用于网站底部,显示版权声明。如果后台的版权信息中包含HTML标签(如链接),记得使用|safe过滤器,让模板正确渲染HTML而非将其作为纯文本输出。
    
    {% system copyrightInfo with name="SiteCopyright" %}
    <p>{{ copyrightInfo|safe }}</p>
    
  • 网站首页地址 (BaseUrl)
    
    <a href="{% system with name="BaseUrl" %}">返回首页</a>
    
  • 模板静态文件地址 (TemplateUrl):这个非常实用,它指向当前模板文件夹下的/public/static/目录,方便您引入CSS、JavaScript等静态资源。
    
    <link href="{% system with name="TemplateUrl" %}/css/style.css" rel="stylesheet">
    <script src="{% system with name="TemplateUrl" %}/js/main.js"></script>
    
  • 站点语言 (Language): 获取当前站点的语言代码,常用于HTML的lang属性。
    
    <html lang="{% system with name='Language' %}">
    

自定义参数:扩展您的配置

AnQiCMS的“全局功能设置”还允许您添加自定义参数。这意味着您可以根据具体需求,创建任何您需要的全局配置项。例如,您可能想添加一个“微信客服号”或“在线客服链接”,并在模板中调用。

  1. 在后台添加自定义参数: 进入AnQiCMS后台的“后台设置” -> “全局功能设置”页面。在页面底部找到“自定义设置参数”,点击“添加自定义参数”,填写参数名(例如WechatServiceNo)和参数值。

  2. 在模板中调用自定义参数: 一旦保存,您就可以使用system标签,通过您定义的参数名来获取它的值。

    {# 假设您在后台自定义了一个名为 "WechatServiceNo" 的参数 #}
    <p>微信客服:{% system with name="WechatServiceNo" %}</p>
    
    {# 假设您自定义了一个名为 "AnalyticsCode" 的参数,通常会包含HTML/JS代码 #}
    {% system analyticsScript with name="AnalyticsCode" %}
    {% if analyticsScript %}
    {{ analyticsScript|safe }}
    {% endif %}
    

实际应用:构建网站头部和底部

通过system标签,您可以很方便地构建出网站的通用模块,例如页眉和页脚,确保这些模块的内容在全站保持一致。

{# partial/header.html #}
<header class="site-header">
    <div class="container">
        <div class="logo">
            <a href="{% system with name="BaseUrl" %}">
                <img src="{% system with name="SiteLogo" %}" alt="{% system with name="SiteName" %}" />
            </a>
        </div>
        <nav class="main-nav">
            {# 导航列表通常使用navList标签,这里仅作示意 #}
            <ul>
                <li><a href="{% system with name="BaseUrl" %}">首页</a></li>
                {# ... 其他导航项 ... #}
            </ul>
        </nav>
    </div>
</header>

{# partial/footer.html #}
<footer class="site-footer">
    <div class="container">
        <p>{% system copyrightInfo with name="SiteCopyright" %}{{ copyrightInfo|safe }}</p>
        <p>备案号:<a href="https://beian.miit.gov.cn/" rel="nofollow" target="_blank">{% system with name="SiteIcp" %}</a></p>
        <p>联系电话:{% contact with name="Cellphone" %}</p>
        <p>网站地址:<a href="{% system with name="BaseUrl" %}">{% system with name="BaseUrl" %}</a></p>
    </div>
</footer>

然后在您的页面模板中,只需简单地引入这些公共片段即可:

{% include "partial/header.html" %}

<main class="site-content">
    {# 页面具体内容 #}
</main>

{% include "partial/footer.html" %}

这样一来,无论您需要修改网站名称、LOGO,还是版权信息,都只需在AnQiCMS后台的“全局功能设置”中操作一次,模板会自动同步更新,大大提升了网站的维护效率。

小贴士与**实践

  • 多站点环境:siteId 参数:如果您通过AnQiCMS的多站点管理功能创建了多个站点,并且需要在某个站点的模板中获取其他站点的全局配置,system标签也支持siteId参数。例如{% system with name="SiteName" siteId="2" %},它将获取ID为2的站点的网站名称。不过,对于当前站点的全局配置,通常无需指定siteId
  • 变量命名与大小写:请注意name参数中的字段名称(如SiteNameSiteLogo)是严格区分大小写的,必须与AnQiCMS后台定义和文档中提供的一致。
  • 后台管理:全局设置:所有这些可调用的全局配置都可以在“后台设置” -> “全局功能设置”中进行管理和更新。熟悉这个区域将帮助您更好地利用system标签。

通过灵活运用system标签,您可以轻松管理和展示AnQiCMS网站的全局配置信息,让您的模板开发和网站运营工作变得更加高效和便捷。


常见问题 (FAQ)

1. 为什么我的网站名称或LOGO在模板中没有显示,或者显示不正确?

首先,请检查AnQiCMS后台的“后台设置” -> “全局功能设置”中,是否已正确填写了“网站名称”或上传了“网站LOGO”。如果后台信息是空白的,模板自然无法获取到内容。其次,请确认您在模板中使用的name参数值是否正确,例如SiteNameSiteLogo,并且大小写是否完全匹配。最后,清除浏览器缓存和AnQiCMS系统缓存(通过后台的“更新缓存”功能),

相关文章

AnQiCMS如何通过定时发布功能提高内容运营的自动化程度?

在日益注重效率和用户体验的今天,内容运营的自动化程度直接关系到网站的竞争力。对于许多中小企业和自媒体运营者来说,如何在有限的人力资源下,确保内容的高质量、高频次和精准触达,是一个持续的挑战。AnQiCMS作为一款高效、灵活的内容管理系统,其内置的定时发布功能,恰好为解决这一难题提供了强大的支持。 想象一下这样的场景:您精心策划了一周甚至一个月的营销内容,包括文章、产品更新、活动预告等

2025-11-08

如何在AnQiCMS模板中实现多语言内容的切换和显示?

在今天的数字世界里,您的网站可能需要面向全球用户。AnQiCMS 充分理解这一需求,提供了强大的多语言支持功能,让您能够轻松构建和管理多语言网站,从而更好地服务不同国家和地区的用户。那么,如何在 AnQiCMS 的模板中实现多语言内容的切换和显示呢?让我们一步步来探索。 ### 理解 AnQiCMS 的多语言机制:两种“语言”的处理 在 AnQiCMS 中,我们需要区分两种类型的“语言”内容

2025-11-08

AnQiCMS的多站点管理中,如何为新站点配置独立的域名和数据库信息?

AnQiCMS 凭借其高效灵活的多站点管理功能,为用户提供了极大的便利,尤其是在需要为不同品牌、产品或服务搭建独立站点的场景下。当您希望为新的站点配置独立的域名和数据库信息时,AnQiCMS 提供了一套清晰且实用的管理流程。这不仅有助于数据的隔离与安全,也能让每个站点拥有更独立的运营和优化空间。 ### 理解多站点独立配置的价值 在探讨具体操作之前

2025-11-08

如何在AnQiCMS中配置伪静态规则,以优化URL结构并包含分类、模型别名?

在AnQiCMS中构建一个清晰、对搜索引擎友好的URL结构,是网站运营中非常重要的一环。通过合理配置伪静态规则,并巧妙融入分类、模型别名,不仅能提升用户体验,更能显著优化网站的SEO表现。AnQiCMS作为一个高性能的内容管理系统,提供了灵活的伪静态功能,让我们能够轻松实现这些目标。 ### 优化URL结构的重要性 想象一下,你访问一个网站,看到这样的链接:`example

2025-11-08

`archiveList`标签如何根据分类ID、模型ID或推荐属性筛选文档列表?

在AnQiCMS中,灵活地展示内容是构建高效网站的关键之一。`archiveList`标签正是这样一个强大的工具,它允许我们根据多种条件筛选和展示网站的文档列表。无论是想在特定页面展示某一类文章,还是根据内容类型或编辑推荐来组织信息,`archiveList`都能提供精准的控制。 ### 精准定位:根据分类ID筛选文档列表 当我们希望在网站的某个区域,例如侧边栏或者某个专题页面

2025-11-08

如何在AnQiCMS模板中创建多级分类导航并显示其子分类或相关文档?

在AnQiCMS模板中构建灵活的多级分类导航与内容展示 网站内容的有效组织是提供良好用户体验和提升搜索引擎可见性的关键一环。无论是企业官网、产品展示还是自媒体博客,清晰的多级分类导航都能帮助用户快速找到所需信息,同时也有利于搜索引擎理解网站结构。AnQiCMS作为一个高效、可定制的内容管理系统,提供了灵活的模板标签,让我们可以轻松实现复杂的多级分类导航和内容展示。 接下来

2025-11-08

AnQiCMS的评论列表标签`commentList`如何显示评论内容及用户状态?

在AnQiCMS中构建一个充满互动性的网站,评论功能无疑是提升用户参与度的关键。 `commentList` 标签正是AnQiCMS为此提供的一大利器,它能够帮助网站开发者和运营者灵活地展示评论内容,并清晰地呈现评论者的状态,让访客一眼就能掌握评论区的动态。 ### 核心功能概览:`commentList` 标签基础用法 `commentList` 标签主要用于获取指定文档的评论列表

2025-11-08

如何在AnQiCMS中开启和使用留言表单的验证码功能?

网站留言板是一个与访客互动的好地方,它拉近了网站与用户的距离。然而,如果没有适当的保护,留言板很快就会被各种垃圾信息、恶意提交甚至自动化脚本所淹没,这不仅影响了网站的整洁度,也可能占用服务器资源,甚至对网站的信誉造成损害。幸运的是,AnQiCMS 提供了一个简单而有效的解决方案:验证码功能。 在 AnQiCMS 中为留言表单开启和使用验证码功能,可以显著提高网站的安全性

2025-11-08