---
title: 站点设置
description: 站点设置相关功能说明
---

## 基本设置

Halo 提供了以下站点基本信息设置：

- **站点标题**
- **站点副标题**
- **Logo**
- **Favicon**

在控制台设置完成后，主题端可以通过特定的表达式获取到这些信息并且在对应的位置进行展示。具体是否读取使用这些配置、在哪些位置显示这些信息由使用的不同主题而决定。

以 Halo 2.0 的[默认主题 Earth](https://github.com/halo-dev/theme-earth) 为例，这些设置信息将在如下位置进行展示。

![默认主题基本设置说明](/img/user-guide/settings/setting-basic.png)

## 文章设置

针对主题端的文章展示，Halo 提供了以下设置项：

- **文章列表显示条数**
- **归档页文章显示条数**
- **分类页文章显示条数**
- **标签页文章显示条数**

## SEO 设置

针对站点的 SEO（搜索引擎优化）需求，Halo 提供了以下设置项：

- **屏蔽搜索引擎**：配置后会在所有页面 HTML 源码的 head 部分添加 `<meta name="robots" content="noindex" />`。
- **站点关键词**：格式为以`,`分隔的关键词列表，配置后会在所有页面 HTML 源码的 head 部分添加 `<meta name="keywords"> content="{关键词}" />`。

  :::warning 注意
  目前主流的搜索引擎（如 Google、Bing、百度搜索等）已经不再使用该标签作为关键词的参考，因此该设置项的作用已经不大，未来我们也可能会移除该设置项。
  :::

- **站点描述**：配置后会在所有页面 HTML 源码的 head 部分添加 `<meta name="description" content="{描述}" />`。

## 用户设置

- **开放注册**：是否允许访客注册，勾选之后在登录页面会显示注册入口。
- **默认角色**：新注册用户的默认角色。

## 评论设置

针对站点的评论功能，Halo 提供了以下设置项：

- **启用评论**：全局评论功能开关配置，修改后影响所有文章、页面的评论功能。
- **新评论审核**：新增的评论是否需要在控制台进行审核，审核通过后其他访问者才能看到该条评论。
- **仅允许注册用户评论**：开启后只有登录用户才能添加评论，关闭后匿名（未登录）的访客也可以通过自行填写昵称、邮箱、网址等信息进行评论。

## 主题路由设置

针对访问站点各种类型页面的 URL 生成规则，Halo 提供了以下主题路由设置项：

- **分类页路由前缀**：定位到分类列表页面以及分类归档页面。
  - 默认的分类列表页面 URL 规则前缀为 `/categories`
  - 默认的分类归档页面 URL 规则前缀为 `/categories/{slug}`
- **标签页路由前缀**：定位到标签列表页面以及标签归档页面。
  - 默认的标签列表页面 URL 规则前缀为 `/tags`
  - 默认的标签归档页面 URL 规则前缀为 `/tags/{slug}`
- **归档页路由前缀**：定位到文章归档页面的 URL 规则前缀，默认为 `/archives`。
- **文章详情页访问规则**：定位到具体文章详情页面的 URL 规则前缀，默认为 `/archives/{slug}` ，用户可从以下路径规则进行选择：
  - `/archives/{slug}`
  - `/archives/{name}`
  - `/?p={name}`
  - `/?p={slug}`
  - `/?p={slug}`
  - `/{year}/{slug}`
  - `/{year}/{month}/{slug}`
  - `/{year}/{month}/{day}/{slug}`

  :::info 变量说明
  - `slug`：文章别名
  - `name`：文章 `metadata.name` 字段值
  - `year`：四位数格式的文章发布年份
  - `month`：两位数格式的文章发布月份
  - `day`：两位数格式的文章发布日
  :::

## 代码注入

你可以使用代码注入功能，在特定类型的页面中注入额外的代码。你可以通过该功能覆盖或补充部分主题 CSS 样式，或者引入额外的 JavaScript 脚本扩展主题端功能。

- **全局 head 标签**：该代码将会被注入到所有页面的 head 标签中。
- **内容页 head 标签**：该代码将会被注入到文章、页面详情页的 head 标签中。
- **页脚**：该代码将会被注入到所有页面的页脚中。

## 通知设置

从本版本开始， Halo 提供了 **通知** 功能，当有新的评论、留言、回复等事件发生时，Halo 会通过配置的方式通知站长或者相关用户。同时，个人中心配置的电子邮箱也会作为通知的接收邮箱。

### 邮件通知

- **启用邮件通知器**：开启后，当有新的评论、留言、回复等事件发生时，Halo 会通过 **邮件** 的方式通知站长或者相关用户。
- **用户名**：你需要在此处填写你的 **邮箱账号**。
- **密码**：你需要在此处填写你的 **邮箱密码** 或相关的 **授权码**，具体请参考你所使用邮箱的相关说明。
- **显示名称**：你需要在此处填写你的 **邮箱显示名称**，该名称将会作为邮件发送者的名称显示。
- **SMTP 服务器地址**：你需要在此处填写你的 **SMTP 服务器地址**，具体请参考你所使用邮箱的相关说明。
- **端口号**：你需要在此处填写你的 **SMTP 服务器端口号**，具体请参考你所使用邮箱的相关说明。
- **加密方式**：你需要在此处选择你的 **SMTP 服务器加密方式**，具体请参考你所使用邮箱的相关说明。

> 常见邮箱服务商的文档如下：
>
> - [QQ 邮箱](https://service.mail.qq.com/detail/0/310)
> - [163 邮箱](https://help.mail.163.com/faqDetail.do?code=d7a5dc8471cd0c0e8b4b8f4f8e49998b374173cfe9171305fa1ce630d7f67ac2a5feb28b66796d3b)
> - [Gmail](https://support.google.com/mail/answer/7104828?hl=zh-Hans)
> - [阿里云企业邮箱](https://help.aliyun.com/document_detail/36687.html)
> - [腾讯企业邮箱](https://open.work.weixin.qq.com/help2/pc/19870)
