这是一个最基本的主题源码(不适用于FSE站点开发),适用于开发海外Wordpress网站应用,可在此基础上编写下一步样式,开发功能等。
本主题主要是禁用了不必要的功能以提高网站安全性及性能,使用前请了解本主题做了什么。

下载地址:

https://10.1pxeye.com/libs/wp-themes/ope25.zip

(压缩包中包含主题及.htaccess文件)

const.php
  1. 标识当前环境是否为开发环境(ENV_IS_DEV)。
  2. 定义站点主页 URL(HOME)和主题目录 URL(TU),方便在代码中使用。
  3. 控制 REST API 的可用性(REST_API_USABILITY)。
  4. 根据环境(开发或生产)动态设置是否允许编辑文件(DISALLOW_FILE_EDIT)和修改文件(DISALLOW_FILE_MODS),以增强安全性。
dev.php
  1. 检测当前环境是否为开发环境。
  2. 在页面底部输出 JavaScript 代码,检查页面是否缺少重要的ogp元标签,meta description或google脚本。
  3. 根据环境类型(开发或生产),在控制台中输出警告或错误信息。
disabled.php
  1. 禁用自动更新
    • 禁用核心、插件和主题的自动更新。
  2. 移除 WordPress 版本生成器
    • 隐藏 WordPress 版本号。
  3. 禁用管理员邮箱检查
    • 停止定期检查管理员邮箱。
  4. 禁用应用密码功能
    • 禁用 WordPress 5.6 引入的应用密码功能。
  5. 禁用 404 猜测重定向
    • 停止 WordPress 对 404 页面的猜测重定向。
  6. 禁用站点地图
    • 禁用 WordPress 5.5 引入的站点地图功能。
  7. 禁用登录页面语言选择
    • 移除登录页面的语言选择下拉框。
  8. 清理 <head> 中的多余标签
    • 移除 RSD、WLW Manifest、短链接、Feed 链接、REST API 链接、资源提示、Emoji 脚本等。
  9. 禁用 XML-RPC
    • 完全禁用 XML-RPC 功能。
  10. 移除评论功能
    • 移除后台评论菜单、文章和页面的评论支持、评论元框、仪表盘评论小工具。
  11. 移除仪表盘小工具
    • 移除仪表盘中的多个默认小工具(如活动、快速发布、站点健康等)。
  12. 禁用密码重置功能
    • 对非管理员用户禁用密码重置功能,并移除相关文本。
  13. 禁用 Pingbacks
    • 移除 XML-RPC 中的 Pingback 相关方法。
  14. 禁用 Gravatar 头像
    • 移除 Gravatar 头像功能。
  15. 禁用 Dashicons 图标
    • 对非管理员用户禁用 Dashicons 图标加载。
  16. 禁用 RSS 订阅功能
    • 完全禁用 RSS 订阅功能,并显示禁用提示。
disable-rest-api.php
  1. 定义 REST API 默认 IP 白名单
    • 默认允许 127.0.0.1 和 ::1(本地回环地址)访问 REST API。
  2. 完全禁用 REST API
    • 如果 REST_API_USABILITY 常量为 false,则完全禁用 REST API。
  3. 禁用 REST API 用户枚举
    • 如果 REST_API_USABILITY 常量为 true,则禁用 REST API 中的用户枚举功能。
  4. REST API 访问控制
    • 检查用户是否已登录且为管理员。
    • 检查远程 IP 是否在白名单中。
    • 如果未登录且 IP 不在白名单中,则阻止访问特定 REST API 端点(如 usersposts 等)。
    • 如果 REST API 被完全禁用,则返回 404 错误。
  5. 返回错误响应
    • 如果访问被阻止,返回 404 错误或指定的 HTTP 错误码,并终止脚本执行。
enqueue.php
  1. 移除不必要的样式文件
    • 在首页、分类页和前端页面中,移除以下样式文件:
      • wp-block-library(Gutenberg 编辑器样式)
      • wp-block-library-theme(Gutenberg 主题样式)
      • wc-block-style(WooCommerce 块样式)
      • global-styles(全局样式)
      • classic-theme-styles(经典主题样式)
  2. 重新注册并加载自定义 jQuery
    • 如果不是后台页面,则移除默认的 jQuery,并加载主题目录下的自定义 jQuery 文件(/assets/js/jquery.js)。
  3. 加载主题的主样式和脚本
    • 加载主题的主样式文件(/assets/css/style.css),并使用 crc32(date("YmdH")) 生成版本号,确保每小时更新缓存。
    • 加载主题的主脚本文件(/assets/js/script.js),依赖 jQuery,并放置在页面底部加载。
optimize.php
  1. 优化归档页面标题显示。
  2. 设置文章摘要长度并添加“阅读更多”链接。
  3. 根据分类层级加载自定义模板。
  4. 检查文章是否属于某个分类的子分类。
  5. 清理上传文件的文件名。
  6. 移除前端样式和脚本的冗余 type 属性。
support.php
  1. 自动管理标题标签。
  2. 启用文章缩略图功能。
  3. 支持 HTML5 的画廊和图片标题
设置默认字符集
定义 MIME 类型
启用缓存控制
增强安全性
移除不必要的 HTTP 头
启用压缩