如何在模板中获取后台自定义的全局参数?

📅 👁️ 71

在安企CMS中,网站的灵活性和可维护性是其核心优势之一。内容运营者和开发者常常需要在不修改模板代码的情况下,动态调整网站的一些全局信息,比如公司名称、联系电话,甚至是某些营销活动链接。这些在后台自定义的全局参数,正是实现这种需求的关键。

今天,我们就来深入了解如何在安企CMS的模板中,轻松获取并展示这些在后台配置的自定义全局参数。

为什么需要全局参数?

想象一下,如果您的网站需要更改公司名称或电话号码,而这些信息硬编码在几十个模板文件中,那么每次修改都将是一项耗时且容易出错的工作。全局参数的出现,正是为了解决这样的问题。它允许您在网站后台统一管理这些常用信息,当信息发生变化时,只需在后台修改一次,所有调用了该参数的页面都会自动更新,大大提升了运营效率和网站的可维护性。

后台如何设置全局参数?

安企CMS提供了几个地方供您设置全局参数,其中最常用的是“后台设置”下的“全局功能设置”和“联系方式设置”。

  1. 全局功能设置 在“后台设置” -> “全局功能设置”中,除了网站名称、网站Logo、备案号等系统内置的参数外,您还可以通过“自定义设置参数”来添加更多专属的全局参数。

    • 点击“添加参数”,输入“参数名”(这是在模板中调用时使用的唯一标识,建议使用英文,系统会自动将其转换为驼峰命名),填入“参数值”(您希望显示的内容),并添加“备注”方便日后管理。例如,您可以添加一个名为 HelpUrl 的参数,值为 https://www.anqicms.com/help
  2. 联系方式设置 类似地,“后台设置” -> “联系方式设置”也支持自定义参数。这里通常用于管理电话、邮箱、微信等联系信息。

    • 您可以添加诸如 WhatsApp 这样的自定义参数,并填入您的WhatsApp联系号码。

这些设置完成后,这些自定义参数就如同系统内置参数一样,可以在前端模板中被灵活调用。

在模板中获取全局参数

安企CMS的模板引擎支持类似Django的标签语法,您可以通过特定的标签来获取后台设置的全局参数。核心标签主要有 systemcontactdiy

1. 获取系统级全局参数(system 标签)

system 标签专门用于获取在“全局功能设置”中配置的参数,无论是内置的还是自定义的。

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

这里,字段名称就是您在后台设置的“参数名”。

  • 直接输出内置参数: 如果您想在页面底部显示备案号,可以直接这样写:

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

    这里,SiteIcp是安企CMS内置的备案号参数名。

  • 输出自定义参数并赋给变量: 假设您在后台全局设置中定义了一个名为 HelpUrl 的自定义参数,您可以在模板中这样获取并使用它:

    {% system helpPageUrl with name="HelpUrl" %}
    <a href="{{ helpPageUrl }}">查看帮助文档</a>
    

    通过 with 关键字,您可以将获取到的参数值赋值给 helpPageUrl 这个变量,然后在模板中多次使用。

  • 获取当前年份: 此外,system 标签还有一个辅助功能,就是获取当前年份,这在版权信息中非常实用:

    <p>&copy; {% now "2006" %} {{ siteName }}. All Rights Reserved.</p>
    

    这里 {% now "2006" %} 会显示当前年份。

2. 获取联系方式全局参数(contact 标签)

contact 标签用于获取在“联系方式设置”中配置的参数,包括内置的联系方式和您自定义的参数。

基本用法: {% contact 变量名称 with name="字段名称" %}

  • 直接输出内置联系电话:

    <span>联系电话:{% contact with name="Cellphone" %}</span>
    

    这里,Cellphone是安企CMS内置的联系电话参数名。

  • 输出自定义WhatsApp参数: 假设您在后台联系方式设置中添加了一个名为 WhatsApp 的自定义参数:

    {% contact whatsappNumber with name="WhatsApp" %}
    <a href="https://wa.me/{{ whatsappNumber }}" target="_blank">通过WhatsApp联系我们</a>
    

3. 获取通用自定义内容(diy 标签)

除了 systemcontact 标签,安企CMS还提供了一个更通用的 diy 标签,用于获取后台其他位置可能定义的自定义内容信息。虽然文档中没有直接提供后台设置 diy 参数的入口,但如果您的系统经过二次开发,或者在某些内容模型中定义了额外的全局参数,diy 标签将是您的好帮手。

基本用法: {% diy 变量名称 with name="字段名称" %}

  • 输出通用自定义参数: 假设您有一个名为 Author 的自定义全局参数,您可以使用 diy 标签来获取:
    
    {% diy websiteAuthor with name="Author" %}
    <span>网站作者:{{ websiteAuthor }}</span>
    

实用技巧和注意事项

  • 参数名大小写: 在后台定义参数名时,虽然建议使用英文,但无需担心大小写,安企CMS在模板调用时会自动匹配。
  • 多站点支持: 如果您使用了安企CMS的多站点功能,并且希望调用特定站点的全局参数,可以在 systemcontactdiy 等标签中添加 siteId 参数,例如 {% system with name="SiteName" siteId="2" %},其中"2"是目标站点的ID。
  • HTML内容处理: 如果您的自定义参数值包含HTML代码(例如一个富文本编辑器输出的版权信息),在模板中输出时,请务必使用 |safe 过滤器,以避免HTML被转义而无法正常显示。
    
    {% system siteCopyright with name="SiteCopyright" %}
    <div>{{ siteCopyright|safe }}</div>
    

通过这些灵活的全局参数调用方式,您可以让您的安企CMS网站模板更加动态、易于管理,从而更高效地进行内容更新和网站运营。

常见问题 (FAQ)

  1. 问:如果我的自定义参数中包含 HTML 代码,应该如何正确显示? 答: 当您的自定义参数值是HTML格式时,在模板中输出时需要使用 |safe 过滤器。例如,如果您在后台定义了一个包含HTML的“网站介绍”参数 SiteIntro,在模板中应该这样写:{% system siteIntroContent with name="SiteIntro" %}{{ siteIntroContent|safe }}。这样,HTML代码才会被浏览器正常解析并显示。

  2. 问:为什么在后台设置了自定义参数,但在模板中调用时却没有内容显示? 答: 这通常有几个原因。首先,请检查“参数名”是否与模板中的 name 属性值完全匹配。其次,确认您是否在正确的后台设置区域(例如“全局功能设置”或“联系方式设置”)添加了该参数,并使用了对应的模板标签(systemcontact)。最后,如果是在多站点环境下,确认是否指定了正确的 siteId。有时,清除系统缓存(在后台菜单中找到“更新缓存”选项)也可能解决显示问题。

  3. 问:多站点环境下,如何调用其他站点的全局参数? 答:: 在安企CMS的多站点环境中,您可以通过在 systemcontactdiy 标签中添加 siteId 参数来指定要调用哪个站点的全局参数。例如,如果您想获取 ID 为 2 的站点的网站名称,可以这样写:{% system otherSiteName with name="SiteName" siteId="2" %}。这样就可以跨站点调用全局参数了。

相关文章

安企CMS如何自定义或覆盖页面中的JSON-LD结构化数据?

安企CMS在内容运营和搜索引擎优化方面一直致力于提供高效且灵活的解决方案。结构化数据,尤其是JSON-LD,是提升网站内容在搜索引擎中可见度的重要手段。它能帮助搜索引擎更准确地理解页面内容,从而有机会展示更丰富的搜索结果(即富媒体摘要),吸引更多用户点击。 安企CMS深知结构化数据的重要性,因此在系统设计上已经为您预置了部分默认的JSON-LD结构化数据。当您的网站发布文章、产品或单页面时

2025-11-08

如何显示首页或特定分组的Banner轮播图片?

网站首页和特定分组的Banner轮播图片,是网站吸引访客、展示核心内容的关键元素。一套管理便捷、显示灵活的系统,能让您的网站运营事半功倍。安企CMS(AnQiCMS)凭借其直观的设计和强大的模板标签功能,让您轻松驾驭这些视觉元素,无论是打造醒目的首页大图,还是为特定分类页面量身定制专属宣传图,都能游刃有余。 今天,我们就来深入了解如何在安企CMS中,让您的Banner轮播图片生动起来

2025-11-08

安企CMS如何实现多语言站点的语言切换功能?

当我们的网站旨在服务全球客户时,提供多语言支持就成为了一个不可或缺的功能。这不仅能帮助我们拓展国际市场,也能显著提升不同语言用户的访问体验。安企CMS(AnQiCMS)深知这一需求,因此将多语言支持作为其核心亮点之一,让我们可以轻松实现多语言站点的搭建与语言切换。 ## 安企CMS如何实现多语言站点的语言切换 要实现多语言站点的语言切换,主要涉及后台配置和前端模板的集成。AnQiCMS

2025-11-08

如何为安企CMS的文档列表、Tag列表等生成分页导航?

在网站运营中,为内容列表提供清晰、易用的分页导航,不仅能极大提升用户体验,还能优化搜索引擎抓取效率,帮助内容更好地被发现。安企CMS(AnQiCMS)深知这一点,因此在模板设计中提供了强大而灵活的分页标签,让内容运营者能够轻松为文档列表、标签列表等生成分页导航。 接下来,我们将一起探讨如何在安企CMS的模板中实现这一功能,让你的网站内容组织得井井有条。 --- ###

2025-11-08

如何在模板中显示当前年份或指定格式的时间?

在网站运营中,常常需要让网页内容保持实时更新,或者精确展示特定事件的时间,无论是页脚的版权年份、文章的发布日期,还是产品的更新时间,这些动态的时间信息都能让网站显得更加专业和活跃。AnQiCMS 提供了非常灵活且直观的方式,让您轻松地在模板中显示当前年份或指定格式的时间。 接下来,我们将一起探索两种主要的方法,让您的 AnQiCMS 网站能够灵活展示各种时间信息。 ## 一

2025-11-08

安企CMS如何自定义URL伪静态规则以优化SEO?

在网站运营中,网址结构不仅仅是访问页面的一串字符,它更是网站在搜索引擎中表现的关键因素之一。一个清晰、有意义且对搜索引擎友好的URL(统一资源定位符),能够显著提升网站的SEO效果,帮助内容更容易被发现和理解。安企CMS(AnQiCMS)深知这一点,因此在系统设计之初就融入了强大的伪静态和URL自定义功能,让网站运营者能够灵活地配置网址规则,以满足不同的SEO策略需求。 ###

2025-11-08

如何为文章、分类、单页面设置自定义URL别名?

在内容管理日益重要的今天,一个清晰、友好的URL地址,不仅能帮助搜索引擎更好地理解页面内容,提升网站的SEO表现,还能为用户提供更好的浏览体验,甚至有助于品牌传播。AnQiCMS深知这一点,并提供了强大而灵活的自定义URL别名功能,让您能够轻松为网站上的文章、分类、单页面乃至标签设置个性化的地址。 接下来,我们将一起探索如何在AnQiCMS中精细化管理这些URL别名。 ### 核心前提

2025-11-08

安企CMS如何对字符串进行大小写转换或首字母大写?

在网站内容运营中,文字的呈现方式往往影响着用户的阅读体验和品牌形象。无论是为了统一品牌风格、提升标题可读性,还是在特定场景下突出显示文本,对字符串进行大小写转换或首字母大写都是常见的需求。安企CMS(AnQiCMS)凭借其灵活的Django模板引擎语法,为我们提供了几种简洁高效的方法来处理这些字符串格式化任务。 这些操作无需复杂的后端代码修改,只需在模板文件中应用相应的过滤器,即可轻松实现

2025-11-08