如何在模板中获取并显示网站的友情链接列表?

📅 👁️ 65

在AnQiCMS中管理和显示友情链接是一项非常实用的功能,无论是为了增加网站的外部链接,提升SEO效果,还是为了方便用户访问合作伙伴网站,都能发挥重要作用。AnQiCMS提供了一个简洁高效的方式,让我们能够在模板中轻松地获取并展示这些友情链接。

第一步:后台管理与配置友情链接

在将友情链接显示到网站前端之前,我们需要在AnQiCMS的后台系统中进行添加和管理。友情链接的管理位于功能管理模块下。在这里,你可以添加新的友情链接,为它们设定标题(也就是显示在网站上的名称)、链接地址(URL)、备注以及是否添加nofollow属性。合理配置这些信息是后续在模板中正确显示的基础。特别是nofollow属性,它对于网站的SEO策略非常重要,可以控制搜索引擎是否追踪该链接并传递权重。

第二步:在模板中调用友情链接数据

AnQiCMS的模板系统基于Django模板引擎语法,提供了直观的标签来调用后台数据。要获取友情链接列表,我们需要使用到linkList这个核心标签。

linkList标签的典型使用方式如下:

{% linkList friendLinks %}
    {# 友情链接数据将在这里处理 #}
{% endlinkList %}

在这里,friendLinks是我们给友情链接列表数据自定义的一个变量名,你可以根据自己的习惯命名。AnQiCMS会将后台配置的所有友情链接数据获取并赋值给这个friendLinks变量。

linkList标签支持一个可选参数siteId,主要用于多站点管理的环境下,如果你需要调用其他站点的数据,可以通过siteId="X"来指定,其中X是目标站点的ID。对于大多数单站点用户而言,这个参数通常无需设置。

由于friendLinks是一个包含多个友情链接对象的数组,我们需要使用for循环来遍历它,从而逐一显示每个友情链接。

每个在循环中的友情链接对象(我们通常称之为item)都包含以下几个可用的字段:

  • item.Title:友情链接的显示名称或标题。
  • item.Link:友情链接的目标URL地址。
  • item.Remark:友情链接的备注信息,通常可以作为title属性或额外说明。
  • item.Nofollow:一个布尔值(或0/1),表示是否设置了nofollow属性。当其值为1时,表示该链接应添加rel="nofollow"

实战:一个完整的友情链接展示示例

现在,我们来看一个如何在网站页脚(或者任何你希望显示友情链接的地方)展示友情链接的完整代码示例。这个示例考虑了页面结构、链接的SEO属性和用户体验。

{# 使用 linkList 标签获取友情链接数据,并将其赋值给 friendLinks 变量 #}
{% linkList friendLinks %}
    {# 判断是否有友情链接数据,避免在没有数据时显示空区域 #}
    {% if friendLinks %}
    <div class="footer-links-section">
        <h4 class="section-title">友情链接</h4>
        <ul class="links-list">
            {% for item in friendLinks %}
            <li>
                {# 使用 item.Link 作为 href 属性,item.Title 作为显示文本 #}
                {# 根据 item.Nofollow 的值动态添加 rel="nofollow" 属性,同时设置 target="_blank" 让链接在新窗口打开 #}
                <a href="{{ item.Link }}" {% if item.Nofollow == 1 %} rel="nofollow"{% endif %} target="_blank" title="{{ item.Remark }}">
                    {{ item.Title }}
                </a>
            </li>
            {% endfor %}
        </ul>
    </div>
    {% endif %}
{% endlinkList %}

在上面的代码中:

  1. 我们首先使用{% linkList friendLinks %}获取友情链接列表。
  2. {% if friendLinks %}判断确保只有当后台确实存在友情链接时,才渲染这部分HTML,避免页面出现不必要的空白区域。
  3. 一个div容器(footer-links-section)和ul列表(links-list)用于结构化和样式化友情链接。
  4. {% for item in friendLinks %}循环遍历每个友情链接。
  5. {{ item.Link }}{{ item.Title }}分别填充链接地址和显示文本。
  6. {% if item.Nofollow == 1 %} rel="nofollow"{% endif %}这行代码是关键,它会根据后台的设置,自动为需要添加nofollow属性的链接加上这个标签,这对SEO管理非常友好。
  7. target="_blank"确保点击友情链接时,会在新的浏览器标签页中打开,提升用户体验。
  8. title="{{ item.Remark }}"则将后台的备注信息作为链接的title属性,鼠标悬停时会显示提示文字。

将这段代码放置到你模板文件(例如footer.html,然后被base.html或其他页面include)中适当的位置,保存后,刷新网站页面,你就能看到后台配置的友情链接列表了。别忘了给.footer-links-section.links-list等类名添加对应的CSS样式,让它们看起来更美观。

通过AnQiCMS提供的linkList标签,获取和展示友情链接变得异常简单和高效,大大减少了手动维护的工作量,并能更好地配合SEO策略进行调整。

常见问题

Q1: 我已经后台添加了友情链接,为什么网站前台还是不显示?

A1: 如果友情链接没有显示,请首先检查以下几点:

  1. 模板代码是否正确: 确认您已将上述示例代码正确复制并粘贴到模板文件中,特别是{% linkList friendLinks %}{% for item in friendLinks %}等标签是否完整且拼写无误。
  2. 缓存问题: AnQiCMS为了提高性能可能会有缓存。尝试清除系统缓存(通常在后台有“更新缓存”的选项)或在浏览器中强制刷新页面(Ctrl+F5 或 Cmd+Shift+R)。
  3. 后台链接状态: 确保您在后台添加的友情链接处于启用状态,并且链接地址、标题等信息都已填写。

Q2: 我能否对友情链接进行分组显示,例如“合作伙伴”和“技术支持”?

A2: 目前AnQiCMS的linkList标签设计并未直接提供分组功能,它会获取所有已启用的友情链接作为一个列表。如果您需要对友情链接进行分组显示,可以考虑以下两种变通方法:

  1. 分批调用: 如果你可以在后台通过某些方式(例如通过链接备注中的特定关键词)区分不同的分组,你可能需要在模板中调用多次linkList标签,并在每次循环中添加条件判断来筛选属于特定分组的链接。但这需要后台数据有明确的区分标识。
  2. 自定义后台字段(进阶): 可以在后台的“友情链接管理”中,考虑增加一个自定义字段来标识分组,然后在模板中根据该字段进行筛选和显示。但这需要对AnQiCMS的扩展性有一定了解。

Q3: 为什么我的友情链接图片没有显示?我应该怎么添加图片友情链接?

A3: 文档中linkList标签返回的item字段中没有直接包含图片地址。这意味着AnQiCMS内置的友情链接功能主要侧重于文本链接。如果需要显示带有图片的友情链接,您可能需要:

  1. 自定义字段: 在后台的友情链接管理中,可以尝试通过自定义字段为每个友情链接添加一个图片URL字段。然后在模板中,通过类似{{ item.CustomImageField }}的方式调用并显示图片。
  2. 内容模型实现: 另一种更灵活但复杂的方式是,不使用“友情链接”功能,而是创建一个专门的“图片链接”或“合作伙伴”内容模型。在该模型中,你可以自定义标题、链接、图片字段,然后使用archiveList标签来调用和显示这些自定义内容模型的数据。

相关文章

如何获取并显示指定单页(如“关于我们”)的标题、内容、链接和缩略图?

在安企CMS中,网站的单页内容如“关于我们”、“联系我们”或“隐私政策”等,通常承载着重要的固定信息。这些页面不仅需要在独立的URL下展示,还可能需要在网站的其他区域(如页脚、侧边栏或首页的特定模块)提取其标题、简介、链接或缩略图等信息进行展示。安企CMS提供了简洁而强大的模板标签,让您能够轻松地在网站模板中实现这一需求。 ### 理解安企CMS中的单页 在安企CMS的后台

2025-11-08

如何在分类页面显示该分类特有的Banner图或缩略图?

在网站运营中,为不同的分类页面设计独有的视觉元素,例如一张醒目的Banner图或一个专属的缩略图,是提升用户体验、强化品牌形象和促进内容转化的有效手段。安企CMS为实现这一需求提供了直观而强大的功能支持。 --- ### 安企CMS如何支持分类专属视觉内容? 在安企CMS的后台管理界面,为每个分类设置独有的Banner图或缩略图是实现个性化展示的第一步

2025-11-08

如何获取并显示指定分类的名称、描述、链接及其下级分类列表?

在AnQiCMS中,有效管理和展示网站分类是提升用户体验和内容组织性的关键。无论是构建导航菜单、侧边栏内容,还是在特定页面展示分类结构,灵活获取分类的名称、描述、链接及其下级分类列表都是一项常见需求。本篇文章将详细介绍如何利用AnQiCMS的模板标签,轻松实现这些功能。 --- ## 灵活获取并展示指定分类的信息及子分类列表 网站内容的清晰分类不仅方便用户浏览

2025-11-08

如何显示文章模型中自定义的额外字段数据,实现灵活的内容展示?

在安企CMS中,内容的灵活性是其核心优势之一。我们常常需要展示超越标题、内容简介等标准字段的独特信息,例如产品的 SKU 编码、发布日期、作者信息,或是活动的具体时间地点等。这些个性化的数据,通过自定义额外字段功能,可以得到完美的承载和管理。但如何将这些精心录入的自定义数据,优雅且灵活地呈现在网站前台,则是许多用户关注的焦点。 本文将引导大家深入了解安企CMS中自定义字段的显示机制

2025-11-08

如何在AnQiCMS模板中显示网站名称、Logo、备案号和版权信息?

安企CMS (AnQiCMS) 提供了一套直观而强大的模板系统,让我们可以灵活地在网站上展示各种核心信息。无论是网站的名称、Logo、备案号,还是版权声明,这些都是构成网站品牌形象、满足合规性要求并提升用户信任度的关键要素。本篇文章将深入探讨如何在 AnQiCMS 模板中调用并显示这些信息,确保您的网站内容完整且专业。 ### AnQiCMS 模板基础:快速回顾 在 AnQiCMS 中

2025-11-08

如何在页面头部动态显示SEO标题、关键词和描述(TDK)?

在网站运营中,页面头部动态显示的SEO标题(Title)、关键词(Keywords)和描述(Description),简称TDK,是搜索引擎优化(SEO)的核心要素。它们不仅能帮助搜索引擎理解页面内容,更是吸引用户点击的关键。对于使用AnQiCMS的用户而言,系统提供了强大而灵活的机制来实现TDK的动态管理,确保每个页面都能获得**的SEO表现。 ###

2025-11-08

如何在模板中显示当前页面的规范链接(Canonical URL)以优化SEO?

在网站运营中,搜索引擎优化(SEO)是提升网站可见度的核心工作之一。其中,规范链接(Canonical URL)的设置与正确展示,对于避免内容重复、优化抓取效率和集中页面权重至关重要。安企CMS(AnQiCMS)作为一个高度注重SEO的企业级内容管理系统,为用户提供了便捷的工具来管理和部署规范链接。 ### 什么是规范链接(Canonical URL)? 规范链接,顾名思义

2025-11-08

如何在前端页面启用Markdown编辑器渲染内容,并显示数学公式和流程图?

内容运营在当今的数字时代扮演着举足轻重的角色。一个内容管理系统(CMS)的强大与否,很大程度上取决于它能否灵活地支持多种内容表现形式。安企CMS(AnQiCMS)凭借其高效、灵活的特性,为内容创作者提供了广阔的空间。今天,我们将深入探讨如何在安企CMS的前端页面中,优雅地启用Markdown编辑器来创作内容,并进一步实现数学公式和流程图的渲染,让您的网站内容更具表现力。 ###

2025-11-08