? BaiduSitemap - Typecho站点地图生成与多搜索引擎推送插件

62.png

BaiduSitemap是一个功能强大的Typecho插件,用于自动生成站点地图并支持百度、必应(Bing)和谷歌(Google)搜索引擎推送,帮助搜索引擎更好地抓取和索引您的网站内容,提升网站在搜索引擎中的可见性和排名。

✨ 功能特点

  • ? 多格式站点地图:自动生成XML和HTML格式的站点地图
  • ? 自动更新:发布或更新文章时自动更新站点地图
  • ? 多平台推送:支持百度、必应(Bing)和谷歌(Google)搜索引擎推送
  • 高效缓存:内置缓存机制,降低服务器负载
  • ? 详细日志:提供完整的推送和更新日志记录
  • ?️ 图片索引:支持Google图片站点地图,提高图片在搜索结果中的曝光率
  • ? 响应式设计:美观的站点地图样式,兼容移动端
  • ? 推送状态监控:实时监控搜索引擎推送状态
  • ?️ 丰富API:提供完整的API接口,方便二次开发

? 插件架构

BaiduSitemap插件采用模块化设计,主要由以下组件构成:

核心模块

  • 主控制器:管理插件生命周期和核心功能
  • 站点地图生成器:负责XML和HTML格式站点地图的生成
  • 推送服务:处理向不同搜索引擎的推送请求
  • 缓存管理器:优化性能,减少服务器负担
  • 日志记录器:完整记录所有操作和状态

文件结构

/usr/plugins/BaiduSitemap/
├── Plugin.php           # 插件主文件:核心功能和钩子注册
├── Action.php           # 动作处理文件:站点地图生成和API处理
├── sitemap.xsl          # 站点地图样式表:美化XML站点地图显示
├── README.md            # 说明文档
├── cache/               # 缓存目录
│   ├── sitemap.xml      # XML站点地图缓存
│   └── sitemap.html     # HTML站点地图缓存
└── logs/                # 日志目录
    ├── pushToBaidu.log  # 百度推送日志
    ├── pushToBing.log   # 必应推送日志
    ├── notifyGoogle.log # 谷歌推送日志
    └── updateSitemap.log # 站点地图更新日志

? 安装方法

方法一:手动安装

  1. 获取源码
  2. 解压下载的文件
  3. 将文件夹重命名为BaiduSitemap(注意大小写)
  4. 上传至Typecho的/usr/plugins/目录
  5. 在Typecho后台 -「控制台」-「插件」中启用

⚙️ 配置说明

启用插件后,进入插件设置页面进行详细配置:

站点地图基本设置

014.png

搜索引擎配置

o.png

百度搜索引擎

  1. 登录百度搜索资源平台
  2. 选择您的站点,进入「资源提交」-「普通收录」
  3. 获取API推送接口地址:http://data.zz.baidu.com/urls?site=https://yourdomain.com&token=your_token
  4. 将完整接口地址填入插件设置中
? 提示:百度推送支持主动推送和自动推送两种方式,本插件同时支持。

必应(Bing)搜索引擎

  1. 登录必应站长工具
  2. 添加并验证您的网站
  3. 获取API Key并填入插件设置中

谷歌(Google)搜索引擎

  1. 登录Google Search Console
  2. 添加并验证您的网站
  3. 获取API Key并填入插件设置中

? 使用指南

站点地图访问

安装并配置成功后,您可以通过以下URL访问站点地图:

  • XML站点地图:https://yourdomain.com/sitemap.xml

    • 用于提交给搜索引擎,符合搜索引擎标准格式
  • HTML站点地图:https://yourdomain.com/sitemap.html

    • 美观易读,适合用户和网站管理员阅读

手动操作

除自动推送外,您还可以通过以下方式手动操作:

  1. 刷新站点地图:访问https://yourdomain.com/api/sitemap/refresh

    • 系统将重新生成站点地图并清除缓存
  2. 手动推送链接

    https://yourdomain.com/api/sitemap/push?urls[]=https://yourdomain.com/article/123&target=all
    • target参数可选:baidu, bing, google, all
  3. 查看推送状态:访问https://yourdomain.com/api/sitemap/status

    • 显示24小时内各搜索引擎推送统计和站点地图更新时间

站点地图包含内容

BaiduSitemap生成的站点地图包含以下内容:

  • ? 首页:网站主页,最高优先级
  • ? 独立页面:如关于、联系我们等页面
  • ? 分类页:所有文章分类页面
  • ?️ 标签页:所有文章标签页面
  • ? 文章页:所有已发布文章
  • ?️ 图片资源:文章中包含的图片(仅Google图片站点地图)

高级功能

图片索引优化

插件会自动提取文章中的图片,生成符合Google图片站点地图标准的扩展信息,提高图片在Google图片搜索中的曝光率。每张图片包含以下信息:

  • 图片URL
  • 图片标题(采用alt属性或文章标题)
  • 图片所在页面URL

推送状态监控

通过访问https://yourdomain.com/api/sitemap/status,您可以查看:

  • 24小时内百度推送统计
  • 24小时内必应推送统计
  • 24小时内谷歌推送统计
  • 站点地图最后更新时间

? 技术实现详解

站点地图生成流程

graph TD
    A[请求站点地图] --> B{检查缓存}
    B -->|缓存有效| C[返回缓存的站点地图]
    B -->|缓存无效| D[查询数据库]
    D --> E[获取站点内容]
    E --> F[生成站点地图]
    F --> G[写入缓存]
    G --> H[输出站点地图]

搜索引擎推送机制

插件支持三种不同的推送方式:

  1. 百度推送:使用百度搜索资源平台API,支持批量推送URL
  2. 必应推送:通过Bing Webmaster Tools API提交站点地图
  3. 谷歌推送:通过Google Search Console API更新站点地图

缓存机制

为提高性能,降低服务器压力,插件采用文件缓存机制:

  • 缓存文件存储在/usr/plugins/BaiduSitemap/cache/目录
  • 缓存有效期可在设置页面自定义(默认1小时)
  • 当发布/更新文章时,可选择自动刷新缓存

❓ 常见问题

站点地图不更新或显示错误?

  • 检查缓存设置:确认缓存时间是否设置合理
  • 检查目录权限:确保cache目录可写入
  • 手动刷新:尝试访问/api/sitemap/refresh手动刷新
  • 检查PHP错误日志:可能存在PHP错误阻止生成

推送失败?

  • API地址格式:确认百度推送接口地址格式正确
  • 站点验证:确认网站已在各搜索引擎平台验证
  • 推送配额:查看是否达到每日推送配额上限
  • 查看日志:检查/logs/目录下的对应日志文件

如何优化站点地图效果?

  1. 合理设置更新频率:根据网站内容更新频率设置缓存时间
  2. 优先级配置:重要内容(如首页、核心文章)应设置较高优先级
  3. 图片优化:为图片添加合适的alt属性,提高图片索引效果
  4. 定期检查:定期检查站点地图是否正确生成和推送

? 版本历史

v2.0.0 (2025-06-24)

  • ✨ 新增必应和谷歌搜索引擎推送支持
  • ✨ 新增图片站点地图支持
  • ? 优化界面设计,支持响应式样式
  • ? 添加推送状态监控功能
  • ? 修复多项缓存相关问题

v1.0.0 (2025-06-15)

  • ? 首次发布
  • ✅ 支持XML和HTML格式站点地图
  • ✅ 支持百度搜索资源平台推送
  • ✅ 支持基础缓存机制

?‍? 关于作者

本插件由乐乐主题创作室开发,专注于Typecho主题定制、插件开发、网站优化与SEO服务。

插件购买

BaiduSitemap.zip